gk-auto 发表于 2021-10-27 20:58:16

通过S7协议实现西门子S7-1200PLC与S7-200PLC的通信


1.概述
通过以太网可以实现西门子S7-1200plc与西门子S7-200PLC连接通信。S7-200可以使用 模块(CP243-1或CP 243-1 IT)连接到以太网上,该模块提供S7 通信的功能,既可作为客户机,也可以作为服务器,可以同时与最多8个S7 通信伙伴进行通信;S7-1200 集成以太接口,提供S7 通信的功能,只能作为服务器,可以同时建立3 个通信连接。
下面会用一个实例来描述S7-200 如何与S7-1200建立通信连接。
http://www.diangon.com/data/attachment/portal/201404/03/210254wr18z5g3uf6unzm3.png
图1: 实例网络拓扑图
2.硬件需求
•® S7-1214C AC/DC/RLY
•® CPU 224 XP CN DC/DC/DC
•® CP243-1 IT
•® SCALANCE X204-2
•® PG/PC(使用编程电缆)

3.软件需求
•® S7-1200编程软件 STEP 7 Basic V10.5
•® S7-200 编程软件 STEP 7 –MicroWIN V4.0 SP6
4.组态
4. 1 S7-1200 配置
•® 使用STEP 7 Basic 创建项目“comS7200”;
http://www.diangon.com/data/attachment/portal/201404/03/210254ccfj2o1w2or5jeod.png
图2: 创建项目
•® 添加S7-1200 设备 CPU1214C;
http://www.diangon.com/data/attachment/portal/201404/03/210254lwaqdvdew2wvvd3c.png

图3: 添加PLC设备
4. 2 S7-1200 PLC 编程
•® 在Program blocks 下,添加程序块(DB1,DB2,DB3),其中DB1和DB3为符号DB(选择 Symbolic access only),DB3为绝对地址DB(不选择 Symbolic access only) , S7 通信只支持绝对地址DB 寻址通信;
http://www.diangon.com/data/attachment/portal/201404/03/210254mqofrpldlycgrrc5.png
图4: 创建绝对地址DB2
•® 打开全局DB2,输入2个数组类型数据,每个数组有16 个元素;
http://www.diangon.com/data/attachment/portal/201404/03/210254o4ibict3bh4cc8uu.png
图5: 在DB2中添加数据
•® 创建两个Watch table(Watch table_1, Watch table_2) 用来观察DB2的实时状态;
•® 将程序下载到PLC CPU1214C 中。
4. 3 S7-200 配置
使用STEP 7-MicroWIN 中以太网向导将CP243-1 IT 配置为 S7 客户端。
•® 通过菜单打开以太网向导工具;
http://www.diangon.com/data/attachment/portal/201404/03/210254q6i5acxma9m1xlcd.png
图6: 以太网向导
•® 设置模块位置,可以使用“读取模块”来自动识别;
http://www.diangon.com/data/attachment/portal/201404/03/210254a1b8uabnagqagoqy.png
图7: 模块位置设置
•® 设置模块CP243-1 IT 的IP地址192.168.0.8和子网掩码255.255.255.0;
http://www.diangon.com/data/attachment/portal/201404/03/210254dssrs0my7zm4x4b4.png
图8: 设置IP 地址
•® 设置模块的连接数1 ,最多只能设置8个,也就是说S7-200可同时与最多 8 个 S7 通讯伙伴进行通讯;
http://www.diangon.com/data/attachment/portal/201404/03/210254f177bzzvxfrtvuzb.png
图9: 设置模块连接数;
•® 建立客户端连接 Connection_1,设置服务器传输层服务接入点 TSAP 03.01和服务器IP地址 192.168.0.18 , TSAP 由 2 个字节组成。第一个字节为连接资源。第二个字节为通讯模板的机架号和插槽号;
http://www.diangon.com/data/attachment/portal/201404/03/210254b8025q020qq9i122.png
图10: 配置连接
•® 创建读取数据传输 PeerMessage_1, 读取服务器 16字节 DB2.DBB0~ DB2.DBB15 到VB0~VB15;
http://www.diangon.com/data/attachment/portal/201404/03/210254ytfee1pfn0ep022m.png
图11: 配置数据传输0
•® 创建读取数据传输 PeerMessage_2, 将 16字节VB16~VB31写入服务器DB2.DBB16~ DB2.DBB31 ;
http://www.diangon.com/data/attachment/portal/201404/03/210255bqoxq2oaaoa7oz42.png
图12: 配置数据传输1
•® 为配置分配存储区;
http://www.diangon.com/data/attachment/portal/201404/03/210255oim662h6tw1n9ine.png
图13: 分配存储区
4. 4 S7-200 PLC 编程
•® 在STEP 7-MicroWIN 中主程序中,调用子程序ETH0_CTRL;
http://www.diangon.com/data/attachment/portal/201404/03/210256eq55w2q6z8mdq5q8.png

