本文帶領(lǐng)你一起解讀汽車CAN通訊總線,從CAN的原理、設(shè)計(jì)、應(yīng)用以及維修,全方面解析讀懂CAN通訊,遇到汽車通訊協(xié)議故障,無師自通!
一、“什么是CAN?”
CAN,是controller Area Network的縮寫,即控制器局域網(wǎng),是國際上應(yīng)用最廣泛的現(xiàn)場總線之一。最初,CAN被設(shè)計(jì)作為汽車的微控制器通訊,在車載各電子控制裝置(比如發(fā)動(dòng)機(jī)管理系統(tǒng)、變速箱控制器、儀表裝備、電子主干系統(tǒng)中,均嵌入CAN控制裝置)之間交換信息,形成汽車電子控制網(wǎng)絡(luò)。
一個(gè)由CAN總線構(gòu)成的單一網(wǎng)絡(luò)中,理論上可以掛無數(shù)個(gè)節(jié)點(diǎn)。實(shí)際應(yīng)用中,節(jié)點(diǎn)數(shù)目受網(wǎng)絡(luò)硬件的電氣特性限制。常見的CAN線的頻率有250Kbs/500Kbs/1000Kbs,不同的頻率代表傳輸速度的快慢不一樣。
二、“CAN的工作原理?”
CAN通訊協(xié)議主要描述設(shè)備之間的信息傳遞方式。CAN層的定義與開放系統(tǒng)互連模型一致。每一層與另一設(shè)備上的相同的那一層通訊。實(shí)際的通訊發(fā)生在每一設(shè)備上相鄰的兩層,而設(shè)備只通過模型物理層的物理介質(zhì)互連。
CAN能夠使用多種物理介質(zhì),例如雙絞線、光釬等。最常用的就是雙絞線,信號使用差分電壓傳送,兩條信號線被稱為“CAN_H”和“CAN_L”,靜態(tài)時(shí)均是2.5V左右,此時(shí)狀態(tài)表示為邏輯“1”,也可以叫做“隱性”。用CAN_H比CAN_L高表示邏輯“0”,稱為“顯形”;此時(shí),通常電壓值為:CAN_H=3.5V和CAN_L=1.5V。
三、CAN總線的通訊原理
第一種『每項(xiàng)信息都通過各自獨(dú)立的數(shù)據(jù)線進(jìn)行交換』
目前,在車輛上應(yīng)用的信息傳遞形式有兩種。第一種是每項(xiàng)信息都通過各自獨(dú)立的數(shù)據(jù)線進(jìn)行交換,比如兩個(gè)控制單元間有5種信息需要傳遞,那么則需要5根獨(dú)立的數(shù)據(jù)線,即信息的種類越多,數(shù)據(jù)線的數(shù)量和控制單元的針腳數(shù)也會(huì)相應(yīng)增加。這些復(fù)雜繁多的線束無疑會(huì)增加車身重量,也為整車的布線帶來一定困難。
第二種『所有信息都通過兩根數(shù)據(jù)線進(jìn)行交換』
第二種方式是控制單元之間的所有信息都通過兩根數(shù)據(jù)線進(jìn)行交換,這種數(shù)據(jù)線也叫CAN數(shù)據(jù)總線。通過該種方式,所有的信息,不管信息容量的大小,都可以通過這兩條數(shù)據(jù)線進(jìn)行傳遞,這種方式充分的提高了整個(gè)系統(tǒng)的運(yùn)行效率。我們常見的電腦鍵盤有104個(gè)按鍵,卻可以發(fā)出數(shù)百種不同的指令,但鍵盤與電腦主機(jī)之間的數(shù)據(jù)連接線只有7根,鍵盤正是依靠這7根數(shù)據(jù)連接線上不同的編碼信號來傳遞信息的。CAN數(shù)據(jù)總線的原理也正是如此。這種一線一用的專線制改為一線多用制,可以大大減少汽車上電線的數(shù)量,同時(shí)也簡化了整車的布線。
在了解到兩個(gè)控制單元是通過兩根數(shù)據(jù)線來進(jìn)行信息交換的基礎(chǔ)上,就可以將其推而廣之,多個(gè)控制單元之間的通信其實(shí)就是將每個(gè)控制單元都連接到這兩條CAN總線上,從而實(shí)現(xiàn)多個(gè)控制單元間的信息共享。
整個(gè)原理很類似于一個(gè)電話會(huì)議進(jìn)行的方式,一個(gè)電話用戶(控制單元)將數(shù)據(jù)“講”入網(wǎng)絡(luò)中,其他用戶通過網(wǎng)絡(luò)“接聽”這個(gè)數(shù)據(jù),對這個(gè)數(shù)據(jù)感興趣的用戶則會(huì)利用,其他用戶則會(huì)選擇忽略。
四、CAN通訊的設(shè)計(jì)