26118|11

4996

帖子

19

TA的资源

裸片初长成(初级)

楼主
 

RS485应用电路图 [复制链接]

最近在应用RS485,在网络上看见一篇好文章,转载与大家分享:

--------以上部分请勿修改!-------------
提高485总线的可靠性

摘 要:就485总线应用中易出现的问题,分析了产生的原因并给出解决问题的软硬件方案
和措施。
关键词:RS-485总线、串行异步通信


--------------------------------------------------------------------------------

1 问题的提出

在应用系统中,RS-485半双工异步通信总线是被各个研发机构广泛使用的数据通信总
线,它往往应用在集中控制枢纽与分散控制单元之间。系统简图如图1所示。


图1. RS-485系统示意图

由于实际应用系统中,往往分散控制单元数量较多,分布较远,现场存在各种干扰,所
以通信的可靠性不高,再加上软硬件设计的不完善,使得实际工程应用中如何保障RS-485总
线的通信的可靠性成为各研发机构的一块心病。

在使用RS-485总线时,如果简单地按常规方式设计电路,在实际工程中可能有以下两个问
题出现。一是通信数据收发的可靠性问题;二是在多机通信方式下,一个节点的故障(如死
机),往往会使得整个系统的通信框架崩溃,而且给故障的排查带来困难。

针对上述问题,我们对485总线的软硬件采取了具体的改进措施

2 硬件电路的设计

现以8031单片机自带的异步通信口,外接75176芯片转换成485总线为例。其中为了实现
总线与单片机系统的隔离,在8031的异步通信口与75176之间采用光耦隔离。电路原理图如
图2所示。


图 2 改进后的485通信口原理图

充分考虑现场的复杂环境,在电路设计中注意了以下三个问题。

2.1 SN75176 485芯片DE控制端的设计

由于应用系统中,主机与分机相隔较远,通信线路的总长度往往超过400米,而分机系
统上电或复位又常常不在同一个时刻完成。如果在此时某个75176的DE端电位为“1”,那
么它的485总线输出将会处于发送状态,也就是占用了通信总线,这样其它的分机就无法与
主机进行通信。这种情况尤其表现在某个分机出现异常情况下(死机),会使整个系统通信
崩溃。因此在电路设计时,应保证系统上电复位时75176的DE端电位为“0”。由于8031在复
位期间,I/O口输出高电平,故图2电路的接法有效地解决复位期间分机“咬”总线的问题。

2.2 隔离光耦电路的参数选取

在应用系统中,由于要对现场情况进行实时监控及响应,通信数据的波特率往往做得较
高(通常都在4800波特以上)。限制通信波特率提高的“瓶颈”,并不是现场的导线(现场
施工一般使用5类非屏蔽的双绞线),而是在与单片机系统进行信号隔离的光耦电路上。此
处采用TIL117。电路设计中可以考虑采用高速光耦,如6N137、6N136等芯片,也可以优化普
通光耦电路参数的设计,使之能工作在最佳状态。例如:电阻R2、R3如果选取得较大,将会
使光耦的发光管由截止进入饱和变得较慢;如果选取得过小,退出饱和也会很慢,所以这两
只电阻的数值要精心选取,不同型号的光耦及驱动电路使得这两个电阻的数值略有差异,这
一点在电路设计中要特别慎重,不能随意,通常可以由实验来定。

2.3 485总线输出电路部分的设计

输出电路的设计要充分考虑到线路上的各种干扰及线路特性阻抗的匹配。由于工程环境
比较复杂,现场常有各种形式的干扰源,所以485总线的传输端一定要加有保护措施。在电
路设计中采用稳压管D1、D2组成的吸收回路,也可以选用能够抗浪涌的TVS瞬态杂波抑制器
件,或者直接选用能抗雷击的485芯片(如SN75LBC184等)。

考虑到线路的特殊情况(如某一台分机的485芯片被击穿短路),为防止总线中其它分
机的通信受到影响,在75176的485信号输出端串联了两个20Ω的电阻R10、R11。这样本机的
硬件故障就不会使整个总线的通信受到影响。

在应用系统工程的现场施工中,由于通信载体是双绞线,它的特性阻抗为120Ω左右,
所以线路设计时,在RS-485网络传输线的始端和末端各应接1只120Ω的匹配电阻(如图2中
R8),以减少线路上传输信号的反射。

由于RS-485芯片的特性,接收器的检测灵敏度为± 200mV,即差分输入端VA-VB ≥
+200mV,输出逻辑1,VA-VB ≤-200mV,输出逻辑0;而A、B端电位差的绝对值小于200mV
时,输出为不确定。如果在总线上所有发送器被禁止时,接收器输出逻辑0,这会误认为通
信帧的起始引起工作不正常。解决这个问题的办法是人为地使A端电位高于B两端电位,这样
RXD的电平在485总线不发送期间(总线悬浮时)呈现唯一的高电平,8031单片机就不会被误
中断而收到乱字符。通过在485电路的A、B输出端加接上拉、下拉电阻R7、R9,即可很好地
解决这个问题。

