汽車CAN總線關(guān)閉的故障記錄與恢復(fù)建議
雖然CAN總線有著非常高的穩(wěn)定性,然而,一旦出現(xiàn)錯(cuò)誤尤其是CAN總線關(guān)閉,對于汽車的整體功能甚至安全性都造成極大影響。為此,在汽車行業(yè)高速發(fā)展,電子與通信技術(shù)廣泛應(yīng)用的今天,如何檢測汽車網(wǎng)絡(luò)故障的發(fā)生,如何修復(fù)故障,使我們能夠保證穩(wěn)定和安全的應(yīng)用CAN網(wǎng)絡(luò)技術(shù)服務(wù)于汽車產(chǎn)業(yè),形成了本文研究的背景和意義。
汽車CAN總線關(guān)閉故障發(fā)生時(shí),應(yīng)分析物理層包括CAN線路、CAN控制器及收發(fā)器、CAN信號干擾等外在因素,同時(shí)分析CAN寄存器及軟件處理,重新初始化CAN驅(qū)動(dòng)和恢復(fù)正常后,定時(shí)嘗試往外發(fā)送報(bào)文。CAN總線關(guān)閉嚴(yán)重影響到整車的功能與安全性,我們通過對故障的成因分析,提出合理的完善建議,希望能對汽車電子技術(shù)的健康發(fā)展起到一定的作用。
診斷規(guī)范描述了一系列的診斷服務(wù),定義ECU與診斷儀之間的請求響應(yīng)規(guī)則、ECU對于請求報(bào)文的處理行為以及請求、響應(yīng)報(bào)文信息含義。常用的診斷規(guī)范包括有UDS,KWP2000以及ISO15765等協(xié)議。其中記錄和讀取診斷故障碼(DTC)就是診斷的一項(xiàng)重要工作,網(wǎng)絡(luò)節(jié)點(diǎn)單元把曾經(jīng)或現(xiàn)在發(fā)生的相關(guān)故障碼都保存在非易失性存儲器(NVM)中,隨時(shí)方便于汽車工程師檢查故障記錄。
我們對于CAN總線關(guān)閉故障的診斷流程是,CAN控制器在錯(cuò)誤中斷里或者在周期性的查詢里,檢查BUS OFF寄存器的值,如果CAN控制器發(fā)生了BUS OFF,這個(gè)寄存器的值就會被賦真值。此時(shí),CAN診斷模塊會把BUS OFF的DTC狀態(tài)中的Test Failed位給置上,表示當(dāng)前檢查CAN總線關(guān)閉故障是存在的,即CAN網(wǎng)絡(luò)通信處在失效模式,同時(shí)把BUS OFF的記錄次數(shù)加1。當(dāng)BUS OFF的記錄次數(shù)達(dá)到整車廠規(guī)定的閥值時(shí),CAN診斷模塊會DTC狀態(tài)中的Confirmed位給置上,同時(shí)把CAN總線關(guān)閉的DTC記錄到非易失性存儲器中。
CAN總線關(guān)閉的恢復(fù)建議
我們的CAN診斷模塊在錯(cuò)誤中斷或周期性查詢中發(fā)現(xiàn)總線關(guān)閉故障時(shí),應(yīng)該立即對CAN控制器的驅(qū)動(dòng)及相關(guān)寄存器進(jìn)行初始化操作,這樣,在初始化完成后,CAN總線關(guān)閉的故障能夠立即被解除。但是,該CAN節(jié)點(diǎn)在解除總線關(guān)閉故障后,會繼續(xù)對外發(fā)送報(bào)文,如果此時(shí)產(chǎn)生總線關(guān)閉的真正外部因素沒有解除,該CAN節(jié)點(diǎn)仍有機(jī)會再次發(fā)生總線關(guān)閉的故障。
為了避免該節(jié)點(diǎn)在CAN網(wǎng)絡(luò)中頻繁發(fā)生總線關(guān)閉的問題,防止影響到網(wǎng)絡(luò)資源的消耗和對其他節(jié)點(diǎn)的不必要干擾,我們建議在CAN初始化完成后,不要立即對外發(fā)送CAN報(bào)文,應(yīng)該等待一定時(shí)間段后再嘗試發(fā)送報(bào)文是否成功。
-
CAN總線
+關(guān)注
關(guān)注
145文章
1898瀏覽量
130333
發(fā)布評論請先 登錄
相關(guān)推薦
評論