一、ModbusTCP通信概述:
Modbus TCP是Modbus协议在以太网中的实现,基于TCP/IP协议栈,适用于工业以太网通信。其采用客户端-服务器模式,通过端口502进行通信,数据帧保留Modbus核心结构(功能码、数据域),去除RTU的CRC校验,改用TCP/IP的校验机制。支持星型、总线型等网络拓扑,可连接大量设备,传输速率高,传输距离远。适用于工业控制中设备间的高速数据交换,如PLC、HMI、传感器等联网通信。优势是兼容以太网,易集成到现有网络,传输高效;局限在于需网络设备支持,抗干扰依赖以太网环境,广泛应用于自动化系统的远程监控与控制。
二、PLC实现ModbusTCP客户端通信:
不同品牌PLC实现ModbusTCP客户端通信使用指令均有所不同,详情如下表所示。
由此可见,不同品牌PLC实现ModbusTCP客户端通信,使用指令不同,支持功能码不同,编程不同。为此有必要进行ModbusTCP客户端通信标准化编程。我们使用各PLC套接字通信指令,将不同品牌PLC的ModbusTCP客户端通信封装成具有相同输入参数和输出参数的功能块、指令库或用户库,使其支持01、02、03、04、05、06、15、16、23、69等功能码,以便大家使用ModbusTCP客户端通信。
三、ModbusTCP客户端通信标准化:
根据ModbusTCP客户端通信发送和接收数据实际情况,我们这里约定封装完成的各品牌PLC的ModbusTCP客户端通信功能块、指令库或用户库如下图所示。
功能块、指令库或用户库参数含义如下表所示。
四、主流PLC之ModbusTCP客户端通信标准化功能块视频教程:
1、罗克韦尔Micro850: