APP下载

基于FlexRay总线的车载安全驱动采集板设计

2024-02-22张昊凡邢东峰石建强陈光武

仪表技术与传感器 2024年1期
关键词:车载继电器总线

张昊凡,邢东峰,石建强,杨 扬,陈光武

1.兰州交通大学光电技术与智能控制教育部重点实验室;2.甘肃省高原交通信息工程及控制重点实验室;3.兰州交通大学自动化与电气工程学院

0 引言

列车车载驱动采集板的安全性、可靠性以及传输速率是列车安全运行的关键,但是随着列车速度的不断提高、列车上电子控制单元的不断增加,对列车车载驱动采集板的安全性、可靠性以及时效性提出了更高的要求。

目前,车载驱动采集板常用的通信总线与车载安全计算机一致,都选择RS485、控制器局域网(controller area network,CAN)、以太网和FlexRay等作为通信总线[1-4]。RS485、CAN等传统通信总线已无法满足车载数据传输要求,并且以太网配置过于复杂。本文选用FlexRay总线作为车载驱动采集板的通信总线,并且针对车载驱动采集板中驱动、采集系统的安全性和可靠性进行了设计研究。

FlexRay总线不仅可以简化通讯系统,还可以提供较高传输速率和高稳定性、可靠性[5-6]。该板卡使用FlexRay作为系统通信总线,弥补了控制总线中总线协议容错性差和传输速率低的缺点[7]。在驱动和采集模块中,采用双核二乘二取二冗余架构,使用动态电路实现驱动的安全输出,利用光耦将采集数据进行安全隔离,提高了驱动采集板功能上的安全性和可靠性。

1 车载安全驱动采集板架构

板卡通信协议采用FlexRay通信,架构采用二乘二取二架构。“二取二”是一种典型的冗余结构,被用来实现故障-安全机制。二取二架构在工控等领域应用广泛,可提升系统可靠性和安全性。该架构由2个独立运行的处理器(CPUA和CPUB)负责相同任务,运算结果进行比较,只有相同时才能输出下一步指令,确保系统安全可靠,避免硬件故障和软件异常导致崩溃或数据错误。可以有效提高系统的可靠性,避免正在运行的CPU发生故障时出现宕机状态[8]。

1.1 FlexRay总线简介

FlexRay总线具有传输速率高、实时性好、可靠性高等优点,目前很多领域都已经成功应用该技术[9-10]。FlexRay总线特点如图1所示。

图1 FlexRay总线特点

1.2 系统实现

本系统采用2个CPU,每个CPU构建一路FlexRay通道。通过这2路FlexRay通道与上级主板通信。车载安全驱动采集板接收和处理外部设备数据,同时处理执行单元采集的数据,并将处理后的数据发送给上级主板。系统架构如图2所示。

该板卡分为采集模块和驱动模块,采集模块负责采集外部继电器节点状态数据,并通过FlexRay总线发送给主板;驱动模块负责接收主板驱动命令,控制外部继电器设备。

1.3 架构安全性设计

架构阶段安全性设计的实现,采用的技术和措施:

1)通道隔离设计:两通道之间采用光耦进行隔离,降低模块与模块之间的干扰;

2)两通道之间的串口数据同步增加安全校验机制;

3)故障-安全设计:该应用采用二取二架构,输入,运算,输出都采用二取二表决架构;

4)采用具有故障安全的电子器件,比如强制导杆式安全继电器等固有故障安全器件;

5)两通道外部输入接口采用动态采集以防止输入信号在设备失效情况下出现“冻结”;

6)采用动态脉冲监测:如监测继电器状态时,输出脉冲串0101信号,若读回0101脉冲信号,则判断该继电器处于吸起状态。

2 车载安全驱动采集板硬件设计

本设计主控芯片选用MC9S12XF512MLM微处理器,控制整个车载安全驱动采集板,是整个板卡稳定运行的基础。

2.1 动态电路设计

动态电路设计利用动态脉冲技术实现安全输出,保证系统异常情况下不向受控设备输出危险信号,避免造成损失。CPU产生动态脉冲,驱动输出通道后的硬件电路,并通过动/静态电平转换,输出静态电平,再通过冗余模块处理,从而驱动继电器电路。动态电路部分如图3所示。

图3 动态电路图

