《RS485串行通信协议及其应用.doc》由会员分享,可在线阅读,更多相关《RS485串行通信协议及其应用.doc(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流RS485串行通信协议及其应用 概述 串行数据通信的协议从RS-232到千兆位以太网,虽然每种协议都有特定的应用领域,但任何情况下我们都必须考虑成本和物理层(PHY)性能。本文主要介绍RS-485协议及该协议所适合的应用。同时给出了根据电缆长度、系统设计以及元件选择来优化数据速率的方法。 传输协议 什么是RS-485?Profibus又是什么?与其它串行协议相比,它们的性能如何?适用于哪些应用?为了回答这些问题,我们对RS-485物理层(PHY)、RS-232和RS-422的特性、功能进行了总体比较1 (本文中的RS表示ANSIEIA/TIA
2、标准)。RS-232是一个最初用于调制解调器、打印机及其它PC外设的通讯标准,提供单端20kbps的波特,后来速率提高至1Mbps。RS-232的其它技术指标包括:标称5V发送电平、3V接收电平(间隔/符号)、2V共模抑制、2200PF最大电缆负载电容、300最大驱动器输出电阻、3k最小接收器(负载)阻抗、100英尺(典型值)最大电缆长度。RS-232只用于点对点通信系统,不能用于多点通信系统,所有RS-232系统都必须遵从这些限制。 RS-422是单向、全双工通信协议,适合嘈杂的工业环境。RS-422规范允许单个驱动器与多个接收器通信,数据信号采用差分传输方式,速率最高可达50Mbps。接收
3、器共模范围为7V,驱动器输出电阻最大值为100,接收器输入阻抗可低至4k。 RS-485标准 RS-485是双向、半双工通信协议,允许多个驱动器和接收器挂接在总线上,其中每个驱动器都能够脱离总线。该规范满足所有RS-422的要求,而且比RS-422稳定性更强。具有更高的接收器输入阻抗和更宽的共模范围(-7V至+12V)。 接收器输入灵敏度为200mV,这就意味着若要识别符号或间隔状态,接收端电压必须高于+200mV或低于-200mV。最小接收器输入阻抗为12k,驱动器输出电压为1.5V (最小值)、5V (最大值)。 驱动器能够驱动32个单位负载,即允许总线上并联32个12k的接收器。对于输入
4、阻抗更高的接收器,一条总线上允许连接的单位负载数也较高。RS-485接收器可随意组合,连接至同一总线,但要保证这些电路的实际并联阻抗不高于32个单位负载(375)。 采用典型的24AWG双绞线时,驱动器负载阻抗的最大值为54,即32个单位负载并联2个120终端匹配电阻。RS-485已经成为POS、工业以及电信应用中的最佳选择。较宽的共模范围可实现长电缆、嘈杂环境(如工厂车间)下的数据传输。更高的接收器输入阻抗还允许总线上挂接更多器件。 Profibus和Fieldbus2总线主要用于工业设备,是RS-485总线的扩展。用于工业环境的传感器测量、激励控制、数据采集/显示以及过程控制系统与传感器、
5、激励源网络之间的数据通信。 注意:老式或现有的工业设备布线架构比较复杂,不可替换。 Profibus和Fieldbus是对系统的整体描述。RS-485支持Profibus和Fieldbus协议的物理层接口标准。Profibus与Fieldbus存在细微的差异,Profibus要求2.0V的最小差分输出电压,54的负载电阻;Fieldbus则要求1.5V的最小差分输出电压,54的负载电阻。Profibus传输速率为12Mbps,Fieldbus的传输速率为500kbps。Profibus应用对摆率和电容容限要求比较严格。 最适合的应用领域? RS-232:用于与调制解调器、打印机及其它PC外设之
6、间的通信。最大电缆长度为100英尺(典型值)。 RS-422:适用于单主机(驱动器)工业环境。典型应用包括:过程自动化(化工、酿造、造纸)、工厂自动化(汽车制造、金属加工)、HVAC、安防、电机控制、运动控制等。 RS-485:适用于多主机/驱动器工业环境。其典型应用与RS-422相似,包括:过程自动化(化工、酿造、造纸)、工厂自动化(汽车制造、金属加工)、HVAC、安防、电机控制、运动控制。 哪些因素限制了RS-485的数据速率? 在指定的传输距离下,下列因素限制了传输速率: 电缆长度:在特定频率下,信号强度会随着电缆长度而衰减。 电缆架构:5类24AWG双绞线是RS-485系统最常用的电缆
7、,屏蔽电缆可大大增强噪声抑制能力,提高了一定距离下的数据传输速率。 电缆特性阻抗:分布电容和分布电感会降低信号的边沿速度,从而降低噪声裕量、补偿“眼图模板”特性。分布电阻直接导致信号电平的衰减。 驱动器输出阻抗:阻抗过高会限制驱动能力。 接收器输入阻抗:阻抗过低会限制与驱动器通信的接收器数量。 终端匹配:长电缆可看作传输线。电缆上应接阻值等于电缆特性阻抗的终端匹配电阻,可以降低信号反射,并提高数据速率。 噪声裕量:越大越好。 驱动器摆率:降低边沿速率(降低信号摆率)允许采用较长的电缆进行通信。 经验数据 了解了以上相关的背景知识,接下来我们研究一个实际系统,如图1所示。图中所示电缆是RS-48
8、5系统最为常用的一种:EIA/TIA/ANSI 568 5类双绞线。在长度为300英尺至900英尺的电缆上可以获得的数据速率为1Mbps至35Mbps。 图1. 测试装置 系统设计人员经常从两个不同厂商选择驱动器和接收器,多数设计人员最关注的是RS-485驱动器的传输距离和速度。Maxim驱动器(这里指MAX3469)与其它制造商的驱动器性能比较如图2、图3所示。 图2. 在特定比特率、电缆长度下的抖动特性,抖动是在100mV差分信号下测量的 图3. 在特定比特率、电缆长度下的抖动指标,抖动是在0V差分信号下测量的 通过观察驱动器的差分输出信号的完整性,利用示波器确定80mV与-400mV之间
9、的翻转门限(由于接收器具有200mV至-200mV的输入范围和噪声裕量,因此选取这一门限范围)。然后,当脉冲(比特)开始“传送”时,用眼图确定失真度、噪声以及码间干扰(ISI)。 ISI指标限制了比特率,以保证系统能够在脉冲之间识别出传输数据。对图1电路的测试结果表明翻转门限与眼图模板之间具有相关性。该眼图模板存在50%的抖动,按照NATIONAL SEMICONDUCTOR的应用笔记#9773所介绍的方法进行测量。测量0V差分信号和100mV差分信号下的抖动,得到图4和图5所示数据。 图4. Maxim的MAX3469与其它RS-485驱动器件的眼图对比4 图5. MAX3469的眼图 对于
10、一个点到点通信系统,从100mV差分信号(图4)或0V差分信号(图5)下的测试结果可以看出比特率与电缆长度的关系。+100mV和-100mV门限能够正确切换差分信号大于200mV的信号,因此,该门限值可确保接收器正确接收数据(图5数据仅适用于可在0V差分输入下切换的理想接收器)。 眼图和故障模式 采用340英尺的5类电缆,图2给出了39Mbps传输速率下的驱动器输出眼图,图中,信号从“眼”的中间穿过 - 这种情况表明可能出现误码。然而,在相同数据速率下,Maxim公司的器件不会出现这种情况(图3)。Maxim的收发器具有对称的输出边沿和较低的输入电容,性能良好。 采用上述测试对两款驱动器进行比
11、较。当数据速率较高、电缆较长时,Maxim驱动器的性能更出色。图5给出点对点网络中Maxim器件的传输速率和距离的估计值。根据经验,所产生的误码大致符合50%抖动极限的要求。 各方研究数据 在工业领域,通常可接受的传输距离和数据速率的最大值分别为4000英尺和10Mbps,当然这两个值不能同时满足。然而,利用最新器件和精细的系统设计,可在较长的电缆下实现较高的数据吞吐率。 预加重5是一种改善数据速率与距离间关系的技术,可用于RS-485通信(图6)。采用1700英尺电缆,工作在1Mbps固定数据速率,没有预加重驱动器或均衡接收器的RS-485收发器通常具有10%的抖动。在相同速率下,增加驱动器
12、预加重可使距离加倍,达到3400英尺,而且不会提高抖动。同样,距离一定时采用预加重能提高数据速率。速率为400kbps,电缆长度为4000英尺时,无预加重的驱动器通常具有10%的抖动。而采用预加重可使该距离下的传输速率提升至800kbps。 图6. 数据速率与电缆长度的关系图 另一种估算可靠传输的最大电缆长度的方法是:利用5类电缆制造商提供的幅度衰减与频率的关系表。根据通用规则,电缆工作时最大允许的信号衰减是-6dBV。该数值结合厂家提供的衰减数据,计算出给定频率下的最大电缆长度。 应用技巧 RS-485收发器具有多种改善系统性能的特性: 预加重(上文所述):降低码间干扰 降低接收器单位负载:
13、低负载器件可低至1/8单位负载,允许总线上挂接最多256个器件。这种器件还可降低总线负载,从而允许较长的电缆和较高的传输速率。 高速器件:目前可提供数据速率高达52Mbps的驱动器,这种高速器件须特别注意保持低传输延迟和低偏差。 ESD保护:ESD保护不会提高数据速率,但会改善系统工作或数据速率为0 (开路)时的可靠性。目前能够提供15kV的内置ESD保护。 正确的接线6:RS-485用于差分传输,除地线外还需要两条信号线来传输数据(通常为24 AWG双绞线)。这两条信号线传送极性相反的信号,大大减少了EMI辐射和EMI干扰问题。电缆的特性阻抗一般为120,这也是电缆末端终端匹配电阻的阻值 目
14、的在于降低反射和其它线路的影响。图7、图8给出了正确的系统连接。 图7. 单发/单收网络 图8. 多机收发网络 结论 综上所述,RS-485网络可在噪声环境下实现可靠的数据传输。设计系统时需要对数据速率、电缆长度进行折衷考虑,能够在几百米长的电缆上实现高于50Mbps的数据速率,而不需使用任何中继器。 RS-485接口芯片介绍及应用中的有关问题 摘要本文结合实际应用介绍RS-485接口芯片的种类和一些常见问题的解决方法。关键词RS-485节点数半(全)双工抗雷击光电隔离1引言RS-485接口芯片已广泛应用于工业控制、仪器、仪表、多媒体网络、机电一体化产品等诸多领域。可用于RS-485接口的芯片
15、种类也越来越多。如何在种类繁多的接口芯片中找到最合适的芯片,是摆在每一个使用者面前的一个问题。RS-485接口在不同的使用场合,对芯片的要求和使用方法也有所不同。使用者在芯片的选型和电路的设计上应考虑哪些因素,由于某些芯片的固有特性,通信中有些故障甚至还需要在软件上作相应调整,如此等等。希望本文对解决RS-485接口的某些常见问题有所帮助。2RS-485接口标准传输方式:差分传输介质:双绞线标准节点数:32最远通信距离:1200m共模电压最大、最小值:+12V;-7V差分输入范围:-7V+12V接收器输入灵敏度:200mV接收器输入阻抗:12k3节点数及半双工和全双工通信3.1节点数所谓节点数
16、,即每个RS-485接口芯片的驱动器能驱动多少个标准RS-485负载。根据规定,标准RS-485接口的输入阻抗为12k,相应的标准驱动节点数为32。为适应更多节点的通信场合,有些芯片的输入阻抗设计成1/2负载(24k)、1/4负载(48k)甚至1/8负载(96k),相应的节点数可增加到64、128和256。表1为一些常见芯片的节点数。表1 节点数型号32SN75176,SN75276,SN75179,SN75180,MAX485,MAX488,MAX49064SN75LBC184128MAX487,MAX1487256MAX1482,MAX1483,MAX3080MAX30893.2半双工和全
17、双工RS-485接口可连接成半双工和全双工两种通信方式,如图1所示。半双工通信的芯片有SN75176、SN75276、SN75LBC184、MAX485、MAX1487、MAX3082、MAX1483等;全双工通信的芯片有SN75179、SN75180、MAX488MAX491、MAX1482等。(a)半双工通信电路(b)全双工通信电路图14应用中的常见问题4.1抗雷击和抗静电冲击RS-485接口芯片在使用、焊接或设备的运输途中都有可能受到静电的冲击而损坏。在传输线架设于户外的使用场合,接口芯片乃至整个系统还有可能遭致雷电的袭击。选用抗静电或抗雷击的芯片可有效避免此类损失,常见的芯片有MAX4
18、85E、MAX487E、MAX1487E等。特别值得一提的是SN75LBC184,它不但能抗雷电的冲击而且能承受高达8kV的静电放电冲击,是目前市场上不可多得的一款产品。4.2限斜率驱动由于信号在传输过程中会产生电磁干扰和终端反射,使有效信号和无效信号在传输线上相互迭加,严重时会使通信无法正常进行。为解决这一问题,某些芯片的驱动器设计成限斜率方式,使输出信号边沿不要过陡,以不致于在传输线上产生过多的高频分量,从而有效地扼制干扰的产生。如MAX487、SN75LBC184等都具有此功能。4.3故障保护故障保护技术是近两年产生的,一些新的RS-485芯片都采用了此项技术,如SN75276、MAX3
19、080MAX3089。什么是故障保护,为什么要有故障保护,如果没有故障保护会产生什么后果?众所周知,RS-485接口采用的是一种差分传输方式,各节点之间的通信都是通过一对(半双工)或两对(全双工)双绞线作为传输介质。根据RS-485的标准规定,接收器的接收灵敏度为200mV,即接收端的差分电压大于、等于+200mV时,接收器输出为高电平;小于、等于-200mV时,接收器输出为低电平;介于200mV之间时,接收器输出为不确定状态。在总线空闲即传输线上所有节点都为接收状态以及在传输线开路或短路故障时,若不采取特殊措施,则接收器可能输出高电平也可能输出低电平。一旦某个节点的接收器产生低电平就会使串行
20、接收器(UART)找不到起始位,从而引起通信异常,解决此类问题的方法有两种:(1)使用带故障保护的芯片,它会在总线开路、短路和空闲情况下,使接收器的输出为高电平。确保总线空闲、短路时接收器输出高电平是由改变接收器输入门限来实现的。例如,MAX3080MAX3089输入灵敏度为-50mV/-200mV,即差分接收器输入电压UAB-50mV时,接收器输出逻辑高电平;如果UAB-200mV,则输出逻辑低电平。当接收器输入端总线短路或总线上所有发送器被禁止时,接收器差分输入端为0V,从而使接收器输出高电平。同理,SN75276的灵敏度为0mV/-300mV,因而达到故障保护的目的。(2)若使用不带故障
21、保护的芯片,如SN75176、MAX1487等时,可在软件上作一些处理,从而避免通信异常。即在进入正常的数据通信之前,由主机预先将总线驱动为大于+200mV,并保持一段时间,使所有节点的接收器产生高电平输出。这样,在发出有效数据时,所有接收器能够正确地接收到起始位,进而接收到完整的数据。4.4光电隔离在某些工业控制领域,由于现场情况十分复杂,各个节点之间存在很高的共模电压。虽然RS-485接口采用的是差分传输方式,具有一定的抗共模干扰的能力,但当共模电压超过RS-485接收器的极限接收电压,即大于+12V或小于7V时,接收器就再也无法正常工作了,严重时甚至会烧毁芯片和仪器设备。解决此类问题的方法是通过DC-DC将系统电源和RS-485收发器的电源隔离;通过光耦将信号隔离,彻底消除共模电压的影响。实现此方案的途径可分为:(1)用光耦、带隔离的DC-DC、RS-485芯片构筑电路;(2)使用二次集成芯片,如PS1480、MAX1480等。以上主要介绍在不同场合如何选择合适的RS-485接口芯片,和可能碰到的有关问题的解决方法,从而避免通信异常。至于其它诸如终端匹配、传输线的选择和屏蔽、通信速率的选择等等,在一些相关资料中都能找到答案,这里就不再介绍了。.精品文档.RS-485串行数据通信协议及其应用