基于冗余TTCAN的核电站报警窗改进设计

2020-03-31 11:43俞植馨
自动化仪表 2020年3期
关键词:实时性核电站总线

俞植馨,李 苏

(山东大学机械工程学院,山东 济南 250100)

0 引言

安全是核电站的首要原则。报警系统是核电站安全系统的重要组成部分,是核电站主控室中重要的人机接口,能提供监视核电站各组分工况需要的所有信息。一旦有设备偏离了正常工况,报警系统就会生成相应的报警信息,并将其传递至核电仪控系统;同时,报警系统将产生光信号(如报警灯)或声信号(如报警喇叭)来提示主控室内的操纵员,使其能及时获悉所发生报警的区域和类别,并迅速采取相应的纠正措施。报警窗是报警系统的重要组成部分,其通信模块的可靠性和实时性十分关键[1-2]。目前,国内核电站的报警窗普遍为国外品牌,存在设备老化、原型号停产导致备件不足等问题。此外,随着核电数字化仪控系统的发展以及现场总线技术在核电分散控制系统(distribated control system,DCS)中的应用[3],对报警系统的可靠性和实时性也提出了更高的要求。因此,为打破国外技术垄断、实现设备国产化替代升级,对核电站主控室报警窗进行改进研究具有重大意义。其中,通信方式的改进尤其关键。

基于时间触发的控制器局域网络(time triggered controller area network,TTCAN)总线是Bosch公司在传统控制器局域网络(controller area network,CAN)总线基础上开发的一种基于时间触发的现场总线。TTCAN继承了CAN总线接口简单、抗干扰性强、数据传输速度高的特点。同时,TTCAN采用了时间触发机制,在全局系统时间下使用系统矩阵来实现节点的同步通信调度,解决了CAN在重负载情况下的数据传输时延问题。这提高了TTCAN的可预测性、可靠性和实时性,使其能适用于对安全要求较高的核电站场景[4-5]。本文在秦山三期核电站空气闸门就地控制盘报警窗研发项目的基础上,主要阐述报警窗通信模块的基于冗余TTCAN的改进设计。

1 报警窗简介

本文设计的报警窗是根据秦山三期核电站空气闸门报警窗实际工作情况以及改进升级需求而研发的一种高性能声光报警设备。它的主要作用是通过声音和指示灯来通报异常现象。异常现象通常通过现场触点接收。异常现象来源通常为压力开关、液位开关、设备电源等。报警窗可接收数字报警信号、干接点信号和24~125 VDC的湿接点信号。现场触点可以通过公共电源供电(干接点)或者独立电源供电(湿接点)。其中:干接点一般用于无源开关或继电器形式的报警,而湿接点一般用于电源形式的报警。

本报警窗采用分布式和模块化的系统架构设计,主要组成部分包括电源模块、报警数据采集模块、微控制单元(micro control unit,MCU)报警信号处理模块、通信模块、事故顺序记录(sequence of events,SOE)模块和报警显示模块。现场报警信号由报警数据采集模块进行采集后通过通信模块冗余TTCAN总线传递到MCU,经处理后控制报警窗显示模块进行报警。分布式和模块化设计保证了报警窗的高可靠性、高可拓展性和高可维护性。

2 基于冗余TTCAN的通信设计

TTCAN的系统矩阵由多个基本循环连接组成。TTCAN基本循环如图1所示。一个基本循环包括参考消息、专用时间窗、仲裁时间窗和空闲时间窗[5-6]。在专用时间窗内,总线中消息的自动重发功能是被禁止使用的,只能发送一次消息。消息传输易受周围环境因素影响,导致消息错误失效,特别是在核电站复杂恶劣的工况下,更易引发系统故障。以采用铜线传输(误码率约为10-6)的单通道现场总线为例,估算误码数:设总线利用率为80%,传输速率为600 kbit/s,那么1 h总线所产生的误码数约为1 728 bit,即每2.08 s将产生一位误码。可见,单总线传输可能导致大量数据丢失。而采用多总线冗余TTCAN的方案则可以大大降低误码率,确保数据消息的正确发送和接收。

