[通讯协议]485通信

RS-485简介

RS-485(简称485)是一种差分信号传输标准,使用的协议就是串口协议。它具有以下通信能力:

  • 传输速率:最高传输速率为10Mbps在短距离 (<100米) 时,速率可达10Mbps;在长距离(1200米)时,速率通常降至约100kbps。
  • 传输距离:最大传输距离标准值为1200米,在9600bps时可达1200米,实际应用中甚至可达3000米。
  • 通信方式:半双工,支持多点通信,总线上允许连接多达128个收发器,适合构建设备网络。
  • 抗干扰能力:采用差分信号传输,抗干扰能力强,适合工业环境。
  • 适用场景:适用于长距离、多设备的工业网络,如PLC控制系统、楼宇自动化等。

差分电压范围

  • 发送端
    • 逻辑“1”:A线相对于B线的电压差为 +2V 至 +6V。
    • 逻辑“0”:A线相对于B线的电压差为 -2V 至 -6V。
  • 接收端
    • 逻辑“1”:差分电压大于 +200mV。
    • 逻辑“0”:差分电压小于 -200mV。

空闲状态

在485电路设计中,通常会在A上加上拉电阻,B上加下拉电阻,以保证总线空闲时AB间的压差不会让接收器误收数据。在空闲状态下,AB间的压差应该尽量小于200mV。
由于电路上终端电阻和接入的负载输出电阻的影响,空闲状态的AB压差会不同,这里就大概展示一下计算方法:
在这里插入图片描述

通信故障的可能原因和排查方法

1. 接线错误或短路

  • 常见问题:A/B线接反、A/B对地或电源短路、线间短路。
  • 排查方法:用万用表测量A/B线对地电压,检查线间是否短路或接触不良。

2. 终端电阻配置错误

  • 问题:未接或错误接多组终端电阻可能导致负载过重或信号反射。
  • 检查:确保总线仅有两端接120Ω电阻,中间节点不接。

3. 驱动器能力不足或故障

  • 供电问题:电源电压不足或驱动器芯片损坏。
  • 负载过重:总线挂接过多接收器或驱动器输出电流不足。
  • 解决方案:检查供电电压是否稳定,减少总线节点数量或选用驱动能力更强的芯片。

4. 通信未激活或模式配置错误

  • 问题:驱动器未使能或总线处于空闲状态。
  • 验证方法:确保发送数据时驱动器已使能,观察AB压差变化。

5. 信号反射或干扰

  • 长线未匹配:信号反射导致压差降低。
  • 电磁干扰:强干扰源耦合到总线,影响信号传输。
  • 应对措施:增加终端电阻、缩短总线长度或使用屏蔽双绞线并接地。

6. 芯片或电路设计缺陷

  • 芯片选型不当:选用低功耗或半双工芯片可能导致驱动能力不足。
  • 偏置电阻缺失:某些设计需要在A/B线上拉/下拉电阻,确保空闲状态压差。
  • 检查数据手册:确认芯片的驱动电流、负载能力、偏置电阻要求是否符合当前设计。

以上列出的故障原因和排查方法可以帮助您解决RS-485通信中可能遇到的问题。

一个数字隔离的SP385电路

在这里插入图片描述
RX、TX通过数字隔离器传输信号到下一级,这里是一个自动切换收发模式的电路(速度较慢115200波特率就有可能通信错误),因为单片机的UART的TX空闲时是高电平 所以Q29三极管默认是打开的,RE为低电平,485默认在接受状态,通过RO返回AB上接收的信号,这就是接收的原理,当发送时分两种情况,发0时,三极管不导通,DE被上拉为高电平,485进入发送模式,AB间电平由DI决定,DI接地所以发送的是0,发1时,三极管导通,RE被拉低,485进入接受模式,此时AB是高阻态,电压由外部上下拉觉得,由于A上拉B下拉,所以A>B 发送的是1,由此实现发1和发0的逻辑,后面的两个保护器件,AB之间的是抑制共模噪声和瞬态电压的,D15主要是防静电击穿。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值