基于51单片机的超声测距器的设计.docx

上传人:b****6 文档编号:13463399 上传时间:2023-06-14 格式:DOCX 页数:16 大小:467.39KB
下载 相关 举报
基于51单片机的超声测距器的设计.docx_第1页
第1页 / 共16页
基于51单片机的超声测距器的设计.docx_第2页
第2页 / 共16页
基于51单片机的超声测距器的设计.docx_第3页
第3页 / 共16页
基于51单片机的超声测距器的设计.docx_第4页
第4页 / 共16页
基于51单片机的超声测距器的设计.docx_第5页
第5页 / 共16页
基于51单片机的超声测距器的设计.docx_第6页
第6页 / 共16页
基于51单片机的超声测距器的设计.docx_第7页
第7页 / 共16页
基于51单片机的超声测距器的设计.docx_第8页
第8页 / 共16页
基于51单片机的超声测距器的设计.docx_第9页
第9页 / 共16页
基于51单片机的超声测距器的设计.docx_第10页
第10页 / 共16页
基于51单片机的超声测距器的设计.docx_第11页
第11页 / 共16页
基于51单片机的超声测距器的设计.docx_第12页
第12页 / 共16页
基于51单片机的超声测距器的设计.docx_第13页
第13页 / 共16页
基于51单片机的超声测距器的设计.docx_第14页
第14页 / 共16页
基于51单片机的超声测距器的设计.docx_第15页
第15页 / 共16页
基于51单片机的超声测距器的设计.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于51单片机的超声测距器的设计.docx

《基于51单片机的超声测距器的设计.docx》由会员分享,可在线阅读,更多相关《基于51单片机的超声测距器的设计.docx(16页珍藏版)》请在冰点文库上搜索。

基于51单片机的超声测距器的设计.docx

基于51单片机的超声测距器的设计

 

基于51单片机的超声测距器的设计

摘要:

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

利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此本文设计了基于51单片机的超声波测距器。

该系统中由单片机控制超声波发射器发射超声波并计时,当超声波接收器接收到回波信号后单片机根据时间差计算距离,并通过七段数码管来显示。

本文还对设计的系统进行了Proteus仿真,验证其正确性。

为了便于实物制作,对该系统制作PCB板。

本设计的超声波测距器可以显示测量精度为0.1米,测量范围为0.1~9.9米,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。

关键词:

51单片机,超声波测距系统,7447解码器

绪论

超声波是频率高于20kHz的声波,它方向性好,穿透能力强,易于获得较集中的声能,在水中传播距离远,可用于测距,测速,清洗,焊接,碎石、杀菌消毒等[1][2]。

在医学、军事、工业、农业上有很多的应用。

超声波因其频率下限大约等于人的听觉上限而得名。

超声波在气体、液体及固体中以不同速度传播,定向性好、能量集中、传输过程中衰减较小、反射能力较强[3]。

超声波能以一定速度定向传播、遇障碍物后形成反射,利用这一特性,通过测定超声波往返所用时间就可计算出实际距离,从而实现无接触测量物体距离。

超声波测距迅速、方便,且不受光线等因素影响,广泛应用于水文液位测量、建筑施工工地的测量、现场的位置监控、振动仪车辆倒车障碍物的检测、移动机器入探测定位等领域[4][5][6]。

本文设计的超声波测距器由单片机控制超声波发射器发射超声波并计时当超声波接收器接收到回波信号后单片机根据时间差计算距离,并通过七段数码管来显示,进而显示对应的测量距离。

1.设计要求与功能分析

设计一个超声波测距器,可以应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度的测量等场合。

要求显示测量精度为0.1米,测量范围为0.1~9.9米,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。

2.超声测距器原理

超声波是指频率高于20KHz的机械波。

为了以超声波作为检测手段,必须产生超生波和接收超声波。

完成这种功能的装置就是超声波传感器,习惯上称为超声波换能器或超声波探头。

超声波传感器有发送器和接收器,但一个超声波传感器也可具有发送和接收声波的双重作用。

超声波传感器是利用压电效应的原理将电能和超声波相互转化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。

超声波发射器Tx向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器Rx收到反射波就立即停止计时。

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

S=340t/2。

图1超声波测距原理示意图

图2超声波测距器系统设计框图

