複製鏈接
請複製以下鏈接發送給好友

控制器局域網

鎖定
控制器局域網是國際上應用最廣泛的現場總線之一。CAN被設計作為汽車環境中的微控制器通訊,在車載各電子控制裝置ECU之間交換信息,形成汽車電子控制網絡。比如:發動機管理系統、變速箱控制器、儀表裝備、電子主幹系統中,均嵌入CAN控制裝置。
一個由CAN 總線構成的單一網絡中,理論上可以掛接無數個節點。實際應用中,節點數目受網絡硬件的電氣特性所限制。例如,當使用Philips P82C250作為CAN收發器時,同一網絡中允許掛接110個節點。CAN 可提供高達1Mbit/s的數據傳輸速率,這使實時控制變得非常容易。另外,硬件的錯誤檢定特性也增強了CAN的抗電磁干擾能力。
中文名
控制器局域網
外文名
Controller Area Network
核    心
CAN控制器
用    途
汽車環境中的微控制器通訊

控制器局域網基本信息

CAN是在1980年代初所制定的規格,一開始是由羅伯特·博世公司所開發,並在1993年標準化(ISO 11898-1),被廣泛的應用在各種車輛與電子設備上。CAN為一序列總線,它提供高安全檔次及有效率的即時控制。更具備了調試和優先權判別的機制,在這樣的機制下,網絡消息的傳輸變的更為可靠而有效率。CAN亦提供多主控端的架構,這種特色,特別適合使用在主系統或子系統下提供更完整智能網絡設備,如感測器及致動器。
CAN是創建在基於信息導向傳輸協議的廣播傳輸機制(broadcast communication mechanism)上。CAN定義信息的內容,利用消息識別子(message identifier,每個message identifier在整個網絡中皆為獨一無二的)來定義內容和信息的優先順位,以進行信息的傳遞。並非使用指派特定站台地址(station address)的方式。
如此,CAN擁有了高度的彈性調整能力,可以在既有的網絡中增加站台而不用在軟硬件上作修正與調整的作業。除此之外,信息的傳遞不是建構在特殊種類的站台上,增加了在升級網絡時的便利性。
即時的信息傳輸(Real-time data transmission)為CAN的特色之一。在即時的運算中,消息傳遞的優先級應以重要性來分,重要性較高的消息會比較不重要的消息傳遞的更頻繁。
CAN屬於總線型結構,採用同步、串行、多主、雙向通信數據塊的通信方式,不分主從,網絡上每一個節點都可以主動發送信息,可以很方便地構成多機備份 [1] 

控制器局域網CAN控制器

CAN控制器是CAN的核心,CAN網絡的通信和網絡協議主要是由它完成。CAN控制器對外部微控器(CPU)來説,是一個存儲器映像的I/O設備,它包括了所有控制CAN網絡通信的硬件及功能。概括起來主要包括以下8個部分:
①接口管理邏輯(IML),譯碼CPU命令,分配信息緩衝區,並向CPU提供中斷及狀態信息
②發送緩衝區(TBF)
③接收緩衝區(RBFO和RBF1)
④位流處理器(BSP),控制緩衝區與CAN總線(串行數據)之間的數據流
⑤位定時邏輯(BTL),控制輸出驅動器
⑥收發器控制邏輯(TCL)
⑦錯誤管理邏輯(EML)
⑧控制器接口邏輯(CIL)與CPU的接口 [2] 

控制器局域網特點

1.完成對通信數據的成幀處理
CAN總線通信接口中集成了CAN協議的物理層和數據鏈路層功能,可完成對通信數據的成幀處理,包括位填充、數據塊編碼、循環冗餘檢驗、優先級判別等項工作。
2.使網絡內的節點個數在理論上不受限制
CAN協議的一個最大特點是廢除了傳統的站地址編碼,而代之以對通信數據塊進行編碼。採用這種方法的優點可使網絡內的節點個數在理論上不受限制,數據塊的標識符可由11位或29位二進制數組成,因此可以定義2或2個以上不同的數據塊,這種按數據塊編碼的方式,還可使不同的節點同時接收到相同的數據,這一點在分佈式控制系統中非常有用。數據段長度最多為8個字節,可滿足通常工業領域中控制命令、工作狀態及測試數據的一般要求。同時,8個字節不會佔用總線時間過長,從而保證了通信的實時性。CAN協議採用CRC檢驗並可提供相應的錯誤處理功能,保證了數據通信的可靠性。CAN卓越的特性、極高的可靠性和獨特的設計,特別適合工業過程監控設備的互連,因此,越來越受到工業界的重視,並已公認為最有前途的現場總線之一。
3.可在各節點之間實現自由通信
CAN總線採用了多主競爭式總線結構,具有多主站運行和分散仲裁的串行總線以及廣播通信的特點。CAN總線上任意節點可在任意時刻主動地向網絡上其它節點發送信息而不分主次,因此可在各節點之間實現自由通信。CAN總線協議已被國際標準化組織認證,技術比較成熟,控制的芯片已經商品化,性價比高,特別適用於分佈式測控系統之間的數通訊。CAN總線插卡可以任意插在PCATXT兼容機上,方便地構成分佈式監控系統。
4.結構簡單
只有2根線與外部相連,並且內部集成了錯誤探測和管理模塊。
5.傳輸距離和速率
CAN總線特點:(1)數據通信沒有主從之分,任意一個節點可以向任何其他(一個或多個)節點發起數據通信,靠各個節點信息優先級先後順序來決定通信次序,高優先級節點信息在134μs通信;(2)多個節點同時發起通信時,優先級低的避讓優先級高的,不會對通信線路造成擁塞;(3)通信距離最遠可達10KM(速率低於5Kbps)速率可達到1Mbps(通信距離小於40M);(4)CAN總線傳輸介質可以是雙絞線,同軸電纜。CAN總線適用於大數據量短距離通信或者長距離小數據量,實時性要求比較高,多主多從或者各個節點平等的現場中使用 [3] 

