CAN總線詳細教程.ppt課件_第1頁
CAN總線詳細教程.ppt課件_第2頁
CAN總線詳細教程.ppt課件_第3頁
CAN總線詳細教程.ppt課件_第4頁
CAN總線詳細教程.ppt課件_第5頁
已閱讀5頁,還剩115頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、總線技術及應用CAN 數據總線(CAN BUS)第4講CAN通信技術概述 CAN ( Controller Area Network ) 即控制器局域網絡。由于其高性能、高可靠性、及獨特的設計,CAN越來越受到人們的重視。國外已有許多大公司的產品采用了這一技術。 CAN最初是由德國的BOSCH公司為汽車監測、控制系統而設計的。現代汽車越來越多地采用電子裝置控制,如發動機的定時、注油控制,加速、剎車控制(ASC)及復雜的抗鎖定剎車系統(ABS)等。由于這些控制需檢測及交換大量數據,采用硬接信號線的方式不但煩瑣、昂貴,而且難以解決問題,采用CAN總線上述問題便得到很好地解決。 1993年CAN 成

2、為國際標準ISO11898(高速應用)和ISO11519(低速應用)。 CAN的規范從CAN 1.2 規范(標準格式)發展為兼容CAN 1.2 規范的CAN2.0規范(CAN2.0A為標準格式,CAN2.0B為擴展格式),目前應用的CAN器件大多符合CAN2.0規范。 CAN總線特點 CAN總線是一種串行數據通信協議,其通信接口中集成了CAN協議的物理層和數據鏈路層功能,可完成對通信數據的成幀處理,包括位填充、數據塊編碼、循環冗余檢驗、優先級判別等項工作。 CAN總線特點如下:(1)可以多主方式工作,網絡上任意一個節點均可以在任意時刻主動地向網絡上的其他節點發送信息,而不分主從,通信方式靈活。

3、(2)網絡上的節點(信息)可分成不同的優先級,可以滿足不同的實時要求。 (3)采用非破壞性位仲裁總線結構機制,當兩個節點同時向網絡上傳送信息時,優先級低的節點主動停止數據發送,而優先級高的節點可不受影響地繼續傳輸數據。(4)可以點對點、一點對多點(成組)及全局廣播幾種傳送方式接收數據。(5)直接通信距離最遠可達10km(速率5Kbps以下)。(6)通信速率最高可達1MB/s(此時距離最長40m)。(7)節點數實際可達110個。(8)采用短幀結構,每一幀的有效字節數為8個。(9)每幀信息都有CRC校驗及其他檢錯措施,數據出錯率極低。(10)通信介質可采用雙絞線,同軸電纜和光導纖維,一般采用廉價的

4、雙絞線即可,無特殊要求。(11)節點在錯誤嚴重的情況下,具有自動關閉總線的功能,切斷它與總線的聯系,以使總線上的其他操作不受影響。CAN的發展背景及其應用情況CAN的起源 現代社會對汽車的要求不斷提高,這些要求包括:極高的主動安全性和被動安全性;乘坐的舒適性;駕駛與使用的便捷和人性化;尤其是低排放和低油耗的要求等。 在汽車設計中運用微處理器及其電控技術是滿足這些要求的最好方法,而且已經得到了廣泛的運用。目前這些系統有:ABS(防抱系統)、EBD(制動力分配系統)、EMS(發動機管理系統)、多功能數字化儀表、主動懸架、導航系統、電子防盜系統、自動空調和自動CD 機等。汽車電子技術發展的特點:汽車

5、電子控制技術從單一的控制逐步發展到綜合控制,如點火時刻、燃油噴射、怠速控制、排氣再循環。電子技術從發動機控制擴展到汽車的各個組成部分,如制動防抱死系統、自動變速系統、信息顯示系統等。從汽車本身到融入外部社會環境。 現代汽車電子技術的分類:單獨控制系統:由一個電子控制單元(ECU)控制一個工作裝置或系統的電子控制系統,如發動機控制系統、自動變速器等。集中控制系統:由一個電子控制單元(ECU)同時控制多個工作裝置或系統的電子控制系統。如汽車底盤控制系統。控制器局域網絡系統(CAN總線系統):由多個電子控制單元(ECU)同時控制多個工作裝置或系統,各控制單元(ECU)的共用信息通過總線互相傳遞。帶有

6、中央控制單元的車帶有三個中央控制單元的車帶有三個中央控制單元和總線系統的車帶有三個中央控制單元的CAN驅動網絡車用網絡發展原因電子技術發展-線束增加線控系統(X-BY-WIRE)計算機網絡的廣泛應用智能交通系統的應用汽車發展帶來的問題(1)汽車電子技術的發展汽車上電子裝置越來越多汽車的整體布置空間縮小 (2)傳統電器設備多為點到點通信導致了龐大的線束 (3)大量的連接器導致可靠性降低。粗大的線束與汽車中有限的可用空間之間的矛盾越來越尖銳,電纜的體積、可靠性和重量成為越來越突出的問題,而且也成為汽車輕量化和進一步電子化的最大障礙,汽車的制造和安裝也變得非常困難。(4)存在冗余的傳感器。Vo l

7、v o 汽車近三十年來線束增長的情況 車用網絡:通過總線將汽車上的各種電子裝置與設備連成一個網絡,實現相互之間的信息共享,既減少了線束,又可更好地控制和協調汽車的各個系統,使汽車性能達到最佳。汽車網絡化的優點 布線簡單,設計簡化,節約銅材,降低成本。可靠性提高,可維護性大為提高 實現信息共享,提高汽車性能滿足現代汽車電子設備種類功能越來越多的要求 總之,使用汽車網絡不僅可以減少線束,而且能夠提高各控制系統的運行可靠性,減少冗余的傳感器及相應的軟硬件配置,實現各子系統之間的資源共享,便于集中實現各子系統的在線故障診斷。 Canbus的發展歷史大眾公司首次在97年PASSAT的舒適系統上采用了傳送

8、速率為62.5Kbit/m的Canbus。98年在PASSAT和GOLF的驅動系統上增加了Canbus,傳送速率為500Kbit/m。2000年,大眾公司在PASSAT和GOLF采用了帶有網關的第二代Canbus。2001年,大眾公司提高了Canbus的設計標準,將舒適系統Canbus提高到100Kbit/m, 驅動系統提高到500Kbit/m。2002年,大眾集團在新PQ24平臺上使用帶有車載網絡控制單元的第三代Canbus。2003年,大眾集團在新PQ35平臺上使用五重結構的Canbus系統,并且出現了單線的LIN-BUS。20世紀80年代,Bosch的工程人員開始研究用于汽車的串行總線系

9、統,因為當時還沒有一個網絡協議能完全滿足汽車工程的要求。參加研究的還有Mercedes-Benz公司、Intel公司,還有德國兩所大學的教授。 1986年, Bosch在SAE(汽車工程人員協會)大會上提出了CAN 1987年,INTEL就推出了第一片CAN控制芯片82526;隨后Philips半導體推出了82C200。 1993年,CAN的國際標準ISO11898公布從此CAN 協議被廣泛的用于各類自動化控制領域。 CAN技術的發展1992年,CIA(CAN in Automation)用戶組織成立,之后制定了第一個CAN應用層“CAL”。 1994年開始有了國際CAN學術年會(ICC)。

10、1994年美國汽車工程師協會以CAN為基礎制定了SAEJ1939標準,用于卡車和巴士控制和通信網絡。 到今天,幾乎每一輛歐洲生產的轎車上都有CAN;高級客車上有兩套CAN,通過網關互聯;1999年一年就有近6千萬個CAN控制器投入使用;2000年銷售1億多CAN的芯片;2001年用在汽車上的CAN節點數目超過1億個 。 但是轎車上基于CAN的控制網絡至今仍是各大公司自成系統,沒有一個統一標準。 基于CAN的應用層協議應用較通用的有兩種:DeviceNet(適合于工廠底層自動化) 和 CANopen(適合于機械控制的嵌入式應用)。 任何組織或個人都可以從DeviceNet供貨商協會(ODVA)獲

11、得DeviceNet規范。購買者將得到無限制的、真正免費的開發DeviceNet產品的授權。 DeviceNet自2002年被確立為中國國家標準以來,已在冶金、電力、水處理、乳品飲料、煙草、水泥、石化、礦山等各個行業得到成功應用,其低成本和高可靠性已經得到廣泛認同。基于CAN總線的汽車電器網絡結構 目前汽車上的網絡連接方式主要采用2條CAN: 一條用于驅動系統的高速CAN,速率達到500kb/s。主要面向實時性要求較高的控制單元,如發動機、電動機等 另一條用于車身系統的低速CAN,速率是100kb/s。主要是針對車身控制的,如車燈、車門、車窗等信號的采集以及反饋。其特征是信號多但實時性要求低,

