目录
MODBUS TCP通信
1.项目设备建立
新建项目,新增两台PLC设备(服务器、客户端),并设置IP在同一网段。
2.建立通信数据块
服务器、客户端设备分别建立2个DB块(1个用作通信参数配置、1个用作数据通信);
3.参数配置
服务器通信参数配置,数据类型“TON_IP_V4”。
InterfaceID:在设备组态窗口中单击CPU PROFINET端口图像。然后单击“常规”属性选项卡并使用该处显示的硬件标识符。
ID:输入一个介于1和4095之间的连接ID编号。
ConnectionType:对于TCP/IP,使用默认值16#0B(十进制=11)。
ActiveEstablished:该值必须为0或FALSE。
RemoteAddress:使用0.0.0.0,则MB_CLIENT将响应来自任何TCP客户端的Modbus请求。输入目标Modbus TCP客户端的IP地址,则MB_CLIENT仅响应来自该客户端IP地址的请求。
RemotePort:对于MB_SERVER连接,该值必须为0。
LocalPort:默认值为502。
客户端通信参数配置,数据类型“TON_IP_V4”。
InterfaceID:在设备组态窗口中单击CPU PROFINET端口图像。然后单击“常规”属性选项卡并使用该处显示的硬件标识符。
ID:输入一个介于1和4095之间的连接ID编号。
ConnectionType:对于TCP/IP,使用默认值16#0B(十进制=11)。
ActiveEstablished:该值必须为1或TRUE。
RemoteAddress:将目标Modbus TCP服务器的IP地址输入到四个ADDR数组单元中。
RemotePort:默认值为502。
LocalPort:对于MB_CLIENT连接,该值必须为0。
4.建立数据
在服务器、客户端设备的数据通信DB块中分别建立数组用作发送接收,并右键属性取消优化块访问。
5.指令
选中“指令”——“通信”——“其他”——“MODBUS TCP”
在服务器端程序中作“MB_SERVER指令”发送,在客户端程序中作“MB_CLIENT指令”接收,并作相关指令参数填写。
当REQ为1,MB_MODE为0时读取数据为1时写入数据,MB_DATA_ADDR=40001时,客户端读取/写入服务器数据到指针中。
编写完成,程序下载。