李亞雄
湖南中車時(shí)代通信信號(hào)有限公司 湖南 長(zhǎng)沙 410001
CAN 總線是一種被廣泛使用的現(xiàn)場(chǎng)總線,是ISO 國(guó)際標(biāo)準(zhǔn)化的串行通信協(xié)議(ISO11898),其高性能和可靠性已被國(guó)際認(rèn)同,廣泛的應(yīng)用于工業(yè)自動(dòng)化、船舶、軌道、醫(yī)療設(shè)備、工業(yè)設(shè)備等方面。近年來,雖然FlexRay總線開始大面積使用,但是Flex Ray總線無論在可靠性還是價(jià)格上能完全取代CAN 總線以前,對(duì)CAN 總線的作進(jìn)一步的失效分析和改進(jìn)仍然是非常有重要意義的。
目前國(guó)內(nèi)使用的鐵路信號(hào)處理設(shè)備LKJ監(jiān)控裝置采用的就是CAN總線通信方式,在鐵路局新裝136臺(tái)LKJ設(shè)備的機(jī)車,設(shè)備經(jīng)過一個(gè)多月的線上運(yùn)行,發(fā)現(xiàn)有15臺(tái)機(jī)車記錄文件中頻繁出現(xiàn)單機(jī)運(yùn)行故障,導(dǎo)致記錄有單機(jī)運(yùn)行的部分機(jī)車無故排風(fēng),非正常停車。另外單機(jī)運(yùn)行大大的降低了LKJ監(jiān)控裝置系統(tǒng)的雙機(jī)冗余可靠性,且會(huì)導(dǎo)致揭示不控等一系列嚴(yán)重后果,使機(jī)車導(dǎo)向不安全。針對(duì)CAN 總線在LKJ監(jiān)控裝置使用過程中發(fā)生失效的實(shí)際案例,通過具體的實(shí)驗(yàn),進(jìn)行分析、研究,找出CAN 總線的失效的原因,進(jìn)行改進(jìn)。
LKJ監(jiān)控裝置CAN 通信分為內(nèi)CAN 總線和外CAN 總線。內(nèi)CAN總線是監(jiān)控主機(jī)內(nèi)部插件和顯示器之間的信息通道;外CAN 總線是監(jiān)控裝置和其他外圍設(shè)備(比如:無線傳輸主機(jī)等)的信息通道。內(nèi)、外CAN總線之間通過擴(kuò)展通信插件進(jìn)行信息轉(zhuǎn)換。典型監(jiān)控裝置內(nèi)CAN 總線結(jié)構(gòu),見圖1。

圖1 帶擴(kuò)展通信插件監(jiān)控裝置內(nèi)CAN 總線結(jié)構(gòu)
經(jīng)過對(duì)失效機(jī)車的設(shè)備進(jìn)行一系列分析,得出故障是由CAN 通信質(zhì)量不佳引起。影響CAN 通信的質(zhì)量的重要因素為總線信號(hào)幅值和波形邊沿特性(上升沿、下降沿延時(shí))??偩€信號(hào)幅值過低會(huì)引起接口芯片傳輸錯(cuò)誤,波形的邊沿特性會(huì)影響波形采樣的正確性。
2.1 CAN 總線電源分析 對(duì)設(shè)備單機(jī)時(shí)測(cè)試系統(tǒng)供電電源及CAN總線電源,測(cè)試情況如表1。主機(jī)系統(tǒng)電源穩(wěn)定,CAN 總線供電電源穩(wěn)定,完全可以排除電源引起單機(jī)的懷疑。

