CP341作主站(Master)的Modbus RTU通讯(STEP7)
硬件及软件列表
组态和配置
编写通信程序
设备连接
通信测试
手册下载
硬件及软件列表设备名称 | 设备型号 |
PS 307 | 6ES7 307-1EA00-0AA0 |
CPU 315-2DP | 6ES7 315-2AG10-0AB0 |
MMC | 6ES7 953-8LG11-0AA0 |
CP341 | 6ES7 341-1AH01-0AE0 |
Dongle | 6ES7 870-1AA01-0YA0 |
将Dongle插入CP341中,Dongle和插入Dongle前后的CP341如下图所示。
图1
注意:STEP7 V5.X软件上,必须安装如下软件包才可进行后续的组态配置。
PTP协议软件包:SIMATIC S7-CP PtP Param V5.1+SP14
MODBUS主站驱动
MODBUS从站驱动
组态和配置1、打开上面创建的项目ptp,用鼠标右键点击项目名称,选择Insert New Object-> SIMATIC 300 Station,更改站的名称为CP341 Modbus-M。
图2
2、双击Hardware进入硬件配置画面,插入RACK、CPU315-2DP、CP341。
图3
3、 双击CP341模板,点击Parameter...,配置CP341参数。在Protocol选项中选择MODBUS Master。
图4
4、双击Protocol下的信封图标,配置Modbus Master参数,点击Modbus-Master按钮,设置通讯波特率等参数。
图5
5、配置完成后保存时会提示是否装载驱动。
图6
6、此时必须连接到实际的PLC,点击Yes按钮装载驱动,或点击Load Drivers装载,装载时CPU必须为STOP模式。
图7
7、装载完成后,如果再次装载,Step7会提示Driver already exists。配置完成后点击下载按钮保存编译硬件组态,并确认没有错误。
图8
编写通信程序1、双击OB1,打开OB1编程画面,从库Libraries->CP PtP->CP341中调用发送程序块FB8 P_SND_RK,分配背景数据块DB8,将参数LADDR设为硬件组态中的输入起始逻辑地址256。
图9
2、创建发送数据块DB1,从站地址为2,功能码为3,起始地址为0,读4个寄存器数据,具体功能码3 的使用参见Modbus Master手册 5.3 Function Code 03 - Read Output Registers部分的说明。
图10
3、调用发送功能块,设置参数。
图11
FB8 P_SND_RK的参数设置见下表:
SF | ‘S’为发送,此处必须为大写的‘S’ |
LADDR | 硬件组态中的起始逻辑地址,本例中为256 |
REQ | 发送数据触发位,上升沿触发,本例中为M0.0 |
DB_NO | 发送数据块号,本例中为1(DB1) |
DBB_NO | 发送数据的起始地址,本例中为0(DB1.DBB0) |
LEN | 发送数据的长度,本例中为6 |
R_TYP | ‘X’为扩展的数据块,此处必须为大写的‘X’ |
R | 取消通讯,本例中不用 |
DONE | 发送完成位,发送完成后为TRUE,同时没有错误 |
ERROR | 错误位,为TRUE说明有错误 |
STATUS | 状态字,标识错误代码,查看Modbus Master手册第7章获得相应的说明 |
其它参数 | 本例中不用 |
4、从库中Libraries->CP PtP->CP341调用接收程序块FB7 P_RCV_RK,分配背景数据块DB7,将LADDR设为硬件组态中的输入起始逻辑地址256。
图12
5、创建接收数据块DB2。
图13
6、调用接收功能块,设置参数。
- S7-300通过PN接口S7单边通信(STEP7) 2024-11-22
- 进口设备被远程锁机,生产陷入停顿!给我们敲响了警钟 2024-11-22
- 倍福EtherCAT和西门子Profinet到底谁更强 2024-11-22
- ModbusTCP协议详解 2024-11-22
- S7-200 和 SMART 密码清除方法 2024-11-22
- 一文了解常用PLC调试步骤 2024-11-22
- 一文了解PLC与常用设备的连接方式 2024-11-22
- 各国工业自动化实力一览:全球PLC 制造商 Top20 ,国产占几席 2024-11-22
- 非常全面的低压配电柜基础知识汇总 2024-11-22
- Step7 组态PC Station 与 S7-1200 基于以太网的S7 通信 2024-11-22