电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> PLC基础入门教程 >> 正文

西门子S7-200SMART系列PLC之间S7通信,S7通讯

作者:佚名    文章来源:网络整理    点击数:    更新时间:2025/12/25

   在接下来的一段时间,会重点分享关于S7-200SMART通信应用的案例,包括串口通信应用案例、以太网通信应用案例等,希望有兴趣的朋友们持续关注该公众号

一、 导读   


   在上一篇文章中分享了S7-200SMART系列PLC之间的Modbus通信,后台有兄弟私信问我,两个S7-200SMART的PLC通信为啥要用Modbus,而不用以太网通信呢?当然这篇文章主要是为了给大家分享S7-200SMART系列PLC的Modbus从站通信的应用而已。那么本篇文章就来分享下S7-200SMART系列PLC之间通过以太网方式实现的S7通信(S7通讯)。
     S7通信协议是西门子S7系列PLC内部集成的一种通信协议,是S7系列PLC的精髓所在。它是一种运行在传输层之上的(会话层/表示层/应用层)、经过特殊优化的通信协议,其信息传输可以基于MPI网络、PROFIBUS网络或者以太网。




二、通信案例描述   

    现有三台S7-200SMART系列的PLC,分别为1#PLC、2#PLC和3#PLC,其中1#PLC作为本地站,2#PLC和3#PLC作为远程站。

 

本案例实现的数据交换情况如下所示:    

1.1#PLC的VB0~VB9的数据传输给2#PLC的VB0~VB9中。

2.读取2#PLC的MB0~MB4的数据,放入到1#PLC的VB100~VB104中。

3.1#PLC的VB0~VB9的数据传输给3#PLC的VB0~VB9中。

4.读取3#PLC中的MB10~MB14的数据,放入到1#PLC的VB110~VB114中。




三、通信案例的实施   


(1) 组态CPU的IP地址
     本案例中有一个本地站的PLC和两个远程站的PLC,可通过交换机或是路由器的方式把三者进行连接,然后分别为每个PLC组态对应的IP地址,并确保三者的IP地址均处于同一个网段,三个PLC的IP地址设置,如下图所示:
 
     在编程软件的项目树下双击CPU型号,打开系统块,在CPU块中的“通信”选项下,组态CPU的IP地址,如系统所示。
     
(2) 在Get/Put向导中组态数据交换
Ø添加PUT/GET操作项
    启用GET/PUT向导后,在Get/Put向导的操作项中添加4个操作项,如下图所示,其中2个GET操作项,2个PUT操作项,GET操作表示读取远程站数据,PUT操作表示写数据到远程站。

Ø组态数据交换
     本地站(1#PLC)的VB0~VB9的数据传输给远程站(2#PLC)的VB0~VB9中,数据交换区的组态如下图所示:    
 
    读取远程站(2#PLC)的MB0~MB4的数据,放入到本地站(1#PLC)的VB100~VB104中,数据交换区的组态如下图所示。
 
    本地站(1#PLC)的VB0~VB9的数据传输给远程站(3#PLC)的VB0~VB9中,数据交换区的组态如下图所示:    
 
   读取远程站(3#PLC)中的MB10~MB14的数据,放入到本地站(1#PLC)的VB110~VB114中,数据交换区的组态如下图所示
 
   组态完数据交换区后,需要为期分配库存储器,分配时,确保分配的存储器地址在程序中未被使用,在Get/Put向导组态数据交换地址时未被使用,本例中分配如下所示:    

Ø编写程序
   通信程序的编写只需要再本地站中编写,远程站中无需编写任何的通信程序,在本地站中调用NET_EXE 的子例程序即可。



四、应用经验总结 


1.S7通信不仅可实现S7-200SMART系列PLC之间的通信,也可以和西门子其他S7系列的PLC进行通信
2.S7通信为单边通信,只需要在本地站中编写对用的通信程序即可,在原远程站中无需编写任何的通信程序,通信时就算远程站的CPU处于停止模式下,本地站也可对远程站进行数据的读写操作。    
3.一个PLC可作为其他8个PLC的本地站使用,也可做为其他8个PLC的远程站使用,执行主动连接的同时也可以被动地被其他远程 CPU 进行通信读写。
4.判断S7通信是否有断线情况,除了采用示例中的心跳信号判断法外,还可以采用通过判断操作状态字中的bit6位来判断,该位表示通信已经激活标志位,正常情况下是0 1不断变换,当某一个远程通信伙伴方线路断开后,该位会一直保持为1。操作状态字节的查询在NET_EXE子例程中可查询,如下图所示,VB7030和VB7070为往两个远程站中写入数据时的操作状态字节。

5. GET 指令可从远程站点读取最大 222 个字节的用户数据,PUT 指令可向远程站点写入最大 212 个字节的用户数据;大数据量的用户数据通信可以调用多个 GET/PUT 指令来实现。采用 GET/PUT 向导时每个操作的读写用户数据的最大个数为 200 个字节。
Tags:S7通信,200SMART,S7通讯  
责任编辑:admin
  • 上一篇文章:
  • 下一篇文章: 没有了
  • 相关文章列表
    西门子S7-200smart PLC如何做运动控制的暂停功能?200SMART运动控
    西门子S7-200smart数据类型,存储区类型,范围和特性汇总
    S7-200 SMART 数据类型,输入/输出映象区、内部存储区及特殊功能
    基于Smart200 PLC的运动控制组态说明_smart200伺服控制升降距离
    S7-200SMART添加模拟量转换块,变频泵控制块输入输出频率转换
    200SMART 模拟量输出控制变频器经典案例,附程序,模拟量输出控制
    西门子S7-200SMART如何判断是否是硬件故障指示灯全亮
    西门子S7-200 Smart 模拟量扩展卡 模拟量输出\读取与处理(AM03、
    西门子S7-200 SMART通信秘籍:全面解析通信端口与连接方式!串口
    西门子200SMART案例27(电机运转时间设置)电机运行时间累计
    S7-200 Smart入门,产品说明和硬件组态
    200SMART扩展模块 数字量模块EM DR16,西门子数字量扩展模块产品
    西门子PLC S7-200 smart如何使用Modbus 485通讯传输接收数据_200
    一张图就能读懂S7-200 SMART PLC的位、字节、字、双字的数据组合
    一起学习S7-200Smart控制器的中断子程序
    西门子S7-200 SMART 模拟量概述及自建库文件,西门子PLC子程序创
    西门子S7-200SMART间接寻址读取配方 子程序调用方法
    用200SMART高速脉冲实现轨迹跟随运动
    西门子200SMART PLC编程通过指针轻松实现多个数据排列
    西门子S7-200SMART PLC如何实现星三角降压启动多次调用?子程序编
    请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
    1分 2分 3分 4分 5分

    还可以输入 200 个字
    [ 查看全部 ] 网友评论
    推荐文章
    最新推荐
    关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
    返回顶部
    刷新页面
    下到页底
    晶体管查询