3 软件的编程

485芯片的软件编程对产品的可靠性也有很大影响。由于485总线是异步半双工的通信总
线,在某一个时刻,总线只可能呈现一种状态,所以这种方式一般适用于主机对分机的查询
方式通信,总线上必然有一台始终处于主机地位的设备在巡检其它的分机,所以需要制定一
套合理的通信协议来协调总线的分时共用。这里采用的是数据包通信方式。通信数据是成帧
成包发送的,每包数据都有引导码、长度码、地址码、命令码、内容、校验码等部分组成。
其中引导码是用于同步每一包数据的引导头;长度码是这一包数据的总长度;命令码是主机
对分机(或分机应答主机)的控制命令;地址码是分机的本机地址号;“内容”是这一包数
据里的各种信息;校验码是这一包数据的校验标志,可以采用奇偶校验、和校验等不同的方
式。

在485芯片的通信中,尤其要注意对485控制端DE的软件编程。为了可靠的工作,在485
总线状态切换时需要做适当延时,再进行数据的收发。具体的做法是在数据发送状态下,先
将控制端置“1”,延时1ms左右的时间,再发送有效的数据,一包数据发送结束后再延时
1ms后,将控制端置“0”。这样的处理会使总线在状态切换时,有一个稳定的工作过程。

4 结论

经过以上的软硬件共同处理,RS-485总线在应用系统工程中的可靠性大大提高,在通常
的环境条件下,24小时连续开机,系统的通信始终处于正常状态,整机性能满足了现场工程
的需要。

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

尽管RS-485总线存在这样那样的问题,但由于它的线路设计简单、价格低廉、控制方
便,只要合理的使用在某些场所仍然能发挥良好的作用。

[ 本帖最后由 zhaojun_xf 于 2010-7-13 08:49 编辑 ]
此帖出自单片机论坛

最新回复

学习一下。。。   详情 回复 发表于 2021-7-1 11:34
点赞 关注
个人签名我的博客
 

回复
举报

4996

帖子

19

TA的资源

裸片初长成(初级)

沙发
 

RS485总线应用与选型指南

一、RS485总线介绍:

RS485总线是一种常见的串行总线标准,采用平衡发送与差分接收的方式,因此具有抑制共模干扰的能力。在一些要求通信距离为几十米到上千米的时候,RS485总线是一种应用最为广泛的总线。而且在多节点的工作系统中也有着广泛的应用。

二、RS485总线典型电路介绍:

RS485电路总体上可以分为隔离型与非隔离型。隔离型比非隔离型在抗干扰、系统稳定性等方面都有更出色的表现,但有一些场合也可以用非隔离型。

我们就先讲一下非隔离型的典型电路,非隔离型的电路非常简单,只需一个RS485芯片直接与MCU的串行通讯口和一个I/O控制口连接就可以。如图1所示:

1、典型485通信电路图(非隔离型)

当然,上图并不是完整的485通信电路图,我们还需要在A线上加一个4.7K的上拉偏置电阻;在B线上加一个4.7K的下拉偏置电阻。中间的R16是匹配电阻,一般是120Ω,当然这个具体要看你传输用的线缆。(匹配电阻:485整个通讯系统中,为了系统的传输稳定性,我们一般会在第一个节点和最后一个节点加匹配电阻。所以我们一般在设计的时候,会在每个节点都设置一个可跳线的120Ω电阻,至于用还是不用,由现场人员来设定。当然,具体怎么区分第一个节点还是最后一个节点,还得有待现场的专家们来解答呵。)TVS我们一般选用6.8V的,这个我们会在后面进一步的讲解。

RS-485标准定义信号阈值的上下限为±200mV。即当A-B>200mV时,总线状态应表示为“1”;当A-B<-200mV时,总线状态应表示为“0”。但当A-B±200mV之间时,则总线状态为不确定,所以我们会在AB线上面设上、下拉电阻,以尽量避免这种不确定状态。

三、隔离型RS485总线典型电路介绍

在某些工业控制领域,由于现场情况十分复杂,各个节点之间存在很高的共模电压。虽然RS-485接口采用的是差分传输方式,具有一定的抗共模干扰的能力,但当共模电压超过RS-485接收器的极限接收电压,即大于+12V或小于-7V时,接收器就再也无法正常工作了,严重时甚至会烧毁芯片和仪器设备。
    解决此类问题的方法是通过DC-DC将系统电源和RS-485收发器的电源隔离;通过隔离器件将信号隔离,彻底消除共模电压的影响。实现此方案的途径可分为:
    (1)传统方式:用光耦、带隔离的DC-DC、RS-485芯片构筑电路;
    (2)使用二次集成芯片,如ADM2483、ADM2587E等。

