0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文了解汽車CAN總線技術(shù)原理

上海航芯 ? 來源:上海航芯 ? 作者:上海航芯 ? 2022-02-18 10:36 ? 次閱讀

隨著汽車工業(yè)的不斷發(fā)展,汽車電子控制單元逐漸增多,各電控單元之間的信號(hào)交換更為復(fù)雜。而CAN總線可將汽車內(nèi)部各電控單元之間連接成一個(gè)局域網(wǎng)絡(luò),實(shí)現(xiàn)了信息的共享,大大優(yōu)化了整車的布線。

接下來,我們將繼續(xù)為大家分享CAN相關(guān)技術(shù)知識(shí)。

CAN的分層架構(gòu)

它由三層組成,即應(yīng)用層、數(shù)據(jù)鏈路層和物理層。

? 應(yīng)用層:該層與操作系統(tǒng)或CAN設(shè)備的應(yīng)用程序交互。

? 數(shù)據(jù)鏈路層:它在發(fā)送、接收和驗(yàn)證數(shù)據(jù)方面將實(shí)際數(shù)據(jù)連接到協(xié)議。

? 物理層:它代表實(shí)際的硬件,即CAN控制器收發(fā)器。

CAN物理層特性

CAN物理層被分為三個(gè)部分:在CAN控制器芯片中實(shí)現(xiàn)的物理編碼,指定收發(fā)器特性的物理介質(zhì)附件,物理介質(zhì)依賴子層,這是特定的應(yīng)用,沒有標(biāo)準(zhǔn)化。

一文了解汽車CAN總線技術(shù)原理

圖1. CAN總線接線圖

物理編碼子層

PCS包括比特編碼和解碼、比特定時(shí)。它為收發(fā)器芯片提供連接單元接口,并包含Tx和Rx引腳,位級(jí)錯(cuò)誤也通過位填充來處理。

位時(shí)序

出于時(shí)序目的,CAN總線上的每個(gè)位都劃分成至少4個(gè)時(shí)間份額,時(shí)間份額邏輯上劃分成4段:

同步段

傳播段

相位緩沖段1

相位緩沖段2

一文了解汽車CAN總線技術(shù)原理

圖2. CAN位時(shí)序

同步段

1個(gè)時(shí)間量子長(zhǎng)度,用于多個(gè)連接在總線上的單元,通過此段實(shí)現(xiàn)時(shí)序調(diào)整,當(dāng)總線電壓電平發(fā)生變化(顯性到隱性或隱性到顯性)時(shí),預(yù)計(jì)該段會(huì)出現(xiàn)位沿。

傳播段

用于補(bǔ)償網(wǎng)絡(luò)上節(jié)點(diǎn)之間的物理延遲,包括發(fā)送單元的輸出延遲、總線上信號(hào)的傳播延遲、接收單元的輸入延遲。

相位緩沖段

相位緩沖段用于補(bǔ)償節(jié)點(diǎn)間的晶振誤差,又分為相位緩沖段1(PS1)和相位緩沖段2(PS2),在這個(gè)時(shí)間段的末端進(jìn)行總線狀態(tài)的采樣。兩個(gè)相位緩沖段PS1和PS2用于補(bǔ)償總線上的邊沿相位誤差。

采樣點(diǎn)

采樣點(diǎn)是位時(shí)間內(nèi)的一個(gè)時(shí)間點(diǎn),在該時(shí)間點(diǎn),讀取總線電平并進(jìn)行分析。位時(shí)間內(nèi)的采樣點(diǎn)決定CAN總線電壓是隱性還是顯性。以位時(shí)間的百分比表示,位置從位時(shí)間的起點(diǎn)開始計(jì)算,位于階段1和階段2之間。

處理位級(jí)錯(cuò)誤

位數(shù)填充

CAN協(xié)議遵循NRZ編碼進(jìn)行傳輸。邏輯電平在位間隔之間不發(fā)生變化。CAN需要一個(gè)邏輯電平的轉(zhuǎn)換來進(jìn)行再同步。因此,在5個(gè)相同的連續(xù)比特之后,將發(fā)送1個(gè)相反邏輯電平的比特。這就是所謂的東西位,接收器可以識(shí)別它。

位錯(cuò)誤

