S7-1200 Modbus TCP 通信例程!
发布时间: 2024-03-25 21:31 更新时间: 2024-04-28 09:10
(一)例程硬件版本和软件环境(1)S7-1215C V4.2与S7-1217C V4.2
(2)TIA 博途V15SP1组态
(二)例程实现功能介绍(1)S7-1215C作为客户端,S7-1217C作为服务器
(2)S7-1215C读取S7-1217C数据40001~40008并存储到MW100 ~ MW114(3)将S7-1215C的数据MW116 ~ MW130写入到S7-1217C的 40009~40016
(三)客户端编程(1)检查 Modbus TCP 连接状态,连接建立后复位 MB_CLIENT 指令控制位和状态位:
MB_CLIENT 背景数据块中静态变量 "Connected" 用于指示 TCP 连接是否建立
TCP 连接成功建立后,复位 MB_CLIENT 指令控制位和状态位
触发第一个 MB_CLIENT 指令的 REQ
(2)读取Modbus TCP 服务器数据:读取Modbus TCP 服务器侧 Modbus 地址 40001~40008的数据存储到本地 CPU 的 M 存储区 MW100 ~ MW114
(3)第一个 MB_CLIENT 指令完成位或错误位复位本指令的 REQ 触发位:
第一个 MB_CLIENT 指令的 DONE 或 ERROR 复位本指令的 REQ
同时触发第二个 MB_CLIENT 指令的 REQ
(4)写入Modbus TCP 服务器数据:将本地 CPU 的 M 存储区 MW116 ~ MW130 写入 Modbus TCP 服务器侧 Modbus 地址 40009~40016。
(5)第二个 MB_CLIENT 指令完成位或错误位复位本指令的 REQ 触发位:
第二个 MB_CLIENT 指令的 DONE 或 ERROR 复位本指令的 REQ
同时触发第一个 MB_CLIENT 指令的 REQ
(四)服务端编程(1)调用 MB_SERVER 指令,使能 Modbus TCP 服务器功能:本例中 MW 100 映射为 40001;MW102 映射为 40002...
(2)读取 Modbus TCP 通信错误代码