欢迎来到天天文库
浏览记录
ID:5996870
大小:111.32 KB
页数:4页
时间:2017-12-30
《rs485总线冲突检测方案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第25卷第8期武汉理工大学学报Vol.25No.82003年8月JOURNALOFWUHANUNIVERSITYOFTECHNOLOGYAug.2003具有硬件CSMA/CD的RS-485总线控制网设计122徐炜,尤佳,王治祥(1.温州医学院管理信息学院,温州325027;2.温州大学信息学院,温州325027)摘要:论述在全双工RS-485总线控制网中应用硬件电路实现CSMA/CD(带冲突检测的载波侦听多址接入)功能的设计方法。这种方法克服了主从式多址轮询应答方式所带来的轮询周期过长缺点,提高了控制网络的实时性。该方法已成功运用于实际应用系统。最后指出了在全双工RS-48
2、5网络上实现对等网通信的方法。关键词:载波监听/载波侦听;冲突检测;CSMA/CD;RS-485;中继器中图分类号:TP273文献标识码:A文章编号:1671-4431(2003)08-0060-03当今越来越多的MCU产品通过通信网络连成实时控制网络,虽然控制网络种类很多,如:FF总线Profibus总线、Interbus总线、Can总线[1],但成本低应用广的还是RS-485总线控制网。大多数MCU控制的RS-485网络使用总线型的拓扑结构,并采用主从式多址轮询(poling)方式实现多址接入,即所有通信节点共享一条通信线路,主节点按照地址依次轮流查询每一从节点,被查询
3、的从节点返回相应的数据或空操作。这种方法有明显的缺点:轮询周期随从节点数量增大而延长,系统反应变慢。近年来,使用软件处理的载波侦听方法开始应用于MCU控制网系统,以试图解决轮询周期长的问题。其思想是:用软件检测接收缓冲器,以接收缓冲器有无数据来代替总线上是否有数据。这种软件侦听方法检测的不是通信总线上的实时情况,由于串行输入缓冲器状态的更新是在检测到停止位后(即接收完一个字节之后),因此,软件侦听方法是有滞后的不可能真正有效避免数据碰撞。论述的采用硬件线路检测总线上一帧数据的起始位,实时侦听串行通信总线状态的多址接入技术,已用于“IC卡综合收费系统”。该方法能有效避免通信总
4、线上的数据碰撞,降低节点间的通信延时,提高了控制网络的数据吞吐量。1RS┐485总线网的CSMA/CD技术实现1.1总线侦听原理及其硬件实现CSMA(CarrierSenseMultipleAccess载波检测多址接入)是局域网的MAC子层中应用得最广泛的技术,其基本原则是:任一个网络节点在发送数据之前,首先要检测通信总线是否有别的节点正在发送数据的[2]信号,如果检测到这种信号,说明信道正忙,不能发送数据;否则信道空闲,可以发送数据。实现RS-485总线控制网的载波侦听/碰撞检测(CSMA/CD)硬件原理图见图1。挂在该总线的任一节点都具有如图1所示的双CPU(U3、U4
5、)结构,并接有2个RS-485收发器U1、U2。其中U1的接收器R用于接收主节点发送的数据,U2的发送器D用于发送本节点的数据,从而构成全双工的通信。U2的接收器R则用于侦听发送总线并将侦听到的总线状态输入到计数器U6的CLK端,当U2接收器侦听到串行总线一帧数据的起始位“0时,必定产生一个下降沿供U6计数器进行计数,该计数器的输出输入到或非门U7,或非门的输出连接到节点的主CPU(即U3)上。主CPU可判定总线的状态,若为“0”,则说明总线忙,若为“1”,说明总线空闲,继而决定是否发送数据。从发送节点开始发送数据,到总线网上最远端的节点上或非门产生“0”输出的延时时间T=
6、T[3]p1+Tp2+τ,τ为数字信号在电缆中传播时间(≈5μs),Tp1、Tp2为计数器和或非门的门电路延时,最收稿日期:2003-03-27.作者简介:徐炜(1965-),男,讲师.E-mail:xuwei1@mail.wz.zj.cn第25卷第8期徐炜,等:具有硬件CSMA/CD的RS-485总线控制网设计61大为600ns。因此,T最大为6.2μs。1.2碰撞检测的必要性和实现方法虽然每个节点在发送数据前进行了总线侦听,但还是有可能发生数据碰撞。这是因为:1)当通信总线长度达到1km时,发送数据沿通信总线从一端传导到另一端的延时τ不能忽略(τ≈5μs),因为单片机检
7、测总线状态,只需一条指令,约1μs,因此,在一个节点检测总线状态的同时另一端有一个节点正好开始发送数据,那么此节点必然检测到一个虚假的“空闲”状态;2)当其中一个节点发送结束,与它距离相等或相近的2个节点可能同时侦听到总线空闲,从而同时发送数据造成总线上数据的碰撞(冲突)。所以,CSMA总线侦听并不能完全消除通信图1CSMA/CD硬件原理图总线上的数据“碰撞”,有必要采用碰撞检测技术。图2发送时总线侦听流程图图3碰撞检测流程图在“IC卡综合收费系统”的设计中,采用一系列软件处理方法来实现碰撞的检测。首先,边说边听。
此文档下载收益归作者所有