表1 系統(tǒng)供電電源及CAN 總線電源測(cè)試表
2.2 CAN 終端電阻分析 在CAN 總線通訊中,終端電阻具有匹配總線阻抗,抑制終端信號(hào)反射,維持通訊穩(wěn)定的作用。過高或者的總線終端電阻都會(huì)造成總線阻抗失衡,使得信號(hào)波形失真,引起通訊故障。
根據(jù)CAN 控制芯片數(shù)據(jù)手冊(cè),總線信號(hào)顯性位時(shí),波形顯性位幅值VDIFF(D)應(yīng)當(dāng)大于1.0V。對(duì)幅值影響最大的因素為終端電阻,當(dāng)終端電阻增大時(shí),信號(hào)幅值提高,當(dāng)終端電阻減小時(shí),信號(hào)幅值降低。理論計(jì)算值,總線上并聯(lián)4個(gè)120Ω 的終端電阻(總線上的總阻抗為30Ω)時(shí),波形顯性位幅值VDIFF(D)約為1.6V。試驗(yàn)室環(huán)境下,并聯(lián)4個(gè)120Ω 的終端電阻,測(cè)得波形顯性位幅值VDIFF(D)約為1.4V,見圖2。

圖2 試驗(yàn)室4個(gè)終端電阻時(shí)測(cè)得CAN 總線波形
在機(jī)車上實(shí)測(cè)CAN 信號(hào)波形,測(cè)得波形顯性位幅值VDIFF(D)約為1.2V,機(jī)車上由于車內(nèi)環(huán)境和機(jī)車布線的影響,波形幅值比實(shí)驗(yàn)室測(cè)得的數(shù)據(jù)偏低0.2V 左右,見圖3。
LKJ監(jiān)控裝置上的CAN 終端電阻可以通過插件上的終端電阻跨接套進(jìn)行配置。根據(jù)試驗(yàn),LKJ監(jiān)控裝置CAN 總線終端電阻為30?時(shí),總線通訊丟幀率為0.04%;當(dāng)CAN 總線終端電阻為20?時(shí),總線通訊丟幀率為6%;當(dāng)CAN 總線終端電阻為60?時(shí),總線通訊丟幀率為4%。通過多次試驗(yàn)發(fā)現(xiàn),當(dāng)LKJ監(jiān)控裝置終端電阻為30?,總線丟幀率最低,就有較好的效果。試驗(yàn)室通過軟件配合測(cè)試不同的終端電阻對(duì)于總線通信的影響,結(jié)果見表2。

表2 不同終端電阻對(duì)通信的影響
發(fā)生單機(jī)故障的機(jī)車,在機(jī)車上實(shí)測(cè)CAN 波形顯性位幅值VDIFF(D)為960m V,低于1V 的標(biāo)準(zhǔn),經(jīng)檢查,監(jiān)控主機(jī)地面信息插件終端電阻跨接上了,存在6.5%的數(shù)據(jù)丟失率,分析后續(xù)幾天的運(yùn)行記錄文件,單機(jī)運(yùn)行故障發(fā)生頻繁,見圖4。

圖3 機(jī)車實(shí)測(cè)CAN 總線波形

圖4 故障機(jī)車實(shí)測(cè)CAN 總線波形
經(jīng)過對(duì)機(jī)車設(shè)備CAN 總線進(jìn)行排查,機(jī)車上部分CAN 總線終端電阻不匹配是產(chǎn)生設(shè)備記錄單機(jī)運(yùn)行一個(gè)原因,將所有機(jī)車的CAN 總線全部配置為30Ω,然后機(jī)車現(xiàn)場(chǎng)運(yùn)行半個(gè)月時(shí)間,記錄單機(jī)運(yùn)行的機(jī)車數(shù)量減少為3臺(tái),且未出現(xiàn)機(jī)車無故放風(fēng)狀態(tài)。
由于CAN 總線終端電阻的分析未能完全解決單機(jī)運(yùn)行的故障,繼續(xù)對(duì)CAN 采樣點(diǎn)配置進(jìn)行分析,CAN 采樣點(diǎn)配置關(guān)系見圖5所示。

