1 Modbus RTU工业控制协议
- Modbus是一种用于工业控制的标准通信协议,它定义了装置之间在应用层的消息封装模式、沟通方法、沟通顺序。
- Modbus协议是开源免费的
- Modbus支援多种常见工控接口(RS232, RS485, TCP/IP etc.),且可以各种物理层装置上传输(双绞线、光纤、无线等)
- Modbus能够将众多设备连接到DCS, PLC系统上,再利用服务器(云、中央计算机)进行监控与下达指令,以便于集中式控制。
1.1 功能码详解
1.2 功能码01:读1路或多路开关量线圈输出状态
1.3 功能码02:读1路或多路开关量状态输入
1.4 功能码03:读多路寄存器
1.5 功能码05:写1路开关量输出
1.6 功能码06:写单路寄存器
1.7 功能码10:写多路寄存器
2 发送与返回的数据解析(读取0048H到004FH共8寄存器
)
2.1 发送数据(发送接收都是16进制
)
- Modbus的模式是主从模式,主机发送命令给从机,从机不能主动发送数据给主机。\
- 每个从机设备都是自己的设备地址号,这个设备地址号是用于传输时来寻找设备用的,默认地址是1,可以进行修改地址号以区分不同的设备
2.2 返回结果解析(发送接收都是16进制,20是32个字节
)
3 继续分析
3.2 主机对从机读写操作
3.3 MODBUS报文模型
4 freemodbus
- FreeMODBUS是一个奥地利人写的Modbus协议
。它是一个针对嵌入式应用的一个免费(自由)的通用MODBUS协议的移植。Modbus是一个工业制造环境中应用的一个通用协议。Modbus通信协议栈包括两层:Modbus应用层协议,该层定义了数据模式和功能;另外一层是网络层。