2.2 驱动电路设计

因驱动所需电压较高,选用光电耦合器KAQV214和安全继电器SR4-M组合来对外部引入的高压进行控制。用CPU控制小电流的通断,进而利用继电器进行大电流的通断以此来驱动外部继电器工作。为了实时监控内部电路的状态,通过控制光电耦合器的高低电平来对内部继电器状态进行检查。驱动电路部分如图4所示。

图4 驱动电路图

2.3 采集电路设计

在车载安全驱动采集板中,设计6路采集通道实现对外部继电器节点信息的采集。为了增加安全性,减少电路干扰,简化电路设计,选用TLP521光电耦合器设计开关量采集电路[11]。采集电路部分如图5所示。

图5 采集电路图

光电耦合器可以进行电-光-电的转换,使前端与负载完全隔离。通过采集板后端引入的电源,将端子接入外部继电器的两端,构成一个完整回路。外部继电器节点状态将直接影响对应光电耦合器前端状态,前端状态的改变将直接影响后端电路电平状态。若光电耦合器导通,则反馈给CPU低电平;若光电耦合器断开,则反馈给CPU高电平。通过这种方式来采集外部继电器工作状态。

2.4 数据通信传输设计

FlexRay总线一个通信周期包括静态部分、动态部分、符号窗口、网络空闲时间4个部分。静态部分采用TDMA方法,用于发送频率高且重要性高的数据[12];动态部分常用于发送一些相对随机的数据。采用TJA1080作为总线收发器,该收发器为控制器和FlexRay总线物理层之间提供了一个稳定且抗干扰能力强的接口。FlexRay通信系统结构如图6所示。

图6 FlexRay通信系统结构

FlexRay每个数据帧包括帧头、有效负载数据段和帧尾3个部分。帧头由5字节构成;有效负载数据段内包含0~254字节的数据,且为偶数个数据字节;帧尾只有一个24位的帧CRC[13-14],用于校验起始段和净荷段数据是否正确。有效负载段编帧的方式分为静态帧和动态帧。静态帧采用时分多址技术(TDMA)保证了数据传输的实时性[15]。静态帧编码如图7所示。动态帧采用了灵活时分多址技术(FTDMA)实现事件触发,事件触发在一定程度上会存在延迟情况,无法达到系统实时性的要求。动态帧编码如图8所示。

图7 静态帧编码

图8 动态帧编码

FlexRay通信协议规定,静态段的时槽包括APO、数据帧本体、通信空闲CID 3个部分[16]。假设在FlexRay通信中,传输速率位时间为α,静态段中时隙消息传输时间为T,传输负载数据的长度为N字节,根据协议计算静态段下的传输时间如下:

T=α[2APO+TSS+FSS+(5+N+3)×(8+BSS)+FES+CID]

(1)

式中:APO为动作点偏移;TSS为传输起始序列;FSS为帧起始序列;N为传输数据长度;BSS为字节开始序列;FES为帧结束序列;CID为通信空闲序列。

取TSS为10位,通信空闲时间段的界定符CID为11位,APO在时隙的开始与结尾处,代入以上帧序列位数,有:

T=α[2APO+10+1+(5+N+3)×(8+2)+2+11]

(2)

T=α(104+10N+2APO)

(3)

由以上计算结果可知,在静态段通信模式中,每个节点都有特定的收发时序,并且传输时间被规定,这确保了通信的稳定性和数据传输的可靠性,所以本设计选用静态帧编码。

3 软件设计

3.1 FlexRay通信设计

在FlexRay协议软件设计中,首先对CPU进行初始化,包括完成时钟配置、倍频配置以及启动锁相环,同时完成CPU外围设备配置、中断及定时器等设置。其次,MC9S12XF512内部嵌有通信控制器,因此只需要配置内部寄存器,使FlexRay通信得以启用,包括配置FlexRay引擎、消息缓冲器大小等。FlexRay通信流程如图9所示。

图9 FlexRay通信流程图

在数据的发送和接收过程中,使用中断方式进行通信:当发送时隙到来时,将需要发送的数据写入消息缓冲器,并在写入成功后把数据发送出去;当接收时隙到来时,通过消息缓冲器的中断判断,对数据进行接收,从而实现FlexRay网络数据的传输。

3.2 板卡功能设计