控制器局域網優勢

CAN屬於現場總線的範疇,它是一種有效支持分佈式控制或實時控制的串行通信網絡。較之許多RS-485基於R線構建的分佈式控制系統而言,基於CAN總線的分佈式控制系統在以下方面具有明顯的優越性:
1.網絡各節點之間的數據通信實時性強
首先,CAN控制器工作於多種方式,網絡中的各節點都可根據總線訪問優先權(取決於報文標識符)採用無損結構的逐位仲裁的方式競爭向總線發送數據,且CAN協議廢除了站地址編碼,而代之以對通信數據進行編碼,這可使不同的節點同時接收到相同的數據,這些特點使得CAN總線構成的網絡各節點之間的數據通信實時性強,並且容易構成冗餘結構,提高系統的可靠性和系統的靈活性。而利用RS-485只能構成主從式結構系統,通信方式也只能以主站輪詢的方式進行,系統的實時性、可靠性較差;
2.開發週期短
CAN總線通過CAN收發器接口芯片82C250的兩個輸出端CANH和CANL與物理總線相連,而CANH端的狀態只能是高電平或懸浮狀態,CANL端只能是低電平或懸浮狀態。這就保證不會在出現在RS-485網絡中的現象,即當系統有錯誤,出現多節點同時向總線發送數據時,導致總線呈現短路,從而損壞某些節點的現象。而且CAN節點在錯誤嚴重的情況下具有自動關閉輸出功能,以使總線上其他節點的操作不受影響,從而保證不會出現象在網絡中,因個別節點出現問題,使得總線處於“死鎖”狀態。而且,CAN具有的完善的通信協議可由CAN控制器芯片及其接口芯片來實現,從而大大降低系統開發難度,縮短了開發週期,這些是僅有電氣協議的RS-485所無法比擬的。
3.已形成國際標準的現場總線
另外,與其它現場總線比較而言,CAN總線是具有通信速率高、容易實現、且性價比高等諸多特點的一種已形成國際標準的現場總線。這些也是CAN總線應用於眾多領域,具有強勁的市場競爭力的重要原因。
4.最有前途的現場總線之一
CAN即控制器局域網絡,屬於工業現場總線的範疇。與一般的通信總線相比,CAN總線的數據通信具有突出的可靠性、實時性和靈活性。由於其良好的性能及獨特的設計,CAN總線越來越受到人們的重視。它在汽車領域上的應用是最廣泛的,世界上一些著名的汽車製造廠商,如BENZ(奔馳)、BMW(寶馬)、PORSCHE(保時捷)、ROLLS-ROYCE(勞斯萊斯)和JAGUAR(美洲豹)等都採用了CAN總線來實現汽車內部控制系統與各檢測和執行機構間的數據通信。同時,由於CAN總線本身的特點,其應用範圍已不再侷限於汽車行業,而向自動控制、航空航天、航海、過程工業、機械工業、紡織機械、農用機械、機器人、數控機牀、醫療器械及傳感器等領域發展。CAN已經形成國際標準,並已被公認為幾種最有前途的現場總線之一。其典型的應用協議有:SAEJ1939/ISO11783、CANOpen、CANaerospace、DeviceNet、NMEA2000等。

控制器局域網仲裁機制

消息的優先權是由消息數據包的message identifier所決定的,identifier的屬性則是由系統一開始所給定的二進制數值決定,其數值是不能一直改變的。數值越小,就享有越高的優先順位。
即時環境中使用的通信協議優點:
1.消息有分優先次序;
2.有限度的消息傳遞延遲;
3.消息可多重發送、數據確保一致性;
4.可分辨數據是網絡發送錯誤或是設備不正常運作所造成,進而將有問題的網絡節點關閉;
CAN base frame一開始是SOF(Start Of Frame),接着是仲裁區Arbitration field(包含identifier和遠程傳輸要求RTR(Remote Transmission Request)),之後的IDE(Identifier Extension)用來分辨是base frame或extended frame。DLC(Data Length Code)記錄了data field的大小。
當兩種格式同時存在於同一個總線時,11-bit的消息將會擁有比29-bit的消息較高的優先順位。可支持extended frame的CAN controller可正確的發送base frame與extended frame的消息,但是隻支持base frame的controller則無法正確的發送extended frame的消息。

控制器局域網應用領域

  • 載客車輛、卡車、巴士
  • 載客與載貨電車
  • 轎車與小型貨車
  • 航空、航海電子儀器
  • 工廠自動化
  • 工業機械控制
  • 電梯、手扶梯
  • 建築自動化
  • 醫療儀器與設備
  • 車輛電子變速系統 [4] 
參考資料