四、CAN總線關(guān)閉如何恢復(fù)?
如果出現(xiàn)了BUS OFF,總線上的節(jié)點(diǎn)需要做一些動(dòng)作,例如重啟CAN控制器或是重新上電,但是這些都只是一些補(bǔ)救措施,最根本的還是需要找到引起BUS OFF的根源。
當(dāng)發(fā)生CAN總線關(guān)閉時(shí),我們可以檢查BUS OFF寄存器的值,對(duì)CAN控制器的驅(qū)動(dòng)及相關(guān)寄存器進(jìn)行初始化操作。初始化完成后,CAN總線關(guān)閉故障就會(huì)立即解除。為了避免該節(jié)點(diǎn)在CAN網(wǎng)絡(luò)中頻繁發(fā)生總線關(guān)閉問(wèn)題,建議在初始化后,不要立即對(duì)外發(fā)送CAN報(bào)文。
上文也提到過(guò),由于汽車內(nèi)部存在強(qiáng)干擾,也會(huì)導(dǎo)致CAN總線關(guān)閉。針對(duì)這種現(xiàn)象,我們通過(guò)以下方式進(jìn)行處理:
●由于汽車內(nèi)部存在強(qiáng)電流產(chǎn)生的空間磁干擾,應(yīng)該將CAN線纜雙絞程度加大;
●CAN接口設(shè)計(jì)采用CTM1051隔離收發(fā)器、隔離限幅,防止ECU死機(jī);
●CAN接口增加磁環(huán)、共模電感等效果好的感性防護(hù)器件;
●外接專用的信號(hào)保護(hù)器消除干擾,如ZF-12Y2;
●使用網(wǎng)橋中繼設(shè)備CANBridge對(duì)部分強(qiáng)干擾源進(jìn)行隔離。
綜合上述,汽車CAN總線關(guān)閉故障發(fā)生時(shí),應(yīng)分析物理層包括CAN線路、CAN控制器及收發(fā)器、CAN信號(hào)干擾等外在因素,同時(shí)分析CAN寄存器及軟件處理,重新初始化CAN驅(qū)動(dòng)和恢復(fù)正常后,定時(shí)嘗試往外發(fā)送報(bào)文。
五、CAN網(wǎng)絡(luò)黑匣子-CANDTU
新能源汽車在發(fā)送總線關(guān)閉情況時(shí),我們也希望能夠有對(duì)應(yīng)的CAN報(bào)文去分析,尤其是針對(duì)偶發(fā)性的故障時(shí),我們更需要有可靠的CAN報(bào)文來(lái)作為判斷依據(jù)。
廣州致遠(yuǎn)電子有限公司推出CAN網(wǎng)絡(luò)總線“黑匣子”,我們稱之為CANDTU,如圖4所示,CANDTU集成有2路或4路符合ISO11898標(biāo)準(zhǔn)的獨(dú)立CAN-bus通道,并可標(biāo)配存儲(chǔ)介質(zhì)為32G高速SD卡,可以進(jìn)行長(zhǎng)時(shí)間記錄、條件記錄、預(yù)觸發(fā)記錄和定時(shí)記錄等多種模式,并可以將記錄的數(shù)據(jù)轉(zhuǎn)換為CSV格式,或者CANOE、CANScope等各種主流分析軟件的格式供后期處理分析。
圖4 CANDTU系列產(chǎn)品示意圖
CANDTU可以長(zhǎng)時(shí)間記錄CAN報(bào)文,以便于工程師查找數(shù)據(jù),但是對(duì)于網(wǎng)絡(luò)穩(wěn)定性和偶發(fā)性故障無(wú)法進(jìn)行定位和分析。