发表于:2006/11/27 16:59:00
#0楼
随着制造业竞争的加剧,制造商更加追求生产设备的可靠性,尤其是那些控制关键性生产工序的设备,往往需要采用冗余配置。目前,多数的基于可编程控制器的冗余系统采用了两套CPU处理器模块,一个处理器模块作为主处理器,另外一个作为从处理器。正常情况下,由主处理器执行程序,控制I/O设备,从处理器不断监测主处理器状态。如果主处理器出现故障,从处理器立即接管对I/O的控制,继续执行程序,从而实现对系统的冗余控制。
很多厂商都能够提供可编程控制器冗余系统解决方案,用户在使用过程中往往对其冗余原理理解不深,造成系统冗余性能下降。本文以罗克韦尔自动化Allen Bradley品牌ControlLogix控制器为例,介绍其冗余系统的构建和性能优化问题。
2 冗余系统构建
ControlLogix系统采用了基于“生产者/消费者”的通讯模式,为用户提供了高性能、高可靠性、配置灵活的分布式控制解决方案。ControlLogix系统实现了离散、过程、运动三种不同控制类型的集成,能够支持以太网、ControlNet控制网和DeviceNet设备网,并可实现信息在三层网络之间的无缝传递。因而,ControlLogix被广泛地应用于各种控制系统。[1]
构建ControlLogix冗余系统的核心部件是处理器和1757-SRM冗余模块。目前,有1756-L55系列处理器模块支持冗余功能,其内存容量从750KB到7.5MB不等。1757-SRM冗余模块是实现冗余功能的关键。如图1所示,在冗余系统中,处理器模块和1757-SRM冗余模块处于同一机架内。为了避免受到外界电磁干扰,提高数据传输速度,两个机架的1757-SRM模块通过光纤交换同步数据。所有的I/O模块通过ControlNet控制网与主、从控制器机架内的1756-CNB(R)控制网通讯模块相连接。
图1 冗余系统结构
以往的冗余系统通常需要用户编制复杂的程序对处理器状态进行判断,在两个处理器之间传输同步数据并实现I/O控制权的切换,两个处理器中的程序也各不相同,这使得冗余系统本身的建立和维护工作非常繁琐。
通过1757-SRM冗余模块,不需要任何编程就可以实现冗余功能,还可以方便地使主、从处理器内的程序保持一致,用户对主处理器程序的修改可自动同步到从处理器。主、从处理器所处机架内的1756-CNB(R)控制网通讯模块地址各不一样。当主处理器出现故障后,从处理器接管控制系统,相对应的控制网通讯模块之间相互交换地址,从而不影响其它控制器和上位机与该冗余系统的通讯。
3 系统冗余原理及过程
可编程控制器一个工作周期内的主要任务有:内务整理、扫描输入映像表、执行程序、更新输出映像表。ControlLogix控制器在冗余系统中,主处理器执行完程序之后,将所有输出指令的结果传送给从控制器[2]。由于ControlLogix系统所有的I/O设备都在控制网内,按照其自有的“生产者/消费者”通讯模式,从处理器作为一个“消费者”可以与主处理器具有一样的地位,获取I/O的输入信息。这样,确保了主、从控制器内输入、输出映像表的一致。
如图2所示,在正常情况下,程序执行到位置1时,主处理器将具有较高优先权任
图2 正常情况下主处理器程序执行过程
务和前一段普通任务的执行结果分先后传送给从处理器,然后程序返回到位置2,继续执行剩下的普通任务。位置3时,所有任务已经完成,主处理器将执行结果传送给从处理器。如果在执行某个任务时,主处理器
图3 主、从处理器之间的切换过程
出现故障,如图3所示。这时,从处理器便会接替主处理器,重新执行出现故障时的那段任务。可见,这时从处理器使用的输出映像表数据来自于主处理器上一个工作周期的执行结果。
可见,在冗余系统的切换过程中,没有出现数据的丢失和突变,处理器内部无需执行繁杂的判断决策程序,实现了系统的无扰切换。
4 系统冗余性能优化
针对系统冗余性能的优化,不仅限于减少系统的切换时间,而且由于冗余器件的介入,系统可靠性得到提高,但一些相关的性能却有所降低。在第3节中已经谈到,冗余系统的处理器相对于非冗余系统的处理器在一个工作周期内多了一项任务:将所有输出指令的结果传送给从控制器,因而增加了程序扫描周期。因冗余系统数据交换量不同,所增加的扫描周期时间也有所不同。因此,对于系统冗余性能的优化主要有两个方面:降低冗余系统对程序扫描周期的影响和减少系统切换时间。
4.1 降低冗余系统对程序扫描周期的影响
由第3节的分析所知,在不该变原有程序结构的情况下,只有减少主、从处理器之间的数据交换量才能减少冗余系统对程序扫描周期的影响。ControlLogix主处理器每次向从处理器发送的同步数据包大小固定,均为256字节。因此,可以通过充分利用每个数据包来达到减少数据包交换次数的目的。ControlLogix控制器采用基于标记的寻址方式,数据结构比较灵活,用户在程序中可以使用数组或者自定义结构数据。这样,数据的传输可以大大被压缩,而且由于用户可以将某一控制对象一系列相关数据集成在一个自定义结构数据中,使得原来分散的数据可以被集中起来进行传输,充分利用了每个数据包,从而在传送相同信息时,所使用的数据包较分散的数据传输所使用的数据包少,节省了数据传输时间,减少了程序扫描周期。
由于在ControlLogix主处理器中所有指令的执行结果都要同时被写入从处理器,因此减少一些不必要和无意义的指令执行也有助于减少程序扫描周期。如OTL、OTU(输出锁定/解锁)以及其它一些指令常常在梯级条件为“真”的情况下反复执行,还有比如ADD(加法)指令,虽然两个相加的数都没变,结果也没变,但是主处理器每次执行这个指令时都会将结果写入从处理器。因此,可以通过比避免那些无意义的数据更新来减少程序扫描周期。
4.2 减少系统切换时间
在ControlLogix冗余系统中,系统切换时间受到ControlNet控制网NUT(网络更新时间)的制约。当用户完成了对ControlNet控制网的配置之后,NUT时间便被确定下来,从而就可以估算系统的切换时间,如表1所示。
错误原因类型 NUT时间 冗余系统切换时间(ms)
模块掉电 ≤6ms 60
≥7ms 5NUT+Max {2NUT, 30}
CNB模块与其它模块出现通讯故障 14NUT+ Max {2NUT, 30}+50
表1 冗余系统切换时间估算
为了确保在系统切换时不至于造成输出数据的突变,对NUT有一定的限制。通常情况下,如果冗余系统机架中只有一个或者多个同一网络内的控制网通讯模块,其NUT不得大于90ms;如果有多个在不同网络内的控制网通讯模块,其最小NUT网络和最大NUT网络之间要满足一定的约束关系,如表2所示。
最小NUT网络的NUT值(ms) 2 7 14 …90
最大NUT网络的NUT值必须小于或等于以下值(ms) 15 15 39 …90
表2不同网络之间NUT的约束关系
由于在切换过程中,主、从处理器框架内的控制网通讯模块之间要交换对I/O的控制权。由于在切换过程中,通讯模块自身的处理器占用率有8%左右的攀升,为了确保该通讯模块有足够的处理能力完成切换,应确保该模块在正常工作时的处理器占用率低于75%。为了做到这一点,可以采用以下几点减少通讯模块的处理器占用率:1、在控制系统允许的情况下,适当增加NUT值;2、增加通讯连接的RPI(请求数据包间隔)值;3、减少通过该模块的通讯连接(如采用机架优化方式);4、减少MSG(信息传输)指令的使用数目;5、通过增加额外的通讯模块来分担网络负荷。
5 针对冗余系统的监控
在典型的ControlLogix系统中,常使用RSView32监控软件配合1784-PCIC控制网计算机适配卡接入网络,构成上位机监控系统。在冗余系统中,虽然有两套控制系统,但在监控系统中只需要对正在运行的主系统进行监控。在切换时,对应的控制网通讯模块相互交换地址,所以不需要重新调整监控系统的通讯通道。也就是说,如果不作特殊的处理,上位机无法判断系统是否因故障进行了控制器切换。为了在上位机监控系统中反映主、从控制器的状态,可以在处理器程序中加入GSV指令,获取冗余系统状态(如从控制器的状态,是否能够进行切换,数据交换量等)信息,大大方便了用户操作,并能在系统发生切换后及时提醒用户排除从处理器的故障。
6 结 论
通过对ControlLogix冗余系统原理的介绍,针对影响冗余性能的关键问题进行分析,从减少程序扫描周期和系统切换时间上入手,对冗余系统的性能进行调整,这将有利于用户了更好地进行系统配置,适应自己的具体应用项目需要。同时,用户还可以使用ControlLogix系统的其它冗余设备,如冗余电源、控制网冗余通讯介质来构建更为可靠的控制系统。在采用其它控制的冗余系统中,也可以采用类似的方法对其冗余性能进行分析,从而实现最佳的冗余效果。
(三)罗克韦尔三层网络平台
1、EtherNet/IP 工业以太网
将以太网技术引入工业应用
以太网工业协议(Ethernet Industrial Protocol,EtherNet/IP)是开放的工业联网标准支持实时I/O控制和消息传递功能。这种融合是基于将以太网应用于工业控制应用日益明显的需求。
EtherNet/IP 利用现有的以太网通讯芯片和物理介质。得益于上世纪70年代开始实际应用并在全球范围内的广泛的使用,以太网产品拥有众多的供应厂商。
EtherNet/IP是开放的网络技术,它是基于:
IEEE 802.3 物理层和数据链路层标准
Ethernet TCP/IP协议套件 (传输控制协议/网间网协议), 即以太网的行业标准
采用在工业通讯领域广为证实的通用工业协议CIP(Common Industrial Protocol, 原控制和信息协议),支持您在同一链路上完整实现设备组态(configure)、实时控制(control)、信息采集(collect)等全部网络功能。
EtherNet/IP 特色
世界范围内广为接受的以太网技术
支持10和100M bit/s产品
所有产品提供内置的互联网服务器功能(web server)
多种介质选择 (铜, 光纤,光纤环网, 无线网络)
生产者/消费者(Producer / Consumer)网络服务支持您在同一链路上完整实现设备组态(configure)、实时控制(control)、信息采集(collect)等全部网络功能。
2、ControlNet 网络
面向关键应用地高度稳定、高度确定、安全的I/O网络
ControlNet 网络是开放、技术先进的控制网络,满足实时性、高吞吐量应用的要求。
ControlNet 网络采用 在工业通讯领域广为证实的通用工业协议CIP(Common Industrial Protocol, 原控制和信息协议), 融合了I/O控制和对等通讯的网络功能,并为这两种网络功能提供高速、高性能的网络通讯。
ControlNet 网络除了为关键任务提供确定的、可重复的控制数据传输,还支持非关键数据的传送。I/O的刷新和控制器到控制器的互锁永远比程序的上载/下载、消息传送(Messaging)等占有更高的优先级。
ControlNet 特色
开放现场总线IEC61158和欧洲标准EN50170
在同一链路上完整实现网络浏览、程序上载/下载、诊断、控制器间的互锁,I/O控制等全部网络通讯要求,并且不会影响对时间要求较高的I/O数据通讯。
灵活的通讯选择 (同轴电缆、光缆、光纤环网),介质冗余,支持本质安全(intrinsically-safe)
高速的数据吞吐能力(5Mbps恒定网络速率),优异的 I/O 传送和控制器间互锁性能。
单个网络最大支持99个站点,节点间没有最小距离限制。
可选通用介质、柔性介质,多种防护方式,满足阻燃型、地埋型、架空型、铠装型、防腐型安装要求。
丛网络上任何节点都可以访问到控制器和整个网络,方便进行编程(需通过密码检验)和系统故障排查。
支持I/O数据和对等数据的多路发送(Multicast),提升网络效率
可组态、性能预知、可保证的、可重复的离散和模拟I/O数据网络刷新性能(支持RPI设定)
生产者/消费者(Producer / Consumer)网络服务支持您在同一链路上完整实现设备组态(configure)、实时控制(control)、信息采集(collect)等全部网络功能。
支持对FF基金会现场总线的集成。
3、DeviceNet 网络
为用户提供在整个系统中分布和诊断底层设备的能力
DeviceNetTM 网络是开放的、现场层的总线技术,用来将简单工业设备(如传感器和执行器)连接到高端设备 (如工业控制器和计算机). DeviceNet 网络采用在工业通讯领域广为证实的通用工业协议CIP(Common Industrial Protocol, 原控制和信息协议),为工业设备提供实时控制、系统组态和数据采集的能力。DeviceNet网络是灵活、开放的网络技术,能够连接来自多个不同厂商的设备。
DeviceNet 网络特色
开放网络协议,IEC62026,欧洲标准EN50325,中国国家标准 GB/T 18858.3-2002
400余家成员厂商,数百万节点安装实例
为简单设备提供成本节省的联网解决方案
能够丛多个厂商所提供的智能型传感器/执行器采集数据
提供主从(master/slave)、逢变则报(Change-of-State)和对等(peer-to-peer)通讯能力
生产者/消费者(Producer / Consumer)网络服务支持您在同一链路上完整实现设备组态(configure)、实时控制(control)、信息采集(collect)等全部网络功能