RS-485总线前世今生;

2023-11-02

一、RS232和RS485的区别

   RS-232采取的是单端不平衡传输方式,其收发端的数据信号都是相对于地信号的,所以共模抑制能力 差。再加上双绞线分布电容的影响,其最大传输距离仅为15米,最高传输速率只有20kbit/s(=2560Byte/s)。

485总线采用了平衡发送和差分接收接口标准,使用半双工工作方式。在发送端将串行口的TTL电平信号转换成差分信号由A、B两线输出,经过双绞线传输到接收端后,再将差分信号还原成TTL电平信号。因此具有极强 的抗共模干扰能力,加之总线收发器灵敏度很高,可以检测到低至200mV的电压。故传输信号经过千米以上的衰减后都可以完好恢复。在100kbit/s的 传输速率下,通信距离可以达到1200米左右。如果通信距离较短,其最大传输速率可达10Mbit/s。如果需传输更长的距离,需要增加485中继器。

二、RS485组线方式2.485总线的特点

RS-485采用半双工工作方式,支持多点数据通信。RS-485总线网络拓扑一般采用终端匹配的总线型结构。即采用一条总线将各个节点串接起来,不支持环形或星型网络。

如果需要使用星型结构,就必须使用485中继器或者485集线器。

RS-485/422总线一般最大支持32个节点,如果使用特制的 485芯片,可以达到256个节点或更多。

三. 485总线布线规则

   为了避免数据传输错误,在485总线的布线设计和施工中,应特别注意以下几点:

       3.1、屏蔽干扰

485总线传送的是一对差分信号,485网络上各设备之间的数据传输线最好采用外加屏蔽层的双绞线,屏蔽层应在一个点可靠接地。

       3.1、特殊时侯使用光电隔离中断器

在工业现场应用中,如果现场干扰源非常复杂,各节点之间可能存在很高的共模电压。

虽然485接口使用的是差分传输方式,具有抗共模干扰能力。

但是当共模电压大于+12V或者小于-9V时,就超过了485接收器的极限接收电压,接收器将无法工作,甚至可能烧毁芯片和设备。此时,应在485总线网络中使 用485光隔离中继器,从而消除共模电压的影响。

3.2、终端匹配120R电阻

短距离这内,无需接这个电阻;但是当总线内的RS485设备多,并且传输距离长,485总线网络上会产生回波反射信号,建议在485网络的开始端和结束端并接120Ω电阻。

建议:如果485总线的传输距离超过100米,要装这个电阻;

 

  四、 485星形总线布线(须借助485中断器)

   虽然485不能接成星形或环形,只能接成总线拓朴布线,但是拓朴型接线,出故障时不易排查,布线也不方便;

为了提高前期施工布线效率,为了有利于查故障和维修,那么我们可以从广议上接成星形总线,但是必须借助RS485中断器;

 485总线星形拓扑结构

 
485总线树型拓扑结构

五. 标准的拓线式接线方法

       这是标准的RS485总线接线方式,有的会使用RS485中断器,有的会使用RS485集线器;

       在单一的RS485总线网络内,最好能在网络的首端设备和尾端之间接120R电阻,以保证RS485总线的稳定性;如果不接有的时候也没关系,但是距离长了以后,可能抗干扰能力就会减弱;

      120R终端匹配电阻标准接法: 485总线网络的首端设备和末端设备上各接一个120欧姆的终端电阻,该电阻并接在485总线的正负两线之间。如下图所示:

无RS485中断器,拓朴总线

 

有RS485中断器,拓朴总线 

 

 

RS485集线器,拓朴总线

 六、偏置电路

              1、关于偏置电路中的上下拉电阻,一般只在主机中使用,在从机不需要接这上拉下拉电阻;

 

2、如何计算:

