RS-485是在RS-422的基础上发展起来的,能实现一点对多点的通讯,也能实现多点双向通讯,但同一时刻只能有一个发送器,其余的为接收器,即一主多从的通讯方式。目前市场上可供选择的RS-485总线芯片很多,其中包括可支持128个节点的MAXl487和支持400个节点的SP485R。利用该类芯片可直接组成简单的通讯网络。
RS-485收发器采用平衡发送、差分接收的方式,即在发送端将TTL信号转换成差分信号输出,在接收端,接收器将差分信号转换成TTL信号。因此具有较高的共模抑制能力。同时接收用具有较高的灵敏度,能检测低达200mV的电压,数据传输可达1 200m。如降低数据传输速率,则通讯间隔可更长。当通讯速率为1 200bps时,理论上通讯间隔可达15km。当传输间隔超过300m时,在网络的二端需接进120Ω的匹配电阻,以减少因阻抗不匹配而引起的反射,吸收噪声,从而有效抑制噪声干扰。MAXl487的接口电路示意图如图1所示。
2网络结构及实施方案
在实际应用中,RS-485总线芯片本身所拥有的节点数已不能满足需求,而往往需要一个接点庞大的复杂局域网络(如几千甚至几万个节点)来完成。连接在该网络中的各类设备能相互通讯,并且可以在一定节点数范围内根据实际需要任意扩展,并做到即插即用。治理职员通过随身携带的笔记本电脑,接进网络中的任一接点,可了解整个网络的运行情况。结适用户应用程序,治理职员还可获得连接于该网络上相关设备的运行数据。
针对以上要求,局域网络必须由多片具有RS-485总线的芯片连接而成。本文讨论节点数≤32768点的局域网络,使用MAXl487作收发器。根据RS-485总线的特点;在任一时刻,整个网络只答应有一个发送器,其余的必须处于接收状态。而接进网络中的设备随时可能有多个设备同时传输数据的要求,如不进行协调,就会出现总线竞争现象,使总线电子紊乱,整个网络无法工作。
将一片MAXl487所能连接的128个节点作为一个子网,整个局域网络由若干个子网组成。所有节点不直接和用户设备相连,而是通过一个节点模块和设备连接。这是一种二端带通讯口的智能化模块,内带一个单片机系统,用于执行局域网络通讯协议,负责BS-485总线和设备间的通讯,同时参与整个局域网络的通讯协调工作。模块的一端为RS-485总线,用于连接网络,另一端是RS-232总线(或TTL电平)与用户设备、仪器仪表或智能传感器连接。
子网中每个节点模块都有自己的地址,用1个字节表示,即00H~7FH。而在整个局域网络中,每个子网也有自己的子网地址,也用1个字节表示,即00H~FFH。这样,在整个局域网络中每个节点就有自己惟一的用2个字节的二进制数表示的地址,类似Internet中的IP地址,其地址格式如图2所示。以00H子网05H节点为例,其中的"X"为无效位 |