《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動態(tài) > CAN總線局部錯誤及全局通知分析

CAN總線局部錯誤及全局通知分析

2017-10-25
來源:ZLG致遠電子
關(guān)鍵詞: CAN總線 接收器 CRC序列 電機

  局部錯誤,全局通知是CAN總線錯誤類型中較為典型的一種,如何通過錯誤報文及波形快速定位錯誤原因呢?本文結(jié)合現(xiàn)場實測案例簡要分析。

  一、CAN總線錯誤簡介

  在CAN總線中存在5種錯誤類型,如圖1所示:它們互相并不排斥,下面簡單介紹一下它們的區(qū)別、產(chǎn)生的原因。

1.png

  圖1  5種錯誤類型

  位錯誤:向總線送出一位的某個節(jié)點同時也在監(jiān)視總線,當(dāng)監(jiān)視到總線位的電平和送出的電平不同時,則在該位時刻檢測到一個位錯誤。但是在仲裁區(qū)的填充位流期間或應(yīng)答間隙送出隱性位而檢測到顯性位時,不認為是錯誤位。

  填充錯誤:在使用位填充方法進行編碼的報文中(幀起始到CR序列),出現(xiàn)了第6個連續(xù)相同的位電平時,將檢 測出一個填充錯誤。

  CRC錯誤:CRC序列是由發(fā)送器CRC計算的結(jié)果組成的。接收器以和發(fā)送器相同的方法計算CRC。如果計算的結(jié)果和接收到的CRC序列不同,則檢測出一個CRC錯誤。

  格式錯誤: 當(dāng)固定格式的位區(qū)中(如CRC認可位、ACK認可位、幀結(jié)束位)出現(xiàn)一個或多個非法位時,則檢測到一個形式錯誤。

  應(yīng)答錯誤:在應(yīng)答間隙,每一個接收端都會向總線回一個顯性位,如果發(fā)送端在ACK場檢測不到顯性位應(yīng)答,將產(chǎn)生應(yīng)答錯誤。

  當(dāng)出現(xiàn)5種錯誤類型之一時,發(fā)送或接收節(jié)點將發(fā)送錯誤幀。其中錯誤幀 又分主動錯誤幀和被動錯誤幀。

  主動錯誤幀由處于主動錯誤狀態(tài)的節(jié)點發(fā)送 ,幀格式由主動錯誤標(biāo)志(6個連續(xù)顯性位)+錯誤標(biāo)志疊加(0~6個連續(xù)顯性位)+錯誤界定符(8個連續(xù)的隱性位)組成。主動錯誤幀格式如圖2所示:

2.png

  圖2  主動錯誤幀格式

  被動錯誤幀由被動錯誤狀態(tài)的節(jié)點發(fā)送,幀格式由被動錯誤標(biāo)志(6個連續(xù)隱性位)+錯誤標(biāo)志疊加(0~6個連續(xù)顯性位)+錯誤界定符(8個連續(xù)的隱性位)組成。被動錯誤標(biāo)志能夠部分或全部被其它節(jié)點的顯性位覆蓋。如下:

3.png

  圖3被動錯誤幀格式

  二、什么是局部錯誤?

  在整個CAN網(wǎng)絡(luò)中,由于干擾等原因引起總線局部錯誤(即某一個CAN節(jié)點出錯,其他節(jié)點正常),CAN總線上的主動報錯站點首先檢測到錯誤,并立即主動向總線上發(fā)出錯誤標(biāo)識,通知其他未發(fā)現(xiàn)錯誤的節(jié)點,如圖4所示:

4.png

  圖4 錯誤幀的發(fā)送(局部錯誤)

  檢測錯誤---發(fā)送錯誤幀---通知報文錯誤:首先,發(fā)送節(jié)點檢測到總線錯誤,發(fā)出錯誤標(biāo)識——六個連續(xù)的顯性電平位,總線接收到錯誤標(biāo)識后進行全局通知——0~6個連續(xù)的顯性電平位+8個連續(xù)的隱性電平位,告知其他節(jié)點總線錯誤。

  三、局部錯誤,全局通知案例分析

  某純電動公交車,在啟動車輛未啟動電機時,總線報文成功率很高,基本沒有錯誤幀,但在啟動電機后,特別是踩氣泵剎車時,每踩一次踩氣泵就會涌現(xiàn)出較多的錯誤幀。整車的簡單拓撲如圖5所示:

 

5.png

 圖5 整車通信簡易拓撲

  使用ZLG致遠電子總線分析儀CANscope連接方向盤下的OBD接口測試,通過踩氣泵剎車,產(chǎn)生了較多的錯誤幀,主要為填充錯誤和格式錯誤,分析錯誤幀波形如圖6:

6.png

  圖6 錯誤幀的波形圖

  從藍色標(biāo)記可以看到,ACK應(yīng)答后,先有一個低臺階,再二次抬高的錯誤幀。

7.png

  圖7 錯誤標(biāo)志分析

  CAN網(wǎng)絡(luò)波特率為250 Kbps,即每個位為4us,由圖7知,錯誤標(biāo)志為7個顯性位(主動錯誤標(biāo)志+錯誤標(biāo)志疊加)組成,二次抬高的6個連續(xù)顯性電平,是局部錯誤后全局通知,各節(jié)點錯誤標(biāo)志疊加造成的。也就是說車網(wǎng)絡(luò)上有某一CAN節(jié)點較容易受到干擾,出現(xiàn)局部錯誤。

  如何快速分析局部錯誤,定位干擾源呢?

  由于是局部錯誤,干擾源在不同的測試點幅值是不同的,使用致遠電子CANScope接入車前端的OBD接口和車尾部的電機控制器分別測試,結(jié)果如圖8所示:

8.png

  圖8 共模干擾對比

  由上圖所示,在OBD接口測試的共模幅值為700多mV,在電機控制器節(jié)點測試的共模幅值為1.3V左右,同時可看到周期性的干擾脈沖。通過對異常共模信號做FFT頻譜分析,快速定位共模干擾頻率,測試結(jié)果如圖9所示:

9.png

  圖9 共模干擾分析

  測試出的干擾頻率與電機驅(qū)動器頻率吻合,推斷為驅(qū)動器逆變產(chǎn)生的巨大電流形成強干擾,串?dāng)_到CAN總線上,導(dǎo)致距離其較近的節(jié)點出現(xiàn)局部錯誤。

  局部錯誤,全局通知是一種常見的錯誤類型,如何快速定位到錯誤報文及其對應(yīng)的波形是分析問題的關(guān)鍵,通過CANScope總線分析儀的報文接收和示波器,可將每一幀報文與波形做一一對應(yīng),快速分析報文及波形情況,實現(xiàn)CAN總線的快速故障定位和干擾排除。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。