超声波测距.docx

上传人:b****6 文档编号:8742865 上传时间:2023-02-01 格式:DOCX 页数:28 大小:1,011.71KB
下载 相关 举报
超声波测距.docx_第1页
第1页 / 共28页
超声波测距.docx_第2页
第2页 / 共28页
超声波测距.docx_第3页
第3页 / 共28页
超声波测距.docx_第4页
第4页 / 共28页
超声波测距.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

超声波测距.docx

《超声波测距.docx》由会员分享,可在线阅读,更多相关《超声波测距.docx(28页珍藏版)》请在冰豆网上搜索。

超声波测距.docx

超声波测距

第一章序论

1.1课题背景,目的和意义

超声波测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。

由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。

利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在移动机器人的研制上也得到了广泛的应用。

在工程实践中,由于超声波指向性强、能量消耗缓慢且在介质中传播的距离较远,因而经常用于距离的测量。

它主要应用于倒车雷达、测距仪、物位测量仪、移动机器人的研制、建筑施工工地以及一些工业现场等,例如:

距离、液位、井深、管道长度、流速等场合。

利用超声波检测往往比较迅速、方便,且计算简单、易于做到实时控制,在测量精度方面也能达到工业实用的要求,因此得到了广泛的应用。

1.2方案选择的论证和选择

1.2.1设计方案一:

图1.1基于单片机的超声波测距系统框图

这种方案是有单片机产生一个40khz的超声波信号,经由发射驱动和发射器发射一段超声波,超声波在空气中以V的速度传播,遇到障碍物就返回来,超声波接收器接收到反射波就停止计时,得到所用时间T。

这样根据公式

(1)就可以计算出距离D=VT/2

(1)

1.2.2设计方案二:

采用CPLD来控制的超声波测距仪

采用CPLD来控制的超声波测距仪,主要是在软件上运用VHDL(VeryHighSpeedIntegratedCircuitHardwareDescriptionLanguage)编写程序使用MAX+plusII软件进行软硬件设计的仿真和调试,最终实现测距功能。

使用本方案的优点在于在超声波测距仪设计中采用的是MAX7000s系列中的EPM7128SLC84-15的CPLD器件,其最高频率可达175.4MHz,可用于组合逻辑电路、时序逻辑电路、算法、双端口RAM等的设计。

充分利用了其多达128个宏单元、68pin可编程I/O口,使该器件可以将分频功能、计数功能、显示编码功能、振荡功能全部集于一体。

又因其延时平均的特点,保证了测距结果精度高、响应速度快。

缺点是方案中需要一块FPGA,一块双口RAM,还需要一块用来存储波形数据的EEPROM,那么设计的成本较高。

同时在FPGA中还要用硬件描述语言(VHDL语言)编写程序来实现硬件电路功能。

由于EPM7128SLC84-15的算法复杂,所以在软件实现起来编程也复杂。

1.2.3方案设计三:

采用锁相环频率合成技术

采用锁相环频率合成技术,也可以实现我们所需要的超声波测距仪。

具体方案如下:

首先通过频率合成技术产生超声波所需要的频率,在通过信号线将采用锁频率相合成技术得到的频率引到超声波的发射头上,这样就可以实现超声波测距。

它的优点就是工作频率可调,也可以达到很高的频率分辨率;缺点是要求使用的滤波器通带可变,实现很困难。

它的原理如图1-2所示:

 

1.3工作原理

我们做的是基于单片机的超声波测距仪。

用单片机控制超声波的发射、接受电路以及进行数据处理,再用LED数码管进行数据的显示。

操作者可以通过几个简单的按键完成测量方式的选择(实时监测、手动测量)。

由单片机产生一个信号,经过信号线,把信号引入到与超声波发射器相连的信号引脚上,在由超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。

超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:

D=VT/2

其中,D为换能器与障碍物之间的距离,V为波声传播速度,T为超声波发射到返回的时间间距。

本次设计包含硬件设计与软件设计两部分,根据设计任务要求,采用STC89C52单片机,配置时钟电路,复位电路构成单片机最小系统,由模拟电路和数字电路构成超声波发射、接收模块。

由键盘,LED显示构成人机对话通道,来构成由单片机最小系统来控制的超声波测距仪,其结构框图如图1.1。

系统发出若干个40khz超声波,超声波在空气传播,遇到障碍物返回,超声波接收头将声波转换成微弱的点信号(如图1.2中接收到的信号)经过接收电路放大接收到的微弱信号转换放大成方波(图1.2信号经过接收电路后的波形),发射与接收用去的时间即t=T1-T0。

