控制器局域網 (CAN) 總線起源于 Robert Bosch GmbH,協議規范于 1986 年在汽車工程師協會 (SAE) 會議上正式發布。由英特爾和飛利浦生產的第一款 CAN 控制器芯片于 1987 年上市。1991 年,梅賽德斯-奔馳發布了第一款采用基于 CAN 的多路布線系統的量產車。它是標準的汽車網絡,可讓汽車大大減小線束尺寸和重量。
已經提出了 CAN 連接的替代方案,但 CAN 仍然存在并且正在增長。事實上,它的用途正在遠遠超出汽車領域,并擴展到工廠自動化和物聯網 (IoT) 等多種領域。CAN 收發器是可以增強您的設計的眾多模擬構建模塊之一。你甚至可以稱他們為模擬英雄。
CAN 總線類型
CAN 2.0A 設備協議使用 11 位標識符,使用 29 位標識符的協議通常稱為 CAN 2.0B。羅伯特波什仍然是領先的規格。根據維基百科,國際標準化組織于 1993 年發布了 CAN 標準 ISO 11898,后來又被重組為兩部分。ISO 11898-1 涵蓋數據鏈路層,而 ISO 11898-2 涵蓋高速 CAN 的物理層。ISO 11898-3 稍后發布,涵蓋了低速容錯 CAN 的物理層。
SAE J1939 標準是卡車和公共汽車廣泛使用的 CAN 協議標準。CAN 總線是車載診斷 (OBD)-II 車輛診斷標準中使用的五種協議之一,自 1996 年以來在美國和自 2001 年以來在歐洲銷售的所有汽車和輕型卡車都強制要求該標準。
CAN的替代品
CAN 的替代品包括本地互連網絡 (LIN) 總線和 Flexray。LIN 總線比 CAN 更便宜。LIN 不是 CAN 總線的完全替代品,但在低成本且速度/帶寬不重要的情況下,它是一個不錯的選擇。在汽車應用中,它通常用于對車輛性能或安全性不重要的子系統中。Flexray 自 2000 年以來一直在開發,用于 2006 年生產的寶馬,現在用于大多數德國汽車和 SUV。它可實現更快的 10Mbps 數據速率和確定的時間響應,并且設計為冗余。但是,它比 CAN 昂貴且復雜得多,并且只有 24m 的范圍。還有用于信息娛樂系統的 MOST 網絡。
將 CAN 擴展到工業世界
豪華車有多達150個汽車ECU來控制和調節各種功能,現在每輛新車至少有70個ECU。這些 ECU 必須相互交流,同時控制動力傳動系統、車身和底盤的幾乎所有方面。CAN 將每個功能與各種 ECU 連接起來——從門鎖到制動器、油門踏板和尾燈。它的流行源于非常高的可靠性和簡單性——具有低成本和低功耗。
CAN 總線使用簡單的 25Kbps 到 1Mbps 雙絞線連接。芯片現在可用于實現 2Mbps 數據??偩€將在 50Kbps 時達到 1000m 或在 1Mbps 時達到 40m。CAN 的汽車普及源于開發人員發現的優雅方式,可確保在具有安全意識的汽車環境中進行可預測的無差錯通信。這些特性也可以在工廠車間得到很好的利用。
CAN 在一對電線上以差分方式承載。這種差分特性意味著 CAN 能夠抑制共模噪聲。由于差分通信的電場傾向于相互抵消,該結構還減少了發射。
使用需要大電流來啟動、停止和運行的電機的工業系統是 CAN 大放異彩的一個很好的例子。電機的電磁輻射會導致 RS-485 或類似通信中出現大量錯誤,而 CAN 能夠通過。除了物理可靠性之外,CAN 還包括其他功能以確保穩健性,包括循環冗余校驗 (CRC) 和啟用錯誤檢測的確認。
作為總線拓撲運行需要設備了解何時可以傳輸。CAN 使用帶有沖突檢測的載波偵聽多路訪問 (CSMA/CD),它也用于以太網。當一個設備想要傳輸它的信息時,它必須感知總線是否空閑并且沒有被使用。碰撞檢測允許它檢測總線上的另一個設備何時嘗試在完全相同的時間進行傳輸。CAN 使用優先級機制進行總線管理。
隨著 CAN 總線變得非常流行,競爭供應商做出了不同的實施。每個實現都有不同的網絡層,即使物理層是通用的。CANopen 旨在實現兼容性,以便設計人員可以選擇支持 CAN 的設備并知道它們會相互作用。它在用于自動化應用的嵌入式系統中最為流行。在 OSI 模型方面,CANopen 實現了上面的層,包括網絡層。
比較 CAN 與 RS-485
與 RS-485 等通信協議相比,CAN 不僅提供了通信的物理介質,還提供了尋址數據包(消息)、避免數據沖突、檢測傳輸數據中的故障、自動重復受干擾的所有其他機制。消息,并確保網絡中所有節點的數據一致性。此外,CAN 指定了數據幀的結構,包括消息標識符、數據和控制字節。RS-485 連接僅尋址第 1 層(物理層),CAN 還在 OSI 模型中添加第 2 層(數據鏈路層)。因此,CAN 是一種實時兼容的解決方案。根據消息 ID 的優先級,可以預測每個 CAN 消息的最大延遲時間,而與總線負載或其他節點的性能無關。
CAN 具有先進的錯誤管理。如果消息沒有被節點正確接收(CRC 或格式錯誤),則消息會被接收者通過錯誤幀銷毀,并標記為對所有節點無效。此操作會在 CAN 控制器中啟動自動重復。
CAN實現
這些共同采取的措施(簡短消息、差分傳輸、錯誤檢測和故障排除、有缺陷的節點撤出)使 CAN 成為一個非常健壯、安全、可靠的網絡。這就是為什么 CAN 被用于車輛、船舶、電梯、醫療設備、飛機和工廠等許多關鍵或安全相關應用中的原因。
由于 CAN 協議在硬件中的完全實現,微控制器系統的負載減少(每條消息只有一個中斷)。許多供應商和幾乎所有可用的 MCU 都提供各種第 7 層協議,例如 CANopen、DeviceNet 和 J1939,從而降低了風險并加快了上市時間。
汽車應用顯然需要符合汽車級標準的 IC。對于該領域之外的應用,例如前面提到的工業自動化和物聯網示例,這里有幾個很好的 CAN 收發器 IC 可以滿足這些應用需求。MAX3051是一款3.3V、1Mbps、低電源電流CAN收發器IC,主要用于不需要汽車行業規定的嚴格故障保護的應用。它有四種操作模式:高速、斜率控制、待機和停機。在斜率控制模式下,發送器的壓擺率可以調整為高達 500Kbps 的數據速率。這減少了由不正確端接的電纜引起的 EMI 和反射,并可能允許使用非屏蔽雙絞電纜。
圖 2. 一個基本的 MAX3051 收發器電路。
MAX3051輸入共模范圍為-7V至+12V,超過ISO 11898規范。它采用 8 引腳 SO 和 SOT23 封裝,工作溫度范圍為 -40°C 至 +85°C。該芯片提供 ±12kV HBM ESD 保護、熱關斷和電流限制。
另一個值得注意的 CAN 收發器 IC 是MAX13054A。這款 2Mbps CAN 收發器具有高保護等級和 8 引腳 SO 封裝。它具有 ±65V 過壓故障保護和 ±25kV 高 ESD HBM 保護,以及 ±25V 的輸入共模范圍、短路保護和熱關斷功能。一個非常該死的堅固設備。
該芯片提供非常廣泛的 1.62 至 5.5V 邏輯電源范圍,以緩解接口困難。在待機模式下,發射器關閉,接收器切換到低電流/低速狀態。監控總線線路以檢測喚醒事件。待機模式僅需要 11μA 的電源電流。收發器包含顯性超時,以防止由控制器錯誤或 TXD 輸入故障引起的總線鎖定。大型網絡上的最大速度可能會受到節點數量、電纜類型或短截線長度的限制。該芯片的溫度范圍為 -40° 至 125°C,采用 8 引腳 SOIC 封裝 (MAX13054AEASA+)。
圖 3. 使用 MAX13054A 收發器的多點 CAN 總線。
MAX13054(無A后綴)有點不同。此版本完全兼容 ISO11898 標準,具有符合 IEC 61000-4-2 的 ±8kV ESD 和 ±80V 故障保護。其他規格,包括封裝,與 MAX13054A 類似。它可用于汽車或擴展溫度范圍。
強大的 CAN 接口
出于很好的原因,它仍然受到設計工程師的歡迎。人氣還在增長。在可預見的未來,CAN 總線將成為一股重要的力量,并為各種應用領域的許多通信需求提供很好的解決方案。
審核編輯:郭婷
-
微控制器
+關注
關注
48文章
7552瀏覽量
151423 -
收發器
+關注
關注
10文章
3428瀏覽量
106002 -
總線
+關注
關注
10文章
2881瀏覽量
88086
發布評論請先 登錄
相關推薦
評論