超声波测距课程设计报告书.docx

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

超声波测距课程设计报告书.docx

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

超声波测距课程设计报告书.docx

超声波测距课程设计报告书

.

 

河北联合大学

 

2009级本科课程设计

 

超声波测距仪

 

姓名:

任燕凯

 

学院:

电气工程学院

 

专业:

电气

(1)

 

学号:

10

 

指导教师:

刘丽萍

 

2011年12月

 

...

.

 

电气工程学院课程设计评审表

 

学生姓名

任燕凯

专业

电气工程及其自动化

年级

09学号

课程

数电

设计题目

超声波测距仪

评价内容

评价指标

 

有扎实的基础理论知识和专业知识;能正确设计实验方案(或正确建立

数学模型、机械结构方案);独立进行实验工作;能运用所学知识和技

业务水平

能去发现与解决实际问题;能正确处理实验数据;能对课题进行理论分析,得出有价值的结论

 

综述简练完整,有见解;立论正确,论述充分,结论严谨合理;实验正论文(设计确,分析处理科学;文字通顺,技术用语准确,符号统一,编号齐全,说明书、图书写工整规范,图表完备、整洁、正确;论文结果有应用价值;图纸绘

纸)质量制符合国家标准,质量符合要求;计算及测试结果准确;工作中有创新意识;对前人工作有改进或突破,或有独特见解

工作量、按期完成规定的任务,工作量饱满,难度较大;工作努力,遵守纪律;

工作态度工作作风严谨务实

 

合计

 

指导

教师

评语

 

10

 

评分评定

权值成绩

 

50

 

50

 

100

 

...

.

 

1

2

1.1

2

1.2

2

2

2

3

2

3.1

2

3.2

3

3.3

5

3.4

5

4

6

7

 

...

.

 

超声波测距仪的设计

 

1设计任务与要求

1.1基本功能

完成2米以内的距离测量并通过数码管显示

1.2扩展功能

接收部分采用CX20106A红外接收芯片,使回波更容易被接收,使实验省去了繁琐的调试。

2超声波测距仪设计原理

超声波测距仪的总体框图如图1所示,主体电路完成超声波(40KHZ)的发射,接收及距离的显

示。

 

图1超声波测距仪总体框图

 

3各部分的电路设计

3.1显示部分

3.1.174HC138译码器的工作原理(如真值表所示)

 

...

.

 

表1译码器器的真值表

 

3.1.2译码电路与显示电路的工作原理

单片机控制段选,译码器控制位选,来完成显示部分

 

3.2发射部分

3.2.1波形的产生

利用单片机的T2定时中断产生40KHZ的脉冲,通过软件产生的脉冲,频率比较准确,

易于驱动超生波的发出。

 

...

.

 

3.2.2发射部分

 

输出的40kHz方波信号一路经一级反向器后送到超声波换能器的一个电极。

另一路经两级反向器

后送到超声波换能器的另一个电极。

用这种推挽形式将方波信号加到超声波换能器两端。

可以提

高超声波的发射强度。

输出端采用两个反向器并联。

用以提高驱动能力。

上拉电阻R10、R20一

方面可以提高反向器74LS04输出高电平的驱动能力。

另一方面可以增加超声波换能器的阻尼效果,缩短其自由振荡的时间。

3.3接收部分

使用CX20106A集成电路对接收探头受到的信号进行放大、滤波。

其总放大增益80db。

电路如下图所示

 

...

.

 

CX20106A的引脚注释。

1管脚:

遥控信号输入端,该脚和地之间连接PIN光电二极管,该脚的输入阻抗约为40kΩ。

2管脚:

该脚与地之间连接RC串联网络,它们是负反馈串联网络的一个组成部分,改变它们的数

值能改变前置放大器的增益和频率特性。

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

降,反之则放大倍数增大。

但C1的改变会影响到频率特性,一般在实际使用中不必改动,推荐选

用参数为R1=4.7Ω,C1=1μF。

3管脚:

该脚与地之间连接检波电容,电容量大为平均值检波,瞬间相应灵敏度低;若容量小,则

为峰值检波,瞬间相应灵敏度高,但检波输出的脉冲宽度变动大,易造成误动作,推荐参数为3.3

