智能超声波测距仪项目设计学士学位论文.docx

上传人:b****1 文档编号:13328183 上传时间:2023-06-13 格式:DOCX 页数:23 大小:229.63KB
下载 相关 举报
智能超声波测距仪项目设计学士学位论文.docx_第1页
第1页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第2页
第2页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第3页
第3页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第4页
第4页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第5页
第5页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第6页
第6页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第7页
第7页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第8页
第8页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第9页
第9页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第10页
第10页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第11页
第11页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第12页
第12页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第13页
第13页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第14页
第14页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第15页
第15页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第16页
第16页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第17页
第17页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第18页
第18页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第19页
第19页 / 共23页
智能超声波测距仪项目设计学士学位论文.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

智能超声波测距仪项目设计学士学位论文.docx

《智能超声波测距仪项目设计学士学位论文.docx》由会员分享,可在线阅读,更多相关《智能超声波测距仪项目设计学士学位论文.docx(23页珍藏版)》请在冰点文库上搜索。

智能超声波测距仪项目设计学士学位论文.docx

智能超声波测距仪项目设计学士学位论文

学士学位论文(设计)

题目:

智能超声波测距仪设计

 

姓名:

徐乐

学号:

2009014014

学院:

工学院

专业/届别:

电子信息科学与技术专业/2013届

指导教师:

白龙

职称:

讲师

 

表1

牡丹江师范学院学士学位论文(设计)

选题论证报告

姓名

徐乐

专业/年级

电子信息科学与技术/2009

题目

智能超声波测距仪设计

选题的目的和意义

随着现代信息技术的广泛普及,对信息资源和信息活动的有效管理及利用日益成为提高各种工作效率的重要手段。

对该系统进行的实验,验证了本文提出的方法的正确性和有效性,并能够达到较高的测量精度。

本设计的超声波测距仪,在实际测量中,能达到很高的使用精度,实现了非接触、低功耗、免维护、性价比高等特点,是一款有很好市场前景的智能式测距仪。

研究内容与方法

主要研究内容:

本设计采用以STC8952单片机为核心的低成本、微型化液晶显示和语音播报超声波测距仪的硬件电路和软件设计方法。

整个电路采用模块化设计,主程序、预置子程序、发射子程序、接收子程序、显示子程序的模块组成。

分析方法:

1.分析实践法:

根据文献资料了解研究对象,分析整个系统的需求,科学进行实践配置。

2.数据辩证法:

通过实际操作,记录运行过程中的错误,进行研究辩证。

 

研究进度安排

1、选择论文题目:

2012年10月;

2、确定论文提纲,查阅资料:

2012年11月—2012年12月;

3、形成初稿:

2012年12月—2013年2月;

4、形成修订稿:

2013年2月—2013年3月;

5、形成论文定稿:

2013年4月。

 

指导教师意见:

 

指导教师(签名):

年月日

开题报告专家论证意见:

 

专家组长(签名):

年月日

摘要

本设计采用以STC8952单片机为核心的低成本、微型化液晶显示和语音播报超声波测距仪的硬件电路和软件设计方法。

整个电路采用模块化设计,主程序、预置子程序、发射子程序、接收子程序、显示子程序的模块组成。

各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。

在此基础上设计了系统的总体的方案,最后通过硬件和软件实现了各个功能模块。

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

矚慫润厲钐瘗睞枥庑赖。

关键词:

stc8925;微型化液晶显示;语音播报超声波;设计

 

Abstract

ThisdesignadoptstheSTC8952single-chipmicrocomputerasthecoreoflowcost,miniaturization,liquidcrystaldisplayandspeechbroadcasthardwarecircuitandsoftwaredesignmethodofultrasonicrangefinder.ThewholecircuitUSESmodulardesign,themainprogram,thepresetsubroutine,launchsubroutines,receivesubroutineanddisplaysubroutinemodules.TheprobesignalbySCMcomprehensiveanalysisprocessing,realizethefunctionsofultrasonicrangefinder.Onthebasisoftheoverallschemeofthesystemisdesigned,finally,realizedthefunctionofhardwareandsoftwaremodules.Relevantpartswithhardwarecircuit,programflowchart.聞創沟燴鐺險爱氇谴净。

Keywords:

stc8925;MiniaturizationLCDdisplay;Speechultrasound;design残骛楼諍锩瀨濟溆塹籟。

 

1引言

