RS485通信协议详解(硬件干货)

电子说

1.3w人已加入

描述

 

S-485

(1)基本概念

RS485总线传输协议是一种串行总线通信协议标准,RS485总线采用平衡发送,差分接收的结构设计,因此具有抑制共模干扰的能力。RS485总线的数据传输速率最高可达 ,最远传输距离可达1000米左右。RS485不是点对点式的总线结构,而是分布式架构,其总线能够连接多达128个收发器。

RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。RS-485采用半双工工作方式,任何时候只能有一点处于发送状态,因此,发送电路须由使能信号加以控制。RS-485用于多点互连时非常方便,可以省掉许多信号线。应用RS-485可以联网构成分布式系统,其允许最多并联32台驱动器和32台接收器。在RS232或RS485设备联成的设备网中,如果设备数量超过2台,就必须使用RS485做通讯介质,RS485网的设备间要想互通信息只有通过“主(Master)”设备中转才能实现,这个主设备通常是PC,而这种设备网中只允许存在一个主设备,其余全部是从(Slave)设备。

RS-485 ( EIA-485 标准)是RS-422的改进,因为它增加了设备的个数,从10个增加到32个,同时定义了在最大设备个数情况下的电气特性,以保证足够的信号电压。有了多个设备的能力,你可以使用一个单个RS-485口建立设备网络。出色抗噪和多设备能力,在工业应用中建立连向PC机的分布式设备网络、其他 数据收集 控制器、HMI或者其他操作时,串行连接会选择RS-485。RS-485是RS-422的超集,因此所有的RS-422设备可以被RS-485控制。RS-485可以用超过4000英尺的线进行串行通行。

为改进RS232通信距离短、速率低的缺点,EIA在基于RS422的基础上制定了RS485接口标准。RS485是平衡发送和差分接收,因此具有抑制共模干扰的能力,它的最大传输距离为1200米,实际可达3000米,传输速率最高可达10Mbit/s。所以,一般在要求通信距离为几十米到上千米时,会广泛采用RS-485串行通信。

RS-485采用半双工工作方式,允许在简单的一对屏蔽双绞线上进行多点、双向通信,不过任何时候只能有一点处于发送状态,因此,发送电路须由使能信号加以控制。

与RS232不同的是,RS485的工作方式是差分工作方式,所谓差分工作方式,是指在一堆双绞线中,一条定义为A,一条定义为B。RS485采用差分信号负逻辑,+2V~+6V表示“0”,- 6V~- 2V表示“1”。RS485有两线制和四线制两种接线,四线制是全双工通讯方式,两线制是半双工通讯方式。

RS485和RS232一样都是基于串口的通讯接口,数据收发的操作是一致的,但是它们在实际应用中通讯模式却有着很大的区别,RS232接口为全双工数据通讯模式,而RS485接口为半双工数据通讯模式,数据的收发不能同时进行,为了保证数据收发的不冲突,在RS485中还有一个使能端,使能端是用于控制发送驱动器与传输线的切断与连接,可以认为是一个开关。当开关即使能端信号为1时,信号就输出,当使能端信号是0时,信号就无法输出。相应也要求软件上必须将收发的过程严格地分开。

RS-485与RS-422的不同还在于其共模输出电压是不同的,RS-485是-7V至+12V之间,而RS-422在-7V至+7V之间;RS-485满足所有RS-422的规范,所以RS-485的驱动器可以用在RS-422网络中应用。RS-485与RS-422一样,其最大传输距离约为1219米,最大传输速率为10Mbps。平衡双绞线的长度与传输速率成反比,在100Kbps速率以下,才可能使用规定最长的电缆长度。只有在很短的距离下才能获得最高速率传输。一般100米长双绞线最大传输速率仅为1Mbps。

RS485接口组成的半双工网络,一般是两线制(以前有四线制接法,只能实现点对点的通信方式,现很少采用),多采用屏蔽双绞线传输。这种接线方式为总线式拓扑结构在同一总线上最多可以挂接32个结点。在RS485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。很多情况下,连接RS-485通信链路时只是简单地用一对双绞线将各个接口的“A”、“B”端连接起来。RS485接口连接器采用DB-9的9芯插头座,与智能终端RS485接口采用DB-9(孔),与键盘连接的键盘接口RS485采用DB-9(针)

(2) RS-485引脚定义

RS-485的两线制引脚定义:

 

序号 名称 作用 备注
1 Data-/B/485- 发送正 必连
2 Data/B/485+ 接收正 必连
5 GND 地线 不连
9 +9V 电源 不连

 

RS-485的四线制引脚定义:

 

序号 名称 作用 备注
1 TDA-/Y 发送A TXD+/A,必连
2 TDB+/Z 发送B TXD-/B,必连
3 RDA-/A 接收A RXD-,必连
4 RDB+/B 接收B RXD+,必连
5 GND 地线 不连

 

RS485标准物理接口也是9个引脚的,对于引脚定义有不同的标识:

英式标识为 TDA(-) 、TDB(+) 、RDA(-) 、RDB(+) 、GND

美式标识为 Y 、Z 、 A 、 B 、 GND

中式标识为 TXD(+)/A 、TXD(-)/B 、RXD(-) 、RXD(+)、GND

RS485两线一般定义为:“A、B"或"Date+、Date-” ,也就是我们即常说的485+、485- 。

具体还要根据厂家的使用信号针脚而定,有的RS485也可能使用了RTS或DTR等针脚。其中支持RS485接口的芯片(MAX481,MAX483,MAX485,MAX487,MAX1487等)。

(3)通信

