你的位置:首頁 > 互連技術(shù) > 正文

如何計(jì)算控制器參數(shù)使隔離式CAN網(wǎng)絡(luò)以1 Mbps的速度運(yùn)行

發(fā)布時(shí)間:2020-07-17 來源:Hein Marais 責(zé)任編輯:wenwei

【導(dǎo)讀】CAN 是一種差分信號(hào)標(biāo)準(zhǔn),廣泛用于汽車、工業(yè)和儀器儀表行業(yè)。它用于不同系統(tǒng)之間的串行通信,這些系統(tǒng)常常是經(jīng)長(zhǎng)距離連接到不同的電源系統(tǒng)。由于環(huán)境限制,常常使用電流隔離來中斷接地環(huán)路或提供物理安全性。
 
隔離式CAN網(wǎng)絡(luò)的傳播延遲比非隔離式CAN網(wǎng)絡(luò)要長(zhǎng),設(shè)計(jì)起來可能頗具挑戰(zhàn)性。圖1顯示一個(gè)使用信號(hào)和電源隔離CAN收發(fā)器ADM3053 的隔離式 CAN 節(jié)點(diǎn),我們將以它為例來計(jì)算所需的 CAN控制器參數(shù),以便在 20 米電纜上以 1 Mbps 的速度進(jìn)行通信。
 
如何計(jì)算控制器參數(shù)使隔離式CAN網(wǎng)絡(luò)以1 Mbps的速度運(yùn)行
圖 1. 使用信號(hào)和電源隔離 CAN 收發(fā)器 ADM3053 的隔離式 CAN 節(jié)點(diǎn)
 
一個(gè)CAN比特由四個(gè)獨(dú)立的時(shí)間段組成 :同步段 (SYNC_SEG)、傳播段 (PROP_SEG)、相位段1(PHASE_SEG1) 和相位段 2(PHASE_SEG2)。這些時(shí)間段可以在 CAN 控制器中進(jìn)行編程,對(duì)于計(jì)算 CAN 控制器的設(shè)置參數(shù)至關(guān)重要。圖 2 所示為標(biāo)稱比特時(shí)間的不同時(shí)間段。
 
計(jì)算中使用如下假設(shè)條件 :
 
• 電纜長(zhǎng)度為 20 m
• 數(shù)據(jù)速率或比特率為1 Mbps
• 電纜傳播延遲為 5 ns/m
• CAN 控制器振蕩器頻率為36 MHz
 
如何計(jì)算控制器參數(shù)使隔離式CAN網(wǎng)絡(luò)以1 Mbps的速度運(yùn)行
圖 2. CAN 標(biāo)稱比特時(shí)間
 
CAN 采用逐位仲裁方式,不同的節(jié)點(diǎn)可以爭(zhēng)奪總線訪問權(quán),這就導(dǎo)致多個(gè)節(jié)點(diǎn)可以同時(shí)傳輸數(shù)據(jù)。傳輸節(jié)點(diǎn)必須對(duì)總線上的數(shù)據(jù)進(jìn)行采樣,以便確定它是否贏得仲裁。由于系統(tǒng)的傳播延遲,控制器必須補(bǔ)償各位采樣的時(shí)間。在控制器中設(shè)置 PROP_SEG 可以提供此補(bǔ)償,其計(jì)算方法如下 :
 
對(duì)于 ADM3053,從 TxD 到 RxD 的傳播延遲為 250 ns(最大值)。
 
電纜的物理延遲等于 5 ns/m 乘以電纜長(zhǎng)度 20 m,結(jié)果為 100 ns。
 
因此,通過系統(tǒng)并返回的總傳播時(shí)間為 :2 x ( 傳播延遲 + 收發(fā)器傳播延遲 ) = 700 ns (2 × (100 + 250) = 700 ns)。
 
為了給控制器編程,必須將寄存器設(shè)置為“時(shí)間量子”的整數(shù)倍。時(shí)間量子的時(shí)長(zhǎng)等于 CAN 系統(tǒng)時(shí)鐘的時(shí)間周期,本例中為 28 ns。
 
對(duì)于 28 ns 的時(shí)間量子,每位包括 36 (1000/28 = 36) 個(gè)時(shí)間量子。
 
PROP_SEG = ROUND_UP (700 ns/28 ns) = 25 個(gè)時(shí)間量子
 
從每位的 36 個(gè)時(shí)間量子中,減去用于 PROP_SEG 的 25個(gè)時(shí)間量子和用于 SYNC_SEG 的 1 個(gè)時(shí)間量子,余下的時(shí)間量子分配給 PHASE_SEG1 和 PHASE_SEG2,每段5 個(gè)。
 
CAN 系統(tǒng)時(shí)鐘存在容差,因而會(huì)出現(xiàn)累積相位誤差。這要求系統(tǒng)通過再同步跳躍 (RJW) 同步,RJW 為 4 和PHASE_SEG1 二者中的較小值。
 
由此便可計(jì)算系統(tǒng)的振蕩器容差要求 :
 
?f < RJW/(20 × NBT) = 4/(20 × 36) = 0.006
?f < Minimum (PHASE_SEG1 and PHASE_SEG2)/2(13 × NBT –PHASE_SEG2) = 5/2(13 × 36 – 5) = 0.005
 
這兩個(gè)值中的較小者就是所需的振蕩器容差 0.5%。
 
計(jì)算得出下列設(shè)置參數(shù) :
 
• SYNC_SEG = 1
• PROP_SEG = 25
• PHASE_SEG1 = 5
• PHASE_SEG2 = 5
• RJW = 4
 
 
推薦閱讀:
 
貿(mào)澤榮膺Bel Fuse 2019年度全球分銷商大獎(jiǎng)
HT566 I2S數(shù)字輸入2x20W立體聲無電感閉環(huán)D類音頻功放解決方案
從ADAS到驅(qū)動(dòng)器更換——實(shí)際雷達(dá)性能是否足夠好?
用低噪聲儀表放大器設(shè)計(jì)高性能系統(tǒng)
高性能模塊化儀器儀表如何實(shí)現(xiàn)更好的應(yīng)用和更小的尺寸
要采購電纜么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