[西门子] S7-1200与S7-200SMART之间的以太网通信

[复制链接]
查看143 | 回复0 | 2024-4-26 08:52:14 | 显示全部楼层 |阅读模式


S7-200 SMART系列固件版本为V2.2版本以上且CPU使用以太网通信时,可以支持S7通信,TCP/IP通信,IS-on-TCP通信,UDP通信,也包括MODBUS TCP通信。在这里给大家介绍下S7-1200与S7-200SMART系列PLC之间的以太网通信如何实现,由于两者同为西门子的产品,所以这里主要以S7通信为例给大家做一个简单介绍。

在这里使用1200的PLC作为本地站(即客户端),S7-200SMART系列PLC作为远程站(服务器),通信组态及程序只需要在本地站(即客户端)中进行设计。
1、在TIA Portal软件中建立一个项目名称为“S7-1200与S7-200SMARTPLC之间的通信”的项目,同时分别添加一个S7-1200的PLC,并对其以太网端口属性及IP地址进行设置,如下图所示:
注:若使用了路由器连接,需要启用“使用路由器”,并设置路由器的地址即网关。


2、网络配置:
(1)点击软件中的“网络视图”选项进入网络视图界面,鼠标左键点击左上角的“连接”按钮,此时PLC会出现蓝绿色,鼠标右键点击PLC,然后选择里面的添加新连接按钮。如图所示:




(2)添加一个新的S7连接
点击添加新连接后,在弹出的创建新连接对话框中的右上角处的类型里面把HMI的连接改成“S7连接”,然后选择左侧出现的“未指定”,然后点击添加按钮,然后关闭创建新连接对话框,此时在网络视图中可以看到PLC出现一个S7连接,如下图所示:

(注:本地ID在程序中需要用到,需要记住ID号)



(3)点击网络视图,进入网络数据配置对话,设置好连接的未指定的IP地址(即S7-200SMARTPLC的IP地址)等参数,如图所示:


注:S7-200SMART的TSAP支持03.00或是03.01.


(4)程序设计:
通信程序只需要在1200PLC处编写,S7-200SMARTPLC处无需编写任何通信程序,这里我们以把S7-1200PLC中DB1.DBB0的数据写入到S7-200SMART的VB0中,以读取S7-200SMART系列PLC中的VB1的数据放到S7-1200PLC的DB1.DBB1中为例,说明程序的设计。
在1200PLC中同样添加一个DB块,在DB块的属性中取消优化块的访问功能,在DB块里面建立两个变量,分别命名为”send_data”以及”recev_data”。数据类型为Byte,需要把send_data的数据发到的S7-200SMART的VB0中,把从S7-200SMART的VB1中的数据读取过来放到 recev_data的变量中。如下图所示:




然后从右侧的通信指令中的S7通信中拖拽PUT和GET指令到OB1编写通信程序,调用PUT/GET指令时,系统会自动调试需要分配一个背景DB ,指令调用完后,填写相应的地址。如下图所示:


注:CPU会自动的把S7-200SMART系列PLC的整个V区默认为数据块DB1,所以访问VB0,的地址为DB.DBB0。


注:M0.5为CPU属性中设置的系统时钟存储器,频率为1HZ,如下图所示:



(5)测试
把做好的程序,分别下载到PLC中,然后使用监控表和状态图表进行测试,如下图所示:




大家还有关于S7通信的相关问题和经验,可以留言与我们分享。



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

本帖子中包含更多资源

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

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

本版积分规则