基于AT89C51超声波测距控制系统设计
2020-01-13
来源:尚佳旅游分享网
务l 匐 化 基于AT89C5 1超声波测距控制系统设计 Design of ultrasonic ranging system based on the AT89C51 李录锋 LI Lu-feng’, (1.中国矿业大学,徐州221116;2.江苏建筑职业技术学院,徐州221116) 摘要:本文介绍了一种采用脉冲回波方式,基于AT89051单片机的超声波测距系统。该系统充分利 用单片机的硬件和软件资源,自动实现超声波的发射与接收控制。该系统充分考虑了环境温 度对超声波传播速度的影响,通过单片机中计数器所计超声波往返所经历的时间,通过公式 换算就可以计算出超声波发射器与被测物之间的距离。 关键词:89051单片机;超声波测距;控制系统 中囝分类号:TP306 文献标识码:A 文章编号:1 009—01 34(201 2)2(下)一0045—03 Doi:1 0.3969/j.issn.1 009-01 34.201 2.2(下).14 1 系统原理 超声波作为一种新型的、非常有用的工具在 各方面都有很大的发展空间,其原理是发射器发 出的超声波在空气中以速度u传播,在接触到被 测物体时被反射返回,由接收器接收,其往返时 超声波接收}二二 单片机 :二二 LE介 D显示 超声波发送k:= 控制器 二: 扫描驱动 图1超声波测距器系统方案 间为t,由s=vt/2即可算出被测物体的距离。 2系统设计 利用超声波检测距离,设计比较方便,计算 处理也较简单,其测量精度也能达到使用要求。 超声波发生器可以分为两大类:一类是用机械方 式产生超声波,一类是用电气方式产生超声波。 电气方式包括压电型、电动型等;机械方式有加 尔统笛、液哨和气流旋笛等。目前在近距离测量 用压电效应的传感器,常用的材料是压电陶瓷。 3系统硬件结构的设计 硬件电路主要由单片机系统及显示电路、超 声波发射电路和超声波检测接收电路三部分组成。 采用AT89C51来实现对CX20106A红外接收芯片 和TCT40-10系列超声波转换模块的控制。单片机 通过P1.0引脚经反相器来控制超声波的发送,然 方面常用的是压电式超声波换能器。根据设计要 求并综合各方面因素,本设计采用AT89C51单片 机作为控制器,用动态扫描法实现LED数字显示, 超声波驱动信号用单片机的定时器u’ 。 单片机发出40kHz的信号经放大后通过超声 波发射器输出;超声波接收器将接收到的超声波 信号经放大器放大,用锁相环电路进行检波处理 后单片机不停的检测INT0引脚,当IT0引脚的 N电平由高电平变为低电平时就认为超声波已经返 回。计数器所计的数据就是超声波所经历的时间, 通过换算就可以得到传感器与障碍物之间的距离。 3.1单片机系统及显示电路 3.1.1 51系列单片机功能特点【3 5l系列单片机中典型芯片(AT89C51)采用40 引脚双列直插封装(DIP)形式,内部由CPU,4kB 的ROM,256 B的RAM,2个16b的定时/计数 器TO和T1,4个8 b的工/O端I:IP0,P1,P2, 后,启动单片机中断程序,测得时间为t,再由软 件进行判别、计算,得出距离数并送LED显示。 如图1所示。 超声波测距的原理是利用超声波的发射和接 P3,一个全双功串行通信口等组成 。特别是该系 受,根据超声波传播的时间来计算出传播距离。 本设计采用反射波方式。测距仪的分辨率取决于 对超声波传感器的选择。超声波传感器是一种采 收稿日期:2011-09-06 列单片机片内的Hash可编程、可擦除只读存储器 (E ̄PROM),使其在实际中有着十分广泛的用途, 在便携式、省电及特殊信息保存的仪器和系统中更 作者简介:李录锋(1970一),男,江苏丰县人,副教授,在读博士生,主要从事教学管理工作。 第34卷第2期2012—2(下) [451 l l 2匐 似 3.2超声波测距系统 3.2.1超声波发射电路原理图 单片机P1.0口输出40kHz方波信号一路经一 级反相器送到超声波换能器的一个电极,另一路 经两级反相器后送到超声波换能器的另一个电极, 用这种推挽形式将方波信号加到超声波换能器两 端可以提高超声波的发射强度嘲。输出端采用两 为有用。该系列单片机引脚及封装如图2所示。 D■ 0 4 5 D 3 4 5 上』 址v 如图3所示。ⅣD一 肿 D o l墓 n n 硒R D盯订 Vcc PO.O PO.1 P0 2 P0.3 PO.4 PO.5 P0.6 P0.7 39 \\\ /4o 、 —— 3 4 5 38 37 36 6 7 35 34 8 9 101 112 l3 14 15 l6 17 33 32 AT89C51 310EA,vDD ALE,PlROG 29 28 27 26 25 24 PSEN P2.7 P2.6 P2.5 P2.4 个反相器并联可以提高驱动能力。上拉电阻R10, Rll一方面可以提高反相器7404LS输出高电平的 驱动能力,另一方面可以增加超声波换能器的阻 P2.3 P2.2 P2.】 P2.0 l8 l9 2O 23 22 21 尼效果,以缩短其自由振荡的时间。 压电超声波转换器利用压电晶体谐振工作。 它有两个压电晶片和一个共振板。当它的两极外 图2 51系列单片机封装图 加脉冲信号,其频率等于压电晶片的固有振荡频 率时,压电晶片将会发生共振,并带动共振板振 5l系列单片机可以提供以下的功能 :4 kB存 储器;256 BRAM;32条I/O线;2个16b定时/计 数器;5个2级中断源;1个全双向的串行口以及 时钟电路,空闲方式:CPU停止工作,而让RAM、 定时/计数器、串行口和中断系统继续工作。掉电 动产生超声波,这时它就是一超声波发生器;如没 加电压,当共振板接受到超声波时,将压迫压电 振荡器作振动,将机械能转换为电信号,这时它 就成为超声波接受转换器。超声波发射转换器与 接受转换器其结构稍有不同。如图4所示。 方式:保存RAM的内容,振荡器停振,禁止芯片 所有的其他功能直到下一次硬件复位。 3.1。2单片机显示电路原理 单片机采用AT89C51或其兼容系列。为了获 得较稳定的时钟频率,系统采用12MHz高精度的 晶振,以减小系统测量误差。单片机用P1.0端口 输出40KHz方波信号,为超声波转化器所用,利 用外中断0口检测超声波接受电路输出的返回信 号。显示电路采用简单实用的共阳LED数码管, 段码用单片机Po口加限流电阻直接驱动,位码用 PNP三极管9012驱动 。单片机系统及显示电路 3_2.2超声波检测接受电路 参考红外转化接 收的电路采用集成电路 CX20106A,这是一款 红外线检波接收的专用 图4超声波发射电路原理图 芯片,常用于电视机红 外遥控接收器。考虑到 红外遥控常用的载波频 率38KHz与测距超声波 频率40KHz较为接近, 可以利用它作为超声波 检测电路,如图5所示。 图3单片机及显示电路原理图 【46】 第34卷第2期2012—2(下) 骞、l造 lI》 似 图5超声波接收电路图 3.2.3超声波测距系统的硬件电路设计 根据系统对计时及数据处理的需要,单片机 选用AT89C51,该机型经济易用,且片内有4K的 ROM便于编程。设计的系统原理图如图6所示。 1uF 图6超声波测距电路原理图 4系统软件的设计 系统软件主要由主程序、发射子程序、接受 中断程序及显示子程序组成。下面对各部分进行 具体介绍。 4.1超声波测距仪的算法设计嘲 超声波发生器根据操作,发出一个超声波信 号,信号遇到被测物体后被反射回来,就被接收 器R所接受。计算出发出信号到接收信号所用的 时间,根据公式d=s/2=(cXt)/2就可以计算出超声 波发生器与被测物体的距离。如果测距精度要求 很高,则应通过温度补偿的方法加以校正。 4.2系统程序设计 ・。 软件分为两部分,主程序和中断服务程序,如 图7(a)、(b)、(c)所示。定时中断服务子程序完成三 方向超声波的轮流发射,外部中断服务子程序主要 完成时间值的读取、距离计算、结果的输出等工作。 (a)主程序流程图 (b)定时中断服务子程序 (c)外部中断服务子程序 图7超声波测距系统软件设计 5系统调讧弋【刎 在安装超声波换能器时应注意TCT40—10F1和 TCT40—10S1的中心轴线要保持平行,其余元件无 特殊要求。为了得到不同的测量范围,可以调整 滤波电容C4的大小,同时,通过调整它的大小, 可以获得合适的接收灵敏度和抗干扰能力。下载 程序后就可以进行系统通调。根据所设计的电路 参数和程序,测距仪能测的范围为0.1~2.5m, 测距仪最大误差不超过lcm。 6结束语 该超声波测距系统已经制作完成,通过 10 ̄70cm距离的测量数据可以看出,在连续测量 的准确度方面表现非常稳定,但是当距离<10cm 或者>70cm时,系统误差变大,经过分析认为系 统误差主要是电子元器件的选择不够优良。 参考文献: [1】樊昌元,丁义元.高精度测距雷达研究【J】_电子测量与仪 器学报,2000,10. 【2]时德刚,刘哗.超声波测距的研究【J].计算机测量与控 制,2002. 【3】胡汉才.单片机原理及其接口技术[M】.清华大学出版 社,1996. [4】华兵.MCS一51单片机原理应用[M】.武汉华中科技大学 出版社,2002. 【5】徐淑华,程退安,姚万生.单片机微型机原理及应用【M]. 哈尔滨工业大学出版社,1999. 第34卷第2期2012-2(下) [471