μf。

4管脚:

接地端。

5

管脚:

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

f0,阻值越大,中心频率越

低。

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

f0≈38kHz。

6管脚:

该脚与

地之间接一个积分电容,标准值为

330pF,如果该电容取得太大,会使探测距离变短。

7

管脚:

遥控命令输出端,它是集电极开路输出方式,因此该引脚必须接上一个上拉电阻到电源端,

推荐阻值为22kΩ,没有接受信号是该端输出为高电平,有信号时则产生下降。

8

脚:

电源正极,4.5~5V。

最初,我们直接用

7脚输出,但用示波器发现无信号是其输出高电平

的同时夹杂这少量的低电平。

因此,我们在此处再加一个旁通电容,平均华其电压输出,以去除低电平信。

 

3.4单片机最小系统

最小系统由复位部分和晶振部分组成,原理图如下所示。

 

...

 

4程序设计

本设计采用T0定时器控制的计算。

程序流程图如下所示:

 

程序初始化

 

N

按键是

否按下

 

Y

 

T0开始计时

开始发超声波

 

N判断是

不是20

条波

.

 

20条脉冲的输出,用T2的捕获功能来完成回波信号的接收和时间

 

Y

 

T2开始计时

 

N检测

回拨

信号

...

.

 

YY

 

T2停止计时记

T0停止计时录时间

 

计算距离

 

数码管显示

 

5参考资料

数字电路第五版;

单片机及应用系统设计;

程序如下:

#include

#defineucharunsignedchar

#defineuintunsignedint

ucharcodeduma[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

sbita=P3^0;

sbitb=P3^1;

sbitc=P3^2;

sbitfa=P1^0;

sbitz=P1^4;

ucharsign_failure;

ucharsign_success;

ucharqian,bai,shi,ge;

uints,t,count;

voiddelay(ucharx);

voidinit();

voidmeasure();

voiddisplay();

voidmain()

{

 

...

.

 

init();//程

序初始化

while

(1)

{

 

measure();//测

量函数

 

qian=s/1000;//为

显示计算数值

bai=(s/100)%10;

shi=(s/10)%10;

ge=s%10;

display();//显示函数

}

}

 

voiddelay(ucharx)//延时函数

{

uchari,j;

for(i=x;i>0;i--)

for(j=110;j>0;j--);

}

 

voidinit()

{

 

fa=0;

count=0;

z=1;//指

示灯亮

s=0;

t=0;

EA=1;

TMOD=0x02;//T0

工作在方式1

T2CON=0x09;//T2

工作在捕获模式

ET0=1;

ET2=1;

 

...

.

 

}

 

voidT0_0()interrupt1//T0中断

函数

{

if(TH0==(256-12))

TH0=256-13;

else

TH0=256-12;

fa=!

fa;

count++;

}

 

voidT2_2()interrupt5//T2中断

函数

{

if(TF2)

{

TF2=0;//T2溢出

也没检测到波

sign_failure=1;//测量失

败位置1

 

}

else

{

EXF2=0;

t=RCAP2H*256+RCAP2L;//计算时间

sign_success=1;//测量成功

位置1

}

}

 

voidmeasure()//测量函数

{

 

sign_failure=0;

sign_success=0;

 

...

.

 

TR0=1;//开T0中

TR2=1;//开T2中

TH0=(256-12);

TL0=(256-13);

TH2=TL2=0;

//T2初值设为零

while(count<16);

 

TR0=0;//停止

发射

count=0;//关闭

T0

while(sign_success==0)

{

if(sign_failure)

{

TR2=0;//关闭

T2计时

z=0;//指示

灯灭

 

}

TR2=0;

s=t*0.157;//计算距离

}

}

 

voiddisplay()//显示函数

{

a=b=c=0;

P2=duma[qian];//显示第一位

delay(10);

 

a=1;

b=c=0;

P2=duma[bai];//显示第二位

delay(10);

 

...

.

 

a=c=0;

b=1;

P2=duma[shi];//显示第三位

delay(10);

 

a=b=1;

c=0;

P2=duma[ge];//显示第四位

delay(10);

}

 

...

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

当前位置:首页 > 求职职场 > 社交礼仪

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

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