弱电工程应用中485接口常见问题

  • 2018-12-07 17:04 /
  • 作者:讯维

1、采用RS485接口时,传输电缆的长度如何考虑?
 
答:在使用RS485接口时,对于特定的传输线经,从发生器到负载其数据信号传输所允许的最大电缆长度是数据信号速率的函数,这个长度数据主要是受信号失真及噪声等影响所限制。下图所示的最大电缆长度与信号速率的关系曲线是使用24AWG铜芯双绞电话电缆(线径为0.51mm),线间旁路电容为52.5PF/M,终端负载电阻为100欧时所得出。
 
当数据信号速率降低到90Kbit/S以下时,假定最大允许的信号损失为6dBV时,则电缆长度被限制在1200M。
 
当使用不同线径的电缆。则取得的最大电缆长度是不相同的。例如:当数据信号速率为600Kbit/S时,采用24AWG电缆,由图可知最大电缆长度是200m,若采用19AWG电缆(线径为0。91mm)则电缆长度将可以大于200m;若采用28AWG电缆(线径为0。32mm)则电缆长度只能小于200m。

 
2、如何实现RS-485的多点通讯?
 
答:RS-485总线上任何时候只能有一发送器发送。半双工方式,主从只能一个发。全双工方式,主站总可发送,从站只能有一个发送。(靠和DE控制)
 
3、RS-485接口通讯时,在什么条件下需要采用终端匹配?电阻值如何确定?如何配置终端匹配电阻?
 
答:在长线信号传输时,一般为了避免信号的反射和回波,需要在接收端接入终端匹配电阻。其终端匹配电阻值取决于电缆的阻抗特性,与电缆的长度无关。
 
RS-485一般采用双绞线(屏蔽或非屏蔽)连接,终端电阻一般介于100至140Ω之间,典型值为120Ω。在实际配置时,在电缆的两个终端节点上,即最近端和最远端,各接入一个终端电阻,而处于中间部分的节点则不能接入终端电阻,否则将导致通讯出错。
 
4、RS-485接口为何在停止通信时接收器仍有数据输出?
 
答:由于RS-485在发送数据完成后,要求所有的发送使能控制信号关闭且保持接收使能有效,此时,总线驱动器进入高阻状态且接收器能够监测总线上是否有新的通信数据。
 
由于此时总线处于无源驱动状态(若总线有终端匹配电阻时,A和B线的差分电平为0,接收器的输出不确定,且对AB线上的差分信号的变化很敏感;若无终端匹配,则总线处于高阻态,接收器的输出不确定),容易受到外界的噪声干扰。当噪声电压超过输入信号门限时(典型值±200mV),接收器将输出数据,导致对应的UART接收无效的数据,使紧接着的正常通讯出错;另外一种情况可能发生在打开/关闭发送使能控制的瞬间,使接收器输出信号,也会导致UART错误地接收。解决方法:
 
1)在通讯总线上采用同相输入端上拉(A线)、反相输入端下拉(B线)的方法对总线进行钳位,保证接收器输出为固定的"1"电平;
 
2)采用内置防故障模式的接口产品替换该接口电路;
 
3)通过软件方式消除,即在通信数据包内增加2-5个起始同步字节,只有在满足同步头后才开始真正的数据通讯。
 

 
5、RS-485在通讯电缆中的信号衰减
 
第二个影响信号传输的因素是信号在电缆的传输过程中衰减。一条传输电缆可以把它看出由分布电容、分布电感和电阻联合组成的等效电路。
 
电缆的分布电容C主要是由双绞线的两条平行导线产生。导线的电阻在这里对信号的影响很小,可以忽略不计。
 
6、分布电容对RS-485总线传输性能的影响
 
电缆的分布电容主是由双绞线的两条平行导线产生。另外,导线和地之间也存在分布电容,虽然很小,但在分析时也不能忽视。分布电容对总线传输性能的影响,主要是因为总线上传输的是基波信号,信号的表达方式只有"1"和"0"。在特殊的字节中,例如0x01,信号"0"使得分布电容有足够的充电时间,而信号"1"到来时,由于分布电容中的电荷,来不及放电,(Vin+)-(Vin-)-还大于200mV,结果使接爱误认为是"0",而最终导致CRC校验错误,整个数据帧传输错误。
 
由于总线上分布影响,导致数据传输错误,从而使整个网络性能降低。解决这个问题有两种方法:
 
(1)降低数据传输的波特率;
 
(2)使用分布电容小的电缆,提高传输线的质量。

返回