3.系统硬件设计

超声波测距器的硬件有3个部分组成:

超声波发射器、超声波接收器、单片机系统及显示电路。

3.1超声波发生器的设计

方案一:

压电式超声波发生器实际上是利用压电晶体的谐振来工作的。

超声波发生器内部结构如图所示,它有两个压电晶片和一个共振板。

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

反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了[7]。

图3压电式超声波发生电路原理图

方案二:

由CD4069构成的4个反相器用于驱动超声波发射器Tx,两个三极管2SC1815起到电平匹配的作用,与非门CD4011将输入的方波信号分解出一个反响信号,这一正一反的信号都由反相器CD4069驱动后,通过电容C1的相移作用产生了180度的相差,于是正反信号叠加成一个具有正负电平的脉冲信号作为超声波发射器的发生信号。

该脉冲信号通过Tx进行能量转换,以超声波的形式发射出去。

图4超声波发射器及其驱动电路

通过以上综合分析可以看出,方案二具有综合设计优点,因此采用方案二设计。

3.2超声波接收器的设计

方案一:

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

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

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

适当改变C4的大小,可改变接受电路的灵敏度和抗干扰能力[8]。

图5超声波接收电路原理图

方案二:

当超声波遇到障碍物反射回来,回波信号被超声波接收器Rx接受。

通过滤波和两级运算放大器放大后,在经过二极管的包络检波获得回波信号的包络线,最后由比较器输出回波的开关信号。

图6超声波接收器及信号调理电路

通过以上综合分析可以看出,方案二具有综合设计优点,因此采用方案二设计。

3.3单片机系统及显示电路

单片机采用AT89C51,采用12MHz高精度的晶振,以获得较稳定的时钟频率,减小测量误差。

单片机用P1.0端口输出超声波转化器所需的40KHz方波信号,单片机用P1.2端口检测超声波接受电路输出的返回信号。

单片机与七段数码管通过解码器7447接口,段数码管用于显示最终的测量距离数值。

图7单片机系统及显示电路

3.3.1单片机电路

单片机的P1.0口用于发射40KHz的信号,P1.2用于检测并接受回波信号。

P0将测得发生超声波到接受的时间差传送与解码器7447用于数码管显示。

内部时钟电路利用8051内部的一个高增益反相器,把一个有晶体振荡器和两个电容器组成的自激振荡电路接于XTAL1和XATL2之间,把振荡器发出的脉冲直接送与内部时钟电路。

时钟电路产生的振荡脉冲经过触发器进行二分频之后,成为单片机的时钟脉冲信号。

石英晶体振荡器频率是12MHz,电容器C1、C2选择在30pF。

单片机的RST引脚是复位信号的输入端,复位信号是高电平有效,其有效时间应持续24个振荡周期以上。

复位操作有上电自动复位和按键手动复位两种方式。

本文采用给外部复位电路中的电容充电而实现的上电自动复位。

时钟电路和复位电路的连接电路图见于图7单片机系统及显示电路[9]。

3.3.27447解码器

图9为通过解码器7447驱动七段数码管来控制信息。

例如,要显示数字5,则在7447的BCD输入端输入数字5的BCD码0101,则亮段控制输出端为0100100,这样,a、c、d、f、g为低电平0。

在共阳极型七段数码管中,低电平使对应的亮段发光,七段数码管的a-g段与解码器7447的亮段控制输出端通过限流电阻相连,于是显示出数字5。

不同解码器芯片有可能对“6”和“9”这两个数的“翻译”方式不一样,所以这两个数有时出现如图所示的显示方式[10]。

图8数字“6”和“9”的显示

图9解码器7447管脚图及它与七段数码管的接口

表1解码器7447真值表

显示

BCD码输入端

亮段控制输出端

D

C

B

A

a

b

c

d

e

f

g

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

1

1

0

0

1

1

1

1

2

0

0

1

0

0

0

1

0

0

1

0

3

0

0

1

1

0

0

0

0

1

1

0

4

0

1

0

0

1

0

0

1

1

0

0

5

0

1

0

1

0

1

0

0

1

0

0

6

0

1

1

0

0

1

0

0

0

0

0

7

0

1

1

1

0

0

0

1

1

1

1

8

1

0

0

0

0

0

0

0

0

0

0

9

1

0