利用STC89C52单片机实现超声波测距。

通过超声波放射装置发射超声波遇物体反射回来再由接收装置接收处理。

利用声波在空气中的传输速度和整个收发延时计算出距离。

为了满足智能化、无接触距离测量要求,自主研制了一种性价比高、体积小的智能超声波测距仪,该测距仪以STC89C52单片机为控制核心,本文给出其具体实现方案。

本文设计的一种超声波测距仪,其最大特点是测量的液面与感应元件之间非接触。

超声波是指频率大于20KHz,并且能够在连续介质中传播的弹性机械波,超声波方向性较好,经过专门设计可定向的发射,遇到界面时将发生反射、折射以及波形的改变,超声波在空气中的传播速度为334m/s(常温下)。

利用超声波在介质中传播时,这些好的物理特性进行设计,使得超声波在测距中的灵活性、精确度大幅提高。

锹籁饗迳琐筆襖鸥娅薔。

 

2.设计要求、内容及组织形式

2.1设计要求

(1)学会焊接单片机系统板和驱动板并且连接驱动板与系统板间的连线。

(2)用超声波测离障碍物的距离,经过单片机处理判断是否是安全范围根据距离的长短分为安全、注意、危险。

(3)每采集一次信号LED灯闪烁一次表示采集成功。

(4)把采集的数据经单片机处理用12864液晶显示器显示出来,和语音模块处理用耳机输出提示距离情况。

2.2设计内容

本文所设计的超声波测距仪主要由AT89C52单片机、超声波发射电路、超声波接收放大电路、显示电路、语音播报电路。

構氽頑黉碩饨荠龈话骛。

首先由单片机驱动产生11.0592晶振,由超声破发射探头发送出去,在遇到障碍物反射回来时由超声破接收探头检测到信号,然后经过滤波、放大、整形之后送入单片机进行计算,把计算结果输出到液晶显示屏上。

輒峄陽檉簖疖網儂號泶。

2.3工作原理

声波在介质中传播被定义为纵波。

当声波受到尺寸大于其波长的目标物体挡住时即会发生反射;反射波被称为回声。

假如声波在介质中传播的速度是提前知道的,而且声波从声音的发生源到达目标,而返回声源的时间可以通过测量得到,那么就可以计算出从声波到目标地距离。

这就是本设计的测量原理,见式(2-1):

尧侧閆繭絳闕绚勵蜆贅。

L=½vt(2-1)

上式中,L为待测距离,v(m/s)为超声波在空气中的速度,t为往返时间。

由于超声波在空气中的传播速度与温度T(单位:

摄氏度)有如下关系,见式(2-2)识饒鎂錕缢灩筧嚌俨淒。

v=331.45+0.61T(2-2)

在平常温度下,温度每当变化1摄氏度,超声波的速度变化0.6m/s。

所以可以通过测温电路测量出当前温度,计算出超声波在当前温度下的传输速度。

通常声速随温度的变化会比较大,因此产生的测量误差也会比较大,所以若是所在环境中温度变化较大的环境下进行测量时,需要考虑声速补偿地问题。

时间t可以通过脉冲计数的方法间接测量,相当于将时间转化为对计数脉冲个数N的测量,假设计数脉冲的频率为f,则公式

(1)可写成见式(2-3)凍鈹鋨劳臘锴痫婦胫籴。

L=Nv½f(2-3)

电路原理图如图2-1所示:

图2-1超声波测距驱动板原理

 

2.4组织形式

2.4.1设计软、硬件方案

(1)硬件结构设计

首先单片机发出振荡频率再整形再由超声波发射器发出出超声波经物体反射回来。

接收器接收超声波信号再放大整形传入门控电路。

单片机处理再显示输出。

恥諤銪灭萦欢煬鞏鹜錦。

硬件结构设计图如图2-2所示:

图2-2硬件结构设计图

 

3超声波的发射电路及电路原理

3.1发射电路

超声波的发射电路原理图如下所示。

发生电路主要是由反相器74HC04和超声波的换能器T构成,单片机P3.3端口输出40KHZ方波信号一路经一级反相器后送到超声波换能器的一个电极,另一路经两级的反相器后送到超声波换能的另一个电极。

鯊腎鑰诎褳鉀沩懼統庫。

通过这种推挽形式将方波的信号加到超声波换能器两端,可以提高超声波的发射强度。

