摘 要:隨著汽車內(nèi)電子設(shè)備的迅速增加,車內(nèi)電子網(wǎng)絡(luò)應(yīng)運(yùn)而生。詳細(xì)介紹了CAN總線和LIN總線技術(shù)特點(diǎn),并著重研究了CAN/LIN技術(shù)在汽車電子網(wǎng)絡(luò)中的應(yīng)用。
關(guān)鍵詞:CAN;LIN;車內(nèi)網(wǎng)絡(luò);現(xiàn)場總線
1 引 言
現(xiàn)場總線網(wǎng)絡(luò)能夠大量減少控制線數(shù),提高可靠性,因此,采用現(xiàn)場總線網(wǎng)絡(luò)成為汽車電控系統(tǒng)技術(shù)發(fā)展的必然趨勢。汽車電子協(xié)會(huì)(SAE)將車內(nèi)通信網(wǎng)絡(luò)分為如下4種類型:①A類。適合于低速環(huán)境(<10kbit/s),用于提高方便性的應(yīng)用,如車身電子,包括車燈、車窗車門的控制、電動(dòng)后視鏡的調(diào)整等;②B類。適合于中速環(huán)境(10—125 kbit/s),用于一般信息傳遞,如車內(nèi)氣候控制,包括空調(diào)和加熱單元等;③c類。適合于高速環(huán)境(125 kbit/s一1Mbit/s),用于實(shí)時(shí)控制,如動(dòng)力合成;④D類。適合于速度大于1 Mbit/s的環(huán)境,用于多媒體應(yīng)用,如Intemet、數(shù)字電視和硬件實(shí)時(shí)功能,如X—by— wire應(yīng)用。電控單元之間的通信可以通過根據(jù)通信帶寬和通訊速度的要求選擇不同的通信網(wǎng)絡(luò)。
車身控制部分的電控單元由于傳輸?shù)臄?shù)據(jù)量比較少且對(duì)實(shí)時(shí)性要求不高,所以采用A類低速通信網(wǎng)絡(luò)即可。LIN( cal Interconnect Network)協(xié)議是面向車輛低端分布式應(yīng)用的一類多路復(fù)用串行通信協(xié)議,符合SAE規(guī)定的車用網(wǎng)絡(luò)通信A類標(biāo)準(zhǔn),其最初的設(shè)計(jì)目標(biāo)作為CAN(ControllerArea Network)的下層網(wǎng)絡(luò),同CAN相結(jié)合可構(gòu)成車輛應(yīng)用中的分層網(wǎng)絡(luò)結(jié)構(gòu)。
2 CAN總線技術(shù)
2.1 CAN標(biāo)準(zhǔn)
現(xiàn)代汽車應(yīng)用環(huán)境對(duì)汽車中各電子單元之間的互連提出了極為嚴(yán)格的要求,于是Robert Bosch公司于1982年開始制定“控制器局域網(wǎng)絡(luò)(CAN)”標(biāo)準(zhǔn)。汽車中的電子系統(tǒng)日益增多(如防抱死剎車、安全氣囊、空調(diào)、中控鎖、引擎管理和遙控?zé)o鑰門禁等)。它們最初以“點(diǎn)到點(diǎn)”方式相互連接起來,每個(gè)連接都使用獨(dú)立的銅線,使接線器非常龐大。因此有必要為汽車電子系統(tǒng)開發(fā)一種公用“網(wǎng)絡(luò)”標(biāo)準(zhǔn),以減少連線與連接點(diǎn)的數(shù)量,而且可以提高汽車的可靠性、方便錯(cuò)誤檢測、簡化維修過程及減輕總量(改善性能和減少油耗)等。
CAN標(biāo)準(zhǔn)作為一種總線標(biāo)準(zhǔn)具有速度快、成本低、易于實(shí)現(xiàn)及使用方便等特點(diǎn),可用于任何需將電子設(shè)備互連起來的場合中。
2.2 CAN原理及其實(shí)施
基本CAN特點(diǎn)是總線間的相對(duì)邏輯狀態(tài)及驅(qū)動(dòng)器輸入與接收機(jī)輸出。總線接人是事件驅(qū)動(dòng)且隨機(jī)發(fā)生的,如果2個(gè)節(jié)點(diǎn)試圖同時(shí)占用總線,則以非破壞性逐位仲裁實(shí)施接人。標(biāo)識(shí)符中消息優(yōu)先級(jí)的分配是CAN的一大特性,使之極其適用于實(shí)時(shí)控制環(huán)境。
CAN總線上可傳輸?shù)南⒐灿腥缦?種不同的類型或幀:①數(shù)據(jù)幀是最常見的消息類型,由仲裁場(arbitration field)、數(shù)據(jù)字段(data field)、CRC字段與確認(rèn)字段(acknoeledgement field)構(gòu)成;②遠(yuǎn)程幀的目的在于請(qǐng)求從另一節(jié)點(diǎn)進(jìn)行數(shù)據(jù)傳輸。遠(yuǎn)程幀類似于數(shù)據(jù)幀,但有2點(diǎn)重大差異,首先這種類型的消息由仲裁場中的隱性RTR位明確標(biāo)為遠(yuǎn)程幀,其次其不涉及數(shù)據(jù);③錯(cuò)誤幀是特殊消息,其不遵循CAN消息的格式化規(guī)則。
當(dāng)節(jié)點(diǎn)檢測到消息中出現(xiàn)錯(cuò)誤時(shí),則傳輸錯(cuò)誤幀,并使網(wǎng)絡(luò)中所有其他節(jié)點(diǎn)也都發(fā)送錯(cuò)誤幀。原始發(fā)送器隨后自動(dòng)重新傳輸消息。CAN控制器中帶有復(fù)雜的錯(cuò)誤計(jì)數(shù)器系統(tǒng),確保節(jié)點(diǎn)不會(huì)重復(fù)傳輸錯(cuò)誤幀導(dǎo)致總線被一直占用;④過載幀就格式而言與錯(cuò)誤幀類似,它由超常忙的節(jié)點(diǎn)傳輸,主要用于提供更多的消息間延遲。
平衡的差動(dòng)信號(hào)發(fā)送降低了噪聲耦合,并允許在雙絞線線纜上實(shí)現(xiàn)更高的信號(hào)發(fā)送速率。平衡的含義是指每條信號(hào)線中流過的電流相等,但方向相反,這就形成了場抵消效應(yīng),這是降低噪聲排放的關(guān)鍵。使用平衡差動(dòng)接收機(jī)與雙絞線線纜提高了CAN總線的共模抑制及噪聲抗擾度。CAN標(biāo)準(zhǔn)定義了連接總線上所有節(jié)點(diǎn)的通信網(wǎng)絡(luò),并使其能夠相互對(duì)話??赡艽嬖谥醒肟刂乒?jié)點(diǎn),也可能不存在,而且可隨時(shí)添加節(jié)點(diǎn),甚至在網(wǎng)絡(luò)正在工作時(shí)也沒有問題(熱插人)。
3 LIN總線技術(shù)
3.1 LIN協(xié)議
LIN(Local Interconnect Network)協(xié)議是面向車輛低端分布式應(yīng)用的一類多路復(fù)用串行通信協(xié)議。LIN標(biāo)準(zhǔn)包括傳輸協(xié)議規(guī)范、傳輸媒體規(guī)范、開發(fā)工具接口和用于軟件編程的接口。LIN規(guī)范包括3個(gè)主要部分:①LIN協(xié)議規(guī)范說明LIN的物理層和數(shù)據(jù)鏈路層;②LIN配置語言描述說明LIN配置文件的格式,LIN配置文件被用于配置整個(gè)網(wǎng)絡(luò),并作為OEM和不同網(wǎng)絡(luò)節(jié)點(diǎn)供應(yīng)商之間的公共接口,同時(shí)可作為開發(fā)和分析工具的一
個(gè)輸人;~LINAPI部分說明網(wǎng)絡(luò)與應(yīng)用程序問的接口,此概念可實(shí)現(xiàn)開發(fā)和設(shè)計(jì)工具之間的無縫連接,并可提高開發(fā)速度和增強(qiáng)網(wǎng)絡(luò)可靠性 ]。LIN總線特點(diǎn):①采用低成本單線l2 V進(jìn)行數(shù)據(jù)傳輸,線的驅(qū)動(dòng)和接收特性符合改進(jìn)的IS09141單線標(biāo)準(zhǔn);②傳輸速率可達(dá)20 kbit/s;③采用單主/多從結(jié)構(gòu),不需要總線仲裁,由主節(jié)點(diǎn)來控制總線的訪問;④ 基于通用UART/SCI的硬件接口,可使用低成本的半導(dǎo)體工藝實(shí)現(xiàn),幾乎所有的微控制器都有LIN必需的硬件;⑤從節(jié)點(diǎn)不需要晶振或陶瓷振蕩器就可實(shí)現(xiàn)自同步,從而減少了從節(jié)點(diǎn)的硬件成本;⑥能保證最差狀況下信號(hào)傳送的等待時(shí)間,可避免總線訪問沖突。
3.2 LIN原理及運(yùn)行機(jī)制
LIN協(xié)議設(shè)計(jì)時(shí)考慮了新增加從節(jié)點(diǎn)無需改變?cè)瓉淼能浖陀布IN協(xié)議提供節(jié)點(diǎn)功能異常和傳輸故障時(shí)內(nèi)部的錯(cuò)誤檢測。由系統(tǒng)中的唯一主節(jié)點(diǎn)初始化每次的數(shù)據(jù)傳輸,從節(jié)點(diǎn)僅在主節(jié)點(diǎn)訪問時(shí)進(jìn)行回答,從而避免了網(wǎng)上傳輸?shù)闹俨谩墓?jié)點(diǎn)使用內(nèi)部的再同步模式在收發(fā)數(shù)據(jù)時(shí)鎖定于主節(jié)點(diǎn)。從節(jié)點(diǎn)僅需十分廉價(jià)的振蕩器提供時(shí)序,從而簡化電路和降低造價(jià)。
LIN網(wǎng)絡(luò)中,每個(gè)節(jié)點(diǎn)都有一個(gè)slave task模塊,主節(jié)點(diǎn)還包含一個(gè)master task模塊。LIN網(wǎng)絡(luò)中的所有通信都是由master task發(fā)起的。mastertask發(fā)出幀頭啟動(dòng)網(wǎng)絡(luò)中的通信,幀頭包含如下3部分:同步間隙、同步場和信息標(biāo)志符。從任務(wù)通過信息識(shí)別符來判斷是否響應(yīng)主任務(wù),若需要響應(yīng)主任務(wù),則開始發(fā)送響應(yīng)信息。響應(yīng)信息由2個(gè)、4個(gè)或8個(gè)數(shù)據(jù)字節(jié)和1個(gè)校驗(yàn)和字節(jié)組成。LIN的數(shù)據(jù)幀由幀頭和響應(yīng)信息組。LIN總線的另一個(gè)幀是睡眠幀,它由主任務(wù)發(fā)出,其作用是讓總線和節(jié)點(diǎn)進(jìn)入低功耗狀態(tài)。LIN協(xié)議的最大優(yōu)點(diǎn)在于其不需要專用的硬件控制器,只是在SCI接口的基礎(chǔ)上添加了一套C語言API函數(shù)。用戶在開發(fā)LIN應(yīng)用程序時(shí),并不直接讀寫微控制器內(nèi)部的寄存器,只要調(diào)用相應(yīng)的API即可完成同樣功能的操作。目前存在兩類API函數(shù),即LIN API和Motorola API。LINAPI共2O個(gè)函數(shù),可以完成包括系統(tǒng)初始化、數(shù)據(jù)讀寫、節(jié)點(diǎn)上線/離線、中斷屏蔽等功能。Mo.torola API完全基于信息幀模式,通過LIN—Get.Msg和LIN—PutMsg對(duì)一幀信息進(jìn)行操作,每一個(gè)節(jié)點(diǎn)的信息標(biāo)志符在編譯時(shí)通過頭文件進(jìn)行配置,不需要其他輔助工具。
4 CAN/LIN技術(shù)在車內(nèi)中的應(yīng)用
由于汽車內(nèi)的環(huán)境很復(fù)雜,如極高的電器噪聲、機(jī)械應(yīng)力、溫度和易燃性等特點(diǎn),并且如果在網(wǎng)絡(luò)連接上出現(xiàn)任何的差錯(cuò)都可能會(huì)造成嚴(yán)重的后果,甚至危及生命。因此,CAN標(biāo)準(zhǔn)對(duì)數(shù)據(jù)通信提供了如下保證:數(shù)據(jù)通信的可靠性,采用CRC校驗(yàn)以及獨(dú)特的數(shù)據(jù)信號(hào)表示方式,并具有錯(cuò)誤識(shí)別及自動(dòng)重發(fā)功能;數(shù)據(jù)通信的實(shí)時(shí)陛,數(shù)據(jù)傳輸速率高,優(yōu)先級(jí)高的數(shù)據(jù)享有占用總線的優(yōu)先權(quán);數(shù)據(jù)通信的靈活性,多主戰(zhàn)總線結(jié)構(gòu),各總線節(jié)點(diǎn)問可直接通信,面向數(shù)據(jù)塊的通信方式,通信介質(zhì)可為雙絞線、同軸電纜或光纖,通過標(biāo)準(zhǔn)插接件可方便的連接。LIN是面向低端通信的一類協(xié)議,主要應(yīng)用在通信速率不高的場合。LIN最初是作為汽車應(yīng)用提出的,主要應(yīng)用于車身電控單元的集成,將智能執(zhí)行器和傳感器連接到車身主體網(wǎng)絡(luò)等。通過單線的方式實(shí)現(xiàn)節(jié)點(diǎn)問的通信可大大降低汽車車身布線的復(fù)雜性,這也是LIN應(yīng)用的潛力所在。LIN最初的設(shè)計(jì)目標(biāo)是作為CAN的下層網(wǎng)絡(luò),與CAN相結(jié)合構(gòu)成車輛的分層網(wǎng)絡(luò)結(jié)構(gòu),整個(gè)車身的主體網(wǎng)絡(luò)由CAN來架構(gòu),而用LIN擔(dān)任局部通信 。車內(nèi)CAN/LIN總線應(yīng)用的結(jié)構(gòu)圖如圖1所示。
[align=center]
圖1 車內(nèi)總線應(yīng)用結(jié)構(gòu)圖[/align]
在汽車電子控制單元的設(shè)計(jì)中應(yīng)該首先考慮的是安全問題,所以對(duì)于那些關(guān)鍵控制部分,如汽車發(fā)動(dòng)機(jī)、自動(dòng)變速箱、剎車裝置和安全氣囊等單元應(yīng)該采用分散式控制;而對(duì)于那些與安全無關(guān)的單元比,如汽車的門窗、方向盤、座椅、空調(diào)、照明、濕度傳感器和交流發(fā)電機(jī)控制單元等,出于成本的考慮,可以采用CAN與LIN混合的集中控制方式。對(duì)于這些成本比較敏感的單元,LIN可以使那些機(jī)械元件,如智能傳感器、制動(dòng)器或光敏器件得到較廣泛的應(yīng)用。這些器件可以很容易地連接到汽車網(wǎng)絡(luò)中,并得到十分方便的維護(hù)和服務(wù)。在LIN實(shí)現(xiàn)的系統(tǒng)中,通常將模擬信號(hào)量用數(shù)字信號(hào)量所替換,這將使總線性能得到優(yōu)化。
5 結(jié)束語
CAN總線是為汽車而開發(fā)的串行數(shù)據(jù)通信總線,目前在世界上一些汽車制造商都在積極地將CAN總線用在新型汽車上。而且由于其本身的優(yōu)點(diǎn),它的應(yīng)用范圍不局限于汽車行業(yè)內(nèi),而在機(jī)械制造和機(jī)器人等領(lǐng)域發(fā)展。在車身控制系統(tǒng)中應(yīng)用LIN總線降低了低端通信網(wǎng)絡(luò)的成本,同時(shí)增加了設(shè)計(jì)的靈活性,提高了系統(tǒng)的可靠性,有利于分布式車身控制系統(tǒng)的開發(fā)。因此LIN總線在汽車領(lǐng)域有著良好的應(yīng)用前景,此外,LIN作為一種開放協(xié)議,還可在工業(yè)和家電領(lǐng)域完成速度要求不高、連接距離較短的設(shè)備問的通信任務(wù)。