基于单片机超声波测距项目实验报告.docx
- 文档编号:7827869
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:21
- 大小:663.46KB
基于单片机超声波测距项目实验报告.docx
《基于单片机超声波测距项目实验报告.docx》由会员分享,可在线阅读,更多相关《基于单片机超声波测距项目实验报告.docx(21页珍藏版)》请在冰豆网上搜索。
基于单片机超声波测距项目实验报告
电子信息工程系
基于单片机超声波测距项目
实
验
报
告
课程名称:
1、信号检测与控制
2、单片机技术与应用
3、印刷电路板设计与制板工艺
班级:
应电0933班
实训者姓名:
左兴华柴理会
学号:
09190133190919013317
指导老师:
方跃春李桂平张艳阳
时间:
2010年12月
一、-----------------------实验背景
二、-----------------------实验原理
三、-----------------------实验设备
四、-----------------------实验目的
五、-----------------------实验内容
六、-----------------------实验步骤
七、-----------------------实验作品展示
八、-----------------------实验体会
九、-----------------------附超生波测距汇编程序
一、实验背景
在科学技术高速发展的今天,超生波的在测距中的应用也越来越广。
但目前我们的技术还是有限,为了推动我们电子信息工程系同学对其的兴趣发展,所以我们电子信息工程系教研室的老师们策划了一个基于单片机超声波测距仪项目的课程设计。
同时也是为了老师考察电子系同学们在前一学年在单片机应用技术课程,传感器技术应用课程和印刷电路板的设计与工艺课程学习情况。
也是对电子信息工程系的学生们动手能力的一种锻炼,及高职院校学生综合素质的一种培养。
设计超声波测距仪用专用的集成电路的成本很高,并且没有显示,操作比较不方便。
本文结合超声波精确测距的需要,尝试用STC89C52单片机为核心的低成本、简单实现收发功能、小型化数字显示超声波测距的硬件电路和软件设计方法。
二、实验原理
超声波是一种在弹性介质中的机械振荡,传播速度仅为光波的百万分之一,超声波对色彩,光照度,外界光线和电磁场不敏感,因此超声波测距对于被测物处于黑暗,有灰尘或烟雾,强电磁干挠,有毒等恶劣的环境下有一定的适用能力,在液体测位,机器人避障和定位,倒车雷达、物体识别等方面有广泛应用。
而且超声波传播不易受干挠,因而经常用于距离的测量。
在某一时刻给超声波发生器施加40khz方波信号,发生器发出超声波,遇到被测物体后反射回来,被超声波接受器接受到。
只要计算出超声波信号从发射到接收到回波信号的时间,知道在介质中的传播速度,就可以计算出被测物体的距离d=s/2=(vt)/2.其中d为被测物到测距仪之间的距离,s为超声波往返通过的路程,v为超声波在介质中的传播速度,t为超声波从发射到接收所用时间。
由于超声波在空气中的速度与温度有关,如果温度变化不大,则可以认为声速基本不变。
如果测距精度要求很高,则可以通过温度补偿的方法加以矫正。
不同温度下超声波在空气中传播速度随温度变化的关系:
V=331.4+0.61t.其中,t为实际温度,v的单位为m/s.
本系统所采用的T/R40-16型超声波传感器。
超声波传感器型号代码:
T/R40-16—外壳直径--16(mm)T—发射
R--接收40KHZ--中心频率。
图1超声波传感器
表2-1T/R40-16特性参数
型号
T/R40-16
中心频率
40士1KHZ
发射电压
大于115dB
接受灵敏度
大于-64dB/V/ubar
-6dB指向
50deg
电容
2400士25%
允许输入电压
20V
工作过程
启动超声波测距电路时,工作过程如下:
1.由单片机发出40KHz的脉冲串,每10个脉冲为一串;
2.脉冲串通过超声波发射电路驱动超声波发射换能器发出超声波;
3.单片机在发送脉冲的时刻开始计时;
4.超声波遇到障碍物后的回波被超声波接收换能器接收,其输出的正弦波经
过两级放大;
5.再经过电压比较器,下降沿中断信号中断单片机的计时;
6.读THO、TLO时间值;
7.时间*速度,计算出距离数据;
8.在LED上显示距离。
超声波测距是根据回波测距的原理设计的,由超声波的发射器发射超声波,超声波接收器接受回波。
测出从超声波发射脉冲串时刻到接受回波是的时间差,超声波在同温同介质中的传播速度由测温系统得知,将声速与时刻差相乘,得出距离,并显示。
其系统框图如图2所示。
三.实验器材及设备
A.实验器材
超声波测距原理图pcb板一块,超声波探头,超声波接收头,555多谐振荡器,LM386音频集成芯片、LM567集成芯片、CD4069驱动芯片、DS18B20传感器一个以及一些必须的电阻,电容及元器件等等
B.实验设备
电烙铁一个、烙铁架一个、钳子,8051系列单片机。
电锡丝、万用表、示波器、被测物体、电脑、下载数据线等等。
四、实验目的
为了推动我们电子信息工程系同学对超声波在测距这块的兴趣,我们教研室的老师们策划了一个基于单片机超声波测距仪项目的课程设计。
同时也是为了老师考察电子系同学们在前一学年在单片机应用技术课程,传感器技术应用课程和印刷电路板的设计与工艺课程学习情况。
也是对电子信息工程系的学生们动手能力的一种锻炼,及高职院校学生综合素质的一种培养。
五、实验内容
本文的主要内容是先阐述课题背景、任务,对超声波测距的可行性进行了理论分析的基础上,利用计算机技术、电子技术、以及超声波在介质中的传播特性等,制作出了超声波测距的硬件部分,编写了相应的软件程序,并进行了调试和试运行。
在硬件电路的设计中,针对超声波在传播时呈指数衰减的特性,我们采用了最大限度提高驱动能力、对回波进行多级放大等措施,扩大了测量的范围。
在软件设计中,我们采用模块化程序设计思想,将软件分为超声波驱动与数据处理模块,每个模块又由若干小模块组成。
对软件的这种处理不但能使软件的结构清晰,而且有利于软件的调试和修改。
最后给出了试验结果,分析误差,提出解决措施。
六、实验步骤
a.前期准备
1、画出超声波测距原理图如下图所示。
图3超声波测距原理图
2、根据原理图利用proteldxp2004软件和参加pcb制板实训制成一块超波测距pcb板
图4Gerber图
图5超声波测距pcb板的三维图
3、元件测试及焊接元器件。
焊接完后的的超声波测距pcb样品图
图6超声波测距pcb样品图
4.调试。
焊接完成后,利用示波器调试焊接好的超声波测距pcb板。
超声波测距仪的制作制作和调试都比较简单,超声波发射和接收采用¢15的超声波换能器TCT40-T(T发射)和TCT40-R(R接收)中心频率为40khz.还有就是在调试时可利用两个电位器进行微调。
硬件电路制作完成并调试好后,便可将程序编译好下载到单片机试运行。
根据实际情况可以修改超声波发生子程序每次发送的脉冲宽度和两次测量的间隔时间,以适应不同距离的测量需要。
根据所设计的电路参数和程序,测距仪能测的范围为0.07~5.5m,测距仪最大误差不超过1cm。
系统调试完后应对测量误差和重复一致性进行多次实验分析,不断优化系统使其达到实际使用的测量要求。
B.超声波测距仪的硬件设计
1、设计思想
按设计要求,根据超声波测距原理,以STC89C52单片机系统为核心,制作超声波测距电路。
它的各部分电路的说明如下:
1.STC89C52单片机最小系统是超声波测距的核心部分,主要任务:
(1)控制一个40KHz的脉冲驱动振荡电路,启动振荡电路工作,振荡电路振荡出与超声波发射器的固有频率相同频率,使换能器能最大效率工作;
(2)延时程序延时一个40KHz的脉冲;
(3)T0工作在方式2,自动装载,实现串口通讯,波特率2400bit/s晶振频率12MHz;
(4)根据超声波发射和接收的时间差与串口接收的速度数值相乘,进行有关
参数计算出距离;
(5)数据的显示。
2.超声波发射电路作用是将振荡电路振荡出40KHz的脉冲信号,信号幅值是18V(可调节),脉冲信号将驱动超声波发射传感器,发射超声波。
3.超声波接收电路主要包括微弱信号放大、电压比较中断信号输出等部分。
它是用来对接收到的回波进行放大和整形,即将回波信号转换成单片机的中断信号。
4.根据设计要求,距离要通过显示器实时地显示出来。
2、单片机最小系统
本设计中的单片机型号为STC89C52,采用了频率为12MHZ的晶振与两个电容组成的晶振电路,为单片机提供工作时序。
复位电路是按键电平复位,按键电平复位是通过使复位端经电阻与VCC电源接通而实现的。
最小系统电路图如图3所示。
图7单片机最小系统图
3.发射电路
图8发射电路
发射电路目的:
为超声波发射器提供它所需要的脉冲电信号
依据电路需要,发射电路满足下列要求:
1.驱动能力较高;
2.IO口控制口;
本文中脉冲发射采用软件方式,利用STC89C52的P3.3口发射40kHz的方波信号,经过74LS04放大后输出到超声波换能器,产生超声波。
74LS04是一个高速CMOS六反相器,具有放大作用,具有对称的传输延迟和转换时间,而相对于LSTTL逻辑IC,它的功耗减少很多。
对于HC类型,其工作电压为2~6V,它具有高抗扰度,可以兼容直接输入LSTTL逻辑信号和CMOS逻辑输入等特点。
本系统将40kHz方波信号分成两路,分别由74LS04经两次和一次反向放大,从而构成推拉式反向放大
4、接收电路
图9接收电路
根据电路需求,需要接收放大电路满足以下要求:
(1)微弱信号放大,放大倍数要求mv-V。
(2)波形整形。
(3)实时选通不同方向的微弱信号口。
如图10所示,不同方向的超声波接收器将接收到回波信号转换成电压信号(正弦波),信号经过两级放大以后,被送入电压比较器进行比较,电压比较器输出的方波信号直接输入INTO中断口,该低电平作为STC89C52外部中断0的中断信号使STC89C52产生中断,在中断服务程序中停止计数器TO的计时,并计算出有关数据。
由此可见,接收电路完成了超声波回波信号的换向识别、转换、信号的放大和整形以及产生中断信号等功能。
波形处理如图9:
微弱信号一一一一放大信号一一一一整形信号。
图10
5、显示电路
根据设计要求并综合各方面因素,可以采用AT89S51单片机作为主控制器,用动态扫描法实现LED数字显示,超声波驱动信号用单片机的定时器完成,显示电路如下图
C.软件设计
软件设计思路是:
系统初始化、发射脉冲串、计时、接收输入脉冲,接收串口输入速度值、计算距离、显示距离值。
超声波测距系统软件部分各模块联系关系如图11:
模块中,单片机是主体,各模块关系平行,在程序执行中,顺序执行。
七、实验体会
做了几个星期的基于单片机超声波测距仪的实训项目终于完成了!
虽然不是很顺利,很辛苦,但是看到我们自己做出的实验课题,自己就觉得值!
都说付出就会有收获,经过几个星期的努力,我和合作人带着好奇和兴奋顺利的做完了所有的步骤与程序。
说真的,这几个星期我学到了好多好多,同时眼界也宽了好多好多的。
还有就是我想说的是:
通过指导老师的指导,加上自己的亲手操作能够加强对超声波及超生波测距的了解和单片机学习和传感器学习的熟练程度。
同时也能熟悉PROTELDXP2004软件和KIL4软件的使用。
更能了解对PCB板制作工艺和流程以及那些设备的操作,及我们所学课程的理解。
更有利的是能加强我们专业素养和专业技能,为我们以后能更好的就业打下很好的基础.提高了我们动手能力和综合素质能力。
总之,“一份耕耘,一份收获”。
通过我们自己的亲手操作,我们确实学到了许多东西。
我同时希望学校能更多的给与我们实训做项目和课题的机会。
八、附超声波测距程序
XC1EQU22H
XC2EQU23H
XC3EQU24H
XC4EQU25H
LED1EQU26H
LED2EQU27H
LED3EQU28H
LED4EQU29H
SUDUEQU2AH
MUL_L1EQU2BH;存积低八位
MUL_L2EQU2CH
MUL_L3EQU2DH
MUL_L4EQU2EH
TIME_LEQU2FH
TIME_HEQU30H
TIMEY_LEQU31H
TIMEY_HEQU32H
JULI_LEQU33H
JULI_HEQU34H
TRIGBITP3.2
ECHOBITP3.3
SUCCESSBIT08H
ORG0000H
MOVSP,#68H
CLRSUCCESS
;SETBSUCCESS
MOVSUDU,#17
MOVTMOD,#01
MOVTH0,#00
MOVTL0,#00
MAIN1:
LCALLCSBSUANT
LCALLTIMESUAN
LCALLCODECHU
LCALLDISPLAY
JMPMAIN1
CODECHU:
MOVR7,#4
MOVR0,#XC1
MOVR1,#LED1
MOVDPTR,#TAB
CODECHU1:
MOVA,@R0
MOVCA,@A+DPTR
cpla
MOV@R1,A
INCR0
INCR1
DJNZR7,CODECHU1
RET
TAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H;共阳LED代码
DB90H,88H,83H,0A7H,0A1H,86H,8EH,0ffh,0BFH
DISPLAY:
MOVR0,#100
DISPLQ:
MOVP0,LED4
MOVP1,#0FEH
CALLDELAY2MS
MOVP0,LED3
MOVP1,#0FDH
CALLDELAY2MS
MOVP0,LED2
MOVP1,#0FBH
CALLDELAY2MS
MOVP0,LED1
MOVP1,#0F7H
CALLDELAY2MS
DJNZR0,DISPLQ
RET
/*延时1MS的子模块*/
DELAY1MS:
MOVR7,#250
DELAY1MS1:
NOP
NOP
DJNZR7,DELAY1MS1
DJNZR6,DELAY1MS
RET
/*延时2MS的子程序模块*/
DELAY2MS:
MOVR6,#2
CALLDELAY1MS
RET
/*发送超声波*/
/*超声模块测距*/
CSBSUANT:
CLRTRIG
MOVTH0,#0
MOVTL0,#0
SETBTRIG
CALLDELAY20US
CLRTRIG
SETBECHO
CSBSUANT0:
JNBECHO,CSBSUANT1
SETBTR0
CALLDELAY100US
CSBSUANT3:
JBECHO,CSBSUANT2
CLRTR0
SETBSUCCESS
MOVDPH,TH0
MOVDPL,TL0
LCALLTIMESUAN
LCALLJULISUAN
RET
CSBSUANT1:
JNBTF0,CSBSUANT0
CLRTF0
CLRTR0
CLRSUCCESS
RET
CSBSUANT2:
JNBTF0,CSBSUANT3
CLRTF0
CLRTR0
CLRSUCCESS
RET
DELAY100US:
MOVR7,#50
;DELAZ1:
MOVR6,#34
;DJNZR6,$
DJNZR7,$
RET
DELAY20US:
MOVR7,#10
DJNZR7,$
RET
/*计算时间*/
TIMESUAN:
JBSUCCESS,TIMESUAN1
MOVXC4,#10H
MOVXC3,#10H
MOVXC2,#10H
MOVXC1,#0EH
JMPTEMESUAN2
TIMESUAN1:
LCALLJULISUAN
LCALLSHUSUAN
TEMESUAN2:
RET
SHUSUAN:
MOVA,JULI_H
JZSHUSUAN1
CLRCY
SUBBA,#4
JNCDIV1000
MOVR5,JULI_H
MOVR4,JULI_L
MOVR3,#0
MOVR2,#100
LCALLDUDIV
MOVXC4,R4
MOVA,R6
MOVB,#10
DIVAB
MOVXC3,A
MOVXC2,B
MOVXC1,#0CH
RET
DIV1000:
MOVXC4,#0EH
MOVXC3,#10H
MOVXC2,#10H
MOVXC1,#10H
RET
SHUSUAN1:
MOVA,JULI_L
MOVB,#100
DIVAB
MOVXC4,A
MOVA,B
MOVB,#10
DIVAB
MOVXC3,A
MOVXC2,B
MOVXC1,#0CH
RET
JULISUAN:
MOVR5,TH0
MOVR4,TL0
MOVR3,#3
MOVR2,#0E8H
LCALLDUDIV
MOVTIME_H,R5
MOVTIME_L,R4
MOVTIMEY_L,R6
MOVTIMEY_H,R7
LCALLJULISUANA
RET
JULISUANA:
MOVA,TIME_H
JZJULISUAN1
MOVR5,TIME_H
MOVR4,TIME_L
MOVR3,#0
MOVR2,SUDU
MOVR1,#MUL_L1
LCALLDUMUL
MOVA,MUL_L4
JNZJULISUAN3
MOVA,MUL_L3
JNZJULISUAN3
MOVJULI_H,MUL_L2
MOVJULI_L,MUL_L1
JMPJULISUAN2
JULISUAN3:
MOVXC4,#0EH
MOVXC3,#10H
MOVXC2,#10H
MOVXC1,#10H
JMPJULISUAN2
JULISUAN1:
MOVA,TIME_L
MOVB,SUDU
MULAB
MOVJULI_L,A
MOVJULI_H,B
MOVR5,TIMEY_H
MOVR4,TIMEY_L
MOVR3,#0
MOVR2,SUDU
MOVR1,#MUL_L1
LCALLDUMUL
MOVR5,MUL_L2
MOVR4,MUL_L1
MOVR3,#3
MOVR2,#0E8H
LCALLDUDIV
MOVA,R4
ADDA,JULI_L
MOVJULI_L,A
MOVA,#0
ADDCA,JULI_H
MOVJULI_H,A
JULISUAN2:
RET
;入口:
R5(高位)R4(低位),被除数.R3(高位)R2(低位),非零除数
;出口:
R5(高位)R4(低位),商R7(高位)R6(低位),余数
DUDIV:
CLRA;部分余数单元清零
MOVR7,A
MOVR6,A
MOVR0,#10H;除法移位次数
LP:
CLRC;移位
MOVA,R4
RLCA
MOVR4,A
MOVA,R5
RLCA
MOVR5,A
MOVA,R6
RLCA
MOVR6,A
MOVA,R7
RLCA
MOVR7,A
LP1:
MOVA,R6;部分余减除数
SUBBA,R2
MOVR1,A
MOVA,R7
SUBBA,R3
JCSMALL
MOVR7,A
MOVA,R1
MOVR6,A
INCR4;商加1
SJMPLP1
SMALL:
DJNZR0,LP
MOV20H,R7;四舍五入
JB07H,ADD1
CLRC
MOVA,R6
RLCA
MOVR6,A
MOVA,R7
RLCA
SUBBA,R3
JCRETURN
JNZADD1
MOVA,R6
SUBBA,R2
JCRETURN
ADD1:
MOVA,R4;商加1
ADDA,#01H
MOVR4,A
MOVA,R5
ADDCA,#00H
MOVR5,A
RETURN:
RET
;入口:
R5(高位)R4(低位),被乘数.R3(高位)R2(低位),乘数.
;出口:
R1(积的低位字节地址指针)
DUMUL:
MOVA,R1;复制保存地址指针
MOVR6,A
MOVR7,#04H
CLEAR:
MOV@R1,#00H;积单元清零
INCR1
DJNZR7,CLEAR
MOVA,R6
MOVR1,A
MM:
MOVA,R2;R2*R4
MOVB,R4
MULAB
ACALLADDM1
MOVA,R2;R2*R5
MOVB,R5
MULAB
ACALLADDM1
MOVA,R3;R3*R4
MOVB,R4
MULAB
ACALLADDM1
MOVA,R3;R3*R5
MOVB,R5
MULAB
ACALLADDM1
MOVA,R6;恢复地址指针
MOVR1,A
RET
ADDM1:
ADDA,@R1;加部分积
MOV@R1,A
MOVA,B
INCR1
ADDCA,@R1
MOV@R1,A
INCR1
MOVA,@R1
ADDCA,#00H
MOV@R1,A
DECR1
RET
END
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 超声波 测距 项目 实验 报告