仪表通讯协议.docx
- 文档编号:8786732
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:54
- 大小:36.66KB
仪表通讯协议.docx
《仪表通讯协议.docx》由会员分享,可在线阅读,更多相关《仪表通讯协议.docx(54页珍藏版)》请在冰豆网上搜索。
仪表通讯协议
一、通讯方式说明
仪表共有两种通讯方式:
RS232和RS485。
二、通讯协议说明
仪表通讯协议共有两个版本:
V2.0和V3.0。
1、读参数发送指令格式及内容说明
★V3.0协议说明
格式:
XXXXXXXXXXXXXXXX
NO1NO2NO3NO4NO5NO6NO7NO8
共有8个字节数据。
其中:
NO1=80H+ADDR(每台仪表均有该参数,表示该仪表的通讯地址)
NO2=80H+ADDR(每台仪表均有该参数,表示该仪表的通讯地址)
NO3=52H(表示发送的指令为“读”指令)
NO4=XXH(表示要读的参数的地址,见参数地址表)
NO5=00H(表示补位用数据00)
NO6=00H(表示补位用数据00)
NO7+NO8*FFH=52H+ADDR+NO4*FFH(表示读数据的CRC校验码的数值)
注:
读数据的CRC校验码计算方法为:
CRC=52H+ADDR+(要读的参数的地址)*FFH
★V2.0协议说明
格式:
XXXXXXXX
NO1NO2NO3NO4
共有4个字节数据。
其中:
NO1=80H+ADDR(每台仪表均有该参数,表示该仪表的通讯地址)
NO2=80H+ADDR(每台仪表均有该参数,表示该仪表的通讯地址)
NO3=52H(表示发送的指令为“读”指令)
NO4=XXH(表示要读的参数的地址,见参数地址表)
2、写参数发送指令格式及内容说明
★V3.0协议说明
格式:
XXXXXXXXXXXXXXXX
NO1NO2NO3NO4NO5NO6NO7NO8
共有8个字节数据。
其中:
NO1=80H+ADDR(每台仪表均有该参数,表示该仪表的通讯地址)
NO2=80H+ADDR(每台仪表均有该参数,表示该仪表的通讯地址)
NO3=43H(表示发送的指令为“写”指令)
NO4=XXH(表示写的参数的地址,见参数地址表)
NO5+NO6*FFH=XXH*FFH+XXH(表示要写的参数的数据,2个字节)
NO7+NO8*FFH=43H+ADDR+NO6*FFH+NO5+NO4*FFH(表示读数据的CRC校验码的数值)
注:
读数据的CRC校验码计算方法为:
CRC=43H+ADDR+(表示要写的参数的数据,2个字节)+(要读的参数的地址)*FFH
★V2.0协议说明
格式:
XXXXXXXXXXXX
NO1NO2NO3NO4NO5NO6
共有4个字节数据。
其中:
NO1=80H+ADDR(每台仪表均有该参数,表示该仪表的通讯地址)
NO2=80H+ADDR(每台仪表均有该参数,表示该仪表的通讯地址)
NO3=52H(表示发送的指令为“写”指令)
NO4=XXH(表示要写的参数的地址,见参数地址表)
NO5+NO6*FFH=XXH*FFH+XXH(表示要写的参数的数据,2个字节)
3、仪表无论接收了“读”或“写”指令后都会发送数据包给计算机,其格式及内容如下说明。
★V3.0协议说明
格式:
XXXXXXXXXXXXXXXXXXXX
NO1NO2NO3NO4NO5NO6NO7NO8NO9NO10
共有10个字节数据。
处理方式为:
分别将10个字节数据读上来放在10个寄存器中,根据仪表的不同类型进行组合。
数据处理举例说明:
仪表型号为XM808
第一步:
分析数据组合方式。
1、PV(16进制)=NO2*FFH+NO1
2、SV(16进制)=NO4*FFH+NO3
3、MV(16进制)=NO5
4、STS(16进制)=NO6
5、参数数值(16进制)=NO8*FFH+NO7
6、CRC(16进制)=NO10*FFH+NO9
以上各数据的数值类型暂时为16进制
第二步:
将16进制数据转换为10进制整数。
1、PV(16进制)—>PV(10进制)
2、SV(16进制)—>SV(10进制)
3、MV(16进制)—>MV(10进制)
4、STS(16进制)—>STS(10进制)
5、参数数值(16进制)—>参数数值(10进制)
6、CRC(16进制)—>CRC(10进制)
第三步:
对应参数小数点处理方式(见“仪表显示对应关系规则”)将整数转换为实数。
★V2.0协议与V3.0协议区别在于返回的数据只有8个字节,无CRC校验码,其余和V3.0相同。
仪表显示对应关系规则共有以下四种情况:
一、仪表显示对应关系规则1
仪表显示与参数SN和DIP相关联
1、首先要判断参数SN的数值范围,SN的判断范围分以下两类:
(1)SN在0~21之内(包括0和21)
(2)SN在22~37之内(包括22和37)
2、在SN在0~21之内时,再判断参数DIP的数值范围,然后对显示数值进行处理,方式如下:
(1)DIP为0时,显示格式为XXXX,仪表返回的数值范围为-1999~9999(10进制),且数值类型为整型。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后除以10后,再取整后数据显示出来。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,1234/10=123.4
则显示为123。
(2)DIP为1或2或3时,显示格式分为以下两种情况:
1)显示格式为XXX。
X,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以10再显示出来,显示的数据类型为3个整数位和1个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/10=123。
4,则显示为123。
4。
2)显示格式为XXXX,仪表返回的数值范围为10000以上(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以10,再进行四舍五入取整,将整数部分显示出来,显示的数据类型为4个整数位整型。
例:
仪表回送数据为3930(39为低字节,30为高字节),转换为10进制数为12345,然后12345/10=1234。
5,取整后为1235,则显示为1235。
3、在SN在22~37之内时,再判断参数DIP的数值范围,然后对显示数值进行处理,方式如下:
(1)DIP为0时,显示格式为XXXX,仪表返回的数值范围为-1999~9999(10进制),且数值类型为整型。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后直接将10进制数据显示出来。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,则显示为1234。
(2)DIP为1时,显示格式为XXX。
X,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以10再显示出来,显示的数据类型为3个整数位和1个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/10=123。
4,则显示为123。
4。
(3)DIP为2时,显示格式为XX。
XX,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以100再显示出来,显示的数据类型为2个整数位和2个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/100=12。
34,则显示为12。
34。
(4)DIP为3时,显示格式为X。
XXX,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以1000再显示出来,显示的数据类型为1个整数位和3个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/1000=12。
34,则显示为1。
234。
二、仪表显示对应关系规则2
仪表显示与参数SN和DIP相关联
1、首先要判断参数SN的数值范围,SN的判断范围分以下两类:
(1)SN在0~21之内(包括0和21)
(2)SN在22~37之内(包括22和37)
2、在SN在0~21之内时,直接对显示数值进行处理而不考虑与参数DIP的关系,方式如下:
(1)显示格式为XXXX,仪表返回的数值范围为-1999~9999(10进制),且数值类型为整型。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后直接将10进制数据显示出来。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,则显示为1234。
3、在SN在22~37之内时,需再判断参数DIP的数值范围,然后对显示数值进行处理,方式如下:
(1)DIP为0时,显示格式为XXXX,仪表返回的数值范围为-1999~9999(10进制),且数值类型为整型。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后直接将10进制数据显示出来。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,则显示为1234。
(2)DIP为1时,显示格式为XXX。
X,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以10再显示出来,显示的数据类型为3个整数位和1个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/10=123。
4,则显示为123。
4。
(3)DIP为2时,显示格式为XX。
XX,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以100再显示出来,显示的数据类型为2个整数位和2个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/100=12。
34,则显示为12。
34。
(4)DIP为3时,显示格式为X。
XXX,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以1000再显示出来,显示的数据类型为1个整数位和3个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/1000=12。
34,则显示为1。
234。
三、仪表显示对应关系规则3
仪表显示与参数SN和DIP相关联
1、首先要判断参数SN的数值范围,SN的判断范围分以下两类:
(1)SN在0~21之内(包括0和21)
(2)SN在22~37之内(包括22和37)
2、在SN在0~21之内时,直接对显示数值进行处理而不考虑与参数DIP的关系,方式如下:
(1)显示格式为XXX。
X,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以10再显示出来,显示的数据类型为3个整数位和1个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/10=123。
4,则显示为123。
4。
3、在SN在22~37之内时,需再判断参数DIP的数值范围,然后对显示数值进行处理,方式如下:
(1)DIP为0时,显示格式为XXXX,仪表返回的数值范围为-1999~9999(10进制),且数值类型为整型。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后直接将10进制数据显示出来。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,则显示为1234。
(2)DIP为1时,显示格式为XXX。
X,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以10再显示出来,显示的数据类型为3个整数位和1个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/10=123。
4,则显示为123。
4。
(3)DIP为2时,显示格式为XX。
XX,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以100再显示出来,显示的数据类型为2个整数位和2个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/100=12。
34,则显示为12。
34。
(4)DIP为3时,显示格式为X。
XXX,仪表返回的数值范围为-1999~9999(10进制)。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后将10进制数据除以1000再显示出来,显示的数据类型为1个整数位和3个小数位组成的实数。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,然后1234/1000=12。
34,则显示为1。
234。
四、仪表显示对应关系规则4
仪表显示与参数SN和DIP无关联
显示格式为XXXX,仪表返回的数值范围为-1999~9999(10进制),且数值类型为整型。
处理方法为:
有通讯回送的16进制数据(2个字节)先转换为10进制数据,然后直接将10进制数据显示出来。
例:
仪表回送数据为D204(D2为低字节,04为高字节),转换为10进制数为1234,则显示为1234。
XM808P仪表参数显示方式分类表:
(V3.0通讯协议)
仪表通讯协议如下:
通讯格式为8位数据,2个停止位,无校验位。
数据包采用16位求和校验,它的纠错能力比奇偶校验高数万倍,可确保通讯数据的正确可靠。
仪表读写方式如下:
读指令:
Addr+80HAddr+80H52H要读参数的代号0000CRC校验码
写指令:
Addr+80HAddr+80H43H要写参数的代号写入数低字节写入数高字节CRC校验码
读指令的CRC校验码为:
52H+Addr要读参数的代号,Addr为仪表地址参数值范围是0-100。
写指令的CRC校验码为:
43H+要写的参数值+Addr要写的参数代号。
无论是读还是写,仪表都返回以下数据:
测量值PV+给定值SV+输出值MV及报警状态+所读/写参数值+CRC校验码
其中PV、SV及所读参数值均为整数格式,各占2个字节,MV占1个字节,报警状态占1个字节,CRC校验码占2个字节,共10个字节。
返回的数据每2个8位数据代表一个16位整形数,低位字节在前,高位字节在后,负温度值采用补码表示,热电偶或热电阻输入时其单位都是0.1℃,1V或0V等线性输入时,单位都是线性最小单位。
因为传递的是16位二进制数,所以无法表示小数点,要求用户在上位机处理。
处理时需注意以下情况:
仪表内有一参数Sn,当Sn数值范围在0~21(包括21)时,小数点处理规则为:
1、读参数diP为0时,则显示为整数(如1234);2、读参数diP为1或2或3时,则显示为有一位小数的数字(如123.4);当Sn数值范围在22~37(包括37)时,小数点处理规则为:
1、读参数diP为0时,则显示为整数(如1234);2、读参数diP为1时,则显示为有一位小数的数字(如123.4);3、读参数diP为2时,则显示为有两位小数的数字(如12.34);2、读参数diP为3时,则显示为有三位小数的数字(如1.234);
上位机每向仪表发一个指令,仪表在0-0.2秒内作出应答,并返回一个数据,上位机也必须等仪表返回数据后,才能发新的指令,否则将引起错误。
如果仪表超过最大响应时间仍没有应答,则原因可能无效指令、通讯线路故障,仪表没有开机,通讯地址不合等,此时上位机应重发指令。
例:
如需接收测量值和Loc值,且仪表的通信地址为1,则发送读指令如下:
8181520000005300
其中8181为仪表的地址代号,5200为读参数的指令,5300为才CRC校验码。
当发送了以上的命令后,从仪表会回传以下字符(假设当前测量显示值为150,设定值为0,输出值为0,LOC为808):
9600000000000028035300
其中9600为测量值PV,0000为设定值SV,00为输出值MV,00为报警状态STS,2803为LOC值,5300为CRC值。
参数代号
符合规则
参数含义
数值下限
数值上限
实际值
参数地址
可否修改
PV
1
测量值
-1999
9999
N
SV
1
设定值
-1999
9999
Y
MV
4
输出值
0
100
Y
ALARM
4
报警状态
0
9999
N
STEP
4
曲线段号
0
30
00H
Y
T
4
曲线时间
-1999
9999
Y
C01
1
第1段温度
-1999
9999
20H
Y
C02
1
第2段温度
-1999
9999
22H
Y
C03
1
第3段温度
-1999
9999
24H
Y
C04
1
第4段温度
-1999
9999
26H
Y
C05
1
第5段温度
-1999
9999
28H
Y
C06
1
第6段温度
-1999
9999
30H
Y
C07
1
第7段温度
-1999
9999
32H
Y
C08
1
第8段温度
-1999
9999
34H
Y
C09
1
第9段温度
-1999
9999
36H
Y
C10
1
第10段温度
-1999
9999
38H
Y
C11
1
第11段温度
-1999
9999
40H
Y
C12
1
第12段温度
-1999
9999
42H
Y
C13
1
第13段温度
-1999
9999
44H
Y
C14
1
第14段温度
-1999
9999
46H
Y
C15
1
第15段温度
-1999
9999
48H
Y
C16
1
第16段温度
-1999
9999
50H
Y
C17
1
第17段温度
-1999
9999
52H
Y
C18
1
第18段温度
-1999
9999
54H
Y
C19
1
第19段温度
-1999
9999
56H
Y
C20
1
第20段温度
-1999
9999
58H
Y
C21
1
第21段温度
-1999
9999
60H
Y
C22
1
第22段温度
-1999
9999
62H
Y
C23
1
第23段温度
-1999
9999
64H
Y
C24
1
第24段温度
-1999
9999
66H
Y
C25
1
第25段温度
-1999
9999
68H
Y
C26
1
第26段温度
-1999
9999
70H
Y
C27
1
第27段温度
-1999
9999
72H
Y
C28
1
第28段温度
-1999
9999
74H
Y
C29
1
第29段温度
-1999
9999
76H
Y
C30
1
第30段温度
-1999
9999
78H
Y
T01
4
第1段时间
-1999
9999
21H
Y
T02
4
第2段时间
-1999
9999
23H
Y
T03
4
第3段时间
-1999
9999
25H
Y
T04
4
第4段时间
-1999
9999
27H
Y
T05
4
第5段时间
-1999
9999
29H
Y
T06
4
第6段时间
-1999
9999
31H
Y
T07
4
第7段时间
-1999
9999
33H
Y
T08
4
第8段时间
-1999
9999
35H
Y
T09
4
第9段时间
-1999
9999
37H
Y
T10
4
第10段时间
-1999
9999
39H
Y
T11
4
第11段时间
-1999
9999
41H
Y
T12
4
第12段时间
-1999
9999
43H
Y
T13
4
第13段时间
-1999
9999
45H
Y
T14
4
第14段时间
-1999
9999
47H
Y
T15
4
第15段时间
-1999
9999
49H
Y
T16
4
第16段时间
-1999
9999
51H
Y
T17
4
第17段时间
-1999
9999
53H
Y
T18
4
第18段时间
-1999
9999
55H
Y
T19
4
第19段时间
-1999
9999
57H
Y
T20
4
第20段时间
-1999
9999
59H
Y
T21
4
第21段时间
-1999
9999
61H
Y
T22
4
第22段时间
-1999
9999
63H
Y
T23
4
第23段时间
-1999
9999
65H
Y
T24
4
第24段时间
-1999
9999
67H
Y
T25
4
第25段时间
-1999
9999
69H
Y
T26
4
第26段时间
-1999
9999
71H
Y
T27
4
第27段时间
-1999
9999
73H
Y
T28
4
第28段时间
-1999
9999
75H
Y
T29
4
第29段时间
-1999
9999
77H
Y
T30
4
第30段时间
-1999
9999
79H
Y
HIAL
2
上限报警限值
-1999
9999
01H
Y
LOAL
2
下限报警限值
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 仪表 通讯 协议