高安全可靠性车载余度异构总线网络研究
2018-02-05陈曦连小珉
陈曦 连小珉
(清华大学,北京 100084)
1 前言
随着汽车电子化程度的不断提高,出现了诸如线控转向、线控制动、电子节气门等电子线控系统[1]。然而,电子系统存在电信号传输可靠性差等安全可靠性问题。针对此问题,目前主要采用余度系统来提高电子系统的安全可靠性[2-4]。同时,车载网络是汽车电子系统唯一的数据和控制命令传输通道。一旦通信网络失效,将会带来严重的行车安全隐患,尤其是对于涉及转向、制动等功能的关键系统。因此,解决采用余度结构的汽车关键电子系统通信网络的安全可靠性问题具有十分重要的意义。
目前,国内外学者针对高安全可靠性车载网络做了一些研究工作。在网络架构设计方面,美国凯特林大学Dr.Juan R.Pimentel[5]提出了基于冗余CAN总线的用于线控转向系统的硬件结构;法国高等航空与汽车制造学校的Khaled Chaaban[6]提出了冗余FlexRay总线构成的具有容错特性的汽车线控转向系统;上海理工大学陈兴隆[[77]]给出了将FlexRay总线作为具有容错功能的线控制动系统通信网络的方案。虽然冗余CAN总线或者FlexRay总线提供了备份的硬件数据通道,但是由于双通道均采用同一种总线,具有相同的工作机制,故存在共因故障导致车载网络系统失效的问题。
在网络数据传输和仲裁方面,吉林大学的何磊[8]提出了针对汽车线控转向系统的双余度FlexRay网络;西北工业大学的吴建军[9]提出了针对无人飞行器的二余度CAN网络。他们都是利用主网络和备用网络切换进行故障容纳,但是由于备用通道数据长时间不使用,网络数据处于冷备份状态,在需要进行总线通道切换时,存在切换失效的问题。
针对存在的这些问题,本文提出了一种高安全可靠性车载余度异构总线网络,实现了“故障-工作-安全-预警”的高安全可靠性。
2 高安全可靠性车载网络架构
高安全可靠性车载网络由两路工作机制不相同的数据总线构成,即余度异构总线网络,网络上挂接的是余度异构总线网络通信节点。在正常工作情况下,两路数据总线共同进行数据传输,互为数据传输热备份,当一路数据总线发生故障时,另一路数据总线仍能正常进行数据传输,不对传输结果造成影响,可以保证通信的安全可靠。最简余度异构总线网络系统拓扑结构如图1所示。
图1 最简余度异构总线网络系统拓扑结构
最简余度异构总线网络N可以表示为:
式中,N1和N2为余度异构总线网络通信节点;NG为余度转换网关节点;B1和B2为异构总线通道。
余度异构总线网络通信节点N1由总线网络单节点C11和 C12构成;N2由总线网络单节点C21和 C22构成,C11、C12、C21和C22具有完全相同的硬件结构。余度转换网关节点NG对内连接余度异构总线网络,对外连接车辆CAN总线,是余度异构总线网络与车辆CAN总线的信息交互接口。
2.1 余度异构总线网络
时间触发型的FlexRay总线是一种安全可靠性高、容错性好的通讯总线,特别适用于X-by-Wire系统。FlexRay总线本身具有冗余的通道[[1100]],可以用于数据备份传输,但是经过研究发现,虽然FlexRay控制模块具有双通道结构,但是由于模块中的时间控制单元(TCU)以及序列控制(SEQ)等部分都是公用的,A、B两个通道并不完全独立,因此存在某一故障使得FlexRay双通道均失效的可能,所以FlexRay双通道并不适用于高安全可靠性车载网络。CAN总线是汽车内常用的事件触发型的通信总线,其与FlexRay具有不同的工作机制,硬件也彼此独立,因此本文提出的高安全可靠性车载网络选择了FlexRay和CAN总线构成的余度异构总线网络。
2.2 余度异构总线网络通信节点结构
以余度异构总线网络通信节点N1中总线网络单节点C11为例,其硬件结构如图2所示。
图2 总线网络单节点硬件结构
总线网络单节点C11可以表示为:
式中,M11表示为通信控制器;T/R1为FlexRay总线收发器,连接到余度异构总线网络FlexRay通道BP和BM上;T/R2为CAN总线收发器,连接到余度异构总线网络CAN通道CANH和CANL上。
余度异构总线网络通信节点由硬件结构相同的2个总线网络单节点构成。
3 余度异构总线网络数据传输与仲裁
余度异构总线网络不仅在硬件架构上采用了余度异构的高安全可靠性总线结构,在网络数据传输与仲裁方面也采用了高安全可靠性的热备份数据传输和交叉匹配仲裁方法。
3.1 余度异构总线网络双通道热备份数据传输
根据余度异构总线网络的特点,将网络数据传输分为2类:余度异构总线网络内部单节点之间的通信,即点内数据内传;余度异构总线网络通信节点之间的通信,即点间数据外传。
3.1.1 点内数据内传
以余度异构总线网络通信节点N1中总线网络单节点C11向C12传递数据S1(x)为例,点内数据内传示意图如图3所示。
点内数据内传采用基于冗余数据的双通道热备份方式来进行数据传输,具体步骤为:总线网络单节点C11将数据S1(x)在FlexRay通道F和CAN通道C上分别传输2次,FlexRay通道F上的数据为SF1(x)和SF2(x),CAN通道C上的数据为SC1(x)和SC2(x),总线网络单节点C12共接收到4个数据。
图3 点内数据内传示意
3.1.2 点间数据外传
以余度异构总线网络通信节点N1向节点N2传递数据S1(x)为例,点间数据外传如图4所示。
图4 点间数据外传示意
点间数据外传采用基于数据先验确认的双通道热备份传输方法,具体步骤为:余度异构总线网络通信节点N1的内部总线网络单节点C11和C12利用点内数据内传进行数据确认;握手成功后,C11和C12分别将确认之后的数据S1(x)在FlexRay通道F和CAN通道C上传输1次,FlexRay通道F上的数据为SF1(x)和SF2(x),CAN通道C上的数据为SC1(x)和SC2(x),余度异构总线网络单节点C21和C22分别接收到4个数据。
3.2 余度异构总线网络数据交叉匹配仲裁
余度异构总线网络点内数据内传和点间数据外传采用相同的网络数据交叉匹配仲裁方法。接收节点数据处理流程如图5所示。
图5 数据处理流程
接收节点在收到输入数据后,要对接收的4个数据进行接收管理。首先根据数据的帧ID以及帧数据状态指示位判断需要的4个数据是否已有效接收,根据接收到的有效数据采用不同的仲裁方法。由于余度异构总线网络采用异构总线通道,因此FlexRay通道和CAN通道的数据同时失效为小概率事件,接收到的数据一般不少于2个。
a. 当接收到4个有效数据时,采用4选1仲裁方法。
基于数据交叉匹配的原则,首先取异构FlexRay通道和CAN通道各1帧数据SF1(x)和SC1(x),对这2帧数据中8个字节的数据依次进行比较得到S1:
如果S1=0,则数据比较结束;如果S1≠0,则取FlexRay通道2帧数据SF1(x)和SF2(x)继续进行比较:
如果S2=0,则数据比较结束,否则利用式(5)、式(6)继续依次进行比较,至S3=0或S4=0时结束:
根据比较的结果得到最终的数据:
在比较结束后,如果Si(i=1,2,3,4)均不为0,则认为发生了极小概率的异常故障事件,通知车辆系统采取安全措施(Safe),例如降低车速等。
b. 当接收到3个有效数据时,采用3选1仲裁方法。
假定SC1(x)未有效接收,对不同帧数据中8个字节的数据依次进行比较,按照如式(8)~式(10)所示的步骤依次进行比较,得到S5,S6,S7:
在比较过程中,如果Si=0(i=5,6,7),则数据比较结束。根据比较的结果得到最终的数据:
c. 当接收到2个有效数据时,采用2选1仲裁方法,这时认为某一数据通道发生了故障。
假定SC1(x)和SC2(x)均未有效接收,取FlexRay通道数据SF1(x)和SF2(x),对不同帧数据中8个字节的数据依次进行比较,得到S8:
根据比较的结果得到最终的数据:
采用上述的交叉匹配仲裁法,即使数据在传输过程中发生了一次故障,仍然能够仲裁出正确的数据。因此,余度异构总线网络采用的热备份数据传输和交叉匹配仲裁方法能够保证网络数据安全可靠地传输。
4 余度异构总线网络监控
高安全可靠性车载余度异构总线网络利用余度转换网关,采用基于多点监控的故障诊断与预警方法对网络的工作状态进行监控,对失效数据通道进行隔离,并向车辆CAN总线发出网络降阶预警。
4.1 余度转换网关硬件结构
余度转换网关是余度异构总线双余度网络与车辆CAN总线单余度网络之间的接口,起着单双数据转换、协议翻译、总线速率适应等作用,其硬件结构如图6所示。
图6 余度转换网关硬件结构
余度转换网关节点NG可以表示为:
式中,CG为余度转换网关控制器(MCU);T/R3为FlexRay总线收发器,连接到余度异构总线网络FlexRay通道BP和BM上;T/R4为CAN总线收发器,连接到余度异构总线网络CAN通道CANH和CANL上;T/R5为CAN总线收发器,连接到车辆CAN总线CANH和CANL上。
4.2 余度异构总线网络多点监控故障诊断与预警
余度异构总线网络通信节点N1和N2采用定时机制向余度转换网关传递总线通道状态数据MFn(x)、MCn(x),数据传输如图7所示。
图7 总线通道状态数据传输示意
余度异构总线网络通信节点N1和N2的内部总线网络单节点C11、C12、C21和C22分别将记录的本节点及其余内部总线网络单节点的双通道状态MFn(x)(n=1,…,4)在FlexRay通道F上传输1次,将MCn(x)(n=1,…,4)在CAN通道C上传输1次。余度转换网关NG利用接收到的多个网络节点传来的总线通道的状态码,对整个车载余度异构总线网络进行故障诊断。
余度异构总线网络通信节点记录的本节点及其余内部总线网络单节点的双通道状态为:
fin和cin记录通道状态,定义为:
如图7所示,余度转换网关节点NG接收到的网络通道状态数据MFn(x)(n=1,…,4)、MCn(x)(n=1,…,4)可以表示为总线通道状态矩阵A:
矩阵B为FlexRay通道F上传输的各节点FlexRay总线通道状态矩阵,其中f11~f51依次为C11记录的C11、C12、C21、C22和CG节点的FlexRay总线通道状态。以此类推,f12~f52、f13~f53、f14~f54依次为C12、C21、C22记录的本节点及其余各节点的FlexRay总线通道状态。
矩阵C为FlexRay通道F上传输的各节点CAN总线通道状态矩阵,其中f61~f101、f62~f102、f63~f103、f64~f104依次为C11、C12、C21、C22记录的本节点及其余各节点的CAN总线通道状态。
矩阵D为CAN通道C上传输的各节点FlexRay总线通道状态矩阵,其中c11~c51、c12~c52、c13~c53、c14~c54依次为C11、C12、C21、C22记录的本节点及其余各节点的 FlexRay总线通道状态。
矩阵E为CAN通道C上传输的各节点CAN总线通道状态矩阵,其中c61~c101、c62~c102、c63~c103、c64~c104依次为C11、C12、C21、C22记录的本节点及其余各节点的CAN总线通道状态。
余度转换网关利用获取的总线通道状态矩阵A诊断出余度异构总线网络N的工作状态Np,其取值为:
Np的数值定义及故障判断条件如表1所示。
余度转换网关将得到的整个余度异构总线网络的工作状态Np通过汽车CAN总线上传给车辆系统,并在余度异构总线网络发生故障时向车辆CAN总线发出网络降阶预警。
5 余度异构总线网络试验验证
基于以上对于余度异构总线网络的分析,进行了余度异构总线网络通信节点以及余度转换网关原理样机制作,并且通过试验验证了余度异构总线网络的高安全可靠性。
5.1 余度异构总线网络试验系统设计实现
余度异构总线网络试验系统如图8所示。
表1 Np的数值定义及故障判断条件
图8 余度异构总线网络试验系统
图8中,余度异构总线网络通信节点N1包括总线网络单节点C11和C12,余度异构总线网络通信节点N2包括总线网络单节点C21和C22,FlexRay和CAN代表余度异构总线网络传输线,CG为余度异构总线网络余度转换网关,CANoe是汽车总线分析仪,用来模拟车辆CAN总线。
5.2 余度异构总线网络故障注入测试
基于搭建的余度异构总线网络试验系统,利用故障注入的方式对其进行实际测试,测试其在不同数据传输模式下发生单个硬件失效故障或者数据帧失效故障发生时整个余度异构总线网络试验系统的响应,故障测试类型如表2所示。
表2 余度异构总线网络故障测试类型
以余度异构总线网络通信节点N1中总线网络单节点C11向C12传递余弦信号为例进行点内数据内传故障注入测试,结果如图9所示。图9中,C1、C2分别为C11发出的CAN通道第1帧和第2帧数据,F1、F2分别为C11发出的FlexRay通道第1帧和第2帧数据,R为C12经仲裁最终接收到的数据,Alarm为余度转换网关发出的预警信号。
从图9a可以看出,余度异构总线网络单节点C11向C12传递余弦信号过程中,C1受干扰失效,但是接收方C12在接收到有效帧数据C2、F1和F2之后,经过数据交叉匹配仲裁,最终仲裁得到的数据R并没有出现错误,同时余度转换网关立刻发出预警信号Alarm。
从图9b、图9c可以看出,C11向C12传递余弦信号过程中,在C1和C2先后受干扰和CAN通道硬件通道失效的情况下,最终仲裁得到的数据R均没有出现错误,同时余度转换网关立刻发出预警信号Alarm。
以余度异构总线网络通信节点N1向N2传递余弦信号为例进行点间数据外传故障注入测试,对点间数据外传只进行了某一节点故障测试,这种测试对点间数据外传来说是一种极其严重的故障情况,其已经囊括了数据帧失效、数据网络通道失效、硬件通道失效故障所造成的影响,点间数据外传某一节点故障测试结果如图10所示。
图9 点内数据内传故障测试
图10 点间数据外传某一节点故障测试
从图10可以看出,余度异构总线网络通信节点N2中总线网络单节点C21接收节点N1传来的余弦信号过程中,N1中总线网络单节点C12失效,接收方C21在接收到有效帧数据C1和F1之后,经过数据交叉匹配仲裁,最终仲裁得到的数据R并没有出现错误,同时余度转换网关立刻发出预警信号Alarm。
对余度异构总线网络点内数据内传以及点间数据外传两类数据传输模式均进行了软、硬件单故障注入测试,同一故障类型进行了约50次独立试验,测试结果表明,总线通信网络故障测试一致性较好,余度异构总线网络在发生硬件通道失效、数据帧受干扰失效以及节点故障失效等单故障情况下依然能够正常进行数据的传输,余度转换网关能够及时准确地对余度异构总线网络进行故障诊断及预警。
6 结论
通过对高安全可靠性车载余度异构总线网络的硬件网络架构、数据传输仲裁以及网络监控进行研究,并且利用软、硬件故障注入的方法进行了试验验证,得到以下结论:
a.余度异构总线网络架构从设计原理上解决了同构冗余总线的共因故障失效问题,可以用于采用余度结构的汽车关键电子系统的通信网络。
b.热备份数据传输和交叉匹配仲裁方法使得网络数据在传输过程中发生一次故障时,接收方仍然能通过仲裁获得正确的数据,保证了数据传输的安全可靠。
c.多点监控故障诊断与预警方法能够对网络的工作状态进行监控,对失效数据通道进行故障隔离,并向车辆系统发出网络降阶预警,使得高安全可靠性车载网络达到“故障-工作-安全-预警”的高安全可靠性。
[1]宗长富,刘凯.汽车线控驱动技术的发展[J].汽车技术,2006(3):1-5.
[2]谢刚,吴军,田大庆,等.汽车电动助力转向系统控制器双机容错研究[J].汽车技术,2006(6):11-14.
[3]彭晓燕,董晓丹,章兢.汽车线控制动系统的可靠性分析和容错技术研究[J].汽车工程,2009,31(7):624-628.
[4]苗丰,连小珉.汽车电子电器网络的全等双余度中央协调器[J].清华大学学报:自然科学版,2016,56(10):1091-1096.
[5]PimentelJR.An architecture fora Safety-critical Steer-by-Wire System[R].SAE Technical Paper,2004.
[6]Chaaban K,Leserf P.Simulation of a Steer-by-Wire System Using FlexRay-based ECU Network[C].International Conference on IEEE,2009.
[7]陈兴隆,张凤登.安全性汽车线控制动系统及其控制方法研究[J].通信电源技术,2014,31(4):25-27.
[8]何磊.基于FlexRay总线的线控转向系统双电机控制方法研究[D].长春:吉林大学,2011.
[9]吴建军,郑国辉,张小林.中小型无人飞行器二余度CAN总线网络设计[J].计算机测量与控制,2012,20(3):813-815.
[10]FlexRay Consortium. FlexRay Communications System-protocol Specification[J].Version,2005,2(1):198-207.