- {{item.name}}
S7-1500 和S7-400 S7双边通信(不同项目中,双方都用TIA博途)
- 0
- 817
S7-1500与S7-400 S7双边通信(不同项目中,双方都用TIA Portal)
S7通信分为单边通信和双边通信,双边通信可以用BSEND/BRCV或USEND/URCV指令,BSEND/BRCV可以传送更多的数据。
S7-1500既支持单边通信,也支持双边通信。
本文介绍S7-1500与S7-400通过BSEND/BRCV方式进行双边通信的组态编程步骤,用于实现S7-1500与S7-400不在同一项目中但都用TIA Portal的场景。
实验使用的主要硬件和软件如表1所示:
表1 实验环境
1.组态
S7-1500和S7-400站点分别在 TIA Portal 的不同项目中。
1.1 使用TIA Portal生成项目
使用TIA Portal创建一个新项目,组态S7-1500站点,并设置IP地址如图1所示。
图 1 生成S7-1500站点
使用TIA Portal再创建一个新项目,组态S7-400站点,并设置IP地址如图2所示。
图 2 生成S7-400站点
1.2 S7-1500侧组态S7连接
在"设备组态"中 ,选择"网络视图"栏进行网络配置,点中左上角的"连接"图标,连接框中选择"S7连接",然后选中S7-1500 CPU,右键选择"添加新的连接",在创建新连接对话框内,选择连接对象"未指定",选择本地接口"PLC_1,PROFINET接口_1[X1]",点击"添加"按钮,这时在"信息"栏能看到S7连接已添加的信息,点击"关闭"按钮,完成建立新连接,如图 3 所示。
图 3 S7-1500侧创建S7连接
在"网络视图"中间栏的"连接"条目中,可以看到已经建立的"S7_连接_1",如图 4 所示。
图 4 S7-1500侧S7 连接
点中上面的连接,在"S7_连接_1"的连接属性中查看和设置各参数。
在常规中,伙伴的站点和接口选择"未指定",伙伴的IP地址设置为S7-400的IP地址(192.168.0.41),如图5所示。
图 5 S7-1500侧的常规参数
在本地ID中:设置通讯连接的ID 号,本地ID在本地PLC中必须是唯一的,在后续的通信编程中需要指向这个ID,这里ID=W#16#100,如图6所示。
图 6 S7-1500侧的本地ID
在地址详细信息中:设置通讯双方的 TSAP 号,伙伴的机架/插槽设置为S7-400CPU所在的机架号和插槽号,在这里是0和2。伙伴的连接资源设置为S7-400站点的本地连接资源,在这里是 10,如图7所示。
图 7 S7-1500侧的地址详细信息
在特殊连接属性中:可以选择是否为主动建立连接。通信的双方只能有一方是主动建立连接,另一方是被动建立连接,这里S7-1500是主动建立连接,如图8所示。
图 8 S7-1500侧的特殊连接属性
1.3 S7-400侧组态S7连接
同样的方法建立S7-400侧的S7连接,如图 9 所示。
图 9 S7-400侧创建S7连接
在"网络视图"中间栏的"连接"条目中,可以看到已经建立的"S7_连接_1",如图 10 所示。
图 10 S7-400侧S7 连接
点中上面的连接,在"S7_连接_1"的连接属性中查看和设置各参数。
在常规中,伙伴的站点和接口选择"未指定",伙伴的IP地址设置为S7-1500的IP地址(192.168.0.151),如图11所示。
图 11 S7-400侧的常规参数
在本地ID中:设置通讯连接的ID 号,本地ID在本地PLC中必须是唯一的,在后续的通信编程中需要指向这个ID,这里ID=W#16#1,如图12所示。
图 12 S7-400侧的本地ID
在地址详细信息中:设置通讯双方的 TSAP 号,伙伴的机架/插槽设置为S7-1500CPU所在的机架号和插槽号,在这里是0和1。伙伴的连接资源设置为S7-1500站点的本地连接资源,在这里是 10,如图13。
图 13 S7-400侧的地址详细信息
在特殊连接属性中:可以选择是否为主动建立连接。通信的双方只能有一方是主动建立连接,另一方是被动建立连接,这里S7-400是被动建立连接,如图14所示。
图 14 S7-400侧的特殊连接属性
2 通信编程
在 S7-1500 和 S7-400 侧,分别创建用于发送和接收的数据块,定义成 10 个字节的数组,如图 15 所示。
图 15 传输数据区
在S7-1500侧,在OB1中,从"指令" >"通信" >"S7 通信">"其它"下,调用 BSEND、BRCV 通信指令,如图 16 所示。
图 16 S7-1500侧发送接收指令调用
在S7-400侧,在OB1中,从"指令" >"通信" >"S7 通信"下,调用 BSEND、BRCV 通信指令,如图 17 所示。
图 17 S7-400侧发送接收指令调用
BSEND指令的各个参数说明如表2所示:
表2 BSEND指令参数
BRCV指令的各个参数说明如表3所示:
表3 BRCV指令参数
3 监控结果
两个 CPU 之间数据交换,监控结果如图 18 所示。
图 18 监控结果
- 评论
-
分享
扫码分享
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错
{{item.nickName}}