收藏 分销(赏)

超声测距系统设计.doc

上传人:精**** 文档编号:3162440 上传时间:2024-06-21 格式:DOC 页数:9 大小:79KB
下载 相关 举报
超声测距系统设计.doc_第1页
第1页 / 共9页
超声测距系统设计.doc_第2页
第2页 / 共9页
超声测距系统设计.doc_第3页
第3页 / 共9页
超声测距系统设计.doc_第4页
第4页 / 共9页
超声测距系统设计.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、基于P87C591的CAN总线超声测距系统设计移动机器人的安全避障问题一直是该项研究的基本问题,目前解决此问题的基本方法是采用多路超声波传感器通过适当的安装角度达成获取多路测量信息的目的。对于多路超声波传感器的扩展,一般是在机器人系统控制核心之上进行。这样做的缺陷在于,超声波传感器的扩展占用了大量的系统硬件资源,此外大量的测量信息的解决也浪费了系统软件资源。针对这一问题,笔者采用CAN总线扩展多路超声波传感器的作法。这种作法有几个优点:一方面,CAN总线具有良好的传输防错设计,保证了数据通信的可靠性;另一方面,多路超声波传感器的设计可由CAN总线智能节点实现,大大节省了系统硬件资源和软件资源;

2、第三,由于CAN总线对于网络内的节点数在理论上不受限制,所以随着对移动机器人研究的不断进一步,对于整个机器人系统的总体设计可以灵活地在 CAN总线上进一步开发。本文介绍的CAN总线智能节点的设计以Philips公司的P87C591作为超声波传感器的控制核心。由于P87C591具有片上自带的CAN控制器并且为CAN的应用提供了许多专用的硬件功能,因此又将它作为了系统的CAN总线控制器,大大节省了主控系统的资源。CAN总线的收发器采用TJA1040。系统总体结构框图如图1所示。机器人系统控制核心由ARM实现。其重要功能是解决需要复杂计算的信息,将通过解决的信息再送回CAN总线,并对整个网络进行管理

3、。超声波智能节点控制系统的重要功能就是判断障碍物位置,将对移动机器人前进方向有阻碍的障碍物信息通过CAN总线传回主控系统,由主控系统作出相应解决并进行避障动作。本文将着重介绍超声波智能节点控制系统。图1 系统总体结构框图1 超声波智能节点控制系统的硬件设计超声波智能节点控制系统的硬件电路如图2所示。P87C591是51系列单片机,对于大部分熟悉51单片机的使用者来说它的使用方法十分简朴。下面分别介绍各个组成部分。图2 超声波智能节点控制系统1.1 控制部分超声波传感器的控制部分采用Philips半导体公司生产的P87C591。它是一个单片8位高性能微控制器,具有片内CAN控制器,是从 80C5

4、1微控制器家族派生出来的。它采用了强大的80C51指令集,并成功地涉及了Philips半导体公司SJA1000 CAN控制器的PeliCAN功能;全静态内核提供了扩展的节电方式;振荡器可停止和恢复而不会丢失数据;改善的11内部时钟预分频器在12 MHz外部时钟速率时,实现500 ns指令周期;内部具有的16 KB内部程序存储器完全满足本系统规定。作为系统控制核心,P87C591担负两个重要任务。其一是作为超声波传感器的控制核心,在其普通I/O口上扩展了超声波传感器的接受和发射部分电路,运用单片机软件功能产生40 kHz信号并通过驱动放大发射出去,再运用接受部分电路进行接受。此外可以对其余口线继

5、续进行超声波传感器的扩展,实现多个超声波传感器系统的设计。其二是运用P87C591的片内CAN控制器实现与CAN总线的连接。这样的设计改变了过去在机器人控制核心上进行超声波测距系统的设计,不仅将超声波检测与解决的工作转移到了单片机上,大大节省了机器人控制核心的系统资源,还将CAN总线智能节点的大部分控制工作也转移到了单片机上,节省了硬件资源,同时 CAN总线的采用大大提高了系统的抗干扰能力,使机器人控制系统更加稳定地工作。1.2 超声波传感器发射部分超声波传感器发射部分硬件电路如图3所示。图3 超声波传感器发射部分LM386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外

