×
嵌入式开发 > 详情

单片机多机通信系统稳定性的研究

发布时间:2020-07-07 发布时间:
|

概 述

单片机在当今的仪表及工业测控设备上应用非常广泛。其功能强大、外围接口电路简单,在构成分布式系统时,其优越性更显突出。在分布式系统中,分机常采用多机通信方式,由于RS-485(以下简称485)通信接口的传输距离远,连线少,所以被认为是一种很好的通信模式。然而,在实际应用过程中,若使用不当,485接口会出现很多问题:首先是器件经常损坏,有时对电源进行几次连续的开关机操作之后,通信电路就会失控;再有,在通信过程中,数据传输经常出现误码,而且误码率很高。在系统调试过程中,有两次记录可以证明这一点,记录如表1所列。

表1 调试记录

一、 硬件分析

首先分析通信电路失控的原因。系统在上电复位阶段,所有485芯片都处于输出状态,而且只有其中某一台分机发出数据。以这台分机输出口的状态为例进行分析,如图1所示。A、B为485接口的两只引脚,图1(图1a)中的A1~An为高电平,B1~Bn为低电平;而A 为低电平,B为高电平,其中一个分支的等效电路如图1(b)所示。由于每个出口电路的电阻取值相同,都取22Ω,则C点电位接近An点电位。分机数量越大,两点电位就越接近。485芯片为差动输出方式,同时有拉电流和灌电流存在,电流I=U/R。由于电流I的存在,使485的差动输出端各有0.3V的电压降。485芯片由输出口造成的功率损耗为P=2IU0=2(U/R)×0.3=0.6U/R。
U=5-0.3×2=4.4V
R=22Ω
I=U/R=4.4V/22Ω=0.2A
P=0.6×0.2=0.12W=120mW

由于功耗P与485芯片的耗散功率接近,所以485芯片经常有损坏的现象。为了解决这个问题,只有降低485芯片的功率损耗。由功耗P的计算公式可知,由于电压一定,只有增大R值,才能减小功耗P。又因为在正常状态下,485芯片的接收端处于差动输入状态,这时,起发送作用的485芯片的输出端除了导线的分布电容,再无其它负载,而在485芯片输出相位切换时刻,可将分布电容看作是AB线短路,则I=U/(2R)。从工程应用的实践经验中得出, 20mA电流环,可使通信数据稳定。

由I=U/(2R)得
R=U/2I=4.4/(20×2)=0.11kΩ=110Ω

在实际应用中,R选用100Ω电阻,经过这样处理之后, 485芯片再也没有出现损坏的现象。

以上分析是针对主、分机采用同一电源的对于各自独立电源供电的通信网络,485输出口的状态最后仍然等效成如图1(b)所示电路。

在主机通信口由输出转为输入状态时,分机还没有接管通信总线,这时通信线处于悬浮状态,极易拾取噪声。分机与主机采用同组电源时,其噪声幅度与信号幅度接近,如图2(a)所示;当分机采用各自独立电源时,其噪声幅度大于2倍信号幅度,如图2(b)所示。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
MSP430单片机硬件知识-复位