施耐德LC与PLC通讯ModbusTcp

更新时间:2023-04-24 18:07:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

施耐德L C与P L C通讯

M o d b u s T c p

Last revised by LE LE in 2021

施耐德_P L C与P L C通讯M o d b u s T C P

一、系统概括

M218PLC中TM218LDAE24DRHN/TM218LDAE40DRPHN两款PLC,本体集成了以太网通讯口,支持ModbusTCP/IP 通讯协议(可做ModbusTCP服务器/客户端),该以太网口可用于与其它支持ModbusTCP/IP协议的设备之间的数据通讯。

本文以两台M218PLC为例,简要介绍M218PLC与M218PLC之间Modbus以太网通信的过程,包括硬件接线、参数设置、硬软件组态等,实现一台PLC对另一台PLC的数据读写。

二、硬件连接

两台M218PLC间的连接网线可采用直通线也可采用交叉线,系统的硬件构架和连接如下(本文以交叉网线为例)。

三、主站PLC

1.新建PLC程序

2.PLC通讯参数设置

从站PLC以太网端口设置过程相同,只需将IP地址设为同一网段不同地址即可

3.主站程序编程

1)添加功能块”IsFirstMastColdCycle”,

目的:第一次启动触发modbus读写模块.

方法:从右侧工具箱中选中”运算块”拖到编程窗口,之后寻到”IsFirstMastColdCycle”后

回车即可。

2)添加功能块”ADDM”

目的:Modbus地址功能块

方法:类似添加第一功能块的方法

Addr参数中写入,其中3表示本PLC以太网口,从站IP地址。

3)添加READ_VAR模块

4)添加”WRITE_VAR”模块

5)读写缓存数据区

在”Read_Var”和”Write_Var”功能块的调用过程中,用户需要定义数据读和写的缓存区,用于存放接收到的数据和需要发送的数据。注意,这里的缓存区一般都是以数组的形式存在的,所以用户必须分别定义读数据数组和写数据数组,例如,上例中的”aaa”和”bbb”分别就是用于存放读到的数据和写出去的数据。由于”Read_Var”和”Write_Var”功能块的管脚”Buffer”是指针变量,所以用ADR功能块来取数组的首地址来指向该”Buffer”指针。这里,简单介绍下数组的定义方法.

6)编写循环触发读写条件

使用一个“OR”功能块,执行写功能后再次执行该段程序

本文来源:https://www.bwwdw.com/article/ynoq.html

Top