RS-485總線應用中,時常會遇到不同的RS-485設備之間通訊,不同的設備間兼容性存在不同,有的設備很穩(wěn)定,有的設備卻時常收到異常數(shù)據(jù),這是什么原因導致的呢?又應如何避免呢?
RS-485應用異常?
某儲能客戶在使用我司全隔離RS-485收發(fā)芯片SM4500過程中,時常會出現(xiàn)數(shù)據(jù)不穩(wěn)定情況,如下圖 1,客戶設備與不同的RS-485設備通訊時,有的設備通訊穩(wěn)定,有的設備則時不時會收到異常電平。
圖1 SM4500應用簡圖
經過測試發(fā)現(xiàn)客戶板卡RS-485通道在空閑時,總線電平處于0電位。如圖 1所示,RS-485標準規(guī)定了當AB總線間電平處于-200mV~+200mV時,接收器端(RXD)會接收到不確定電平(為解釋方便,下面統(tǒng)稱“門限電平”)。而不同的RS-485設備,門限電平存在不同,SM4500門限電平為-10mV ~?-200mV,當與門限電平為-200mV ~?+200mV的設備通訊時,就有可能出現(xiàn)異常,那么如何避免這一問題發(fā)生?
圖2 RS-485?接收電平示意圖
? 總線電平不確定狀態(tài)原因
1.?少不了的上下拉電阻
如圖 3、圖 4,為SM4500通訊的總線波形,發(fā)送數(shù)據(jù)時(非空閑狀態(tài)),總線電平最大值為3.28V,最小值為-2.96V;空閑狀態(tài)時,總線電平最大值為240mV,最小值為-160mV,此時總線已經處于不確定狀態(tài)。
圖3?SM4500非空閑時2Mbps總線波形
圖4?SM4500空閑時總線波形
根據(jù)SM4500手冊的典型連接電路圖,在總線上增加上下拉電阻后,總線電平被拉高,此時已經遠大于不確定狀態(tài)電壓,如圖 6??梢娫赗S-485應用過程中,上下拉電阻是必不可少的。
圖5?SM4500典型連接電路圖
圖6?SM4500空閑時波形(設置上下拉電阻100kΩ)
2.?“多余的”終端電阻
想必各位工程師都知道終端電阻的作用是消除信號反射,因此實際應用中往往都會默認設置,但其實并不是所有情況都需要終端電阻,有時終端電阻反而會引入一些問題。前面說到總線空閑處于不確定狀態(tài)時,可以通過設置上下拉電阻避免,但在接入終端電阻后,總線電平又會進入到不確定狀態(tài),如圖 7。這又怎么解決呢?
圖7?SM4500空閑時波形(設置上下拉電阻100kΩ、60Ω終端電阻)
??如何使總線不處于門限電平內
我們先來看下為什么在接入終端電阻后,總線電平又會進入到不確定狀態(tài)。SM4500總線端輸入阻抗高達上百kΩ,在設置終端電阻后,忽略內阻的影響,假設總線上各節(jié)點的SM4500的輸出電壓VISOOUT相同,得到總線空閑時電平計算公式如下,通訊等效示意如圖 8,其中R上、R下為總線的上下拉電阻,R為終端電阻。
圖8?SM4500通訊等效示意圖
根據(jù)上述公式,計算圖 7總線空閑電壓VAB=VISOOUT*60Ω/(100kΩ+100kΩ+60Ω),這里VISOOUT可取5.1V,可得VAB=1.53mV(與實測波形相符),處于RS-485標準規(guī)定的門限電平內。通過公式發(fā)現(xiàn),只要減小上下拉電阻就能提高總線空閑時的電平,因此得到如下公式:
所以只要上下拉電阻<735Ω,空閑時的總線電平就能>200mV。例如取R上=510Ω進行驗證,此時計算VAB=283mV,實測總線電平如圖 9,光標測量總線電平為276mV(考慮到有線阻和測量的誤差,因此符合理論值)。另外,上下拉電阻是不是越小的話,會越好呢?其實不然,上下拉電阻越小總線空閑狀態(tài)差分電壓保持的也越高,此時,終端電阻和上下拉電阻的功耗也越大,對RS-485收發(fā)器的驅動能力要求也越高,當超過RS-485收發(fā)器的驅動能力時,也會導致通信失敗(詳細分析可查看往期文章《詳解RS-485上下拉電阻的選擇》)。
圖9?SM4500空閑時總線波形(設置上下拉電阻510Ω、60Ω終端電阻)
如圖 10,SM4500的門限電平為-10mV ~ -200mV,實際上要比RS-485標準規(guī)定的范圍小,也就是說總線空閑時更不容易進入到門限電平內。根據(jù)上下拉電阻計算公式,當VAB電壓趨近于0時,上下拉電阻會趨近于無窮大,換言之,SM4500理論上不設置上下拉電阻也能正常通訊。但實際上使用SM4500的設備往往會與不同的RS-485設備通訊,加上總線易受干擾產生波動,因此為了總線兼容性更好,設置上下拉電阻也是必須的。
圖10??SM4500真值表
??總結
-
- RS-485總線網(wǎng)絡中設置上下拉電阻是必須的,這樣可以避免總線空閑時進入門限電平內;如果總線設置終端電阻,此時需要根據(jù)實際情況調整上下拉電阻大小,必要時適當加大終端電阻,以避免總線空閑時處于門限電平內;
SM4500門限電平范圍小,總線空閑時更不容易進入門限電平內,兼容性好。