0

1

0

0

0

0

1

0

0

4.系统软件设计

超声波测距器的程序有3个部分组成:

产生发射脉冲信号、等待回波信号时的计时功能、计算并显示距离。

4.1产生发射脉冲信号

超声波频率为40kHz,即周期为25微秒。

为了方便计算,从单片机的P1.0口输出周期为24微秒的方波信号,该信号通过适当的驱动电路来推动超声波发射器Tx发射超声波。

为保证回波质量,P1.0口连续输出20个方波作为Tx的发射脉冲信号。

这里使用Timer0工作在模式2下(具有自动重新装载功能的8位定时器)进行延时产生周期为24微秒的脉冲信号。

计算出计数初值为0F4H。

结合DJNZ命令控制产生20个方波信号。

4.2等待回波信号时的计时功能

利用Timer1工作在模式1下,计数值范围最大,为65536。

在晶振频率12MHz下,最大计时长度为65.536ms。

在65.536ms内单片机接收到回波信号,即停止Timer1工作,并读出当前计数值。

如果没有接收到回波,说明测量距离大于11.14米或者别的原因导致回波丢失,则Timer1在65.536ms后溢出,程序跳回发射脉冲信号部分重新发射超声波。

最后将计数值的高位字节存放在31H,低位字节存放在30H。

4.3计算并显示距离

单片机将时间差乘以超声传播速度V=340m/s,然后除以2即得到实测的障碍物到超声测距器的距离。

由于超声测距器中只有两位七段数码管,设计显示精度为0.1米,所以测量范围为0.1-9.9米。

先计算当距离为1米时的时间差为

16FAH。

而距离为0.1米时的时间差

,即024CH。

用30H和31H中记录的时间差计数值与16FAH和024CH来比较,从而得到与1米和0.1米对应的时间差的倍数,就是测量的距离值。

将这个距离值输出到P0口即可正确显示出超声波测距器实测的距离值。

源程序清单

;===================*发射脉冲信号*=====================

ORG00H

START:

MOVA,#0FFH

MOVP1,A;P1.2作为输入口,需要先写入“1”

MOVTMOD,#02H;设置Timer0工作在模式2

TIMER0_LOAD:

MOVTH0,#0F4H;载入计数初值

MOVTL0,#0F4H

RESEND_PULSE:

MOVR2,#40

SEND_PULSE:

SETBTR0;启动Timer0

TIMER0_CHECK:

JNBTF0,TIMER0_CHECK;检测Timer溢出标志,当TF0=1,跳出

CLRTR0

CLRTF0

CPLP1.0

DJNZR2,SEND_PULSE

;===================*等待回波信号的计时功能*=====================

WAITECHO:

;等待回波信号

MOVTMOD,#12H;Timer1模式1,Timer0模式2

TIMER1_LOAD:

MOVTL1,#00H

MOVTH1,#00H

SETBTR1

ECHO_CHECK:

JBP1.2,RECORD

JNBTF1,ECHO_CHECK

CLRTR1

CLRTF1

JMPRESEND_PULSE

RECORD:

CLRTR1

CLRTF1

MOV30H,TL1;计时低字节存放在30H

MOV31H,TH1;计时高字节存放在31H

;===================*计算并显示距离*=====================

MOVR0,#00H;记录1米的倍数,清0

MOVR1,#00H;记录0.1米的倍数,清0

MOVSP,#50H

CLRC

METER:

;与1米的时间差16FAH进行比较

PUSH30H

MOVA,30H

SUBBA,#0FAH

MOV30H,A

MOVA,31H

SUBBA,#16H

JCDECIMETER

INCR0

MOV31H,A

JMPMETER

DECIMETER:

;与0.1米的时间差024CH进行比较

POP30H

DECIMETER_1:

MOVA,30H

SUBBA,#4CH

MOV30H,A

MOVA,31H

SUBBA,#02H

JCDISPLAY

INCR1

MOV31H,A

JMPDECIMETER_1

DISPLAY:

MOVA,R0

SWAPA

ADDA,R1

MOVP0,A;显示的数据,从P0口输出

END

5.系统仿真与调试

5.140kHz发射脉冲信号

为了保证回波质量,P1.0连续输出20个周期为24微秒的方波作为Tx的发射脉冲信号,仿真结果如下:

