前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >通过S7协议实现S7-1200 与S7-300的通信

通过S7协议实现S7-1200 与S7-300的通信

作者头像
剑指工控
发布2021-11-09 15:11:09
1.4K0
发布2021-11-09 15:11:09
举报
文章被收录于专栏:剑指工控

1.概述 通过以太网可以实现S7-1200与S7-300连接通信。S7-300可以使用带集成口CPU或通信处理器(CP343-1)连接到工业以太网上,它们都提供S7 通信的功能,既可作为客户机,也可以作为服务器,所拥有的连接资源可参见相关产品手册;S7-1200 集成以太网接口,提供S7 通信的功能,只能作为服务器,可以同时建立3 个通信连接。

下面会用一个实例来描述S7-300 如何与S7-1200建立通信连接。

192.168.0.8 192.168.0.18

192.168.0.100

图1: 实例网络拓扑图

S7 1200 与 S7-300 通过 S7通信的基本原理如下图所示:

图2:S7-300与S7-1200 通信原理

2.硬件需求 • S7-1214C AC/DC/RLY • CPU 319-3 PN/DP • SCALANCE X204-2 • PG/PC

3.软件需求 • S7-1200编程软件 STEP 7 Basic V10.5 • S7-300 编程软件 STEP 7 V5.4 + SP4

4.组态

4. 1 S7-1200 配置 • 使用STEP 7 Basic 创建项目“comS7300”;

图3: 创建项目

• 添加S7-1200 设备 CPU1214C,设置IP 地址192.168.0.18;

图4: 添加S7-1200设备

4. 2 S7-1200 PLC 编程 • 在Program blocks 下,添加程序块(DB1,DB2,DB3),其中DB1和DB3为符号DB(选择 Symbolic access only),DB2为绝对地址DB(不选择 Symbolic access only) , S7 通信只支持绝对地址DB 寻址通信;

图5: 创建绝对地址DB2

• 打开全局DB2,输入2个数组类型数据,每个数组有16 个元素;

图6: 在DB2中添加数据

• 创建两个监视表格(监视表格_1, 监视表格_2) 用来观察DB2的实时状态; • 将程序下载到PLC CPU1214C 中。

4. 3 S7-300 配置 使用STEP 7 创建 SIMATIC 300 Station。

• 在硬件组态中添加CPU 319-3 PN/DP,设置IP地址 192.168.0.8;

图7: 硬件组态

• 在网络组态中(NetPro)中创建S7连接,首先在打开的NetPro中点击 SIMATIC 300 (1) 机架的“CPU 319-3PN/DP”处;

图8: 在NetPro中选择相应的机架

• 创建连接一个与“Unspecified”的S7 连接,点击“OK”;

图9: 添加S7连接

• 在相应的输入通信伙伴的IP地址192.168.0.18,点击“Address Details…”;

图10:输入通信伙伴IP地址 ;

• 在Address Details 对话框中,将通信伙伴的槽号改为1,确认其TSAP 为03.01,点击“OK”,之后,可以将所建立硬件组态和网络连接编译并下载到PLC 中。

图11:设置通信伙伴机架和槽号 ;

4. 4 S7-300 PLC 编程 • 在STEP 7 Blocks 中创建写数据DB1 ( put data)和读数据DB3 (get data)数据块;

图12: DB1和DB2;

• 打开主程序OB1,分别在Network1和Network2中添加指令FB14 GET和 FB15 PUT,并为其添加背景数据块DB14和DB15 ;

图13: 选择单边通信指令;

注意: 在选择指令时,要根据使用的产品来确定。如果采用CPU集成的以太网接口建立S7 通信,要采用左侧的指令;如果采用CP 以太网卡建立S7通信,要采用右侧的指令。

图14:在OB1中调用FB14 ;

图15:在OB1中调用FB15 ;

• 创建变量表VAT_1监视写数据操作(PUT);

图16:变量表VAT_1 ;

• 创建变量表VAT_2监视读数据操作(GET);

图17:变量表VAT_2 ;

5.调试 S7-1200 与S7-300 PLC 通信 • 从S7-300 程序中可知,在M1.0 从0变为1时,读取S7-1200的数据DB2.DBB0~DB2.DBB15 到S7-300 DB3.DBB0~ DB3.DBB15中;

图18:S7-300调用GET函数读取S7-1200数据

• 从S7-300 程序中可知,在M5.0 从0变为1时,将S7-300的数据DB1.DBB0~ DB1.DBB15 写入S7-1200 的DB2.DBB16~DB2.DBB31中;

图19:S7-300调用PUT函数写入S7-1200数据

6.总结 在使用S7-300与S7-1200 建立S7 通信时,所能建立的最大连接数和通信任务是与S7-300产品的型号相关,如:CPU319-3 PN/DP ,最大可组态的连接数为16,可建立最大通信任务为32(也就是可调用的通信指令的背景数据的总数),每个作业的用户数据最大值与所使用的块类型和通信伙伴有关,PUT 为212 个字节,GET为222个字节。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-03-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 剑指工控 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档