S7-1200 Modbus TCP 通信客户端指令块 MB_CLIENT
STEP 7 V13 SP1 软件版本中的 Modbus TCP 指令目前新的版本已升至 V4.0,如图 1所示。该版本的使用需要具备以下两个条件:
1. 软件版本:STEP 7 V13 SP1 及其以上
2. 固件版本: S7-1200 CPU 的固件版本 V4.1 及其以上
图 1. Modbus TCP V4.0 版本指令块
V4.0 作为 Modbus TCP 新版指令的个基础版本,后续版本新增内容参见:
V5.0 版本新功能文档参见链接。
V6.0 版本新功能文档参见链接。
V4.0 版本 Modbus TCP 服务器文档参见链接。
旧版指令主要应用于固件版本 V4.0 及其以前的 CPU:
客户端指令块文档参见链接。
服务器指令块文档参见链接。
S7-1200 Modbus TCP 实验环境
下面以两台 S7-1200 之间进行 Modbus TCP通信为例,详细阐述客户端与服务器侧如何编程及通信的过程,本文档只介绍客户端部分组态编程,服务器部分参见链接。
表 1 列出了具体的实验环境,表 2 列出了双方 CPU 通信所需主要参数。
操作系统 | WIN7 SP1 版 64 位 |
编程软件 | STEP 7 Professional V13 SP1 Update 5 |
系统硬件 |
|
表 1. Modbus TCP 通信的实验环境
CPU 类型 | IP 地址 | 端口号 | 硬件标识符 | |
客户端 | CPU 1212C | 192.168.0.6 | 0 | 64 |
服务器 | CPU 1215C | 192.168.0.4 | 502 | 64 |
表 2. Modbus TCP 通信双方的基本配置
硬件标识符是在“设备组态”中,双击 PROFINET 接口,在“属性”中的“硬件标识符”中查看,如图 2 所示。
图 2. S7-1200 设备的 PROFINET 接口硬件标识符
S7-1200 Modbus TCP 客户端编程
S7-1200 客户端侧需要调用 MB_CLIENT 指令块,该指令块主要完成客户机和服务器的 TCP连接、发送命令消息、接收响应以及控制服务器断开的工作任务。
1. 调用 MB_CLIENT
将 MB_CLIENT 指令块在“ 程序块 > OB1 ”中的程序段里调用,调用时会自动生成背景 DB ,点击确定即可,如图 3所示。