分享

S7-1200 Modbus TCP 通信例程

 工控库吧 2021-12-08

(一)例程硬件版本和软件环境

(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 通信错误代码

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多