時間:2018-07-03 17:13:53來源:網(wǎng)絡(luò)轉(zhuǎn)載
CAN總線是ISO國際標(biāo)準(zhǔn)化的串行通信協(xié)議。在汽車產(chǎn)業(yè)中,出于對安全性、舒適性、方便性、低公害、低成本的要求,各種各樣的電子控制系統(tǒng)被開發(fā)了出來。由于這些系統(tǒng)之間通信所用的數(shù)據(jù)類型及對可靠性的要求不盡相同,由多條總線構(gòu)成的情況很多,線束的數(shù)量也隨之增加。為適應(yīng)“減少線束的數(shù)量”、“通過多個LAN,進(jìn)行大量數(shù)據(jù)的高速通信”的需要,CAN總線應(yīng)運(yùn)而生,圖1為CAN總線在汽車中的應(yīng)用圖。
圖1汽車中CAN總線的應(yīng)用
CAN的高性能和可靠性已被認(rèn)同,并被廣泛地應(yīng)用于工業(yè)自動化、船舶、醫(yī)療設(shè)備、工業(yè)設(shè)備等方面。現(xiàn)場總線是當(dāng)今自動化領(lǐng)域技術(shù)發(fā)展的熱點之一,被譽(yù)為自動化領(lǐng)域的計算機(jī)局域網(wǎng)。圖2為CAN總線網(wǎng)路圖,它的出現(xiàn)為分布式控制系統(tǒng)實現(xiàn)各節(jié)點之間實時、可靠的數(shù)據(jù)通信提供了強(qiáng)而有力的技術(shù)支持。
圖2 CAN總線網(wǎng)路圖
CAN總線作為可靠性非常高的總線,出錯概率非常小,這也是它被廣泛應(yīng)用的原因之一。在CAN總線的實際研發(fā)中,相較于CAN總線的正確幀,工程師更關(guān)注CAN總線的錯誤幀,下面將為大家展現(xiàn)CANscope波形常見的幾類錯誤,圖3為干擾導(dǎo)致的CAN通訊錯誤。
圖3錯誤波形圖
圖4為終端電阻并聯(lián)過多,差分電平幅值太小導(dǎo)致接收節(jié)點識別失敗的錯誤。
圖4錯誤波形圖
圖5為總線支線過長,電平下降沿臺階過高,導(dǎo)致位寬度失調(diào)的錯誤。
圖5錯誤波形圖
圖6為卡車打開/關(guān)閉大燈時,耦合到CAN總線上的干擾,導(dǎo)致的錯誤。
圖6錯誤波形圖
圖7為波特率異常(位寬度從2us突然變成1.6us),導(dǎo)致位錯誤。
圖7錯誤波形圖
CAN總線的錯誤都有哪些形式,相互之間有什么樣的關(guān)系,以及總線的檢測與校驗的原理是什么?
CAN總線的錯誤幀可分為位錯誤、位填充錯誤、CRC錯誤、格式錯誤、應(yīng)答錯誤五大類,每類錯誤的具體解釋如圖8所示,此圖簡潔明了的展現(xiàn)了各種錯誤。
圖8CAN總線錯誤類型
CAN報文傳輸過程中出現(xiàn)通訊錯誤,會發(fā)送錯誤幀,以上所述的錯誤幀類型中根據(jù)其錯誤標(biāo)識符不同,可分為“主動錯誤”和“被動錯誤”。
主動錯誤:檢測錯誤主動報錯,發(fā)出錯誤標(biāo)識符(連續(xù)6個顯性位)和錯誤界定符(連續(xù)8個隱形位);目的在于“主動”通知錯誤,即使別的節(jié)點沒有發(fā)現(xiàn)此錯誤;
被動錯誤:檢測錯誤,被動等待其他節(jié)點報錯后發(fā)送錯誤標(biāo)識符(連續(xù)6個隱形位)和錯誤標(biāo)識符(連續(xù)8個隱形位);目的在于識別錯誤,回應(yīng)主動錯誤;
總線關(guān)閉:節(jié)點不參與總線通訊;
為了避免某個設(shè)備因為自身原因(例如硬件損壞)導(dǎo)致無法正常收發(fā)數(shù)據(jù)而不斷地破壞數(shù)據(jù)幀,從而影響其他正常節(jié)點通訊,CAN-bus規(guī)范中規(guī)定每個CAN控制器都有一個發(fā)送錯誤計數(shù)器和一個接收錯誤計數(shù)器。根據(jù)計數(shù)值不同CAN節(jié)點會處于不同的設(shè)備狀態(tài),狀態(tài)之間的轉(zhuǎn)換關(guān)系如圖9所示:
圖9錯誤轉(zhuǎn)換圖
接收、發(fā)送錯誤計數(shù)器對應(yīng)的變動條件及數(shù)值變動情況:
接收單元檢測出錯誤時,檢測到錯誤標(biāo)識符或過載標(biāo)志的“位錯誤”除外,此時REC+1、TEC不變;
接收單元在發(fā)送完錯誤標(biāo)志后檢測到第一位為顯性電平,此時REC+8、TEC不變;
發(fā)送單元輸出錯誤標(biāo)志,此時REC不變、TEC+8;
發(fā)送單元發(fā)送主動錯誤標(biāo)志或過載標(biāo)志,檢測出位錯誤,REC不變、TEC+8;
接收單元發(fā)送主動錯誤標(biāo)志或過載標(biāo)志,檢測出位錯誤,REC+8、TEC不變;
各單元從主動錯誤標(biāo)志、過載標(biāo)志的開始檢測出連續(xù)14個顯性位,之后每檢測出連續(xù)8個顯性位,發(fā)送時REC+8、接收時TEC+8;
檢測出被動錯誤標(biāo)志后追加連續(xù)8個位的顯性位,發(fā)送時REC+8、接收時TEC+8;
發(fā)送單元正常接收數(shù)據(jù)結(jié)束時(返回ACK且到幀結(jié)束位檢測到錯誤),REC不變、TEC-1;
接收單元正常接收數(shù)據(jù)結(jié)束時(到CRC未檢測出錯誤且正常返回ACK),REC<127時,REC-1,REC>127時,REC=127;TEC不變;
處于總線關(guān)閉的單元,檢測到128次連續(xù)11個位的隱形位,錯誤計數(shù)器歸零,REC、TEC=0;
CAN總線錯誤處理功能屬于是鏈路層功能,此功能由CAN控制器決定,如圖10所示CAN控制介紹圖,其中詳細(xì)介紹與錯誤處理有關(guān)的部分:位流處理器、位邏輯控制、錯誤管理邏輯。
位流處理器(BSP)是一個控制發(fā)送緩沖器、接收FIFO和CAN總線之間數(shù)據(jù)流的程序裝置,它還執(zhí)行總線上的錯誤檢測、仲載、總線填充和錯誤處理。
位時序邏輯(BTL)監(jiān)視串行的CAN總線和位時序,它在信息開頭“弱勢支配”的總線傳輸時,同步CAN總線位流(硬同步),接收報文時再次同步下一次傳送(軟同步)。
錯誤管理邏輯(EML)負(fù)責(zé)限制傳輸層模塊的錯誤,它接收來自位流處理器的出錯報告,然后把有關(guān)錯誤統(tǒng)計告訴位流處理器和接口管理邏輯(IML)。
圖10CAN控制器
CAN控制器的信號從CAN收發(fā)器的TXD發(fā)送到總線,同時被RXD收回進(jìn)行檢測,以此達(dá)到實時的接收錯誤檢測、發(fā)送錯誤檢測與ID仲裁功能。CAN總線是如何保證數(shù)據(jù)傳輸可靠性的,以下介紹CAN總線獨有的檢測機(jī)制:位流檢測和CRC校驗;
位流檢測:即位檢測,如圖11所示節(jié)點在發(fā)送過程中,同時會監(jiān)測自身發(fā)送的位數(shù)值,假如檢測到位與自身送出的位數(shù)值不同,則會提示位錯誤;
圖11位檢測
CRC校驗:即循環(huán)冗余校驗碼是數(shù)據(jù)通訊領(lǐng)域中最常用的一種差錯校驗碼,其信息字段和校驗字段的長度可任意選定;CRC校驗過程是通過循環(huán)計算冗余校驗碼的方式實現(xiàn)的,CAN控制器內(nèi)部CRC的實現(xiàn)是基于多項式發(fā)生器和一個15位寄存器;其意義在于保證傳輸數(shù)據(jù)的正確性,未經(jīng)CRC校驗檢測出的錯誤低于10負(fù)九次方。
CANscope總線分析儀是一款綜合性的CAN總線開發(fā)與測試的專業(yè)工具,集海量存儲示波器、網(wǎng)絡(luò)分析儀、誤碼率分析儀、協(xié)議分析儀及可靠性測試工具于一身,并把各種儀器有機(jī)的整合和關(guān)聯(lián),如圖12所示CANscope的軟件界面圖;重新定義CAN總線的開發(fā)測試方法,可對CAN網(wǎng)絡(luò)通訊正確性、可靠性、合理性進(jìn)行多角度全方位的評估;幫助用戶快速定位故障節(jié)點,解決CAN總線應(yīng)用的各種問題,是CAN總線開發(fā)測試的終極工具。
圖12CANscope軟件界面
標(biāo)簽:
上一篇:位移傳感器在冷鋼測量料流閥...
中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
產(chǎn)品新聞
更多>以簡驅(qū)繁,精準(zhǔn)智控 | 維智S1系列新一代...
2024-11-01
2024-10-31
2024-10-31
2024-10-31
2024-10-31
2024-10-29
推薦專題
更多>