输出端则采用两个反相器并联,用以提高驱动能力的上拉电阻R1、R2一方面则可以提高反相器74HC04输出高电平的驱动能力,另一方面可以加强超声波换能的阻尼效果缩短振荡的时间。

硕癘鄴颃诌攆檸攜驤蔹。

超声波发射的电路如图3-1所示:

图3-1超声波发射电路

3.2显示电路原理

通过单片机的P0.0——P0.7、RST、P3.0——P3.7、X1、X2、GND与跳线帽连接控制液晶显示器的显示。

12864液晶显示器可显示32个汉字或64个字母可满足要求输出的内容。

阌擻輳嬪諫迁择楨秘騖。

显示电路的原理图如图3-2所示:

图3-2显示电路原理图

3.2.1超声波监测接收电路

集成电路CX20103A是一种红外线检波接收的专用芯片,常用在电视红外遥控接收器上。

本设计利用它制作超声波接收电路。

实验证明用CX20106A接收超声波具有很高的灵敏度和较高的抗干扰能力。

氬嚕躑竄贸恳彈瀘颔澩。

超声波监测接收电路如图3-3所示:

图3-3超声波监测接收电路

 

3.2.2语音转换输出电路

由单片机P3.4引脚为语音芯片WT558D-16提供数据再经过处理输出音频信号。

语音转换输出电路如图3-4所示:

图3-4语音转换输出电路图

 

4软件结构设计及源代码

4.1软件流程图

软件流程图如图4-1所示:

图4-1软件流程图

4.2程序源代码

程序源代码如下:

/***************************************

函数名:

floatDistance_count()

功能:

距离计算函数

****************************************/

floatDistance_count()

{

floattemp;

temp=high_time*256+low_time;

temp=(temp*10/9216)/2;

temp*=speed;

returntemp;

}

/***************************************

函数名:

voidtran(),voidtran1(),voidtran2()

功能:

超声波的发射

****************************************/

voidtran()

{

uchari;

TH0=0;

TL0=0;

TR0=1;

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

{

csb=!

csb;

nop;

nop;

nop;

nop;

nop;

nop;

nop;

nop;

nop;

}

csb=1;

delay_ms

(2);

EX1=1;

delay_ms(30);

if(flag==1)

{

distance=Distance_count();

dis=(ulong)distance;

flag=0;

}

elsedis=0;

}

voidtran1()

{

uchari;

TH0=0;

TL0=0;

TR0=1;

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

{

csb=!

csb;

nop;

nop;

nop;

nop;

nop;

nop;

nop;

nop;

nop;

}

csb=1;

delay_ms

(2);

EX1=1;

delay_ms(30);

if(flag==1)

{

distance=Distance_count();

dis=(unsignedlong)distance;

flag=0;

}

elsedis=0;

}

voidtran2()

{

uchari;

TH0=0;

TL0=0;

TR0=1;

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

{

csb=!

csb;

nop;

nop;

nop;

nop;

nop;

nop;

nop;

nop;

nop;

}

csb=1;

delay_ms

(2);

EX1=1;

delay_ms(40);

if(flag==1)

{

distance=Distance_count();

dis=(unsignedlong)distance;

flag=0;

}

elsedis=0;

}

/***************************************

函数名:

voiddis_all(ulongdis_s)

功能:

控制LED指示灯和语音播报

****************************************/

voiddis_all(ulongdis_s)

{

show(dis_s);

if(dis_s>2000)

{

show_one(DIS4,2);

if(flag_2!

=1)

{

send_oneline(12);//安全距离

delay_nms(50);

while(!

busy);

}

flag_2=1;

}

else

{

if((dis_s>500)&(dis_s<1000))

{

show_one(DIS5,2);

if(flag_2!

=2)

{

send_oneline(14);//保持距离

delay_nms(50);

while(!

busy);

}

flag_2=2;

}

else

{

if((dis_s>100)&(dis_s<500))

{

show_one(DIS6,2);

if(flag_2!

=3)

{

send_oneline(15);//请注意

delay_nms(50);

while(!

busy);

send_oneline(13);//危险距离

delay_nms(50);

while(!

busy);

}

flag_2=3;

}

else

{

show_one(DIS8,2);

}

}

}

}

/***************************************

函数名:

voidmain(void)

功能:

主函数

****************************************/

voidmain(void)