一個(gè)正在發(fā)送比特的節(jié)點(diǎn)總是監(jiān)控總線,如果發(fā)射器發(fā)送的比特與總線上的比特值不同,則會(huì)產(chǎn)生一個(gè)錯(cuò)誤幀。

物理介質(zhì)依賴子層

該層在CAN收發(fā)器芯片中實(shí)現(xiàn),通過Tx和Rx引腳從CAN控制器獲得輸入,輸出驅(qū)動(dòng)CANH和CANL線。收發(fā)器負(fù)責(zé)不同的比特率,CAN總線速度指的是CAN總線通信速率。最大的CAN總線通信速率是1Mbit/sec。對(duì)于特殊的應(yīng)用,一些CAN控制器將處理更高的速度,超過1Mbit/sec。低速的CAN通信速率是125kbits/sec。

與介質(zhì)有關(guān)的子層

依賴介質(zhì)的子層是高度特定的應(yīng)用,不同連接器的引腳分配標(biāo)準(zhǔn)化屬于這一層,各種連接器為DB9、OBD II。

CAN總線DB9引腳布局

CAN總線通常通過連接器訪問。

一文了解汽車CAN總線技術(shù)原理

圖3. CAN總線DB9引腳分配

引腳1:無定義

引腳2:CAN_L

引腳3:CAN GND

引腳4:無定義

引腳5:CAN_SHLD

引腳6:GND

引腳7:CAN_H

引腳8:無定義

引腳9:CAN_V+

各種微控制器中的CAN總線支持

微控制器應(yīng)具有CAN硬件和軟件,提供CAN驅(qū)動(dòng)程序以實(shí)現(xiàn)通信。Python-CAN庫(kù)也可用于為微控制器的硬件組件提供抽象的驅(qū)動(dòng)程序,并用于通過CAN網(wǎng)絡(luò)發(fā)送和接收消息。Python CAN總線也用于測(cè)試硬件和 CAN 總線數(shù)據(jù)記錄。

用于Arduino的CAN總線屏蔽

? CANbus Shield采用帶有SPI接口和CAN收發(fā)器的CAN總線控制器,為Arduino提供CAN總線能力。

? 帶有CAN總線的Arduino有助于從ECU獲取車速、油耗、溫度等信息。

? Arduino CAN庫(kù)用于通過CAN總線發(fā)送和接收CAN消息。

樹莓派CAN總線:

樹莓派沒有特定的硬件,即CAN控制器和CAN收發(fā)器來支持CAN協(xié)議。樹莓派軟件不支持CAN總線,樹莓派支持通過 SPI 接口進(jìn)行 CAN 通信。

樹莓派通過SPI接口連接到板子支持的外部CAN控制器,CAN控制器通過Rx和Tx線連接到CAN收發(fā)器。

CAN控制器示例:SJA100、MCP2515

CAN收發(fā)器示例:TJA1040、MCP2551

ACM32 CAN總線:

ACM32-F0/F4芯片內(nèi)置1路~2路CAN控制器,并提供對(duì)應(yīng)的CAN總線接口驅(qū)動(dòng)庫(kù),搭配外部的CAN收發(fā)器,保證CAN總線數(shù)據(jù)通訊的安全可靠。

如何讀取CAN總線數(shù)據(jù)?

當(dāng)CAN總線與Microchip CAN總線分析儀、CAN總線Wire Shark等外部工具連接時(shí),可以通過CAN USB適配器訪問CAN總線數(shù)據(jù),該適配器提供與計(jì)算機(jī)或PC的USB端口的即時(shí)連接。CAN USB適配器也可以通過以太網(wǎng)、互聯(lián)網(wǎng)、內(nèi)聯(lián)網(wǎng)從任何地方進(jìn)行控制。CAN總線Wireshark是一種用于Linux系統(tǒng)的工具,尤其以以太網(wǎng)網(wǎng)絡(luò)分析而聞名,它通過使用SocketCAN來顯示CAN消息,SocketCAN是一組驅(qū)動(dòng)程序和網(wǎng)絡(luò)堆棧,因此被稱為L(zhǎng)inux CAN總線。CAN to USB幫助外部工具從CAN網(wǎng)絡(luò)獲取消息,然后用于監(jiān)控和調(diào)試接收或傳輸信息的工具。

