RS-485总线.doc
《RS-485总线.doc》由会员分享,可在线阅读,更多相关《RS-485总线.doc(31页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流RS-485总线.精品文档.目录摘要 2 第一部分 RS485总线应用综述 311 RS-485标准规范 312 RS-485可靠性设计问题 413 RS-485 多机通讯网络实现 8 第二部分 会议表决系统的485网络硬件实现 102 1 系统总体设计方案论证 10 211 系统框图设计 11 2. 2 芯片选择考虑 12 2. 2. 1 单片机89C2051及通讯接口芯片MAX3085/3082 12 23 电路设计 1324 PCB板的制作 1425 电路调试 15 第三部分 基于485总线的会议系统多机通讯编程 16 3. 1AT89
2、C2051的串口通讯原理 16 3. 2 PC和单片机的多机通讯测试 21 3. 3 会议系统软件设计思路 23331 分层管理软件模式和通讯协议 23 34 主机部分编程实现 27 3. 5 分机部分编程实现 293 6 Microwire EEPROM 编程 313. 7 PC 用户软件的实现 34附录 35小结与致谢 36 参考文献 36 RS-485总线多机通讯实现会议表决系统研制 论文作者:潘剑锋 指导老师:陈耀和 摘要RS-485总线作为一种允许多点、差分数据传输的通讯电气规范,定义了一个极为坚固可靠的通信链路,具有长传输距离、宽共模范围、信号冲突保护和良好的抑制高噪声等特性。本文
3、在研究讨论RS-485总线的特点及组网技术的基础上,对RS-485总线多机通讯能力在一个会议表决系统上的实现进行了设计总结,较为详细地阐述了设计要点和关键技术。此外对系统中应用的Micro wire总线93CXX系列串行CMOS EEPROM的读写编程也作了一个较为深入的讨论,并给出了一个通用的读写程序。 关键字 RS-485总线、 多机通讯、 Micro wire总线 、 93CXX 系列串行CMOS EEPROM Implement of multiple communication by RS-485 standard bus and application in meeting vot
4、e system author: Pan Jianfeng adviser: Chen YaoheAbstractRS-485, is a communication electrical standard which allows multipoint, differentiate data transmission. Its perfect specialties of long distance transmission, wide common mode bound, fail-safe for signal clash and good noise control defined a
5、 strongly link for serial communication. This article study base on the feature of RS-485 and its implementation of multiple communication, and call about the application in a meeting vote system.Additionally, we also make a discussion about the 93CXX family of serial CMOS EEPROM which are based on
6、the Micro wire bus. A universal program is given out. KeywordRS-485 bus、 multiple communication、 Micro wire bus 93CXX family of serial CMOS EEPROM第一部分 RS-485总线应用综述 1. 1RS-485标准规范RS-485由来RS-485标准是由两个行业协会于1983年共同制订合开发的,即EIA电子工业协会和TIA通讯工业协会。EIA开始时在它所有的标准前加上“RS”前缀(推荐标准Recommended standard的缩写)。这个名称一直延用至今
7、,现在EIA-TIA已正式用“EIA/TIA”取代“RS”以明确其来源。修订后命名为TIA/EIA-485-A。不过我们还是习惯地称之为RS-485。RS-485由RS-422发展而来。两者是工业应用中最成功的标准。而RS-422是一个差分标准,是为了弥补RS232的不足提出来的,改进了RS-232通讯距离短和速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到了10Mbps,在速率低于1000Kbps时传输距离延长到4000英尺,并且允许在一条平衡线上连接最多10个接收器,可以说RS-422是一种单机发送、多机接收的单向传输规范。RS-485是在RS-422的基础上,为了扩展应
8、用范围和通讯能力,增加了多点、双向通信能力,也就是说,允许多个发送器连接到同一条总线上,同时,增加了发送器的驱动能力和通讯冲突的保护特性,通过差分传输扩展总线的共模范围。RS-485满足了所有的RS-422规范,但反之则不成立。RS-485规范RS-485实质上是一个电气接口规范,它只规定了平衡驱动器合接收器的电特性,而没有规定插件、传输电缆与及通信协议。只是对应于七层模型中的物理层。RS-485的接口规范特点:平衡传输、差动工作模式多点通信 驱动器带载最小输入电压:1.5V驱动器带载最大输入电压:5V最大输出短路电流:250mA驱动器输出阻抗: 54接收器输入门限:200mV接收器最小输入阻
9、抗:12K7V至12V总线共模范围最大输入电流1.0mA/-0.8 mA (12Vin/-7Vin)接收器输出逻辑高:200mV接收器输出逻辑低:200mV 最大总线负载:32个单位负载允许收发器数目:32Tx 、32Rx最大传输速率:10Mbps最大电缆长度:4000英尺(约1.2千米)RS-485标准定义了一个基于单对平衡线的多点、双向(半双工)的通讯链路,提供了高噪声抑制、高的传输速率、长传输距离、宽共模范围和低成本的通信平台。12 RS-485可靠性设计问题涉及到RS-485的可靠性设计的问题很多。在整个设计的过程中,我收集整理了关于这些方面的资料并且在设计中注意到了这些问题,通过设计
10、实验的观察和思考,基本弄清了其产生的原因及原理和解决方案。RS-485网络连接和节点配置事实上,虽然RS-485规范的定义里只定义了一个双线通讯链路,但是在实际使用中,我们可以利用一条或者两条这样的链路来建立实用的通讯网络,也就是说,RS-485可以很好的支持半双工和全双工的通讯模式。一般的,对于一条这样的链路,网络的拓扑结构采用终端匹配的总线型结构。而不支持常见的星型或者环形结构。485总线的网络配置实际上对通讯的可靠性是影响巨大的,特别是在通信距离的延长和通信数据传送速率或者说通信所用波特率的提高之后,不良影响会越来越严重。以下(1)、(2)、(3)是一些常见的错误的连接方案,其中的小圆圈
11、代表一个接收/发图 1 常见错误连接及改正方案送器单元。连线表示连接总线的电缆,一般我们采用双绞线作为这个连接介质。在(4)、(5)、(6)里,我给出了对应于(1)、(2)、(3)的连接改正方案。(1)、(2)、(3)连接方案,虽然在某些情况下,比如很短的距离,对通信速率要求不高,可以采用低速率,而且收发单元也很少等场合,可能可以实现通信。但一旦这些方案用于通信距离长,和通信速率要求高的现场,就可能出现不能通信。主要的原因就是信号在各个支路会发生信号反射,和原信号叠加,造成了信号的不稳定性。另外,由电磁学理论我们知道,反射还可能发生在线路阻抗不连续或者起伏较大的地方,比如不同线路段采用了不同的
12、电缆,某个段连接了很多收发器而另一段却很少,又或者某收发单元到主干总线的连线太长,都可能出现阻抗的不连续,发生信号反射。总线的配置还涉及到连接的收发器数目问题,RS-485总线没有给出一个允许连接的收发器数目的标准规定,但是规定了最大的总线负载容量,那就是最多接32个单位负载,每个单位负载的最大输入电流是1.0mA/-0.8mA,也就是相当于12K。这就给接口芯片一个扩充收发器的可能性,器件生产商通过增大收发器的输入电阻从而达到增加节点数的目的。在我们的这个系统的设计中,因为要求的节点(分机)很多,采用的就是现在可以达到的最大允许限度,接256个的收发器。对于这个问题,在EIA485 中给出了
13、说明,即所谓的UNIT LOAD定义,一个UNIT LOAD 的标准收发单元的输入电阻就是12k。当使用的是这种标准收发单元时,总线上只可以接32个收发器。现在有些收发器为1/4UNIT LOAD 或者1/8 UNIT LOAD ,这就是说输入电阻分别是48K和96K,这样,总线上的节点数就可以增大到128个或者256个。总线匹配和节点引出线为了解决总线上的发射和干扰,有时候就需要对总线进行终端匹配,由于RS-485一般是用UART (Universal Asynchronous Receiver/Transmitter 通用异步接收/传送器) 方式进行通讯,而UART是在每个数据的中点采样数
14、据的,只要反射信号在采样开始时已经衰减到可以忽略,那就不用考虑总线匹配问题。总线匹配问题和数据传输速率、电缆长度、与及信号转换速率等都有关系,判断在什么样的情况下需要加匹配有一个经验性的原则: 当信号的转换时间(上升或者下降时间)超过电信号沿总线单向传输所需的时间的3倍以上时就可以不加匹配。当要求考虑匹配时,一般的我们采用在总线两端各接一个阻值等于电缆特性阻抗的电阻,例如双绞线的这个特性阻抗是100至120之间。这个电阻就可以选择在这个访问范围,如图2(a)。 另外还可以用RC匹配,如图2(b);或者使用一种加二极管的方案,如图2(c)。 这几种方案都有不同的特点:(a)有一个缺点,即匹配电阻
15、要消耗电流,不适用于那些需要低功耗的系统。(b)的RC网络很省电,但C值很难确定,要在功耗和匹配效率间折衷考虑。另外这种方法对信号的质量也产生破坏。(c)实际上没真正实现匹配,但利用了二极管的钳位作用削弱了反射,改善了信号质量,而且节能效果很好。在上面已经提了一下,在节点支路最容易产生反射,其中节点引出线是个最大的影响因素,在图1中我们也看到,其错误连接就是因为节点的引出线太长了。几乎可以比拟主干线。事实上,一个485系统可以允许的引出线长度和信号的转换时间、数据速率很有关系,有个经验公式可以粗略计算这个最大长度:Lmax=(rise0.2m/ns)/10(rise可以是上升或者下降时间)在设
16、计中我们选择了MAX3085/3082作为接口芯片,对应于它们的250ns的上升/下降时间,节点单元(分机)的最大引出线由上式算得约为5米。摆率限制(Slew-rate limited)其实在上面的分析我们也可以看到,如果增大信号的上升或者下降时间,也就是减缓信号的前后沿斜率,对降低总线匹配和引出线长度的要求,改善信号的质量,都是很有利的,另外对于信号中的高频成分还可以有抑制作用,减少了电磁辐射。这就是所谓的摆率限制措施。但是这种做法也限制了数据的传输速率。失效保护 (Fail-safe)RS-485标准规定接收器门限为200mV。这样能够提供较高的噪声抑制能力。但是,也会有一个问题:当总线上
17、的信号处于-200mV+200mV之间时,接收器接收到的信号状态无法确定,注意到UART是以一个“0”电位作为起始位开始一个数据帧的传递的,所以这个 不定态可能会使UART错误的接收一些数据,从而导致系统进行错误动作。这个问题是不容忽视的,特别是对于实时性要求很高和控制要求高的场合,误操作的后果是很严重的。而当系统总线空闲、开路、或者短路时都有可能出现两线电压低于200mV的情况。故必须采用有效的措施来避免接收器处于不定态。传统的做法是给总线加偏置电阻。这样在空闲或者开路是把总线偏置到一个确定态。但是这种方法不能解决总线短路问题。在我们设计过程中,考虑了这个问题,采用的MAX3085/3085
18、芯片是有失效保护的。它采用的方法很巧妙,也是现在解决这个问题的最好方法:将接收门限移到200mV/-50mV,这样就解决了在总线短路下的失效问题。因为这样规定的门限,对于大于50mV我们就确定为“1”态,对于短路状态下的“0V”当然就是确定的“1”态。总线接地问题对于电子系统的设计。我们知道电源和接地问题是一个非常关键的问题,如果处理不好,经常导致不能稳定的工作甚至危及系统安全。对于一个可靠的RS-485系统也是这样。因为在RS-485的规范中只是强调了用两根双绞线实现系统的通讯线路A(+)和B(-),受此影响。一个错误的观点是认为RS-485链路不需要信号地,只要把A和B 线路用两个双绞线连
19、起来就行了,因为RS-485接口是用差分方式传输信号的,并不需要相对于某个参照地来检测信号,系统只需要检测两线间的电位差就可以了。无可否认在某些情况下这是可以工作的,但是也给系统留下了很大的隐患。一个问题就是共模干扰,注意到收发器只有在共模电压不超过一定的范围(-7V+12V)条件下才能正常工作,所以当共模电压超出这个范围时通讯的可靠性就受到考验了。严重的话还可能烧毁接口。图3 共模干扰模型 VCM= Vos VGPD如图3给出的模型,发送器A对发送器B发数据时,A输出的共模电压为Vos,如果A、B 是不共地的话。那么就可能存在地电位差VGPD。那么接收器B输入的共模电压就会达到VCM=Vos
20、 VGPD 。RS-485标准规定Vos3V,但是注意到VGPD可能会有很大的幅度(甚至几十伏特)且可能伴有强的干扰信号,这样B接收端输入VCM就有可能超出正常范围,在信号线上引入干扰电流,影响通信甚至烧毁电缆。除了共模干扰,还有一个就是电磁辐射(EMI)对总线的影响,驱动器输出信号中的共模部分需要一个返回通路,如果系统没有接地的回路,共模信号没有一个低阻的回路,就会以电磁辐射的方式返回源端,整个总线就像一个长天线一样向外辐射电磁波。这样造成的信号损失和信息泄漏是很严重的。接地的措施其实很多,不过这些措施与共模干扰的频率和干扰源的内阻有关,图4给出了一些不同情况下可考虑的措施: 图 4 接地方
21、案 (1):干扰源内阻大,直接加一低阻信号地线; (2):干扰源内阻小,在(1)的基础上可以在信号地回路中加电阻,不过注意到这可能会增大共模电压,R1、R2的取值要控制好,不能影响通信;(3):浮地接法,当干扰源内阻实在太小,这种方法是可行的,因为隔断了接地回路,形成的环路电流不会很大;(4):如果在(3)情况下,信号地和大地或机壳不能隔断,那这种电气隔离的方法是可行的。当然,以上所述的各种情况都是在低频率的情况下适用,如果是高频瞬态干扰就不能这样考虑了。因为引线有电感,这个接地回路对瞬态干扰等于开路,瞬态干扰的产生我们可以想象得到,系统周边的别的大功率感性器件,如电机、变压器、继电器等等,甚
22、至最平常的就是闪电了。采用的措施可以类似图4 中的(4)的电气隔离方法。或者用放电管等瞬态抑制器件,总之最终目的就是将瞬态放出的能量引到大地上去。静电放电保护(ESD)对于一个工作在实际的环境中的系统,所受到的外界影响是多种多样的,静电放电(Electrostatic Discharge)就是一个很关键的问题。国际工业标准规定的静电放电有关规定主要有:IEC (1000-4-2)规定:15KV气隙放电;8KV接触放电;15KV人体模型IEC (1000-4-4)规定:4KV电快速瞬变(鉴定中)放电现象是很普遍存在的,上面给出的人体模型等就给出了一个标准。这些都会损坏总线收发器的端口,从而破坏通
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RS 485 总线
限制150内