电路笔记(通信):RS-485总线 物理层规范 接口及其组成部分 瑞萨电子RS-485总线笔记
- RS-485 是一种有线数字接口,用于在长距离上传输串行二进制数据。该接口采用双绞线差分信号传输,具有较强的抗外部噪声干扰能力,从而确保数据传输的可靠性。
1. RS-485 Components
- RS-485 接口最简单的形式是发送器(或驱动器,D)与接收器(R)之间的数据链路,如图 1 所示。传输介质为一对双绞线,接收端通过终端电阻(RT)进行匹配终端。
1.1 RS-485 Driver
-
驱动器将其输入端(DI)上的 CMOS/TTL 逻辑电平转换为差分输出电压,要求输出电压 V O D ≥ ± 1.5 V V_{OD} \geq \pm1.5V VOD≥±1.5V。
-
驱动器具有一个非反相输出(Y),其相位与输入相同,以及一个反相输出(Z),其相位与 Y 相反,因此也与 DI 相反。输出电压定义为:
V O D = V Y − V Z V_{OD} = V_Y - V_Z VOD=VY−VZ -
因此:
- 当 V Y > V Z V_Y > V_Z VY>VZ 时, V O D ≥ + 1.5 V V_{OD} \geq +1.5V VOD≥+1.5V
- 当 V Y < V Z V_Y < V_Z VY<VZ 时, V O D ≤ − 1.5 V V_{OD} \leq -1.5V VOD≤−1.5V
1.2 Receiver Input Voltage Levels
-
接收器是一个比较器,它检测差分输入电压( V I D = V A − V B V_{ID} = V_A - V_B VID=VA−VB),其灵敏度可低至 ±0.2V,并将其转换为 CMOS/TTL 逻辑电平输出(RO)。
-
接收器具有一个非反相输入端(A),其相位与输出端(RO)一致;另一个是反相输入端(B),其相位与 RO 相反。
- 当 V I D ≥ + 0.2 V V_{ID} \geq +0.2V VID≥+0.2V 时,RO = 高电平
- 当 V I D ≤ − 0.2 V V_{ID} \leq -0.2V VID≤−0.2V 时,RO = 低电平
-
需要记住的两个重要要点:
▪ 接收器只根据输入之间的电压差来工作,而忽略任何共模电压(即两个输入端相对于接收器地之间共同存在的电压)。
▪ 驱动器输出电压范围(±1.5V)与接收器输入灵敏度(±0.2V)之间的巨大差异,赋予了系统极强的抗外部噪声干扰能力。 -
想更深入理解驱动器和接收器的工作原理,可阅读《TB506:RS-485 驱动器和接收器的功能原理》。
1.3 RS-485 Cable
-
RS-485 中使用的传输电缆是屏蔽或非屏蔽的双绞线类型,其特性阻抗为 Z₀ = 120Ω。
-
双绞线的优势在于:当穿过电磁噪声环境时,每根导线都会受到几乎相同的外部干扰。这种特性使得导线之间产生的是相同的噪声电压(共模噪声),而这种共模噪声可以被差分接收器有效抵消,从而保证数据传输的可靠性。
1.4 Termination Resistor, RT
-
RS-485 要求在靠近电缆远离驱动器一端添加一个终端电阻,该电阻的作用是吸收传输信号波的能量,防止信号在电缆末端反射,造成通信错误。
-
这个终端电阻的阻值应当与电缆的特性阻抗相匹配,即:
RT = Z₀(终端电阻 = 电缆特性阻抗) -
注:常用双绞线的特性阻抗为 120Ω,因此终端电阻也应设置为 120Ω。
- 如果电缆未加终端电阻,信号将在电缆末端发生反射,反射信号会干扰驱动器的输出信号,从而导致数据错误。图6展示了总线在加终端电阻与未加终端电阻情况下的信号波形对比。
- 注:
- 信号振铃是什么?如何产生的?
- 信号中振铃现象及解决方法
2. Transceiver Types
- 一个 RS-485 网络中存在一个主要的总线节点,称为主节点(master)。该主节点与多个从节点(slave)进行数据交换,因此每个总线节点都需要具备发送和接收数据的能力。尽管这些功能可以通过单独的驱动器(transmitter)和接收器(receiver)来实现,但从制造的角度来看,将发送器和接收器功能集成到一个单一器件中更为高效,这种器件被称为收发器(transceiver)。
- 收发器有两种类型:半双工收发器(见图7)和全双工收发器(见图8)。
- 这两种类型的收发器都允许通过专用的使能输入(Enable 输入)分别控制其发送和接收功能。
- 接收使能引脚(/RE)为逻辑低电平时,接收器被激活,会将接收器输入端的差分信号转换为逻辑电平输出到接收器输出端(RO)。当 /RE 为逻辑高电平时,接收器被禁用,RO 进入高阻态(高阻抗)。
- 当驱动使能引脚(DE)为逻辑高电平时,驱动器被激活,会将驱动输入端(DI)上的逻辑电平转换为 RS-485 信号输出到驱动器的输出端。当 DE 为逻辑低电平时,驱动器被禁用,其输出端进入高阻态(高阻抗)。
- 由于半双工收发器的驱动器输出端与接收器输入端在内部是连接在一起的,该器件可以进行数据的发送或接收,但不能同时进行。
- 然而,全双工收发器可以同时进行数据的发送和接收,从而实现更高的数据吞吐量。
3. Network Applications
- 一个 RS-485 网络中有一个主导的总线节点,即主节点(master node),它与多个从节点(slave nodes)进行数据交换。主节点始终由其发起数据传输。从节点接收来自主节点的数据,并在被指令时对主节点进行响应。因此,数据交换构成了一个双向通信过程,要求每个总线节点都能够接收和发送数据。由于每个总线节点都具备驱动功能,RS-485 被称为一个多驱动器(multi-driver)或多点(multi-point)总线。
3.1 Half-Duplex Bus Network
-
半双工总线是一种网络结构,其中主节点在任意时刻只能发送或接收数据,不能同时进行这两个操作。该类型的总线只需要一对信号线进行数据传输,常用于长距离通信网络,其传输距离最长可达 4000 英尺(约 1200 米),在该距离下的数据传输速率最高可达 100 kbps(见图 9)。
-
半双工网络的典型应用通常包括工业自动化系统的工厂车间,以及商业建筑自动化系统中的暖通空调(HVAC)、照明和扶梯网络。
3.2 Full-Duplex Network
-
在全双工网络中,主节点可以同时发送和接收数据,大大提高了数据吞吐量。然而,该总线需要两对信号线,使得长距离布线成本过高。因此,其应用局限于长度最多100英尺(约30米)、数据速率最高可达50Mbps的短距离网络(见图10)。
-
全双工网络的典型应用包括工业机器人、地震网状网络以及移动网络的基站。
CG
- https://www.renesas.com/en/document/tra/r15tb0002-rs-485-crash-course-part-1-basics-tutorial