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

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

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

虹科干貨 | 帶你全面了解“CAN總線錯(cuò)誤”(四)——在實(shí)踐中生成和記錄CAN錯(cuò)誤

虹科智能自動(dòng)化 ? 2022-06-09 10:21 ? 次閱讀

A simple intro to CAN errors

CAN總線錯(cuò)誤

在本系列文章中,我們將為您詳細(xì)介紹CAN總線錯(cuò)誤的相關(guān)知識(shí),包括CAN總線錯(cuò)誤的基礎(chǔ)概念、CAN總線錯(cuò)誤的類型、CAN錯(cuò)誤幀和CAN節(jié)點(diǎn)錯(cuò)誤狀態(tài),并通過(guò)實(shí)際的應(yīng)用測(cè)試生成并記錄CAN錯(cuò)誤。

在之前發(fā)布的文章中,我們介紹了CAN錯(cuò)誤和錯(cuò)誤處理的理論基礎(chǔ),而在本篇文章中,我們將在實(shí)踐中生成和記錄錯(cuò)誤。測(cè)試過(guò)程中將使用到虹科的CANedge數(shù)據(jù)記錄儀和PCAN-USB設(shè)備。

測(cè)試1

沒(méi)有CAN總線錯(cuò)誤

為了便于對(duì)照,我們?cè)O(shè)置了沒(méi)有CAN總線錯(cuò)誤的測(cè)試:一個(gè) CANedge2 的“發(fā)送器”將數(shù)據(jù)發(fā)送到另一個(gè) CANedge2 的“接收器”,并且兩者都能夠記錄CAN總線錯(cuò)誤。


55185928-e6f0-11ec-aa96-dac502259ad0.png

測(cè)試2

移除CAN總線終端電阻

在這個(gè)測(cè)試中,我們?cè)谌罩緯?huì)話過(guò)程中移除了 CAN 終端電阻。這可以有效地將位電平設(shè)置為顯性。同時(shí),CANedge2發(fā)送器立即開(kāi)始記錄位錯(cuò)誤(當(dāng)它嘗試發(fā)送隱性位但讀取顯性位時(shí)會(huì)發(fā)生這種情況)。CANedge2 接收器在檢測(cè)到 6 個(gè)連續(xù)顯性位時(shí)記錄位填充錯(cuò)誤。記錄這些錯(cuò)誤,直到再次添加終止。

在記錄來(lái)自車輛、機(jī)器等的數(shù)據(jù)時(shí),缺少終端電阻似乎并沒(méi)有影響,但是,在使用“測(cè)試臺(tái)”設(shè)置時(shí),這個(gè)問(wèn)題非常常見(jiàn),并可能導(dǎo)致混淆,因?yàn)樗y以與非活動(dòng)CAN總線區(qū)分開(kāi)來(lái)。因此,在CANedge數(shù)據(jù)記錄儀上啟用錯(cuò)誤幀記錄幀對(duì)于故障排除而言是十分有效的。


5552c0ae-e6f0-11ec-aa96-dac502259ad0.png

發(fā)送器位填充錯(cuò)誤


559d10f0-e6f0-11ec-aa96-dac502259ad0.png

接收器位填充錯(cuò)誤

測(cè)試3

設(shè)置錯(cuò)誤的波特率

在這個(gè)測(cè)試中,我們將CANedge接收器節(jié)點(diǎn)配置為具有492.872K波特率,而發(fā)送器的波特率為500K,這是一個(gè)相當(dāng)大的差異,并導(dǎo)致發(fā)送器的ACK錯(cuò)誤和接收器的位填充錯(cuò)誤。在更現(xiàn)實(shí)的場(chǎng)景中,各個(gè)節(jié)點(diǎn)的波特率配置的較小差異可能會(huì)導(dǎo)致間歇性錯(cuò)誤幀,從而導(dǎo)致消息丟失。

