ControlLogix控制器冗余故障诊断与分析①

2017-11-01 03:00马彦宝
化工自动化及仪表 2017年8期
关键词:扫描时间设定值机架

马彦宝

(中石油西部管道公司)

ControlLogix控制器冗余故障诊断与分析①

马彦宝

(中石油西部管道公司)

介绍ControlLogix冗余系统的组成与工作原理,针对系统控制器冗余故障进行了分析,通过对冗余系统软、硬件的排查,分析了冗余故障产生的原因,并应用软件优化方法解决了系统冗余故障,提高了控制系统的可靠性和安全性。

故障诊断 天然气管道 ControlLogix冗余系统 CNBR模块 SRM模块

ControlLogix系列PLC是应用最广泛的工业PLC之一。PLC控制器是系统的控制中心,负责采集现场设备的工况信号、实时控制设备动作、监视生产过程参数和设备运行状态,当出现报警工况时,上位机界面能够及时发出报警提示;当出现危险工况时,可以联锁保护设备,以保障设备和生产过程的安全。ControlLogix冗余系统中设置了一对相同的CPU机架,当其中一个机架的硬件出现问题时,能够保障设备或生产过程保持运行状态,避免了因单CPU故障引起的生产中断或安全事故,是一种满足连续生产要求、提高控制系统可靠性的有效手段。

天然气长输管道部分压气站场采用ControlLogix系列冗余PLC作为压缩机组核心控制系统和启停顺序控制系统的控制器,笔者以控制器冗余故障排查过程为实例,对冗余故障诊断与处理方法进行分析。

1 冗余系统的工作原理

ControlLogix冗余系统硬件结构由两个尺寸、模块和插放位置、控制器程序均相同的控制器框架组成,每个冗余系统框架中包括控制器模块、通信模块和SRM冗余模块。冗余系统使用SRM冗余模块来保持一对冗余机架之间的通信,两个控制器框架不需要额外的编程,完全依靠系统SRM冗余模块来完成同步和数据交换。

进入同步状态的主控制器能够自动传送备份数据到从控制器,无需筛选和编程,只要在主控制器程序运行时刷新过的数据,都会通过交叉装载传送到从控制器。两个控制器的同步运行和大量数据的复制,保证了输出的无扰动切换。

在成对的冗余框架中,首先上电的框架为主机架,从机架在通电之后与主机架进行同步。当出现主控制器框架掉电、控制器发生主要故障、主机架移除或插入模块、主机架任一模块失效、断开CNBR模块或ENBT模块的通信电缆、主控制器发出切换命令、RSLinx软件发出切换命令等情况,都会导致冗余切换。

图1为某压气站ControlLogix 5561冗余机架网络拓扑图,其中ControlNet1与其他控制器通信,ControlNet2与远程IO机架通信。

系统运行期间会不定期出现冗余切换故障,进而导致从机架离线。此时,查看CPU属性提示,发现存在周期性任务执行时间超过Watchdog时间这一主要故障报警。而任一单机架运行时则无CPU故障报警。

2 冗余系统检查

通常,冗余系统为了追求最短的响应时间,会将所有参数都设置为默认值或最小值。但这样会存在控制器没有足够时间完成非预定性通信、内存分配比例不合理、连续任务Watchdog时间短、冗余框架中CNBR模块CPU运用效率超过75%等一系列隐性故障。

图1 ControlLogix 5561冗余机架网络拓扑

2.1 控制器检查

冗余系统配置要求控制器具有足够存储双倍所有数据的存储空间。因此,控制器需要检查存储空间和非预定性通信时间设置。

非预定性通信是不在控制器IO组态文件里组态的任意类型通信,包括与RSLogix 5000编程软件通信、与HMI设备通信、执行信息指令、对来自其他控制器的信息做出响应、同步冗余系统的从控制器、重新建立并监视IO连接(如带电热拔插模块)、通过背板在控制器串口与其他设备建立通信等,这些都是在任务逻辑程序执行以外的时间进行。如果控制器组态了连续任务,则由控制器属性中的System Overhead Time Slice设定值决定非预定性通信时间百分比;如果控制器仅包含周期性任务,则非预定性通信会在周期性任务不运行时进行。

非预定性通信时间设置时需满足:优先级最高的任务的执行时间明显比其周期短,所有任务的总执行时间明显比优先级最低的任务的周期短。可根据需要调整任务周期,以在执行逻辑和非预定性通信之间达到最佳平衡,为非预定性通信留出足够时间。通常,默认设定值为20%,修改设定值不应超过50%。

现场检查CPU Memory存储空间使用率为30.5%,未使用空间为69.5%,满足控制器存储空间的要求。CPU Advance属性中,非预定性通信设定值是50%,满足设置要求。

2.2 ControlNet模块检查

冗余系统配置要求ControlNet模块CPU利用率不大于75%。使用RSLinx软件,展开网络,直到显示出相应的CNBR模块,右键单击该模块依次选择“模块统计”、“连接管理器”,检查CNBR模块CPU使用率。

如图1所示,冗余系统中每个独立的机架中0槽是CPU模块、1槽和2槽是CNBR模块、3槽和4槽是ENBT模块,RACK 1、RACK 2分别为主、从机架。CNBR模块节点号分别设置为2、4和3、5。现场检查不同控制器工作情况下CNBR模块的CPU使用率,结果见表1。

表1 CNBR模块CPU使用率 %

