CN103376777B - 控制器的Modbus通讯接口的测试方法及上位机 - Google Patents
控制器的Modbus通讯接口的测试方法及上位机 Download PDFInfo
- Publication number
- CN103376777B CN103376777B CN201210109942.4A CN201210109942A CN103376777B CN 103376777 B CN103376777 B CN 103376777B CN 201210109942 A CN201210109942 A CN 201210109942A CN 103376777 B CN103376777 B CN 103376777B
- Authority
- CN
- China
- Prior art keywords
- data
- modbus
- host computer
- controller
- communication interface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种控制器的Modbus通讯接口的测试方法及上位机,该方法包括:上位机通过控制器的Modbus通讯接口向控制器下发测试数据;上位机通过控制器的Modbus通讯接口读取控制器中根据测试数据而生成的机组数据;上位机将机组数据与下发的测试数据进行匹配,根据匹配结果确定控制器的Modbus通讯接口是否通讯正常。通过运用本发明,克服了相关技术中只能通过测试人员人工分析Modbus通讯数据,并以此来判断Modbus通讯是否可靠,该方法浪费人力,导致测试效率较低的问题,进而实现了自动化分析数据,节省了人力,提高了测试效率,提升了系统的性能。
Description
技术领域
本发明涉及电信号测试及控制领域,更具体地,涉及控制器的Modbus通讯接口的测试方法及上位机。
背景技术
伴随中央空调在楼宇的发展,多数厂家采用Modbus的通讯协议和楼宇监控进行通讯接口。产生了很多带Modbus通讯接口的控制器,如何对Modbus通讯接口进行测试就变得非常重要。已知的测试方法是通过计算机串口接收Modbus通讯数据,然后测试人员需人工通过EXCEL等软件对通讯数据进行分析,并通过对通讯数据的分析得出的结果来判断Modbus通讯是否可靠。
相关技术中只能通过测试人员人工分析Modbus通讯数据,并以此来判断Modbus通讯是否可靠,该方法浪费人力,导致测试效率较低。
发明内容
本发明旨在提供一种控制器的Modbus通讯接口的测试方法及上位机,以至少能够解决相关技术中只能通过测试人员人工分析Modbus通讯数据,并以此来判断Modbus通讯是否可靠,该方法浪费人力,导致测试效率较低的问题。
根据本发明的一个方面,提供了一种控制器的Modbus通讯接口的测试方法,包括:上位机通过所述控制器的Modbus通讯接口向所述控制器下发测试数据;上位机通过所述控制器的Modbus通讯接口读取所述控制器中根据所述测试数据而生成的机组数据;上位机将所述机组数据与下发的所述测试数据进行匹配,根据匹配结果确定所述控制器的Modbus通讯接口是否通讯正常。
优选地,在上位机通过所述控制器的Modbus通讯接口向所述控制器下发测试数据之前,还包括:在所述上位机中导入所述Modbus通讯协议数据,其中,所述Modbus通讯协议数据的导入格式为WORD格式或EXCEL格式;将导入的所述Modbus通讯协议数据分类后存储到所述上位机的相应数组中,其中,所述分类类别包括:寄存器和线圈。
优选地,上位机通过所述控制器的Modbus通讯接口向所述控制器下发测试数据,包括:根据测试内容,在上位机中选择相应分类中的Modbus通讯协议数据作为所述测试数据下发至所述控制器的Modbus通讯接口;或根据测试内容,将上位机中相应分类中的Modbus通讯协议数据修改后作为所述测试数据下发至所述控制器的Modbus通讯接口。
优选地,上位机将所述机组数据与下发的所述测试数据进行匹配,根据匹配结果确定所述控制器的Modbus通讯接口是否通讯正常,包括:上位机将所述机组数据经制式转换后与下发的所述测试数据进行匹配;如果所述机组数据与下发的所述测试数据相同,则确认所述控制器的Modbus通讯接口通讯正常;否则,则确认所述控制器的Modbus通讯接口通讯异常。
优选地,上位机将下发的所述测试数据和读取的所述机组数据输出在显示区域中。
优选地,上位机将下发的所述测试数据和读取的所述机组数据实时保存在缓冲区中,并按预定时间间隔将所述缓冲区中的所述测试数据和读取的所述机组数据以文档的形式进行存储。
优选地,所述控制器为空调控制器。
根据本发明的另一个方面,提供了一种上位机,包括:下发模块,用于通过控制器的Modbus通讯接口向所述控制器下发测试数据;读取模块,用于通过所述控制器的Modbus通讯接口读取所述控制器中根据所述测试数据而生成的机组数据;匹配模块,用于将所述机组数据与下发的所述测试数据进行匹配,根据匹配结果确定所述控制器的Modbus通讯接口是否通讯正常。
优选地,所述上位机还包括:导入模块,用于导入所述Modbus通讯协议数据,其中,所述Modbus通讯协议数据的导入格式为WORD格式或EXCEL格式;第一存储模块,用于将导入的所述Modbus通讯协议数据分类后存储到相应数组中,其中,所述分类类别包括:寄存器和线圈。
优选地,所述上位机还包括:显示模块,用于将下发的所述测试数据和读取的所述机组数据输出显示。
优选地,所述上位机还包括:第二存储模块,用于将下发的所述测试数据和读取的所述机组数据实时保存在缓冲区中,并按预定时间间隔将所述缓冲区中的所述测试数据和读取的所述机组数据以文档的形式进行存储。
本发明采用了如下方法:上位机通过控制器的Modbus通讯接口向控制器下发测试数据;并将控制器放回的机组数据与下发的数据进行对比来确定控制器的Modbus通讯接口是否通讯正常。通过运用上述方法,克服了相关技术中只能通过测试人员人工分析Modbus通讯数据,并以此来判断Modbus通讯是否可靠,该方法浪费人力,导致测试效率较低的问题,进而实现了自动化分析数据,节省了人力,提高了测试效率,提升了系统的性能。
附图说明
附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了本发明实施例控制器的Modbus通讯接口的测试方法的流程图一;
图2示出了本发明实施例控制器的Modbus通讯接口的测试方法的流程图二;
图3示出了本发明实施的测试器件连接示意图;
图4示出了本发明优选实施例Modbus软件的主界面的示意图;
图5示出了本发明优选实施例Modbus软件的参数设置区域的示意图;
图6示出了本发明优选实施例Modbus软件的协议参数读写操作界面的示意图;
图7示出了本发明优选实施例Modbus软件的数据分析窗口的示意图;
图8示出了本发明实施例上位机的结构框图一;
图9示出了本发明实施例上位机的结构框图二;
图10示出了本发明实施例上位机的结构框图三。
具体实施方式
下面将参考附图并结合实施例,来详细说明本发明。
基于相关技术中只能通过测试人员人工分析Modbus通讯数据,并以此来判断Modbus通讯是否可靠,该方法浪费人力,导致测试效率较低的问题,本发明实施例提供了一种控制器的Modbus通讯接口的测试方法,其流程如图1所示,包括步骤S102至步骤S106:
步骤S102,上位机通过控制器的Modbus通讯接口向控制器下发测试数据;
步骤S104,上位机通过控制器的Modbus通讯接口读取控制器中根据测试数据而生成的机组数据;
步骤S106,上位机将机组数据与下发的测试数据进行匹配,根据匹配结果确定控制器的Modbus通讯接口是否通讯正常。
本实施例采用了上位机通过控制器的Modbus通讯接口向控制器下发测试数据;并将控制器放回的机组数据与下发的数据进行对比来确定控制器的Modbus通讯接口是否通讯正常的方法,克服了相关技术中只能通过测试人员人工分析Modbus通讯数据,并以此来判断Modbus通讯是否可靠,该方法浪费人力,导致测试效率较低的问题,进而实现了自动化分析数据,节省了人力,提高了测试效率,提升了系统的性能。
在步骤S102中的在上位机下发测试数据之前,还包括:在上位机中导入Modbus通讯协议数据,其中,Modbus通讯协议数据的导入格式为WORD格式或EXCEL格式;将导入的Modbus通讯协议数据分类后存储到上位机的相应数组中,其中,分类类别包括:寄存器和线圈。
在具备上述条件后,上位机通过控制器的Modbus通讯接口向控制器下发测试数据,在执行步骤S102的过程中,下发的数据可以使整个Modbus通讯协议,当然,也可以是指定区域中Modbus通讯协议的部分内容,例如,至提取Modbus通讯协议中关于线圈的参数数据。具体实施的过程中,可以根据测试内容,在上位机中选择相应分类中的Modbus通讯协议数据作为测试数据下发至控制器的Modbus通讯接口。当然,对于存在读和写两种功能的部分,也可以根据测试内容,将上位机中相应分类中的Modbus通讯协议数据修改后作为测试数据下发至控制器的Modbus通讯接口。
在读取到控制器中根据测试数据而生成的机组数据后,执行步骤106。步骤S106可以细化处理,包括:上位机将机组数据经制式转换后与下发的测试数据进行匹配;如果机组数据与下发的测试数据相同,则确认控制器的Modbus通讯接口通讯正常;否则,则确认控制器的Modbus通讯接口通讯异常。
上位机将机组数据进行制式转换的过程即是不同进制数之间转换的过程,用户可以根据需要,选择将机组数据做2进制、8进制、10进制和16进制之间的任意转换,例如,将2进制的转换为16进制的,也可以将10进制转换为16进制等。
在上述步骤实施的过程中,上位机可以将下发的测试数据和读取的机组数据输出在显示区域中;上位机还可以将下发的测试数据和读取的机组数据实时保存在缓冲区中,并按预定时间间隔将缓冲区中的测试数据和读取的机组数据以文档的形式进行存储。
当将上述控制器的Modbus通讯接口的测试方法应用于实际中时,上述控制器可以为空调控制器、冰箱控制器等。上位机可以为电脑等终端设备,并可以通过测试模块来实现上述测试过程,测试模块可以体现为Modbus软件形式。该测试模块可以设置在上位机内部,也可以独立设置于外部,通过外部设备与上位机连接。
下面就上位机为电脑,控制器为空调控制器,且测试模块设置于上位机内部,并通过Modbus软件形式实现的情况进行说明,该说明并不构成对本发明的限制。
为了提高测试的效率,避免测试人员人工分析数据,因此考虑使用自动化分析数据的方法。自动生成自定义的Modbus通讯协议的数据,可直接测试带Modbus接口的被测试控制器(被测机组)。
本实施例的控制器的Modbus通讯接口的测试方法的流程可以如图2所示,包括步骤S202至步骤S206:
步骤S202,自动导入Modbus通讯协议,其中,该导入的协议可以呈现为WORD格式或EXCEL格式。
在上述步骤具体实施的过程中,可以具体包括以下处理过程:
(1)使用相关Labview软件读取指定的EXCEL文件(或WORD文件),其中,可以读取整个EXCEL文件(或WORD文件),也可以读取EXCEL文件(或WORD文件)中指定的范围。
(2)将读取的内容存入到Labview软件的相应数组中。
(3)将数组中的数组内容进行分类,并将分类结果传送到Modbus软件的相应操作界面中。
其中,分类的原则可以按寄存器、线圈的格式进行分类,将寄存器类别的数据放到操作界面的寄存器显示部分;将线圈类别的数据放到操作界面的线圈显示部分。
(4)针对Modbus协议测试改写要求,在Modbus软件中设置自动插入相应可改写的“更改值”这一列;则测试人员就可以在更改列输入测试数据。
例如:若需要对模块1空调机组的设定温度改写为25度,更改值设置在协议位置为03。操作如下:直接在更改值中输入25,软件自动转换为0X0019,生成命令为:01(模块地址)47(功能码)0003(起始地址)0001(WORD个数)02(byte个数)0019(25度16进制)2373(CRC校验码)。将上述生成的数据直接下发到串口中。
步骤S204,将接收的Modbus数据进行进制转换,并根据转换的结果值(根据测试数据而生成的机组数据)与逻辑要求值(下发的测试数据)进行比较以确定测试结果。该步骤是针对空调机组逻辑及通讯协议特性,如工作范围等,进行相应10进制、16进制及2进制数转换,对接收来的Modbus数据进行判断,当数据与逻辑要求值不符合时,Labview软件则认为是被测试协议代码有误,Labview软件会报错并记录错误;反之,若符合要求则直接进行下一项测试。
在上述步骤具体实施的过程中,可以包括以下处理过程:
(1)Modbus软件下发读协议命令至空调机组的485串口。在具体实施过程中,其连接示意图可以如图3所示,上位机或测试模块与485转换器连接,485转换器与带通讯接口的控制器连接,其中,上述空调机组的485串口就是上述所指的带通讯接口的控制器。
(2)Modbus软件发现有数据流时,从Labview软件缓冲区中取出机组数据,并分类存入到自身的相应位置。
(3)根据被测试控制器的Modbus协议要求,对接收的通讯数据进行16、10、8或2进制转换。
(4)根据接收到的Modbus数据与下发的测试数据做对比,由软件自动判断测试结果;如数据一致就判合格,反之则判不合格。
(5)针对测试结果进行测试记录。其中,记录可以通过记事本形式。
例如:对于空调机组,其控制逻辑一般存在制冷、除湿、送风、制热、关机等五种模式,若将其5项的值分别定义为10进制数的170,187,204,221及238五种状态,则Modbus软件接收到数据后自动进行处理,将16进制值转换为10进制并判断一个最终结果。若发现转换后的值与预期值不一致时,则会提示异常。即若接收到数据是AA,则显示170,测试通过,但若接收到数据非AA,例如是AB(171),则显示异常并报错。
步骤S206,以记事本的形式存储所有测试数据及记录。该记录方便还原测试过程,并且可以通过Labview软件直接查看所有测试数据,方便设计人员查找软件设计问题。
在上述步骤具体实施的过程中,可以包括以下处理过程:
(1)Modbus软件运行时,在默认路径根据预设时间自动生成Modbus数据的记事本文件。
(2)Modbus软件实时将下发和接收到的数据存储到Labview软件的缓冲区中,并定时写入记事本文件。
(3)当软件检测到数据流发生变化时,将Modbus数据的最新数据累加写入到记事本文件中,该操作防止了突然断电丢失数据的危险。
(4)当Modbus数据的存储量快达到Labview软件的缓冲区的容量时,则在执行完本次写记事本命令后自动清空缓冲区,该操作考虑电脑负载能力,及时对缓冲区进行了释放,节省了资源。
(5)当测试过程中发现测试异常或需要查看历史记录的问题时,直接点击Modbus软件操作界面中的“查看测试数据”即可查询。
下面结合附图及优选实施例对上述步骤进行整体介绍。
优选实施例
本优选实施例提供的Modbus软件可快速完成Modbus协议中寄存器、线圈分组等数据准确性测试;可用作所有带Modbus协议通讯的机组通用监控软件;还可监控高组软件点名通讯模块时的数据输出。
欲应用Modbus软件,需具备一定的测试条件,即PC机一台;Modbus待测试机组(控制器或模块);RS232/485转换器1个;Modbus测试软件。
在具备上述条件后,便可以开始测试,下面,先来介绍如何使用测试模块,即更新后的Modbus软件。
Modbus软件的主界面:该主界面的示意图可以如图4所示,其中包含菜单栏、选项卡、协议参数读写操作界面、参数设置区域、查找功能、数据分析窗口及当前数据发送接收显示区七大块内容。其中,菜单栏包括文件、读取协议等选项;选项卡包括寄存器显示区、线圈显示区等选项;协议参数读写操作界面用于对Modbus协议进行读操作或改写操作;参数设置区域包括模块地址、手动发送、停止发送等选项;查找功能包括:保存、发送、定为到等选项;数据分析窗口可以对数据进行剪切、复制等操作;当前数据发送接收显示区包括机组参数窗口、循环发送数据等选项,用于对当前发送和接收的数据进行显示的窗口。
下面,对各块区域分别进行介绍:
(1)菜单栏:作为Modbus软件的主菜单选项,包括一些基本的菜单项,例如文件选项、查看测试数据等选项,可以设置在主界面的最上边,与其他通用软件类似,方便用户操作。
(2)参数设置区域:图5示出了参数设置区域的组成示意图,该区域可以设置在主界面的左侧部分,其中,功能码设有下拉框选择,分别为厂家级、用户级、自定义等;寄存器始地,即寄存器起始地址。指数据从哪个EXCEL或WORD开始读起;线圈始地,即线圈起始地址。指数据从哪个bit开始读起;线圈长度,指一次数据能读多少个bit;手动发送,点击该按钮,Modbus软件就会自动读取线圈和寄存器两串数据;停止发送,点击该按钮,Modbus软件便会停止发送数据;模块查询,点击该按钮,下发查询命令;打开串口:点击该按钮,便打开了串口,便有数据读取,在串口打开的情况下,该按钮会显示为“关闭串口”;模块地址的地址来源于通讯模块的地址;选择寄存,此处选择寄存器的代码。一般情况下选择了功能码后该值会自动更新,功能码为厂家级时对应45,用户级对应03,自定义为预留;寄存器长度,指一次数据能读多少个WORD;选择线圈,此处选择线圈的代码。一般情况下选择了功能码后该值会自动更新,功能码为厂家级时对应44,用户级对应01,自定义为预留;发送延时,指发送时延时的时间,单位为ms;读取延时,指读取数据时延时的时间,单位为ms;更新延时,指数据更新或更改后需要延时时间才进行更新,单位为ms。
(3)选项卡:该选项卡可以设置在参数设置区域右侧,该设置会方便用户对读取到的数据进行观察和修改。选项卡可以分为寄存器显示区、线圈显示区和分组显示区。当选择寄存器显示区时,协议参数的显示界面显示为寄存器的信息;当选择线圈显示区时,协议参数的显示界面显示为线圈的信息;当选择分组显示区时,协议参数的显示界面为分组的信息。
(4)协议参数读写操作界面:图6示出了协议参数读写操作界面的组成示意图,该界面可以设置在主界面下部分的左侧,其中,该界面的数据是通过读取EXCEL表格或WORD里的协议而得到的。在串口打开的情况下,该数据会根据机组的数据进行实时更新。
该界面主要包含地址、厂家、用户、模拟量、更改值、进制、数据含义、范围值、精度、单位、数据类型、数据位置、是否公开、备注这14个共有的字段,图6中仅给出一部分的示意图,其它字段可以根据具体的机型和协议进行增加。
下面对其中的一部分设置进行说明。地址:指该数据的物理地址,寄存器用WORD表示,线圈用BIT表示。厂家(或用户):指使用厂家(或用户)级代码时,该参数的读写状态。R表示为可读,W表示为可写,当一个数据表示为W/R时,表示该数据为可读可写。可写的数据可以通过此界面直接在更改值的位置更改数据后便可以直接下发数据。模块量:指数据的传输值。更改值:此处可以修改数据,但只有可写的数据才能修改并下发。在更改值处更改数据,之后软件会下发该数据,之后软件会显示“发送成功”以通知用户,且数据会将原始及更新后一起显示。进制:此处可以通过右键进行选择模拟量显示的数据的进制是10进制还是16进制。选择后,会显示选择后的进制。数据含义:指解释该数据表示的意义。数据位置:指数据来自机组协议里的哪个位置。是否公开:指该数据在高软中是否显示出来。是就显示出来,否则不显示。
(5)查找功能:保存:点击“保存”按键,会自动保存数据,且会有对话框提示“数据保存成功”。发送:点击“发送”按键,软件会发送一串写的数据。自动发送:勾选时,点击发送便会自动发送数据,不勾选时,点击发送时便会弹出一个框,需要填写下发的数据代码及数据长度。
(6)数据分析窗口:图7示出了该界面的组成示意图,该窗口可以设置在主界面下部分的右侧,邻近协议参数读写操作界面,在该窗口可以进行数据分析。其中设置有剪切、复制、粘贴、发送等选项,点击不同选项,会执行不同操作。
“<-”:点击该按钮,软件会把右边数据发送、接收显示区中选中的数据复制到分析窗口来。异或校验:分析窗口的数据进行异或校验。起始位、10进制、16进制,都是对分析窗口中选中的数据进行数据分析。
(7)当前数据发送接收显示区:软件在正常运行时,数据都会实时更新,此处的数据都会不停的更新。发送/接收,选中此选项卡时,数据窗口显示为发送/接收数据;循环发送数据,选中此选项卡时,数据窗口显示为循环发送数据;机组参数窗口,选中此选项卡时,数据窗口显示为机组参数窗口;暂停显示,该按键为此值时数据窗口则显示数据,当点击该按钮后会切换为显示发送,此处不再显示发送与接收数据;发送设置,点击该按键后会弹出发送设置参数的对话框;强制发送,该按键为此值时数据窗口则不断更新数据,当点击该按钮后会切换为停止发送,此处不再发送和更新数据。
在介绍了上述测试软件的各功能后,下面,其具体操作步骤进如下:
硬件连接:连接PC机→485转换器→Modbus通讯模块(测试机组);
首次使用协议时需要添加:打开EXCEL格式的通讯协议及解释→选择寄存器部分内容→复制→新建一个记事本文件→粘贴数据(注:若格式不规范则需要清除,如换行空格);
软件配置:打开Modbus测试软件→选择串口→配置参数→设定模块地址;
点击操作→运行或是直接点击时间处便可运行软件;
寄存器写操作:调节软件至“寄存器显示区”→在更改列中输入需要更改的值→点击左下角“发送”即可(注:若需发送10进制则直接在列改列输入10进制数字,若需发送16进制则需在中间用空格间开);
寄存器显示方式:根据实际需求可在“寄存器操作”选项卡中选择显示10进制、16进制及负值(此方式用于范围改变进制显示方式,亦可手工在对应位置输入10或16);
线圈写操作:调节软件至“线圈显示区”→在更改列中输入需要更改的值→点击左下角“发送”即可(注:为提高改写效率及方便进行跨位改写测试,特提供在左上角中“线圈选择”中提供全0、全1及取反操作,拖动可集体改写);
在进行上海素步骤后,即可根据需要对控制器进行测试。
通过上述实施例的使用,达到了如下效果:提高了测试的效率;自动生成自定义的Modbus通讯协议的数据,可直接测试带Modbus接口的被测试控制器;实时存储所有测试数据及记录,方便还原测试过程,方便设计人员查找软件设计问题。
本发明实施例还提供了一种上位机,其结构框图如图8所示,包括:下发模块10,用于通过控制器的Modbus通讯接口向控制器下发测试数据;读取模块20,与下发模块10耦合,用于通过控制器的Modbus通讯接口读取控制器中根据测试数据而生成的机组数据;匹配模块30,与读取模块20耦合,用于将机组数据与下发的测试数据进行匹配,根据匹配结果确定控制器的Modbus通讯接口是否通讯正常。
其中,上述上位机,还可以包括图9所示的导入模块40和第一存储模块50,其中,导入模块40,用于导入Modbus通讯协议数据,其中,Modbus通讯协议数据的导入格式为WORD格式或EXCEL格式;第一存储模块50,与导入模块40耦合,用于将导入的Modbus通讯协议数据分类后存储到相应数组中,其中,分类类别包括:寄存器和线圈。
图10进一步优化了上位机,还可以包括:显示模块60,与下发模块10和读取模块20耦合,用于将下发的测试数据和读取的机组数据输出显示;第二存储模块70,与下发模块10和读取模块20耦合,用于将下发的测试数据和读取的机组数据实时保存在缓冲区中,并按预定时间间隔将缓冲区中的测试数据和读取的机组数据以文档的形式进行存储。
在实施过程中,下发模块10还用于根据测试内容,选择相应分类中的Modbus通讯协议数据作为测试数据下发至控制器的Modbus通讯接口;或根据测试内容,将相应分类中的Modbus通讯协议数据修改后作为测试数据下发至控制器的Modbus通讯接口。
匹配模块30还用于将机组数据经制式转换后与下发的测试数据进行匹配;如果机组数据与下发的测试数据相同,则确认控制器的Modbus通讯接口通讯正常;否则,则确认控制器的Modbus通讯接口通讯异常。
从以上的描述中,可以看出,本发明上述的实施例实现了如下技术效果:
本发明实施例采用了如下方法:上位机通过控制器的Modbus通讯接口向控制器下发测试数据;并将控制器放回的机组数据与下发的数据进行对比来确定控制器的Modbus通讯接口是否通讯正常。通过运用上述方法,克服了相关技术中只能通过测试人员人工分析Modbus通讯数据,并以此来判断Modbus通讯是否可靠,该方法浪费人力,导致测试效率较低的问题,进而实现了自动化分析数据,节省了人力,提高了测试效率,提升了系统的性能。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种控制器的Modbus通讯接口的测试方法,其特征在于,包括:
上位机通过所述控制器的Modbus通讯接口向所述控制器下发测试数据;
上位机通过所述控制器的Modbus通讯接口读取所述控制器中根据所述测试数据而生成的机组数据;
上位机将所述机组数据与下发的所述测试数据进行匹配,根据匹配结果确定所述控制器的Modbus通讯接口是否通讯正常;
其中,上位机通过所述控制器的Modbus通讯接口向所述控制器下发测试数据,包括:根据测试内容,在上位机中选择相应分类中的Modbus通讯协议数据作为所述测试数据下发至所述控制器的Modbus通讯接口;或根据测试内容,将上位机中相应分类中的Modbus通讯协议数据修改后作为所述测试数据下发至所述控制器的Modbus通讯接口。
2.根据权利要求1所述的方法,其特征在于,在上位机通过所述控制器的Modbus通讯接口向所述控制器下发测试数据之前,还包括:
在所述上位机中导入所述Modbus通讯协议数据,其中,所述Modbus通讯协议数据的导入格式为WORD格式或EXCEL格式;
将导入的所述Modbus通讯协议数据分类后存储到所述上位机的相应数组中,其中,所述分类类别包括:寄存器和线圈。
3.根据权利要求1所述的方法,其特征在于,上位机将所述机组数据与下发的所述测试数据进行匹配,根据匹配结果确定所述控制器的Modbus通讯接口是否通讯正常,包括:
上位机将所述机组数据经制式转换后与下发的所述测试数据进行匹配;
如果所述机组数据与下发的所述测试数据相同,则确认所述控制器的Modbus通讯接口通讯正常;否则,则确认所述控制器的Modbus通讯接口通讯异常。
4.根据权利要求1-3任一项所述的方法,其特征在于,上位机将下发的所述测试数据和读取的所述机组数据输出在显示区域中。
5.根据权利要求4所述的方法,其特征在于,上位机将下发的所述测试数据和读取的所述机组数据实时保存在缓冲区中,并按预定时间间隔将所述缓冲区中的所述测试数据和读取的所述机组数据以文档的形式进行存储。
6.根据权利要求5所述的方法,其特征在于,所述控制器为空调控制器。
7.一种上位机,其特征在于,包括:
下发模块,用于通过控制器的Modbus通讯接口向所述控制器下发测试数据;
读取模块,用于通过所述控制器的Modbus通讯接口读取所述控制器中根据所述测试数据而生成的机组数据;
匹配模块,用于将所述机组数据与下发的所述测试数据进行匹配,根据匹配结果确定所述控制器的Modbus通讯接口是否通讯正常;
其中,所述上位机通过以下步骤实现通过所述控制器的Modbus通讯接口向所述控制器下发测试数据:根据测试内容,在上位机中选择相应分类中的Modbus通讯协议数据作为所述测试数据下发至所述控制器的Modbus通讯接口;或根据测试内容,将上位机中相应分类中的Modbus通讯协议数据修改后作为所述测试数据下发至所述控制器的Modbus通讯接口。
8.根据权利要求7所述的上位机,其特征在于,还包括:
导入模块,用于导入所述Modbus通讯协议数据,其中,所述Modbus通讯协议数据的导入格式为WORD格式或EXCEL格式;
第一存储模块,用于将导入的所述Modbus通讯协议数据分类后存储到相应数组中,其中,所述分类类别包括:寄存器和线圈。
9.根据权利要求7或8所述的上位机,其特征在于,还包括:
显示模块,用于将下发的所述测试数据和读取的所述机组数据输出显示。
10.根据权利要求9所述的上位机,其特征在于,还包括:
第二存储模块,用于将下发的所述测试数据和读取的所述机组数据实时保存在缓冲区中,并按预定时间间隔将所述缓冲区中的所述测试数据和读取的所述机组数据以文档的形式进行存储。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210109942.4A CN103376777B (zh) | 2012-04-13 | 2012-04-13 | 控制器的Modbus通讯接口的测试方法及上位机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210109942.4A CN103376777B (zh) | 2012-04-13 | 2012-04-13 | 控制器的Modbus通讯接口的测试方法及上位机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103376777A CN103376777A (zh) | 2013-10-30 |
CN103376777B true CN103376777B (zh) | 2016-03-16 |
Family
ID=49462041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210109942.4A Active CN103376777B (zh) | 2012-04-13 | 2012-04-13 | 控制器的Modbus通讯接口的测试方法及上位机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103376777B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108062033B (zh) * | 2017-11-29 | 2021-04-30 | 杭州九略智能科技有限公司 | 基于Linux系统的工业协议自动化仿真测试系统及方法 |
CN112286742A (zh) * | 2020-10-20 | 2021-01-29 | 苏州浪潮智能科技有限公司 | 一种实现串行总线在线进行压力测试的方法、装置及系统 |
CN113203175B (zh) * | 2021-05-25 | 2022-03-29 | 珠海格力电器股份有限公司 | 控制器接口绑定方法、装置、温控器和空调机组 |
CN114089649A (zh) * | 2021-09-26 | 2022-02-25 | 湖北三江航天红峰控制有限公司 | 一种自动化测试工装系统及方法 |
CN116540681A (zh) * | 2023-07-04 | 2023-08-04 | 合众新能源汽车股份有限公司 | 控制器接口功能测试系统及测试方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1758611A (zh) * | 2004-10-10 | 2006-04-12 | 中兴通讯股份有限公司 | 一种通讯接口的在线监测和测试方法 |
KR100671026B1 (ko) * | 2005-10-05 | 2007-01-19 | 삼성중공업 주식회사 | Tcp/ip 기반의 모드버스 통신 모듈 및 그 구현 방법 |
CN1959424A (zh) * | 2006-09-20 | 2007-05-09 | 珠海德力电子有限公司 | 通用型通讯口测试仪器 |
CN101677277A (zh) * | 2008-09-17 | 2010-03-24 | 许昌开普电器检测研究院 | Modbus-rtu协议一致性测试方法 |
CN201662718U (zh) * | 2010-03-02 | 2010-12-01 | 珠海格力电器股份有限公司 | 空调控制器功能的测试装置及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7752280B2 (en) * | 2007-03-22 | 2010-07-06 | Moxa Inc. | Method of detecting response time-out based on master-slave protocol |
CN102298550A (zh) * | 2010-06-23 | 2011-12-28 | 鸿富锦精密工业(深圳)有限公司 | Rs485端口测试装置 |
CN201853136U (zh) * | 2010-11-19 | 2011-06-01 | 浙江科能达电气有限公司 | 智能控制器测试仪 |
-
2012
- 2012-04-13 CN CN201210109942.4A patent/CN103376777B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1758611A (zh) * | 2004-10-10 | 2006-04-12 | 中兴通讯股份有限公司 | 一种通讯接口的在线监测和测试方法 |
KR100671026B1 (ko) * | 2005-10-05 | 2007-01-19 | 삼성중공업 주식회사 | Tcp/ip 기반의 모드버스 통신 모듈 및 그 구현 방법 |
CN1959424A (zh) * | 2006-09-20 | 2007-05-09 | 珠海德力电子有限公司 | 通用型通讯口测试仪器 |
CN101677277A (zh) * | 2008-09-17 | 2010-03-24 | 许昌开普电器检测研究院 | Modbus-rtu协议一致性测试方法 |
CN201662718U (zh) * | 2010-03-02 | 2010-12-01 | 珠海格力电器股份有限公司 | 空调控制器功能的测试装置及系统 |
Non-Patent Citations (2)
Title |
---|
基于Modbus协议一致性测试系统的设计与实现;聂金平 等;《仪器仪表标准化与计量》;20090626(第3期);论文第1-3,5节、图3 * |
智能测试仪器和系统中Modbus协议的实现;郭庆 等;《计量与测试技术》;20090130(第1期);第47-49页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103376777A (zh) | 2013-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103376777B (zh) | 控制器的Modbus通讯接口的测试方法及上位机 | |
US8832579B2 (en) | System for creation and management of industrial automation and information solutions and services | |
CN103578568B (zh) | 固态硬盘的性能测试方法及装置 | |
CN102323499A (zh) | 一种继电保护设备实现自动化测试的方法 | |
CN108180599A (zh) | 调试方法和调试装置及计算机可读存储介质 | |
US20090192635A1 (en) | Program creating device for programmable contoller, program creating method for programmable controller, and recording medium having program recorded thereon | |
CN113158439B (zh) | 一种用于通信导航系统测试的仿真系统 | |
CN104375934A (zh) | 一种Android手机软件可靠性测试方法 | |
CN101324363B (zh) | 一种空调监测系统 | |
CN110825412B (zh) | 基于LabVIEW的控制器程序的刷写系统及方法 | |
CN107391366A (zh) | 一种测试用例的生成方法及执行方法和装置 | |
CN112100081B (zh) | 基于双芯智能电表的升级测试方法、装置和计算机设备 | |
CN111563042A (zh) | 一种应用于Wi-Fi5芯片的无线性能测试系统及方法 | |
CN109143277A (zh) | 一种gnss接收机软件自动化测试方法 | |
CN102521250B (zh) | 一种智能测量仪器通用语法分析的实现方法 | |
CN112445670B (zh) | 一种eMMC测试方法和装置 | |
CN106370223A (zh) | 一种实现开关网络通用性的方法、适配器及系统 | |
CN104678292B (zh) | 一种复杂可编程逻辑器件cpld测试方法和装置 | |
CN109343893B (zh) | 一种航空遥感设备参数装订系统以及装订方法 | |
CN116049015A (zh) | 一种计算设备的通用调试器、调试系统及调试方法 | |
CN109885483A (zh) | 用于实时反馈游戏内运行状态的日志可视化方法和系统 | |
CN110955222B (zh) | 发动机数据记录仪的测试方法及测试系统 | |
CN109243650B (zh) | 基于fpga的具有组态功能的核电站安全级仪控系统及方法 | |
CN106300653A (zh) | 配电自动化主站系统遥测遥信导入方法 | |
CN104280098B (zh) | 基于Labview的船舶液位传感器测试方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |