CAN總線和基于CAN總線的高層協(xié)議
1 引言
從1982年2月 RobertBosch公司在SAE(汽車工程協(xié)會)大會上宣布CAN控制器局部網(wǎng)的那一刻開始, CAN已經(jīng)走過20多年的歷史。1992年,Mercedes(奔馳)在他們的高級客車中使用CAN技術,相繼Volvo、Volkswagen、BMW 等幾十家公司都在各自的汽車上應用CAN技術。今天,在歐洲幾乎每一輛新客車均裝有CAN控制器局部網(wǎng)。CAN技術近年在我國發(fā)展也比較迅猛,國內(nèi)的高級客車也都開始應用CAN技術。
CAN的協(xié)議在應用過程中,用戶層直接訪問數(shù)據(jù)鏈接層,每個廠商提供的數(shù)據(jù)調用方式各不相同,而CAN的標準沒有規(guī)定應用層的相關信息,因此,CAN設備的兼容性和互換性不是很規(guī)范。而且,隨著應用領域的擴展,CAN協(xié)議在實際工業(yè)控制應用過程中,即使執(zhí)行一些簡單的分布式網(wǎng)絡,除了標準中的物理層和數(shù)據(jù)鏈接層外,客戶還要求有更多的功能,如發(fā)送長于8字節(jié)的數(shù)據(jù)塊、響應和確定數(shù)據(jù)傳送、標識符分配、網(wǎng)絡節(jié)點的狀態(tài)等。如果這些功能正確執(zhí)行,通信和應用過程的界線就十分清晰,將明顯提高各個廠商之間的設備互換性和兼容性。鑒于這些原因,產(chǎn)生了一些針對不同的目的和要求的基于CAN協(xié)議的較高層協(xié)議標準。下面就對CAN 協(xié)議及其較高層協(xié)議DeviceNet和CANopen進行一些比較。
2 三種協(xié)議的比較項目
CAN(Controller Area Network)1993年形成了CAN總線國際標準,2003年又進行了修訂,是BOSCH公司為改進汽車內(nèi)部電器線路開發(fā)的一種總線。CAN協(xié)議的實現(xiàn)簡單,成本低,可靠性高,抗干擾能力強。
DeviceNet在美國市場占有率比較高,它是由美國Rockwell公司在CAN的基礎上推出的一種低成本的通信鏈接,它使用抽象的對象模型,其協(xié)議和規(guī)范都是開放的,用戶將設備連接到系統(tǒng)時無需購買硬件、軟件和許可權。
CANopen 是由CiA(CAN in Aoutmation)成員編制,主要盛行于歐洲,它在通訊和系統(tǒng)服務以及網(wǎng)絡管理方面使用了CAL(CAN Application Layer)子集,設備建模是借助于對象目錄而基于設備功能性的描述,標準設備以設備子協(xié)議的形式規(guī)定。CANopen標準由CiA同行機構集團支持,設備子協(xié)議由CiA中專門的同行機構制定。
本文就以下項目對三種協(xié)議進行比較。
(1) 信息標識符的分配;
(2) 數(shù)據(jù)交換的方法;
(3) 建立信息連接的方法;
(4) 網(wǎng)絡管理;
(5) 設備建模和子協(xié)議。
2.1 信息標識符的分配
由于CAN采用非破壞性的仲裁方法,因此,標識符決定了塊信息傳送的優(yōu)先權和信息等待時間,信息標識符的分配的方法被認為是 CAN系統(tǒng)的主要結構元素,它同時也影響了信息濾波和標識符的使用效率問題。
由于標識符分配的方法不同,不同的協(xié)議在解決方案已把不同的原則考慮進去。CAN基本協(xié)議和DeviceNet的標識符采用預定義的方式,不同的是在 CAN 協(xié)議中節(jié)點標識符在設計時被確定后就不能動態(tài)更改,而DeviceNet每個節(jié)點預定義多個標識符,不同的功能標識符優(yōu)先級不同。在CANopen協(xié)議中,除了預定義了一些用于管理的標識符外,其它標識符統(tǒng)一組成一個通用的標識符庫,用戶可根據(jù)設備的需要進行手動或者自動分配所有的設備標識符。這樣的分配方案用戶就可以完全自由決定標識符的使用及系統(tǒng)實時通訊的過程。
表1 DeviceNet關于CAN標識符的使用分配
評論