当前位置:文档之家› 超声波测距器课程设计

超声波测距器课程设计

《微机原理及应用》课程设计超声波测距器的设计学生姓名郝强学号***********学院名称机电工程学院专业名称机械电子工程指导教师王前2013年12月27日摘要随着科学技术的快速发展,超声波将在科学技术中的应用越来越广。

本文对超声波传感器测距的可能性进行了理论分析,利用模拟电子、数字电子、微机接口、超声波换能器、以及超声波在介质的传播特性等知识,采用以AT89C51单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。

相关部分附有硬件电路图、程序流程图。

为了保证超声波测距传感器的可靠性和稳定性,采取了相应的抗干扰措施。

就超声波的传播特性,超声波换能器的工作特性、超声波发射、接收、超声微弱信号放大、波形整形、速度变换、语音提示电路及系统功能软件等做了详细说明。

关键词:超声波;传感器;测量距离;控制目录摘要 (2)目录 (3)1.设计目的 (4)2.总体方案 (4)3.硬件设计 (5)3.1 超声波测距器硬件电路设计 (5)3.2.1单片机芯片的选择 (6)3.2.2AT89C51定时计数应用电路 (6)3.3超声波发射电路设计 (6)3.3.1选择超声波发生器类型 (6)3.3.2 超声波发射电路设计 (7)3.4超声波接收电路设计 (8)3.5超声波显示电路设计 (9)4.软件设计 (9)4.1波测距器的算法设计 (10)4.2系统的主控制程序设计 (11)4.3发生子程序设计 (12)4.4接收中断程序设计 (13)4.5显示程序设计 (14)4.6距离计算程序 (15)5.结论 (17)参考文献 (18)1.设计目的超声波测距器,可应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度的测量等场合。

要求测量范围在0.10~4.00m,测量精度1 cm,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。

2.总体方案硬件部分主要由单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分组成。

采用AT89C1或其兼容系列来实现对CX20106A红外接收芯片和74LS04系列超声波发射模块的控制。

单片机通过P1.0引脚经反相器来控制超声波的发送,然后单片机不停的检测INT0引脚,当INT0引脚的电平由高电平变为低电平时就认为超声波已经返回。

计数器所计的数据就是超声波所经历的时间,通过换算就可以得到传感器与障碍物之间的距离。

软件部分主要由主程序、超声波发生子程序、超声波接收中断程序及显示子程序等部分。

3.硬件设计3.1 超声波测距器硬件电路设计超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t,然后求出距离。

路程、波速、时间之间的关系,可用下列简单的公式表示:==⨯/2()/2d s c t上式中,d为超声波传播单边的路程,s为超声波来回的路程, c为超声波波速, t为超声波来回所用的时间。

当声速确定后,只要测得超声波往返的时间,即可求得距离。

这就是超声波测距的原理。

超声波测距的原理如图所示。

3.1超声波测距原理根据超声波测距原理,超声波测距器需要有超声波发生器、超声波接收器、超声波传播的计时器。

按照系统设计功能的要求,硬件电路由单片机计时及控制电路、超声波发射电路、超声波检测接收电路、显示电路及电源五部分组成。

系统原理总框图见图。

3.2超声波测距器的原理总框图3.2.1 单片机芯片的选择89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Pro grammable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。

89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。

单片机的可擦除只读存储器可以反复擦除100次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。

89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

3.2.2AT89C51定时计数应用电路AT89C51单片机片内集成有两个可编程的定时/计数器T0和T1[4]。

它们既可以工作于定时模式,也可以工作于外部事件计数模式。

本设计采用定时计数器T0,根据需要,让其工作于方式1。

方式1的计数位数是16位,由TL0作为低8位,TH0作为高8位,组成16位加1计数器。

其初值在65 535~0范围,计数范围为1~65 536。

具体应用见程序设计部分。

3.3 超声波发射电路设计3.3.1选择超声波发生器类型压电式超声波换能器利用压电晶体的谐振来工作,其内部结构如图所示。

超声波换能器有两个压电晶片和一个共振板。

当它的两极外加电脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将发生共振,从而带动共振板振动,产生超声波。

反之,如果在共振板上外加适当的机械振动,使压电晶片发生共振,将在压电晶片之间产生交变的电信号。

这时它就成为了超声波接收器。

本设计选用压电式超声波换能器TCT40—l0Fl作超声波发射器。

使用时注意分清器件,因为它与接收换能器在结构上稍有不同。

3.3超声波换能器内部结构图3.3.2 超声波发射电路设计超声波发射电路主要由反向器74LS04和超声波发射换能器T 构成,如图所示。

图中T 为超声波发射器,采用TCT40—l0Fl ,外型尺寸Φ15 。

输出端采用两个反向器并联,用以提高驱动能力。

上拉电阻R 2,R 3一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声波换能器的阻尼效果,缩短其自由振荡的时间。