12、因此實現成本要求低。 CAN總線布置、結構和基本特點CAN總線系統上并聯有多個元件。這就要求整個系統的布置滿足以下要求: 可靠性高:傳輸故障(不論是由內部還是外部引起的)應能準確識別出來 使用方便:如果某一控制單元出現故障,其余系統應盡可能保持原有功能,以便進行信息交換 數據密度大:所有控制單元在任一瞬時的信息狀態均相同,這樣就使得兩控制單元之間不會有數據偏差。如果系統的某一處有故障,那么總線上所有連接的元件都會得到通知。 數據傳輸快:連成網絡的各元件之間的數據交換速率必須很快,這樣才能滿足實時要求。CAN總線布置、結構和基本特點考慮到信號的重復率及產生出的數據量,CAN總線系統分為三個專門的

13、系統 CAN驅動總線(高速),500Kbit/s,可基本滿足實時要求。 CAN舒適總線(低速),100 Kbit/s,用于對時間要求不高的情況。 CAN“infotainment”總線(低速),100Kbit/s,用于對時間要求不高的情況。CAN-BUS系統組成:CAN收發器: 安裝在控制器內部,同時兼具接受和發送的功能,將控制器傳來的數據化為電信號并將其送入數據傳輸線。數據傳輸終端:是一個電阻,防止數據在線端被反射,以回聲的形式返回,影響數據的傳輸。數據傳輸線:雙向數據線,由高低雙絞線組成。Canbus上的控制器中發送信息的線路通過一個開路集電極和總線相連。Canbus的收發器如圖所示,使用

14、一個電路進行控制,這樣也就是說控制單元在某一時間段只能進行發送或接受一項功能。邏輯“1”:所有控制器的開關斷開;總線電平為5Vor3.5V;Canbus未通訊。邏輯“0”:某一控制器閉合;總線電平為0伏; Canbus進行通訊。Canbus的收發器因此總線導線上就會出現兩種狀態:狀態1: 截止狀態,晶體管截止(開關未接合)無源: 總線電平=1,電阻高狀態0: 接通狀態,晶體管導通(開關已接合)有源: 總線電平=0,電阻低2個以上控制器所組成的Canbus系統當用2個以上的控制器連接在Canbus總線上(如圖所示),用邏輯1來表示斷開和用邏輯0表示閉合。不考慮其他總線規則情況下,總線會出現下圖的

