《综合技能训练》设计报告单片机超声波测距仪设计

上传人:jiups****uk12 文档编号:45975635 上传时间:2018-06-20 格式:DOCX 页数:10 大小:35.91KB
返回 下载 相关 举报
《综合技能训练》设计报告单片机超声波测距仪设计_第1页
第1页 / 共10页
《综合技能训练》设计报告单片机超声波测距仪设计_第2页
第2页 / 共10页
《综合技能训练》设计报告单片机超声波测距仪设计_第3页
第3页 / 共10页
《综合技能训练》设计报告单片机超声波测距仪设计_第4页
第4页 / 共10页
《综合技能训练》设计报告单片机超声波测距仪设计_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《《综合技能训练》设计报告单片机超声波测距仪设计》由会员分享,可在线阅读,更多相关《《综合技能训练》设计报告单片机超声波测距仪设计(10页珍藏版)》请在金锄头文库上搜索。

1、综合技能训练综合技能训练设计报告设计报告课题名称:单片机超声波测距仪设计课题名称:单片机超声波测距仪设计姓姓 名:尧飞扬名:尧飞扬班班 级:级:1410601学学 号:号:201410060135指导老师:马善农指导老师:马善农东华理工大学机械与电子工程学院东华理工大学机械与电子工程学院2017 年年 6 月月目目 录录1设计要求设计要求2设计方案设计方案3软件核心部分代码软件核心部分代码4调试心得和收获调试心得和收获1.设计要求1.利用超声波模块进行测量系统到前方障碍物之间的距离。2.用户可以通过按键设定距离的上限和下限。3.当系统检测到跟前方障碍物的距离超出设定范围的时候驱动蜂鸣器报警。4

2、.系统通过检测环境温度,校正超声波的传播速度,使其距离测量更加精确。5.系统通过 LCD1602 显示相关设置的参数。2 设计方案由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距 离的测量。利用超声波检测距离,设计比较方便,计算处理也较简单,并且在测量精度方 面也能达到农业生产等自动化的使用要求。 超声波发生器可以分为两大类:一类是用电气方式产生超声波,一类是用机械方式产 生超声波。电气方式包括压电型、电动型等;机械方式有加尔统笛、液哨和气流旋笛等。 它们所产生的超声波的频率、功率、和声波特性各不相同,因而用途也各不相同。目前在 近距离测量方面常用的是压电式超声波

3、换能器。根据设计要求并综合各方面因素,本文采 用 AT89C51 单片机作为控制器,用动态扫描法实现 LED 数字显示,超声波驱动信号用单 片机的定时器。 2 系统的硬件结构设计由单片机 AT89C51 编程产生 40kHz 的方波,由 P3.6 口输出,再经过放大电路,驱动超声波发射探头发射超声波。发射出去的超声波经障碍物反射回来后,由超声波接收头接收到信号,通过接收电路的检波放大、积分整形及一系列处理,送至单片机。单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离,并由单片机控制显示出来。该测距装置是由超声波传感器、单片机、发射/接收电路和 LED 显示器组成。传

4、感器输入端与发射接收电路相连,接收电路输出端与单片机相连接,单片机的输出端与显示电路输入端相连接。其时序图如图 1-2 所示。图 1-2 时序图单片机在 T0时刻发射方波,同时启动定时器开始计时,当收到回波后,产生一负跳变到单片机中断口,单片机响应中断程序,定时器停止计数。计算时间差,即可得到超声波在 媒介中传播的时间 t,由此便可计算出距离。3 核心代码超声波测距的原理为超声波发生器 T 在某一时刻发出一个超声波信号,当这个超声波遇到被测物体后反射回来,就被超声波接收器 R 所接收到。这样只要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生器与反射物体的距离。距离的计算公

5、式为: d=s/2=(ct)/2 (1) 其中,d 为被测物与测距仪的距离,s 为声波的来回的路程,c 为声速,t 为声波来回所用的时间。 在启动发射电路的同时启动单片机内部的定时器 T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波时,接收电路输出端产生一个负跳变,在 INT0 或 INT1 端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离。其部分源程序如下: TMOD=0X01; /T0 计数,方式 1TH0=0; /计数初值TL0=0; /计数初值IT0=1; /INT0 负脉冲触发EA=1; /开总中断EX0

6、=1; /开外部 INT0 中断AGAIN=1;WHILE(1)UCHAR X;IF(ON=0) /启动键处理DELAY1MS(5); /按键消抖IF(ON=0)ONOFF=1; /启动WHILE(ON); /等待按键释放IF(OFF=0) /停止键处理DELAY1MS(5); /按键消抖IF(OFF=0)ONOFF=0; /停止WHILE(OFF); /等待按键释放IF(ONOFF)OUT=0;/产生方波,输出低电平 DELAYS();/延时 产生几个微秒的低电平,让模拟反射的单片机能正确接收信号OUT=1;/恢复高电平,停止模拟发射TH0=0;TL0=0;AGAIN=0;/TR0=1; /

7、T0 开始计数FOR(X=0;X20;X+)DISPLAY(); /数码管显示IF(AGAIN=0)BWEI=SHWEI=GWEI=0;ELSEBWEI=SHWEI=GWEI=10;VOID INT0(VOID) INTERRUPT 0 USING 1 /INTO 中断服务程序FLOAT COUNT;ULONG NUM;TR0=0 ; /停止计数COUNT=(TH0*256+TL0)/2;NUM= (COUNT/10000)*344;/计算超声波来回距离/ NUM= NUM/2; /总距离除 2 等于实际距离超声波发生子程序的作用是通过 P1.0 端口发送 2 个左右超声波脉冲信号(频率约40

8、kHz 的方波) ,脉冲宽度为 12s 左右,同时把计数器 T0 打开进行计时。超声波发生子程序较简单,但要求程序运行准确,所以采用汇编语言编程。 超声波测距仪主程序利用外中断 0 检测返回超声波信号,一旦接收到返回超声波信号(即 INT0 引脚出现低电平) ,立即进入中断程序。进入中断后就立即关闭计时器 T0 停止计时,并将测距成功标志字赋值 1。如果当计时器溢出时还未检测到超声波返回信号,则定时器 T0 溢出中断将外中断 0 关闭,并将测距成功标志字赋值 2 以表示此次测距不成功。前方测距电路的输出端接单片机 INT0 端口,中断优先级最高,左、右测距电路的输出通过与门 IC3A 的输出接

9、单片机 INT1 端口,同时单片机 P1.3 和 P1.4 接到 IC3A 的输入端,中断源的识别由程序查询来处理,中断优先级为先右后左。部分源程序如下:receive1:push psw push acc clr ex1 ;关外部中断 1 jnb p1.1, right ;P1.1 引脚为 0,转至右测距电路中断服务程序jnb p1.2, left ;P1.2 引脚为 0,转至左测距电路中断服务程序 return:SETB EX1;开外部中断 1 pop? acc pop? psw reti right: .? ;右测距电路中断服务程序入口 ? ajmp? return left:. ;左测距电路中断服务程序入口 ? ajmp? return 心得在元件及调制方面,由于采用的电路使用了很多集成电路。外围元件不是很多,所以调试应该不会太难。一般只要电路焊接无误,稍加调试应该会正常工作。电路中除集成电路外,对各电子元件也无特别要求。根据测量范围要求不同,可适当调整与接收换能器并接的滤波电容C0的大小,以获得合适的接收灵敏度和抗干扰能力。若能将超声波接收电路用金属壳屏蔽起来,则可提高抗干扰能力。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号