485在同一个总线上只能有一处上下拉,两个120Ω终端电阻。按485设计标准挂32个设备,每个设备阻抗>12k.  32个12K并联为 375Ω,375和2个120Ω并联,总负载为52Ω左右,因此你的上下拉电阻和这个52Ω串在一起,两端电压为5V,52欧姆上要分得电压至少要 200mV以上,上下拉为624欧姆左右。大于这个值都会导致最大负载下空闲总线电平压差低于200mv,为不确定状态。

 

3、排除问题1

线长会出现问题,线短没问题,一般是终端电阻的原因。同样相同的距离,低波特率正常,高波特率错误,也是终端电阻的原因。你以前正常,不代表你设计没问题。最简单的办法,用示波器看波形,绝对有反射,波形变形。

 

              4、排除问题2

485布线采用线性拓扑结构,终端要加在起始端和末尾端,你主站在哪里无所谓。主站也是个485设备,和从站一样的。两个终端电阻需要加在线路的首端和末 端。你应该用示波器看看波形,再确定采取何种操作。如果波形变形,电压幅值是够的,则是终端匹配问题。如果波形没有变形,但是电压幅值不够,则是你的 485驱动能力不足。更换485 IC即可。

曾经对于485加强驱动能力做过这样两种尝试,①末端增加上下拉电阻②末端增加匹配电阻,都能达到加强485驱动能力的效果。

 

              5、关于偏置电中的来由

                     上下拉电阻的专业术语叫”偏置电路",它的作用是在总线上所有节点处于接收状态时,保持总线电压为高电平。 RS485的规范里面高电平是压差大于200mV.

当你考虑最坏的情况,就是负载最大的时候52Ω,也需要偏置电路中这个52欧姆总负载上的电压差要大于200mv,低于200mv时RS485接收器的输出状态是不确定的。

当然现在有很多的485芯片都有空闲(压差小于200mv)输出信号保持高电平的功能。偏置电路的存在使得你设计的电路对所有的485芯片来说,都可以让它空闲输出保持高电平。

当然如果你要更深入地考虑485接收器滞回电压,总线信号干扰等因数时,你需要适当地大于200mv这个值。

485测试时,各种参数测试条件都是在最大负载下为54Ω的测试结果,他们测试的终端电阻为125欧姆,375并两个125及为54.1欧姆。但一般实际应用中终端电阻选择的是120欧姆。

 


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

RS-485总线前世今生; 的相关文章

