RS-485總線具有結(jié)構(gòu)簡單、成本低等優(yōu)點(diǎn),但各位工程師在組建RS-485總線網(wǎng)絡(luò)時(shí),為提升整個(gè)網(wǎng)絡(luò)通信的可靠性,想必會(huì)經(jīng)常會(huì)遇到一個(gè)問題:需不需要加終端電阻呢?本文將為你解答。
終端電阻的作用
對于RS-485總線,終端電阻主要是為了匹配通信線的特性阻抗,防止信號(hào)反射,提高信號(hào)質(zhì)量。
在組建RS-485總線網(wǎng)絡(luò)時(shí),通常使用特性阻抗為120Ω的屏蔽雙絞線,由于RS-485收發(fā)器輸入阻抗一般較高(例如RSM485ECHT輸入阻抗為96kΩ,最多可連接256個(gè)節(jié)點(diǎn)),在信號(hào)傳輸到總線末端時(shí)會(huì)由于受到的瞬時(shí)阻抗發(fā)生突變(以RSM485ECHT為例,阻抗由120Ω變?yōu)?6kΩ),導(dǎo)致信號(hào)發(fā)生反射,影響信號(hào)的質(zhì)量。RSM485ECHT在1200m,500kbps通信速率的情況下不加終端電阻和加終端電阻的波形如圖1和圖2所示,終端電阻明顯改善了信號(hào)的質(zhì)量。
圖1 RSM485ECHT 1200m 500kbps?不加終端電阻
圖2 RSM485ECHT 1200m 500kbps 加終端電阻
終端電阻帶來的問題
終端電阻雖然可以提高信號(hào)質(zhì)量,但還具有以下幾個(gè)問題:
1. 降低了驅(qū)動(dòng)信號(hào)的幅值
RS-485總線上的負(fù)載越大,RS-485收發(fā)器輸出差分電壓幅值越低,RSM485ECHT在5m,500kbps的情況下不加終端電阻和加終端電阻的波形如圖3和圖4所示,可以看出驅(qū)動(dòng)信號(hào)在增加終端電阻后降低了2V左右。
圖3 RSM485ECHT 5m 500kbps 不加終端
圖4 RSM485ECHT 5m 500kbps 加終端
2. 增大了通信線上的壓降
增加終端電阻使通信線纜上的電流增大,產(chǎn)生了較大的壓差,降低了接收端的信號(hào)幅值。RSM485ECHT在1200m,115.2kbps首端和末端的信號(hào)波形如圖5和圖6所示(0.75mm2通信線),末端信號(hào)與首端信號(hào)相比下降了0.7V左右。
圖5 RSM485ECHT 1200m 115.2kbps
加終端電阻 首端波形
圖6 RSM485ECHT 1200m 115.2kbps
加終端電阻 末端波形
3. 增大了收發(fā)器的功耗
增加終端電阻對于接收狀態(tài)時(shí)的工作電流影響不大,但會(huì)大大增加驅(qū)動(dòng)狀態(tài)時(shí)的工作電流。以RSM485ECHT為例,RSM485ECHT處于接收狀態(tài)時(shí)工作電流為20mA左右,在驅(qū)動(dòng)狀態(tài)不加終端電阻時(shí)工作電流為27mA左右,在驅(qū)動(dòng)狀態(tài)加終端電阻時(shí)工作電流為83mA左右,可以看出終端電阻大大增加了RS-485收發(fā)器的功耗,對于有功耗要求的應(yīng)用場合,應(yīng)謹(jǐn)慎使用終端電阻。
4. 降低總線空閑時(shí)的差分電壓
如圖7所示為兩個(gè)RSM485ECHT通信示意圖。
圖7 RSM485ECHT通信等效示意圖
當(dāng)兩個(gè)模塊都處于接收狀態(tài)時(shí),可以根據(jù)基爾霍夫電流定律對節(jié)點(diǎn)A和節(jié)點(diǎn)B列出下列公式:
其中:RPUD為RSM485ECHT內(nèi)置上下拉電阻,120kΩ;
RIN為RSM485ECHT輸入阻抗,96kΩ;
根據(jù)上述公式可以計(jì)算AB之間的差分電壓為:
由于RSM485ECHT的門限電平為-200mV~-40mV,所以在上述情況下,模塊仍然輸出高電平,保證總線空閑時(shí)不會(huì)誤接收數(shù)據(jù)。但對于門限電平為-200mV~+200mV的RS-485收發(fā)器,輸出電平為不確定狀態(tài),此時(shí)有可能誤接收數(shù)據(jù)。
如何解決增加終端電阻后空閑狀態(tài)的問題?
對于空閑狀態(tài)的問題有兩個(gè)解決方法:
使用類似RSM485ECHT的模塊(門限電平為-200mV~-40mV),當(dāng)RS-485總線的差分電壓大于-40mV時(shí)RS-485收發(fā)器的輸出即為高電平。
使用RSM485PCHT或RSM485PHT等帶有輸出隔離電源的模塊,可以通過在外部增加較小的上下拉電阻將RS-485總線的空閑狀態(tài)時(shí)的電壓拉到+200mV以上(一般要留有100mV或200mV以上的裕量),保證空閑時(shí)RS-485總線差分電壓不處于門限電平范圍內(nèi),但上下拉電阻值不能太小,一般總線上拉(或下拉)并聯(lián)值要大于375Ω。
什么時(shí)候需要加終端電阻?
1. 通信速度低或者通信距離近的情況下建議不加終端電阻
通信速度低或者通信距離近的情況下,信號(hào)反射對通信信號(hào)的影響不大,而且不加終端電阻可以大大降低功耗,并且通過加較大上下拉電阻值即可保證RS-485總線空閑時(shí)具有較高的差分電壓幅值,提高了通信的可靠性。
2. 通信距離較長且通信速度較快,對信號(hào)質(zhì)量要求較高的情況
此時(shí)可以增加終端電阻,防止阻抗突變引起的信號(hào)反射問題,提高信號(hào)質(zhì)量,但應(yīng)確保在總線空閑時(shí)總線的差分電壓不處于門限電平范圍內(nèi)。
3. 對功耗有要求且通信距離較長的情況
一般在一個(gè)位的中間時(shí)間對信號(hào)進(jìn)行采樣,由于低通信速度的情況下,每一個(gè)位的時(shí)間較長,所以在到達(dá)采樣點(diǎn)時(shí)反射信號(hào)已被消耗掉,對通信已無影響。RSM485ECHT在1200m 9600bps不加終端電阻首端和末端的波形如圖8和圖9所示,可以看出反射信號(hào)在到達(dá)每一個(gè)位中間前就已經(jīng)被消耗掉了。
所以對RS-485的收發(fā)器的功耗有較高要求且通信距離較長的應(yīng)用,應(yīng)適當(dāng)降低通信的速度。
圖8 RSM485ECHT 1200m 9600bps
不加終端 首端波形
圖9 RSM485ECHT 1200m 9600bps
不加終端 末端波形