设计安全驱动采集板实现双线程方式,采用2个CPU独立运行,避免任务间的轮转、抢占等调度机制。此外,通过外部硬件中断产生统一的时钟,触发软件各项功能的执行。驱动功能设计如图10所示。采集功能设计如图11所示。

图10 驱动功能设计

图11 采集功能设计

安全驱动采集板功能流程:

1)功能初始化:初始化各项配置数据,与上级主板取得通信。

2)接收主板发送的驱动数据:主板系统每周期会向安全驱动采集板发送一次驱动命令,命令包括驱动两路继电器的系别、工作状态、系统周期值等。CPUA和CPUB接收到主板发送的命令数据后,通过串口进行双CPU二取二比较,以保证数据安全。待数据校验无误后,CPUA和CPUB对校验无误的数据进行解析,并通过外围电路进行执行。

3)采集外部6路继电器节点状态:CPUA和CPUB实时采集外部6路继电器的节点状态信息。

4)安全关键数据二取二比较:CPUA和CPUB实时将采集到的数据和驱动命令数据交换,进行双CPU二取二比较。比较失败时,通过FlexRay总线向主板发送故障警报,再执行故障安全处理。此外,CPUA和CPUB还需通过串口实时比对系统运行状态数据,确保2个CPU的时钟和动作信息等保持同步。

5)驱动继电器:CPUA和CPUB通过FlexRay总线从主板上接收驱动命令,驱动继电器吸起或者落下。如果CPUA和CPUB在规定的周期内未收到驱动命令,应使继电器处于安全状态即落下状态。

6)发送采集数据:2颗CPU将采集到的外部6路继电器的节点状态数据进行比对,确认数据安全后,按照安全通信协议打包,通过FlexRay总线发送给上级主板。

7)自检及故障处理:软件实时对硬件电路部分进行自检,当出现故障时驱动继电器落下,并向主板发出故障警报,完成故障安全处理。

4 系统测试

4.1 测试平台搭建

在构建的测试电路中,使用开关的开闭来模拟外部继电器的工作状态,通过LED灯来表示采集到的外部继电器的工作状态。测试电路上的2颗LED灯来模拟驱动外部继电器的工作状态。使用XF512多功能开发板来测试系统的FlexRay通信模块功能。测试平台如图12所示。

图12 测试平台

4.2 功能测试

经测试,CPUA和CPUB的FlexRay模块可以正常收发数据,通信波形图分别如图13、图14所示。

图13 CPUA FlexRay通信波形图

图14 CPUB FlexRay通信波形

驱动模块可以接收FlexRay总线上的驱动命令,并且可以正常驱动外部继电器动作。采集模块上电后可以实时向FlexRay总线上发送采集到的状态信息。当CPUA和CPUB收到不一致的波形,如图15所示时,采集板上传故障码,并停止工作。

图15 CPUA、B间通信波形对比图

本设计采用的FlexRay总线,提高了系统的传输速率,“二取二”冗余架构,在一定程度上增强了系统的安全性和可靠性。

5 结束语

本设计基于FlexRay总线设计了一种列车车载安全驱动采集板,FlexRay协议解决了采集数据传输慢、驱动命令发送不及时的问题。在系统架构上采用了二乘二取二安全架构,从系统层面上提高了板卡的安全性和可靠性。同时分别给驱动模块和采集模块设计了动态输出和光耦隔离电路,从硬件层面提高了各模块的可靠性。软件层面上,使用了动态检测技术,可以做到对自身器件故障的实时监测,实现了故障-安全导向系统。本设计采用了模块的思想,简化了电路,降低了使用过程中的故障率。本设计相比于传统的车载驱动采集板,在安全性、可靠性以及传输速率上都得到了很大提升。

猜你喜欢

车载继电器总线
便携式继电器测试台的研制和应用
高速磁浮车载运行控制系统综述
电气工程及其自动化控制系统中继电器的应用
基于PCI Express总线的xHC与FPGA的直接通信
机载飞控1553B总线转以太网总线设计
智能互联势不可挡 车载存储需求爆发
继电器在电气工程及其自动化低压电器中的作用
基于ZVS-PWM的车载隔离DC-DC的研究
多通道ARINC429总线检查仪
泓格科技继电器输出模块-87061PW