但是這些消息是原始格式的。因此,從這些數(shù)據(jù)記錄器收集的數(shù)據(jù)使用CAN總線解碼器轉(zhuǎn)換為按比例縮放的工程值。從數(shù)據(jù)記錄器收集的數(shù)據(jù)也可以存儲(chǔ)在SD卡中,這有助于控制車輛設(shè)置以提高效率。收集的CAN總線數(shù)據(jù)可用于車隊(duì)管理、研發(fā)、診斷等。

萬用表測(cè)試CAN總線

測(cè)試是必要的,以檢查任何發(fā)生的CAN總線故障,如布線、ECU、CAN網(wǎng)絡(luò)中的任何一個(gè)組件的電壓供應(yīng)故障。CAN總線的故障排除,如在CAN總線線路的物理端添加120歐姆的終端電阻,可以診斷出問題。通過用萬用表測(cè)試,確保終端電阻是120歐姆,而且電阻是合適的,沒有斷裂,還可以通過將萬用表切換到交流電壓來測(cè)試傳輸?shù)臄?shù)據(jù)。

如何判斷汽車是否有CAN總線?

配備CAN總線的車輛包含CAN總線LED和CAN-BUS HID 套件。CAN總線LED與汽車高級(jí)系統(tǒng)通信,當(dāng)此LED關(guān)閉時(shí),車輛會(huì)發(fā)出警告。CAN BUS HID KIT充當(dāng)DC到AC轉(zhuǎn)換器,并有助于在最初使用高壓電流打開燈。一旦燈啟動(dòng),它需要較低的電壓電流。但是當(dāng)HID使用低功率時(shí),CAN總線系統(tǒng)會(huì)假定燈已關(guān)閉并發(fā)出警告。為了避免這種情況,使用了HID轉(zhuǎn)換套件,它與CAN總線系統(tǒng)通信以告知有一個(gè)工作燈泡。這些警告告訴我們汽車配備了CAN總線。

CAN總線黑客攻擊