這個(gè)例子比較極端,然而,在實(shí)踐中,我們有時(shí)會(huì)看到使用標(biāo)準(zhǔn)比特率(250K、500K、……)的CAN總線,但其特定的位時(shí)序設(shè)置與通常推薦的設(shè)置不同。這不會(huì)導(dǎo)致通信完全關(guān)閉,但會(huì)導(dǎo)致幾個(gè)百分比的周期性幀丟失。為了解決這個(gè)問(wèn)題,可以在CANedge配置中構(gòu)建一個(gè)“預(yù)定義比特率”,本質(zhì)上是設(shè)置位時(shí)序以更好地匹配正在記錄的CAN總線。


55c0fa6a-e6f0-11ec-aa96-dac502259ad0.png

發(fā)送器ACK錯(cuò)誤


55f6d842-e6f0-11ec-aa96-dac502259ad0.png

接收器位填充錯(cuò)誤

測(cè)試4

移除應(yīng)答CAN節(jié)點(diǎn)

在本次測(cè)試中,我們使用了三個(gè)配置如下的 CANedge 單元:

CANedge1:配置為應(yīng)答數(shù)據(jù)

CANedge2 A:配置為“靜默模式”(無(wú)確認(rèn))

CANedge2 B:配置為每 500ms 傳輸一個(gè) CAN 幀


在默認(rèn)設(shè)置中,數(shù)據(jù)由 CANedge2 B 傳輸?shù)?CAN 總線上并無(wú)錯(cuò)誤記錄。但是,如果我們從總線上移除 CANedge1,則不再有任何 CAN 節(jié)點(diǎn)來(lái)確認(rèn)發(fā)送器發(fā)送的幀。結(jié)果,發(fā)送器檢測(cè)到ACK 錯(cuò)誤。作為響應(yīng),它增加其發(fā)送錯(cuò)誤計(jì)數(shù)器并在 CAN 總線上產(chǎn)生活動(dòng)錯(cuò)誤標(biāo)志。這些又由 CANedge2 A(它靜默監(jiān)控總線)記錄為格式錯(cuò)誤。


56792324-e6f0-11ec-aa96-dac502259ad0.png

CANedge之所以會(huì)記錄格式錯(cuò)誤,是因?yàn)榘l(fā)送器在識(shí)別出ACK時(shí)隙中缺少顯性位時(shí)將其提高,一旦接收器在隨后的EOF字段中觀察到顯性位(本該是隱性的),就會(huì)檢測(cè)到格式錯(cuò)誤。

很明顯,當(dāng)TEC從0增加到16x8=128時(shí),發(fā)送器會(huì)廣播16個(gè)主動(dòng)錯(cuò)誤標(biāo)志。發(fā)送器現(xiàn)在已超過(guò)TEC的閾值127并進(jìn)入被動(dòng)錯(cuò)誤模式。因此,發(fā)送器仍然會(huì)遇到ACK錯(cuò)誤,但現(xiàn)在只會(huì)引發(fā)被動(dòng)錯(cuò)誤標(biāo)志(接收器不可見(jiàn))。在這一點(diǎn)上,發(fā)送器不斷嘗試發(fā)送相同的幀,并且接收器不斷記錄這個(gè)重傳序列。

這種類型的錯(cuò)誤是我們?cè)诩夹g(shù)支持中經(jīng)常遇到的錯(cuò)誤。具體來(lái)說(shuō),用戶會(huì)嘗試使用我們的CAN記錄器來(lái)記錄來(lái)自單個(gè)CAN節(jié)點(diǎn)的數(shù)據(jù)(例如從CANmod傳感器到CAN模塊),如果他們決定在這樣的安裝中啟用CANedge上的“靜默模式”,則沒(méi)有CAN節(jié)點(diǎn)將確認(rèn)單個(gè)CAN節(jié)點(diǎn)廣播數(shù)據(jù),這樣得到的結(jié)果大概率將是空日志文件,或充滿相同CAN幀重傳的日志文件。


