[PLC]S7-1200 与S7-1200 Modbus RTU 通信例程
如何打开项目归档文件
参考:如何打开归档项目文件
S7-1200 与S7-1200 Modbus RTU 通信例程
1.使用环境
① S7-1217C
V4.2、S7-1215C V4.2、CM1241 RS422/RS485 V2.2
② TIA 博途 STEP 7
V14SP1
2.实现功能
CPU
1217 作为 Modbus RTU 主站,
CPU 1215 作为 Modbus
RTU 从站,实现 S7-1200 PLC
两个串口通信模块 CM1241 RS422/485
之间的 Modbus RTU 通信,主站轮询读写从站数据。
① CPU
1217 Modbus RTU 主站读取 CPU1215 Modbus
RTU 从站保持寄存器 40001 地址开始的两个字长的数据并存储到 DB3.DBW0 和
DB3.DBW2。
② CPU
1217 Modbus RTU 主站将 DB3.DBW20~DB3.DBW26 四个字长的数据写入到 CPU1215
Modbus RTU 从站 40003
开始的保持寄存器。
③ CPU 1217 Modbus RTU 主站将
DB3.DBX40.0~DB3.DBX40.7
八个位的数据写入到 CPU1215 Modbus RTU
从站 Q0.0~Q0.7。
S7-1200 PLC 的 Modbus RTU 有两类指令"MODBUS (RTU) "和"MODBUS",如图1所示。指令区别和适用范围参考以下的各指令编程例程介绍。
图1.S7-1200 PLC 的 Modbus RTU 通信指令
1. MODBUS (RTU) 指令编程例程
“MODBUS (RTU) ”指令集指令适用于S7-1200 中央机架的 CM1241 V2.1 或 CB1241 且 S7-1200 CPU V4.1以上和分布式 IO PROFINET 或 PROFIBUS 的 ET200MP、ET200SP 串口通信模块。
2. MODBUS 指令编程例程
“MODBUS” 指令集指令只适用于 S7-1200 中央机架的 CM1241 或 CB1241。
免责声明
本例程仅供参考,程序中的CPU版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。