图1.3超声波测距时序图

第二章部分芯片介绍

2.1STC89C52的简介

STC89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的只读程序存储器(PEROM)和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的STC89C52单片机可为您提供许多较复杂系统控制应用场合。

STC89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,STC89C52可以按照常规方法进行编程,也可以在线编程。

其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。

STC89C52芯片的管脚、引线与功能STC89C52芯片图如图2.1:

 

2.1.1引脚信号介绍:

P00~P07:

P0口8位双向口线

P10~P17:

P1口8位双向口线

P20~P27:

P2口8位双向口线

P30~P37:

P3口8位双向口线

访问程序存储器控制信号:

信号为低电平时,对ROM的读操作限定在外部程序存储器;而当

信号为高电平时,则对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。

ALE地址锁存控制信号:

在系统扩展时,ALE用于控制把P0口输出低8位地址锁存起来,以实现低位地址和数据的隔离。

此外由于ALE是以晶振六分之一的固定频率输出的正脉冲,因此可作为外部时钟或外部定时脉冲作用。

外部程序存储器读选取通信号:

在读外部ROM时

有效(低电平),以实现外部ROM单元的读操作。

XTAL1和XTAL2外接晶体引线端:

当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于拉外部的时钟脉冲信号。

RST复位信号:

当输入的复位信号延续2个机器周期以上高电平时即为有效,用以完成单片机的复位初始化操作。

VSS:

地线

VCC:

+5V电源

2.1.2P3口的第二功能如表2.2

口线

第二功能

替代的专用功能

P3.0

RXD

串行输入口

P3.1

TXD

串行输出口

P3.2

外部中断0

P3.3

外部中断1

P3.4

T0

定时器0的外部输入

P3.5

T1

定时器1的外部输入

P3.6

外部数据存储器写选通

表2.2P3口的第二功能

2.1.3STC89C52的总线结构

STC89C52的管脚除了电源、复位、时钟接入、用户I/O口部分P3外,其余管脚都是为实现系统扩展而设置的。

这些管脚构成了三总线形式,即:

(1)地址总线(AB):

地址总线宽度为16位,因此,其外部存储器直接地址外围为64K字节。

16位地址总线由P0经地址锁存器提供低8位地址(A0~A7);P2口直接提供高8位地址(A8~A15)。

(2)数据总线(DB):

数据总线宽度为8位,由P0口提供。

(3)控制总线(CB):

由部分P3口的第二功能状态和4根独立控制线RESET、

、ALE、

组成。

AT89C52结构框图如图3-2所示:

 

2.2CX20106简介

这是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。

考虑到红外遥控常用的载波频率38kHz与测距超声波频率40kHz较为接近,可以利用它作为超声波检测电路。

实验证明,其具有很高的灵敏度和较强的抗干扰能力。

适当改变C1的大小,可改变接收电路的灵敏度和抗干扰能力。

R1和C1控制CX20106A内部的放大增益,R2控制带通滤波器的中心频率。

一般取R1=4.7Ω,C1=1μF。

其余元件按图2.2取值。

2.2.1CX20106管脚介绍

1脚:

超声信号输入端,该脚的输入阻抗约为40kΩ。

2脚:

该脚与地之间连接RC串联网络,它们是负反馈串联网络的一个组成部分,改变它们的数值能改变前置放大器的增益和频率特性。

增大电阻R1或减小C1,将使负反馈量增大,放大倍数下降,反之则放大倍数增大。

但C1的改变会影响到频率特性,一般在实际使用中不必改动,推荐选用参数为R1=4.7Ω,C1=1μF。

3脚:

该脚与地之间连接检波电容,电容量大为平均值检波,瞬间相应灵敏度低;若容量小,则为峰值检波,瞬间相应灵敏度高,但检波输出的脉冲宽度变动大,易造成误动作,推荐参数为3.3μf。

4脚:

接地端。

5脚:

该脚与电源间接入一个电阻,用以设置带通滤波器的中心频率f0,阻值越大,中心频率越低。

例如,取R2=200kΩ时,f0≈42kHz,若取R2=220kΩ,则中心频率f0≈38kHz。

6脚:

该脚与地之间接一个积分电容,标准值为330pF,如果该电容取得太大,会使探测距离变短。

7脚:

遥控命令输出端,它是集电极开路输出方式,因此该引脚必须接上一个上拉电阻到电源端,推荐阻值为220kΩ,没有接受信号是该端输出为高电平,有信号时则产生下降。

8脚:

电源正极,4.5~5V。

