CAN總線網(wǎng)絡(luò)在應(yīng)用時(shí),工程師常常會(huì)建議總線支線不要太長(zhǎng),那么為什么CAN總線支線不能太長(zhǎng),如果某些環(huán)境下必須使用長(zhǎng)支線又該怎么辦呢?
CAN網(wǎng)絡(luò)的拓?fù)浞N類(lèi)
控制器局域網(wǎng)CAN(Controller Area Network),是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一,最初是由德國(guó)Bosch公司設(shè)計(jì)的,為解決現(xiàn)代汽車(chē)中眾多控制單元、測(cè)試儀器之間的實(shí)時(shí)數(shù)據(jù)交換而開(kāi)發(fā)一種串行通信協(xié)議。CAN網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)主要有線形拓?fù)洹⑿切瓮負(fù)洹?shù)形拓?fù)浜?a target="_blank">環(huán)形拓?fù)涞取?/p>
線形結(jié)構(gòu)如下圖所示,其特點(diǎn)是一條主干總線,在總線上分出支線到各個(gè)節(jié)點(diǎn),其優(yōu)點(diǎn)在于布線施工簡(jiǎn)單,阻抗匹配規(guī)則固定,接線比較方便,缺點(diǎn)是拓?fù)洳粔蜢`活,在一定程度上影響通訊距離;
星形拓?fù)淙缦聢D所示,其特點(diǎn)是每個(gè)節(jié)點(diǎn)通過(guò)中央設(shè)備連到一起,優(yōu)點(diǎn)是容易擴(kuò)展,缺點(diǎn)是一旦中央設(shè)備出故障會(huì)導(dǎo)致總線集體故障,而且分支線長(zhǎng)不同,阻抗匹配復(fù)雜,可能需要通過(guò)一些中繼器或集線器進(jìn)行擴(kuò)展;
樹(shù)形拓?fù)淙缦聢D所示,其特點(diǎn)是分支比較多,且分支長(zhǎng)度不同,優(yōu)點(diǎn)是布線方便,缺點(diǎn)是網(wǎng)絡(luò)拓?fù)鋸?fù)雜,阻抗匹配困難,通訊中極易出現(xiàn)問(wèn)題,必須加一些集線器設(shè)備;
環(huán)形拓?fù)淙缦聢D所示,其特點(diǎn)是將CAN總線頭尾相連,形成環(huán)狀,優(yōu)勢(shì)是線纜任意位置斷開(kāi),總線都不會(huì)出現(xiàn)問(wèn)題,缺點(diǎn)是信號(hào)反射嚴(yán)重,無(wú)法用于高波特率和遠(yuǎn)距離傳輸。
雖然CAN總線可以有多種網(wǎng)絡(luò)拓?fù)洌趯?shí)際應(yīng)用當(dāng)中比較推薦使用線形拓?fù)洌以?a href="http://www.nxhydt.com/tags/ios/" target="_blank">IOS-11898-2中有高速CAN物理層規(guī)范,其中推薦的CAN網(wǎng)絡(luò)拓?fù)湟彩蔷€形拓?fù)洌旅婢歪槍?duì)線形拓?fù)渚W(wǎng)絡(luò)CAN支線過(guò)長(zhǎng)問(wèn)題進(jìn)行分析。
支線過(guò)長(zhǎng)帶來(lái)的問(wèn)題
在講CAN支線之前,我們來(lái)看一個(gè)CAN的波形圖,如下圖所示,大家仔細(xì)查看CAN波形圖,會(huì)發(fā)現(xiàn)CAN波形上存在明顯的上升沿和下降沿臺(tái)階現(xiàn)象,因?yàn)榕_(tái)階的存在,從而引起波特率變化,導(dǎo)致接收節(jié)點(diǎn)采樣出錯(cuò)(也稱位寬錯(cuò)誤)。
邊沿臺(tái)階出現(xiàn)的源頭主要是CAN節(jié)點(diǎn)的分支,分支過(guò)長(zhǎng)形成的反射就變強(qiáng),將會(huì)導(dǎo)致位寬度失調(diào)的錯(cuò)誤。ISO11898中只規(guī)定1M波特率下分支不超過(guò)0.3米,支線過(guò)長(zhǎng)會(huì)直接導(dǎo)致總線阻抗匹配問(wèn)題發(fā)生,阻抗匹配是指信號(hào)源或者傳輸線跟負(fù)載之間達(dá)到一種適合的搭配,阻抗匹配主要為了調(diào)整負(fù)載功率和抑制信號(hào)反射,所以一旦阻抗匹配出現(xiàn)問(wèn)題,就出現(xiàn)了上圖中的上升沿和下降沿的臺(tái)階。
解決支線過(guò)長(zhǎng)的辦法
如果我們的總線存在支線過(guò)長(zhǎng)的問(wèn)題,那么該怎么辦呢?我們下面提供幾種解決方案:
1、減小分支長(zhǎng)度
在CAN網(wǎng)絡(luò)布局的根源上解決問(wèn)題的方式就是減少CAN節(jié)點(diǎn)的分支長(zhǎng)度,從而降低信號(hào)反射,保證位寬的穩(wěn)定性。如上圖波形實(shí)驗(yàn)中,其它條件不變,只將分支長(zhǎng)度減少為20cm,此時(shí)并沒(méi)有看到邊沿臺(tái)階的出現(xiàn)。由此可見(jiàn),減少分支長(zhǎng)度是消除邊沿臺(tái)階的最直接方式。
2、長(zhǎng)分支上加適當(dāng)電阻
在網(wǎng)絡(luò)布局無(wú)法改變,分支引起的信號(hào)反射必須存在的情況下。最實(shí)用的方法就是在長(zhǎng)分支末端加上電阻,消除信號(hào)反射。同樣的在上述實(shí)驗(yàn)中,在分支節(jié)點(diǎn)處加上一個(gè)200Ω的電阻,其它條件不變進(jìn)行通信實(shí)驗(yàn)。下圖為實(shí)驗(yàn)的CAN波形圖,此時(shí)可以看到邊沿臺(tái)階已被消減,但是加了電阻之后差分電壓變小,注意差分電壓不得小于0.9V。這里值得一提的是:阻值大于500Ω的電阻吸收反射的能力很弱,所以在末端掛電阻的時(shí)候應(yīng)小于500Ω。
3、增加CAN中繼器或集線器
當(dāng)然很多場(chǎng)合是在出現(xiàn)了問(wèn)題之后才發(fā)現(xiàn)支線過(guò)長(zhǎng),當(dāng)重新布線或更改節(jié)點(diǎn)本身都無(wú)法操作的情況下,我們也有解決方案,那就是在過(guò)長(zhǎng)的支線上增加CAN中繼器,典型的如致遠(yuǎn)電子CANBridge,甚至可以支持不同波特率的CAN網(wǎng)絡(luò)的連接。
責(zé)任編輯:lq
-
控制器
+關(guān)注
關(guān)注
112文章
16214瀏覽量
177479 -
總線
+關(guān)注
關(guān)注
10文章
2869瀏覽量
87995 -
CAN網(wǎng)絡(luò)
+關(guān)注
關(guān)注
1文章
44瀏覽量
16907
原文標(biāo)題:為什么CAN總線支線長(zhǎng)度不能太長(zhǎng)?
文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論