tft每日頭條

 > 生活

 > can總線協議教程

can總線協議教程

生活 更新时间:2025-02-06 16:42:33

今天的文章是關于最重要的車載總線——CAN BUS。

汽車上的 OBD 接口,到底是啥東西?

文章目錄:

一、CAN 總線是什麼?

二、CAN 總線的作用?

三、CAN 總線的優點

四、CAN 總線的曆史

五、CAN 總線拓撲圖

  • 顯性和隐性
  • CAN 收發器的作用
  • CAN 控制器的作用
  • 120Ω終端電阻

六、基本的 CAN 總線電路

一、CAN 總線是什麼?

CAN 是 Controller Area Network 的簡稱,是一種有效支持分布式控制或實時控制的串行通信網絡,最早是由以研發和生産汽車電子産品著稱的德國 BOSCH 公司開發的,1986 年,BOSCH 開發出面向汽車的 CAN 通信協議,後來,CAN 總線通過 ISO 11898 和 ISO 11595 進行了标準化,現在在歐洲是汽車網絡的标準協議。

把汽車比如成人體,那 CAN 總線就是神經系統,電子控制單元(ECU)就是身體的一部分,身體是由多個 ECU 組成的,各個 ECU 之間通過神經系統進行通信,一個部分感知到的信息可以與另一部分共享。

CAN 的應用非常廣泛,工業自動化、船舶、醫療設備、工業設備等方面。

二、CAN 總線的作用?

在汽車上,CAN 總線的作用就是把不同的部件連接起來,然後這些部件都執行同一套标準協議,這樣的好處是兼容性高,信息可以可靠共享,并且能減少整車的線束數量。

節點可以挂很多部件

三、CAN 總線的優點

1. 簡單低成本:ECU 通過單個 CAN 系統進行通信,而不是直接的複雜模拟信号線通信,這樣減少了錯誤,重量,接線和成本。

2. 完全集中:CAN 總線提供了一個接入點,可以與所有網絡 ECU 進行通信,——支持集中診斷,數據記錄和配置。

3. 穩定:CAN 總線具有強大的抗電幹擾和抗電磁幹擾能力,非常适合對安全要求嚴格的應用(例如車輛)。

4. 高效:通過 ID 對 CAN 幀進行優先級排序,以便優先級最高的數據可以立即訪問總線,而不會引起其他幀的中斷。

四、CAN 總線的曆史

CAN 總線發展很多年了。

CAN 之前版本:汽車 ECU 是複雜點對點布線。

1986 年:博世開發了 CAN 協議作為解決方案。

1993 年:CAN 被采用為估計标準(ISO 11898)

2003 年:ISO 11898 稱為标準系列。

2012 年:博世發布了 CAN FD 1.0

2015 年:CAN FD 協議标準化(ISO 11898-1)

2016 年:CAN 物理層,數據速率高達 5Mbit/s,已通過 ISO 11898-2 标準化。

如今,CAN BUS 已成為汽車、卡車、公共汽車、拖拉機、輪船、飛機等的标準配置。

五、CAN 總線拓撲圖

從拓撲圖中可以看到一個 CAN 節點,主要由 CPU,CAN 控制器,CAN 收發器組成。

can總線協議教程(CAN總線入門)1

CAN 總線拓撲

1. 顯性和隐性

CAN 總線是差分線,有 CAN_H 和 CAN_L 兩根線,差分線的抗幹擾能力強,外界有幹擾時,幾乎同時會耦合到差分線的兩根線上,而接收端關心的隻是兩信号的差值,所以外界的共模噪聲可以被完全抵消,圖中箭頭所示,雖然兩根線都受到幹擾,但是兩者差值不變。

CAN 收發器根據 CAN_H 和 CAN_L 的差值來判斷總線電平,總線電平有兩種,顯性電平和隐性電平,CAN2.0A/B 規定的總線 value 如下:

有人會說,為什麼顯性電平是邏輯 0,是因為 CAN 總線采用的"線與"的規則進行總線沖裁,在 CAN2.0 上規定了總線上同時傳輸顯性和隐形電平時,總線是顯性,即 1&0=0,所以 0 為顯性。

can總線協議教程(CAN總線入門)2

從下圖可以看到,ISO11898 的電平和 ISO11519 是不一樣的,現在大多數都是和 ISO11898 一樣的。下面是兩個顯隐性電平的區别比較,同時給出了最大最小值。

兩種标準 CAN 總線電平區别

2. CAN 收發器的作用

顧名思義,收發器既可以收,也可以發,收是接收 CAN 總線上的差分數據,将數據轉換為 TTL 電平,發送給控制器;發是将 CAN 控制器的 TTL 電平信号轉換為差分信号進行總線數據傳輸。

can總線協議教程(CAN總線入門)3

3. CAN 控制器的作用

CAN 控制器一方面接收收發器的數據,進行解析後發送給 CPU;另一方面接收 CPU 的指令數據,然後發送給 CAN 收發器。

4. 120Ω終端電阻

高頻信号傳輸時,信号波長相對傳輸線較短,信号在傳輸線終端會形成反射波,幹擾原信号,所以需要在傳輸線末端加終端電阻,使信号到達傳輸線末端後不反射。

對于低頻信号則不用 CAN 總線兩端必須連接終端電阻才可以正常工作,終端電阻應該與通訊電纜的阻抗相同,典型值為 120 歐姆,其作用是匹配總線阻抗,提高數據通信的抗幹擾性及可靠行。

can總線協議教程(CAN總線入門)4

終端電阻并不都是 120Ω,以下是 ISO 11898 協議的推薦值。

can總線協議教程(CAN總線入門)5

終端電阻取值

四、基本的 CAN 總線電路

如下就是 CAN BUS 的基本電路,因為一般節點都是和 OBD 接口相連的,ESD 保護非常重要,另一方面 120Ω并不是任何時候都需要,所以電路設計時加一個 JP1 跳接帽比較好。

can總線協議教程(CAN總線入門)6

必要時需要在 CAN_H 和 CAN_L 預留 RC EMI filters,用來吸收 EMI。

can總線協議教程(CAN總線入門)7

CAN 總線上預留 RC 吸收 EMI

今天的文章到這裡就結束了。。。

後續的文章會更新 CAN 總線的軟件協議部分,盡請期待。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved