基于单片机的超声波测距仪设计 联系客服

发布时间 : 星期三 文章基于单片机的超声波测距仪设计更新完毕开始阅读b6e249a3ac51f01dc281e53a580216fc700a53af

齐鲁工业大学2013届本科毕业设计(论文)

并不是固定不变的,传播速度受空气密度、温度和气体分子成分的影响。

超声波在空气中传播时,受温度影响最大[2],如表2-1所示

温度越高,传播速度越快,而且不同温度下传播速度差别非常大,例如0℃时的速度为332m/s,30℃时的速度为350m/s,相差18m/s。因此,需要较高的测量精度时,进行温度补偿是最有效的措施。对测量精度要求不高时,可认为超声波在空气中的传播速度为340m/s[6]。

表2-1 超声波传播速度与温度关系表

项目 温度 声速/( m?s) -30 313 -20 319 -10 325 0 332 10 338 数值 20 344 30 350 40 356 50 361 60 367 100 388 第3章 方案论证

3.1设计思路

测量距离方法有很多种,短距离可以用尺,远距离有激光测距等,超声波测距适用于高精度中长距离测量。因为超声波在标准空气中传播速度为331.45米/秒,由单片机负责计时,单片机使用12.0M晶振,所以此系统测量精度理论上可以达到毫米级。

目前比较普遍的测距的原理:通过发射具有特征频率的超声波对被摄目标的探测,通过发射出特征频率的超声波和反射回接受到特征频率的超声波所用的时间,换算出距离,如超声波液位物位传感器,超声波探头,适合需要非接触测量场合,超声波测厚,超声波汽车测距告警装置等[7]。

由于超声波指向性强,能量消耗缓慢,在介质中传播距离远,因而超声波可以用于距离测量。利用超声波检测距离,设计比较方便,计算处理也较简单,并且在测量精度方面也能达到要求。由于超声波易于定向发射、方向性好、强度易控制、与被测量物体不需要直接接触的优点,是作为液体高度测量的理想手段。在精密的液位测量中需要达到毫米级的测量精度,但是目前国内的超声波测距专用集成电路都是只有厘米级的测量精度。通过分析超声波测距误差产生的原因,提高测量时间差到微秒级,我们设计的高精度超声波测距仪能达到毫米级的测量精度[3]。

目前超声波测距已得到广泛应用,国内一般使用专用集成电路根据超声波测距原理设计各种测距仪器,但是专用集成电路的成本较高、功能单一。而以单片机为核心的测距仪器可以实现预置、多端口检测、显示、报警等多种功能,并且成本低、精度高、操作简单、工作稳定、可靠。以8052为内核的单片机系列,其硬件结构具有功能部件齐全、功能强等特点。尤其值得一提的是,出8位CPU外,还具备一个很强的位处理器,它实际上是一个完整的位微计算机,即包含完整的位CPU,位RAM、ROM

5

齐鲁工业大学2013届本科毕业设计(论文)

(EPROM),位寻址寄存器、I/O口和指令集。所以,8052是双CPU的单片机。位处理在开关决策、逻辑电路仿真、过程测控等方面极为有效;而8位处理则在数据采集和处理等方面具有明显长处[8]。

根据设计要求并综合各方面因素,可以采用AT89C52单片机作为主控制器,它控制发射触发脉冲的开始时间及脉宽,响应回波时刻并测量、计数发射至往返的时间差。利用软件产生超声波信号,通过输出引脚输入至驱动器,经驱动器驱动后推动探头产生超声波;超声波信号的接收采用锁相环LM567对放大后的信号进行频率监视和控制。一旦探头接到回波,若接收到的信号频率等于振荡器的固有频率(此频率主要由RC值决定),则其输出引脚的电平将从“1”变为“0”(此时锁相环已进入锁定状态),这种电平变化可以作为单片机对接收探头的接收情况进行实时监控。可对测得数据优化处理,并采用温度补偿,使测量误差降到更低限度;AT89C51还控制显示电路,用动态扫描法实现LED数字显示。

3.2系统结构设计

超声波测距仪系统结构如图3-1所示。它主要由单片机、超声波发射及接收电路、超声波传感器、键盘、LED显示电路及电源电路组成。系统主要功能包括:

1) 超声波的发射、接收,并根据计时时间计算测量距离; 2) LED显示器显示距离; 3) 键盘接收用户命令并处理;

4) 当系统运行不正常时,用电平式开关与上电复位电路复位。

图3-1 超声波测距仪系统结构框图

6

齐鲁工业大学2013届本科毕业设计(论文)

3.3单片机AT89C52

单片机即单片微型计算机SCMC(Single Chip MicroComputer)。它把构成一台计算机的主要功能部、器件,如CPU(进行运算、控制)、RAM(数据存储)、ROM(程序存储)、输入/输出设备(例如:串行口、并行输出口等)、中断系统、定时/计数器等集中在一块芯CPU(进行运算、控制)、RAM(数据存储)、ROM(程序存储)、输入/输出设备(例如:串行口、并行输出口等)制功能,所以又称为微控制器MCU(Microcontroller Unit)。相对于普通微机,单片机的体积要小得多,一般嵌入到其他仪器设备里,实现自动检测与控制,因此也称为嵌入式微控制器EMCU(Embedded Microcontroller Unit)。

本设计的MCU采用的是DIP(Dual In-line Package塑料双列直插式)封装的AT89C52高性能8位单片机。AT89C51是一个低电压,高性能CMOS 8位单片机,片内含4k bytes的可反复擦写的Flash只读程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89C51提供了高性价比的解决方案[9]。

AT89C52是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口, AT89C51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。其引脚图如图3-2[4]。

AT89C52的引脚功能有: 1) 主电源引脚

VSS——第20脚,电路接地电平。

VCC——第40脚,正常运行和编程校验+5V电源。 2) 时钟源

XTAL1——第19脚,一般外接晶振的一个引脚,它是片内反相放大器的输入端口。当直接采用外部信号时,此引脚应接地。

XTAL1——第18脚,接外部晶振的另一个引脚,它是片内反相放大器的输出端口。当采用外部振荡信号源泉时,此引脚为外部振荡信号的输入端口,与信号源相连接[10]。

7