56a4f09e-e6f0-11ec-aa96-dac502259ad0.png

發(fā)送器ACK錯(cuò)誤

56d09a14-e6f0-11ec-aa96-dac502259ad0.png

接收器格式錯(cuò)誤

測(cè)試5

CAN幀沖突(無(wú)重傳)

設(shè)置CAN總線時(shí),避免CAN ID重復(fù)是關(guān)鍵,否則可能會(huì)導(dǎo)致幀沖突,因?yàn)閮蓚€(gè)CAN節(jié)點(diǎn)可能都認(rèn)為他們已經(jīng)贏得了仲裁,并同時(shí)開(kāi)始傳輸它們的幀。

為了模擬這一點(diǎn),我們使用與測(cè)試4相同的設(shè)置。此外,我們連接了一個(gè)PCAN-USB設(shè)備作為輔助發(fā)送器。CANedge2發(fā)送器現(xiàn)在配置為每10ms輸出一個(gè)CAN ID為1且有效負(fù)載為8個(gè)0xFF字節(jié)的CAN幀。此外,我們將CANedge2配置為禁用因錯(cuò)誤中斷的幀的重新傳輸。PCAN-USB每2ms輸出一個(gè)相同的CAN幀,有效載荷的第一個(gè)字節(jié)更改為0xFE。PCAN設(shè)備已啟用重傳。


56f715ae-e6f0-11ec-aa96-dac502259ad0.png

這種設(shè)置會(huì)迅速產(chǎn)生幀沖突,從而導(dǎo)致CANedge和PCAN發(fā)送器檢測(cè)到位錯(cuò)誤。作為對(duì)此的響應(yīng),兩者都會(huì)引發(fā)一個(gè)活動(dòng)錯(cuò)誤標(biāo)志,CANedge接收器將其檢測(cè)為位填充錯(cuò)誤。PCAN設(shè)備立即嘗試重新傳輸并成功,而CANedge等待進(jìn)一步傳輸,直到要發(fā)送下一個(gè)消息。

這種類型的錯(cuò)誤當(dāng)然不應(yīng)該發(fā)生在例如汽車中,因?yàn)樵O(shè)計(jì)和測(cè)試過(guò)程將確保所有 CAN 節(jié)點(diǎn)通過(guò)全球唯一的 CAN 標(biāo)識(shí)符進(jìn)行通信。但是,如果您安裝第 3 方設(shè)備(例如傳感器到 CAN 模塊)以將數(shù)據(jù)注入現(xiàn)有 CAN 總線,則很容易出現(xiàn)此問(wèn)題。如果您不確保外部 CAN 節(jié)點(diǎn)的 CAN ID 的全局唯一性,您可能會(huì)導(dǎo)致幀沖突,從而導(dǎo)致 CAN 總線上的錯(cuò)誤。如果您的外部 CAN 節(jié)點(diǎn)廣播具有高優(yōu)先級(jí) CAN ID 的數(shù)據(jù),這一點(diǎn)尤其重要,因?yàn)槟赡軙?huì)影響安全關(guān)鍵 CAN 節(jié)點(diǎn)。


57166eb8-e6f0-11ec-aa96-dac502259ad0.png

PCAN發(fā)送器錯(cuò)誤


57400016-e6f0-11ec-aa96-dac502259ad0.png

CANedge發(fā)送器位錯(cuò)誤


576a50b4-e6f0-11ec-aa96-dac502259ad0.png

CANedge接收器位填充錯(cuò)誤

測(cè)試6

CAN幀沖突(包括重傳)

在這個(gè)測(cè)試中,我們使用與之前相同的設(shè)置,但在CANedge2發(fā)送器上啟用重傳。在這種情況下,幀沖突會(huì)導(dǎo)致一系列后續(xù)幀沖突,因?yàn)镃ANedge2和PCAN-USB設(shè)備都試圖重新傳輸其中斷的消息。

