加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

CAN總線入門(硬件部分)

2020/07/13
608
閱讀需 7 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

今天的文章是關(guān)于最重要的車載總線——CAN BUS。

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

文章目錄:

一、CAN 總線是什么?

二、CAN 總線的作用?

三、CAN 總線的優(yōu)點(diǎn)

四、CAN 總線的歷史

五、CAN 總線拓?fù)鋱D

六、基本的 CAN 總線電路

一、CAN 總線是什么?

CAN 是 Controller Area Network 的簡(jiǎn)稱,是一種有效支持分布式控制或?qū)崟r(shí)控制的串行通信網(wǎng)絡(luò),最早是由以研發(fā)和生產(chǎn)汽車電子產(chǎn)品著稱的德國(guó) BOSCH 公司開發(fā)的,1986 年,BOSCH 開發(fā)出面向汽車的 CAN 通信協(xié)議,后來,CAN 總線通過 ISO 11898 和 ISO 11595 進(jìn)行了標(biāo)準(zhǔn)化,現(xiàn)在在歐洲是汽車網(wǎng)絡(luò)的標(biāo)準(zhǔn)協(xié)議。

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

CAN 的應(yīng)用非常廣泛,工業(yè)自動(dòng)化、船舶、醫(yī)療設(shè)備、工業(yè)設(shè)備等方面。

二、CAN 總線的作用?

在汽車上,CAN 總線的作用就是把不同的部件連接起來,然后這些部件都執(zhí)行同一套標(biāo)準(zhǔn)協(xié)議,這樣的好處是兼容性高,信息可以可靠共享,并且能減少整車的線束數(shù)量。

?

節(jié)點(diǎn)可以掛很多部件

三、CAN 總線的優(yōu)點(diǎn)

1. 簡(jiǎn)單低成本:ECU 通過單個(gè) CAN 系統(tǒng)進(jìn)行通信,而不是直接的復(fù)雜模擬信號(hào)線通信,這樣減少了錯(cuò)誤,重量,接線和成本。

2. 完全集中:CAN 總線提供了一個(gè)接入點(diǎn),可以與所有網(wǎng)絡(luò) ECU 進(jìn)行通信,——支持集中診斷,數(shù)據(jù)記錄和配置。

3. 穩(wěn)定:CAN 總線具有強(qiáng)大的抗電干擾和抗電磁干擾能力,非常適合對(duì)安全要求嚴(yán)格的應(yīng)用(例如車輛)。

4. 高效:通過 ID 對(duì) CAN 幀進(jìn)行優(yōu)先級(jí)排序,以便優(yōu)先級(jí)最高的數(shù)據(jù)可以立即訪問總線,而不會(huì)引起其他幀的中斷。

四、CAN 總線的歷史

CAN 總線發(fā)展很多年了。

CAN 之前版本:汽車 ECU 是復(fù)雜點(diǎn)對(duì)點(diǎn)布線。

1986 年:博世開發(fā)了 CAN 協(xié)議作為解決方案。

1993 年:CAN 被采用為估計(jì)標(biāo)準(zhǔn)(ISO 11898)

2003 年:ISO 11898 稱為標(biāo)準(zhǔn)系列。

2012 年:博世發(fā)布了 CAN FD 1.0

2015 年:CAN FD 協(xié)議標(biāo)準(zhǔn)化(ISO 11898-1)

2016 年:CAN 物理層,數(shù)據(jù)速率高達(dá) 5Mbit/s,已通過 ISO 11898-2 標(biāo)準(zhǔn)化。

如今,CAN BUS 已成為汽車、卡車、公共汽車、拖拉機(jī)、輪船、飛機(jī)等的標(biāo)準(zhǔn)配置。

五、CAN 總線拓?fù)鋱D

從拓?fù)鋱D中可以看到一個(gè) CAN 節(jié)點(diǎn),主要由 CPU,CAN 控制器,CAN 收發(fā)器組成。

?

CAN 總線拓?fù)?/p>

