MODBUS简述
Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus已经成为工业领域通信协议的业界标准(De facto),并且现在是工业电子设备之间常用的连接方式。
Modbus可将不同厂商生产的控制设备可以连成工业网络,进行集中监控,是一种通用工业标准。Modbus是一个master/slave架构的协议,有一个节点是master节点,其他使用Modbus协议参与通信的节点是slave节点,每一个slave设备都有一个唯一的地址。只有被指定为master节点的节点可以启动一个命令。所有的Modbus数据帧包含了校验码,保证传输的正确性。基本的ModBus命令能指令一个slave设备改变它的寄存器的某个值,控制或者读取一个I/O端口,以及指挥设备回送一个或者多个其寄存器中的数据。
标准的Modbus口是使用一RS-232C兼容串行接口,它定义了连接口的针脚、电缆、信号位、传输波特率、奇偶校验。也可以使用RS485甚至TCP传输!
RTU模式和ASCII模式
Modbus有两种传输模式,RTU(Remote Terminal Unit)模式和ASCII模式。TRU模式下的数据帧是源数据,效率高,是最常用的传输方式,而ASCII模式的数据帧源数据的ASCII码!在Modbus标准中,RTU是必须要求的,而ASCII是可选项,即作为一个Modbus通信设备可以只支持RTU,也可以同时支持RTU和ASCII,但不能只支持ASCII。
RTU模式
RTU模式下的数据帧格式如下所示