基于三取二冗余容错架构的数字逻辑单元设计
2024-05-07尹智勇都业林赵春燕
尹智勇,都业林,张 哲,赵春燕,黄 涛
(1.中车大连机车车辆有限公司,辽宁 大连 116022;2.广州运达智能科技有限公司,广东 广州 510330)
0 引言
国内轨道车辆控制系统主要通过硬线电路和网络通信实现车辆逻辑控制、状态监视和故障诊断功能[1]。经多年实际应用验证,该系统框架虽然比较可靠,但是电路中使用了大量的继电器。继电器本身受其机械触点动作次数及性能的限制,部分动作频繁的器件容易发生故障,进而影响车辆的正常运行[2]。为进一步保障车辆安全、可靠和高效运行,必须对车辆控制系统进行选型和开发,并设计可靠性、安全性、可用性、维护性均较强且故障时导向安全的嵌入式车载计算机系统。
目前,已有学者对嵌入式车载计算机系统进行了研究。数字逻辑单元(digital logic unit,DLU)是专为轨道车辆逻辑控制而设计的1套嵌入式车载计算机系统。DLU采用计算机及网络技术,通过光耦和场效应管等无触点电路替代车辆传统的中间继电器、时间继电器等有触点控制电路。DLU主要由输入/输出(input/output,I/O)控制单元、主控制器和网络控制器构成。DLU采集司机控制器、按键开关组、微动开关、接触器辅助触点等开关量信号,经逻辑运算后完成指定的时序控制,以实现车辆逻辑控制、故障诊断及综合保护等功能[3-5]。DLU可简化车辆电路、提升车辆智能化水平和可靠性指标,是现阶段轨道交通车辆控制技术革新的结果。文献[6]介绍了冗余可编程控制器的总体架构和硬件设计,通过软件编程实现双控制器的冗余切换,提升了控制系统的可靠性和高效性。文献[7]分析了基于现场可编程门阵列(field programmable gate array,FPGA)的高速冗余I/O总线,采用FPGA与多芯核结构芯片相结合的嵌入式平台,保证了系统的实时性、可靠性和稳定性。文献[8]~文献[10]介绍了双冗余I/O模块的切换方法。I/O模块由2组相同且完全独立的控制系统构成,彼此互为热备。某个系统发生局部故障时,该系统降级至单系工作,安全性仅能达到安全完整性等级2级。文献[11]介绍了二乘二取二架构控制单元的基本结构和控制算法,优化了系统的冗余架构,提升了关键模块的冗余切换方式。二乘二取二架构单系发生局部故障时,系统降级至双冗余机制继续工作,安全性可达到安全完整性等级4级。但该架构的I/O通道较少,必须增加主机数量来满足I/O通道数量需求。这会造成控制单元资源利用率低下。
本文在对多种冗余设计方案进行分析和研究的基础上,针对列车复杂运行环境以及现有车载计算机系统的运用情况,提出了更高可靠性、高可用性和高安全性的三取二冗余容错技术,并设计了相应的模块化硬件和独立冗余容错的软件框架。该设计使各模块形成良好的互补关系,可以剔除系统中的异常数据,从而最大限度保障系统资源可用性、提高DLU的可用性和安全性。
1 DLU架构设计
DLU是集高速数字信号处理、开关驱动、网络通信以及分布式控制技术于一体的逻辑控制装置。装置采取三取二的控制策略,具有A、B、C这3套软件、硬件相同的输入采集、逻辑处理和输出驱动模块。各模块独立工作,互不干扰。当某个模块异常或故障时,装置以“多数计算机通道的运行是正确的”为基础,根据“少数服从多数”的纠错原理,剔除系统中的异常数据,以保证DLU的正常运行。
当某组的某个功能模块发生故障时,故障功能模块自动隔离,使单点故障不会影响装置的正常运行。故障包括供电故障、生命信号丢失、输入故障、输出故障等。这切实降低了车辆运行故障和风险,提高了运营保障能力。三取二冗余容错架构设计如图1所示。
图1 三取二冗余容错架构设计图
2 DLU关键硬件设计
DLU的硬件采用模块化设计,主要包含4种功能板卡,分别为电源板、通信板、主控板、I/O板。不同功能板卡根据具体工况和失效模式选择合适的备份切换方式。
各功能板卡间通过背板2路独立且冗余的控制局域网总线(controller area network,CAN)进行数据交互。
DLU硬件框架如图2所示。
图2 DLU硬件框架图
2.1 电源板硬件设计
电源板内置独立的电源电路。外部电源经浪涌防护电路和电磁滤波电路有效去除供电端的共模干扰后分为2路。其中:1路通过电源模块变换为5 V,并联输出从而为各功能板卡供电;1路直接连接到背板,为输出通道提供工作电源。所选用的金升阳75 W电源模块,输入电压范围为43~160 V,输出调压后为5 V。输入与输出进行了电气隔离,同时具有输入欠压保护、输出过压保护、输出短路保护、过载保护、过温保护、电磁隔离、自检测等功能。
2.2 通信板硬件设计
通信板主要包括多功能车辆总线(multifunction vehicle bus,MVB)板和以太网总线(Ethernet,ETH)板。通信板不参与控制,只负责通信数据的传输、监听和反馈。MVB板内置2路MVB通信介质电路,同时配备1个FPGA芯片用于逻辑运算。ETH板内置1个ETH控制器,用于实现与外部设备的以太网通信功能。
2.3 主控板硬件设计
主控板是DLU运行的核心,内置芯片电路、串口电路、通信电路及供电转换电路。主芯片采用高性能芯片来实现多任务实时计算与各种安全冗余功能。处理器的整数计算能力为210×100万条指令/s。 主芯片外扩1个系统随机存取存储器(random access memory,RAM),采用并行接口的静态存储器芯片,用于动态高速数据的分配。主芯片同时还外扩2个闪存芯片,采用串行外设接口,用于故障数据及过程数据的记录和存储。主控板内置CAN控制器,通过2路冗余的CAN通信电路与所有功能板卡进行数据交互。维护接口采用2路串口功能电路,分别用于固件升级和应用程序更新调试,以及日志下载和数据维护。主控板内置硬件看门狗电路,当板卡运行出现异常时可复位重启系统,执行故障导向安全原则。
2.4 I/O板硬件设计
I/O板内置输入电路、微处理器电路和输出电路。输入电路采用光耦隔离的方式实时采集110 V输入信号。输出电路采用金属氧化物半导体场效应晶体管(metal oxide semiconductor field effect transistor,MOSFET)的方式实时输出110 V信号,以驱动外部负载。输入电路将外部电源电平作稳压、滤波、隔离处理后,转化为A、B、C这3组板卡微处理器使用的逻辑电平,由I/O板对3组输入采集值进行三取二表决。表决结果通过内部CAN通信电路传递至主控板,再由主控板进行逻辑运算,并对运算结果进行三取二表决。表决结果用于驱动MOSFET输出110 V信号。每张I/O板内置2个MOSFET。输出电路由不同组板卡的2个MOSFET以先串联再并联的方式构成1个输出通道。输入电路有效低电平为0~30 V、有效高电平为77~137.5 V;输出电路有效低电平为0~10 V、有效高电平为77~137.5 V。
输入通道内置自诊断电路,通过反向隔离器与输入电路连接,采用高频脉冲激励的方式实时动态检测输入通道的状态,为冗余切换提供决策依据。输出通道同样内置自诊断电路,通过反向隔离器与电平转换电路连接,将输出电平转化为逻辑电平,并通过内部CAN通信电路传递至主控板,以动态检测输出通道的状态,从而实现MOSFET的故障诊断功能,以及输出通道的过流、短路保护功能。
3 DLU软件设计
DLU软件架构采用分层、模块化设计。DLU的底层为硬件驱动描述与操作接口层,采用STM32F4xx标准外设驱动库来实现功能。基于优先级的抢占式多任务实时操作系统作为任务调度与任务间同步的载体,包含了实时内核、任务管理、时钟管理、任务间通信同步(信号量、消息队列)和内存管理等功能。该系统可以使各任务独立工作、互不干涉,以实现准时、精准执行。这可以使实时应用程序的设计和应用更加容易,并且大幅简化应用程序的设计过程[12]。用户端应用软件开发环境采用符合IEC 61131标准的FlexiSafe编程系统。软件功能要求符合IEC 61508的安全完整性等级3级。这实现了控制逻辑的二次开发及图形化编程,并且具备逻辑处理、故障定位及切换、日志记录和数据离线分析等功能。DLU数据诊断软件基于SQLite对上位机调试软件信号作出响应,以实现故障下载和记录上传,并能够以图表方式分析和查看故障数据。
DLU软件框架如图3所示。
图3 DLU软件框架图
在图3的基础上,DLU内部构建CAN通信模块以及各应用模块。CAN通信采用特别的策略对数据帧进行处理,包括数据位填充、数据块编码、循环冗余检验等,以提高数据传输的准确性。采用非破坏性仲裁机制筛选当前发送节点,可以在提高总线使用效率的同时确保可靠性。
CAN通信框架如图4所示。
图4 CAN通信框架图
3.1 通信板软件设计
通信板负责DLU内外部的数据信息共享与交流。MVB板采用主帧+从帧的数据传输包通信方式,根据预先设置的端口协议控制端口数据的传输,并在板卡接收到数据后作出响应。ETH板采用传输控制协议(transmission control protocol,TCP)/网际协议(Internet protocol,IP)通信方式,将逻辑程序烧录至运行系统,以读取、下载日志记录。
3.2 主控板软件设计
主控板主要负责系统的核心业务,是数据的汇总处理与分发中心,拥有系统的最高控制权限,以实现逻辑的实时运算、板卡管理、故障诊断、安全隔离、通信调度、日志记录以及调试维护等功能。
每块主控板通过内网CAN获取I/O板A、B、C组所有的数字量输入信号。eCLR内核根据输入信号进行逻辑运算,生成输出指令数据,并将数据通过内网CAN发送至目标I/O板卡。主控板具有配置功能及网络管理功能,对各功能板卡的软件版本进行一致性管理。主控板具有故障诊断功能,通过上电自诊断,可检测判断板类型、外扩RAM、闪存是否正常。I/O板通过内网CAN将工作状态数据上传至主控板。主控板将数据存储至板载闪存。主控板为安全板卡。当板类型识别错误或外扩RAM自检失败时,主控板会锁死,不再发送任何数据。
3.3 I/O板软件设计
I/O板卡负责输入信号采集处理和输出信号驱动处理,可实时采集12路输入信号状态和驱动6路输出信号。3个输入通道同步、独立采集同一输入信号,通过具备滞回特性的滑动滤波器算法有效滤除列车抖动等产生的毫秒级干扰信号。同组的3个冗余输入模块根据输入通道自检状态和采集数据,对输入采集值进行软件三取二运算,以获得有效的输入信号[13]。输入环节采用3-2-1-0的降级处理方式,即单组或2组输入故障不会影响DLU的逻辑控制运行。如3组输入均故障,则DLU会进入安全导向模式,控制MOSFET全部关断,不再外发输出指令。
输入表决策略如表1所示。
表1 输入表决策略
输出环节采用3-2-0的降级处理方式,即:单组输出故障不会影响DLU的逻辑控制运行;2组或3组输出故障时,DLU会进入安全导向。输出表决策略采用硬件三取二表决电路。输出模块A控制MOSFET A1和A2。输出模块B控制MOSFET B1和B2。输出模块C控制MOSFET C1和C2。通过背板绕接:A1和B2串联形成输出支路1;B1和C2串联形成输出支路2;C1和A2串联形成输出支路3。输出支路1~输出支路3并接。输出等效表达式为:
O=a×c′+b×a′+c×b′
(1)
式中:a为晶体管A1的数字开关量;b为晶体管B1的数字开关量;c为晶体管C1的数字开关量;a′为晶体管A2的数字开关量;b′为晶体管B2的数字开关量;c′为晶体管C2的数字开关量。
当存在2张板的MOSFET闭合时,输出通道导通,如A上C下形成通路。若某个MOSFET发生故障时,相应支路输出能力丧失,由另外2 条支路决定该通道的输出状态。例如,当MOSFET B1发生故障时,B1、A2组成的支路丧失输出能力。该通道的输出等效表达式变为:
O′=a×c′+c×b′
(2)
I/O板具备故障自诊断能力,通过上电自检和周期比对,能够诊断板类型、CAN网络、输入通道和输出通道故障等状态。I/O板为安全板卡。当I/O板卡识别自身掉线时,则会封锁输出,即所有的输出控制都为低电平。
4 不同架构失效模式对比分析
本文基于双冗余、二乘二取二和三取二架构DLU,从电源电路、运算电路、输入电路和输出电路等方面进行失效模式对比分析。
4.1 可用性
相较于二乘二取二和双冗余架构,三取二架构的每个环节均增加了系统容错能力,以最大化避免外部电磁环境、电压波动异常等导致的系统失效,从而保障了车辆控制的稳定性和运营的安全性。
在电源、输入、输出环节,三取二架构比二乘二取二、双冗余架构多出一重冗余,即使在输入、输出2点故障情况下,三取二架构仍能保证系统输出的稳定性。其可用性更高。输出在3点故障情况下,三取二架构存在50%的可用性。
在逻辑运算环节,二乘二取二架构比三取二、双冗余架构多出半重冗余,即在逻辑运算2点故障情况下,二乘二取二架构存在50%的可用性。
3种架构失效模式对比如表2所示。
表2 3种架构失效模式对比
4.2 安全性
三取二和二乘二取二架构在输入、逻辑运算、输出环节均采用相应表决结构。只有不少于2个信号一致时,相关结果才有效。这保证了逻辑控制的高可靠性和高安全性。在安全方面,三取二架构设计可达到安全完整性等级4级,保证了系统在极端环境下的安全导向运行高于双冗余架构DLU。
5 结论
本文首先以冗余容错技术的DLU作为研究对象,对系统架构、工作原理、硬件设计、软件算法及故障诊断进行研究。然后,本文通过检测外部的输入电平,在网络通信安全措施下,根据三取二的表决策略及逻辑单元内部电路的原理对电源模块、信号采集模块、信号输出模块和处理器模块进行了调整与改进,并构建了系统的功能逻辑。最后,本文通过可用性和安全性这2个方面的综合对比分析,验证了DLU在正常运行下基本功能的实现和在失效模式下对系统运行保护的冗余切换功能,确保基于三取二冗余容错设计的DLU在功能上的完整性和可靠性。随着控制系统融合冗余架构技术的发展,三取二冗余容错架构DLU已逐步得到推广应用。尤其是在全自动无人驾驶车辆上,高可靠性、高可用性、高安全性架构DLU的应用成为必然趋势。通过DLU在轨道交通车辆控制系统中的应用,为传统控制技术升级探明了新方向,将推动构建更安全、更高效、更节能、更经济的融合控制系统,进而打造一流的轨道交通车辆控制系统平台。