传统光电隔离的典型电路:(如图2所示)

 

2、光电隔离RS485典型电路

图中我们以高速光耦6N137为例(当然只是示意图)来说明一下隔离型RS485电路。VDDVCC485是两组不共地的电源,一般用隔离型的DC-DC来实现。通过光耦隔离来实现信号的隔离传输,ADM487MCU系统不共地,完全隔离则有效的抑制了高共模电压的产生,大大降低了485的损坏率,提高了系统的稳定性。但也存在电路体积过大、电路繁琐、分立器件过多、传输速率受光电器件限制等缺点,对整个系统的稳定性也有一定的影响。

隔离型RS485器件来实现隔离传输:(如图3所示)

3、隔离型RS485芯片ADM2483应用图

ADM2483ADI推出的隔离型485芯片,SOW-16封装,内部集成了一个三通道的磁隔离器件和一个半双工485收发器,2500V隔离电压、传输速率500K、共模电压抑制能力25KV/μS。但此电路仍需双电源供电,因此也会在一定程度上存在电路体积过大的问题。(一般我们会在7脚接4.7K--10K的上拉电阻)

完全隔离型RS485器件实现隔离传输:(如图4所示)

4、完全隔离型RS485/422芯片ADM2587E应用图

ADM2587EADIADM2483之后,推出的单电源隔离型485芯片。SOW-20封装,2500V隔离电压,全/半双工、传输速率500K、共模电压抑制能力25KV/μS±15KVESD保护。适合用于工控、电力、仪表、安防等各种485隔离场合。

四、RS485总线保护电路

隔离虽然能有效的抑制高共模电压,但总线上还会存在浪涌冲击、电源线与485线短路、雷击等潜在危害,所以我们一般会在总线端采取一定的保护措施。

一般我们会在VAVB上各串接一个410ΩPTC电阻,并在VAVB各自对地端接68VTVS管,当然也可用普通电阻与稳压二极管代替。更多的还可以加热保险丝、防雷管,不过并不是说这些加的越多越好,具体要看实际应用,如果这些保护太多的话,也会影响到整个系统的节点数,与通信稳定性。

五、485应用的一些小经验

1、收发时序不匹配:

   485是半双工的通信,收发转换是需要一定的时间的,所以一般在收发转换之间,和每发送完一帧数据之后,都要有相应的延时,如果出现收发不正常、或第一帧数据之后就出现误码现象,则可以适当的增加一下延时时间,以观问题是否解决。

2、R0接上拉电阻:

  异步通信数据以字节的方式传送,在每一个字节传送之前,先要通过一个低电平起始位实现握手。为防止干扰信号误触发RO(接收器输出)产生负跳变,使接收端MCU进入接收状态,建议RO外接10kΩ上拉电阻。

3、合理选用芯片。

例如,对外置设备为防止强电磁(雷电)冲击,建议选用TI的75LBC184等防雷击芯片,对节点数要求较多的可选用SIPEX的SP485R。此外经我们实验发现,ADI的非隔离型485芯片ADM487E、隔离型芯片ADM2483、ADM2587在多节点、防雷击方面也有着很好的表现。

六、维护RS-485的常用方法

1)若出现系统完全瘫痪,大多因为某节点芯片的VA、VB对电源击穿,使用万用表测VA、VB间差模电压为零,而对地的共模电压大于3V,此时可通过测共模电压大小来排查,共模电压越大说明离故障点越近,反之越远;
    2)总线连续几个节点不能正常工作。一般是由其中的一个节点故障导致的。一个节点故障会导致邻近的2~3个节点(一般为后续)无法通信,因此将其逐一与总线脱离,如某节点脱离后总线能恢复正常,说明该节点故障;
    3)集中供电的RS-485系统在上电时常常出现部分节点不正常,但每次又不完全一样。这是由于对RS-485的收发控制端TC设计不合理,造成微系统上电时节点收发状态混乱从而导致总线堵塞。改进的方法是将各微系统加装电源开关然后分别上电;
    4)系统基本正常但偶尔会出现通信失败。一般是由于网络施工不合理导致系统可靠性处于临界状态,最好改变走线或增加中继模块。应急方法之一是将出现失败的节点更换成性能更优异的芯片;
    5)因MCU故障导致TC端处于长发状态而将总线拉死一片。提醒读者不要忘记对TC端的检查。尽管RS-485规定差模电压大于200mV即能正常工作。但实际测量:一个运行良好的系统其差模电压一般在1.2V左右(因网络分布、速率的差异有可能使差模电压在0.8~1.5V范围内)。

后记:

