控制器區域網路總線(Controller Area Network,簡稱 CAN 或 CAN-BUS),係德國博世(Bosch)公司喺 20 世紀 80 年代為咗解決現代汽車入面眾多電子控制單元(ECU)之間嘅數據交換問題而開發嘅一種串列通信協議。佢將遍佈車身嘅十數甚至上百個 ECU——如引擎控制器、ABS、安全氣囊、電動車門/窗等——連接喺兩條數據線上,令佢哋能夠高效、可靠咁共享資訊。
CAN 總線嘅核心理念係用「一線多用」取代「一線一用」嘅傳統佈線方式。佢嘅運作有下面幾個關鍵特點:
多主工作方式:網絡上嘅任何一個節點(ECU)都可以喺任意時刻主動向其他節點發送資訊,冇主從之分。例如,引擎 ECU 可以隨時將轉速資訊放上總線,而唔使等待被查詢。
非破壞性仲裁:當多個節點同時發送資訊時,CAN 協議會根據報文嘅優先級進行仲裁。低優先級嘅節點會主動退出發送,而高優先級嘅節點唔受影響,呢樣保證咗如煞車信號等關鍵指令總能被優先傳輸。最快能夠喺 134 微秒內傳輸完畢。
報文過濾與廣播:CAN 總線採用面向內容嘅編址方案。一個節點發送嘅資訊會被廣播到所有節點,其他節點透過報文過濾判斷係咪接收,實現點對點、一點對多點等靈活嘅通信方式。
為咗平衡成本同效率,汽車上面嘅 CAN 總線通常根據應用場景劃分為唔同速率級別:
高速 CAN:速率可達 500 kb/s,用嚟連接對實時性要求高嘅系統,如引擎控制單元、ABS、安全氣囊等。
低速 CAN:速率係 100 kb/s,用嚟連接中控鎖、電動車門/窗、座椅調節等對速度要求唔高嘅車身舒適系統。
傳統 CAN 總線嘅最高理論速率係 1 Mb/s,每個數據幀最多可承載 8 個字節嘅數據,面對高級駕駛輔助系統(ADAS)等日漸增長嘅數據量時,逐漸成為瓶頸。
為咗應對新嘅需求,博世於 2011 年發佈咗升級版本CAN FD(CAN with Flexible Data-Rate)。
CAN FD 喺保留傳統 CAN 主要特性嘅基礎上,實現咗兩大關鍵提升:
傳輸速率提升:數據場部分速率可達 2 Mbit/s 甚至 5 Mbit/s,而仲裁場仍用標準速率為咗保證兼容性。
數據場加長:將每幀嘅有效數據場由 8 個字節大幅提升至64 個字節,有效降低咗總線負載率。
呢個改進令 CAN FD 能夠更好地承載嚟自攝錄鏡頭、雷達等傳感器嘅海量數據,同車載以太網一齊構成咗現代智能汽車嘅網絡骨架。
CAN 總線長期佔據汽車車載網絡嘅核心地位,但已面臨明確嘅物理限制:高負載率可能會導致網絡擠塞,影響資訊傳輸嘅可靠性。現代智能網聯汽車嘅架構正由傳統嘅按功能域劃分,向按物理位置嘅「中央計算 + 區域控制」架構演進。喺呢種新架構下,CAN FD 總線仍被廣泛用於連接區域控制器與其下屬嘅傳感器同執行器,而更高嘅數據吞吐需求就由車載以太網承擔。
必須強調嘅係:CAN 總線屬於底層硬件通信網絡,係汽車一切智能化功能(如 ADAS、自動駕駛)嘅基礎支撐。佢嘅設計係複雜嘅系統工程,佢嘅可靠性同實時性對行車安全至關重要,但並唔能夠取代駕駛員對車輛嘅控制同觀察。