CAN延遲通訊故障的判定和解決
產(chǎn)品鏈接:http://4640.com.cn/can/can/product/id/44.html
隨著人們生活節(jié)奏的逐漸提高,地區(qū)與地區(qū)之間的距離已經(jīng)不在成為問題,這得益于交通運輸業(yè)的大力發(fā)展,其中高鐵作為交通運輸業(yè)的佼佼者,他也得到了人民大眾的廣泛認可。正因為如此,高鐵中的通訊問題也得到了各種設(shè)備供應商和鐵路公司的高度重視,他們是不能容忍這種錯誤的,因為這與每一位出行人員和列車人員的生命安全息息相關(guān)。下面針對某高鐵通訊問題進行簡要的實例講解。
一、總線延遲產(chǎn)生原因
CAN總線主要制約其傳輸距離,由于高鐵列車的車身較長通訊點較多,就會導致數(shù)據(jù)傳輸和響應的延遲。導線在傳輸數(shù)據(jù)時是存在延遲的,一般通常延遲為5ns/m,同時隔離器件的不同也會導致不同的延遲。其中還與導線材質(zhì)(鍍金的0.2平方米相當于1.0平方米的銅線)、CAN收發(fā)器與隔離方式有關(guān),例如:光耦隔離延遲要比磁耦隔離大得多。
如果CAN的重同步不能彌補傳輸中所產(chǎn)生的延遲,就會導致應答定界符的位寬變大,最終導致應答定界符在識別過程中識別出錯,將隱性電平識別為顯性電平,出現(xiàn)定界符錯誤。如圖1所示:
二、延遲錯誤導致的結(jié)果
下面已某高速鐵路的中產(chǎn)生的延時錯誤類型進行講解:
這次檢測出來的錯誤類型主要包括:應答定界符錯誤、定界符格式錯誤和幀結(jié)束格式錯誤,他們均屬于延遲錯誤導致,下面已應答定界符錯誤為例:
應答定界符錯誤
從數(shù)據(jù)我們可以看出,應答定界符本應該為隱性電平,但由于傳輸應答的延遲問題導致應答定界符一直處在顯性狀態(tài),這導致應答界定符格式出現(xiàn)錯誤。
三、如何檢測傳輸延遲
首先要想檢測CAN總線延遲錯誤必須有相應的CAN總線分析儀,下面以廣州致遠電子的CANSCOPE檢測方式為例:
1)延遲分析
為了更快的進行故障點的定位,我們首先要對整個通訊過程的延時狀況進行分析,找出延時存在的地方。根據(jù)CANSCOPE中“傳輸延時”將整個列表以延時從大到小的順序?qū)⒀訒r排列出來,以0.245倍位寬為界,超出該范圍可定義為有應答錯誤風險。
由于總線上面掛接的節(jié)點距離測試點都不同,所以引起的延時都不一樣。我們?yōu)榱藱z測出總線最大的延時,通常把測試點放在總線的最遠兩端,測試的對象也是總線最遠兩端的兩個節(jié)點發(fā)出來的報文。
圖表 4延時測量
我們可以假定報文是從最左邊的主機發(fā)出來的,那么距離他最遠的從機就是最右端的,則最大延遲為:整體導線延遲+最遠端節(jié)點(即最右端)的電路延遲(包括隔離器件與收發(fā)器延遲)。
四、消除延時誤差的方法
為了減小延時,增加通訊距離和降低通訊錯誤率,我們可以采取以下措施:
1.采用磁隔離的CTM1051方案設(shè)計接口收發(fā)電路;
2.用較粗的導線代替細導線,標準為1.5線纜(延遲為5ns/m);
3.使用鍍金或鍍銀的線纜;
4.增加網(wǎng)橋中繼設(shè)備CANBridge延長通訊距離。
5.采用光纖傳輸,如致遠電子的CANHUB-AF1S1,同等波特率可延長1倍通訊距離。
五、總結(jié)
要想保證CAN總線通訊正常首先要保證合理布置CAN節(jié)點,保每一個到達節(jié)點的報文不出現(xiàn)延時錯誤,其次一臺好的分析工具也是必不可少的,它不但可以幫助我們精確快速地發(fā)現(xiàn)故障所在,還能以模擬方式測試我們總線在各種環(huán)境中的工況。