S7-1200 与 S7-1200 Modbus TCP 通信例程

  • 格式:docx
  • 大小:92.07 KB
  • 文档页数:5

S7-1200 与 S7-1200 Modbus TCP 通信例程

一. 使用环境:

(1)S7-1215C V4.2与S7-1217C V4.2

(2)TIA 博途V14SP1组态

二. 实现功能:

S7-1215C作为客户端,S7-1217C作为服务器,S7-1215C读取S7-1217C的40001~40008的数据并存储到MW100 ~ MW114,

将MW116 ~ MW130 的数据写入到S7-1217C的 40009~40016

三.S7-1215C作为客户端

S7-1200与S7-1200的 Modbus TCP 通讯的例程

免责声明:

本例程仅供参考,程序中的 CPU 版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。

使用环境:

(1)S7-1215C V4.2与S7-1217C V4.2

(2)TIA 博途V14SP1组态

实现功能:

S7-1215C作为客户端,S7-1217C作为服务器,S7-1215C读取S7-1217C的40001~40008的数据并存储到MW100 ~ MW114, 将MW116 ~ MW130 的数据写入到S7-1217C的 40009~40016

1. 检查 Modbus TCP 连接状态,连接建立后复位 MB_CLIENT 指令控制位和状态位

1>、MB_CLIENT 背景数据块中静态变量 "Connected" 用于指示

TCP 连接是否建立

2>、TCP 连接成功建立后,复位 MB_CLIENT 指令控制位和状态位

3>、触发第一个 MB_CLIENT 指令的 REQ .

2. 读取Modbus TCP 服务器数据

读取Modbus TCP 服务器侧 Modbus 地址 40001~40008的数据存储到本地 CPU 的 M 存储区 MW100 ~ MW114

3. 第一个 MB_CLIENT 指令完成位或错误位复位本指令的 REQ 触发位

1>、第一个 MB_CLIENT 指令的 DONE 或 ERROR 复位本指令的

REQ

2>、同时触发第二个 MB_CLIENT 指令的 REQ

4.写入Modbus TCP 服务器数据.

将本地 CPU 的 M 存储区 MW116 ~ MW130 写入 Modbus TCP

服务器侧 Modbus 地址 40009~40016

5. 第二个 MB_CLIENT 指令完成位或错误位复位本指令的 REQ 触发位

1>、第二个 MB_CLIENT 指令的 DONE 或 ERROR 复位本指令的

REQ

2>、同时触发第一个 MB_CLIENT 指令的 REQ

四.S7-1217C作为服务器

免责声明:

本例程仅供参考,程序中的 CPU 版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。

使用环境:

(1)S7-1215C V4.2与S7-1217C V4.2 (2)TIA 博途V14SP1组态

实现功能:

S7-1215C作为客户端,S7-1217C作为服务器,S7-1215C读取S7-1217C的40001~40008的数据并存储到MW100 ~ MW114, 将MW116 ~ MW130 的数据写入到S7-1217C的 40009~40016

1. 调用 MB_SERVER 指令,使能 Modbus TCP 服务器功能

本例中 MW 100 映射为 40001;MW102 映射为 40002;......

MW296 映射为 40099;MW298 映射为 40100。

2. 读取 Modbus TCP 通信错误代码