随机推荐

  • 【华为OD机试真题 python】密室逃生游戏【2022 Q4

    题目描述 密室逃生游戏 小强增在参加 密室逃生 游戏 当前关卡要求找到符合给定 密码K 升序的不重复小写字母组成 的箱子 并给出箱子编号 箱子编号为 1 N 每个箱子中都有一个 字符串s 字符串由大写字母 小写字母 数字 标点符号 空格组成
  • JS中的逻辑与和逻辑或

    JS中的逻辑或 符号 从字面上来说 只有前后都是 false 的时候才返回 false 否则返回 true console log 5 gt 6 6 gt 5 返回true 5 gt 6为false 但是 6 gt 5为true 所以返回
  • python-selenium页面定位不到元素

    1 查看是否有新的url打开 当前页面 mainHandle driver current window handle 获取所有的handle Handles driver window handles 循环遍历 找到不是当前页面的就切换
  • vue获取元素offsetTop,mounted获取不到offsetTop,获取元素距离页面顶边距离

    记录一下开发过程中遇到的坑 今天想做一个功能 当我评论完之后 页面跳到评论区顶部 于是就要获取到评论区距离页面顶部的距离 需要循环获取offsetTop来实现 但是在mounted阶段是无论如何都获取不到offsetParent的 不管是
  • C# 对数据库操作的函数总结

    SqlCommand ExecuteNonQuery 方法对连接执行 Transact SQL 语句并返回受影响的行数 可以写也可以读 1 可以使用ExecuteNonQuery 来执行目录操作 例如查询数据库的结构或创建诸如表等的数据库对
  • Unet 语义分割模型(Keras)

    文章目录 前言 一 什么是语义分割 二 Unet 1 基本原理 2 mini unet 3 Mobilenet unet 4 数据加载部分 参考 前言 最近由于在寻找方向上迷失自我 准备了解更多的计算机视觉任务重的模型 看到语义分割任务重U
  • BAT文件里注释符号

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 在BAT文件批处理中注释的方式如下 1 注释内容 第一个冒号后也可以跟任何一个非字母数字的字符 2 rem 注释内容 不能出现重定向符号和管道符号 3 echo 注释内容
  • nginx配置https访问

    01 http https HTTP HyperText Transfer Protocol 超文本传输协议 是一种用于分布式 协作式和超媒体信息系统的应用层协议 简单来说就是一种发布和接收 HTML 页面的方法 被用于在 Web 浏览器和
  • 在ubuntu上安装splint

    lint lint是最著名的C语言工具之一 是由贝尔实验室SteveJohnson于1979在PCC PortableC Compiler 基础上开发的静态代码分析 一般由UNIX系统提供 工具介绍 与大多数C语言编译器相比 lint可以对
  • 试图理解 Decagon(二)具体方法

    4 图卷积 Deacgon 方法 综述 关系被表示为一个图 G V R 其中 节点N 蛋白质 药物 vi V 和标记的边 vi r vj r代表边的类型 分别由 蛋白质间的作用 某种药物 与其作用蛋白质间的关系 存在于某两种药物间的副作用关
  • SQLSERVER登录与JDBC连接事宜

    这半天都在帮副主席搞这个 比较最重要的两个点 SQLServer创建用户登录 https www cnblogs com vuenote p 10143434 html 使用JDBC连接SQLSERVER数据库 https www cnbl
  • C51单片机期末复习第八章单片机接口技术

    一 总线 传送同类信息的连线 三总线 地址总线AB 数据总线DB 控制总线CB 目录 ppt给的没啥用 乱还不全 8 1 单片机的系统总线 8 2 简单并行I O口扩展 8 3 可编程并行I O口扩展 8 4 D A转换与DAC0832应用
  • vue 自定义月日历日程组件(MSchedule)

    效果图 组件的使用 日程内容可以自定义 状态对应颜色可以自定义
  • vue 动态组件component标签

    vue 提供了一个内置的
  • python笔记:#013#高级变量类型

    高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 int 浮点型 float 布尔型 bool 真 True 非 0 数 非零即真 假 Fal
  • Ubuntu root账户登陆电脑

    vi etc pam d gdm autologin 屏蔽 auth required pam succeed if so user root quiet success vi etc pam d gdm password 屏蔽auth r
  • nextLine().split(“[\\s]“)的意思

    Scanner sc new Scanner System in String a sc nextLine split s 这句话的意思是 把输入的字符串以 s 为条件分割成一个String数组 s表示空格 回车 换行等空白符 当然 单表示
  • 学python的第十五天---简单数论

    模运算 一 刷题统计 二 快速幂 三 RSA解密 GCD LCM 四 核桃的数量 最小公倍数 五 Hankson 的趣味题 六 寻找整数 素数 七 笨小孩 八 质数 九 分解质因数 模运算 ab mod m a mod m b mod m
  • Java实现比较版本号

    涉及到客户端的系统中经常需要用到比较版本号的功能 但是比较版本号又不能完全按照字符串比较的方式去用compareTo之类的方法 这就需要我们总结版本号的通用规则 设计一个比较算法并封装成通用方法来使用 通常版本号如 1 3 20 8 6 8
  • RS-485总线前世今生;

    一 RS232和RS485的区别 RS 232采取的是单端不平衡传输方式 其收发端的数据信号都是相对于地信号的 所以共模抑制能力 差 再加上双绞线分布电容的影响 其最大传输距离仅为15米 最高传输速率只有20kbit s 2560Byte