图2.2CX20106红外线检波接收的专用芯片

2.3压电传感器

压电型超声波传感器的工作原理:

它是利用压电效应的原理,压电效应有逆效应和顺效应,超声波传感器是可逆元件,超声波发送器就是利用压电逆效应的原理。

所谓压电逆效应如图2-2所示,是在压电元件上施加电压,元件就变形,即称应变。

若在图a所示的已极化的压电陶瓷上施加如图b所示极性的电压,外部正电荷与压电陶瓷的极化正电荷相斥,同时,外部负电荷与极化负电荷相斥。

由于相斥的作用,压电陶瓷在厚度方向上缩短,在长度方向上伸长。

若外部施加的极性变反,如图c所示那样,压电陶瓷在厚度方向上伸长,在长度方向上缩短。

图1.2压电逆效应图

 

第三章硬件设计方案说明

3.1.1直流稳压电源

小功率稳压电源由电源变压器、整流电路、滤波电路和稳压电路四个部分组成,如图4-1所示。

+电源+整流+滤波+稳压+

u1u2u3uIU0

_变压器_电路_电路_电路_

 

图3.1稳压电源的组成框图

u1u2u3uIU0

0t

0t0t0t0t

 

图3.2整流与稳压过程

图3.1稳压电源的组成框图及整流与稳压过程

本次的设计的稳压电源电路原理图如图所示:

3.1.2整流滤波电路设计

整流电路将交流电压变成单向脉动的直流电压;滤波电路用来滤除整流后单向脉动电压中的交流成份,合之成为平滑的直流电压。

小功率直流电源因功率比较小,通常采用单相交流供电。

由于桥式整流电路克服了半波整流的缺点,在桥式整流电路中,由于每两只二极管只导通半个周期,故流过每个二极管的平均电流仅为负载电流的一半,与半波整流电路相比较,其输出电压提高,脉动成分减小了。

为了获得平滑的直流电压,常在整流电路的后面加接滤波电路,以滤去交流成分。

滤波电路常见的有电容滤波电路(主要利用电容两端电压不能突变的特性,使负载电压波形平滑,故电容应与负载并联)、电感滤波电路及π型滤波电路。

本设计采用电容滤波电路。

3.1.3稳压电路设计

稳压电路的作用是当输入交流电源电压波动、负载和温度变化时,维持输出直流电压的稳定。

由于三端式稳压器只有三个引出端子,具有应用时外接元件少、使用方便、性能稳定、价格低廉等优点,因而广泛应用。

三端式稳压器有两种,一种称为固定输出三端稳压器,另一种称为可调输出三端稳压器。

它们的基本组成及工作原理都相同,均采用串联型稳压电路。

三端固定输出集成稳压器通用产品有CW7800系列和CW7900系列。

正压系列:

CW7800系列,该系列稳压块有过流、过热和调整管工作保护,以防过载而损坏。

一般不需要接元件即可工作,有时为改善性能也加少量元件。

负压系列:

CW7800系列与CW7900系列相比,除了输出电压极性、引脚定义不同外,其他特点都相同。

稳压电源的技术指标分为两种:

一是特性指标:

包括允许的输入电压、输出电压、输出电流及输出电压调节范围等;另一种是质量指标,用来衡量输出直流电压的稳定程度,包括稳压系数(或电压调整流器率)、输出电阻(或电流调整率)、温度系数及纹波电压等。

3.2单片机时钟电路

时钟电路用于产生单片机工作所需要的时钟信号,而时序所研究的是指令执行中各信号之间的相互关系。

单片机本身就如一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地作。

(1)时钟信号的产生

单片机内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。

而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。

电容器C1和C2的作用是稳定频率和快速起振,电容值的范围在5pF∽30pF,典型值为30pF。

晶振的频率通常选择两种6MHz和12MHz。

只要在单片机的XTAL1和XTAL2引脚外接晶体振荡器就构成了自激振荡器并在单片机内部产生时钟脉冲信号。

3.3单片机复位电路

复位电路是使单片机的CPU或系统中的其他部件处于某一确定的初始状态,并从这上状态开始工作。

(1)单片机常见的复位电路

通常单片机复位电路有两种:

上电复位电路,按键复位电路。

上电复位电路:

上电复位是单片机上电时复位操作,保证单片机上电后立即进入规定的复位状态。

它利用的是电容充电的原理来实现的。

按键复位电路:

它不仅具有上电复位电路的功能,同时它的操作比上电复位电路的操作要简单的多。

如果要实现复位的话,只要按下RESET键即可。

