博途实现 S71500F 之间的安全相关控制器与智能设备通讯

1 概念

与在标准的系统中一样,在 TIA 安全系统中具有 PROFINET 接口的 S7-300F 和 S7-1500F CPU 之间可以进行安全相关的控制器与智能设备通信。通信通过两个安全应用程序指令进行,即 SENDDP 指令用于发送数据,而 RCVDP 指令用于接收数据。这些指令由用户在 F-CPU 相应的安全程序中调用,可用于固定数量的 BOOL 和 INT 类型的数据进行安全传送。

2 安全相关的 PN 控制器和智能设备之间的通信

在本例程中,将 CPU317F-2PN/DP 作为一个 PROFINET 控制器,CPU1511F-1PN 作为一个 PROFINET 智能设备,SENDDP/RCVDP 指令实现两个 CPU 的安全相关的通信。

2.1 示例所使用的软硬件环境

测试目的:通过 F-CPU 之间的 PROFINET 控制器与智能设备的安全通信,使用安全程序指令 SENDDP 进行发送,用 RCVDP 进行接收。以安全方式一次传送 16 个 BOOL 型数据和 2 个 INT 型数据,如图 1-1。

2.2 硬件配置

1) 打开 TIA 软件,点击“新建项目”输入项目名称,设置项目文件存储路径;点击“确定”,完成项目创建,如图 2-1。

2) 新建控制器站点,点击添加新设备,选择的订货号和版本,将设备名称命名为:300F IOCONTROL,如图 2-2。

3) 在设备视图界面创建新的以太网子网,设置 IP 地址,如图 2-3。

4)重复上面的步骤,在项目中添加 S7-1500 F CPU(智能 IO 设备),将以太网接口连接到同一个子网,设置 IP 地址,如图 2-4。

5)在“操作模式”中激活 S7-1500F CPU“IO 设备”功能,并分配给 S7-300F CPU 控制器,如图 2-5。

6)在下面的“传输区域”中,组态两个 CPU 之间的通信地址区,在类型中一定要选择 F-CD,箭头向左方向表示 S7-1500F CPU 发送数据到 S7-300F CPU,如图 2-6。如果需要发送的数据多于 16Bool 和 2INT,可以再配置多个同样的传输地址区。S7-300F CPU 如果需要发送数据到 S7-1500F CPU 也是相同配置方法,只不过箭头方向要向右。

7) 将两个安全 CPU 都编译保存,然后下载,以 S7-300F 下载为例,如图 2-7。

8) S7-300F/1500F 项目都编译保存下载后,网络视图在线后状态,说明两个 CPU 之间通信正常,如图 2-9。

2.3 通讯编程

1) 在项目树中打开 S7-300F,安全运行组在添加安全 CPU 硬件时系统已经自动生成,默认在 OB35 中调用安全主程序“Main_Safety_RTG1”FB1,如图 2-10。

2) 添加 F-DB,用于 RCVDP 指令输出变量接口连接,如图 2-11。

3) 打开“程序块”下面的安全主程序“Main_Safety_RTG1”(FB1),在程序段 1 中调用RCVDP 数据接收功能指令。注意:F 通讯程序接收指令,必须在主程序的开始调用,如图2-12。

4) 接收功能指令 RCVDP 管脚定义,如图 2-13。

5) 在指令中,LADDR 参数需要填写传输区本侧的起始地址,如 S7-300F 侧,起始地址从4116 开始,如图 2-14。

6) 同样在 S7-1500F 智能设备侧,新建 F-DB,然后在“Main_Safety_RTG1”(FB1)中,调用发送程序指令 SENDDP,如图 2-15,2-16。

7) 在 S7-1500F 系统常量表中找到与 S7-300F CPU 通信数据区的硬件标识符填写在 LAADR,如图 2-17。

8) 将两个 PLC 的程序分别进行编译,然后下载到各自 PLC,如图 2-18。

9) 使用监控表监控测试结果,S7-1500F 通过 SENDDP 指令将 M100.0、M100.1和 MW102 发送,S7-300F 通过 RCVDP 指令接收数据放置在建立的 DB3 中,如图 2-19。

展开阅读全文

页面更新:2024-03-14

标签:子网   控制器   智能   设备   指令   两个   通讯   通信   程序   项目   数据

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top