无纸记录仪通讯协议

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

无纸记录仪与上位机通讯协议

本协议适用于存在16个主机节点和64个记录仪节点的通信情况。

一、 通讯格式:

在以下的通信协议中,通信格式将参照如下的格式进行。

发送端(PC 机→记录仪)

Command Source Dest L1L3L2L4Data1CRC1EndCmd

Length Data2……

Datan Data CRC2CRC

应答端(记录仪→ PC 机)

Status

Source Dest L1L3L2L4Data1CRC1EndCmd

Length Data2……

Datan Data CRC2CRC

参数解释:

1、Command为一个字节,以0b1010,xxxx或0b1101,xxxx表示。高四位1010或0b1101

为命令标志;低四位xxxx(0000~1111)表示具体的命令。

2、EndCom以一个字节0b1010,1111表示。

3、Status为一个字节,以0b1011,xxxx表示。高四位1011为状态标志;低四位xxxx 为

具体的状态信息,其中0000表示操作成功,0001~1111为常见的通信出错信息。具体的出错代码请参见错误代码表,并将在日后的程序开发中继续完善。

4、Source为源地址,即通信数据发送者的地址,为一个字节。具体信息见地址划分表。

5、Dest为目的地址,即通信数据接收者的地址,为一个字节。具体信息见地址划块表。

6、Length(L1、L2、L3、L4):数据包正文的长度,拆分成四个字节,低字节在前,

高字节在后,以0b1011,xxxx表示。高四位1011为长度标志;低四位xxxx(0000~1111)表示后面紧跟的数据长度。例如当数据包正文长度为512字节时,Length=0x100,则L1=0xB0,L2=0xB0,L3=0xB1,L4=0xB0。如果Status不为0xC0,即状态出错,则Length = 0。

7、Data(Data1、Data2 、…Datan):以字节0b1000,xxxx表示。高四位1000为数据信

息标志;低四位xxxx(0000~1110)表示具体的数据。在此情况下,本协议要求将一个八位的数据拆分成两个八位的数据进行传输。例如当有发送数据为0x34f8时,则实际发送的数据流为Data(m)=0xC8,Data(m+1)=0xCF,Data(m+2)=0xC4,Data(m+3)=0xC3。因此数据的长度肯定为偶数。

8、CRC以字节0b1001,xxxx表示,共两个字节。本协议采用八位的异或和作为CRC

校验,发送时,需要拆分成两个部分进行传输,具体见Data的拆分方法。

二、通讯的具体命令

以下都是在通讯正常的情况,即Status=0xC0,如果Status=0xC1~0xCF,则Length=0。

2.0 PC机从向记录仪读取系统组态参数CGIVE1(0xA0)

PC机→记录仪:

Command = 0xA0

Length = 0

记录仪→PC机:

Status = 0xC0

Length = 15

Data = 系统组态参数

记录仪系统组态参数:

时钟3字节时0~23,分0~59,秒0~59

日期3字节年0~99,月1~12,日1~31

密码3字节00~99,00~99,00~99

记录点数1字节0 ~ 15

断偶处理1字节0 ~ 2(0:保持1:回到起点2:回到终点)

时标选择1字节0 ~ 3

背光1字节0x00 ~ 0xFF(增加的幅值,补码)

对比度1字节0x00 ~ 0xFF(增加的幅值,补码)

峰值保持1字节0~50秒

共计:15字节

样例:

发送指令: a0 16 46 b0 b0 b0 b0 98 94 af

接收数据: c0 46 16 bf b0 b0 b0 89 80 80 83 81 81 86 80 83 80 82 80 80 80 80 80 80 80 82 80 80 80 83 80 80 80 80 80 80 80 97 92 af

2.1 PC机向记录仪写入系统组态参数CBRING1(0xA1)

PC机→记录仪:

Command = 0xA1

Length = 15

Data = 系统组态参数(参看A0)

记录仪→PC机:

Status = 0xC0

Length = 0

样例:

发送指令: a1 16 46 bf b0 b0 b0 89 80 80 83 81 81 86 80 83 80 82 80 80 80 80 80 80 80 82 80 80 80 83 80 80 80 80 80 80 80 99 92 af

接收数据: c0 46 16 b0 b0 b0 b0 96 99 af

2.2 PC机从记录仪读取通道组态参数CGIVE2(0xA2)

PC机→记录仪:

Command = 0xA2

Length = 1

Data = 通道号

记录仪→PC机:

Status = 0xC0

Length = 24

Data = 通道号+通道组态参数

通道组态参数:

信号类型1字节B(0),E(1),J(2),K(3),S(4), T(5),Pt100(6),Cu50(7),

0~10mA(8),4~20mA(9),0~5V(10),1~5V(11),

0~20mV(12),0~100mV,(13), PID(14)

工程单位1字节以0~25表示,如下工程单位表

mmm/h,mmm/min,mmm/s,Kg/h,Kg/min,

Kg/s,L/h,L/min,L/s,t/h,t/min,t/s,MPa,

KPa,Pa,Kgf/cmm,mmHHO,mmHg,Bar,

℃,%,ppm,pH,r/min,mm,Nmmm/h 量程上限2字节 -999~9999

量程下限2字节 -999~9999

报警上上限2字节 -999~9999

报警上限2字节 -999~9999

报警下限2字节 -999~9999

报警下下限2字节 -999~9999

报警继电器4字节依次为上上限,上限,下限,下下限。0~12

记录间隔1字节 1,2,4,6,12,24,30(S)

滤波时间1字节 0~99(0.0S~9.9S)

小信号切除1字节0~255(0.0~25.5%)

开方标志1字节 1:开方,0:不开方

小数点位1字节 4:无小数,3:1位小数

2:2位小数,1:3位小数

共计:23字节

样例:

发送指令: a2 16 46 b1 b0 b0 b0 80 80 90 96 af

接收数据: c0 46 16 b8 b1 b0 b0 80 80 89 80 89 80 87 82 8f 80 80 80 80 80 87 82 8f 80 87 82 8f 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 81 80 92 96 af

相关文档
最新文档