超声测距报告_第1页
超声测距报告_第2页
超声测距报告_第3页
超声测距报告_第4页
超声测距报告_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

超声测距报告摘要:本系统包括控制,超声发送与接收。通过单片机控制超声波的发送与接收,再由单片机进行数据处理,在液晶上显示距离。系统稳定性好,测量精度高。关键词:单片机,超声,步进电机一方案论证与比较1.系统方案方案一:采用单片机与FPGA配合,对超声发送与接收进行控制,以及对数据进行运算处理。方案二:直接用单片机控制与数据处理工作。鉴于单片机内部自带有定时计数器,足够控制超声发送与步进电机,完全可以胜任。而且只用单片机,体积小巧,携带方便,也节约成本。因此选择方案二。2.超声发送模块方案一:利用定时器产生40K赫兹脉冲,引起超声波发送器内部谐振,将电能转化为声能。方案二:采用555产生40K赫兹方波,使超声波发送器发射超声波。由于555定时器的频率不稳定,而由单片机定时能产生非常稳定的40K赫兹频率的波形,因此采用方案一。3.超声接收模块方案一:采用各种运算放大器放大回波信号,并将送入电压比较器,再经过非门进入单片机外部中断1。方案二:采用普通三极管共射极放大电路,由于我们只需要将回波信号放大即可,并不需要非常好的波形,所以选择普通三极管。经过三级放大,可以探测到一米以内的回波信号。由于方案一接收后的波形更稳定,故采用方案一。二、基本测量原理与方案实现1.基本测量原理:系统开始工作时,由单片机发出一个频率为40kHz个数为5的群脉冲,并在发出第一个脉冲的同时,由一个单片机内部定时器开始计时,当接收传感器接收到第一个脉冲信号经过放大比较后送入单片机中断口的时候,停止计时。这当中的时间差t就是超声波在测量过程中经过的距离。因此可以得出被测物体与传感器所在位置之间的直线距离为:S=v*t/2上式中,v为超声波在空气里的传播速度,考虑到温度对超声波速度的影响,查寻下表:温度(C)-30-20-100102030100声速(m/s)313319325332338344349386可知,在25°C室温,取波速为345.3m/s。在测量误差方面,我们认为误差主要来自两传感器之间的距离,如图示:图中,2*1为超声波在空气中的实际传播距离,s为两探头之间的距离。那么被测物体实际距离的计算公式为:d=(l2-s2/4)1/2当被测物体与传感器距离较远时,即图中的1>>s时,s可近似忽略,那么有:l"d;当被测物体与传感器距离很近时,s对d的影响就不可忽略了,此时lHd,因此当d〈10cm的时候,绝对误差将增大。 v2.方案实现:前面提到,整个系统制作的关键就在于超声波的发送和接收部分。在这一环节我们用的是型号为UCM—T4OK1、UCM—R4OK1的压电超声波换能器,它是适用于遥控、遥测、报警、自动控制等电子装置的关键部件。该器件按用途分为发射(UCM-T4OKI)和接收(UCM-R40K1)二种。它应用了压电陶瓷的压电效应,当接收信号时,锥形谐振子收集信号传输到压电振子,压电振子谐振并产生电压;当发射信号时,将电压加到压电振子,使其谐振并产生电压信号,通过锥形谐振子向空间发射。其技术指标:中心频率40±lkHz(发射),38±1kHz(接收);灵敏度^-70dB/V/ubar;频宽2±0.5kHz。.超声波发射在发送端,发射电路主要由反向器74LS04和超声波换能器构成,单片机P1。0端口输出的40kHz脉冲信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极,用这种推挽形式将方波信号加到超声波换能器的两端可以提高超声波的发射强度。输出端采用两个反向器并联,用以提高驱动能力。上拉电阻一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声换能器的阻尼效果,缩短其自由振荡的时间。.超声波接收在接收端,由于传感器收到的信号极其微弱,因此需经过放大才能为单片机检测至I」。通过粗略估计,要把小信号放大到5〜7v,需放大1000倍左右。考虑到高达40kHz的频率以及现有运算放大器UA741的增益带宽积(0.3MHz),我们使用低噪音高性能运放NE5532来实现放大。为了有效地放大信号,在第一级采用了差分放大以减小各种漂移的干扰。后面再加入三级基本反向放大,使输出后放大1000倍。有些资料介绍在接收端加入带通滤波器,以防止接收器感应到其它一些非有效信号。关于这一点,我们考虑到该超声传感器本来的固有频率就是40kHz,也就是说,它在接收信号时,首先就已经对各种信号进行了选频,不会感应到其它信号,因此在这里滤波器是不必要的。具体电路如下:

信号整形通过示波器测量、显示,传感器收到的信号波形为正弦波,需要经过整形成矩形波信号,才能输入给单片机进行识别,因此我们加入电压比较器LM311即能完成这一任务。电路如下:+5VLM311[R]/10kOhm/50%5.1kOhm12V^^12+5VLM311[R]/10kOhm/50%5.1kOhm12V^^12Vzr发射头接收到的波形如下图,将LM311的比较电平设定为某一正值,当接收到的(4)系统程序的设计超声波测距器的软件设计主要由主程序、超声波发生子程序、超声波接收中断程序及显示子程序组成。由于C语言程序有利于实现较复杂的算法,汇编语言程序具有较高的效率并且容易精确计算程序运行的时间,而超声波测距器的程序既有较复杂的计算(计算距离时)又要求精确计算程序运行时间(超声波测距时),所以控制程序可采用C语言和汇编语言混合编程。下面对超声波测距器的算法、主程序、超声波发生子程序和超声波接收中断程序逐一介绍。计算公式为:d=s/2=(v*t)/2其中:d为被测物与测距器的距离;s为声波往返的路程;v为声速;t为声波往返所用的时间。主函数主函数程序首先是对系统环境初始化,设置定时器TO工作模式为16位定时计数器模式,置位总中断允许位EA并将显示商端口P0和P2清0。然后调用超声波发生子程序送出一个超声波脉冲,为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延时约0。1ms(这也是超声波测距器会有一个最小可测距离的原因)后才打开外中断0接收返回的超声波信号。由于采用的是12MHz的晶振,计数器每计一个数就是1us,当主程序检测到接收成功的标志位后,将计数器T0中的数(既超声波往返所用的时间)按计算公式计算,即可得被测物体与测距器之间的距离,设计时取声速344m/s,则有D=(v*t)/2=172T0/1000mm其中:T0为计数器T0的计数值。测出距离后结果将送往LCD显示约0。5S,然后再发超声波脉冲重复测量过程。为了有利于程序结构化和容易计算出距离,主程序采用C语言编写。图为主函数程序流程图:3.超声波发生子函数和超声波接收中断函数超声波发生子函数的作用是通过P1。0端口发送2个左右超声波脉冲信号(频率约为40kHz的方波),脉冲宽度为12us左右,同时把计数器T0打开进行计时。超声波发生子函数比较简单,但要求程序运行时间准确,所以采用汇编语言编程。超声波测距器主函数利用外中断0检测返回超声波信号,一旦接收到返回超声波信号(即INTO引脚出现低电平),立即进入中断函数。进入该中断后立即关闭计时器TO停止计时,并将测距成功标志字置1。若计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断0关闭,并将测距成功标志字置2以表示本次测距不成功。三、测试方法与数据:让传感器探头固定面向一个方向,在超声波传播方向上一米之内放一个障碍物让液晶显示其测的距离作为实测数据,用米尺测量两传感器探头与障碍物之间的实际距离,两者进行比较,就能直观地看出测量的误差。数据记录表格如下:(单位:mm)理论值10203040506070测量值盲区344553596879理论值80100150250400500600测量值88104153252404491593理论值7008009001000测量值6978029051005在这一部分,我们发现误差不大,符合系统要求。由以上表格可知,本超声测距系统的有效可测范围是2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论