工作时,单片机的定时器T0产生40 KHz 方波信号,从P1.3端口输出,一路经过一级反向器后送到超声波发射器T 的一个电极,另一路经过两极反向器后送到超声波发射器T 的另一个电极,从而将40 KHz 电脉冲信号加到超声波发射器T ,使T 发射超声波。

电路采用推挽形式,向超声波发射器T 提供电脉冲信号,可以提高超声波的发射强度。

T 12U4A 74LS0434U4B74LS0456U4C 74LS0498U4D74LS041110U4E R21K R31Kp1.3 3.4超声波发射电路原理图3.4 超声波接收电路设计超声波接收电路主要由超声波接收换能器R和超声波检测接收模块构成,如图所示。

图中R为超声波接收器,采用TCT40—l0Sl,外型尺寸Φ15 。

U5是超声波检测接收模块,设计时选用了红外线检波接收专用集成电路芯片CX20106A。

选用的原因是CX20106A常用的载波频率为38KHz,与测距的超声波频率40KHz较为接近,可以将发射的超声波之频率控制为38KHz。

电路中设置的电容C4,适当更改其大小,可以改变接收电路的抗干扰能力;适当改变电路中的电容C6,可改变电路的灵敏度。

工作时,接收的超声波信号经R转换为电信号,加到CX20106A的输入端(1脚),处理后由CX20106A的输出端(7脚)送达单片机的中断口INT0,申请CPU处理。

3.5超声波检测接收电路3.5超声波显示电路设计显示电路采用LED数码管显示。

LED数码管显示有静态显示方式和动态显示方式,本系统采用并行输出的动态显示方式。

显示电路结构根据本超声波测距器显示测距数据的需要,采用4位LED动态显示电路。

其中2位显示小数部分,2位显示整数部分。

显示信息输入部分由单片机P0输出端,连接74LS244相应输入端,驱动器输出端经限流电阻连接相应字段码端;字位控制部分分别由三极管驱动,选用PNP型晶体管9012,其基极经限流电阻连接单片机的P2口相关端子,集电极连接数码管的共用端,发射极连接电源。

显示电路如图所示[5]。

3.6超声波测距动态显示电路4软件设计超声波测距器的软件主要由主程序,超声波发生子程序,超声波接收中断程序以及显示子程序组成。

4.1波测距器的算法设计从前面距离的计算公式可知,c为声速,对于超声波,在常温20℃时,其数值为344米/秒;若能准确测量出超声波从发射到返回所用时间,则可以计算出发射点到被测障碍物之间的距离。

测量距离时,由超声波测距器的主控制器中定时器记录时间,设计中要求超声波测距时精确计算程序运行时间。

测量超声波来回所用的时间,当送出一个超声波脉冲后,需要延时约0.1ms ,才打开外中断0接收返回的超声波信号,这是为了避免超声波从发射器直接传送到接收器引起直射波触发。

单片机工作时晶振频率为12MHz ,计数器每计1个数就是1 μs ,当主程序检测到接收成功的标志位后,将停止计数器T0计数。

计算距离,将计数器T0中的计数值T0带入距离的计算公式计算,即可得被测物体与测距器之间的距离。

具体为60/2(344)/2(172)/10d s t T ==⨯=⨯计算的结果,以十进制BCD 码方式送往LED 显示,显示时间约0.5s ,然后再发超声波脉冲重复测量过程。

4.2系统的主控制程序设计主程序包括对系统环境初始化,设置定时器T0工作模式,调用超声波发生子程序,等待反射超声波,计算距离,显示距离;重复。

主程序流程图如图。

4.1主程序流程图※※※※※※主程序※※※※※※START: MOV SP, #4FHMOV R0, #40H ;40H~43H为显示数据存放单元(40H为最高位)MOV R7, #0BHCLEARDISP: MOV @R0, #00HINC R0DJNZ R7, CLEARDISPMOV 20H, #00HMOV TMOD, #21H ;T1为8位自动重装模式,T0为16位定时器MOV TH0, #00H ;65ms初值MOV TL0, #00HMOV TH1, #0F2H ;40kHz初值MOV TL1, #0F2HMOV P0, #0FFHMOV P1, #0FFHMOV P2, #0FFHMOV P3, #0FFHMOV R4, #04H ;超声波脉冲个数控制(为赋值的一半)SETB PX0SETB ET0SETB EASETB TR0 ;开启测试定时器START1: LCALL DISPLAYJNB 00H, START1 ;收到反射信号时标志位为1CLR EALCALL WORKSETB EACLR 00HSETB TR0 ;重新开启测试定时器MOV R2, #64H ;测量间隙控制(约4ms×100=400ms)LOOP: LCALL DISPLAYDJNZ R2,LOOPSJMP START14.3发生子程序设计超声波发生子程序,主要功能是单片机控制,通过P1.3端口发送2个左右超声波脉冲信号,频率为约40kHz的方波,其脉冲宽度为12μs左右,同时把计数器T0打开进行计时。

相关主题