15、情況:1.任何開關閉合,總線上的電壓為0伏2.所有開關斷開,總線上的電壓為5伏因此:1.只要任何一個控制器激活,則總線激活2.所有控制器關閉,總線處于未激活狀態激活的總線稱為顯性電平;未激活的總線電平稱為隱形電平功能CAN構件通過RX-線來檢查總線是否有源(是否正在交換別的信息),必要時會等待,直至總線空閑下來為止。(某一時間段內的電平1(無源)如果總線空閑下來,發動機信息就會被發送出去。 Canbus采用雙絞線自身校驗的結構,既可以防止電磁干擾對傳輸信息的影響,也可以防止本身對外界的干擾。系統中采用高低電平兩根數據線,控制器輸出的信號同時向兩根通訊線發送,高低電平互為鏡像。并且每一個控制器都

16、增加了終端電阻,已減少數據傳送時的過調效應。基本構造+1V-1V外界的干擾同時作用于兩根導線產生的電磁波輻射相互抵消0 V數據傳輸線數據傳輸終端數據傳輸終端CAN收發器CAN收發器原則上CAN總線用一條導線就足以滿足功能要求了,但該總線系統上還是配備了第二條導線。在這個第二條導線上,信號是按相反順序傳送的,這樣可有效抑制外部干擾。CAN導線的特點 各個CAN系統的所有控制單元都并聯在CAN數據總線上。CAN數據總線的兩條導線分別叫CAN-High和CAN-Low線。兩條扭絞在一起的導線稱為雙絞線。雙絞線, CAN-High 和 CAN-Low線 (CAN驅動數據總線)控制單元之間的數據交換就是

17、通過這兩條導線來完成的,這些數據可能是發動機轉速、油箱油面高度及車速等。為了清楚起見CAN導線分別用單顏色來表示CAN-High線總是黃色,CAN-Low-線總是綠色 由于汽車不同控制器對CAN總線的性能要求不同,因此最新版本的CAN總線系統人為設定為5個不同的區域,分別為驅動系統、舒適系統、信息系統、多功能儀表、診斷總線等5個局域網。其速率分別為(Kbit/s):驅動系統(由15號線激活):500; 舒適系統(由30號線激活):100信息系統(由30號線激活):100;診斷系統(由30號線激活):500儀表系統(由15號線激活):100;Lin: 20最大承載:1000CAN 儀表CAN 驅

18、動CAN 信息CAN 舒適 CAN 診斷基本構造基本構造網關 由于不同區域Canbus總線的速率和識別代號不同,因此一個信號要從一個總線進入到另一個總線區域,必須把它的識別信號和速率進行改變,能夠讓另一個系統接受,這個任務由網關(Gateway)來完成。另外,網關還具有改變信息優先級的功能。如車輛發生相撞事故,氣囊控制單元會發出負加速度傳感器的信號,這個信號的優先級在驅動系統是非常高,但轉到舒適系統后,網關調低了它的優先級,因為它在舒適系統功能只是打開門和燈。基本構造診斷總線網關儀表總線驅動總線舒適總線信息總線診斷總線診斷總線是用于診斷儀器和相應控制單元之間的信息交換,它被用來代替原來的K線或

19、者L線的功能(廢氣處理控制器除外)。診斷總線目前只能在VAS5051和VAS5052下工作,而不能適用于原來的診斷工具,如1552等。診斷總線通過網關轉接到相應的CANBUS上,然后再連接相應的控制器進行數據交換。隨著診斷總線的使用,大眾集團將逐步淘汰控制器上的K線存儲器,而采用CAN線作為診斷儀器和控制器之間的信息連接線,我們稱之為虛擬K線。針腳號 對應的線束 1 15號線 4 接地 5 接地 6 CANBUS(高) 7 k線 14 CANBUS(低) 15 L線 16 30號線注:未標明的針腳號暫未使用。基本構造當車輛使用診斷CANBUS總線結構后,VAS5051等診斷儀器必須使用相對應的

20、新型診斷線(VAS5051/5A或VAS5051/6A), 否則無法讀出相應的診斷信息。另外,車上的診斷接口也作出了相應的改動,具體信息看如下圖表:注:5051儀器的版本號必須大于3.0以上 才能使用診斷CANBUS總線。新型診斷線能夠適用于舊型診斷接口。CAN總線CAN總線是車內電子裝置中的一個獨立系統,它就是數據線,用于在連接的控制單元之間進行信息交換。由于自身的布置和結構特點,CAN總線工作時的可靠性很高如果CAN總線系統出現故障,故障就會存入相應的控制單元故障存儲器內,可以用診斷儀讀出這些故障。控制單元擁有自診斷功能,我們通過自診斷功能還可識別出與CAN總線相關的故障。用診斷儀(如VA

21、S5051,5052)讀出CAN總線故障記錄后,既可按這些信息準確地查尋故障控制單元內的故障記錄用于初步確定故障,還可用于讀出排除故障后的無故障說明。如果想要更新故障顯示內容,須重新起動發動機。CAN總線正常的一個重要前提條件是:車在任何工況均不應有CAN總線故障記錄。 為了能夠確定及排除故障,就需要了解CAN總線上的數據交換基本原理。CAN總線數據交換基本原理不同的數據傳遞(以CAN驅動數據總線為例)1、提高數據傳遞的可靠性 為了提高數據傳遞的可靠性,CAN數據總線系統的兩條導線(雙絞線)分別用于不同的數據傳送,這兩條線分別稱為CAN-High線和CAN-Low線。2、在顯性狀態和隱性狀態之

22、間進行轉換時CAN導線上的電壓變化 在靜止狀態時,這兩條導線上作用有相同預先設定值,該值稱為靜電平。對于CAN驅動數據總線來說,這個值大約為2.5V。 靜電平也稱為隱性狀態,因為連接的所有控制單元均可修改它。 在顯性狀態時,CAN-High線上的電壓值會升高一個預定值(對CAN驅動數據總線來說,這個值至少為1V)。而CAN-Low線上的電壓值會降低一個同樣值(對CAN驅動數據總線來說,這個值至少為1V)。于是在CAN驅動數據總線上,CAN-High線就處于激活狀態,其電壓不低于3.5(2.5V+1V=3.5V),而CAN-Low線上的電壓值最多可降至1.5V(2.5V-1V=1.5V)。因此在

23、隱性狀態時,CAN-High線與CAN-Low線上的電壓差為0V,在顯性狀態時該差值最低為2V。3、CAN數據總線上的信號變化(以CAN驅動數據總線為例)4、收發器內的CAN-High線和 CAN-Low線上的信號轉換 控制單元是通過收發器聯接到CAN驅動總線上的,在這個收發器內有一個接收器,該接收器是安裝在接收一側的差動信號放大器。 差動信號放大器用于處理來自CAN-High線和CAN-Low線的信號,除此以外還負責將轉換后的信號傳至控制單元的CAN接收區。這個轉換后的信號稱為差動信號放大器的輸出電壓。 差動信號放大器用CAN-High線上的電壓(UCAN-High)減去CAN-Low線上的

24、電壓(UCAN-Low),就得出了輸出電壓,用這種方法可以消除靜電平(對于CAN驅動數據總線來說是2.5V)或其它任何重疊的電壓。5、CAN驅動數據總線差動信號放大器內的信號轉換 收發器的差動信號放大器在處理信號時,會用CAN-High-線上作用的電壓減去CAN-Low-線上作用的電壓。6、CAN驅動數據總線差動信號放大器內的干擾過濾由于數據總線也要布置在發動機艙內,所以數據總線就要遭受各種干擾。在保養時要考慮對 地 短 路 和 蓄 電 池 電 壓 、 點 火 裝 置 的 火 花 放 電 和 靜 態 放 電 。在該圖的上部可清楚地看到這種傳遞的效果。由于CAN-High線和CAN-Low線是扭

25、絞在一起的(雙絞線),所以干擾脈沖X就總是有規律地作用在兩條線上。由于差動信號放大器總是用CAN-High線上的電壓(3.5V-X)減去CAN-Low線上的電壓(1.5V-X),因此在經過處理后,差動信號中就不再有干擾脈沖了.(3,5V - X) - (1,5V - X) = 2V7、信號電平控制單元信號在收發器內的放大收發器發送一側的任務是將控制單元內的CAN控制器的較弱信號放大,使之達到CAN導線上的信號電平和控制單元輸入端的信號電平。聯接在CAN數據總線上的控制單元的作用就像是CAN導線上的一個負載電阻(因為裝有電子元件)。這個負載電阻取決于聯接的控制單元數量和其電阻。收發器將CAN信號

26、輸送到CAN數據總線的兩條導線上,相應地在CAN-High線上的電壓就升高,而在CAN-Low線上的電壓就降低一個同樣大小的值。對于驅動CAN數據總線來說,一條導線上的電壓改變值不低于1V,對于CAN舒適/Infotainment總線來說,這個值不低于3.6V。8、CAN驅動數據總線的特點CAN驅動數據總線的速率為500 kBit/s,用于將CAN驅動數據總線方面的控制單元聯成網絡。CAN驅動數據總線控制單元有:- 發動機控制單元- ABS-控制單元- ESP-控制單元- 變速器控制單元- 安全氣囊控制單元- 組合儀表CAN驅動數據總線由15號接線柱(點火開關)接通,短時工作后,又完全關閉。C

27、AN驅動數據總線上的信號變化下面圖中所示的是一個真實的CAN-電報變化圖,它由一個收發器產生,并由VAS5051的數字存儲式示波器(DSO)接收下來。兩個電平之間的疊加信號變化表示2.5V的隱性電平。CAN-High線上的顯性電壓約為3.5V,CAN-Low線約為1.5V。CAN舒適/ Infotainment數據總線的特點CAN舒適/ Infotainment數據總線的速率為100 kBit/s,用于將CAN舒適總線和CAN Infotainment總線方面的控制單元聯成網。CAN舒適/ Infotainment數據總線控制單元有:- 全自動空調/空調控制單元- 車門控制單元- 舒適控制單元

28、- 收音機和導航顯示單元控制單元 控制單元通過CAN驅動數據總線的CAN-High線和CAN-Low線來進行數據交換,如車門開/關、車內燈開/關、車輛位置(GPS)等等。 由于使用同樣的脈沖頻率,所以CAN舒適數據總線和CAN Infotainment總線可以共同使用一對導線,當然前提條件是相應的車上有這兩種數據總線((如 Golf IV und Polo MJ 2002)。舒適系統的信號圖舒適系統的Canbus信號和驅動系統有很大區別:Can-High的高電平為:3.6伏Can-High的低電平為:0伏Can-Low 的高電平為: 5伏Can-low 的低電平為:1.4伏邏輯“1”:Can-

29、high=3.6V Can-low=1.4V邏輯“0”:Can-high=0VCan-low=5V1、CAN舒適/ Infotainment數據總線的差動數據傳遞 為了使低速CAN抗干擾性強且電流消耗低,與CAN驅動數據總線相比就需做一些改動。 首先,由于使用了單獨的驅動器(功率放大器),這兩個CAN信號就不再有彼此依賴的關系了。與CAN驅動數據總線不同,CAN舒適/ Infotainment數據總線的CAN-High線和CAN-Low線不是通過電阻相連的。也就是說:CAN-High線和CAN-Low線不再彼此相互影響,而是彼此獨立作為電壓源來工作。 另外還放棄了共同的中壓,在隱性狀態(靜電平

30、)時,CAN-High信號為0V,在顯性狀態時3.6V。 對于CAN-Low信號來說,隱性電平為5V,顯性電平1.4V。于是在差頻信號放大器內相減后,隱性電平為-5V,顯性電平為2.2V,那么隱性電平和顯性電平之間的電壓變化(電壓提升)就提高到7.2V。2、CAN舒適/Infotainment數據總線的CAN-收發器測舒適系統高低線的電阻為無窮大!總系統通過網關將三個系統聯成網絡 由于電壓電平和電阻配置不同,所以在CAN驅動數據總線和CAN舒適/Infotainment數據總線之間無法進行耦合聯接。另外這兩種數據總線的傳輸速率是不同的,這就決定了它們無法使用不同的信號。 這就需要在這兩個系統之

31、間能完成一個轉換。這個轉換過程是通過所謂的網關來實現的。根據車輛的不同,網關可能安裝在組合儀表內、車上供電控制單元內或在自己的網關控制單元內。 由于通過CAN數據總線的所有信息都供網關使用,所以網關也用作診斷接口。 目前是通過網關的K-線來查詢診斷信息,從Touran車開始是通過CAN數據總線診斷線來完成這個工作的。可以用火車站作為例子來清楚地說明網關的原理與CAN舒適數據總線和CAN Infotainment數據總線不同,CAN驅動數據總線不可與CAN舒適數據總線或CAN Infotainment數據總線通過電氣相連!CAN舒適數據總線與CAN舒適/ Infotainment數據總線是不同的

32、數據總線系統,它們之間只能通過所謂網關相連。提示!123基本術語CAN的報文及結構同步CAN協議規范CAN協議規范CAN協議規范 CAN為串行通訊協議,能有效地支持具有很高安全等級的分布實時控制。CAN的應用范圍很廣,從高速的網絡到低價位的多路接線都可以使用CAN。在汽車電子行業里,使用CAN連接發動機控制單元、傳感器、防剎車系統、等等,其傳輸速度可達1Mbit/s。同時,可以將CAN安裝在卡車本體的電子控制系統里,諸如車燈組、電氣車窗等等,用以代替接線配線裝置。 技術規范的目的是為了在任何兩個CAN儀器之間建立兼容性。可是,兼容性有不同的方面,比如電氣特性和數據轉換的解釋。為了達到設計透明度

33、以及實現靈活性,根據ISO/OSI參考模型,CAN 2.0規范細分為以下不同的層次:數據鏈路層和物理層(如圖所示)。 CAN協議規范 位編碼/解碼 位定時 同步 驅動器接收器特性邏輯鏈路子層LLC 接收濾波 超載通知 恢復管理介質訪問控制子層MAC 數據包裝/解包 幀編碼 介質訪問管理 錯誤監測 出錯標定 應答 串并轉換數據鏈路層物理層故障界定總線故障管理監控器圖 CAN協議分層結構和功能CAN協議規范 在以前版本的CAN規范中,數據鏈路層的LLC子層和MAC子層的服務及功能分別被解釋為“對象層”和“傳輸層”。 邏輯鏈路控制子層(LLC)的作用范圍如下: 為遠程數據請求以及數據傳輸提供服務。

34、確定由實際要使用的LLC子層接收哪一個報文。 為恢復管理和過載通知提供手段。 MAC子層的作用主要是傳送規則,也就是控制幀結構、執行仲裁、錯誤檢測、出錯標定、故障界定。位定時的一些普通功能也可以看作是MAC子層的一部分。 物理層的作用是在不同節點之間根據所有的電氣屬性進行位的實際傳輸。 CAN具有以下的屬性: 報文的優先權 保證延遲時間 設置靈活 時間同步的多點接收 系統內數據的連貫性 多主機 錯誤檢測和錯誤標定 只要總線一處于空閑,就自動將破壞的報文重新傳輸 將節點的暫時性錯誤和永久性錯誤區分開來,并且可以自動關閉由OSI參考模型分層CAN結構的錯誤的節點。CAN協議規范依據ISO/OSI參

35、考模型的層結構具有以下功能: 物理層定義信號是如何實際地傳輸的,因此涉及到位時間、位編碼、同步的解釋。技術規范沒有定義物理層的驅動器/接收器特性,以便允許根據它們的應用,對發送媒體和信號電平進行優化。 MAC子層是CAN協議的核心。它把接收到的報文提供給LLC子層,并接收來自LLC子層的報文。MAC子層負責報文分幀、仲裁、應答、錯誤檢測和標定。MAC子層也被稱作故障界定的管理實體監管。此故障界定為自檢機制,以便把永久故障和短時擾動區別開來。 LLC子層涉及報文濾波、過載通知、以及恢復管理。CAN協議規范1基本術語1報文 總線上的報文以不同的固定報文格式發送,但長度受限。當總線空閑時任何連接的單

36、元都可以開始發送新的報文。 2信息路由 在CAN系統中,一個CAN節點不使用有關系統結構的任何信息(如站地址)。包含一些重要概念: 系統靈活性節點可在不要求所有節點及其應用層改變任何軟件或硬件的情況下,被接于CAN網絡。 成組由于采用了報文濾波,所有節點均可接收報文,并同時被相同的報文激活。 數據相容性在CAN網絡內,可以確保報文同時被所有節點或者沒有節點接收,因此,系統的數據相容性是借助于成組和出錯處理達到的。1基本術語 3位速率 不同的系統,CAN的速度不同。在一個給定的系統里,位速率是唯一的,并且是固定的。 4優先權 在總線訪問期間,識別符定義一個靜態的報文優先權。 5遠程數據請求 通過

37、發送遠程幀,需要數據的節點可以請求另一節點發送相應的數據幀。數據幀和相應的遠程幀是由相同的識別符命名的。 1基本術語 6仲裁 只要總線空閑,任何單元都可以開始發送報文。具有較高優先權報文的單元可以獲得總線訪問權。如果2個或2個以上的單元同時開始傳送報文,那么就會有總線訪問沖突。 仲裁的機制確保了報文和時間均不損失。當具有相同識別符的數據幀和遠程幀同時初始化時,數據幀優先于遠程幀。 仲裁期間,每一個發送器都對發送位的電平與被監控的總線電平進行比較。如果電平相同,則這個單元可以繼續發送。如果發送的是一“隱性”電平而監視的是一“顯性”電平(見總線值),那么單元就失去了仲裁,必須退出發送狀態。 1基本

38、術語7錯誤檢測 要進行檢測錯誤,必須采取以下措施: 監視(發送器對發送位的電平與被監控的總線電平進行比較) 循環冗余檢查 位填充 報文格式檢查1基本術語 8故障界定 CAN節點能夠把永久故障和短暫擾動區別開來。故障的節點會被關閉。 9總線值 總線有二個互補的邏輯值:“顯性”或“隱性”。“顯性”位和“隱性”位同時傳送時,總線的結果值為“顯性”。比如,在總線的“寫與”執行時,邏輯0代表“顯性”等級,邏輯1代表“隱性”等級。 10應答 所有的接收器檢查報文的連貫性。對于連貫的報文,接收器應答,對于不連貫的報文,接收器作出標志。 2CAN的報文及結構CAN信息包格式說明: CAN信息包分為兩部分:信息

39、部分和數據部分。 頭兩個字節為信息部分,其前十一位為標識符,標識符中的前八位用作接收判斷,應包含本信息包的目的站地址。 然后是一位RTR位(應設為0),最后是四位的DLC(數據長度位,即所發數據的實際長度,單位:字節)。 其余八個字節是數據部分,存有實際要發的數據。詳見下圖:2CAN的報文及結構2CAN的報文及結構 在進行數據傳送時,發出報文的單元稱為該報文的發送器。該單元在總線空閑或丟失仲裁前恒為發送器。如果一個單元不是報文發送器,并且總線不處于空閑狀態,則該單元為接收器。 對于報文發送器和接收器,報文的實際有效時刻是不同的。對于發送器而言,如果直到幀結束末尾一直末出錯,則對于發送器報文有效

40、。如果報文受損,將允許按照優先權順序自動重發送。為了能同其他報文進行總線訪問競爭,總線一旦空閑,重發送立即開始。 對于接收器而言,如果直到幀結束的最后一位一直末出錯,則對于接收器報文有效。2CAN的報文及結構 構成一幀的幀起始、仲裁場、控制場、數據場和CRC序列均借助位填充規則進行編碼。 當發送器在發送的位流中檢測到5位連續的相同數值時,將自動地在實際發送的位流中插入一個補碼位。 數據幀和遠程幀的其余位場采用固定格式,不進行填充。出錯幀和超載幀同樣是固定格式,也不進行位填充。 報文傳送由 4 種不同類型的幀表示和控制: 數據幀攜帶數據由發送器至接收器;遠程幀通過總線單元發送,以請求發送具有相同

41、標識符的數據幀; 出錯幀由檢測出總線錯誤的任何單元發送; 超載幀用于提供當前的和后續的數據幀的附加延遲。 數據幀和遠程幀借助幀間空間與當前幀分開。3同步同步機制 總線的位同步只有在節點檢測到“隱性位”(邏輯)到“顯性位”(邏輯)的跳變時才會產生,當跳變沿不位于位周期的同步段之內時將會產生相位誤差。該相位誤差就是跳變沿與同步段結束位置之間的距離。 如果跳變沿發生在同步段之后采樣點之前為正的相位誤差;如果跳變沿位于同步段之前采樣點之后為負的相位誤差。 相位誤差源于節點的振蕩器漂移,網絡節點之間的傳播延遲以及噪聲干擾等。協議規定了兩種類型的同步:硬同步和重同步。3同步硬同步 硬同步只在總線空閑時通過

42、一個下降沿(幀起始)來完成,此時不管有沒有相位誤差,所有節點的位時間重新開始。強迫引起硬同步的跳變沿位于重新開始的位時間的同步段之內。重同步 在消息幀的隨后位中,每當有從“隱性位”到“顯性位”的跳變,并且該跳變落在了同步段之外,就會引起一次重同步。重同步機制可以根據跳變沿增長或者縮短位時間以調整采樣點的位置,保證正確采樣。 協議的位填充機制除實現仲裁場、控制場、數據場和序列的數據的透明性外,還增加了從“隱性位”到“顯性位”跳變的機會,也就是增多重同步的數量,提高同步質量。123CAN通信控制器82C200SJA1000 CAN控制器 PCA82C250 CAN 收發器典型CAN總線器件及應用典

43、型CAN總線器件及其應用4 CAN BUS 節點設計舉例 CAN總線的突出優點使其在各個領域的應用得到迅速發展,這使得許多器件廠商競相推出各種CAN總線器件產品,已逐步形成系列。 而豐富廉價的CAN總線器件又進一步促進了CAN總線應用的迅速推廣。目前,CAN已不僅是應用于某些領域的標準現場總線,它正在成為微控制器的系統擴展及多機通信接口。下表列出了一些主要的CAN總線產品,這里僅對典型的芯片加以介紹。4、典型CAN總線器件及其應用1CAN通信控制器82C200完成CAN規范所規定的物理層和數據鏈路層大部分功能。有微處理器接口,易于連接單片機。結構分兩種類型,獨立IC或與單片機集成在一起, 82

44、C200( SJA1000)屬于前者。屬于后者的有:PHILIPS的87C591、LPC2119,西門子的C167C,INTEL的80C196CA等。都遵循CAN2.0規范,掌握其中一種就可觸類旁通。1CAN通信控制器82C200 CAN的通信協議主要由CAN控制器完成。CAN控制器主要由實現CAN總線協議部分和與微控制器接口部分電路組成。 對于不同型號的CAN總線通信控制器,實現CAN協議部分電路的結構和功能大都相同,而與微控制器接口部分的結構及方式存在一些差異。 這里主要以PHILIPS82C200為代表對CAN控制器的結構、功能及應用加以介紹。1CAN通信控制器82C2001CAN通信控制器82C2001CAN通信控制器82C2002SJA1000 CAN控制器 SJA1000是一個獨立的CAN控制器,它在汽車和普通的工業應用上有先進的特征,適合于多種應用特別在系統優化診斷和維護方面非常重要。 SJA1000獨立的CAN控制器有2個不同的操作模式: 1 BasicCAN模式:和PCA82C200兼容。BasicCAN模式是上電后默認的操作模式,因此用PCA82C200開發的已

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論