超声波测距仪设计实训报告.docx
- 文档编号:9969074
- 上传时间:2023-05-22
- 格式:DOCX
- 页数:9
- 大小:58.51KB
超声波测距仪设计实训报告.docx
《超声波测距仪设计实训报告.docx》由会员分享,可在线阅读,更多相关《超声波测距仪设计实训报告.docx(9页珍藏版)》请在冰点文库上搜索。
超声波测距仪设计实训报告
超声波测高仪设计
实训报告
姓名
学号
院(系)
专业、年级
2014年1月10日
摘要
超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因此超声波经常用于障碍物的距离测量。
由于超声波可做到无接触检测距离,这一特性用在人体或其它物体高度的测量上会变得非常方便。
测高前先利用超声波测出发射头与地面的高度H1并存入单片机,然后将被测物移入测量区内测得上表面距离H2,用单片机算出两者之差就是被测物体的实际高度。
本设计采用以AT89C51单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。
整个电路采用模块化设计,由主程序、中断程序、发射子程序、接收子程序、显示子程序等模块组成。
各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。
在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。
一、超声波测高原理
超声波是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t,然后求出距离S=Ct/2,式中的C为超声波波速。
利用超声波测高前先用超声波测出发射头与地面的高度H1并存入单片机,然后将被测物体移入测量区内测得上表面距离H2,用单片机算出两者之差就是被测物体的实际高度。
超声波测高实现原理
二、系统硬件设计
1.系统结构设计
整体电路的控制核心为单片机AT89C51。
超声波发射和接收电路中都对相应信号进行整形及放大,以保证测量结果尽可能精确。
超声波探头接OUT口实现超声波的发射和接收。
另外还有温度测量电路测量当时的空气温度,等到把数据送到单片机后使用软件对超声波的传播速度进行调整,使测量精度能够达到要求。
整体结构图包括超声波发射电路、超声波接收电路、放大电路、比较震荡电路、单片机电路、键盘输入电路、电源电路、复位电路、显示电路、温度测量电路及温度补偿电路等几部分模块组成。
超声波测距系统结构图如下图所示:
超声波
接收电路
放大
电路
超声波
发射电路
放大
电路
比较
电路
震荡
电路
单片机
AT89C51
键盘
输入
复位
电路
电源
电路
4位LED
显示器
R40超声波传感器
T40超声波传感器
超声波测距系统结构图
2.硬件电路图
本系统的特点是利用单片机控制超声波的发射和对超声波自发射至接收往返时间的计时,单片机选用AT89S52,经济易用。
电路原理图如下图所示:
三、具体实现操作
1.实现步骤:
(1)40kHz脉冲的产生与超声波发射
(2)超声波的接收与处理
(3)计算超声波传播时间和高度差
(1)40kHz脉冲的产生与超声波发射测距系统中的超声波传感器采用UCM40的压电陶瓷传感器,它的工作电压是40kHz的脉冲信号,这由单片机执行下面单片机P1.0端口,单片机执行上面的程序后,在P1.0端口输出一个40kHz的脉冲信号,经过三极管T放大,驱动超声波发射头UCM40T,发出40kHz的脉冲超声波,且持续发射200ms。
(2)超声波的接收与处理接收头采用与发射头配对的UCM40R,将超声波调制脉冲变为交变电压信号,经运算放大器IC1A和IC1B两极放大后加至IC2。
IC2是带有锁定环的音频译码集成块LM567,内部的压控振荡器的中心频率f0=1/1.1R8C3,电容C9决定其锁定带宽。
调节Rp1在发射的载频上,则LM567输入信号大于25mV,输出端8脚由高电平跃变为低电平,身高数据通过8脚送至单片机进行数据处理。
电路的输出端接单片机INT0端口,中断优先级最高。
(3)计算超声波传播时间在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。
当收到超声波反射波时,接收电路输出端产生一个负跳变,在INT0端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,利用超声波测高前先用超声波测出发射头与地面的高度H1并存入单片机,然后将被测物体移入测量区内测得上表面距离H2,用单片机算出两者之差就是被测物体的实际高度。
2.超声波测高流程图:
(主程序)
测身高入口
定时中断子程序
有回波吗?
外部中断子程序
返回
N
Y
(定时子程序)
定时中断入口
定时器初始化
发出超声波
时间到停止发射
返回
(中断子程序)
外部中断入口
关外部中断
读取时间值
计算距离
结果输出
关外部中断
返回
四、主程序
ORG0300H
LIMPSHG
ORG0200H
LIMPDSH
ORG0100H
LJMPRECEIVE1
ORG0003H
LJMPRECEIVE0
SHG:
SETBP1.3
ACALLDSH
ACALLRECEIVE1
ACALLDISPLAY
;接收子程序
RECEIVE1:
PUSH PSW
PUSH ACC
CLREX0 ;关外部中断0
RETURN:
SETBEX0;开外部中断0
POP ACC
POPPSW
RETI
中断子程序RECEIVE0:
PUSHPSW
PUSHACC
CLREX0;关外部中断0
MOVR7,TH0;读取时间值
MOVR6,TL0
CLRC
MOVA,R6
SUBBA,#0BBH;计算时间差
MOV70H,A
MOVA,R7
SUBBA,#3CH
MOV69H,A;计算并存储结果
SETBEX0;开外部中断0
POPACC
POPPSW
RETI
END
SIDBITP1.0;串行数据线
SCLKBITP1.1;串行时钟线
;内存数据定义
STARTEQU80H;起始字节
COMEQU81H;命令/数据
HDATAEQU82H;命令/数据字节高位
LDATAEQU83H;命令/数据字节低位
ASCEQU84H;ASCII数据单元
初始化子程序:
INILCM:
LCALLDL40MS;延时等待内部复位
MOVCOM,#80H;使用8位控制界面
LCALLWRITE
MOVCOM,#80H;使用基本指令集
LCALLWRITE
MOVCOM,#0CH
LCALLWRITE;整体显示ON
MOVDL1MS
MOVCOM,#01H;清屏
LCALLWRITE
LCALLDL40MS
MOVCOM,#06H;显示右移
LCALLWRITE
LCALLDL1MS
RET
模块写入子程序:
WRITE:
MOVA,COM;送待发数据命令A
MOVA,#0F0H;屏蔽低4位
MOVHDATA,A;将高4位送HDATA单元
MOVA,COM;取低4位
SWAPA;高低4位互换
MOVA,#0F0H
MOVLDATA,A;将低4位送LDATA单元
MOVA,START;取起始字节
LCALLSENDBYTE;发送
LCALLDL1MS;延时1ms
MOVA,HDATA
LCALLSENDBYTE
LCALLDL1MS
MOVA,LDATA
LCALLSENDBYTE
LCALLDL1MS
RET
参考文献:
1.超声波高度测量器的设计楼然苗著《微计算机信息》期刊2006
2.《传感器原理与应用课程设计指南》何金田张斌主编哈尔滨工业大学出版社2009
3.温度传感器的设计与研究廖泽鑫著复旦大学2012
4.知网
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 超声波 测距仪 设计 报告