本文档主要针对建大仁科模块二次开发的客户。在通信网络中,一般PLC、组态王或用户开发的上位机软件作为主机,模块作为从机,通信时严格执行一问一答。
二、通信协议
2.1基本参数
编 码8位二进制
数据位8位
没有奇偶校验位
停止位1位
错误校验CRC(冗余循环码)
波特率2400bit/s、4800bit/s、9600 bit/s可设,默认4800bit/s
地址网络中的每个设备地址不能重复,出厂默认为1
2.2帧格式
建大仁科所有模块的通信都是标准的Modbus-RTU具体格式如下:
初始结构 ≥4 字节的时间
地址码 = 1 字节
功能码 = 1 字节
数据区 = N 字节
错误校验 = 16 位CRC 码
结束结构 ≥4 字节的时间
地址码:变送器地址是通信网络中唯一的地址(默认0x01)。
功能码:本变送器只使用主机发送的指令送器只使用功能码0x03(读取寄存器数据)。
数据区:数据区是具体的通信数据,请注意16bits数据高字节在前!
CRC码:二字节校准码。
主机询问帧结构:
地址码功能码寄存器起始地址寄存器长度验码低
字节1字节2字节2字节1字节1字节
从机响应帧结构:
地址码功能码有效字节数据1区第二数据区N数据区验码
字节1字节1字节2字节2字节2字节2字节2字节2字节2字节2字节2字节2字节2字节2字节2字节2字节2字节字节2字节字节字节2字节字节2字节字节2字节字节字节2字节字节字节2字节字节字节2字节字节字节字节字节字节字节字节字节2字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字节字
2.3 寄存器地址
16寄存器地址PLC或者组态王地址的操作范围和定义说明
水浸
0x0000
40001
只读0位正常 1为浸水
断电0位正常 1为断电
遥信0位常态 1为断开或闭合
CO20-5000 ppm
光照0-65535 lux
2.4 协议帧举例
2.4.1 询问断电状态
问询帧:
地址码功能码起始地址数据长度验证码低
0x010x030x00 0x000x00 0x010x840x0A
应答帧: (状态为断电)
地址码功能码有效字节数状态验证码低
0x010x030x020x00 0x010x790x84
2.3.2问询CO2值
问询帧
地址码功能码起始地址数据长度验证码低
0x010x030x00 0x000x00 0x010x840x0A
应答帧: (例如读到CO2为3000ppm)
地址码功能码有效字节数CO2校验码低位校验码高位
0x010x030x020x0B 0xB80xBF0x06
CO2: 0BB8 H(十六进制) =3000ppm
三、常见问题及解决方法
1.设备无法连接PLC或电脑
可能的原因:
1) 延迟太短,需要总线主机轮询间隔>200ms;等待响应时间>200ms
2) 帧格式错误,请严格按照例中的帧格式查询
4) 存在地址重复的设备(出厂默认全部为1)
5) 波特率、验证方法、数据位置设置错误
6) 总线断开,或者A、B线接反
7) 电脑上USB未安装旋转485驱动
本文地址:http://www.sdrkck.com/news/company/267.html,欢迎转载。