6、接元件少和总谐波失真小等优点,广泛应用于录音机和收音机之中。它是一个三级放大电路。本部分硬件电路相对简朴,重要就是运用LM386的驱动放大功能将单片机产生的40 kHz方波放大输出。由于在智能超声波节点控制系统中单片机的工作相对较少,为节省硬件,不妨将40 kHz方波的产生这部分工作交由单片机的定期器来完毕,这样只需十分简朴的硬件电路即可完毕。UST1为超声波发射头。1.3 超声波传感器接受部分超声波传感器接受部分的硬件电路如图4所示。图4 超声波传感器接受部分电路采用集成电路CX20236A。这是一款红外线检波接受的专用芯片,常用于电视机红外遥控接受器。考虑到红外遥控常用的载波频率38 kH

7、z与测距超声波频率40 kHz较为接近,可以运用它作为超声波检测电路。实验证明,其具有很高的灵敏度和较强的抗干扰能力。适当改变C1的大小,可改变接受电路的灵敏度和抗干扰能力。R1和C1控制CX20236A 内部的放大增益,R2控制带通滤波器的中心频率。一般取R1=4.7 ,C1=1 F。其余元件按图4取值。US_R1为超声波接受头,当收到超声波时产生一个下降沿,接到单片机的外部中断INT0上。当超声波接受头接受到40 kHz方波信号时,将会将此信号通过CX20236A驱动放大送入单片机的外部中断0口。单片机在得到外部中断0的中断请求后,会转入外部中断0的中断服务程序进行解决,在移动机器人的避障

8、工作中,可以在中断服务程序设定需要单片机解决的最短距离,比如0.5 m。对于距离大于0.5 m的障碍物,可以不做解决直接跳出中断服务程序;对于距离小于或等于0.5 m的障碍物信息,则在中断服务程序中进行解决并通过CAN总线上报机器人系统控制核心,由机器人系统控制核心发出命令指导机器人的避障动作。对于多超声波传感器系统,每一个超声波传感器在判断到对机器人行动有障碍物时可分别在其中断服务程序中对障碍物信息进行简朴解决,上报给机器人系统控制核心的信息可以相对简朴,只需机器人系统控制核心控制机器人的实际动作,比如左转30,而不必机器人系统控制核心再次进行计算,这样会节省大量系统资源去作其他更为复杂的工

9、作。1.4 CAN总线设计部分CAN总线设计部分的硬件电路如图5所示。TJA1040是Philips半导体公司生产的完全可替代PCA82C250的高速CAN总线收发器。该器件提供了CAN协议控制器和物理总线之间的接口,以及对CAN总线的差动发送和接受功能。TJA1040具有优秀的EMC性能,并且在不上电状态下有抱负的无源性能;它还提供低功耗管理,支持远程唤醒。值得一提的是TJA1040的自动防故障功能,在引脚TXD上提供了一个向VCC的上拉,使引脚TXD在不使用时保持隐性电平。引脚提供了一个向CC的上拉,当不使用引脚时,收发器进入待机模式。假如VCC掉电,引脚、和就会变成悬浮状态,防止通过这些

10、引脚产生反向电流。这部分电路硬件相对简朴,但对于CAN总线的抗干扰能力需特别注意。本设计重要突出以下几点:图中6N137是光电耦合器,P87C591的RXDC脚(即P1.0口)作为CAN接受器的输入脚,TXDC口(即P1.1口)作为CAN发送器的输出脚,都通过6N137连接至CAN发送器TJA1040。采用光电耦合器6N137的目的是增强CAN总线节点的抗干扰能力,这样的设计可以很好地实现总线上各CAN节点间的电气隔离。但要注意的是,光耦部分电路所采用的两个电源VCC和V必须完全隔离,否则光耦就失去了意义。可采用专用的电源隔离模块来实现。图5 CAN总线设计部分 TJA1040作为CAN总线收

