图片:
图片:
图片:
图片:
图片:
图片:
1111MicrosoftInternetExplorer402DocumentNotSpecified7.8 磅Normal0我们的西家高端1500冗余系列PLC功能非常强大!但是价格也是相当美丽。我们今天来用两套200smartPLC搭建一个冗余的环境。尝试在矮子里面拔将军。
相信能用得起1500冗余系列的业主肯定不会正眼瞧它一次,但是市场的包容性总是很强的,况且一套1500冗余的价格能换来好几箱smart模块。那闲话少叙,走过路过别错过!开搞喽!
准备2套200smartPLC模块(本例每套是ST60+AM03),一个昆仑通态触屏,还有交换机和电源等。要实现的效果:PLC-A和B硬件配置一样,程序运算数据实时同步;但一主一备,只有主CPU控制逻辑输出。当主CPU模块故障或者与HMI通讯故障时,快速切换到备CPU运行,外部逻辑输出和HMI通讯同步切换过来。
先来从截图看HMI触屏和程序的主架构。触屏要建立两个TCP/IP设备,里面的变量地址和名称一模一样,只有IP不一样。编写主备通讯切换脚本,来控制这两个设备的通讯。再写一个心跳传给主CPU用。而PLC里面把子程序分为两部分,一个是无条件一直调用的,一个是只有主CPU才调用的。两个PLC程序除冗余设置之外要一模一样,实际上我们编写好A之后再复制稍微修改为B程序即可。
接下来我们主要讲解PLC程序实现冗余的原理,一个核心的输出点定义为“我方运行”,然后两个PLC的这个Q点互传一下信号(一定要用硬接线哦)。那么主PLC运行时,备PLC就不输出逻辑运算程序。如图这个点只有3个逻辑条件来控制,思路清晰,又非常简单。
第一,本CPU及模块报警。本例A为VW301,B为VW303(由于3.0可以带8个模块所以直接干满,按需取用)。
第二,处理HMI看门狗数据。用5个地址当堆栈,顺序滚存就行。当通讯断开的时候,堆栈内数据会慢慢相等,加延时判断即可。
第三,判断备CPU通讯是否正常。由于主CPU要把一些关键数据实时同步给备CPU。所以当PUT指令长时间完不成的时候,就认为备站丢失。这个时候主CPU有问题也不可以切换到备站。
然后到这里就讲完了。欢迎各位看官测试并留言讨论。
另外由于截图并不能做到那么详细,或者您未能理解透彻,如有更过需求请在文末处赞赏小编一杯奶茶,并私聊小编要原程序和画面哦~~