图1020个40kHz的方波脉冲信号

5.2接受脉冲信号

超声波测距系统发射的超声波信号,需要遇到障碍物后,再返回被超声波接收器接受,最后以脉冲信号作用于单片机系统。

因此,为了便于仿真和满足仿真的需要,本次系统仿真时以单脉冲激励源作为回波的接收信号作用于P1.2口,脉冲极性为正脉冲(低-高-低)。

通过调节脉冲开始时间,模拟不同时刻时接收到的回波信号,也就是实际的测量不同距离。

本次仿真设定开始时间为50ms,单脉冲信号如下所示:

图11开始时间为50ms的正极性的单脉冲信号

5.3测量距离显示

超声波测距系统初始化时的状态如图所示:

图12测距仿真初始化

以开始时间为50ms的正极性的单脉冲作为接收信号,P1.2口检测到高电平时Timer1停止计时,由七段数码管显示测量距离。

所测距离计算过程如下:

20个脉冲发射信号的时间为:

发射超声波到接受之间的时间差:

所测距离:

图13测距仿真结果

所测距离的仿真结果为8.3m,计算结果为8.4m,仿真基本满足要求,仿真成功。

6.PCB板

图14测距系统PCB板

结论

本文主要讲述了基于51单片机的超声波测距器的设计。

从超声波测速原理出发,先后进行了超声波发射器、超声波接收器和单片机控制及显示电路的设计;然后根据需要进行了软件程序的编写,包括超声波发射信号、等待回波信号时的计时功能和计算并显示距离;最后通过Proteus软件,对设计的电路进行模拟仿真,已验证其正确性。

本文设计的超声波测距器测量时与被测物体无直接接触,能够清晰稳定地显示测量结果,可以应用于工业测量等领域。

声速c与温度有关,如温度变化不大,则可认为声速是基本不变的。

如果测距精度要求很高,则应通过温度补偿的方法加以校正。

在系统加入温度传感器来监测环境温度,可进行温度被偿。

为了增强系统的可靠性,应在软硬件上采用抗干扰措施。

参考文献

[1]张雷,王志鹏.基于AT89S52单片机的超声波测距避障小车[J]机电信息,2010,(24)

[2]张丹,贺西平.基于单片机的超声波测距系统的设计[J]纺织高校基础科学学报,2008,(01)

[3]吴超,戴亚文.基于AT89S52单片机的超声波测距系统的设计[J]中原工学院学报,2008,(05)

[4]宋永东,周美丽,白宗文.高精度超声波测距系统设计[J]现代电子技术,2009(08)

[5]李丽霞.单片机在超声波测距中的应用[J]电子技术,2002,(06)

[6]姜道连,宁延一,袁世良.用AT89C2051设计超声波测距仪[J]国外电子元器件,2000,(12)

[7]杨欣等.电子设计从零开始.北京:

清华大学出版社,2005

[8]杨欣等.51单片机应用从零开始.北京:

清华大学出版社

[9]郭文川等.单片机原理与接口技术.北京:

中国农业出版社

[10]王玉凤等.51单片机应用实例详解.北京:

清华大学出版社

致谢

在这次单片机的课程设计中,通过资料的查阅,制定方案等一系列过程,极大的丰富了专业知识,理论与实际动手能力又有了一个很大的提高,特别是在单片机编程方而又学到了不少新的东西,弥补了学习过程中的不足。

在Proteus仿真和制作PCB板过程中,我们意识到做事要认真,同时还要有扎实的专业知识。

本次设计得以顺利完成,首先要感谢王老师的指导和大力支持。

王老师渊博的专业知识、严谨的治学态度、精益求精的工作作风、平易近人的人格魅力对我们影响深远,王孝检老师指导了我们的设计的结构、思路、同时提供了一些专业知识的帮助。

表示衷心的感谢!

附录

元器件清单

元件序号

型号

数量

1

AT89C51单片机

1

2

CD4011(与非门)

1

3

2SC1815(三极管)

2

4

CD4069(反相器)

4

5

CSB40T(超声波换能器)

1

6

CSB40R(超声波接受器)

1

7

共阳极七段数码管

2

8

7447解码器

2

9

LM833N(放大器)

2

10

LM358N

1

11

电阻、电容

若干

.

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2