CAN總線的最大傳輸距離與波特率、采樣點、傳輸時延之間存在什么樣的關(guān)系呢?如何理論計算出最大傳輸距離呢?本文將詳細解答這兩個問題。
?延時原理分析
影響CAN通信距離的主要因素是什么呢?經(jīng)過我們實際測試長距離通信線纜帶來的寄生參數(shù)(容抗、阻抗和感抗)影響總體較小,并且可以通過調(diào)節(jié)匹配電阻削減寄生參數(shù)的影響,因此影響通信距離的主因并不是寄生參數(shù)而是另有其它。
CAN總線采用多主從通信模式,標準CAN幀報文如圖1所示可分為7段,其中ACK域分為ACK SLOT(應(yīng)答間隙)和ACK DEL(應(yīng)答界定符)。CAN發(fā)送節(jié)點發(fā)出的ACK域為兩個“隱性”位,當(dāng)接收節(jié)點完成正確接收后,將會在ACK SLOT向發(fā)送節(jié)點發(fā)送“顯性”位以示應(yīng)答。發(fā)送節(jié)點回讀到ACK SLOT呈顯性狀態(tài)時,就認為總線上進行了有效的應(yīng)答。發(fā)送節(jié)點如果沒有在應(yīng)答間隙內(nèi)檢測到有效的顯性位,則會判斷總線應(yīng)答錯誤,因此通信延時是影響通信距離的主因。整個線路傳播延時必須足夠小,以確保CAN發(fā)送節(jié)點在ACK SLOT內(nèi)接收到有效的應(yīng)答信號,以下討論將圍繞傳播延時展開。
圖1CAN標準幀報文格式
CAN信號的整個傳播涉及到的延時有控制器延時、收發(fā)器和隔離延時、線纜延時,信號流向及延時框圖如圖2所示。理論上必須使整個傳播延時和Σt小于采樣點位置,否則發(fā)送節(jié)點將接收不到正確的顯性(Vdiff>0.9V)應(yīng)答信號,導(dǎo)致通信異常,CAN總線顯性應(yīng)答延時說明如圖3所示。
圖2CAN總線信號流向及延時框圖
圖3CAN總線顯性應(yīng)答延時說明簡易圖
?理論計算通過上述原理分析,我們得出只有滿足關(guān)系式Ts≥2*(t1+t2+t3),t3=L線長*(Cable delay),通信才能成功,將關(guān)系式進行轉(zhuǎn)換L線長≤(Ts-2*t1-2*t2)/2*(Cable delay)。
經(jīng)過我們實際測試我司的CSM330A的收發(fā)器和隔離延時t2=140ns,控制器延時t1=50ns,CSM330A在1M CAN波特率采樣位置為75%*1us=750ns,實測RVSP通信線纜每米延時Cable delay=5.5ns。將數(shù)值帶入上述關(guān)系式中得出CSM330A 在1M波特率下通信線長滿足L線長≤33.6m。
?現(xiàn)場測試
?如何延長通信距離視頻中有延長通信距離方案,本文做簡要概述。如圖4所示為1M CAN協(xié)議傳輸距離簡圖,接入1個用CSM330A方案搭建的CAN_Repeater,通信距離可延長至66m如圖5所示,接入n個CAN_Repeater后通信距離可延長至(n+1)*33m。
圖41Mbps的CAN傳輸距離簡圖
圖5接入1個CAN_Repeater后傳輸距離簡圖
?總結(jié)
- 得知各部分延時和采樣位置后,我們可以通過關(guān)系式L線長≤(Ts-2*t1-2*t2)/2*(Cable delay)預(yù)估出來不同CAN波特率下的最大傳輸距離;
例如:波特率為10kbps,采樣點在80%的CSM330A傳輸?shù)睦碚摼嚯x為L線長≤(80000-280-100)/2*5.5≈7.2km。
- 通過CSM330A搭建的CAN中繼模組有效延長通信距離,該中繼模組穩(wěn)定可靠、成本低、開發(fā)周期短,CAN_Repeater配套工程文檔。
-
電阻
+關(guān)注
關(guān)注
86文章
5537瀏覽量
172400 -
CAN總線
+關(guān)注
關(guān)注
145文章
1955瀏覽量
130924 -
傳輸距離
+關(guān)注
關(guān)注
0文章
38瀏覽量
12717
發(fā)布評論請先 登錄
相關(guān)推薦
評論