陳曦 連小珉
(清華大學,北京 100084)
隨著汽車電子化程度的不斷提高,出現了諸如線控轉向、線控制動、電子節氣門等電子線控系統[1]。然而,電子系統存在電信號傳輸可靠性差等安全可靠性問題。針對此問題,目前主要采用余度系統來提高電子系統的安全可靠性[2-4]。同時,車載網絡是汽車電子系統唯一的數據和控制命令傳輸通道。一旦通信網絡失效,將會帶來嚴重的行車安全隱患,尤其是對于涉及轉向、制動等功能的關鍵系統。因此,解決采用余度結構的汽車關鍵電子系統通信網絡的安全可靠性問題具有十分重要的意義。
目前,國內外學者針對高安全可靠性車載網絡做了一些研究工作。在網絡架構設計方面,美國凱特林大學Dr.Juan R.Pimentel[5]提出了基于冗余CAN總線的用于線控轉向系統的硬件結構;法國高等航空與汽車制造學校的Khaled Chaaban[6]提出了冗余FlexRay總線構成的具有容錯特性的汽車線控轉向系統;上海理工大學陳興隆[[77]]給出了將FlexRay總線作為具有容錯功能的線控制動系統通信網絡的方案。雖然冗余CAN總線或者FlexRay總線提供了備份的硬件數據通道,但是由于雙通道均采用同一種總線,具有相同的工作機制,故存在共因故障導致車載網絡系統失效的問題。
在網絡數據傳輸和仲裁方面,吉林大學的何磊[8]提出了針對汽車線控轉向系統的雙余度FlexRay網絡;西北工業大學的吳建軍[9]提出了針對無人飛行器的二余度CAN網絡。他們都是利用主網絡和備用網絡切換進行故障容納,但是由于備用通道數據長時間不使用,網絡數據處于冷備份狀態,在需要進行總線通道切換時,存在切換失效的問題。
針對存在的這些問題,本文提出了一種高安全可靠性車載余度異構總線網絡,實現了“故障-工作-安全-預警”的高安全可靠性。
高安全可靠性車載網絡由兩路工作機制不相同的數據總線構成,即余度異構總線網絡,網絡上掛接的是余度異構總線網絡通信節點。在正常工作情況下,兩路數據總線共同進行數據傳輸,互為數據傳輸熱備份,當一路數據總線發生故障時,另一路數據總線仍能正常進行數據傳輸,不對傳輸結果造成影響,可以保證通信的安全可靠。最簡余度異構總線網絡系統拓撲結構如圖1所示。

圖1 最簡余度異構總線網絡系統拓撲結構
最簡余度異構總線網絡N可以表示為:

式中,N1和N2為余度異構總線網絡通信節點;NG為余度轉換網關節點;B1和B2為異構總線通道。
余度異構總線網絡通信節點N1由總線網絡單節點C11和 C12構成;N2由總線網絡單節點C21和 C22構成,C11、C12、C21和C22具有完全相同的硬件結構。余度轉換網關節點NG對內連接余度異構總線網絡,對外連接車輛CAN總線,是余度異構總線網絡與車輛CAN總線的信息交互接口。
時間觸發型的FlexRay總線是一種安全可靠性高、容錯性好的通訊總線,特別適用于X-by-Wire系統。FlexRay總線本身具有冗余的通道[[1100]],可以用于數據備份傳輸,但是經過研究發現,雖然FlexRay控制模塊具有雙通道結構,但是由于模塊中的時間控制單元(TCU)以及序列控制(SEQ)等部分都是公用的,A、B兩個通道并不完全獨立,因此存在某一故障使得FlexRay雙通道均失效的可能,所以FlexRay雙通道并不適用于高安全可靠性車載網絡。CAN總線是汽車內常用的事件觸發型的通信總線,其與FlexRay具有不同的工作機制,硬件也彼此獨立,因此本文提出的高安全可靠性車載網絡選擇了FlexRay和CAN總線構成的余度異構總線網絡。
以余度異構總線網絡通信節點N1中總線網絡單節點C11為例,其硬件結構如圖2所示。

