一种用于管理和解释通信协议的方法

文档序号:7859838阅读:223来源:国知局
专利名称:一种用于管理和解释通信协议的方法
技术领域
本发明涉及通信协议管理的技术领域,尤其涉及使用数据库管理的方法将协议信息与测控程序分离的一种用于管理和解释通信协议的方法。背景技术
目前,软件解释协议的传统方法存在通用性和灵活性差、工作量大的问题。该发明不仅减少了程序员解释协议的工作量,而且大大提高了测控软件对协议更改的灵活性。该办法从参数配置管理软件的设计、数据库的设计以及程序解释协议的算法等方面详细介绍了这种新方法的设计原理和实现过程。传统的测控管理方法对通信协议参数没有统一的管理,所以对通信协议参数都是按照字节逐一进行解释,这种传统的测控管理方法主要有以下几种弊端一是当通信协议 比较长时,测控管理中对参数解释的工作量非常大;二是测控管理对协议更改的灵活性太差,开始制定通信协议时考虑不周全,所以在测试的过程中通信协议都有所更变,比如增减通信协议的长度或者是更改某个参数在通信协议中的位置和所占的位数等,那么这时就需要测控管理对通信协议的解释做比较大的修改,这样即不方便用户修改和使用,延长了项目在测试过程中调试的周期,也加重了在测试过程中设计调试人员的工作量。
发明内容
基于传统解释方法存在的弊端,本发明提供一种用于管理和解释通信协议的方法及装置,实现了不管通信协议怎样改变,保证测控管理方法不变,只需要用户在参数库配置管理界面中配置相应参数的信息即可。极大地提高了工作效率和测控调试对通信协议改变的灵活性。这种新的方法对不同项目的不同通信协议具有通用性,具有极大的实用价值。为了实现上述发明目的,本发明采用技术方案如下
一种用于管理和解释通信协议的装置,包括上位机和下位机,所述上位机为开发的测控设备,所述下位机为甲方委托乙方测试的对象,即被测产品;所述测控设备包括驱动板、逻辑板、显示界面屏,所述驱动板一端口通过进行数据交换的网线、串口线、429总线与被测产品相连;所述驱动板另一端口通过对数据解析的逻辑板与显示界面屏相连。一种用于管理和解释通信协议的装置,所述显示界面屏的界面为用于对各种总线协议信息进行配置的参数库配置管理界面。—种用于管理和解释通信协议的装置,所述测控设备的驱动板包括网卡、串口卡、429卡,所述网卡、串口卡、429卡用于通过网线、串口线、429总线接收被测产品送过来的数据。一种用于管理和解释通信协议的装置,所述逻辑板设置有将用户端上位机要发送给被测产品的命令或数据进行打包的性能。送过来的数据经过逻辑板对数据的解析,将需要的数据显示在上位机的显示界面屏的界面上;
同样,用户端的上位机将要发送给被测产品的命令或数据通过显示界面屏的界面输A,经过逻辑板对数据的打包后,通过驱动板上的网卡、串口卡、429卡,经网线、串口线、429总线发送给被测产品。一种用于管理和解释通信协议的方法,采用统一解释通讯协议,通过数据库和参数配置管理方法的设计,能够在测控程序中使用以VC++平台的算法统一解释不同通信协议中的不同参数;
其步骤如下
1、当用户端上位机的测控设备通过网线、串口线、429总线从被测产品接收到一帧新的数据至驱动板接收后,从测控设备逻辑板的数据库中读取工位的信息,即得到工位所占通道位置和个数、得到工位所占的每个通道的BYTE值、得到工位屏蔽字节的位数和位置等;
2、然后判断屏蔽的字节是高位字节还是低位字节, 如果屏蔽的是低位字节并且高位在前,那么执行处理算法I ;
如果屏蔽的是低位字节并且低位在前,那么执行处理算法2 ;
如果屏蔽的是高位字节并且高位在前,那么执行处理算法3 ;
如果屏蔽的是高位字节并且低位在前,那么执行处理算法4 ;
这样循环下去,直至最后一个工位解释完成;
3、VC++平台的算法
(I)首先定义下面变量struct GWInfo {工位的所有信息变量} m_GWInfo [1024] ;[2]int m_RecGWCount;//接收协议的参数个数,
int m_RecByteCount;//接收协议的字节数,int m_SendByteCount; //发送协议的字节数;
初始化时,将全部工位的信息保存在结构体数组中;
(2)得到屏蔽位的算法如下for(j=0;j<8;j++) {c=pDriver->m_GWInfo[i]. strShieldWord.GetAt (j);if (c==,0’){switch(j) {case 0:PB=PB&0x7f;break;case I:PB=PB&0xbf;break;case 2:PB=PB&0xdf;break;case 3:PB=PB&0xef;break;case 4:PB=PB&0xf7;break;case 5:PB=PB&0xfb;break;case 6:PB=PB&0xfd;break;case 7:PB=PB&0xfe;break;}}};
即对被测产品的总线送过来的一帧数据,通过网线、串口线、429总线后,经过逻辑板对通讯协议总线信息的读取计算,通过设计的解释协议的算法,最终才能送到用户端的上位机显示界面屏的界面显示给用户。一种用于管理和解释通信协议的方法,所述统一解释通讯协议的总体设计是,首先根据参数解释的需要,提取参数的信息,根据参数的信息设计用户使用的界面;然后根据界面设计表和相应的字段,以便将参数信息保存到数据库中;最后测控程序根据数据库中参数的信息进行统一解释。一种用于管理和解释通信协议的方法,所述通信协议参数信息的特性,是根据解释参数的需要,提取出所需通信协议的参数属性特性;所述參数属性的特性包括參数的基本属性、參数的所占信道属性和參数的屏蔽字属性;所述參数的基本属性包括參数名、參数说明、參数数据类型、參数单位、比例;所述參数所占信道属性包括所占信道个数、所占信道位置和高低位顺序;所述參数的屏蔽字属性包括屏蔽字、所屏蔽字节;
如果通信协议的长度或者參数有所改动,只需要通过參数配置管理界面,把改动后的信息写入数据库 中,而测控程序则不需要任何修改。一种用于管理和解释通信协议的方法,所述參数库配置管理界面设计,包括打开数据库、參数名、以及界面右边部分的參数特性;
1、打开数据库是指选择ー个项目中的其中ー个通讯协议,一个项目,包括很多种协议,如串ロ协议、1553协议、429协议;
2、參数名显示“打开数据库”中所选定协议中的所有參数;
3、參数特性显示“參数名”中选定參数的特性;
4、界面右部分的參数特性
(1)參数属性指每个參数必须要填入的属性;
(2)可选參数属性是根据项目的具体需要添加的參数属性;
(3)信道属性,包括所占信道个数,是指在协议中所占的字节个数;所占信道位置,是指在协议中所占字节的序号;高低位顺序,是对于占用多个字节的參数,指定数据的高位还是低位占用协议的低序号字节;
(4)屏蔽字输入及说明,包括屏蔽字,是指当该參数占不满ー个完整的字节时,用屏蔽I的方法来说明占用了几位;所屏蔽字节,指屏蔽的是该參数的最高位字节还是最低位字节;
(5)事后处理配置,用于每次參数做了修改后,重新生成事后处理的XML配置文件;
(6)功能属性,包括增加參数、修改參数、删除參数,和清空数据库功能。一种用于管理和解释通信协议的方法,所述參数库配置管理的设计方法,为对通信协议中的每个參数进行统ー解释,必须事先用配置參数信息的方法对參数进行统一管理,其实现采用数据库设计,包括数据库表设计、数据库表之间的关系;
(1)数据库表,包括
ConfigUnitDetail表,用来保存參数所属协议的整体属性,如该协议所属的协议名UnitName、该协议的參数个数PropertyNumber、该协议包括的接收协议的字节数InByteCount和该协议包括的发送协议的字节数OutByteCount ;
ConfigUnitProperty 表,用来保存 ConfigUnitDetail 表中姆个协议名 UnitName 所对应的所有參数名Name及其对应的索引Index,以及姆个參数所属的数据类型DataType ;ConfigUnitPropertyDetaiIAnalog表,主要保存双精度和单精度型数据的信息;其中该表包括 index、Name、UnitName、AccessName> Description、SignType、InOrOut>ChannelCount 等字段;
ConfigUnitPropertyDetai I Integer表,主要保存整型和数字型数据的信息;其中该表包括 index、Name、UnitName、AccessName > Description、SignType、InOrOut >ChannelCount 等字段;
(2)数据库表之间的关系ConfigUnitDetail表中姆个协议所包含的參数的UnitName、DataType都保存在ConfigUnitProperty表中,而姆个參数根据DataType类型的不同又分别将具体的參数信息保存在 ConfigUnitPropertyDetai IAnalog 表和 ConfigUnitPropertyDetai I Integer 表中。由于采用如上所述的技术方案,本发明具有如下优越性
一种用于管理和解释通信协议的方法,实现了一个协议參数库配置管理软件,并以串ロ为例描述了对參数的统ー解释方法,这样不管协议怎样改变,保证测控程序不变,只需要用户在參数库配置管理软件中配置相应參数的信息即可。极大地提高了工作效率和测控程序对协议改变的灵活性。这种新的方法对不同项目的不同协议具有通用性,所以具有极大的实用价值。