圖5 在TSEG1結(jié)束位置進(jìn)行采樣
修改插件軟件CAN 通信采樣點(diǎn)初始化配置如下所示:目前軟件配置分頻比(BRP)設(shè)置為1,時(shí)段1(TSEG1)設(shè)置為7,時(shí)段2(TSEG2)設(shè)置為6,CAN 通信異常。調(diào)整為:時(shí)段1(TSEG1)為8和時(shí)段2(TSEG2)為5,或者時(shí)段1(TSEG1)為10和時(shí)段2(TSEG2)為3,時(shí)段1(TSEG1)為12和時(shí)段2(TSEG2)為1后,CAN 通信正常。
通過改變信息處理插件軟件的CAN 采樣時(shí)機(jī),當(dāng)采樣時(shí)機(jī)調(diào)整到CAN 位寬靠后位置時(shí)CAN 通信正常;當(dāng)采樣時(shí)機(jī)調(diào)整到CAN 位寬居中位置時(shí)CAN 通信故障率較高。
這是由于CAN 通信發(fā)送異常時(shí)CAN 控制芯片CC770的狀態(tài)寄存器LEC位顯示“4”,即把隱性位(低電平,表示“1”)錯(cuò)判為顯性位(高電平,表示“0”),導(dǎo)致信息處理插件重復(fù)發(fā)送自檢信息,影響CAN 總線正常運(yùn)行。
因此,當(dāng)軟件CAN 采樣點(diǎn)取到位寬靠后時(shí)可避免采樣到CAN 通信的下降沿,從而避免了誤判正常發(fā)送為發(fā)送錯(cuò)誤、重復(fù)發(fā)送多次導(dǎo)致CAN總線異常的問題。
通過分析CAN 通信波形顯示:在顯示器CAN 通信線懸空時(shí),CAN差分信號(hào)上升沿、下降沿較緩,差分信號(hào)的邏輯低電平小于0.5V 的區(qū)域約占總時(shí)間的60%;接上顯示器終端電阻后充、放電時(shí)間縮短,差分電壓上升沿、下降沿變陡,差分信號(hào)的邏輯低電平小于0.5V 的區(qū)域約占總時(shí)間的80%。
根據(jù)分析結(jié)果將系統(tǒng)的所有CAN 節(jié)點(diǎn)的CAN 采樣點(diǎn)固定在CAN位寬最后的10%~30%之間。然后所有更改配置的機(jī)車現(xiàn)場(chǎng)運(yùn)行,現(xiàn)場(chǎng)運(yùn)行三個(gè)月,記錄單機(jī)運(yùn)行的機(jī)車數(shù)量為0,單機(jī)故障現(xiàn)象消失。
LKJ監(jiān)控裝置系統(tǒng)電源和CAN 總線電源符合產(chǎn)品和芯片數(shù)據(jù)手冊(cè)要求,不存在問題,問題的來源應(yīng)該為CAN 終端電阻配置錯(cuò)誤和或CAN采樣點(diǎn)配置錯(cuò)誤。
CAN 終端電阻原因,CAN 終端電阻配置正確時(shí),總線信號(hào)顯性位時(shí),波形顯性位幅值VDIFF(D)應(yīng)當(dāng)大于1.0V。當(dāng)終端電阻增大時(shí),信號(hào)幅值提高,當(dāng)終端電阻減小時(shí),信號(hào)幅值降低,機(jī)車上部分CAN 總線終端電阻不匹配是產(chǎn)生設(shè)備記錄單機(jī)運(yùn)行一個(gè)原因。
通過改變信息處理插件軟件的CAN 采樣時(shí)機(jī),當(dāng)采樣時(shí)機(jī)調(diào)整到CAN 位寬靠后位置時(shí)CAN 通信正常;當(dāng)采樣時(shí)機(jī)調(diào)整到CAN 位寬居中位置時(shí)CAN 通信故障率較高。當(dāng)軟件CAN 采樣點(diǎn)取到位寬靠后時(shí)可避免采樣到CAN 通信的下降沿,從而避免了誤判正常發(fā)送為發(fā)送錯(cuò)誤、重復(fù)發(fā)送多次導(dǎo)致CAN 總線異常的問題。完全的解決LKJ監(jiān)控裝置單機(jī)運(yùn)行通信故障的現(xiàn)象,提高了系統(tǒng)的可靠性和安全性。