RS485介绍
RS485是一个定义平衡数字多点系统中的驱动器和接收器的电气特性的标准,该标准由电信行业协会和电子工业联盟定义。使用该标准的数字通信网络能在远距离条件下以及电子噪声大的环境下有效传输信号。RS-485使得廉价本地网络以及多支路通信链路的配置成为可能。
RS485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用,现在多采用的是两线制接线方式,这种接线方式为总线式拓扑结构,在同一总线上最多可以挂接32个节点,如图1所示。
图1 RS485组网结构
在RS485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。很多情况下,连接RS-485通信链路时只需要简单地用一对双绞线将各个接口的“A”、“B”端连接起来,忽略信号地的连接。这种连接方法能够在许多场合正常工作,但是在更加恶劣的工作环境中,还是应该保证所有设备都良好的接地,以保证通信的可靠性。
数字电路中,由TTL电子元器件组成电路使用的电平,电平是个电压范围,规定输出高电平>2.4V,输出低电平<0.4V。在室温下,一般输出高电平是3.5V,输出低电平是0.2V。最小输入高电平和低电平:输入高电平>=2.0V,输入低电平<=0.8V,噪声容限是0.4V。
RS-485的电气特性:逻辑“1”以A、B两线间的电压差为+(2~6)V表示;逻辑“0”以两线间的电压差为-(2—6)V表示。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接。虽然标准情况下要求压差为2~6V,但是实际上大多数的收发器芯片都将压差限制到了不低于200mV即可,这样能够确保数据不会在网络负载很大的时候因为压差降低而被遗漏。
在很多工业设备,尤其是电力系统的仪器仪表中,大多使用RS485接口实现设备和主控站的通信。RS485接口属于电气接口,实现的是通信网络中的物理层。基于RS485物理层接口,使用UART控制器接收和发送按照标准串口协议编码的数据,即可实现设备间最基本的数据收发。然后,再使用常见的上层应用层协议,典型的例如MODBUS协议,完成多个设备的通信管理。该通信层级模型如图2所示:
图2 基于MODBUS的RS485通信数据流图
发送设备发送数据时,数据走向为:
MODBUS协议栈将用户