圖2 總線網絡單節點硬件結構
總線網絡單節點C11可以表示為:

式中,M11表示為通信控制器;T/R1為FlexRay總線收發器,連接到余度異構總線網絡FlexRay通道BP和BM上;T/R2為CAN總線收發器,連接到余度異構總線網絡CAN通道CANH和CANL上。
余度異構總線網絡通信節點由硬件結構相同的2個總線網絡單節點構成。
余度異構總線網絡不僅在硬件架構上采用了余度異構的高安全可靠性總線結構,在網絡數據傳輸與仲裁方面也采用了高安全可靠性的熱備份數據傳輸和交叉匹配仲裁方法。
根據余度異構總線網絡的特點,將網絡數據傳輸分為2類:余度異構總線網絡內部單節點之間的通信,即點內數據內傳;余度異構總線網絡通信節點之間的通信,即點間數據外傳。
以余度異構總線網絡通信節點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 點內數據內傳示意
以余度異構總線網絡通信節點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個數據。
余度異構總線網絡點內數據內傳和點間數據外傳采用相同的網絡數據交叉匹配仲裁方法。接收節點數據處理流程如圖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:

根據比較的結果得到最終的數據:

采用上述的交叉匹配仲裁法,即使數據在傳輸過程中發生了一次故障,仍然能夠仲裁出正確的數據。因此,余度異構總線網絡采用的熱備份數據傳輸和交叉匹配仲裁方法能夠保證網絡數據安全可靠地傳輸。
高安全可靠性車載余度異構總線網絡利用余度轉換網關,采用基于多點監控的故障診斷與預警方法對網絡的工作狀態進行監控,對失效數據通道進行隔離,并向車輛CAN總線發出網絡降階預警。
余度轉換網關是余度異構總線雙余度網絡與車輛CAN總線單余度網絡之間的接口,起著單雙數據轉換、協議翻譯、總線速率適應等作用,其硬件結構如圖6所示。

圖6 余度轉換網關硬件結構
余度轉換網關節點NG可以表示為:

式中,CG為余度轉換網關控制器(MCU);T/R3為FlexRay總線收發器,連接到余度異構總線網絡FlexRay通道BP和BM上;T/R4為CAN總線收發器,連接到余度異構總線網絡CAN通道CANH和CANL上;T/R5為CAN總線收發器,連接到車輛CAN總線CANH和CANL上。
余度異構總線網絡通信節點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總線發出網絡降階預警。
基于以上對于余度異構總線網絡的分析,進行了余度異構總線網絡通信節點以及余度轉換網關原理樣機制作,并且通過試驗驗證了余度異構總線網絡的高安全可靠性。
余度異構總線網絡試驗系統如圖8所示。

表1 Np的數值定義及故障判斷條件

圖8 余度異構總線網絡試驗系統
圖8中,余度異構總線網絡通信節點N1包括總線網絡單節點C11和C12,余度異構總線網絡通信節點N2包括總線網絡單節點C21和C22,FlexRay和CAN代表余度異構總線網絡傳輸線,CG為余度異構總線網絡余度轉換網關,CANoe是汽車總線分析儀,用來模擬車輛CAN總線。
基于搭建的余度異構總線網絡試驗系統,利用故障注入的方式對其進行實際測試,測試其在不同數據傳輸模式下發生單個硬件失效故障或者數據幀失效故障發生時整個余度異構總線網絡試驗系統的響應,故障測試類型如表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次獨立試驗,測試結果表明,總線通信網絡故障測試一致性較好,余度異構總線網絡在發生硬件通道失效、數據幀受干擾失效以及節點故障失效等單故障情況下依然能夠正常進行數據的傳輸,余度轉換網關能夠及時準確地對余度異構總線網絡進行故障診斷及預警。
通過對高安全可靠性車載余度異構總線網絡的硬件網絡架構、數據傳輸仲裁以及網絡監控進行研究,并且利用軟、硬件故障注入的方法進行了試驗驗證,得到以下結論:
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.