REDISANT 提供互联网与物联网开发测试套件 #
互联网与中间件:
- Redis Assistant
- ZooKeeper Assistant
- Kafka Assistant
- RocketMQ Assistant
- RabbitMQ Assistant
- Pulsar Assistant
- HBase Assistant
- NoSql Assistant
- Etcd Assistant
- Garnet Assistant
工业与物联网:
- MQTT Assistant
- Modbus 从站模拟器
- Modbus 主站模拟器
- IEC104/101 主站/客户端 模拟器
- IEC104/101 从站/服务端 模拟器
- IEC61850 客户端模拟器
- IEC61850 服务端模拟器
- DL/T 645 主站模拟器
- CJ/T 188 主站模拟器
- BACnet 浏览与模拟器
- COMTRADE 图表浏览
手动分析报文非常繁琐,推荐一个CJ188主站工具,完整支持 CJ/T188-2004/2018 协议:CJ/T 188 主站模拟器
CJ/T188-2004 详细介绍 #
数据链路层 #
本协议采用主-从结构的半双工通讯方式。
字节格式为每字节含8位二进制码,传输时加上一个起始位(0)、一个偶校验位(E)和一个停止位(1),共11位。其字节传输序列如图1。D0是字节的最低位,D7是字节的最高位。先传低位,后传高位。
图1:
帧格式应符合表2的规定。
表2:
仪表类型及其代码应符合表3的规定。
表3:
地址域(A0~A6)由七个字节组成,每个字节为2位BCD码格式。地址长度为14位十进制数,低地址在前,高地址在后。其中A5、A6为厂商代码。
当地址为AAAAAAAAAAAAAAH时,为广播地址。广播地址只能应用于点对点的通讯中。
控制码(C)的格式按图2所示。
图2:
D7: 0-由主站发出的控制帧;
1-由从站发出的应答帧。
D6: 0-通讯正常;
1-通讯异常。
D5~D0:000000:保留;
000001:读数据;
000100:写数据;
001001:读密钥版本号;
000011:读地址(表号);
010101:写地址(表号);
010110:写机电同步数(置表底数);
1XXXXX:厂商自定义。
数据长度(L)为数据域的字节数,用十六进制表示。读数据时L小于或等于64H,写数据时L小于或等于32H,L等于零表示无数据域。
数据域(DATA)包括数据标识、序列号和数据,其结构随控制码的功能改变。
校验码(CS)为一个字节,从帧起始符开始到校验码之前的所有各字节进行二进制算术累加,不计超过FFH的溢出值。
传输要求 #
- 前导字节:在发送帧信息之前,应先发送2~4个字节FEH。
- 传输次序:所有多字节数据域均先传送低位字节,后传送高位字节。
- 传输响应:每次通讯先由主站发出命令帧,被选择的从站根据命令帧的要求做出响应。
应用层 #
读操作 #
读操作时,主站发送的序号SER,在每次通讯前,按模256加1运算后产生。
主站请求帧:
- 控制码:CTR_0
- 数据长度:L=03H
- 数据标识:DI0DI1
- 序列号:SER
- 帧格式:
68H T A0 A1 A2 A3 A4 A5 A6 CTR_0 03H DI0 DI1 SER CS 16H
从站正常应答帧:
- 控制码:CTR_1
- 数据域长度:L=03H+m(数据长度)
- 数据标识:DI0DI1
- 序列号:SER
- 帧格式:
68H T A0 A1 A2 A3 A4 A5 A6 CTR_1 L DI0 DI1 SER N1...Nm CS 16H
从站异常应答帧:
- 控制码:CTR_2
- 数据域长度:L=03H
- 序列号:SER
- 帧格式:
68H T A0 A1 A2 A3 A4 A5 A6 CTR_2 L SER 状态ST CS 16H
主站请求读数据的报文格式及从站正常应答报文格式应符合表 5 的规定。
表5:
主站请求读密钥版本号的报文格式及从站正常应答报文格式应符合表6 的规定。
表6:
主站请求读地址的报文格式及从站正常应答报文格式应符合表 7 的规定。
表7:
写操作 #
写操作时,主站发送的序号 SER ,在每次通讯前,按模 256 加 1 运算后产生。
写数据请求帧:
- 控制码:CTR_3
- 数据长度:L=03H+m(数据域长度)
- 数据标识:DI0DI1
- 序列号:SER
- 帧格式:
68H T A0 A1 A2 A3 A4 A5 A6 CTR_3 DI0 DI1 SER N1...Nm CS 16H
从站正常应答帧:
- 控制码:CTR_4
- 数据长度:L=03H+m
- 数据标识:DI0DI1
- 序列号:SER
- 帧格式:
68H T A0 A1 A2 A3 A4 A5 A6 CTR_4 L DL0 DI1 SER N1...Nm CS 16H
从站收到非法的数据请求或数据处理错误,为从站收到错误控制码的应答:
- 控制码:CTR_5
- 数据域长度:L=03H
- 序列号:SER
- 帧格式:
68H T A0 A1 A2 A3 A4 A5 A6 CTR_5 L SER 状态ST CS 16H
主站请求写数据的报文格式及从站正常应答报文格式应符合表 9 的规定。
表9:
主站请求写地址的报文格式及从站正常应答报文格式应符合表 10 的规定。
表10:
主站请求写机电同步数据的报文格式及从站正常应答报文格式应符合表 11 的规定。
表11:
数据表达格式 #
数据表达格式应符合表 12 的规定,报文传送时应先传输数据值,再传送单位代号。
表12:
单位代号 #
单位代号应符合表 13 的规定。
表13:
状态定义 #
状态 ST 占2 个字节,第一字节定义如表 14,第二字节由厂商定义。
表14:
版权声明:转载请附上原文出处链接和本声明。 原文链接:https://blog.redisant.cn