图1 TTCAN基本循环图Fig.1 TTCAN basic cycle

2.1 TTCAN冗余方式

目前,TTCAN的冗余方式主要有两种[7]。①热备冗余:以一条总线为主通道,另一条作为备用通道,若主通道出错,则切换为备用通道工作的冗余方式。②普通双通道冗余:来自节点MCU的同一消息被两路总线控制器接收,即两条TTCAN通道同时收发消息,接收节点的MCU只要接收到任意一路有效消息,则发送消息成功。

热备冗余方式有明显的缺陷。由于在TTCAN的专用时间窗中不允许消息重发,所以从错误消息(如报警消息)认定累积到发生故障关闭总线需要较长时间。特别是在恶劣的工况下发生严重故障时,较难确保及时切换至备用总线。因为频繁切换总线会降低传输效率,不能在每次出现错误消息时都立刻切换总线。普通双通道冗余虽然针对热备冗余改进了总线切换方面的不足,但缺点是两组总线的收发同步特别是全局的时钟同步难以保证。

本文在普通双通道冗余的基础上,提出一种新的冗余方式。冗余TTCAN通信架构如图2所示。采用带有两路CAN总线控制器的MCU,双路TTCAN通道同时传输消息,接收节点只要接收到任意一路有效消息,则发送消息成功。这样的冗余方式在保障总线有较高传输效率的同时,能较大限度地确保总线的收发同步,提高数据收发的实时性。与此同时,因为双路总线在物理结构上的完全分离,可以使由硬件引入的串扰音干扰得到控制。

图2 冗余TTCAN通信架构图Fig.2 The communication architecture of redundancy TTCAN

2.2 冗余TTCAN硬件设计

