超声波测距系统设计总体

上传人:suij****uang 文档编号:140141004 上传时间:2022-08-23 格式:DOCX 页数:24 大小:268.06KB
返回 下载 相关 举报
超声波测距系统设计总体_第1页
第1页 / 共24页
超声波测距系统设计总体_第2页
第2页 / 共24页
超声波测距系统设计总体_第3页
第3页 / 共24页
点击查看更多>>
资源描述
吉林建筑大学电气与电子信息工程学院传感器与检测技术课程设计报告设计题目:超声波测距系统设计专业班级:电子信息科学与技术学生姓名:朱玉号:10311103指导教师:王超高晓红设计时间:2014.6.162014.6.27目录第1章绪论11.1 课题设计的背景和意义11.2 主要设计内容和要求1第2章系统总体设计方案22.1 设计系统框图22.2 设计器件选择2第3章硬件电路设计43.1 单片机最小系统43.2 超声波发射电路63.3 超声波检测接收电路73.4 显示单元电路 83.5 语音播报电路8第4章系统软件设计104.1 超声波测距仪的算法设计104.2 主程序流程图104.3 超声波发生子程序与超声波接受中断程序11总结14参考文献15附录1总电路图16附录2程序清单17第1章绪论1.1课题设计的背景和意义1.1.1设计的背景随着科学技术的快速发展,超声波将在测距仪中的应用越来越广。但就目前 的水平来说,人们可以具体利用的测距技术还十分有限,因此,这是一个正在蓬 勃发展而又有无限前景的技术及产业领域。展望未来,超声波测距作为一种新型的非常重要有用的工具在各方面都将有 很大的发展空间,它将朝着更加高定位高精度的方向发展满足日益发展的社会需 求,如声纳的发展趋势,研制具有更高定位精度的被动测距声纳,以满足水中武 器实施全隐蔽攻击的需求。毋庸置疑,无线的超声波测距仪将与自动化智能化接 轨,与其他的测距仪集成和融合形成多测距仪。随着测距仪的技术进步,测距仪 将从具有单纯判断功能发展到具有学习功能,最终发展到具有创造力。在新的世 纪里,面貌一新的测距仪将发挥更大的作用。1.1.2设计的意义随着科学技术的发展,城市给排水系统也有较大发展。但是,由于许多不可 预见因素城市给排水系统往往落后于城市建设。因此,箱涵的排污疏通对城市给 排水系统的污水处理显得非常重要。而设计研制箱涵排水疏通移动机器人的自动 控制系统,保证机器人在箱涵中自由排污疏通,是箱涵排污疏通机器人的设计研 制的核心部分。控制系统核心部分就是超声波测距仪的研制。因此,设计好的超 声波测距仪就显得非常重要了。这就是我设计超声波测距仪的意义。1.2主要设计内容和要求1.2.1主要设计内容本设计主要是基于AT89S51芯片为核心的超声波测距仪,74LS04组成的超 声波发射电路、并有超声波处理模块CX20106A、液晶显示等器件组成,包括单 片机最小系统、超声波发射电路、超声波接收电路、LED显示电路和语音播报 电路。1.2.2主要设计要求设计一个超声波测距仪主要要求:(1)具有超声波测距功能。(2)实时显示测量的距离,显示格式为:XXXX。(3)具有实时语音播报功能,实时播报测量距离数值,实时播报时间间隔108 实时播报声音清晰明亮、无明显失真,在1m距离处人耳能准确分辨。语音播报 要与显示同步。1第2章系统总体设计方案2.1设计系统框图根据设计任务、控制对象和现有条件系统电路采用由单片机最小系统、超声 波发射电路、超声波接收电路、显示电路以及语音播报电路构成。本超声波测距 仪的具体工作过程如下:单片机控制的振荡源产生40kHz的频率信号来驱动超声 传感器。每次发射包含6个脉冲左右,当第一个超声波脉冲发射后,计数器开始计数, 在检测到第一个回波脉冲的瞬间,计数器停止计数,得到从发射到接收的时间诟, 单片机利用测距公式可计算出被测距离,同时单片机进行显示和语音播报。系统 总体框图如图1所示。图1系统框图2.2设计器件选择设计主要包括单片机最小系统及显示电路、语音播报电路、超声波发射电路 和超声波检测接受电路五部分。主要用到的器件有:超声波传感器、LED液晶 模块、单片机AT89S51和WT588D系列的集单片机和语音电路于一体的可编辑 语音芯片。(1) 超声波传感器:以超声波作为检测手段必须产生超声波和接收超声波, 完成这种功能的装置就是超声波传感器,习惯上称为超声换能器,或者超声探头。 超声波探头主要由压电晶片组成,既可以发射超声波,也可以接收超声波。超声 波发射器由反相器74LS04和超声波发射换能器T构成,接收主要由CX20106A 完成。(2) 显示液晶模块:显示单元部分采用LED液晶模块,根据设计的要求, 用于显示测量距离、补偿温度以及危险、保持安全等警告信号。(3) 语音播报芯片WT588D: WT588D是一款功能强大的可重复擦除烧写 的语音单片机芯片,可对液晶显示的内容进行语音播报。(4)单片机AT89S51:有4k字节Flash闪速存储器,128字节内部RAM, 32个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工 串行通信口和片内振荡器及时钟电路。同时,AT89S51可降至0Hz的静态逻辑 操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允 许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。3第3章硬件电路设计3.1单片机最小系统单片机最小系统主要采用的单片机是AT89S51。AT89S51是具有低电压, 高性能CMOS8位单片机,片内含有4Kbytes的可反复擦写的只读程序存储器 (EPROM) 和 128bytes的随机存取数据存储器(RAM),片内置通用8位中央处 理器(CPU)和Flash存储单元,其引脚图如图2所示。3.1.1 AT89S51主要性能参数与MCS51产品指令系统完全兼容; 4K字节可以重复擦写Flash闪速存储器; 1000次擦写周期; 全静态操作:0Hz24Hz;三级加密程序存储器; 128*8字节内部RAM; 32个可编程I/O 口线; 5个中断源;可编程串行UART通道;低功耗空闲和掉电模式。3.1.2 AT89S51功能特性概述 4k字节Flash闪速存储器; 128字节内部RAM; 32 个 I/O 口线; 两个16位定时器/计时器; 一个5向量两级中断结构; 一个全双工串行口通信;片内振荡器及时钟电路。2345678101112131415191891P10P00P11P01P12P02P13P03P14P04P15P05P16P06P17P07P20P30/EJmP21P3immP22P32/1NT0P23P33/1NT1P24P34/T0P25P35/T1P26P27XIEAA7PPBP/P37X2WBJP36ALE/PBPG图实AT89S51单片机ATS9S513938373635343332212223242526272831_303.1.3单片机最小系统组成单片机最小系统主要由AT89S51单片机、外部振荡电路、复位电路和+5V 电源组成,如图3所示。在外部振荡电路中,单片机的XTAL1和XTAL2管脚 分别接至由12MHZ晶振和两个30PF电容构成的振荡电路两侧,为电路提供正 常的时钟脉冲。在复位电路中,单片机RESET管脚一方面经10uF的电容接至 电源正极实现上电自动复位,另一方面经开关s接电源,其主要功能除了使系统 初始化之外,还有当程序出错或者操作错误使系统处于死锁状态时,也需要按复 位键重新启动。因此,复位电路是单片机系统中不可缺少的一部分。Cl 30pFiouf rR9 I4.7kTGOT277T101712亘1415191820P1.0VCCPl.lPO.OP1.2P0.1Pl.3P0.2Pl.4P0.3P1.6P0.4Pl.7P0.5P0.6P3.0/KKDP0.7P3.1/TXDP2.0P3.2/INTOP2.1P3.3/INT1P2.2P3.4/TOP2.3P3.5/T1P2.4XIP2.5P2.6P2.7X2 EA-VppRST PURDP3.BWRALEWOGVSS ZPSENATS9S5139383736353433VCC40 T322?22232425262728177630293.2超声波发射电路超声波换能器的两极外加脉冲信号,其频率等于压电晶片的固有振荡频时, 压电晶片会发生共振,并带动共振板振动产生超声波,这时它就是一个超声波发 生器;反之,如果两电极问未外加电压,当共振板接收到超声波时,将压迫压电 晶片作振动,将机械能转换为电信号,这时它就成为超声波接收换能器。反相器 74LS04参数如表1所示。表1反相器74LS04参数最大额定值电源电压-0.5 到+7.0VDC输入电压-1.5 到 Vcc+1.5V直流输出电压-0.5 到 Vcc+0.5V钳位二极管电流20mA直流输出电流,每个引脚(输出)25mA功耗600mW发射电路主要由反相器74LS04和超声波发射换能器T构成,如图4所示, 单片机P2.7端口输出的40kHz的方波信号一路经一级反向器后送到超声波换能 器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极,用这种 推换形式将方波信号加到超声波换能器的两端,可以提高超声波的发射强度。P2.71AVCC16A2A6Y2Y5A3ASY3Y4AGND4Y174LS&42 476VCC 14 T L3T110 9 8LSIGKD图4超声波发射电路图3单片机最小系统53.3超声波检测接收电路超声波接收电路CX20106A是一款红外线检波接收的专用芯片,常用于电视 机红外遥控接收器。超声波接收电路如图5所示。CX20106A引脚功能如下:1脚IN:超声波信号输入端,该脚的输入阻抗约为40kQ。2脚AGC :该脚与GND之间连接RC串联网络,它们是负反馈串联网络的一 个组成部分,改变它们的数值能改变前置放大器的增益和频率特性。增大电阻R 或减小C,将使负反馈量增大,放大倍数下降,反之则放大倍数增大。但C的改 变会影响到频率特性。3脚C0:该脚与GND之间连接检波电容,电容量大为平均值检波,瞬间相应 灵敏度低;若容量小,则为峰值检波,瞬间相应灵敏度高,但检波输出的脉冲宽 度变动大,易造成误动作,推荐参数为3.3四F。4脚GND :接地端。5脚RC0:该脚与电源端VCC接入一个电阻,用以设置带通滤波器的中心率, 阻值越大,中心频率越低。6脚C:该脚与GND之间接入一个积分电容,标准值为330pF,如果该电容值 太大会使探测距离变短。7脚OUT:遥控命令输出端,它是集电极开路的输出方式,因此该引脚必须 接上一个上拉电阻到电源端,没有接收信号时该端输出为高电平,有信号时则会 下降。8脚RC1 :电源正极,4.5V5V。图5超声波检测接收电路3.4显示单元电路在单片机应用系统中,发光二极管LED显示器常用两种驱动方式:静态显示 驱动和动态显示驱动。所谓静态显示驱动,就是给要点亮的LED通以恒定的电流 即每一位LED显示器各引脚都要占用单独的具有锁存功能的I/O接口。单片机只 需要把要显示的字形段码发送到接口电路并保持不变即可,如果要显示新的数 据,再发送新的字形段码。因此,使用这种方法单片机中CPU开销小,但这种驱 动方法需要寄存器、译码器等硬件设备。当需要显示的位数增加时,所需的器件 和连线也相应增加,成本也增加。而所谓动态显示驱动就是给欲点亮的LED通以 脉冲电流,即采用分时的方法,轮流控制各个显示器的COM端,使各个显示器 轮流点亮,这时LED的亮度就是通断的平均亮度。考虑各种因素,本设计选用动 态驱动显示,其显示电路如图6所示。图6显示单元电路M e l_2r-J.4_5.6.7_0. 1-2-34-5是_75PDT.G N vtmmpopopopopompimpl.pl.plPLplp2.RIWROCSEX -0.1J3.4.6.7.o.-.l_l_3.4.j.T - S 1111111 3 3 33331 S ppppppp p p p p p p X X R V3.5语音播报电路WT588D系列语音单片机是广州唯创科技有限公司联合台湾华邦共同研发 出来的集单片机和语音电路于一体的可编辑语音芯片。功能多音质好应用范围广 性能稳定是WT588D系列语音单片机的特长,弥补了以往各类语音芯片应用领域 狭小的缺陷,MP3控制模式、按键控制模式、按键组合控制模式、并口控制模式、 一线串口控制模式、三线串口控制模式以及三线串口控制I/O 口扩展输出模式, 让应用人员能将产品投放在几乎可以想象得到的场所。WT588D是一款功能强大的可重复擦除烧写的语音单片机芯片。WT588D让 语音芯片不再为控制方式而寻找合适的外围单片机电路,高度集成的单片机技术 足于取代复杂的外围控制电路。配套 WT-APP上位机操作软件可随意更换 WT588D语音单片机芯片的任何一种控制模式,把信息下载到S PI-Flash上即可。 软件操作方式简洁易懂,撮合了语音组合技术,大大减少了语音编辑的时间。其 中KIA1117芯片为WT588D的VCC管脚(存储器电源输入脚),提供3.3V电压。可 控制的语音地址位能达到220个。每个地址位里能加载可组合语音为128段语音。 只需通过适当的访问地址就可以实现语音播报,使用方便,语音播报电路设计如 图7所示。图7 WT588D语音播报电路21第4章系统软件设计超声波测距仪的软件设计主要有主程序、超声波发生程序、超声波接收中断 程序及显示子程序组成。我们知道语言程序有利于实现较复杂的算法,汇编语言 程序则具有较高的效率且容易精细计算程序运行的时间,而超声波测距仪的程序 需要有较复杂的计算(计算距离时),所以控制程序可采用C语言编程。4.1超声波测距仪的算法设计超声波测距的原理为超声波发生器T在某一时刻发出一个超声波信号,当 这个超声波遇到被测物体后反射回来,就被超声波接收器R所接收到。这样只 要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生 器与反射物体的距离。距离的计算公式为:d=s/2=(c t)/2(4-1)其中,d为被测物与测距仪的距离,s为声波的来回的路程,c为声速,t为 声波来回所用的时间。在启动发射电路的同时启动单片机内部的定时器T0,利 用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波 反射波时,接收电路输出端产生一个负跳变,在INT0或INT1端产生一个中断 请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差, 计算距离。4.2主程序流程图软件分为两部分,主程序和中断服务程序,如图8、图9、图10所示。主程 序完成初始化工作、各路超声波发射和接收顺序的控制。定时中断服务子程序完成单方向超声波的发射,外部中断服务子程序主要完 成时间值的读取、距离计算、结果的输出等工作。主程序首先是对系统环境初始化,设置定时器T0工作模式为16位定时计 数器模式。置位总中断允许位EA并给显示端口 P0和P1清0。然后调用超声波 发生子程序送出一个超声波脉冲,为了避免超声波从发射器直接传送到接收器引 起的直射波触发,需要延时约0.1ms (这也就是超声波测距仪会有一个最小可测 距离的原因)后,才打开外中断1接收返回的超声波信号。单片机初始化定时器初始化等待中断图8主程序流程图由于采用的是12MHz的晶振,计数器每计一个数就是1卜,当主程序检测 到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)按式 (4-2)计算,即可得被测物体与测距仪之间的距离,设计时取20C时的声速为344m/s 则有:d=(c t)/2=172T0/10000cm(4-2)其中,T0为计数器T0的计算值。测出距离后结果将传给LED数码显示约5s,同时测量距离送语音模块播报。 然后再发超声波脉冲重复测量过程。为了有利于程序结构化和容易计算出距离, 主程序采用C语言编写。4.3超声波发射子程序和超声波接收中断程序超声波发生子程序的作用是通过P2.7端口发送2个左右超声波脉冲信号(频 率约40kHz的方波),脉冲宽度为12卜左右,同时把计数器T0打开进行计时。 超声波发生子程序较简单,但要求程序运行准确。发射完否?图9定时中断服务子程序N返回定时器初始化定时中断入口发射超声波停止发射图10外部中断服务子程序超声波测距仪主程序利用外中断1检测返回超声波信号,一旦接收到返回超 声波信号(即INT1引脚出现低电平),立即进入中断程序。进入中断后就立即 关闭计时器T0停止计时,并将测距成功标志字赋值1。如果当计时器溢出时还 未检测到超声波返回信号,则定时器T0溢出中断将外中断1关闭,并将测距成 功标志字赋值2以表示此次测距不成功。总结由于时间和其它客观上的原因,此次设计没有成功做出实物。但是对设计有 一个很好的理论基础。设计的最终结果是使超声波测距仪能够产生超声波,实现 超声波的发送与接收,从而实现利用超声波方法测量物体间的距离。以数字的形 式显示测量距离。通过此次课程设计我对传感器这门课有了更深刻的理解,并且锻炼了我的实 际动手能力。在此我也要感谢王超和高晓红老师在课程设计中对我给予的悉心指 导和严格要求,同时也感谢本校的一些老师在课程设计这期间所给予我的帮助。 在课程设计论文写作期间,各位老师给我提供了种种专业知识上的指导和日常生 活上的关怀,没有您们这样的帮助和关怀,我不会这么顺利的完成课程设计,借 此机会,向您们表示由衷的感激。通过本次课程设计也大大的增强了自己的自信心,只要肯努力不断的敦促自 己锻炼自己就会有很大的进步,此后我会一直像这次课程设计一样严格要求自 己,尽量做到更好。参考文献1胡佳文.单片机课程设计实例指导M.北京:北京航空航天大学出版社,2004。 刘文涛.单片机语言C51典型应用设计M.北京:人民邮电出版社,2001。3 郁有文.传感器原理及工程应用M.西安:西安电子科技大学出版社,2000。4 陈新建.PIC系列单片机程序设计与开发应用M.北京:北京航空航天大学出 版社,2007。5 张明峰.PIC单片机入门与实战M.北京:北京航空航天大学出版社,2004。6 黄智伟.全国大学生电子设计竞赛训练教程M.西安:电子工业出版社,2005。附录二程序清单/* 函数名:void displayall()功能:主显示函数*/void displayall() uchar i;delay(2);led_init();led_pos(2,0);for(i=0;i16;i+)write(1,DIS9i);delay(30);led_pos(3,0);for(i=0;i16;i+)write(1,DIS10i);delay(30);delay(1000);clr_screen();delay(500);clr_screen();led_pos(1,0);for(i=0;i16;i+)write(1,DIS1i);delay(2);led_pos(3,0);for(i=0;i16;i+)write(1,DIS3i);delay(2);初始化LED设置显示位置为第二行/led_wdat(DIS9i);设置显示位置为第三行/led_wdat(DIS10i);清屏上电,等待稳定设置显示位置为第一行/led_wdat(DIS1i);设置显示位置为第三行/led_wdat(DIS3i);led_pos(4,0);设置显示位置为第四行for(i=0;i0;i-)csb=!csb;nop;nop;nop;nop;nop;nop;nop;nop;nop;csb=1;delay_ms(1);EX1=1;delay_ms(30);if(flag=1)Distance_count();dis=temp;flag=0;else dis=0;void tran1()uchar i;TH0=0;TL0=0;TR0=1;for(i=20;i0;i-)csb=!csb;nop;nop;nop;nop;nop;nop;nop;nop;nop;csb=1;delay_ms(2);EX1=1;delay_ms(50);if(flag=1)Distance_count();dis=temp;flag=0;else dis=0;void tran2()uchar i;TH0=0;TL0=0;TR0=1;for(i=16;i0;i-)csb=!csb;nop;nop;nop;nop;nop;nop;nop;nop;nop;csb=1;delay_ms(20);EX1=1;delay_ms(150);if(flag=1)Distance_count();dis=temp;flag=0;else dis=0;/* 函数名:void main(void)/功能:主函数*/ void main(void)uchar i,j;P0 = 0xff;P1 = 0xff;P2 = 0xff;TMOD=0x01;TH0=0;TL0=0;EA=1;IE=0x80;IT1=0;while(1)if(tc_say=4)temp_all();tc_say=0;tc_say+;for(i=0;i9;i+)IE=0x80;tran1();dis=do_s(dis);dis_4i=dis;fit_1();/* if(dis4000) time=time-1000;elseif(time-dis)2500) time=dis;else time=time-100;else */dis_all(dis);dis=0;lcd_pos(1,6);for(j=0;j4;j+)write(1,space4j);lcd_pos(1,6);for(j=0;j4;j+)write(1,point4j);delay(100);/* 函数名:void TT() interrupt 2功能:接收中断,产生脉冲*/void TT() interrupt 2TR0=0;ET1=0;flag=1;high_time=TH0;low_time=TL0;TR0=0;
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 机械制造 > 机械制造


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!