作者:jerrymiao,QQ:253263136,jerrymiao@adum.com.Cn    由于作者水平有限,文章难免有纰漏之外,部分电路与经验仅为作者个人观点,欢迎大家验证,并联系作者批评指证,谢谢!

此帖出自单片机论坛
 
个人签名我的博客
 

回复

2639

帖子

0

TA的资源

五彩晶圆(中级)

板凳
 
谢谢分享,我们一般是用3光耦隔离+184,防雷还是用专门的防雷栅,光耦对防雷不起作用,波特率高还要考虑器件的延时
此帖出自单片机论坛
 
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

4
 

回复 板凳 fengzhang2002 的帖子

能否共享一下,你的485通信原理图???
此帖出自单片机论坛
 
个人签名我的博客
 
 

回复

2954

帖子

0

TA的资源

纯净的硅(初级)

5
 
有人讲一讲一些细节,关于这里的一些器件的选择最好了
此帖出自单片机论坛
 
个人签名不断地学习,才会有创新!
淘宝小店:手机、qq点卡、游戏点卡自动充值 http://shop63727265.taobao.com/
 
 

回复

3138

帖子

0

TA的资源

裸片初长成(初级)

6
 

讨论一哈...

 上文对485分析得很细致,不过在上下拉电阻取4.7k的说法上似稍有遗漏。

 如图,为保证在A、B开路情况下RS485的差动电压不小于200mV(绝对值),上下拉电阻R1、R2的选取应和VCC有关。当终端电阻为120Ω,VCC为5V时,根据分压比可算出R1、R2应不大于1.4kΩ才合理。

 

RS485_1.gif (2.9 KB, 下载次数: 21)

RS485_1.gif
此帖出自单片机论坛
 
 
 

回复

3138

帖子

0

TA的资源

裸片初长成(初级)

7
 

再继续深究...

闁哄被鍎冲﹢鍛村嫉椤掆偓缁楁﹢宕楅妸鈺佸姤閻犱降鍔忛鎴︽晬瀹€鍐惧殲闁谎嗩嚙缂嶏拷闁瑰瓨鐗為埀顒婃嫹婵炲鍔岄崬锟�

RS485_2.gif (3.06 KB, 下载次数: 10)

RS485_2.gif
此帖出自单片机论坛
 
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

8
 

回复 7楼 仙猫 的帖子

闁哄被鍎冲﹢鍛村嫉椤掆偓缁楁﹢宕楅妸鈺佸姤閻犱降鍔忛鎴︽晬瀹€鍐惧殲闁谎嗩嚙缂嶏拷闁瑰瓨鐗為埀顒婃嫹婵炲鍔岄崬锟�
此帖出自单片机论坛
 
个人签名我的博客
 
 

回复

35

帖子

0

TA的资源

一粒金砂(初级)

9
 
闁哄被鍎冲﹢鍛村嫉椤掆偓缁楁﹢宕楅妸鈺佸姤閻犱降鍔忛鎴︽晬瀹€鍐惧殲闁谎嗩嚙缂嶏拷闁瑰瓨鐗為埀顒婃嫹婵炲鍔岄崬锟�
此帖出自单片机论坛
 
 
 

回复

315

帖子

8

TA的资源

一粒金砂(中级)

10
 
闁哄被鍎冲﹢鍛村嫉椤掆偓缁楁﹢宕楅妸鈺佸姤閻犱降鍔忛鎴︽晬瀹€鍐惧殲闁谎嗩嚙缂嶏拷闁瑰瓨鐗為埀顒婃嫹婵炲鍔岄崬锟�
此帖出自单片机论坛
 
个人签名给生活一个梦想,给奋斗一个方向!---淘宝搜索逸嵌电子工作室
 
 

回复

48

帖子

0

TA的资源

一粒金砂(中级)

11
 
闁哄被鍎冲﹢鍛村嫉椤掆偓缁楁﹢宕楅妸鈺佸姤閻犱降鍔忛鎴︽晬瀹€鍐惧殲闁谎嗩嚙缂嶏拷闁瑰瓨鐗為埀顒婃嫹婵炲鍔岄崬锟�
此帖出自单片机论坛
 
 
 

回复

7

帖子

0

TA的资源

一粒金砂(初级)

12
 
闁哄被鍎冲﹢鍛村嫉椤掆偓缁楁﹢宕楅妸鈺佸姤閻犱降鍔忛鎴︽晬瀹€鍐惧殲闁谎嗩嚙缂嶏拷闁瑰瓨鐗為埀顒婃嫹婵炲鍔岄崬锟�
此帖出自单片机论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
艾睿电子& Silicon Labs 有奖直播 | 全新蓝牙信道探测:从技术创新到实际应用
直播时间:3月12日(周三)上午10:00
直播奖励:多功能榨汁机、蓝牙音箱、手机支架

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表