它主要是利用电阻的分压来实现的

 

在此设计中,采用的按键复位电路。

按键复位电路如图4-5所示:

(2)复位电路工作原理

上电复位要求接通电源后,单片机自动实现复位操作。

上电瞬间RESET引脚获得高电平,随着电容的充电,RERST引脚的高电平将逐渐下降。

RERST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。

上电与按键均有效的复位电路不仅在上电时可以自动复位,而且在单片机运行期间,利用按键也可以完成复位操作。

故本设计选用第二种上电复位与按键均有效的各单位电路。

图3.3复位电路

3.4单片机键盘电路

键盘电路是很多设计中很重要的组成部分。

它主要是输入设备。

单片机应用系统中键盘有独立式和行列式两种。

独立式键盘:

独立式键盘中,每个按键占用一根I/O口线,每个按键电路相对独立。

I/O口通过按键与地相连,I/O口有上拉电阻,无键按下时,引脚端为高电平,有键按下时,引脚电平被拉低。

I/O口内部有上拉电阻时,外部可不接上拉电阻。

行列式键盘:

行列式键盘键数比较多,从按一个键到键功能被执行主要包括两项工作:

一是键的识别,即在键盘中找出被按的是那一个键,另一项是键功能的实现,第一项是接口电路来实现的,而第二项是通过执行中断服务程序来实现的。

具体来说,键盘借口应完成以下操作功能:

 

3.5显示电路

超声波的显示电路,本系统采用三位一体LED数码管显示所测距离值,如图3-6。

数码管采用动态扫描显示,段码输出端口为单片机的P2口,位码输出端口分别为单片机的P2.0、P2.1、P2.2、P2.3口,数码管位驱运用PNP三极管S9012三极管驱动。

图3.5超声波显示电路

数码管每个LED需要的驱动电流在5-20mA之间,我们取12mA 为驱动电流,电阻R1就可以有公式(3.5.1)得到

R1=(Vcc-Vces-Vd)/Ic公式(3.5.1)Vd为数码管每个二极管的导通压降

R1=0.33k,我们取标称值330欧姆,9012的放大倍数在30-90之间,我们就可以都到R11的值,取β=30,那么R1可以由公式(3.5.2)得到

R11=(Vcc-Vbe)/Ic*β公式(3.5.2)

R11=10.75kΩ,因为我们要使9012工作在开关状态,所以R11的值小于10.75kΩ,我们大概取值4.7kΩ。

3.6超声波接收电路

超声波接收电路是采用的红外接收芯片CX20106,该芯片工作频率在40khz附近,CX20106总放大增益约为80dB以确保其⑦脚输出的控制脉冲序列信号幅3.5-5V范围内。

总增益大小由②脚外接的R1,C1决定,R1越小或C越大,增益越高。

C1取值过大时将造成频率响应变差,通常取为luf,C2为检波电容,一般取3.3UF,CX20106采用峰值检波方式,当C2容量较大时将变成乎均值检波,瞬态响应灵敏度会变低,C2较小时虽然仍为峰值检波,且瞬态响应灵敏度很高,但检波输出脉冲宽度会发生较大变动,容易造成解调出错而产生误操作。

R2为带通滤波器中心频率f0的外部电阻,改变R2阻值,可改变载波信号的接受频率,当f0偏离载波频率时,放大增益会显著下降,C3为积分电容,一般取330PF,取值过大,虽然可使抗干扰能力增强,但也会使输出编码脉冲的低电平持续时间增长,造成遥控距离变短。

⑦脚为输出端,CX20106处理后的脉冲信号由⑦脚输出给后续电路在加工处理推动负载工作。

图3.6超声波接收电路

CX20106的取值比较固定,用于41khz的超声波接收,按照图2.2CX20106红外线检波接收的专用芯片所选用的值给图3.6.1中的元件,R20=10Ω

3.7超声波发生电路

40kHz的方波由STC89C52单片机的P0.0输出,经过驱动电路74ls04的驱动,电压0到5v加载到超声波发送头上,驱动超声波发射头发射超声波。

该测距电路的40kHz方波信号由单片机STC89C52的P0.0发出。

方波的周期为1/40ms,即25µs,半周期为12.5µs。

每隔半周期时间,让方波输出脚的电平取反,便可产生40kHz方波。

由于单片机系统的晶振为12M晶振,因而单片机的时间分辨率是1µs,所以只能产生半周期为12µs或13µs的方波信号,频率分别为41.67kHz和38.46kHz。

本系统在编程时选用了前者,让单片机产生约41.67kHz的方波。