在 RS485 通信网络中,通常会使用 485 收发器来转换 TTL 电平和 RS485 电平。各路节点连接到 485 收发器上,而收发器通过差分线连接到网络总线,串口控制器与收发器之间一般使用 TTL 信号传输,收发器与总线则使用差分信号来传输。发送数据时,串口控制器的 TX 信号经过收发器转换成差分信号传输到总线上,而接收数据时,收发器把总线上的差分信号转化成 TTL 信号通过 RX 引脚传输到串口控制器中。通常在这些节点中只能有一个主机,剩下的全为从机。在总线的起止端分别加了一个120 欧的匹配电阻。

数据传输

(4)硬件设计

RS485 与RS422 均采用差分平衡传输的方式,所以他们的电平方式,一般采用A、B 引脚的方式。
电平定义:
以U = A - B 的电压值为划分依据
发送端:逻辑1:+2V ~ +6V;逻辑0:-6V ~ -2V
接收端:逻辑1:>= 200mv;逻辑0:<= -200mv

信号电平转换:
在单片机设计系统中,常把信号电平在TTL 与485 之间转换,获得良好的传输质量,并使MCU更好的处理信号。
下图是485通信的应用电路设计:

数据传输

3V3与+5V是两组不共地的电源,一般用隔离型的DC-DC来实现。通过光耦隔离来实现信号的隔离传输,MAX485与MCU系统不共地,完全隔离则有效的抑制了高共模电压的产生,大大降低485的损坏率,提高了系统稳定性。但也存在电路体积过大、电路繁琐、分立器件过多,传输速率受光电器件限制等缺点,对整个系统的稳定性也有一定影响。

RS485_DIR:为控制位,控制发送还是接收数据;

当RS485_DIR=1(高电平时),光耦电路U3截止,/RE=1(无效),DE=1(有效),即发送数据;

当RS485_DIR=0 (低电平时),光耦电路U3导通,/RE=0(有效),DE=0(无效),即接收数据;

MAX485芯片管脚定义:

RO :串口接收端

DI :串口传输端

/RE:485接收端

DE: 485发送端

(5) RS485通信缺点

RS485总线是一种常规的通信总线,它不能够做总线的自动仲裁,也就是不能够同时发送数据以避免总线竞争,所以整个系统的通信效率必然较低,数据冗余量较大,对于速度要求高的应用场所不适应用RS485总线。同时由于RS485总线上通常只有一台主机,所以这种总线方式是典型的集中—分散型控制系统。一旦主机出现故障,会使整个系统的通信限于瘫痪状态,因此做好主机的在线备份是一个重要措施。

RS485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用,现在多采用的是两线制接线方式,这种接线方式为总线式拓朴结构在同一总线上最多可以挂接32个结点。在RS485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。很多情况下,连接RS-485通信链路时只是简单地用一对双绞线将各个接口的“A”、“B”端连接起来。而忽略了信号地的连接,这种连接方法在许多场合是能正常工作的,但却埋下了很大的隐患,有二个原因:

(1)共模干扰问题:RS-485接口采用差分方式传输信号方式,并不需要相对于某个参照点来检测信号,系统只需检测两线之间的电位差就可以了。但人们往往忽视了收发器有一定的共模电压范围,RS-485收发器共模电压范围为-7~+12V,只有满足上述条件,整个网络才能正常工作。当网络线路中共模电压超出此范围时就会影响通信的稳定可靠,甚至损坏接口。

(2)EMI问题:发送驱动器输出信号中的共模部分需要一个返回通路,如没有一个低阻的返回通道(信号地),就会以辐射的形式返回源端,整个总线就会像一个巨大的天线向外辐射电磁波。

由于PC机默认的只带有RS232接口,有两种方法可以得到PC上位机的RS485电路:

(1)通过RS232/RS485转换电路将PC机串口RS232信号转换成RS485信号,对于情况比较复杂的工业环境最好是选用防浪涌带隔离珊的产品。(2)通过PCI多串口卡,可以直接选用输出信号为RS485类型的扩展卡。

因为采用两线制,数据的发送和接收都要用到这对差分信号线,发送和接收不能同时进行,所以只能采用半双工的方式工作。

(6)优点

RS485标准规定采用差分信号进行数据传输,两线间的电压差为+2v到+6v表示逻辑“1”,两线间的电压差为-2v到-6v表示逻辑“0”。使用差分信号能有效的减少噪音信号的干扰,延长通信距离,RS485的通信距离可以达到1500m,RS485接口信号的电平比RS232降低了,所以不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便地与TTL电路连接。

RS485采用两线制,这种接线方式为总线式拓扑结构,在同一总线上,可以同时存在多个节点。

由于RS-485是从RS-422基础上发展而来的,所以RS-485许多电气规定与RS-422相仿。如都采用平衡传输方式、都需要在传输线上接终接电阻等。RS-485可以采用二线与四线方式,二线制可实现真正的多点双向通信。RS-485总线,在要求通信距离为几十米到上千米时,广泛采用RS-485 串行总线标准。RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。加上总线收发器具有高灵敏度,能检测低至200mV的电压,故传输信号能在千米以外得到恢复。 RS-485采用半双工工作方式,任何时候只能有一点处于发送状态,因此,发送电路须由使能信号加以控制。RS-485用于多点互连时非常方便,可以省掉许多信号线。应用RS-485可以联网构成分布式系统,其允许最多并联32台驱动器和32台接收器。

RS-485使用该标准的数字通信网络能在远距离条件下以及电子噪声大的环境下有效传输信号。RS-485使得连接本地网络以及多支路通信链路的配置成为可能。

该标准允许连接多个收发器,即具有多站能力,这样可以利用单一的RS485接口方便地建立起一个设备网络。

审核编辑 黄宇

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分