modbus 协议 数据格式
00 00 00 00 00 06 01 03 00 00 00 02 ascii码
第一位:事务处理标识符 由服务器复制,通常为0
第二位:事务处理标识符 由服务器复制,通常为0
第三位:协议标识符=0
第四位:协议标识符=0
第五位:长度字段 (上半部分字节) = 0 (所有的消息长度小于 256)
第六位:长度字段 (下半部分字节) = 后面字节的数量 这里的06表示 后面只有6个字节的数据
第七位:单元标识符 (原“从站地址”)
第八位:modbus的功能代码
第九位:寄存器的起始位置
第十位:寄存器的起始位置
第十一位:寄存器的个数
第十二位:寄存器的个数
modbus功能代码:
功能码 名称 作用
01 读取线圈状态 取得一组逻辑线圈的当前状态( ON/OFF)
02 读取输入状态 取得一组开关输入的当前状态( ON/OFF)
03 读取保持寄存器 在一个或多个保持寄存器中取得当前的二进制值
04 读取输入寄存器 在一个或多个输入寄存器中取得当前的二进制值
05 强置单线圈 强置一个逻辑线圈的通断状态
06 预置单寄存器 把具体二进值装入一个保持寄存器
07 读取异常状态 取得 8 个内部线圈的通断状态,这 8 个线圈的地址由控制器决定,用户逻辑可以将这些线圈定义,以说明从机状态,短报文适宜于迅速读取状态
08 回送诊断校验 把诊断校验报文送从机,