随着工业自动化的飞速发展,冗余系统越来越广泛地应用于工业生产中。在一些对系统可靠性要求很高的应用中,如石化、造纸、冶金、电力等行业,必须保证工业生产系统在一定时期内系统不间断运行。如果控制系统出现故障,由此引起的停产和设备的损坏将造成极大的经济损失。又如某些复杂的大型生产系统,如汽车装配生产线,只要系统中一个地方出问题,就会造成整个系统停产。因此仅仅通过提高控制系统的硬件及软件的可靠性来满足上述行业对可靠性的要求是不可能的。因为PLC本身的可靠性的提高有一定的限度,并且可靠性的提高会使成本急剧增加。这就需要考虑使用冗余系统,这样在系统中一些关键模块或网络设计有一个或多个备份,当正在工作的部分出现问题时,系统可以通过特殊的软件或硬件自动切换到备份上,从而保证了系统不间断工作。
在冗余控制系统中,最常见的冗余类型有电源冗余、网络冗余、控制器冗余以及I/O模块冗余。其中控制器冗余主要通过冗余扫描器将远程链路上的I/O分别组态给不同的控制器,这样当其中一个控制器故障时,另一个控制器可以立刻接管远程I/O的控制权,以防止远程I/O失控而导致误动作。SLC的1747-BSN冗余即为此类型的冗余。而网络冗余采用冗余模块再加上双网络。而整个系统中最重要的部分,由两套配置完全相同的控制器模块、电源和冗余模块组成。是否使用备用的I/O系统取决于系统对可靠性是否有更高的要求。两个控制器模块使用相同的用户程序并行工作,其中一块是主控制器,另一块是备用控制器,后者的输出是被禁止的。当主控制器出现故障时,马上投入备用控制器,这一切换过程是由所谓冗余处理单元RPU(Redundant Processing Unit)控制的,I/O系统的切换也是由RPU完成的。在系统正常运行时,由主控制器执行系统的工作,履行控制功能,进行I/O控制,并且更新备用控制系统的状态及数据,备用控制器的I/O映像表和寄存器通过RPU被主控制器同步刷新,处于监视主机的运行状态;当接到主控制器的故障信息后,RPU在1~3个扫描周期内将控制功能切换到备用控制器,由备用控制器控制系统。此过程的切换时间要求一般不超过PLC的一个扫描周期,为了确保它们之间的顺利切换,这两个控制器模块通过同步光缆通信,同步处理程序、数据寄存器、定时器、计时器和其他数据,保持实时的数据刷新。另一类系统没有RPU,两台控制器用通信接口连在一起,当系统出现故障时,由主控制器通知备用控制器,这一切换过程一般不是太快,只适用于实时性不高的系统。
ControlLogix控制系统的冗余结构如图6-1所示,它是由两个相同的机架构成。当主控制器出现故障时,信号同时经过1757-SRCX同步光纤传给从控制器,从控制器立即启动接管工作,同时主控制器停止工作。这一系列看似很繁琐的动作,其实实现起来只需几十毫秒的时间,既省去了编程的麻烦,又大大减少了设备切换的时间,降低了系统故障的发生率,但是硬件冗余的成本相对软件冗余较高。软件冗余是指控制器与控制器之间的冗余需要通过软件编程来实现。软件冗余系统通过程序监视对等控制器,主控制器发生故障时,对等控制器检测到该信息,立即运行控制接管程序。这种控制系统只需要较少的硬件,也能实现冗余CPU的切换,但是它切换的时间相对较长,不利于工业生产过程,这大大影响它在工业控制中的应用。
下面将以Logix5561控制器为例,从程序流程图的角度讲述冗余原理(其他的控制器同Logix5561的冗余原理相同)。
Logix5561控制器冗余的原理及程序流程:在ControlLogix系统正常工作时,只有一个Logix5561控制器模块可以拥有对整个控制系统输出模块的控制权,称之为主控制器,而其他控制器模块可以同时接收输入模块的数据,所以冗余的主要工作就是备份控制器,实时地监视主控制器的工作状态,如主控制器进入非正常工作状态时,备份控制器接过对系统输出模块的控制权。同时,取消主控制器对系统输出模块的控制权。这样就可以保证系统始终用正常工作的CPU工作。(www.xing528.com)
图6-1 ControlLogix控制系统的冗余结构
当主控制器进入非正常工作状态时,整个系统输出模块的控制权交给了冗余控制器,输出模块在切换中无论是模拟量还是开关量都必须保持不变。因此,冗余控制器在主控制器工作时,控制器内部储存的输出模块的值就必须实时地与主控制器中相应的输出值保持一致,这样才能实现无扰切换。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。