1. 顯性和隱性

CAN 總線是差分線,有 CAN_H 和 CAN_L 兩根線,差分線的抗干擾能力強(qiáng),外界有干擾時(shí),幾乎同時(shí)會(huì)耦合到差分線的兩根線上,而接收端關(guān)心的只是兩信號(hào)的差值,所以外界的共模噪聲可以被完全抵消,圖中箭頭所示,雖然兩根線都受到干擾,但是兩者差值不變。

CAN 收發(fā)器根據(jù) CAN_H 和 CAN_L 的差值來判斷總線電平,總線電平有兩種,顯性電平和隱性電平,CAN2.0A/B 規(guī)定的總線 value 如下:

有人會(huì)說,為什么顯性電平是邏輯 0,是因?yàn)?CAN 總線采用的"線與"的規(guī)則進(jìn)行總線沖裁,在 CAN2.0 上規(guī)定了總線上同時(shí)傳輸顯性和隱形電平時(shí),總線是顯性,即 1&0=0,所以 0 為顯性。

從下圖可以看到,ISO11898 的電平和 ISO11519 是不一樣的,現(xiàn)在大多數(shù)都是和 ISO11898 一樣的。下面是兩個(gè)顯隱性電平的區(qū)別比較,同時(shí)給出了最大最小值。

?

兩種標(biāo)準(zhǔn) CAN 總線電平區(qū)別

2. CAN 收發(fā)器的作用

顧名思義,收發(fā)器既可以收,也可以發(fā),收是接收 CAN 總線上的差分?jǐn)?shù)據(jù),將數(shù)據(jù)轉(zhuǎn)換為 TTL 電平,發(fā)送給控制器;發(fā)是將 CAN 控制器的 TTL 電平信號(hào)轉(zhuǎn)換為差分信號(hào)進(jìn)行總線數(shù)據(jù)傳輸。

3. CAN 控制器的作用

CAN 控制器一方面接收收發(fā)器的數(shù)據(jù),進(jìn)行解析后發(fā)送給 CPU;另一方面接收 CPU 的指令數(shù)據(jù),然后發(fā)送給 CAN 收發(fā)器。

4. 120Ω終端電阻

高頻信號(hào)傳輸時(shí),信號(hào)波長(zhǎng)相對(duì)傳輸線較短,信號(hào)在傳輸線終端會(huì)形成反射波,干擾原信號(hào),所以需要在傳輸線末端加終端電阻,使信號(hào)到達(dá)傳輸線末端后不反射。

對(duì)于低頻信號(hào)則不用 CAN 總線兩端必須連接終端電阻才可以正常工作,終端電阻應(yīng)該與通訊電纜的阻抗相同,典型值為 120 歐姆,其作用是匹配總線阻抗,提高數(shù)據(jù)通信的抗干擾性及可靠行。?

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

?

終端電阻取值

四、基本的 CAN 總線電路

如下就是 CAN BUS 的基本電路,因?yàn)橐话愎?jié)點(diǎn)都是和 OBD 接口相連的,ESD 保護(hù)非常重要,另一方面 120Ω并不是任何時(shí)候都需要,所以電路設(shè)計(jì)時(shí)加一個(gè) JP1 跳接帽比較好。

必要時(shí)需要在 CAN_H 和 CAN_L 預(yù)留 RC EMI filters,用來吸收 EMI。

CAN 總線上預(yù)留 RC 吸收 EMI

今天的文章到這里就結(jié)束了。。。

后續(xù)的文章會(huì)更新 CAN 總線的軟件協(xié)議部分,盡請(qǐng)期待。

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

公眾號(hào)記得誠(chéng)主筆,CSDN博客專家,硬件-基帶工程師,從事2G/3G/4G無線通信、GNSS定位、車載電子、物聯(lián)網(wǎng)等產(chǎn)品的硬件開發(fā)工作,用文字和讀者交流,總結(jié),分享,提高,共同進(jìn)步。