6
现场回来后还要进行团队分享和讨论,分享经验的同时,也可以借鉴别人的想法,丰富自己解决问题的手段。所以借1847这个平台,与大家一起分享一些现场遇到的问题和自己的想法及解决方法,希望大家在解决问题时有一些借鉴。
项目改造遇到的问题
问题描述:
现场有多个PLC站点,包括S7-300 PLC和S7-400 PLC,需要在一个PLC中添加一个站点,使用用户提供的程序下载修改后的硬件配置后,发现该站点和其中一个S7-400 PLC站点的通信中断,按照两个站点的通信关系重新创建连接,在新创建的连接中参考通信程序块使用的连接ID分配连接ID,这里比较绕嘴,在后面再具体介绍。通信连接下载后,通信建立了,但是通信伙伴S7-400 PLC与其它PLC的通信又被中断了。由于时间比较紧又恢复原有状态了。
问题的原因:
问题的原因是现场工程师得到的程序中没有通信连接信息,所以下载后与通信伙伴PLC的通信中断,重新建立通信连接后,再次下载,新建立的通信连接工作正常,但是通信伙伴PLC下载后,覆盖原有的通信连接,所以与通信伙伴PLC相关联的其它PLC通信又中断了。
S7-200系列PLC有通信方式有三种:一种是点对点(PPI)方式,用于与该公司PLC编程器或其它人机接口产品的通信,其通信协议是不公开的。另一种为DP方式,这种方式使得PLC可以通过Profibus-DP通信接口接入Profibus现场总线网络,从而扩大PLC的使用范围。后一种方式是自由口通信(Freeport)方式,由用户定义通信协议,实现PLC与外设的通信。以下采用自由口通信方式,实现PC与S7-200系列PLC通信。
6ES5848-6GC11
6ES5848-6GC21
6ES5835-8MD01
6ES5835-8MD21
6ES5835-8MD31
6ES5835-3SD11
6ES5835-3SD21
6ES5835-3SD31
6ES5760-0AB11
6ES5760-0HA11
6ES5760-1AA11
6ES5752-0AA62
6ES5758-1AA11
6ES5760-0AA11
6ES5752-0AA43
6ES5752-0AA52
6ES5752-0AA53
6ES5752-0AA12
6ES5752-0AA22
6ES5752-0AA23
SM0.0是不可控的触点,适用于无条件触发的场合,并非每个指令都需要SM0.0。在其它场合,要用可控制的触点来触发指令,如I0.0、M0.0或各种比较指令等等。如果没有可控触点可用,只能用SM0.0。
a、S7200编程中有规定,在输出类指令前必须有触点指令,有的时候输出指令不需要条件直接输出为1,但为了满足这样的编程约定串连常为1的sm0.0在前面。
b、不同PLC厂家都有自己语法规定,SIEMENSS7-200梯形图这样要求的,不能母线直接连输出指令(或子程序调用)。
c、一个程序用不用SM0.0在于多方面的需要,如果你不需要也能完成控制要求那不用当然好了。不过对于一些指令你还是非用它不可呢!另外在调试程序时它还是你的好帮手呢!
基本指令一关于状态字(SM)
6ES5095-8MB03 6ES5521-8MA22 6ES5928-3UB11
6ES5095-8MB04 6ES5521-8MB11 6ES5928-3UB12
6ES5095-8MC01