RS-485总线在多节点远距离通信系统中的应用
介绍RS-485接口SN65HVD3082E芯片的结构、性能特点,及以该芯片为主的通信系统的构成,包括它们的硬件电路和软件设计方法;说明了该系统的优点及应用领域。
SN65HVD3082E芯片是一款为RS-485数据总线网络而设计的半双工的收发器。它由+5V供电,与TIA/EIA-485A标准完全兼容。通过控制输出转换时序,它能够在长距离双绞线电缆上传输高达200kbps速率的信号。它的供电电流极低,一般小于0.6mA,当处于不活动的关闭模式时,供电电流只有几个nA,所以特别适合于低功耗方面的应用。它具有宽的共模抑制范围和高静电放电保护能力,因此,适用于噪声容限要求很高的场合。SN65HVD3082E与SN75176的工业标准封装相匹配。它的上电复位电路能使输出保持高阻状态直至供电电压稳定,其热关断功能还可以保护芯片不因系统故障而损坏。它的管脚图如图1所示,内部功能图如图2所示。其他特性还有:在一条总线上可以多达256个节点;总线引脚上的防静电保护超过16kV,接收器带故障保护。
2.1系统总体设计
系统由一台IBM-PC机和多个AT89C52单片机构成,采用主从式结构,以AT89C52芯片为核心的从机既可以独立地完成数据处理和控制任务,又可以将数据传给上位PC机。PC机将这些数据进行处理、显示、打印,同时将各种控制命令传给各个从机,以实现集中管理和最优控制。它们之间的通信由SN65HVD3082E芯片完成。组成框图如图3所示。在接口之间接有匹配电阻,用于吸收总线上的反射信号,保证正常传播信号干净、无毛刺(其取值与总线的特性阻抗相当)。当总线上没有信号传输时,总线处于悬浮状态,容易受干扰信号的影响。在总线上,差分信号的正端和+5V电源间接一个10kΩ的电阻;正端和负端之间也接一个10kΩ的电阻;负端和地之间再接一个10kΩ的电阻,形成一个电阻网络。当总线上没有信号传输时,正端的电平大约为3.2V,负端的电平大约为1.6V,即使有干扰信号,也很难产生串行通信的起始信号0,从而增加了总线抗干扰的能力。
2.2RS232/RS485的转换部分
选用DAQ485A系列产品DAQ485A-6N作为RS-232/RS-485转换器。其一端为DB9S插头,可直接与PC机的RS-232口相连,而其另一端为四端子接线座,分别为A、B、GND、VCC。可由计算机RS-232口直接供电,亦可在VCC和GND间外接+5V直流电源;DQ485A转换器内部具有自动处理功能,外部电源不影响内部窃电,内部窃电亦不影响外部电源,因此,两者可分而供之,亦可同时供之。DAQ485A-6N系列使用了TI的E系列ESD保护器件,因此,适合于长线室外使用。图4是RS-232/RS-485转换器与RS-485的连线图。
本系统软件设计以Windows 98为平台,采用Delphi和C++语言设计,下面仅介绍上下位机通信及界面的主要程序的设计思想和设计方法。通信软件必须符合RS-485协议标准。因此上位机与下位机之间严格实行主从结构形式的通信方式,上位机为主,下位机为从。一切都由主机控制,任一时刻主机只与一台从机传输信息,从机之间不能直接通信,若要通信可通过主机实观。数据通信波特率定为9600波特,每个从机都有唯一的地址号,用来区分各从机。单片机的数据通信由串口完成,定时器T1为波特发生器,数据传送格式为1位起始位,8位数据位,1位停止位,1位可编程位(TB8)。工作方式:定时器T1设置为方式2,串口设置为工作方式3。单片机通过中断方式发送和接收数据。由于RS-485是一种半双工通信方式,发送与接收共用同一物理信道。各任何时刻只允许一台单机处于发送状态。因此,要求应答的单机必须在侦听到总线上呼叫信号已经发送完毕,且没有其他单机发出应答信号的情况下才能应答。主从机的时序有严格的要求,若配合不好会发生总线冲突,使系统的通信瘫痪,无法正常。应采取的措施:(1)复位时,主从机均应处于接收状态。在软件设计时,应使系统上电或正式通信前对串口做几次空操作,清除端口的非法数据和命令;(2)控制端RE和DE信号的有效脉宽应大于发送或接收一帧信号的宽度;(3)总线上所连接的各单机的发送控制信号在时序上应完全隔开,避免总线冲突。主机程序流程图如图5所示,下位机通信框图如图6所示。
由于RS485总线传输距离长(1200米以上),而且其传输线通常暴露于户外,因此极易因为雷击等原因遭受过电压的冲击。而RS-485收发器工作电压较低(+5V左右),其本身耐压也非常低(-7V~+12V),一旦遭受过电压的冲击,就会被击穿损坏。在有强烈的浪涌电能出现时,甚至会使收发器爆裂,线路板烧焦。因此,除采用防护电路、选择优质的防护器件、良好的PCB板设计之外,还采用可靠的接地技术(接
- 一种实现载波监听多点接入/冲突检测的多主RS485总线(11-28)
- 微功耗RS485中继器的研制(01-18)
- RS-232/RS-485无源转换电路设计(01-23)
- RS-232至RS-485RS-422接口的智能转换器(01-24)
- RS-485网络设计降低功耗问题(01-26)
- 现场总线CANbus与RS-485之间透明转换的实现(01-26)