S7-300 系列 PLC 的以太网的通讯协议很丰富,通讯指令也很多, 因此有比较大的选择余地,而 S7-200 系列 PLC 仅能用 S7 协议进行以 太网通讯,S7-1200 系列 PLC 的通讯协议比较丰富,可以根据不同的 情况选用 S7、IS0-on-TCP 或者 TCP 协议。以下用 ISO-on-TCP 协议为 例讲解 S7-1200 和 S7-300 系列 PLC 之间的以太网通讯。
【例 2】用 S7-1200 PLC 的 IB0 控制 S7-300 PLC 的 QB0;再用
S7-300 PLC 的 IB0 控制 S7-1200 PLC 的 QB0。
⑴硬件配置
![bdc33bd189347528273dccdb7c641bff.png](https://i-blog.csdnimg.cn/blog_migrate/fdcaf9b338c48ff050256c28c261c493.jpeg)
⑵ 组态 S7-1200,并编写程序
① 新建项目,并组态 S7-1200。新建项目“1200 和 300 的以太网通讯”,组态硬 件 CPU1214C DC/DC/DC,将界面切换到 OB1,在 OB1 中编写程序,如下图。
![e90cb64aec250bb9ff172e8519464407.png](https://i-blog.csdnimg.cn/blog_migrate/06126a619614ba553a79b5fbc09c6121.jpeg)
![25b7ab324c065a789102f20568ef3cc5.png](https://i-blog.csdnimg.cn/blog_migrate/fdd6017a322c3f84e7e7bddad757d513.jpeg)
![3b8a3a66afe118e4b5912d71f2e2e75b.png](https://i-blog.csdnimg.cn/blog_migrate/aa68becc159764f3e711fe8f06014188.jpeg)
![16584df3b86d19238495f9e04480eff6.png](https://i-blog.csdnimg.cn/blog_migrate/a20fa644e097040ba76a985a33439650.jpeg)
② 连接参数设置。编写完程序,以太网通讯并不能进行,还必须设置连接参数,
这直接关系着通讯是否能够成功。选中上图中的“TSEND_C”指令,右击,打开 “属性”,选择“连接参数”,设置连接参数如下图所示。
![9b70034eb1d306b35bb0314fdd3f329f.png](https://i-blog.csdnimg.cn/blog_migrate/1302b482349983182f52f107522efb99.jpeg)
1200PLC 连接参数设定
⑶组态 S7-300,并编写程序。
① 新建项目,命名为“1200 和 300 以太网通讯”。硬件组态如下图 所示。
![1b2583358439fdb979f9532aa2805c37.png](https://i-blog.csdnimg.cn/blog_migrate/039aa5734161705f295431666896655a.jpeg)
② 新建网络。打开“CP343-1 Lean”的属性,新建一个 Ethernet
网络,将本地 IP 地址设为 192.168.0.2。
![1d44ff3f7b1e9eca95f2d28a89c7773d.png](https://i-blog.csdnimg.cn/blog_migrate/be0c5398fa677c5173161ef4e506b392.jpeg)
![ee6d6effcdfce9fef47440991f758250.png](https://i-blog.csdnimg.cn/blog_migrate/a2578890f4f50fd45586ea5a23a18962.jpeg)
③ 建立网络连接。双击“
![a10e1d20228c652dceecf2ed32f96cd7.png](https://i-blog.csdnimg.cn/blog_migrate/a8e0b41695d4eb2af3e50f60af4e41b0.jpeg)
”,打开网络管理界面,右击“CPU313C-2DP”选择“插入新连接”,弹出参数设定界面。
![3c21f115c6bfac2edacefd7f075f3ce7.png](https://i-blog.csdnimg.cn/blog_migrate/b74c7d1a43d52f034a14fcd6b737f828.jpeg)
网络管理界面
④ 设定通讯参数。选定“未指定”(因为在 S7-300 的硬件组态中没 有组态 S7-1200,所以选此项),再选择通讯协议为“ISO-on-TCP 连 接”,然后点击“确定”,弹出“ISO-on-TCP 连接属性”界面。先将 本地的“TSAP”和伙伴的“TSAP” 设置成和在 1200 组态中的一致, 再设置伙伴的 IP 地址设为 192.169.0.1( 即 1200 CPU 的 IP 地址)。
![06967df6724992a2aaa73f20abf4153e.png](https://i-blog.csdnimg.cn/blog_migrate/037516efe8fdda83fe0fb51cc5415295.jpeg)
![071cb561440397f6dd4bf0b0d32c8ce9.png](https://i-blog.csdnimg.cn/blog_migrate/c5983ac0862e0e863a4e72272a3cf03d.jpeg)
⑤ 相关指令简介。
AG_SEND(FC5)块将数据传送给以太网 CP,用于在一个已组态的 ISO 传输连接上进行传输。所选择的数据区可以是一个位存储区或一 个数据块区。当可以在以太网 CP 上发送整个用户数据区时,指示无 错误执行该功能。
AG_RECV(FC6)块接收从以太网 CP 在已组态的连接上传送的数据。 为数据接收指定的数据区可以是一个位存储区或一个数据块区。当可 以在以太网 CP 上接收整个用户数据区时,指示无错误执行该功能。
![c6c8b9cd64c62353cc212c8a3101e1d6.png](https://i-blog.csdnimg.cn/blog_migrate/66afa44881c22d20454bf7862a3b661b.jpeg)
S7-300 以太网通讯指令
⑥ 编写程序。
![912946039cf17feb8b557e1d5244c778.png](https://i-blog.csdnimg.cn/blog_migrate/6b44d22417ac2acb84f58af53bc99685.jpeg)
![2f054e4f0e2d0fa575ecbb14c3f2c4ba.png](https://i-blog.csdnimg.cn/blog_migrate/33b0d6805d77c02e77d7d175e7d50eb9.jpeg)
![b00e70acadeef6498c74575edf03728b.png](https://i-blog.csdnimg.cn/blog_migrate/5e69c6269d43a49042588c937d69d8b3.jpeg)
关键点:本例还可以用 TCP 和 S7 协议进行通讯,用 S7 协议通讯
时,CP343-1 作客户端,S7-300 PLC 中用 PUT(FB15)/GET(FB14)指令 和 1200 进行通讯,但要注意 CP343-1 Lean 是不能作客户端的。用 TCP 协议通讯的方法与用“ISO-on-TCP”协议类似。
原创:91工控高银江