图14: 调用ETH0_CTRL
其中CP_Ready 为CP 243-1 IT 的状态(0 未准备就绪,1 准备就绪),CH_Ready 为每个通道或 IT 服务的状态(0通道 ,值为256):Error 为出错或报文代码;
•® 程序建立后,需通过PPI连接 将程序块和数据块下载到S7-200 CPU中;
http://www.diangon.com/data/attachment/portal/201404/03/210257yakwfcc2i21guv6c.png
图15: 设置 PG/PC 接口CP5611(PPI)
•® 这样以后就可以通过以太网接口进行下载,将PG/PC接口设为TCP/IP连接;
•® 在STEP 7-MicroWIN 中主程序中,调用子程序ETH0_XFR读取服务器数据,指定相应的连接通道和数据;
http://www.diangon.com/data/attachment/portal/201404/03/210258air3xdryzztkkk01.png
图16:调用ETH0_XFR 读取服务器
•® 在STEP 7-MicroWIN 中主程序中,调用子程序ETH0_XFR写入服务器数据,指定相应的连接通道和数据;
http://www.diangon.com/data/attachment/portal/201404/03/210258kkj988iw8izipjup.png

图17:调用ETH0_XFR 写入服务器
•® 将程序下载到S7-200 CPU 中;
4. 5 检测 S7-1200 与S7-200 PLC 通信结果
•® 从S7-200 程序中可知,在M10.0 从0变为1时,读取S7-1200的数据DB2.DBB0~DB2.DBB15 到VB0~VB15中;
http://www.diangon.com/data/attachment/portal/201404/03/210259r0506okwt7wej078.png
图18:S7-1200 DB2.DBB0~DBB15

http://www.diangon.com/data/attachment/portal/201404/03/210300u6njljnj66nrlhy4.png

图19:S7-200 VB0~VB15
•® 从S7-200 程序中可知,在M11.0 从0变为1时,将S7-200的数据VB16~VB31 写入S7-1200 的DB2.DBB16~DB2.DBB31中;
http://www.diangon.com/data/attachment/portal/201404/03/210301tisc8be98ii85ii9.png

图20:S7-200 VB16~VB31

http://www.diangon.com/data/attachment/portal/201404/03/210301lleye46hk6czcscy.png

图21:S7-1200 DB2.DBB16~DBB31

5.总结
S7 1200 与 S7-200 通过 S7通信的基本原理如下图所示:
http://www.diangon.com/data/attachment/portal/201404/03/210302ikhclveipibi8i2v.png
图22:S7-200与S7-1200 通信原理
注意:
CP 243-1 IT 可支持一个或多个远程通讯伙伴的最多 8 个 S7 通讯通道到客户机(最多212 字节)或服务器。CP 243-1 IT 可以根据客户机/服务器原理在每个通道运行。每个通道,每次只能接收、处理或响应(主动响应或被动响应)一个请求。只有在发送响应后,CP 243-1 IT 通讯处理器才能接受其它请求。

来源:电工学习网




18316728902 发表于 2021-10-27 20:58:45

感谢楼主无私分享!

阳光11076 发表于 2021-10-28 10:26:05

这个类目最活跃了!赞一个!

oyang 发表于 2025-11-17 19:37:24

蹲一波同款,有没有姐妹 / 兄弟推荐?

张文基 发表于 2025-11-17 19:59:56

理性围观,感觉大家说的都有道理~

会回家 发表于 2025-11-17 20:00:50

这评论区卧虎藏龙,个个都是人才!

wujinchao 发表于 2025-11-17 20:12:49

学到干货了,感谢分享,已火速收藏

mini042701 发表于 2025-11-17 20:13:01

赞同 + 10086,完全说出了我的想法!

wll930121 发表于 2025-11-17 20:16:45

路过混个脸熟,顺便为优质内容打 call~

gzlwb19 发表于 2025-11-17 20:17:16

内容太顶了!疯狂点赞,已默默收藏~
页: [1] 2
查看完整版本: 通过S7协议实现西门子S7-1200PLC与S7-200PLC的通信