主、从机架冗余工作时,持续检查CPU使用率,发现使用率存在超过75%的现象。当CPU使用率超过75%,主、从控制器进行数据同步时,会延长同步时间;当超过Watchdog设定值后,会产生主要报警甚至导致控制器离线。

2.3 Watchdog时间和扫描时间

任务最小Watchdog时间t=2×maximum_scan_time+150(ms),其中maximum_scan_time为控制器同步后整个任务的最长扫描时间。任务扫描时间是指程序逻辑执行时间和非逻辑协议消费时间的总和。如果Watchdog定时器没有足够的时间完整地重新扫描该程序,则将出现主要故障。控制器运行时右键单击任务,通过选择属性中的“Monitor”查看任务扫描真实时间和上次运行时的扫描时间,通过属性中的“Configuration”修改和设置任务的Watchdog估计时间。

现场检查周期性任务程序扫描时间,程序中周期性任务按照优先等级可分为timeclass1、timeclass2、timeclass3,这3种周期性任务的Watchdog时间初始设定值分别为140、200、600ms,故障处理过程中经过多次修改后的Watchdog时间设定值分别为310、390、1 150ms,任务最大扫描时间分别为310.021、390.017、1 150.101ms。可见,虽然经过多次修改增大Watchdog时间设定值,但任务最大扫描时间仍超过Watchdog设定时间。

3 故障分析与处理

冗余系统中CNBR模块在进行峰值操作(如同步操作)时,需要额外占用CNBR模块CPU的8%左右。CNBR模块需要充足的额外处理时间进行冗余操作,冗余机架中的各个CNBR模块必须确保CPU利用率保持在75%以下,否则会使从机架在切换后无法同步。因此,解决冗余故障首先应考虑降低CNBR模块的CPU利用率,可采取的措施如下:

a. 更改ControlNet网络的网络更新时间(Network Update Time,NUT);

b. 增加用户连接的请求信息包间隔(Requested Packet Interval,RPI);

c. 减少CNBR模块上的连接数量;

d. 减少执行信息指令的数量;

e. 为各冗余机架再添置一个CNBR模块。

前两项措施可通过C网优化实施,且便于实施和验证,后3项措施需更改C网硬件配置或修改程序。

3.1 优化NUT时间

ControlNet的NUT为通过ControlNet网络发送数据的重复时间间隔,用于估算在机架掉电或模块出现故障的情况下,CNBR模块无法与其他节点通信时系统切换所需的时间。通常情况下,延长NUT可降低CNBR模块的CPU利用率,但如果使用过长的NUT,则控制器可能会在切换时与模块断开连接。

使用RSNetWorx工具上载、查看当前C网配置。通过运行RSNetWorx for ControlNet,在线upload网络配置,编辑使能后依次通过选择菜单Network Properties/Network Paramerters修改NUT设定值。

当前系统配置NUT值为系统默认值5ms,可修改值不大于90ms。尝试将系统NUT值增大为当前值的两倍,即10ms,系统提示“exceeded 100% of scheduled network bandwidth”,表示带宽使用率已到达100%而无法修改。将NUT设置为6ms也无法完成优化。

3.2 修改RPI时间

冗余系统中的每个模块需确保RPI不大于375ms。如果使用过大的RPI,则控制器切换时可能会产生扰动。设定值根据计算式RPI=NUT×2n(n=0,1,…,6)进行修改。通过Logix5000在线连接控制器,检查当前系统配置C网NUT值是5ms,在IO Configuration展开已经组态的模块,右键点击适配器选择Properties/Connection,修改RPI设定值,如图2所示。

图2 IO模块RPI设定界面

使用RSNetWorx工具上载机架C网配置,通过NETWORK HEALTH MONITOR扫描系统机架中的IO模块,在线查看当前C网下各IO模块的通信“健康状况”。通过扫描检查发现,C网中的10号节点下3槽1794-OW8模块和11号节点下5槽1794-OW8模块,两个模块通过远程机架的背板与C网的通信连接不稳定。检查两个模块的RPI都是20ms,通过公式修改RPI为40ms。RPI修改后,扫描IO模块通信恢复正常,冗余故障消除。

4 结束语

冗余系统故障是由软、硬件多方面原因造成的,因此在故障分析、处理过程中需要排除主、从控制器的主要故障,观察同步过程中主、从机架CNBR模块和SRM模块的面板信息和指示灯,解析SRM事件日志,针对不同报警信息和故障现象采取相应的故障处理措施。

TH165+.3

B

1000-3932(2017)08-0792-04

2017-01-22,

2017-03-17)

马彦宝(1983-),工程师,从事燃气轮机和压缩机组的自控工作,mayanbao@sohu.com。

猜你喜欢
扫描时间设定值机架
急性缺血性脑卒中溶栓治疗中参数优化MRI的应用有效性和临床指导意义
冷轧镀锌光整机延伸率控制模式的解析与优化
中厚板轧机组合式机架的性能分析
基于有限元法分析的机架装配干涉处理
别忽略它的存在!“意大利新一代架皇”BAS Accordeon(雅歌顿)XL4 2.0发烧机架
人工智能研发新核磁共振以缩短扫描时间
多层螺旋CT肺动脉成像在诊断急诊肺动脉栓塞中的临床价值
急性脑梗死全脑CT灌注成像扫描时间优化
超大型环件轴向轧制组合机架受力分析
西气东输二线人机交互界面的防呆系统