摘要:CAN-bus總線在軌道交通,、醫(yī)療設備等行業(yè)得到廣泛應用,,但工程師們經(jīng)常會遇到信號傳輸延遲的問題困擾。本文將針對傳輸延遲問題,,進行詳細分析,,并給出一些可行的解決方案。
由于CAN-bus總線的實時性強,、抗干擾能力強等特點,,在軌道交通、汽車電子等行業(yè)得到廣泛的應用,。伴隨著技術的升級和CAN節(jié)點的增加,,CAN協(xié)議提供的8字節(jié)數(shù)據(jù)傳輸以及最高1Mbps的波特率已經(jīng)不能滿足工程師的應用需求。針對此現(xiàn)象,,CiA協(xié)議聯(lián)合各大車廠,,制定出新一代的CAN FD協(xié)議,其主要的內容就是將一幀的數(shù)據(jù)段由8字節(jié)提升到64字節(jié),,同時可以提升數(shù)據(jù)段的波特率,,以縮短通訊時間。
在一些行業(yè)中,,對實時性要求很高,,例如CAN通信在軌道交通制動系統(tǒng)中的應用,如果CAN-bus總線通訊出現(xiàn)了延遲,,會嚴重影響軌道交通安全,,造成列車運行癱瘓,甚至危及人身安全,。那么,,如何評估CAN網(wǎng)絡延時情況以及如何降低CAN/CAN FD通訊延遲,,保證通訊穩(wěn)定呢?接下來,,做詳細介紹,。
1.1CAN/CAN FD網(wǎng)絡信號延時上限
CAN-bus總線采用多主通信模式、非破壞式總線仲裁機制,。發(fā)送節(jié)點在發(fā)送報文時,,在發(fā)完CRC校驗場之后,,會發(fā)出長度為2個位的ACK段,,如圖1所示。當接收節(jié)點正確接收到有效報文時,,就會在應答間隙(ACK SLOT)向發(fā)送節(jié)點發(fā)送一個“顯性”位來作為回應,。發(fā)送節(jié)點檢測到總線呈現(xiàn)顯性狀態(tài),便認為成功發(fā)送報文,。如果發(fā)送節(jié)點沒有檢測到有效的顯性位,,則認為總線錯誤。所以,,CAN FD信號延遲的最大時限是確保發(fā)送節(jié)點在應答間隙內接收到有效的應答信號,。
圖 1 ACK應答
以1Mbit/s波特率為例,在單次采樣模式下,,當采樣率為75%時,,應保證在750ns內,發(fā)送節(jié)點能夠采集到接收節(jié)點發(fā)出的顯性位,,否則會出現(xiàn)總線錯誤,。即,延時總和時間≤位時間x采樣點百分比,。
1.2如何快速評估CAN網(wǎng)絡延時情況,?
工程師們在開發(fā)設計CAN底層硬件時,需要結合應用場景充分考慮延遲帶來的影響,。那么,,工程師如何快速評估CAN網(wǎng)絡的延時情況?如圖2所示,,是CANScope分析儀抓取的,,由于傳輸延遲導致的錯誤波形。
圖 2 傳輸延遲錯誤
由于 ACK 界定符被前面的應答場嚴重壓縮,,導致被某個節(jié)點識別為顯性(原本是隱性),,所以這個識別錯誤的節(jié)點后面發(fā)出了錯誤幀,進行全局通知,,讓發(fā)送節(jié)點重新發(fā)送,。
CANScope分析儀可以提供傳輸延遲測量的功能,,可以進行單幀的延遲測量,也可以進行所有波形的延時統(tǒng)計,。如圖3所示,,可以通過延遲測量出導線的等效長度,即最大延遲÷5ns/m,,并給出該波特率下最長等效傳輸距離,。
圖 3 CANScope傳輸延遲測量功能
1.3CAN/CAN FD信號延時分析
通過延時上限可以了解到,我們需要嚴格的控制總線上各個部分造成的延時時間,,確保延時時間總和在一定范圍內,。接下來,以CAN FD為例,,了解一下造成延時的具體原因,。
如圖4所示,CAN FD網(wǎng)絡上兩節(jié)點之間通信過程中,,CAN FD報文首先從節(jié)點A控制器發(fā)出,,經(jīng)過隔離器件、CAN FD收發(fā)器發(fā)送到總線上,,再通過一段距離的傳輸依次達到節(jié)點B的CAN FD收發(fā)器,、隔離器件,CAN FD控制器,,最后又節(jié)點B發(fā)出ACK顯性應答位,,重復上述過程到達節(jié)點A。很明顯,,整個過程中,,會影響信號傳輸延遲的因素有:CAN FD控制器、隔離方式,、收發(fā)器循環(huán)延時,、線纜傳播。
圖 4 總線節(jié)點通訊結構
1.CAN FD控制器延時
CAN FD控制器造成的延時可以從兩方面分析:
軟件延時:在應用進程中,,主CPU將數(shù)據(jù)從CAN FD控制器中讀寫耗費的時間,;
控制器延時:CAN FD控制器實現(xiàn)串行化信息所耗費的時間。
這個過程中與主控制器,、CAN FD控制器,、接口芯片等有關,通常情況下,,延時在納秒級以下,,可以忽略不計。
2.隔離方式造成的延時
為了增加信號傳輸?shù)目煽啃裕ǔ6紩贑AN FD底層硬件設計中添加隔離設計,。隔離器件的添加,,帶來一定的延時并影響CANFD系統(tǒng)容許的線纜長度。不同的隔離方式,,延時效果也不同,。
常用的解決方案有光耦+CAN FD收發(fā)器,如圖5所示,。圖中光耦6N137具有典型的單向延時60ns,,加上全部信號雙向傳輸會造成240ns延時。
圖 5 光耦+CAN收發(fā)器
相比上述分立器件的隔離方式,,也可以采用隔離收發(fā)器的方案,,如圖6所示。例如,,CTM5MFD采用磁耦隔離方式,,延時時間在3~5ns,。這種情況下,,基本不會影響總線容許通信線纜長度。
圖 6 CAN FD隔離收發(fā)器
3.收發(fā)器循環(huán)延時
循環(huán)延時指TXD引腳信號變化導致至RXD引腳信號變化的時間差,。如圖7所示,,可以測試TXD和RXD之間的循環(huán)延時。
圖 7 收發(fā)器循環(huán)延時測量
CAN FD收發(fā)器循環(huán)延時由收發(fā)器本身的性能決定,,傳播延時最大可達幾百納秒,。 CAN FD收發(fā)器延時是CAN總線規(guī)范必測項目,選取性能高的收發(fā)器,,可以有效降低傳輸延時,,增加總線傳輸距離。
4.線纜傳播延時
線纜是CAN-bus總線傳輸?shù)闹匾橘|,,其長度也是影響通訊延時的重要原因,。不同類型的線纜會造成不同的延時效果。通常情況下,,導線延時為5ns/m,,建議選擇較粗的導線,線徑越大,,延遲越小,,或者可以使用鍍金、鍍銀的線纜(鍍金的0.2平方毫米線相當于1.0平方毫米的銅線),。線徑過小,,其導線阻值過大,影響傳輸速率造成延遲。線纜的延時越小,,CAN總線傳輸?shù)木嚯x越遠,。
綜合上述介紹,我們可以總結出以下解決信號延遲的方案:
選擇性能較好的CAN FD收發(fā)器和CAN FD控制器,;
使用CTM3(5)MFD磁耦隔離收發(fā)器,,降低延時;
使用標準線纜,,禁止使用電話線,、網(wǎng)線等線徑較小的線纜,必要時可選擇較好材質的導線,;
波特率一定時,,傳輸距離過大,可以添加CAN FD網(wǎng)橋,,降低導線傳輸延時,。
1.4CAN/CANFD轉CAN/CANFD網(wǎng)橋
如圖8所示,CANFDBridge是廣州致遠電子有限公司開發(fā)的高性能CAN/CANFD智能協(xié)議網(wǎng)橋,,集成2路CAN/CANFD可切換接口,,支持ISO標準CANFD與Bosch CANFD標準。每個接口具備獨立的2500VDC電氣隔離保護電路,,使接口卡避免由于地環(huán)流的損壞,,增強系統(tǒng)在惡劣環(huán)境中使用的可靠性。
CANFDBridge支持 CAN 轉 CAN,、CAN 轉CANFD,、CANFD轉 CAN、CANFD轉CANFD 等報文默認轉換處理,。除此之外,,還提供幀映射、合并和拆分等特殊轉換處理,。用戶可自由設定 CAN(FD)報文的轉發(fā)映射,、組包拆包等規(guī)則,滿足自身應用需求,。
圖 8 CAN FD網(wǎng)橋
1.5CANScope總線綜合分析儀系列
如圖9所示,,CANScope總線綜合分析儀是一款綜合性的CAN總線開發(fā)與測試的專業(yè)工具,集海量存儲示波器,、網(wǎng)絡分析儀,、誤碼率分析儀、協(xié)議分析儀及可靠性測試工具于一身,,并把各種儀器有機的整合和關聯(lián),;重新定義CAN總線的開發(fā)測試方法,可對CAN網(wǎng)絡通信正確性、可靠性,、合理性進行多角度全方位的評估,;幫助用戶快速定位故障節(jié)點,解決CAN總線應用的各種問題,。
圖 9 CANScope分析儀