由标准CAN衍生而来的TTCAN在数据链路层和物理层与CAN网络总线具有很高的兼容性,可以使用CAN的总线框架和总线收发器[5]。本文设计的报警窗(采用双总线冗余TTCAN方案,将报警窗设计为TTCAN总线的时间主节点。报警窗硬件架构如图3所示。采用MCU与CAN控制器、收发器结合的方法,实现双路冗余TTCAN总线的硬件设计。MCU采用STM32F107芯片。该芯片集成了两个CAN总线控制器,而CAN总线收发器采用Maxim公司的MAX14878隔离型CAN收发器。冗余架构中两路总线的总线控制器、总线收发器以及电缆均相互独立,以保证数据链路层、物理层和应用层的全面冗余。报警窗通过TTCAN总线接收报警信息后,对报警信息进行相应处理并存入外部Flash(如声报警、光报警),也可通过上位机读取带有时间戳的报警信息。

TTCAN对各个节点进行漂移补偿,以确保能够为各个节点提供一个精确、一致的全局时间。这就需要一个高精度的全局时钟。本文设计的冗余TTCAN从全球定位系统(global positioning system,GPS)模块中获取精准的时钟。其中,采用了高精度晶振来减小GPS秒脉冲和本地晶振的误差率。

图3 报警窗硬件架构图Fig.3 The hardware architecture of the alarm window

2.3 冗余TTCAN软件设计

报警窗以STM32F107芯片为MCU。STM32的固件库函数已经提供了众多CAN总线操作相关的应用程序编程接口(application programming interface,API)。本文基于这些库函数进行了冗余TTCAN的节点软件开发[8-10]。

本文以报警窗为TTCAN总线的主节点,各报警模块为从节点,时间主机以全局时间为基准,调度表生成后下发至各节点。调度表的生成基于均匀加载算法[11-12]。该系统矩阵算法能保证TTCAN在包含更多不同子系统的网络中能实现周期长度不一的消息调度的实时性,并提高总线利用率。此外,由于报警窗接收到的报警信息也可能被认定为错误消息,为了确保报警信息不会丢失,调度表设定错误消息在仲裁窗进行重发。TTCAN节点工作流程如图4所示。

由于本文设计中的两路总线互为冗余相互独立,在此仅分析了其中一个通道的消息发送流程。单通道消息发送流程如图5所示。

TTCAN的冗余管理策略流程如图6所示。节点将先后接收到两条通道的消息,按照TTCAN的系统矩阵,每个基本循环以参考消息为起点,消息发送节点先将打包好的消息从CAN1、CAN2两条通道发送,消息接收节点则等待两通道的消息中断信息。

图4 TTCAN节点工作流程图Fig.4 The work flowchart of TTCAN nodes

图5 单通道消息发送流程图Fig.5 The flowchart of single channel message delivery

先判定CAN1通道是否收到了收到消息且消息有效。若收到有效消息,则计数器COUNT1计数加1,然后将消息进行报警、存储等处理;若未收到消息或消息无效,则进行判定CAN2通道是否收到消息且消息有效。同理,若CAN2通道收到有效消息,COUNT2计数加1,之后将两计数器的值进行大小比较:若COUNT>COUNT2,说明CAN2通道有漏接消息或收到无效消息,CAN2错误计数器加1,COUNT1和COUNT2复位清零,将消息舍弃;若COUNT1

图6 冗余管理策略流程图Fig.6 The flowchart of redundancy management strategy

3 测试验证

本文的报警窗通信模块设计中,设置总线通信速率为512 kbit/s,每条通道消息数据帧最大为150 bit,由此可计算出理论上的消息传输时间约为0.3 ms,理论上每秒可传输三千余条消息。

测试采用DAQ-110数字I/O模块模拟现场报警信号,接入8个报警数据采集模块,对报警窗设备的冗余TTCAN通信功能进行长时间大数据量的测试。报警窗使用RS-232与计算机连接,使用上位机软件读取测试数据。在一个测试循环中,8个数据报警采集模块依次发送报警信号,再依次解除报警信号,产生8条报警信息,通过TTCAN传输至报警窗,而后重复此循环。每组测试时长30 min,发送数据20余万条,共进行了30组测试。测试结果显示,平均每五组测试出现一次总线切换,并未出现丢帧现象,验证了本文所设计的通信方式具有较高的可靠性。同时,在一致的试验条件下,将第1节中所述的两种现有的TTCAN冗余方式与本文设计的冗余方式进行了对比测试。不同冗余方式的误码率对比如表1所示。

表1 不同冗余方式的误码率对比 Tab.1 The comparison of bit error rates of different redundancy modes

测试结果表明,本文设计的冗余方式的通信误码率最低,保证了报警窗设备数据传输具有较高的可靠性和实时性。

4 结论

TTCAN总线具有实时性高、可预测性好、抗干扰性强的特点,适用于核电站安全场景。本文对核电站报警窗的通信模块进行了改进设计,提出一种新型双路传输的TTCAN冗余方式与冗余管理策略,提升了报警窗数据传输的可靠性和实时性。本文的报警窗改进设计是TTCAN应用于核电仪控系统和报警系统的一次积极尝试,对核电装备国产化升级改造也具有一定的借鉴意义。鉴于核电站恶劣复杂的现场环境,包括报警系统在内的仪控系统子设备、子系统种类繁多,报警窗在提升抗干扰性、软硬件兼容性、优化系统矩阵算法等方面仍需要进行进一步的研究。

猜你喜欢
实时性核电站总线
如果离我不远的核电站出现泄漏该怎么办
核电站护卫队
核电站护卫队
一种基于CAN总线的误码测试方法
核电站的“神经中枢”
航空电子AFDX与AVB传输实时性抗干扰对比
计算机控制系统实时性的提高策略
可编程控制器的实时处理器的研究
CAN总线并发通信时下位机应用软件设计
基于CAN总线的水下通信系统设计