◆文/北京 景忠玉
隨著汽車控制技術(shù)向智能化方向發(fā)展,智能網(wǎng)聯(lián)汽車、無人駕駛汽車的興起,車載控制元件不斷增加。通過CAN總線、LIN總線實現(xiàn)聯(lián)網(wǎng)的方式接收、發(fā)送并處理大量的數(shù)據(jù)已經(jīng)難以滿足要求,而傳輸速率更高、容錯功能更強、拓撲選擇更全面、同時具備事件觸發(fā)和時間觸發(fā)的新型數(shù)據(jù)總線——FlexRay總線應運而生。
FlexRay總線是FlexRay聯(lián)盟(戴姆勒克萊斯勒等諸多加盟公司)推出的車載總線標準,由于卓越的性能,F(xiàn)lexRay總線已逐漸成為汽車網(wǎng)絡系統(tǒng)的標桿。
FlexRay總線采用快速以太網(wǎng)(100Mbit/s,IEEE803.3u標準)作為編程接口,應用雙芯雙絞電纜線進行傳輸,最大數(shù)據(jù)傳輸速率為每通道10MBit/s,主要應用在線控轉(zhuǎn)向、線控動力、線控制動系統(tǒng)方面,用來進行車距控制、行駛動態(tài)控制和圖像處理。
FlexRay總線支持同步數(shù)據(jù)傳輸(時間觸發(fā)通信)和異步數(shù)據(jù)傳輸(事件驅(qū)動通信),既滿足總線系統(tǒng)工作的可靠性,又具有較高的故障容錯能力,是汽車安全及行駛動態(tài)管理系統(tǒng)控制單元的理想總線。
車載總線節(jié)點(Node or Nodus)是指汽車總線中能完成數(shù)據(jù)信號發(fā)送、接收及轉(zhuǎn)發(fā)的電子控制單元(控制模塊),是車載網(wǎng)絡系統(tǒng)中的通信端點或終端設備。總線節(jié)點的核心是ECU(Electronic Control Unit),也就是節(jié)點在汽車聯(lián)網(wǎng)系統(tǒng)中屬于有源電子設備,線路連接點、配線架、插接板、線路結(jié)點不屬于總線節(jié)點。
如圖1所示,F(xiàn)lexRay總線節(jié)點由供電(Power Supply)、控制部分和驅(qū)動部分組成。控制部分包括一個主處理器Host(Microcontroller)和一個通信控制器CC(Communication Controller)。CC提供與數(shù)據(jù)電路和與Host的電氣接口,將數(shù)據(jù)電路上的字符拆卸為串行比特流,或者將數(shù)據(jù)電路上的串行比特流組裝為字符。

圖1 FlexRay總線節(jié)點結(jié)構(gòu)
驅(qū)動部分包括總線驅(qū)動器BD(Bus Driver)和總線監(jiān)控器BG(Bus Guardian),總線驅(qū)動器BD將通信控制器CC與總線(FlexRay-BUS, Ch-A, Ch-B)相連,總線監(jiān)控器BG用以監(jiān)視接入總線的連接。
FlexRay總線節(jié)點中的主處理器Host負責提供和產(chǎn)生數(shù)據(jù),把FlexRay總線控制器分配的時間槽通知給總線監(jiān)視器BG,同時激活總線驅(qū)動器BD,總線監(jiān)視器則允許FlexRay總線控制器在分配的時間槽(一個或多個)內(nèi)通過通信控制器CC進行數(shù)據(jù)信息的傳送。FlexRay總線也有小的時間槽,如果其計數(shù)器與信息ID相一致,則節(jié)點發(fā)送信息。時間槽會按照需要的時間來擴展,節(jié)點發(fā)送信息之后,小時間槽計數(shù)器會+1。當FlexRay總線空閑時,小時間槽計數(shù)器同樣也會+1。由此可見,每個節(jié)點都有機會發(fā)送數(shù)據(jù)信息,F(xiàn)lexRay總線系統(tǒng)實現(xiàn)了介質(zhì)共享。
時間槽和節(jié)點Node信息的ID是相對應的,通過時間槽可以確定發(fā)送數(shù)據(jù)的節(jié)點。發(fā)送數(shù)據(jù)可定義為在CC中進行編碼,接收數(shù)據(jù)可定義為在CC中進行解碼。一旦總線監(jiān)控器BG監(jiān)測到時間時序存在間隔,則會斷開總線通信信道的連接。
如圖2所示,寶馬轎車集成式底盤管理系統(tǒng)ECU(主節(jié)點ICM,集成式底盤管理系統(tǒng)控制單元)能進行動力傳動系統(tǒng)、動態(tài)穩(wěn)定控制及主動轉(zhuǎn)向系統(tǒng)數(shù)據(jù)信號的讀取和處理。ICM可以讀取與之關(guān)聯(lián)的所有傳感器傳送來的數(shù)據(jù)信號,這些信號不僅為ICM控制系統(tǒng)所用,同時借助車載總線被傳送至其他系統(tǒng)并被相應節(jié)點接收使用。ICM內(nèi)的中央行駛動態(tài)協(xié)調(diào)控制系統(tǒng)通過評估車輛并依據(jù)采集的信息對車輛行駛狀態(tài)進行調(diào)整和干預,確保行車安全和行駛的穩(wěn)定性。
(1)幀格式
如圖3所示,F(xiàn)lexRay幀格式包括幀頭段(Header segment)、有效載荷段(Payload segment)及幀尾段(Trailer segment)。節(jié)點在網(wǎng)絡上傳輸數(shù)據(jù)時,首先傳輸?shù)氖菐^段,其次是有效載荷段,最后傳輸?shù)氖菐捕巍?/p>
幀頭段(Header Segment)主要用來識別幀及該幀在時間觸發(fā)中的優(yōu)先級。幀頭段(圖4)有5個字節(jié),一個字節(jié)為8位,共40位(bit)。其中,保留位(1位)、凈荷指示位(1位)、空幀指示位(1位)、同步幀指示位(1位)、啟動幀指示位(1位)、幀ID位(11)、有效數(shù)據(jù)長度(7位)、頭部CRC(11位)、周期(6位)。
有效載荷段(Payload Segment)用來傳送數(shù)據(jù)。有效載荷段(圖5),0-254位,包括數(shù)據(jù)、信息ID、網(wǎng)絡管理向量3個部分。

