MODBUS TCP 的应用和网络分层
关于MODBUS - TCP协议,发现其在应用过程中很多人对其理解得五花八门,这里不妨再增加一门。
谈MODBUS TCP协议肯定要分层看,Modbus是应用层协议,其所依赖的网络层协议栈可以是TCP,也可以是UDP。而TCP又可以分为客户端和服务器。有趣的是,MODBUS-TCP由于其应用于全双工网络环境,注定其行为与MODBUS-RTU/ASCII不同。
关于链接模式
常见的局域网链接模式,MODBUS主机就是TCP客户端。
MODBUS主机也可以作TCP服务端,这种方式一般用于主从机设备不在同一个局域网,且主机拥有公网IP(公共域名)。
多级组网
很多人认为,一个TCP链接只能接入一台从站。事实并非如此,如下图中所圈从站做网关时,MODBUS网关拥有管理所有逻辑设备的能力,通常逻辑设备ID为0代表网关自己,其它地址则代表下一级总线上的其它设备。
所以在MODBUS-TCP中没有广播的概念,但是基于这种MODBUS网关组网方式,网关可以负责将写给ID0设备的数据转发广播至所有下一级(南向)设备。
由于MODBUS-TCP和RTU协议中的PDU定义完全一致,使得MODBUS网关可以轻松的实现协议透传。