CAN收發器的改良和隔離器件引入,大大提高了通信的可靠性,但同時也引入了額外的延時,導致通信距離變短,或總線錯誤幀增加,本文以1Mbps波特率下的應用為例,對CAN總線信號延時做簡要分析。
CAN總線傳輸距離的相關因素
1、ACK應答
CAN 總線采用多主通信模式、非破壞式總線仲裁機制。以標準數椐幀為例,從結構上看分成7段,分別為起始段、仲裁段、控制段、數椐段、CRC校驗段、ACK應答段、幀結束段,如圖1所示:
圖1 標準數椐幀結構及應答
ACK段長度為2個位,包含應答間隙(ACK SLOT)和應答界定符(ACK DELIMITER)。在應答場里,發送站發送兩個“隱性”位。當接收器正確地接收到有效的報文,接收器就會在應答間隙(ACK SLOT)期間(發送ACK信號)向發送器發送一“顯性”的位以示應答。發送節點檢測到總線呈顯式狀態時,就認為有節點進行了有效的應答并且自己所發出的幀是正常的。
2、CAN總線位時間組成
CAN網絡通信位定時參數如圖2所示。
圖2 位定時示意圖
CAN 總線通信中每一位的時間由4 部分組成,即同步段、傳播段、相位緩沖段1、相位緩沖段2,劃分為3段。
同步段:用于總線諸節點之間的同步;
時間段1:由傳播段與相位段1組成,傳播段用于補償信號的物理傳播延時;
時間段2:即相位緩沖段2,相位段1 和相位段2 用于補償沿的相位誤差。
在實際控制器設計中,通過調整時間段1、時間段2 的值可以改變對總線傳播延時的補償時間。
3、CAN總線延時理論分析
由圖1可知,發送節點在發完CRC 場之后,會發出一位應答隙,在這一位的時間內,接收節點應該輸出顯式位作為回應,發送節點如果在應答隙內沒有檢測到有效的顯式位,則會判定總線錯誤,所以限制CAN 總線系統信號傳播延時上限的根本條件就是必須確保發送節點在應答隙內接收到有效的應答信號。
為了滿足這一根本條件,以 1 Mbit/s 波特率,單點采樣模式為例,依據采樣點在設置同步段、時間段1、時間段2 內的前后變化,當設置為75%位寬度時(即采樣點位于距位起始的75%位寬度,為750 ns),在應答隙要使得發送節點采集到有效的顯式位,理論上來講,必須滿足整個信號傳播延時小于750 ns。即隔離器件、總線驅動器、線纜等的延時總和小于750ns才能保證應答有效。如圖3所示:
圖3 CAN總線延時理論分析框圖
首先,我們看CAN網絡上節點之間通信的傳播延時情況,如圖4所示,t2、t5為收發器循環延時、t3、t6為隔離延時、t4、t7為CAN控制器處理延時,t1 為線纜傳輸延時。
圖4 CAN總線信號傳輸延時
以節點A發送,節點B接收為例,從CAN報文發出開始,到接收到ACK應答,整個應答回路延時為T總=(t1+t2+t3+t4+t5+t6+t7)*2,期間報文經過了4次隔離及收發器,兩次線纜,若想提高傳輸距離,需對各個環節的延時時間進行分析。
1、隔離器件延時
為了提高CAN節點的可靠性,CAN底層硬件通常會使用隔離設計。常用解決方案有采用光耦+CAN收發器,如圖5所示(6N137+TJA1051),光耦6N137具有典型的60ns單向延時,而全部雙向信號必須經過4個光耦,總隔離延時達240ns,在位時間配置不變的情況下,大大地縮短了CAN系統的容許線纜長度。
圖5 光耦隔離延時
圖6 隔離收發器延時
或者采用隔離收發器方案如圖6,CTM1051KT采用磁耦隔離,磁隔離延時3~5ns,在位時間配置不變的情況下,CTM1051KT自帶隔離基本不會對容許線纜長度造成影響,可滿足1Mbps速率下約36m的傳輸距離。
圖7 不同隔離器件延時情況
2、收發器循環延時
什么是循環延時?對于CAN收發器,是指從TXD輸入的數字流被轉換成相應的模擬總線信號,同時總線收發器監控總線,將模擬總線信號轉換成相應的數字位流從RXD輸出的過程。如圖8所示:
圖8 TJA1051功能框圖
CAN 收發器的制造商通常規定“循環延時”,其包括驅動器和接收機延遲。延時時間的大小是有收發器自身特性決定,以收發器TJA1051為例,從數據手冊中可以看出,其最大傳播延時為220 ns,最小傳播延時為40 ns。圖9為收發器循環延時對稱時序圖(tPD(TXD-RXD)為TXD發送顯性上升/下降沿到總線并且反饋到RXD的延時),收發器循環延時是CAN總線規范必測的項目,選取性能較高的收發器,可減少傳輸延時,有利于增加傳輸距離。
圖9 環路延時對稱時序圖
3、CAN控制器延時
軟件延時:是應用進程中,主CPU將數據從CAN控制器中讀出/寫入并作初步處理所耗費的時間。
CAN控制器延時:是CAN控制器為實現接收/發送緩存器中的信息和串行化的信息的相互轉化所開銷時間。
軟件和控制器導致的延時與具體應用、主控器、CAN控制器和接口芯片有關。考慮到總線控制器在設計時已經考慮到內部處理時間,所以延時應該在納秒級以下,在此可以不計。
4、線纜傳播延時
線纜的選型不同,其延時率也不同,傳輸的距離也會有較大影響,在CAN控制器、收發器、隔離等外圍元器件確的情況下,如何計算線纜的通信長度呢?
若線纜的通信距離為L(以m 為單位)、通信速率為B(以bit/s為單位)、采樣位置為P(如75%)、隔離器件傳播延時為tg(以ns 為單位,如t3,t6)、收發器傳播延時為tq(以ns 為單位,如t2,t5)、線纜傳播延時為tx(以ns/m為單位)。
可以得到線纜通信長度的估算公式:L=[(1/B)?P–4(tg+tq)]/2tx
由公式可知:線纜延時率越小,在相同條件下,傳輸的距離越遠,所以在線纜選型中,建議用較粗的導線(線徑越大,延遲越小),或者使用鍍金或者鍍銀的線纜。
在實際應用中,如何快速評估CAN網絡的延時情況呢?使用電子CANscope做總線延時分析,測試結果如圖10所示:
圖10 CAN總線傳輸延時分析
隔離器件等外圍電路的引入和收發器增加長時間顯性關斷功能等,都增加了CAN總線的延時時間,導致了越新型的收發器,回環延遲加大,減少了實際通訊距離。若想增大CAN總線通信距離,必須了解CAN通信的原理及信號線傳輸的原理,通過提高收發器、隔離器件的性能和線纜的選型來減小CAN信號傳輸的延時時間,從而提高實際通信的距離。
-
收發器
+關注
關注
10文章
3338瀏覽量
105542 -
CAN收發器
+關注
關注
2文章
162瀏覽量
25513
原文標題:【絕密】為什么現在的CAN收發器通信距離越來越短?
文章出處:【微信號:ZLG_zhiyuan,微信公眾號:ZLG致遠電子】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論