圖2 寶馬轎車集成式底盤管理系統(tǒng)信號處理和分配

圖3 FlexRay幀格式

圖4 幀頭段

圖5 有效載荷段
幀尾段(Trailer Segment)用以檢測錯誤。幀尾段(圖3中藍色部分)有3個字節(jié)、且只含有24位的校驗域,這個域包含了由幀頭段與有效載荷段計算得出的CRC校驗碼。計算幀CRC時,根據(jù)網(wǎng)絡傳輸順序?qū)谋A粑婚_始,到有效載荷段最后一個字節(jié)的最后一位結(jié)束,這些數(shù)據(jù)都放入CRC生成器中進行計算。
(2)幀編碼與解碼
如圖6所示,F(xiàn)lexRay總線幀編碼就像是對要發(fā)送的信息進行 “打包”,比如,加上校驗碼、ID符等。而幀解碼就像是對接收到的信息進行“解包”。編碼與解碼主要發(fā)生在通訊控制器CC與總線驅(qū)動器BD之間。

圖6 FlexRay幀編碼與解碼
在圖6中,RxD為接受信號,TxD為發(fā)送信號,TxEN為通訊控制器請求數(shù)據(jù)信號。信息的二進制表示采用“不歸零”碼。對于雙通道的節(jié)點,每個通道上的編碼與解碼的過程是同時完成的。編碼與解碼的過程主要由3個過程組成:主編碼與解碼過程(CODEC)、過濾(bit strobing)過程和喚醒模式解碼過程(WUPDEC)。主編碼與解碼過程為主要過程。圖7所示為信息發(fā)送過程,圖8所示為信息接收過程。

圖7 FlexRay總線信息發(fā)送過程

圖8 FlexRay總線信息接收過程
(3)冗余信息傳輸
在容錯性系統(tǒng)中,即使某一總線導線斷路,也必須確保數(shù)據(jù)能繼續(xù)可靠傳輸。這一點通過在第二個數(shù)據(jù)通道上進行冗余信息傳輸來實現(xiàn),圖9為FlexRay冗余信息傳輸示意圖。具有冗余信息傳輸能力的總線系統(tǒng)使用兩個彼此無關(guān)的通道。每個通道都由一個雙絞線連接組成。一個通道失靈時,故障通道應傳輸?shù)男畔⒎诺椒枪收贤ǖ郎弦黄饌鬏敗?4)FlexRay總線信號特性

圖9 FlexRay冗余信息傳輸
FlexRay 總線系統(tǒng)是數(shù)據(jù)傳輸率較高且電壓電平變化較快的通信總線。圖10、圖11分別為FlexRay總線信號的正常波形和非正常波形(所示波形須用快速示波器顯示),F(xiàn)lexRay總線信號必須在規(guī)定界限內(nèi)。無論在時間軸上還是在電壓軸上,電氣信號都不得進入內(nèi)部區(qū)域內(nèi)。
電壓高低(電平)以及電壓上升沿和下降沿斜率有嚴格規(guī)定,必須達到規(guī)定數(shù)值,否則,不得進入圖10所標記的綠色六邊形“區(qū)域”(或圖11所標記的紅色六邊形“區(qū)域”)。

圖10 FlexRay總線波形(正常)

圖11 FlexRay總線波形(不正常)
從圖10可以看出FlexRay總線系統(tǒng)的電壓范圍電壓值(對地測量方式):系統(tǒng)接通, 而FlexRay總線不通信時,F(xiàn)lexRay總線高、低壓電壓均為 2.5V;當FlexRay總線通信時,高電平電壓上升0.6V,為3.1V;低電平電壓下降0.6V,為1.9V。因電纜安裝不正確、接觸電阻等產(chǎn)生的電氣故障可能引起數(shù)據(jù)傳輸率問題。
(5)實時信息傳輸
FlexRay總線采用時間觸發(fā)與事件觸發(fā)相結(jié)合的訪問方式,對于時間要求高的信息,可實現(xiàn)實時信息傳輸,即在規(guī)定時間內(nèi)進行數(shù)據(jù)信息的傳輸。FlexRay總線系統(tǒng)在時間控制的區(qū)域內(nèi)按時隙分配信息。一個時隙是指一個規(guī)定的時間段,該時間段對某一信息(比如轉(zhuǎn)速信號)開放。對于時間要求不高的信息則在事件控制的區(qū)域內(nèi)傳輸,如圖12所示FlexRay總線實時信息傳輸。
FlexRay 總線對于重要的周期性信息一般以固定的時間間隔傳輸,確定性信息傳輸用于確保時間控制區(qū)域內(nèi)的每條信息都能實現(xiàn)實時傳輸。因此,F(xiàn)lexRay 總線能保證即使系統(tǒng)過載也不會導致重要信息發(fā)送延遲。CAN總線主要采用事件觸發(fā)方式,有時會因為傳送的信息過多過于集中,造成總線系統(tǒng)過載而導致一些信息發(fā)送遲滯,影響控制的精準性。

圖12 FlexRay總線實時信息傳輸