『7x24小时有问必答』

S7通信是西门子S7系列PLC之间通信专用的一种通信协议,在整个S7系列CPU之间都可使用;S7-200 SMART、S7-1200系列PLC之间均可使用S7通信的方式实现数据交换。

S7通信是一种单边编程的通信方式,只需要在本地站(客户端)编写通信程序,在远程站(服务器)中无需编写任何通信程序,一个S7-200SMART系列PLC最多可连接8个远程站CPU(最多16个含8个本地8个远程)

S7-1200 系统预留了8个可组态的S7连接资源,考虑上6个动态连接资源,最多可组态14个客户端的 S7 连接。

下面通过S7-200 SMART和S7-1200之间通过S7通信的方式进行数据交换,其中S7-1200侧做客户端,SMART侧做服务器。

通信任务

(1)读取SMART VW200起始的连续5个地址中的数据存储S7-1200 MW200中
(2)S7-1200中的IB0控制SMART QB0
(3)读取SMART中QB2的数据存储在S7-1200 DB块中

实施步骤:

1.S7-1200侧新建项目添加CPU→在设备组态中的设备视图对话框中的CPU属性里面激活时钟存储器位,如图1所示。
图1:激活时钟存储位

2.在CPU属性的连接机制勾选允许来自远程对象的PUT/GET通信访问,如图2所示。
图2:勾选允许远程对象

3. 在设备组态中的设备视图对话框中点击网口后,在属性中添加IP地址并添加子网,如图3所示。
图3:设置IP地址

4.在项目树选中程序块,展开后点击“添加新块”;添加新块选择数据DB块。如图4所示。
  
图4:添加DB块

5.创建DB块变量,并取消优化的块访问;如图5图6所示。
图5:添加DB块变量

图6:取消DB块优化的块访问

6.调用PUT/GET指令进行编程;在指令列表中的通信指令选择S7通信,调用get指令;
图7:调用GET指令

第一组数据交换:读取SMART VW200起始的连续5个地址中的数据存储S7-1200 MW200中,调用指令后需要进行伙伴的IP地址,并勾选“主动建立连接”。REQ使用M0.51HZ时钟脉冲触发。其中ADDR_1表示伙伴的地址,在本示例中指S7-200SMART侧的VW200地址,P#DB1.DBX200.0 WORD 5 表示VW200-VW208连续的5个字。指令中管脚RD_1是指本地数据地址,P#M200.0 WORD 5表示MW200-MW208连续的5个字。具体如图8所示。
图8:GET指令编程

第二组数据:S7-1200中的IB0控制SMART QB0 ,调用PUT指令进行编程,如图9所示。
图9:PUT指令编程

第三组通讯数据,读取SMART中QB2的数据存储在S7-1200 DB块中,调用GET指令,如图10所示。
图10:GET指令编程

以上是S7-1200侧的操作,由于S7是单边编程,因此在服务器侧无需编程,准备好通信数据即可。

通信测试

1.读取SMART VW200起始的连续5个地址中的数据存储S7-1200 MW200连续的5个字中,如图11所示,在SMART侧中的VW200-VW208中写入数据,则在1200侧中的监控表中监控MW200-MW208的数据是一致的。
图11:数据交换1

2.S7-1200中的IB0控制SMART QB0。由于示例中没有硬件接线,因此可以使用强制表进行强制给值,接着在SMART侧监控QB0的值,如图12所示。
图12:数据交换2

3. 读取SMART中QB2的数据存储在S7-1200 DB1数据块中,在SMART侧中的监控表向QB2输入5,则在S7-1200中的DB1数据块监控时也会显示5,如图13所示。
图13:数据交换3

至此,程序编写及测试已经完成,需要注意,在进行通信组态时,2台CPU的IP地址需要保证在同一个网段。

章来源:技成培训网原创,作者:眭相建;未经授权禁止转载,违者必究!
这次给大家准备了超多的西门子案例
长按扫码免费领取
【西门子案例程序】

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码