11、发器,与CAN总线的接口部分也采用了抗干扰措施。TJA1040的CAN_H和CAN_L引脚各自通过一个5 电阻与CAN总线连接,电阻可以起到一定的限流作用,保护TJA1040不受过流的冲击。 CAN_H和CAN_L与地之间并联了2个30 pF的电容,可以过滤掉总线上的高频干扰和一定的电磁辐射。 2根CAN总线接入端与地之间分别反接了一个保护二极管。当CAN总线有较高的负电压时,通过二极管的续流可起到一定的过压保护作用。 总线两端接的120 电阻起匹配总线阻抗的作用,忽略掉它会使数据通信的抗干扰性能及可靠性大大减少甚至无法通信。1.5 其他除以上提到的几个重要部分之外,尚有单片机的复位电路、外部

12、时钟电路和电源等几个部分,本文只提供了一种最简朴方案。在实际应用中,对于较为复杂的现场环境可以相应添加看门狗复位电路和独立电源设计等复杂电路。值得注意的是,对于复位电路和电源电路应当给予足够的重视。2 超声波智能节点控制系统的软件编写软件的编写工作重要有两个部分:超声波测距部分和CAN总线的通信部分。2.1 超声波测距部分的软件设计超声波发射部分的软件设计相对简朴。在软件编写工作中,需要将超声波连续发射一段时间以便被接受器准确接受。以下程序可作参考:START:MOV TH0, #00H;将定期器初值设为0,产生一个方波即产生一次中断MOV TL0, #00HMOV 10H, #4D;将10H

13、单元做一个计数器实现200 ms定期SETB TR0;启动定期器T0FS:CPL P2.0;P2.0口产生方波,对于6 MHz晶振频率近似为40 kHzREPEAT:MOV R0,#12DJNZ R0,REPEATDJNZ 10H,FSRETEND图6 超声波测距部分程序流程当超声波接受器接受到回波时,硬件电路产生低电平触发P87C591的外部中断0口。软件编写的重要思想是,在中断服务程序中由寄存器预先设定一个数值,这个数值是机器人避障的最短距离。从超声波发射头发射方波开始,到超声波接受头接受到回波为止,把这段时间换算成为距离,与上述最短距离相比较。如大于最短距离,则不作解决,跳出中断服务程序

14、;如等于或小于最短距离,则执行相应动作。图6是这部分程序的流程。2.2 CAN总线通信部分的软件编写这部分软件编写重要由以下几部分组成:初始化、接受解决、发送解决、中断解决及错误解决函数。由于系统中任意节点在任意时刻均可积极与其他节点通信,故各个节点通信程序大体相同。具体程序的编写可参考P87C591的用户手册。结语本文论述了以CAN总线扩展多路超声波传感器的基本思想,介绍了一种以Philips公司P87C591作为超声波传感器控制核心及CAN总线控制器和以TJA1040作为CAN总线收发器的CAN总线智能超声波测距系统。与以往移动机器人超声波传感器测距系统相比,这个设计增长了CAN总线部分的设计,将多路超声波传感器的扩展转移到智能节点部分上完毕,简化了移动机器人系统控制核心的工作;采用了比较简朴的硬件设计,重要是将超声波传感器的控制核心和CAN总线控制器集中到一起,采用P87C591一个器件完毕两种芯片的工作,大大节省硬件。此外,CAN总线的扩展也会令后续的移动机器人系统的进一步开发变得更为灵活。实践证明这个设计可行,只是对于实际工作中不同应用场合的有些电路(比如复位电路、电源电路等外围电路)在设计细节上尚有待进一步细化。此外,软件编写方面还应特别注意多超声波传感器的抗干扰问题。

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 行业资料 > 医学/心理学

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服