图3.7超声波发射驱动电路

 

第四章软件设计

4.1主程序设计

超声波测距的软件设计主要由主程序、超声波发生子程序、超声波接收程序及显示子程序组成。

超声波测距的程序既有较复杂的计算(计算距离时),又要求精细计算程序运行时间(超声波测距时),所以控制程序可采用C语言编程。

 

主程序首先是对系统环境初始化,设定时器0为计数,设定时器1定时。

置位总中断允许位EA。

进行程序主程序后,进行定时测距判断,当测距标志位为1时,测量一次。

测距间隔中,整个程序主要进行循环显示测量结果。

当调用超声波测距子程序后,首先由单片机产生1个频率为41kHz超声波脉冲,加载的超声波发送头上。

超声波头发送完送超声波后,立即启动内部计时器T0进行计时,启动对单片机P3.2脚的电平判断程序。

当检测到P3.2脚的电平由高转为低电平时,立即停止T0计时。

由于采用单片机采用的是12MHz的晶振,计时器每计一个数就是1μs,当超声波测距子程序检测到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)按公式

(2)计算,即可得被测物体与测距仪之间的距离。

设计时取15℃时的声速为340m/s则有:

  d=(c×t)/2=172×T0/10000cm其中,T0为计数器T0的计算值。

 测出距离后结果将以十进制BCD码方式送往LED显示约0.5s,然后再发超声波脉冲重复测量过程。

     

4.2超声波测距主程序 

 while

(1)

{

if(k1==1)//开始开始测距

{

csfs();//调用超声波发射子函数

}

if(testok==1)//如果接受成功标志位为1

{

if(1==testok)//如果1=teskok

{

testok=0;//tesk清0

x=l;//距离x作为传递参数存在

if(x!

=0)//显示前的清零

{

for(i=0;i<4;i++)

{

temp[i]=0;

}

}

i=0;

dataxs(x);//进行数据处理,将个十百位取出

if(l<100)//当距离等于100cm时,蜂鸣器报警

{

LS=0;//蜂鸣器打开

delay20ms();

LS=1;//蜂鸣器关闭

delay20ms();

}

}

}

testok=0;//测量成功标志清零

if(K1==0)//如果第一次按下开关K1,开始测距

{delay20ms();//按键延时消抖

if(K1==0)

{

{

k1=~k1;//按键标识位置取反

}

while(K1==0);//等待按键释放

}

}

}

      

4.3产生超声波的子程序设计

为了方便程序移置及准确产生超声波信号,本测距的超声波产生程序是用汇编语言编写的进退声波产生程序。

产生的超声波个数为

voidcsfs(void)//超声波发射程序//

{

unsignedchartimes=0;

while

(1)

{

unsignedcharj;

for(j=12;j>0;j--);//延时12us

FS=~FS;

times++;

if(times==2)//翻转2次,发送1个脉冲信号的超声波//

break;

}

4.4超声波测距主程序流程图 

 

4.5外部中断0相应流程图

 

第五章调试及性能分析

5.1调试

将每一部分的硬件焊接好,接上写入程序的单片机,通电检测。

一开始显示的是四个0.,看来任务艰巨啊,从硬件入手,看反射超声波和接受超声波硬件模块是否完好,在实验室里调一个发射超声波的程序,让硬件一直发射超声波,用示波器接接受电路看是否能将回波转换成电波,从示波器上得到结果,接受电路的能放大回波信号,信号强度达到5v-7v,由此可知,硬件电路是没有问题的,硬件没有问题,那就是软件的问题,这种情况首先说明电源电路和显示电路是没有问题的,问题出在软件,具体在哪里,要一步步的验证,我先将测量子程序屏蔽掉,不让它作用,直接给赋值一个值给显示参数,让他显示。

接通电源插上芯片,看结果,显示值没有问题,但是顺序掉了头,一下我把显示地址控制位的顺序输反了,接下来就是程序里最主要的部分距离测量程序,问题应该出在那里,从以上分析中问题可能出在,中断计时响应上,可能程序没有相应回波信号,我重新检查,中断的初始化,发现外部中断0的中断允许标志EX0没有被打开,造成了显示结果一直为0的情况,将外部中断0中断允许标志打开,重新编译没有错误,将程序写入单片机,通电检测,显示正确的值。

5.2性能分析

从实物测试的总体来说本测距板基本上达到了要求,理想上超声波测距能达到10到500厘左右,而我们所能实现的最大距离只有300厘米,测量结果有时会有2厘米的偏差。

能达到预

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 中医中药

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1