西门子modbus Tcp通讯并进行仿真(从站)

目录

1、PLC设置

2、命令使用

3、参数设置

1、MB-HOLD-REG

2、CONNECT

1、interfaceID

2、ID

3、RemoteAddress

4、LocalPort

4、仿真通讯


1、PLC设置

首先进行PLC的设置,我们打开"设备组态"。如下图:

然后找到"防护与安全"中的连接机制并勾选允许来自远程对象的PUT/GET通讯访问

不勾选使用命令会导致报错。

2、命令使用

首先我们在指令------通讯------其他------MODBUS TCP------MB_SERVER找到指令。

将其拖出会弹出并在弹出的调用选项弹窗选择确定。

这样我们的OB块上就有了下图命令,选择这个命令按下F1我们可以看到这个命令的帮助。

以下为modbus Tcp通讯的管脚需要设置的参数。

这里需要着重看下面标蓝的参数,了解与设置好这些参数就能进行modbus Tcp通讯了。

3、参数设置

1、MB-HOLD-REG

首先我们设置MB-HOLD-REG参数。

它允许位寄存器(M)和数据块(D)大于2位字节 的数据,其中数据块(D) 需要关掉优化数据块。建议创建一个在数据块(D)中的数组方便进行数据管理。

2、CONNECT

然后我们设置CONNECT参数。

1、interfaceID

这里要设置的是本地接口的硬件标识符 ,也就是PLC是和外部通讯时使用的端口所用的标识符

我们可以在设备组态 ------点击PLC图标上的网口------系统常量中找到端口所用的标识符。

如下图:

2、ID

这里要设置modbus Tcp通讯的站号必须是一个唯一的一个数值

3、RemoteAddress

这里是设置modbus Tcp通讯的IP地址,这里有两种设置方式:1、设置你要连接通讯伙伴的地址;

2、设置为0.0.0.0可以和所有可以连接的通讯伙伴进行连接。

4、LocalPort

这里是设置modbus Tcp通讯的端口号 ,建立通讯连接需要两者端口号对应。

以上就是关于参数的设置了。

4、仿真通讯

PLC的程序与参数设置如下: (进行仿真通讯需要有实体PLC)

主程序

网口参数

注:因为仿真软件没有实际地址,在仿真通讯时无法指定通讯伙伴。

数据指针

Modbus poll仿真工具设置如下:

点击connection------connection seup设置如下

这里的IP地址要和PLC的地址两者的端口号都要相同:

可以在设备组态------以太网地址中查看

端口号为命令中设置的端口号。

勾选Read/Write Enabled。

通讯成功如下图:

改变仿真软件上的数值,plc中的数组会随之变化;说明通讯成功了。

以上就是本篇博客的全部内容了。

相关推荐
帐篷Li9 小时前
【AgenticCPS 】CPS联盟返利系统 - 实施计划
大数据·网络·人工智能
Fly Wine9 小时前
IPsec 最简单场景总部和网关之间建立,并且流量不会全部经过总部
网络
GOU9210 小时前
5101实验
网络·macos
IpdataCloud11 小时前
直播打赏异常排查:大额打赏IP来自高风险地区?用IP查询定位触发人工审核
网络·tcp/ip·网络安全·ip
riyue66611 小时前
封装 WebSocket 工具类
网络·vue.js·websocket·网络协议·v
2501_9181269111 小时前
学习所有6502写游戏控制器的语句
java·linux·网络·汇编·嵌入式硬件
南梦浅11 小时前
三层网络搭建(思科模拟器)
网络·计算机网络
txinyu的博客11 小时前
解析muduo源码之 TcpConnection.h & TcpConnection.cc
网络
小义_12 小时前
随笔 1(Linux)
linux·运维·服务器·网络·云原生·红帽
进击的雷神12 小时前
主办方过滤、展位号模糊提取、多层级官网爬取、缅文编码解码——缅甸塑料展爬虫四大技术难关攻克纪实
网络·爬虫·python