{

ulongdatatime;

uchari,j;

P1=0xff;

P2=0xff;

TMOD=0x01;

TH0=0;

TL0=0;

EA=1;

IE=0x80;

displayall();

while

(1)

{

lcd_pos(4,0);//设置显示位置为第三行

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

{

write(1,DIS10[i]);//lcd_wdat(DIS3[i]);

delay

(2);

}

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

{

tran();

if(dis==0)

{

tran1();

if(dis==0)

{tran2();}

}

dis=do_s(dis);

dis_4[i]=dis;

}

fit_1();

if(dis

{

if((time-dis)>4000)time=time-1000;

else

{

if((time-dis)<2500)time=dis;

elsetime=time-100;

}

}

else

time=dis;

dis_all(time);

if(tc_say==4)

{

soundplay(time);

tc_say=0;

temp_all();

}

tc_say++;

lcd_pos(1,6);

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

write(1,space4[j]);

lcd_pos(1,6);

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

{

write(1,point4[j]);

delay(100);

}

}

}

/***************************************

函数名:

voidTT()interrupt2

功能:

中断,产生脉冲

****************************************/

voidTT()interrupt2

{

uinttemp;

TR0=0;

ET1=0;

flag=1;

temp=TH0*256+TL0;

if((temp>0)&&(temp<30000))

{

high_time=TH0;

low_time=TL0;

}

else

{

high_time=0;

low_time=0;

}

}

/*********************************************************釷鹆資贏車贖孙滅獅赘。

函数名:

voidwrite()

功能:

写指令或数据函数

*********************************************************/怂阐譜鯪迳導嘯畫長凉。

voidwrite(bitstart,ucharddata)

{

ucharstart_data,Hdata,Ldata;

if(start==0)//11111,(0),(0),0

start_data=0xf8;//写指令

else//11111,(0),

(1),0

start_data=0xfa;//写数据

Hdata=ddata&0xf0;//取高四位

Ldata=(ddata<<4)&0xf0;//取低四位

sendbyte(start_data);//发送起始信号

delay_lcd

(1);//延时

sendbyte(Hdata);//发送高四位

delay_lcd

(1);//延时

sendbyte(Ldata);//发送低四位

delay_lcd

(1);//延时

}

/*********************************************************谚辞調担鈧谄动禪泻類。

函数名:

voidlcd_init()

功能:

初始化LCD

*********************************************************/嘰觐詿缧铴嗫偽純铪锩。

voidlcd_init()

{

delay_lcd(10);//延时等待LCM进入工作状态

LCD_CS=1;//片选高电平有效

write(0,0x30);//基本指令操作

write(0,0x0c);//显示打开,光标关,反白关

write(0,0x01);//清屏,将DDRAM的地址计数器归零

write(0,0x06);

}

/*********************************************************熒绐譏钲鏌觶鷹緇機库。

函数名:

voiddisplayall()

功能:

主显示函数

*********************************************************/鶼渍螻偉阅劍鲰腎邏蘞。

voiddisplayall()

{

uchari;

delay

(2);

lcd_init();//初始化LCD

lcd_pos(2,0);//设置显示位置为第二行

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

{

write(1,DIS9[i]);//lcd_wdat(DIS9[i]);

delay(30);

}

lcd_pos(3,0);//设置显示位置为第三行

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

{

write(1,DIS10[i]);//lcd_wdat(DIS10[i]);

delay(30);

}

delay(1000);

photodisplay(Car);//显示图片1

delay(500);*/

clr_screen();//上电,等待稳定

lcd_pos(1,0);//设置显示位置为第一行

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

{

write(1,DIS1[i]);//lcd_wdat(DIS1[i]);

delay

(2);

}

lcd_pos(3,0);//设置显示位置为第三行

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

{

write(1,DIS3[i]);//lcd_wdat(DIS3[i]);

delay

(2);

}

lcd_pos(4,0);//设置显示位置为第四行

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

{

write(1,DIS8[i]);//lcd_wdat(DIS8[i]);

delay

(2);

}

delay(1000);

}

 

5.设计进度安排

第一阶段

主要是对通用单片机系统基础板及驱动板有所了解与认识。

第二阶段

对系统集成板及驱动板进行焊接。

第三阶段

完成软、硬件设计方案,完成智能超声波测距课程设计。

第四阶段

对完成智能超声波测距课程设计进行测试及调试。

第五阶段

对智能超声波测距系统课程设计进行答辩

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

当前位置:首页 > 农林牧渔 > 林学

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

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