CAN總線黑客攻擊是對(duì)消費(fèi)者的威脅。CAN總線車輛采用了許多無線技術(shù),例如藍(lán)牙,用于接聽電話或播放音樂。當(dāng)車載系統(tǒng)接入車內(nèi)的CAN總線并具備 Wi-Fi連接能力時(shí),黑客很容易獲得CAN總線接入并能夠控制汽車。Wi-Fi熱點(diǎn)在汽車中很流行,這使得知道汽車IP地址的人可以跟蹤汽車。這導(dǎo)致汽車制造商對(duì)CAN總線網(wǎng)絡(luò)上的傳輸數(shù)據(jù)進(jìn)行保護(hù)。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 收發(fā)器
    +關(guān)注

    關(guān)注

    10

    文章

    3337

    瀏覽量

    105531
  • CAN
    CAN
    +關(guān)注

    關(guān)注

    57

    文章

    2663

    瀏覽量

    462433
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    2817

    瀏覽量

    87697
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    CAN/CAN FD/CAN XL三大總線協(xié)議解讀,是逐步替代關(guān)系嗎?

    電子發(fā)燒友網(wǎng)報(bào)道(/吳子鵬)在軟件定義汽車逐漸成為主流的當(dāng)下,數(shù)據(jù)傳輸?shù)乃俣群托食蔀榇蛟熘悄?b class='flag-5'>汽車的瓶頸,在這種大背景下,傳統(tǒng)CAN總線應(yīng)
    的頭像 發(fā)表于 08-12 01:12 ?3479次閱讀

    技術(shù)小課堂 | CAN總線應(yīng)用常見問題(1)

    總線通過差模信號(hào)傳輸使得總線具有良好的抗干擾性能。由于總線具有實(shí)時(shí)性強(qiáng)、抗干擾能力強(qiáng)等特點(diǎn),在軌道交通、汽車電子等行業(yè)得到廣泛的應(yīng)用。伴隨著技術(shù)
    的頭像 發(fā)表于 07-25 08:37 ?334次閱讀
    <b class='flag-5'>技術(shù)</b>小課堂 | <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>應(yīng)用常見問題(1)

    can總線中斷狀態(tài)什么意思呢?

    CAN總線(Controller Area Network)是種廣泛使用的現(xiàn)場(chǎng)總線通信協(xié)議,主要用于汽車、工業(yè)控制等領(lǐng)域。在
    的頭像 發(fā)表于 06-16 10:21 ?938次閱讀

    CAN總線錯(cuò)誤幀及其排查方法簡(jiǎn)單介紹#汽車CAN總線?

    CAN總線汽車電子
    北匯信息POLELINK
    發(fā)布于 :2024年03月15日 14:14:40

    CAN總線汽車領(lǐng)域的應(yīng)用及挑戰(zhàn)

    作為種串行通訊協(xié)議,CAN總線初期專為汽車電子設(shè)備間的通信而開發(fā)。借助其高度可靠、實(shí)時(shí)響應(yīng)及靈活應(yīng)用等特質(zhì),該總線
    發(fā)表于 02-15 14:46 ?931次閱讀

    高速CAN總線和低速CAN總線的特性

    高速CAN總線和低速CAN總線的特性 高速CAN總線和低速C
    的頭像 發(fā)表于 01-31 14:09 ?2127次閱讀

    CAN總線的發(fā)展歷程 CAN XL總線的典型應(yīng)用

    CAN總線通訊協(xié)議由德國(guó)博世于上世紀(jì)80年代發(fā)明,第個(gè)使用CAN總線通訊協(xié)議的量產(chǎn)車型是1991年的奔馳S級(jí)轎車,至今
    的頭像 發(fā)表于 12-21 14:03 ?2323次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>的發(fā)展歷程 <b class='flag-5'>CAN</b> XL<b class='flag-5'>總線</b>的典型應(yīng)用

    詳解純電動(dòng)汽車CAN總線系統(tǒng)

    CAN總線英文全稱為Controller Area Network,即控制器局域網(wǎng),是目前汽車上使用最廣泛的總線。純電動(dòng)
    的頭像 發(fā)表于 11-13 10:05 ?9447次閱讀
    詳解純電動(dòng)<b class='flag-5'>汽車</b>的<b class='flag-5'>CAN</b><b class='flag-5'>總線</b>系統(tǒng)

    汽車CAN總線系統(tǒng)的挑戰(zhàn)與設(shè)計(jì)

    CAN總線技術(shù)已在汽車上廣泛應(yīng)用,隨著新能源車型以及自動(dòng)駕駛技術(shù)的推廣,總線問題也對(duì)
    的頭像 發(fā)表于 11-03 10:17 ?995次閱讀
    <b class='flag-5'>汽車</b><b class='flag-5'>CAN</b><b class='flag-5'>總線</b>系統(tǒng)的挑戰(zhàn)與設(shè)計(jì)

    CAN總線訪問與仲裁機(jī)制#汽車CAN總線?

    CAN總線
    北匯信息POLELINK
    發(fā)布于 :2023年10月20日 15:33:02

    條口訣總結(jié),汽車CAN總線使用權(quán)獲取規(guī)則#汽車CAN總線?

    CAN總線
    北匯信息POLELINK
    發(fā)布于 :2023年10月20日 12:15:34

    CAN數(shù)據(jù)幀--幀結(jié)構(gòu),你都了解嗎?#汽車CAN總線?

    CAN總線數(shù)據(jù)
    北匯信息POLELINK
    發(fā)布于 :2023年10月11日 18:05:00

    現(xiàn)場(chǎng)總線CAN原理與應(yīng)用技術(shù)

    介紹相關(guān)的資料。 現(xiàn)場(chǎng)總線技術(shù)正在給我們展現(xiàn)個(gè)寬闊的新舞臺(tái),并且大有作為。學(xué)習(xí)CAN也可作為學(xué)習(xí)現(xiàn)場(chǎng)總線甚至是計(jì)算機(jī)網(wǎng)絡(luò)
    發(fā)表于 09-26 06:39

    詳解CAN總線

    前面已經(jīng)介紹了幾種總線協(xié)議,那現(xiàn)在如果在汽車上實(shí)際應(yīng)用總線協(xié)議來通訊的話,你會(huì)選擇哪種呢?
    發(fā)表于 09-24 12:07 ?970次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>詳解<b class='flag-5'>CAN</b><b class='flag-5'>總線</b>