RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題

freeFree Technical Resource

This content is free to read, suitable for basic learning and search traffic.

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題

RS-485バス应用中,时常会遇到不同的RS-485デバイス之间通讯,不同的デバイス间兼容性存在不同,有的デバイス很稳定,有的デバイス却时常收到異常データ,这是什么原因导致的呢?又应如何避免呢?

RS-485应用異常

某储能客户在使用ZLG的全絶縁RS-485收发芯片SM4500过程中,时常会出现データ不稳定情况,如下图 1,客户デバイス与不同的RS-485デバイス通讯时,有的デバイス通讯稳定,有的デバイス则时不时会收到異常电平。

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト

图1 SM4500应用简图
经过测试发现客户板卡RS-485通道在暇なとき,バス电平处于0电位。如图 1所示,RS-485標準规定了当ABバス间电平处于-200mV~+200mV时,受信器端(RXD)会受信到不確かなこと电平(为解释方便,下面统称“门限电平”)。而不同的RS-485デバイス,门限电平存在不同,SM4500门限电平为-10mV ~ -200mV,当与门限电平为-200mV ~ +200mV的デバイス通讯时,就有可能出现異常,那么如何避免这一問題发生?

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト1

图2 RS-485 受信电平示意图

バス电平不確かなことステータス原因
1. 少不了的上下拉电阻
如图 3、图 4,为SM4500通讯的バス波形,送信データ时(非空闲ステータス),バス电平最大值为3.28V,最小值为-2.96V;空闲ステータス时,バス电平最大值为240mV,最小值为-160mV,此时バス已经处于不確かなことステータス。

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト2

图3 SM4500非暇なとき2Mbpsバス波形

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト3

图4 SM4500暇なときバス波形
根据SM4500手册的典型连接电路图,在バス上增加上下拉电阻后,バス电平被拉高,此时已经远大于不確かなことステータス电压,如图 6。可见在RS-485应用过程中,上下拉电阻是必不可少的。

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト4

图5 SM4500典型连接电路图

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト5

图6 SM4500暇なとき波形(設定上下拉电阻100kΩ)
2. “多余的”終端抵抗
想必各位エンジニア都知道終端抵抗的作用是消除信号の反射,因此实际应用中往往都会デフォルト設定,但其实并ではないすべての情况都需要終端抵抗,有时終端抵抗反而会引入一些問題。前面说到バス空闲处于不確かなことステータス时,可以経由設定上下拉电阻避免,但在接入終端抵抗后,バス电平又会进入到不確かなことステータス,如图 7。这又怎么解決呢?

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト6

图7 SM4500暇なとき波形(設定上下拉电阻100kΩ、60Ω終端抵抗)

如何使バス不处于门限电平内
我们先来看下なぜか。在接入終端抵抗后,バス电平又会进入到不確かなことステータス。SM4500バス端入力阻抗高达上百kΩ,在設定終端抵抗后,忽略内阻的影响,假设バス上各节点的SM4500的出力电压VISOOUT相同,得到バス暇なとき电平計算公式如下,通讯等效示意如图 8,among themR上、R下为バス的上下拉电阻,R为終端抵抗。

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト7
RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト8

图8 SM4500通讯等效示意图
根据上述公式,計算图 7バス空闲电压VAB=VISOOUT*60Ω/(100kΩ+100kΩ+60Ω),这里VISOOUT可取5.1V,可得VAB=1.53mV(与实测波形相符),处于RS-485標準规定的门限电平内。経由公式发现,只要减小上下拉电阻就能提高バス暇なとき的电平,因此得到如下公式:

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト9

所以只要上下拉电阻<735Ω,暇なとき的バス电平就能>200mV。例如取R上=510Ω进行验证,此时計算VAB=283mV,实测バス电平如图 9,光标测量バス电平为276mV(考虑到有线阻和测量的误差,因此符合理论值)。另外,上下拉电阻是ではない越小的话,会越好呢?其实不然,上下拉电阻越小バス空闲ステータス差動電圧保持的也越高,此时,終端抵抗和上下拉电阻的功耗也越大,对RS-485收发器的ドライブ能力。要求也越高,当超过RS-485收发器的ドライブ能力。时,也会导致通信失敗(详细分析可表示往期文章《详解RS-485上下拉电阻的選択》)。

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト10

图9 SM4500暇なときバス波形(設定上下拉电阻510Ω、60Ω終端抵抗)
如图 10,SM4500的门限电平为-10mV ~ -200mV,实际上要比RS-485標準规定的範囲小,也就是说バス暇なとき更不容易进入到门限电平内。根据上下拉电阻計算公式,当VAB电压趋近于0时,上下拉电阻会趋近于无穷大,换言之,SM4500理论上不設定上下拉电阻也能正常通讯。但实际上使用SM4500的デバイス往往会与不同的RS-485デバイス通讯,加上バス易受干渉产生波动,因此为了バス兼容性更好,設定上下拉电阻也是必须的。

RS-485バス优化ガイド:解決不同デバイス通讯中的电平不稳定問題イラスト11

图10 SM4500真值表

总结

1.RS-485バス网络中に設置。上下拉电阻是必须的,这样可以避免バス暇なとき进入門限电平内;
2.もしバス設定終端抵抗,此时需要根据实际情况调整上下拉电阻大小,必要时适当加大終端抵抗,以避免バス暇なとき处于门限电平内;
3.SM4500门限电平範囲小,バス暇なとき更不容易进入門限电平内,兼容性好。

Put this resource to use in a real project?

Go to the Tool Center for message parsing, CRC verification and device debugging, or submit your requirements for selection and integration advice.

Engineer Membership

Turn this article into actionable debugging resources

After activation, you can use advanced message parsing, resource pack downloads, code examples, engineering cases and priority technical support, suitable for real project delivery.

Unlimited Advanced Tools
Resource & Code Packs
Complete Engineering Case Library
Priority Technical Support

Leave a Reply

Your email address will not be published. Required fields are marked *.