图I是用于管理和解释通信协议的总体方框 图2是用于管理和解释通信协议的界面设计方框 图3是用于管理和解释通信协议的数据库表之间的关系方框 图4是用于管理和解释通信协议的流程图。图5是用于整个测控的环境架构图。
具体实施方式
如图1、2、3、4、5所示,一种用于管理和解释通信协议的装置,包括上位机和下位机,所述上位机为开发的测控设备,所述下位机为甲方委托こ方测试的对象,即被测产品;所述测控设备包括驱动板、逻辑板、显示界面屏,所述驱动板一端ロ通过进行数据交换的网线、串ロ线、429总线与被测产品相连;所述驱动板另一端ロ通过对数据解析的逻辑板与显示界面屏相连。所述显示界面屏的界面为用于对各种总线协议信息进行配置的參数库配置管理界面。所述测控设备的驱动板包括网卡、串ロ卡、429卡,所述网卡、串ロ卡、429卡用于通过网线、串ロ线、429总线接收被测产品送过来的数据。所述逻辑板设置有将用户端上位机要发送给被测产品的命令或数据进行打包的性能。送过来的数据经过逻辑板对数据的解析,将需要的数据显示在上位机的显示界面屏的界面上;同样,用户端的上位机将要发送给被测产品的命令或数据通过显示界面屏的界面输入,经过逻辑板对数据的打包后,通过驱动板上的网卡、串ロ卡、429卡,经网线、串ロ线、429总线发送给被测产品。一种用于管理和解释通信协议的方法,采用统一解释通讯协议,通过数据库和參数配置管理方法的设计,能够在测控程序中使用以VC++平台的算法统ー解释不同通信协议中的不同參数;包括
I设计整体思路和參数特性分析设计的总体思路是首先根据參数解释的需要,提取參数的信息,根据參数的信息设计用户使用的界面;然后根据界面设计表和相应的字段,以便将參数信息保存到数据库中;最后测控程序根据数据库中參数的信息进行统一解释。如图I所示。通信协议參数特性分析根据解释參数的需要,提取出所需的參数特性。根据參数属性性质的不同,分为參数的基本属性、參数的所占信道属性和參数的屏蔽字属性。參数的基本属性包括參数名、參数说明、參数数据类型、參数单位、比例等;參数所占信道属性包括所占信道个数、所占信道位置和高低位顺序等。參数的屏蔽字属性包括屏蔽字、所屏蔽字节等。如图I中所示,如果协议的长度或者參数有所改动,只需要通过參数配置管理软件把改动后的信息写入数据库中,而测控程序则不需要任何修改。2參数配置管理软件界面介绍 參数配置管理软件的界面主要由以下三个大部分组成打开数据库、參数名、以及界面右边部分的參数特性。如图2所示。
打开数据库是指选择ー个项目中的其中一个通讯协议。ー个项目可能包括很多种协议,如串ロ协议、1553协议、429协议等。參数名显示“打开数据库”中所选定协议中的所有參数。參数特性显示“參数名”中选定參数的特性。下面具体介绍界面右部分内容
I)參数属性指每个參数必须要填入的属性。2)可选參数属性是根据项目的具体需要添加的參数属性。3)信道属性包括三个方面内容。所占信道个数是指在协议中所占的字节个数;所占信道位置是指在协议中所占字节的序号;高低位顺序对于占用多个字节的參数,指定数据的高位还是低位占用协议的低序号字节。4)屏蔽字输入及说明主要包括两个方面内容。屏蔽字是指当该參数占不满ー个完整的字节时,用屏蔽I的方法来说明占用了几位;所屏蔽字节指屏蔽的是该參数的最高位字节还是最低位字节。5)事后处理配置用于每次參数做了修改后,重新生成事后处理的XML配置文件。6)功能属性包括增加參数、修改參数、删除參数,和清空数据库等功能。3參数库配置管理软件的设计,要对协议中的每个參数进行统ー解释,必须事先用ー种方法对參数进行统一管理,下面详细介绍对參数进行管理方法的设计和实现。3. I数据库设计
3.I. I表设计是主要设计四个表;
ConfigUnitDetail表用来保存參数所属协议的整体属性,如该协议所属的协议名UnitName、该协议的參数个数PropertyNumber、该协议包括的接收协议的字节数InByteCount和该协议包括的发送协议的字节数OutByteCount等;
ConfigUnitProperty 表用来保存 ConfigUnitDetail 表中姆个协议名 UnitName 所对应的所有參数名Name及其对应的索引Index,以及姆个參数所属的数据类型DataType等。ConfigUnitPropertyDetaiIAnalog表主要保存双精度和单精度型数据的信息。包括 index、Name、UnitName、AccessName、Description、SignType、InOrOut、ChannelCount等字段。ConfigUnitPropertyDetailInteger表主要保存整型和数字型数据的信息。包括 inaex>Name>UnitName>AccessName>Description> SignType>InOrOut>ChanneICount 等字段。
3. I. 2表之间的关系=ConfigUnitDetail表中每个协议所包含的参数的UnitNameλ DataType 等都保存在 ConfigUnitProperty 表中,而姆个参数根据 DataType类型的不同又分别将具体的参数信息保存在ConfigUnitPropertyDetai IAnalog表和ConfigUnitPropertyDetaillnteger 表中。如图 3 所不。4、统ー解释通讯协议,设计数据库和参数配置管理软件最終的目的是为了能够在测控程序中使用ー种算法统ー解释不同协议中的不同参数,这样大大减小了程序员的エ作量,提高了工作效率。下面以VC++平台为例介绍该解释协议的算法;以ー个通信协议参数库配置管理软件,并以串ロ为例描述了对参数的统ー解释方法,
4. I流程图如图4所不
4.2实现首先定义下面变量struct GWInfo {エ位的所有信息变量} m_GWInfo [1024] ;[2] int m—RecGWCount;//接收协议的参数个数, int m—RecByteCount;//接收协议的字节数, int m—SendByteCount;//发送协议的字节数,
初始化时,将全部エ位的信息保存在结构体数组中。得到屏蔽位的算法如下
for (j=0; j<8; j++) {c=pDriver->m_GWInfo [i] · strShieldWord. GetAt (j) ; if (c==,) {switch (j) {case 0:PB=PB&0x7f;break; case I:PB=PB&0xbf;break; case 2:PB=PB&0xdf;break; case 3:PB=PB&0xef;break; case 4:PB=PB&0xf7;break; case 5:PB=PB&0xfb;break; case 6:PB=PB&0xfd;break; case 7:PB=PB&0xfe;break;}}}o
权利要求
1.一种用于管理和解释通信协议的装置,包括上位机和下位机,其特征在于所述上位机为开发的测控设备,所述下位机为甲方委托乙方测试的对象,即被测产品;所述测控设备包括驱动板、逻辑板、显示界面屏,所述驱动板一端口通过进行数据交换的网线、串口线、429总线与被测产品相连;所述驱动板另一端口通过对数据解析的逻辑板与显示界面屏相连。
2.根据权利要求I所述的一种用于管理和解释通信协议的装置,其特征在于所述显示界面屏的界面为用于对各种总线协议信息进行配置的参数库配置管理界面。
3.根据权利要求I所述的一种用于管理和解释通信协议的装置,其特征在于所述测控设备的驱动板包括网卡、串口卡、429卡,所述网卡、串口卡、429卡用于通过网线、串口线、429总线接收被测产品送过来的数据。
4.根据权利要求I所述的一种用于管理和解释通信协议的装置,其特征在于所述逻 辑板设置有将用户端上位机要发送给被测产品的命令或数据进行打包的装置;送过来的数据经过逻辑板对数据的解析,将需要的数据显示在上位机的显示界面屏的界面上;同样,用户端的上位机将要发送给被测产品的命令或数据通过显示界面屏的界面输入,经过逻辑板对数据的打包后,通过驱动板上的网卡、串口卡、429卡,经网线、串口线、429总线发送给被测产品。
5.一种用于管理和解释通信协议的方法,其特征在于采用统一解释通讯协议,通过数据库和参数配置管理方法的设计,能够在测控程序中使用以VC++平台的算法统一解释不同通信协议中的不同参数;其步骤如下 1)、当用户端上位机的测控设备通过网线、串口线、429总线从被测产品接收到一帧新的数据至驱动板接收后,从测控设备逻辑板的数据库中读取工位的信息,即得到工位所占通道位置和个数、得到工位所占的每个通道的BYTE值、得到工位屏蔽字节的位数和位置; 2)、然后判断屏蔽的字节是高位字节还是低位字节, 如果屏蔽的是低位字节并且高位在前,那么执行处理算法I ; 如果屏蔽的是低位字节并且低位在前,那么执行处理算法2 ; 如果屏蔽的是高位字节并且高位在前,那么执行处理算法3 ; 如果屏蔽的是高位字节并且低位在前,那么执行处理算法4 ; 这样循环下去,直至最后一个工位解释完成; 3)、VC++平台的算法 (I)首先定义下面变量struct GWInfo {工位的所有信息变量} m_GWInfo [1024] ;[2]int m_RecGWCount;//接收协议的参数个数, int m_RecByteCount;//接收协议的字节数, int m_SendByteCount; //发送协议的字节数;初始化时,将全部工位的信息保存在结构体数组中; (2)得到屏蔽位的算法如下for(j=0;j<8;j++) {c=pDriver->m_GWInfo[i]. strShieldWord.GetAt (j);if (c==,0’){switch(j) {case 0:PB=PB&0x7f;break;case I:PB=PB&0xbf;break;case 2:PB=PB&0xdf;break;
6.根据权利要求5所述的一种用于管理和解释通信协议的方法,其特征在于所述统一解释通讯协议的总体设计是,首先根据参数解释的需要,提取参数的信息,根据参数的信息设计用户使用的界面;然后根据界面设计表和相应的字段,以便将参数信息保存到数据库中;最后测控程序根据数据库中参数的信息进行统一解释。
7.根据权利要求5所述的一种用于管理和解释通信协议的方法,其特征在于所述通信协议参数信息的特性,是根据解释参数的需要,提取出所需通信协议的参数属性特性; 所述参数属性的特性包括参数的基本属性、参数的所占信道属性和参数的屏蔽字属性;所述参数的基本属性包括参数名、参数说明、参数数据类型、参数单位、比例;所述参数所占信道属性包括所占信道个数、所占信道位置和高低位顺序;所述参数的屏蔽字属性包括屏蔽字、所屏蔽字节; 如果通信协议的长度或者参数有所改动,只需要通过参数配置管理界面,把改动后的信息写入数据库中,而测控程序则不需要任何修改。
8.根据权利要求5所述的一种用于管理和解释通信协议的方法,其特征在于所述参数库配置管理界面设计,包括打开数据库、参数名、以及界面右边部分的参数特性; 1)、打开数据库是指选择一个项目中的其中一个通讯协议,一个项目,包括很多种协议,如串口协议、1553协议、429协议; 2)、参数名显示“打开数据库”中所选定协议中的所有参数; 3)、参数特性显示“参数名”中选定参数的特性; 4)、界面右部分的参数特性 (1)参数属性指每个参数必须要填入的属性; (2)可选参数属性是根据项目的具体需要添加的参数属性; (3)信道属性,包括所占信道个数,是指在协议中所占的字节个数;所占信道位置,是指在协议中所占字节的序号;高低位顺序,是对于占用多个字节的参数,指定数据的高位还是低位占用协议的低序号字节; (4)屏蔽字输入及说明,包括屏蔽字,是指当该参数占不满一个完整的字节时,用屏蔽I的方法来说明占用了几位;所屏蔽字节,指屏蔽的是该参数的最高位字节还是最低位字节; (5)事后处理配置,用于每次参数做了修改后,重新生成事后处理的XML配置文件; (6)功能属性,包括增加参数、修改参数、删除参数,和清空数据库功能。
9.根据权利要求5所述的一种用于管理和解释通信协议的方法,其特征在于所述参数库配置管理的设计方法,为对通信协议中的每个参数进行统一解释,必须事先用配置参数信息的方法对参数进行统一管理,其实现采用数据库设计,包括数据库表设计、数据库表之间的关系; (1)数据库表,包括 ConfigUnitDetail表,用来保存参数所属协议的整体属性,如该协议所属的协议名UnitName、该协议的参数个数PropertyNumber、该协议包括的接收协议的字节数InByteCount和该协议包括的发送协议的字节数OutByteCount ; ConfigUnitProperty 表,用来保存 ConfigUnitDetail 表中每个协议名 UnitName 所对应的所有参数名Name及其对应的索引Index,以及每个参数所属的数据类型DataType ; ConfigUnitPropertyDetaiIAnalog表,主要保存双精度和单精度型数据的信息;其中该表包括 index、Name、UnitName、AccessName、Description、SignType、InOrOut、 ChannelCount 等字段; ConfigUnitPropertyDetai I Integer表,主要保存整型和数字型数据的信息;其中该表包括 index、Name、UnitName、AccessName、Description、SignType、InOrOut、ChannelCount 等字段; (2)数据库表之间的关系 ConfigUnitDetail表中每个协议所包含的参数的UnitName、DataType都保存在ConfigUnitProperty表中,而每个参数根据DataType类型的不同又分别将具体的参数信息保存在 Conf igUnitPropertyDetai IAnalog 表和 ConfigUnitPropertyDetai I Integer 表中。
全文摘要
本发明涉及通信协议管理的技术领域,公开一种用于管理和解释通信协议的方法,采用开发测控设备的上位机和甲方委托乙方测试对象的下位机,通过数据库和参数配置管理方法的设计,能够在测控程序中使用以VC++平台的算法统一解释不同通信协议中的不同参数;即对被测产品的总线送过来的一帧数据,通过网线、串口线、429总线后,经过逻辑板对通讯协议总线信息的读取计算,通过设计的解释协议的算法,最终才能送到用户端的上位机显示界面屏的界面显示给用户。本发明实现了一个协议参数库配置管理软件,并以串口为例描述了对参数的统一解释方法,极大地提高了工作效率和测控程序对协议改变的灵活性。具有通用性,所以具有极大的实用价值。
文档编号H04L29/06GK102857375SQ201210329560
公开日2013年1月2日 申请日期2012年9月8日 优先权日2012年9月8日
发明者李佳, 战玉芝, 王欢, 刘珺, 邵雯琦, 赵健, 周申 申请人:中色科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1