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

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

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

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

超声波测距课程设计报告书.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定时器控制20条脉冲的输出,用T2的捕获功能来完成回波信号的接收和时间的计算。

程序流程图如下所示:

 

 

NY

 

Y

 

NN

 

YY

 

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