基于CAN/LIN總線的汽車通信網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn)
隨著汽車電子技術(shù)及網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,人們對(duì)汽車安全性、可靠性的要求也越來(lái)越高,為了解決由汽車電子元器件的增加而帶來(lái)的通信問題,這就要求采用一種高速、多路、共享的汽車通信網(wǎng)絡(luò)。目前,已經(jīng)開發(fā)出多種總線,如CAN(Controller Area Network)控制器局域網(wǎng)[1],LIN(Local Interconnect Network)局域互聯(lián)網(wǎng),F(xiàn)lexRay,Most等。但CAN和LIN構(gòu)成目前汽車上最廣泛的總線形式。本文主要介紹已得到眾多汽車制造商推崇的網(wǎng)絡(luò)技術(shù)---CAN 總線和LIN 總線技術(shù)。
CAN總線、LIN總線簡(jiǎn)介及各自通信協(xié)議
CAN總線及LIN總線簡(jiǎn)介
20世紀(jì)80年代末,德國(guó)博世公司為解決現(xiàn)代汽車中眾多控制單元、測(cè)試儀器之間的實(shí)時(shí)數(shù)據(jù)交換而開發(fā)了一種串行通信協(xié)議CAN,并使其成為國(guó)際標(biāo)準(zhǔn)(ISO11898)。到目前為止,世界上已擁有20多家CAN總線控制器芯片生產(chǎn)商,110多種CAN總線協(xié)議控制器芯片和集成CAN總線協(xié)議控制器的微控制器芯片。
CAN總線由于采用了獨(dú)特的設(shè)計(jì)和新的技術(shù),與一般的通信總線相比,它具有突出的可靠性、實(shí)時(shí)性和靈活性。CAN采用多主工作方式,成本低,且具有極高的總線利用率;CAN總線具有可靠的錯(cuò)誤處理和檢錯(cuò)機(jī)制,采用短幀結(jié)構(gòu),傳輸時(shí)間短,受干擾的概率低;采用非破壞性總線仲裁技術(shù),節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下具有自動(dòng)退出功能。
1998年,Audi、Motorola、BMW、DaimlerChrysler 、VCT、Volvo和Volkswagen七家公司聯(lián)合提出了新型A類總線--LIN(Local Interconnect Network)。LIN是一種低成本短距離的低速網(wǎng)絡(luò),它旨在傳送開關(guān)設(shè)置和傳感器輸入等狀態(tài)的變化,并對(duì)這種變化做出響應(yīng),因此它只適用于對(duì)傳送時(shí)間要求不高的低速事件,并不適用于發(fā)動(dòng)機(jī)控制等高速事件。
LIN 網(wǎng)絡(luò)是一種低成本的串行通訊網(wǎng)絡(luò),用于實(shí)現(xiàn)汽車中的分布式電子系統(tǒng)控制。L IN 的目標(biāo)是為現(xiàn)有汽車網(wǎng)絡(luò)(例如CAN 總線) 提供輔助功能。因此,L IN 總線是一種輔助的總線網(wǎng)絡(luò)。在不需要CAN 總線的帶寬和多功能的場(chǎng)合,比如智能傳感器和制動(dòng)裝置之間的通訊使用L IN 總線可大大節(jié)省成本(為CAN 總線所需成本的1/ 3~1/ 2) .目前L IN 已經(jīng)成為國(guó)際標(biāo)準(zhǔn),被多數(shù)整車廠商和配件廠商所接受。
LIN 的主要特點(diǎn)如下: 低成本、基于通用UART 接口;傳輸速率最高可達(dá)20kbps ;單主控制器/ 多從設(shè)備模式,無(wú)需仲裁機(jī)制;從節(jié)點(diǎn)不需晶振或陶瓷震蕩器就能實(shí)現(xiàn)自同步,節(jié)省了從設(shè)備的硬件成本;保證信號(hào)傳輸?shù)难舆t時(shí)間;不需要改變L IN 從節(jié)點(diǎn)的硬件和軟件就可以在網(wǎng)絡(luò)上增加節(jié)點(diǎn)。通常一個(gè)L IN 網(wǎng)絡(luò)上節(jié)點(diǎn)數(shù)目小于12個(gè),共有64 個(gè)標(biāo)志符。
CAN總線通信協(xié)議---J1939 通信協(xié)議
J1939 協(xié)議以CAN 2. 0B 為基礎(chǔ),是CAN 總線的應(yīng)用層協(xié)議。J1939 協(xié)議將CAN 標(biāo)識(shí)符劃分為如下幾個(gè)部分:優(yōu)先級(jí)( P) 、數(shù)據(jù)頁(yè)( PGN) 、協(xié)議數(shù)據(jù)單元( PDU) 格式、PDU 特定域(PS) 和源地址(SA) .J1939/ 71 應(yīng)用層文檔定義了車輛控制的各種參數(shù)及命令的PGN.表1 為J1939 的報(bào)文格式。
LIN總線通信協(xié)議
LIN 協(xié)議是一種建立在通用的SCI 或UART 硬件接口上、用于將車輛中分布的智能傳感器和執(zhí)行器連接到車內(nèi)主控制器的單總線(12V) 串行通信協(xié)議。
通過LIN 總線傳輸?shù)膶?shí)體為幀。一個(gè)報(bào)文幀由幀頭以及回應(yīng)(數(shù)據(jù)) 部分組成。在一個(gè)激活的L IN 網(wǎng)絡(luò)中,通訊通常由主節(jié)點(diǎn)啟動(dòng),主節(jié)點(diǎn)任務(wù)發(fā)送包含有同步間隙的報(bào)文頭、同步字節(jié)以及報(bào)文標(biāo)志符( ID) .一個(gè)從節(jié)點(diǎn)的任務(wù)通過接收并過濾標(biāo)志符被激活,并啟動(dòng)回應(yīng)報(bào)文的傳送。回應(yīng)中包含了1 到8 個(gè)字節(jié)的數(shù)據(jù)以及一個(gè)字節(jié)的校驗(yàn)碼。圖1 為L(zhǎng)IN 協(xié)議幀結(jié)構(gòu) .
總體通信網(wǎng)絡(luò)設(shè)計(jì)
整車通信網(wǎng)絡(luò)設(shè)計(jì)
汽車內(nèi)ECU 間的數(shù)據(jù)傳輸特征主要差別在于數(shù)據(jù)傳輸頻率,美國(guó)汽車工程師協(xié)會(huì)(SAE) 將汽車網(wǎng)絡(luò)根據(jù)速率劃分為A ( 低速: 1kbps ~ 10kbps) 、B ( 中速: 10kbps ~100kbps) 、C(高速:最高位速率可達(dá)1Mbps) 3 個(gè)等級(jí)。在一個(gè)完善的汽車電子控制系統(tǒng)中,許多動(dòng)態(tài)信息必須與車速同步,每個(gè)ECU 對(duì)實(shí)時(shí)性的要求是因數(shù)據(jù)的更新速率和控制周期的不同而不同的。例如:一個(gè)8 缸的柴油機(jī)運(yùn)行速度為2400r/ min ,電控單元控制兩次噴射的時(shí)間間隔為6. 25ms ,其中,噴射持續(xù)時(shí)間為30°的曲軸轉(zhuǎn)角(2ms) ,在剩余4ms 內(nèi)需完成轉(zhuǎn)速測(cè)量、油量測(cè)量、A/ D 轉(zhuǎn)換、執(zhí)行器的控制等一系列過程,這就意味著數(shù)據(jù)發(fā)送與接收必須在1ms 內(nèi)完成,才能達(dá)到柴油機(jī)電控的實(shí)時(shí)性要求。同時(shí),這也就要求其數(shù)據(jù)通信網(wǎng)是基于優(yōu)先權(quán)競(jìng)爭(zhēng)的模式,且本身具有極高的通信速率。CAN 總線技術(shù)正是為滿足這些要求而設(shè)計(jì)的。
然而在A 類通信網(wǎng)絡(luò)中,進(jìn)氣溫度的參數(shù)允許響應(yīng)時(shí)間為20s ,冷卻溫度的參數(shù)允許響應(yīng)時(shí)間1min ,燃油溫度的參數(shù)允許響應(yīng)時(shí)間約10min ( 上述3 個(gè)信號(hào)每隔100ms 或1min 采樣一次就完全足夠了) ,前后車燈開關(guān)、座椅調(diào)節(jié)、車門開閉的傳輸延遲為10~100ms ,如將這些較為簡(jiǎn)單的ECU 節(jié)點(diǎn)掛在L IN 總線上,則既實(shí)現(xiàn)了網(wǎng)絡(luò)分級(jí)控制,同時(shí)也降低了車輛電子系統(tǒng)的開發(fā)、生產(chǎn)和服務(wù)的成本。
如圖2 所示,文中將數(shù)據(jù)傳輸速率較高的CAN 總線(1Mbps) 用于B、C 類網(wǎng)絡(luò),其控制對(duì)象為:發(fā)動(dòng)機(jī)控制器、自動(dòng)變速器、驅(qū)動(dòng)防滑系統(tǒng)、牽引力控制系統(tǒng)、ABS/ ASR、安全氣囊控制器及組合儀表信號(hào)的采集系統(tǒng)等。L IN 總線用于A 類系統(tǒng),最高傳輸速率可達(dá)20kbps.其控制對(duì)象主要為:前后車燈控制開關(guān)、電動(dòng)座椅開關(guān)、中央門鎖與防盜控制開關(guān)、后視鏡、空調(diào)、車窗控制開關(guān)等。這些控制對(duì)象對(duì)信息傳輸?shù)膶?shí)時(shí)性要求不高,但數(shù)量較多。采用L IN 總線可提高抗干擾能力、增加總線傳輸距離、降低成本。以門窗控制為例,在車門上有門鎖、車窗玻璃開關(guān)、車窗升降電機(jī)、操作按鈕等,只需一個(gè)L IN 網(wǎng)絡(luò)就可以實(shí)現(xiàn)。
CAN 總線和L IN 總線相互獨(dú)立,通過中央控制器實(shí)現(xiàn)資源共享并進(jìn)行數(shù)據(jù)交換。中央控制器是整車管理系統(tǒng)的核心,它同時(shí)也是CAN 總線和L IN 總線的網(wǎng)關(guān)服務(wù)器,它的主要功能就是對(duì)各種信息進(jìn)行分析處理并發(fā)出指令,協(xié)調(diào)汽車各控制單元及電器設(shè)備的工作。
接口設(shè)計(jì)
整車通信網(wǎng)絡(luò)是由許多CAN 節(jié)點(diǎn)和L IN 節(jié)點(diǎn)通過CAN 總線和L IN 總線連接組成的一個(gè)局域網(wǎng),因此接口設(shè)計(jì)十分重要。
圖3 為中央控制器與CAN 總線、L IN 總線接口設(shè)計(jì)。中央控制器內(nèi)包括了一個(gè)CAN 的控制器和一個(gè)SCI 接口。CAN 智能節(jié)點(diǎn)一般由MCU ,CAN 控制器和CAN 收發(fā)器組成。
目前從事CAN 總線及L IN 總線芯片開發(fā)和制造的廠商很多,如PHIL IPS ,FREESCAL E ,ONSEMI , TI 等,設(shè)計(jì)人員可以根據(jù)自身需要選擇不同的芯片組合。這里中央控制器選擇了FREESCAL E 的MC68HC908AZ60 芯片。該芯片是專為汽車電子應(yīng)用設(shè)計(jì)的功能強(qiáng)大的8 位單片機(jī),內(nèi)部集成了低速CAN 控制器,支持CAN2. 0A/ 2. 0B ,具有一個(gè)SCI 模塊。該芯片除了完成L IN 網(wǎng)絡(luò)與CAN網(wǎng)絡(luò)的通信連接外,還兼有其它的控制功能。
L IN 節(jié)點(diǎn)選擇了FREESC2AL E 的器件。其中L IN 節(jié)點(diǎn)收發(fā)器采用MC33399 ; L IN 節(jié)點(diǎn)MCU 選擇MC68HC805 PV8 .由于汽車上的電磁干擾較大,為提高系統(tǒng)的抗干擾能力,在CAN 控制器和CAN 收發(fā)器以及L IN 控制器和L IN 收發(fā)器之間增加了由6N137 構(gòu)成的光電隔離電路。
CAN 智能節(jié)點(diǎn)選擇PHIL IPS 器件: PCA82C250 作為CAN 收發(fā)器; CAN 節(jié)點(diǎn)的MCU 選用P89C591 , 因P89C591 內(nèi)部集成有CAN 控制器(有PeliCAN 接口) ,所以沒有再選擇CAN 控制器,其連接圖如圖4 所示。設(shè)計(jì)人員也可以選用微控制器+ 外接CAN 控制器這樣的連接法。
PCA82C250 提供對(duì)總線的差動(dòng)發(fā)送能力和對(duì)CAN控制器的差動(dòng)接收能力。在低速和總線長(zhǎng)度較短時(shí),一般采用斜率控制方式,以限制上升和下降斜率,降低射頻干擾,斜率可通過調(diào)節(jié)由引腳8 至地連接的電阻進(jìn)行控制。通信信號(hào)傳輸?shù)綄?dǎo)線的端點(diǎn)時(shí)會(huì)發(fā)生反射,反射信號(hào)會(huì)干擾正常信號(hào)的傳輸,因而總線兩端需接終端電阻,以消除反射信號(hào)。其阻值約等于傳輸電纜的特性阻抗。
總結(jié)
基于CAN 總線A 類車身控制在汽車上已有廣泛應(yīng)用。隨著車上總線節(jié)點(diǎn)的增加及高性能系統(tǒng)向中、低檔汽車的發(fā)展,CAN 總線相對(duì)較高的實(shí)現(xiàn)成本就成為一種障礙。與CAN 相比,L IN 節(jié)點(diǎn)的通信成本是CAN 的1/ 3~1/ 2 ,具有較明顯的成本優(yōu)勢(shì)。文中的汽車通信網(wǎng)絡(luò)將L IN 應(yīng)用于車身系統(tǒng),既實(shí)現(xiàn)了應(yīng)有的網(wǎng)絡(luò)控制功能,又降低了開發(fā)、生產(chǎn)、服務(wù)的成本,具有較高的實(shí)用性。
評(píng)論