由于產(chǎn)生的位錯(cuò)誤,兩者都會(huì)引發(fā)總共16個(gè)活動(dòng)錯(cuò)誤標(biāo)志,它們被靜默CANedge2接收器檢測(cè)為位填充錯(cuò)誤。然后兩個(gè)發(fā)送器進(jìn)入錯(cuò)誤被動(dòng)模式并停止產(chǎn)生主動(dòng)錯(cuò)誤標(biāo)志,這意味著它們都不能破壞總線上的CAN幀。結(jié)果,其中一個(gè)發(fā)送器將成功傳輸完整的消息,從而結(jié)束重傳,并使兩個(gè)設(shè)備都能恢復(fù)傳輸。但是,這僅持續(xù)幾秒鐘,然后發(fā)生另一次碰撞。

沖突處理是一個(gè)很好的例子,說(shuō)明CAN錯(cuò)誤處理在“關(guān)閉”潛在有問(wèn)題的序列和使CAN節(jié)點(diǎn)能夠恢復(fù)通信方面很有效。如果發(fā)生幀沖突,很可能兩個(gè)CAN節(jié)點(diǎn)都將設(shè)置為嘗試重傳,如果不是錯(cuò)誤處理和限制,則將導(dǎo)致阻塞。

CAN/LIN數(shù)據(jù)與錯(cuò)誤記錄器

虹科CANedge1讓您可以輕松地將數(shù)據(jù)從2xCAN/LIN總線記錄到8-32GB的SD卡中,并支持記錄CAN/LIN錯(cuò)誤。只需將其連接到汽車或卡車即可開(kāi)始記錄-并通過(guò)免費(fèi)軟件/API解碼數(shù)據(jù)。此外,升級(jí)版CANedge2添加了WiFi功能,讓您可以將數(shù)據(jù)自動(dòng)傳輸?shù)侥约旱姆?wù)器,并通過(guò)無(wú)線方式更新設(shè)備。


CAN錯(cuò)誤幀記錄示例

1. OEM原型車中的CAN總線診斷

汽車OEM可能需要在后期原型測(cè)試期間在現(xiàn)場(chǎng)記錄CAN錯(cuò)誤幀。通過(guò)部署CANedge,OEM工程團(tuán)隊(duì)將能夠根據(jù)實(shí)際CAN信號(hào)(速度、RPM、溫度)以及與原型系統(tǒng)中較低層CAN通信相關(guān)的問(wèn)題進(jìn)行故障排除。如果感興趣的問(wèn)題是間歇性的,例如每月只發(fā)生一次或兩次,這一點(diǎn)尤其重要。在這種情況下,CAN總線接口不太適合,因?yàn)閾碛谐杀拘б娓叩脑O(shè)備以實(shí)現(xiàn)可擴(kuò)展部署以更快地進(jìn)行故障排除變得越來(lái)越重要。

57924fce-e6f0-11ec-aa96-dac502259ad0.png

虹科車輛網(wǎng)絡(luò)團(tuán)隊(duì)在車用CAN總線方面有著十分豐富的技術(shù)積累,歡迎通過(guò)hongchesys@hkaco.com聯(lián)系虹科車輛網(wǎng)絡(luò)團(tuán)隊(duì)。

2. 遠(yuǎn)程排除機(jī)器中的CAN錯(cuò)誤

OEM或售后市場(chǎng)用戶可能需要在他們的機(jī)器中捕獲罕見(jiàn)的CAN錯(cuò)誤事件。為此,他們部署了一個(gè)CANedge2來(lái)記錄CAN數(shù)據(jù)和相關(guān)的錯(cuò)誤幀,并通過(guò)WiFi自動(dòng)將數(shù)據(jù)上傳到他們自己的云服務(wù)器。在這里,錯(cuò)誤會(huì)被自動(dòng)識(shí)別,并向工程團(tuán)隊(duì)發(fā)送警報(bào),以便立即診斷和解決問(wèn)題。

