RS485总线是一种常用的差分信号传输方式,它具有抗干扰能力强、传输距离远、节点数多等优点,广泛应用于通信、工业自动化等领域。但在实际应用中,通常会遇到远距离RS-485设备通信异常的情况,比较常用的解决方式是去检查RS-485设备总线上是否增加了终端电阻。有些情况下不加也可以用,这是为什么呢?就让我们来了解一下RS-485总线上的终端电阻有何作用。
终端电阻的作用
高频信号传输时,信号波长相对传输线较短,信号在传输线终端会形成反射波,干扰原信号,所以需要在传输线末端加终端电阻,使信号到达传输线末端后不反射。对于低频信号则不用。在长线信号传输时,一般为了避免信号的反射和回波,也需要在接收端接入终端匹配电阻。
对于RS-485总线而言,终端电阻可以匹配通信线的特性阻抗,防止信号反射,提高信号质量。在组建RS-485总线网络时,通常使用特性阻抗为120Ω的屏蔽双绞线,由于RS-485收发器输入阻抗一般较高,达到近百KΩ,在信号传输到总线末端时由于受到的瞬时阻抗发生突变,阻抗由120Ω变为近百KΩ,导致信号发生反射,影响信号的质量。这种阻抗变化引起的信号反射与通信的信号频率及信号线长度都有关系。在一个没有加终端电阻的总线长度在1M以下的总线上,通信速率在9600Kbps时,485通信几乎不会有异常。然而当我们提高通信速率后,随着通信速率的提高,通信的数据会开始出现乱码。这时我们用示波器去测量AB线信号会发现,此时AB线上电压波形已经不是方波,更偏向于正弦波。这种波形已经不能让接收器正确输出发送器传出的信号。终端电阻带来的问题
终端电阻虽然可以提高信号质量,但也具有以下几个问题:①降低驱动信号的幅值RS-485总线上的负载越大,RS-485收发器输出差分电压幅值越低,由于RS-485接收器是通过AB线上电压差来判断传输的信号,这个电压有一个阈值±200mV,低于这个电压后就无法判断数据。②增大通信线上的压降增加终端电阻使通信线缆上的电流增大,产生了较大的电压损耗,线缆越长到达接收端的电压差越小,从而影响通信数据。③增大收发器的功耗RS-485发送器在发送数据的过程中会驱动AB端电压差超过±200mV,总线上负载越大,就会使发送器消耗的功率变大。什么时候需要加终端电阻?
①通信速度低或者通信距离近的情况下,建议不加终端电阻通信速度低或者通信总线短的情况下,信号反射对通信信号的影响不大,而且不加终端电阻可以降低功耗,并且通过加较大上下拉电阻值即可保证RS-485总线空闲时具有较高的差分电压幅值,提高了通信的可靠性。②通信距离较长且通信速度较快,对信号质量要求较高的情况由于RS-485总线随着传输距离的延长,会产生回波反射信号,此时可以增加终端电阻,防止阻抗突变引起的信号反射问题,提高信号质量,但需要确保在总线空闲时总线的差分电压不处于门限电平范围内。RS-485标准建议线缆的特性阻抗Z0=120Ω,通常通信线的首末尾处终端各匹配一个120Ω的电阻。
③对功耗有要求且通信距离较长的情况
一般在一个位的中间时间对信号进行采样,由于低通信速度的情况下,每一个位的时间较长,所以在到达采样点时反射信号已被消耗掉,对通信已无影响。所以对RS-485的收发器功耗有较高要求且通信距离较长的应用,应适当降低通信的速度。
|