CAN已經(jīng)形成國際標(biāo)準(zhǔn),并已被公認(rèn)為幾種最有前途的現(xiàn)場總線之一。CAN 總線的數(shù)據(jù)通信具有突出的可靠性、實(shí)時性和靈活性。由于其良好的性能及獨(dú)特的設(shè)計,CAN總線越來越受到人們的重視,它在汽車領(lǐng)域上的應(yīng)用是最廣泛的。接下來及跟隨小編一起來了解一下CAN總線的工作原理、特點(diǎn)及優(yōu)缺點(diǎn)、應(yīng)用領(lǐng)域及應(yīng)用案例吧。
CAN總線的發(fā)展概述
CAN英文全稱為(Controller Area Network)即局域網(wǎng)控制器,CAN能夠?qū)崿F(xiàn)分布式實(shí)時控制。能夠?qū)⒍喾N智能機(jī)器進(jìn)行網(wǎng)絡(luò)連接,并進(jìn)行統(tǒng)一控制。
CAN最初由羅伯特·博世公司所開發(fā),1993年開始被廣泛應(yīng)用在各種車輛與電子設(shè)備上。CAN能提供安全、有效、即時控制,能使網(wǎng)絡(luò)消息的傳輸速度快,效率高,并且能提供多個端口統(tǒng)一控制或多主控制等多種功能。
CAN總線的結(jié)構(gòu)
CAN總線的物理層是將ECU(Electronic Control Unit-電子控制單元,又稱“行車電腦”、“車載電腦”等)連接至總線的驅(qū)動電路。ECU的總數(shù)將受限于總線上的電氣負(fù)荷。物理層定義了物理數(shù)據(jù)在總線上各節(jié)點(diǎn)間的傳輸過程,主要是連接介質(zhì)、線路電氣特性、數(shù)據(jù)的編碼/解碼、位定時和同步的實(shí)施標(biāo)準(zhǔn)。
理論上,CAN總線上的節(jié)點(diǎn)數(shù)幾乎不受限制,可達(dá)到2000個,實(shí)際上受電氣特性的限制,最多只能接100多個節(jié)點(diǎn)。
CAN的數(shù)據(jù)鏈路層是其核心內(nèi)容,其中邏輯鏈路控制(LOagie Link Control,LLC)完成過濾、過載通知和管理恢復(fù)等功能,媒體
訪問控制(Medium Access Control,MAC)子層完成數(shù)據(jù)打包/解包、幀編碼、媒體訪問管理、錯誤檢測、錯誤信令、應(yīng)答、串并轉(zhuǎn)換等功能。這些功能都是圍繞信息幀傳送過程展開的。
CAN總線原理
CAN總線使用串行數(shù)據(jù)傳輸方式,可以1Mb/s的速率在40m的雙絞線上運(yùn)行,也可以使用光纜連接,而且在這種總線上總線協(xié)議支持多主控制器。CAN與I2C總線的許多細(xì)節(jié)很類似,但也有一些明顯的區(qū)別。
當(dāng)CAN總線上的一個節(jié)點(diǎn)(站)發(fā)送數(shù)據(jù)時,它以報文形式廣播給網(wǎng)絡(luò)中所有節(jié)點(diǎn)。對每個節(jié)點(diǎn)來說,無論數(shù)據(jù)是否是發(fā)給自己的,都對其進(jìn)行接收。每組報文開頭的11位字符為標(biāo)識符,定義了報文的優(yōu)先級,這種報文格式稱為面向內(nèi)容的編址方案。在同一系統(tǒng)中標(biāo)識符是唯一的,不可能有兩個站發(fā)送具有相同標(biāo)識符的報文。當(dāng)幾個站同時競爭總線讀取時,這種配置十分重要。
當(dāng)一個站要向其它站發(fā)送數(shù)據(jù)時,該站的CPU將要發(fā)送的數(shù)據(jù)和自己的標(biāo)識符傳送給本站的CAN芯片,并處于準(zhǔn)備狀態(tài);當(dāng)它收到總線分配時,轉(zhuǎn)為發(fā)送報文狀 態(tài)。CAN芯片將數(shù)據(jù)根據(jù)協(xié)議組織成一定的報文格式發(fā)出,這時網(wǎng)上的其它站處于接收狀態(tài)。每個處于接收狀態(tài)的站對接收到的報文進(jìn)行檢測,判斷這些報文是否是發(fā)給自己的,以確定是否接收它。
由于CAN總線是一種面向內(nèi)容的編址方案,因此很容易建立高水準(zhǔn)的控制系統(tǒng)并靈活地進(jìn)行配置。我們可以很容易地在CAN總線中加進(jìn)一些新站而無需在硬件或 軟件上進(jìn)行修改。當(dāng)所提供的新站是純數(shù)據(jù)接收設(shè)備時,數(shù)據(jù)傳輸協(xié)議不要求獨(dú)立的部分有物理目的地址。它允許分布過程同步化,即總線上控制器需要測量數(shù)據(jù)時,可由網(wǎng)上獲得,而無須每個控制器都有自己獨(dú)立的傳感器。
CAN總線的特點(diǎn)
1、具有實(shí)時性強(qiáng)、傳輸距離較遠(yuǎn)、抗電磁干擾能力強(qiáng)、成本低等優(yōu)點(diǎn);
2、采用雙線串行通信方式,檢錯能力強(qiáng),可在高噪聲干擾環(huán)境中工作;
3、具有優(yōu)先權(quán)和仲裁功能,多個控制模塊通過CAN 控制器掛到CAN-bus 上,形成多主機(jī)局部網(wǎng)絡(luò);
4、可根據(jù)報文的ID決定接收或屏蔽該報文;
5、可靠的錯誤處理和檢錯機(jī)制;
6、發(fā)送的信息遭到破壞后,可自動重發(fā);
7、節(jié)點(diǎn)在錯誤嚴(yán)重的情況下具有自動退出總線的功能;
8、報文不包含源地址或目標(biāo)地址,僅用標(biāo)志符來指示功能信息、優(yōu)先級信息。
CAN總線的優(yōu)點(diǎn)
1、CAN為多主方式工作,網(wǎng)絡(luò)上任一節(jié)點(diǎn)均可在任一時刻主動地向網(wǎng)絡(luò)上其他節(jié)點(diǎn)發(fā)送信息,而不分主從。
2、在報文標(biāo)識符上,CAN上的節(jié)點(diǎn)分成不同的優(yōu)先級,可滿足不同的實(shí)時需要,優(yōu)先級高的數(shù)據(jù)最多可在134μs內(nèi)得到傳輸。
3、CAN采用非破壞總線仲裁技術(shù)。當(dāng)多個節(jié)點(diǎn)同時向總線發(fā)送信息發(fā)生沖突時,優(yōu)先級較低的節(jié)點(diǎn)會主動退出發(fā)送,而最高優(yōu)先級的節(jié)點(diǎn)可不受影響地繼續(xù)傳輸數(shù)據(jù),從而大大節(jié)省了總線沖突仲裁時間。尤其是在網(wǎng)絡(luò)負(fù)載很重的情況下,也不會出現(xiàn)網(wǎng)絡(luò)癱瘓的情況(以太網(wǎng)則可能)。
4、CAN節(jié)點(diǎn)只需要通過對報文的標(biāo)識符濾波即可實(shí)現(xiàn)點(diǎn)對點(diǎn)、一點(diǎn)對多點(diǎn)及全局廣播等幾種方式傳送接收數(shù)據(jù)。
5、CAN的直接通信距離最遠(yuǎn)可達(dá)10km(速率5kbps以下)通信速率最高可達(dá)1Mbps(此時通信距離最長為40m)。
6、CAN上的節(jié)點(diǎn)數(shù)取決于總線驅(qū)動電路,目前可達(dá)110個。標(biāo)準(zhǔn)幀報文標(biāo)識符有11位、擴(kuò)展幀的報文標(biāo)識符(29位)的個數(shù)幾乎不受限制。
7、報文采用短幀結(jié)構(gòu)、傳輸時間短,受干擾概率低,保證了數(shù)據(jù)出錯率極低。
8、CAN的每幀信息都有CRC校驗(yàn)及其他檢錯措施,具有極好的檢錯效果。
9、CAN通信介質(zhì)可為雙絞線、同軸電纜或光纖,選擇靈活。
10、CAN節(jié)點(diǎn)在錯誤嚴(yán)重的情況下可自動關(guān)閉輸出功能,以使總線上其他節(jié)點(diǎn)的操作不受影響。
CAN總線的應(yīng)用
(1)CAN總線技術(shù)的應(yīng)用
國外知名汽車基本都已經(jīng)采用了CAN總線技術(shù),例如沃爾沃、林肯、奧迪、寶馬等,而國內(nèi)汽車品牌,例如奇瑞等公司也已經(jīng)有幾款車型應(yīng)用了總線技術(shù)。 CAN總線技術(shù)就是通過遍布車身的傳感器,將汽車的各種行駛數(shù)據(jù)發(fā)送到“總線”上,在這個信息共享平臺上,凡是需要這些數(shù)據(jù)的接收端都可以從“總線”上讀 取需要的信息,從而使汽車的各個系統(tǒng)協(xié)調(diào)運(yùn)作、信息共享、保證車輛安全行駛、舒適和可靠。一般來說,越高檔的車配備的CAN_BUS數(shù)量越多,價格也越 高,如途安、帕薩特等車型當(dāng)中都配備了多個CAN總線。
?。?)汽車CAN總線節(jié)點(diǎn)ECU的硬件設(shè)計
汽車CAN總線研發(fā)的核心技術(shù)就是對帶有CAN接口的ECU進(jìn)行設(shè)計,其中ECU的CAN總線模塊由CAN控制器和CAN收發(fā)器構(gòu)成。CAN控制器執(zhí)行完整的CAN協(xié)議,完成通訊功能,包括信息緩沖和接收濾波。CAN控制器與物理總線之間需CAN收發(fā)器作為接口,它實(shí)現(xiàn)CAN控制器與總線之間邏輯電平信 號的轉(zhuǎn)換。
(3)CAN總線在國內(nèi)自主品牌汽車中的應(yīng)用
由于受成本控制、技術(shù)實(shí)力等因素的限制,CAN_BUS總線技術(shù)一般都出現(xiàn)在國外高端汽車,在A級及以下級別車型當(dāng)中,該項技術(shù)大多出現(xiàn)在合資品牌當(dāng)中,如POLO、新寶來等。在自主品牌中,采用CAN總線技術(shù)的車型中很少,風(fēng)云2則是其中的代表車型。風(fēng)云2 CAN總線技術(shù),可以實(shí)現(xiàn)發(fā)動機(jī)、變速箱、ABS、車身、儀表及其他控制器的通訊,做到全車信息及時共享。在風(fēng)云2的組合儀表盤當(dāng)中,階段里程、未關(guān)車門精確顯示、安全帶未系提醒等20多項信息全部可以顯示,比同級產(chǎn)品增加一倍,這樣增加了駕駛過程中的安全度。
?。?)未來智能傳感器發(fā)展趨勢
CAN總線作為一種可靠的汽車計算機(jī)網(wǎng)絡(luò)總線已在許多先進(jìn)汽車上得到應(yīng)用,將CAN總線應(yīng)用于智能傳感器中, 使傳感器獲得的信號能通過總線實(shí)時地、可靠地、高速而準(zhǔn)確地進(jìn)行傳輸,使得各汽車計算機(jī)控制單元能夠通過CAN總線共享所有信息和資源,達(dá)到簡化布線、減 少傳感器數(shù)量、避免控制功能重復(fù)、提高系統(tǒng)可靠性、降低成本、更好地匹配和協(xié)調(diào)各個控制系統(tǒng)的目的。同時,由于整個智能傳感器網(wǎng)絡(luò)采用全數(shù)字化的通信,因此,總線也具有很好的抗干擾能力,是未來智能化傳感器和智能化控制網(wǎng)絡(luò)的發(fā)展趨勢。
CAN總線的應(yīng)用案例(汽車CAN總線應(yīng)用)
汽車就是CAN總線的最典型應(yīng)用。CAN總線利用兩條銅做的導(dǎo)線,CAN高線和CAN低線,一條用于動力系統(tǒng)的高速CAN,另一條用于車身系統(tǒng)的低速CAN。
在汽車CAN總線網(wǎng)絡(luò)中,將汽車儀表、ECU、控制模塊、變速箱、輔助剎車系統(tǒng)、各種傳感器和開關(guān)像修建高速公路一樣連在一起,實(shí)現(xiàn)信息的實(shí)時同步,汽車的各項數(shù)據(jù)信息像高速公路上疾馳的車流一樣,而CAN接口就是收費(fèi)站,負(fù)責(zé)把各個元器件連接到這條“高速公路”上。
為什么汽車要使用CAN總線?
隨著汽車技術(shù)的發(fā)展,其中的電子控制單元越來越多,例如電子燃油噴射裝置、防抱死制動裝置(ABS)、安全氣囊裝置、電控門窗裝置和主動懸架等等。在這種情況下,如果仍采用常規(guī)的布線方式,將導(dǎo)致車上電線數(shù)目急劇增加。另外,電控系統(tǒng)的增加雖然提高了轎車的安全性、經(jīng)濟(jì)性和舒適性,但隨之增加的復(fù)雜電路也降低了車輛的可靠性,增加了維修的難度。
因此,CAN總線就應(yīng)運(yùn)而生。它是一種多主總線,通信介質(zhì)可以是雙絞線、同軸電纜或光導(dǎo)纖維。CAN總線具有較強(qiáng)的糾錯能力,支持差分收發(fā),因而適合高干擾環(huán)境,并具有較遠(yuǎn)的傳輸距離。功能上,CAN總線可以簡化車身線路布局,提高車身電控系統(tǒng)的穩(wěn)定性,使汽車在控制方面更加智能、精確。是目前應(yīng)用最多的總線標(biāo)準(zhǔn)之一。
汽車CAN總線網(wǎng)絡(luò)結(jié)構(gòu):
汽車動力系統(tǒng)CAN主要連接對象是發(fā)動機(jī)控制器(ECU)、變速箱、ABS控制器、安全氣囊控制器等等,它們的基本特征相同,都是控制與汽車行駛直接相關(guān)的系統(tǒng)。
車身系統(tǒng)CAN主要連接和控制的汽車內(nèi)外部照明、燈光信號、空調(diào)、組合儀表及其他輔助電器等。
目前,動力系統(tǒng)CAN和車身系統(tǒng)CAN這兩條獨(dú)立的總線之間設(shè)計有“網(wǎng)關(guān)”,以實(shí)現(xiàn)在各個CAN之間的資源共享,并將各個數(shù)據(jù)總線的信息反饋到儀表板上。駕車者只要看儀表板,就可以知道各個電控裝置是否正常工作了。
下圖是我們采集車輛數(shù)據(jù)的圖片,筆記本連接我們的USBCAN設(shè)備的USB一端,汽車的OBD口連接我們設(shè)備的CAN一端,這樣我們就可以用電腦來讀取汽車CAN總線上發(fā)送的數(shù)據(jù)了。這條數(shù)據(jù)可能是發(fā)動機(jī)發(fā)給變速箱的控制命令,也可能是溫度傳感器上傳的溫度信息。
名詞解釋——OBD接口:汽車的診斷接口,07年之后的每臺車上都有它哦,這個診斷接口可以輸出一系列的發(fā)動機(jī)傳感器數(shù)據(jù),車速、油耗信息等。這個接口一般是修車店使用來檢測車輛故障情況的。神州專車廣告中提到的“OBD車速監(jiān)測,保證60km/h以下”就是利用OBD接口實(shí)現(xiàn)的。
評論
查看更多