什么叫CAN總線
CAN 總線是控制器局域網(wǎng)絡(luò)(Controller Area Network)的簡稱,是一種支持分布式控制的串行數(shù)據(jù)通信總線。
CAN 總線由德國博世公司在 1985 年開發(fā),最初是為了解決汽車上眾多測試儀器與控制單元之間的數(shù)據(jù)傳輸問題。它最大數(shù)據(jù)信息傳輸速率為 1Mbit/s,通信距離最遠(yuǎn)可達(dá) 10km,屬于中速網(wǎng)絡(luò)。
CAN 總線具有以下特點:
1. 節(jié)點不分主從,任一節(jié)點都可以主動與其他節(jié)點進(jìn)行通信。
2. 節(jié)點信息具有優(yōu)先級,高優(yōu)先級的數(shù)據(jù)可以在 134 微秒內(nèi)傳輸,滿足不同級別的實時要求。
3. 采用非破壞性總線仲裁技術(shù),多個節(jié)點同時向總線發(fā)送信息時,優(yōu)先級低的節(jié)點主動退出發(fā)送,最高優(yōu)先級的節(jié)點繼續(xù)傳輸數(shù)據(jù),即便網(wǎng)絡(luò)負(fù)載很重也不會癱瘓。
4. 可通過報文濾波實現(xiàn)點對點、一點對多點和全局廣播等多種方式的數(shù)據(jù)傳輸,無需專門調(diào)度。
5. 總線上的節(jié)點數(shù)主要取決于總線驅(qū)動電路,最多可達(dá) 110 個。
6. 采用短幀結(jié)構(gòu),傳輸時間短,受干擾概率低,錯誤檢測效果好。
7. 設(shè)有錯誤檢測、標(biāo)定和自檢等措施,保證了低的數(shù)據(jù)出錯率。
8. 最遠(yuǎn)直接通信距離可達(dá) 10 公里(速率在 5kbit/s 以下),最高通信速率可達(dá) 1Mbit/s(此時距離最長為 40 米)。
9. 通信介質(zhì)選擇靈活,可以是雙絞線、同軸電纜或光纖。
10. 在錯誤嚴(yán)重時,CAN 節(jié)點會自動關(guān)閉輸出,不影響總線上其他節(jié)點運(yùn)行。
CAN 總線的結(jié)構(gòu)包括分層結(jié)構(gòu)和拓?fù)浣Y(jié)構(gòu)。分層結(jié)構(gòu)參照 ISO/OSI 標(biāo)準(zhǔn)模型,定義了數(shù)據(jù)鏈路層和物理層,一些組織還制定了應(yīng)用層協(xié)議。拓?fù)浣Y(jié)構(gòu)常見的有總線型、環(huán)型、星型等,CAN 總線常采用總線型拓?fù)洌子趯崿F(xiàn)但容錯和拓展能力較差。
CAN 總線依據(jù)用途定義了 4 種幀結(jié)構(gòu):數(shù)據(jù)幀、遠(yuǎn)程幀、差錯幀和超載幀。數(shù)據(jù)幀可攜帶數(shù)據(jù),遠(yuǎn)程幀用于請求數(shù)據(jù),差錯幀處理錯誤,超載幀通知推遲發(fā)送。
CAN 總線采用位仲裁機(jī)制,通過按位對標(biāo)識符進(jìn)行仲裁來分配總線,ID 號越小,報文優(yōu)先級越高。還采用位填充方法,避免時間誤差累積影響工作。
CAN 協(xié)議定義了五種錯誤檢測方法:位錯誤、填充錯誤、CRC 錯誤、格式錯誤和確認(rèn)錯誤。每個節(jié)點有兩個錯誤計數(shù)器,根據(jù)計數(shù)器數(shù)值分為激活錯誤、被動錯誤和總線關(guān)閉三種狀態(tài)。
在調(diào)試方面,CAN 收發(fā)器和 CAN 控制器集成在電控單元內(nèi)部,兼具接收、發(fā)送和轉(zhuǎn)化數(shù)據(jù)信號的功能,可通過測量其發(fā)送和接收信號來驗證工作狀態(tài)。
CAN 總線作為一種先進(jìn)、可靠、功能完善、成本合理的遠(yuǎn)程網(wǎng)絡(luò)通信控制方式,在汽車、自動化等領(lǐng)域廣泛應(yīng)用,如汽車的車身控制器局域網(wǎng)、傳感器接口傳輸、汽車 CAN 總線節(jié)點 ECU 的設(shè)計,以及其他領(lǐng)域的 PLC 間遠(yuǎn)程配置、水下潮流測量等。
(圖/文/攝:太平洋汽車 整理于互聯(lián)網(wǎng))
>>點擊查看今日優(yōu)惠<<