57b52648-e6f0-11ec-aa96-dac502259ad0.png

虹科工業(yè)控制團(tuán)隊(duì)在CAN總線等工業(yè)通訊協(xié)議方面有著十分豐富的技術(shù)積累,歡迎通過(guò)hongconsys@hkaco.com聯(lián)系虹科工業(yè)控制團(tuán)隊(duì)。

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

    關(guān)注

    57

    文章

    2694

    瀏覽量

    463146
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    CAN總線基礎(chǔ)知識(shí)匯總#CAN #CANoe #汽車總線

    CAN總線
    北匯信息POLELINK
    發(fā)布于 :2024年11月04日 13:35:54

    什么是CAN時(shí)鐘?#CAN #汽車CAN總線? #CANoe

    CAN總線
    北匯信息POLELINK
    發(fā)布于 :2024年10月29日 12:23:36

    CAN總線知識(shí)】全面了解CAN總線協(xié)議

    提及總線,總是讓人聯(lián)想到那些交錯(cuò)在一起的計(jì)算機(jī)電線。那么這些電線如何發(fā)揮功效呢?這還得配合總線協(xié)議的管理來(lái)使用。那么今天我們介紹的就是CAN總線協(xié)議。看看這個(gè)協(xié)議的含義和應(yīng)用吧。
    的頭像 發(fā)表于 10-15 08:05 ?1106次閱讀
    【<b class='flag-5'>CAN</b><b class='flag-5'>總線</b>知識(shí)】<b class='flag-5'>全面</b><b class='flag-5'>了解</b><b class='flag-5'>CAN</b><b class='flag-5'>總線</b>協(xié)議

    CAN總線錯(cuò)誤狀態(tài)的種類

    CAN總線錯(cuò)誤狀態(tài)的種類主要包括以下幾種,每種狀態(tài)都反映了CAN總線網(wǎng)絡(luò)中節(jié)點(diǎn)或總線的不同
    的頭像 發(fā)表于 09-03 14:17 ?693次閱讀

    一文讀懂CAN通訊錯(cuò)誤

    CAN總線通信技術(shù)廣泛應(yīng)用于多個(gè)行業(yè),是每個(gè)總線設(shè)計(jì)工程師必學(xué)的一個(gè)通訊網(wǎng)絡(luò)。然而,對(duì)于CAN通信中的錯(cuò)誤幀,許多人僅停留在表面
    的頭像 發(fā)表于 06-12 08:24 ?2436次閱讀
    一文讀懂<b class='flag-5'>CAN</b>通訊<b class='flag-5'>錯(cuò)誤</b>幀

    CAN總線數(shù)據(jù)記錄儀選型指南

    CAN總線數(shù)據(jù)記錄儀擁有多種型號(hào)和強(qiáng)大的功能,滿足了不同行業(yè)、不同場(chǎng)景下的數(shù)據(jù)記錄需求。今天,我們將針對(duì)Influx以及Kvaser兩個(gè)品牌的記錄
    的頭像 發(fā)表于 05-24 17:08 ?484次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>數(shù)據(jù)<b class='flag-5'>記錄</b>儀選型指南

    培訓(xùn) | CiA協(xié)會(huì)CAN總線實(shí)訓(xùn)開(kāi)班,新一代CAN網(wǎng)絡(luò)CAN XL

    暌違5年之久,國(guó)際CiA協(xié)會(huì)培訓(xùn)再次落地國(guó)內(nèi)!你是否渴望與國(guó)際CAN領(lǐng)域的權(quán)威專家面對(duì)面交流,深入探討CAN技術(shù)的最新發(fā)展與應(yīng)用?你是否想站在行業(yè)前沿,領(lǐng)略CAN技術(shù)的最新動(dòng)態(tài)?機(jī)會(huì)就在眼前!
    的頭像 發(fā)表于 05-16 08:04 ?344次閱讀
    <b class='flag-5'>虹</b><b class='flag-5'>科</b>培訓(xùn) | CiA協(xié)會(huì)<b class='flag-5'>CAN</b><b class='flag-5'>總線</b>實(shí)訓(xùn)開(kāi)班,新一代<b class='flag-5'>CAN</b>網(wǎng)絡(luò)<b class='flag-5'>CAN</b> XL

    常見(jiàn)的CAN中繼器應(yīng)用錯(cuò)誤及原因有哪些?

    CAN中繼器在應(yīng)用中可能會(huì)遇到一些常見(jiàn)的錯(cuò)誤,這些錯(cuò)誤可能源于多個(gè)方面。
    的頭像 發(fā)表于 05-08 10:16 ?526次閱讀

    一文讀懂CAN控制器錯(cuò)誤處理的原理

    CAN通訊的錯(cuò)誤幀到底是如何被界定的?本文帶你輕松了解!錯(cuò)誤標(biāo)定檢測(cè)到錯(cuò)誤條件的站通過(guò)發(fā)送
    的頭像 發(fā)表于 04-26 08:25 ?1487次閱讀
    一文讀懂<b class='flag-5'>CAN</b>控制器<b class='flag-5'>錯(cuò)誤</b>處理的原理

    CAN 會(huì)收到錯(cuò)誤的數(shù)據(jù)嗎?

    CAN-bus總線協(xié)議以高穩(wěn)定性,高容錯(cuò)率而著稱于世,然而仍有很多用戶在使用的時(shí)候擔(dān)心CAN會(huì)接受到錯(cuò)誤的信息,在數(shù)據(jù)里增加了CRC校驗(yàn)的部分,這種做法是否有必要?
    的頭像 發(fā)表于 04-04 08:24 ?366次閱讀
    <b class='flag-5'>CAN</b> 會(huì)收到<b class='flag-5'>錯(cuò)誤</b>的數(shù)據(jù)嗎?

    科技術(shù) | PCAN View功能細(xì)講:從實(shí)時(shí)監(jiān)測(cè)到錯(cuò)誤幀分析

    相信使用過(guò)PCAN工具的朋友都知道PCAN-View這款免費(fèi)軟件,它具有直觀的用戶界面,可以實(shí)時(shí)監(jiān)測(cè)和分析CAN總線上的數(shù)據(jù)幀,并提供過(guò)濾、發(fā)送和報(bào)文
    的頭像 發(fā)表于 03-18 13:48 ?1025次閱讀
    <b class='flag-5'>虹</b>科技術(shù) | PCAN View功能細(xì)講:從實(shí)時(shí)監(jiān)測(cè)到<b class='flag-5'>錯(cuò)誤</b>幀分析

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

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

    如何選擇CAN總線數(shù)據(jù)記錄儀 Kvaser Memorator Pro 5xHS

    什么是CAN總線數(shù)據(jù)記錄儀? CAN總線數(shù)據(jù)記錄儀是一種用于
    的頭像 發(fā)表于 03-04 16:35 ?517次閱讀
    如何選擇<b class='flag-5'>CAN</b><b class='flag-5'>總線</b>數(shù)據(jù)<b class='flag-5'>記錄</b>儀  Kvaser Memorator Pro 5xHS

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

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

    如何用示波器排查CAN的各種錯(cuò)誤幀呢?

    如何用示波器排查CAN的各種錯(cuò)誤幀呢? 導(dǎo)言: 控制器局域網(wǎng)絡(luò)(Controller Area Network,CAN)是一種常用的現(xiàn)場(chǎng)總線通信協(xié)議,廣泛應(yīng)用于汽車電子系統(tǒng)、工業(yè)自動(dòng)化
    的頭像 發(fā)表于 12-07 11:09 ?1070次閱讀