西门子PLC 1200和1500的ModbusRTU通讯实例

freeFree Technical Resource

This content is free to read, suitable for basic learning and search traffic.

西门子PLC 1200和1500的ModbusRTU通讯实例缩略图
🌐 This page is not yet available in English. Showing the Chinese version. Back to Chinese page.
在现代化高度集成工业中,经常用到PLC和PLC之间的通讯,常见的通讯modbus,profibus DP,profinet ,CANOPEN等等通讯,今天我们以西门子TIA博途平台讲解两台PLC如何做Modbus RTU通讯。

在做通讯前,我们必须满足以下软硬件要求:
1.一台装有TIA V16博途软件电脑;
2.两台西门子系列PLC,必须满足博途V16版本使用;
3.一个DP9针公头(1200端使用),一个DP15针公头(1500端使用)及一条两芯带屏蔽线(规格0.5平方的);
4.今天实验的通讯模块型号规格如下:
CM1241RS422/485 订货号:6ES7 241-1CH320XB0;
CMPtP RS422/485HF 订货号:6ES7 541-1AB00-0AB0;

下面图片展示今天所需要的通讯模块及DP头;
西门子PLC 1200和1500的ModbusRTU通讯实例插图


1200端通讯模块

西门子PLC 1200和1500的ModbusRTU通讯实例插图1


1500端通讯模块

西门子PLC 1200和1500的ModbusRTU通讯实例插图2


1200端DP9针公头

西门子PLC 1200和1500的ModbusRTU通讯实例插图3


1500端DB15针公头

1200和1500 modbus连线:
1200 PLC端 1500PLC端
3+ 11+
8- 4-
组态主站(1200端):
1.)建立一个项目,并添加CPU和RS485模块如下图所示:

西门子PLC 1200和1500的ModbusRTU通讯实例插图4



西门子PLC 1200和1500的ModbusRTU通讯实例插图5



西门子PLC 1200和1500的ModbusRTU通讯实例插图6



西门子PLC 1200和1500的ModbusRTU通讯实例插图7



2.)硬件我们添加完毕,这里设置CM1241-R485模块参数:

西门子PLC 1200和1500的ModbusRTU通讯实例插图8



3.)建立一个供1200PLC端(master)存储数据的DB块:

西门子PLC 1200和1500的ModbusRTU通讯实例插图9



修改DB块“优化进行访问”。

西门子PLC 1200和1500的ModbusRTU通讯实例插图10




西门子PLC 1200和1500的ModbusRTU通讯实例插图11



4.)建立需要的数据:

西门子PLC 1200和1500的ModbusRTU通讯实例插图12



5.)添加一个FC函数块:

西门子PLC 1200和1500的ModbusRTU通讯实例插图13



6.)我们把程序写到FB程序段里面,设置Modbus_Comm_Load管脚参数:

西门子PLC 1200和1500的ModbusRTU通讯实例插图14



西门子PLC 1200和1500的ModbusRTU通讯实例插图15



7.)因为Modbus_Comm_Load块默认工作模式时RS232,我们这里需要修改成RS485模式,修改有两种方式,第一种是Modbus_Comm_Load背景DB块里面修改“MODE”参数由16#00修改成16#04,如下图所示:

西门子PLC 1200和1500的ModbusRTU通讯实例插图16



第二种是利用“move”指令传递一个4给到Modbus_Comm_Load_MODE里,如下图所示:

西门子PLC 1200和1500的ModbusRTU通讯实例插图17



设置Modbus_Mastr功能块管脚参数:

西门子PLC 1200和1500的ModbusRTU通讯实例插图18



西门子PLC 1200和1500的ModbusRTU通讯实例插图19



西门子PLC 1200和1500的ModbusRTU通讯实例插图20



8.)测试程序:
写入从站1500Q区:

西门子PLC 1200和1500的ModbusRTU通讯实例插图21



读取从站1500Q区:

西门子PLC 1200和1500的ModbusRTU通讯实例插图22



编写完成主站程序,接着组态从站PLC
10.)建立一个项目,并添加CPU和通讯模块等如下图所示:

西门子PLC 1200和1500的ModbusRTU通讯实例插图23




西门子PLC 1200和1500的ModbusRTU通讯实例插图24




西门子PLC 1200和1500的ModbusRTU通讯实例插图25



11.)设置PtP-RS422/485通讯模块参数如下图所示:

西门子PLC 1200和1500的ModbusRTU通讯实例插图26



12.添加一个全局数据背景DB块:

西门子PLC 1200和1500的ModbusRTU通讯实例插图27




西门子PLC 1200和1500的ModbusRTU通讯实例插图28




西门子PLC 1200和1500的ModbusRTU通讯实例插图29



13.)建立存储数据:

西门子PLC 1200和1500的ModbusRTU通讯实例插图30



14.)我们开始写入程序,给FB程序段添加一个“Modbus_comm_Load”通信初始化指令块,并设置相应的管脚参数:

西门子PLC 1200和1500的ModbusRTU通讯实例插图31




西门子PLC 1200和1500的ModbusRTU通讯实例插图32



由于Modbus_comm_Load”功能块默认是RS232,而我们启用RS485,所以的修改。第一种是直接修改 Modbus_comm_Load如下图所示:

西门子PLC 1200和1500的ModbusRTU通讯实例插图33



第二种和前面讲修改1200通信数据块的方法一致如下图:

西门子PLC 1200和1500的ModbusRTU通讯实例插图34



15,添加从站指令块:

西门子PLC 1200和1500的ModbusRTU通讯实例插图35



16.测试程序:
master1200写入从站1500的Q0.0,Q0.1;

西门子PLC 1200和1500的ModbusRTU通讯实例插图36



slave1500写入主站1200的Q0.2,Q0.3, Q0.4;

西门子PLC 1200和1500的ModbusRTU通讯实例插图37



监控程序:

西门子PLC 1200和1500的ModbusRTU通讯实例插图38



 
 
 
 
 
今天 09:59
0
 
技术术语(共 4 个)—— Click to Expand
Modbus RTU基于串行链路的ModbusProtocol,使用二进制编码和CRC check
RS485工业常用的差分串行通信标准,支持多点通信
RS232点对点串行通信标准,常用于短距离设备通信
PLC可编程逻辑控制器,工业自动化控制的核心设备
来源/工具信息 —— Click to Expand
来源 Modbus Chinese Network(modbus.cn) —— China leadingModbuscommunication protocol technical community Category industrial IoT 字数 1256 字 · 阅读约 4 分钟 更新 2023-11-28 永久链接 https://www.modbus.cn/24669.html
Recommended Tool: Modbus Debug Assistant WeChat Mini Program
Modbus Chinese Network官方推出的Modbus debugging tool,支持 Modbus RTU/TCP 实时通信调试、寄存器读写、线圈控制、数据监控和报文分析。 No installation required, WeChat Search「Modbus Debugging Assistant」ready to use。 电脑端入口:https://www.modbus.cn/modbustool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 modbus.cn
Put this resource to use in a real project?

Go to the Tool Center for message parsing, CRC verification and device debugging, or submit your requirements for selection and integration advice.

Engineer Membership

Turn this article into actionable debugging resources

After activation, you can use advanced message parsing, resource pack downloads, code examples, engineering cases and priority technical support, suitable for real project delivery.

Unlimited Advanced Tools
Resource & Code Packs
Complete Engineering Case Library
Priority Technical Support

Leave a Reply

Your email address will not be published. Required fields are marked *.