分享免费的编程资源和教程

网站首页 > 技术教程 正文

西门子S7-1200通过Modbus TCP (MB_CLIENT)访问Modsim的方法

goqiw 2024-10-20 07:21:59 技术教程 46 ℃ 0 评论

西门子S7-1200通过Modbus TCP (MB_CLIENT)访问Modsim的方法

概述

PLC做主站客户端Client访问Modsim从站服务器的方法,实现PLC对服务器内数据的读/写。

1 配置

1.1硬件要求

CPU 1214C DC/DC/DC 6ES7 214-1AG40-0XB0固件版本V4.1

PC 操作电脑

1.2软件要求

TIA Portal V17

Modsim32

1.3网络配置

PLC IP地址:192.168.250.33

PC IP地址:192.168.250.99

2 编程

2.1博图端

2.1.1调用FB“MB_CLIENT”,生成背景DB1“MB_CLIENT_IDB”;

2.1.2新建DB2,数据块不优化,填写起始值;

建立5个INT型变量,存储数据;

建立连接变量CONNECT,数据类型“TCON_IP_v4”(手打出来);

InterfaceId :64 (与系统常数“Local~PROFINET_接口_1”保持一致)

ID :1 (每个实例都必须使用唯一的 ID)

ConnectionType:11 (连接类型,对于 TCP,选择 11(十进制))

ActiveEstablished:1 (对于主动连接建立,应选择 TRUE)

IP_V4:192.168.250.99 (电脑端的IP地址)

RemotePort:502 (远程连接伙伴的端口号)

2.1.3 背景DB1“MB_CLIENT_IDB”的MB_Unit_ID与DB2中CONNECT的ID保持一致,设置为1;

2 Modsim端

2.2.1 建立连接,选择“Modbus/TCP 服务器”

2.2.2 服务端口:502,与DB2中CONNECT的RemotePort保持一致;

2.2.3 参数设置

Device Id :1

Address:001

Length:10

03:HOLDING REGISTER

3 调试读功能

3.1博图端

对FB“MB_CLIENT”接入引脚,如上图;

REQ:M10.0

MB_MODE:0 (0表示读取)

MB_DATA_ADDR:40001

MB_DATA_LEN:4(40001-40004,长度为4个保持性寄存器)

MB_DATA_PTR:P#DB2.DBX0.0 WORD 4(指向DB2的数据缓冲区的指针,X0.0开始 的 4个字)

CONNECT:"DB".CONNECT

3.2 Modsim端

从站中写入数值

40001:1111 40002:4444

40003:4 40004:55

40005:6(第5个字,超长度,无法读取)

3.3测试结果

M10.0置为1,Modsim端的40001-40004被读取到DB2的DATA1-DATA4.

4 调试写功能

4.1博图端

MB_MODE:1 (1表示写入)

其他不变

至此,测试过程全部结束。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表