APP下载

基于单片机的超声波测距仪设计

2019-01-13袁龙超李源卓

魅力中国 2019年29期
关键词:测距仪数码管测距

袁龙超 李源卓

(国网河南省电力公司偃师市供电公司,河南 偃师 471900)

一、引言

(一)超声波测距仪的研究背景

伴随着科学技术发展欣欣向荣,超声波在测距中的应用越来越广泛。但就目前的水平,人们使用的测距技术还十分有限。因此这是个蓬勃发展并有无限远景的技术及其产业规模。超声波具有一些独有的特点,它的方向性强,再加上传播时受介质条件影响小,因此被用于超声波测距,可以说大多数测距方式都能通过超声波实现。使用超声波检测通常比较迅速、快捷、算法简易、能够及时控制。

人们在超声波的研发方面投入了大量人力物力。在军事方面尤为重要,海洋测距的声呐可以作为某些武器的伪装对象,潜水艇利用声呐实现远距离测距;研制更适合与潜海工作相关的潜艇声呐,可以解决浅海水中目标识别问题;超声波测距必定要与现代无线电技术与自动化技术相结合,实现多功能测距。随着正在进步的测距技术,从单纯的判断功能到具有学习功能,最终具备创造力。在新的世纪,测距仪将发挥更大的作用。

(二)国外超声波测距仪系统的现状

国际测距的仪器表在很早采用机械的原理。随着电子技术的广泛应用,它正在向着机电一体化的目标成长,并且出现了很多衡量标准。在传统的理论已经渗透到了电子技术和计算机技术的发展的同时,其结构有了很大的改良,功能有了很大的提高。从国外测距仪器发展的技术方向看,目前常用的新技术有距离测量和自动化仪表设计,计算机辅助测试专用集成电路技术和表面安装技术等。

(三)国内超声波测距仪系统的现状

我国关于超声波的大规模研究始于1956年。中国测试技术研究所李茂山在《超声波测距原理及实践技术》中详细地阐述了超声波测距原理,也给出了实现超声波测距的具体框图,并讨论了影响超声波测距精度的几种因素。在该文中,他并未提到超声波测距所需的一些具体实用电路,只给出了测距一般所需的电路名称,也没有提及各种电路的匹配。

(四)超声波测距仪系统的研究意义

目前超声波的传输时间和在介质中的传播速度,是影响超声波测距精度的主要因素,而两者之间以传输时间影响为主,因此,为提高测距精度,减少传输时间的不确定性的方法被大多数文献采用。

因为超声波测距技术本身就是一种非接触检测技术,不受光照强度、被测对象色泽等因素影响,与其它的仪器相对比更加卫生、防潮湿、耐腐蚀性气味气体、耐高温等特点,具有不污染、少维护、可靠性高、寿命长等优点,因而超声波测距系统能够应用在车辆倒车雷达、施工地点、机器人无障碍行走还有管进长度测量,工业井深等场所。所以超声波测距系统的研发有着实际意义。

二、总体设计

(一)方案确定

此次测距系统采用超声波渡越时间检测法。工作原理:从超声波发射器发射信号,到超声波接收器收到信号,这两者之间的时间为T,即为运输时间,再测出距离L。假设L是所要求的测量距离,T是往返的时间差,超声波在介质中的传播速度为V,于是L=CT/2。超声波接收器收到反射波就立即停止计时。然后由单片机计算距离,输送到数码管显示结果。

(二)总体设计

HC-SR04作为超声波测距模块,WT588D作为语音模块,STC89C52单片机作为微处理器使用,采用共阳极数码管作为显示模块。HC-SR04集成的发射电路模块发出超声波,一遇到障碍物就产生回波,会被接收电路模块接收,STC89C52单片机统计出声波传输所用的时间T,通过温度补偿,能够精确算出待测距离,与此同时WT588D会播报当前的测试距离,进行数据的交换处理,再通过数码管显示。

三、硬件电路设计

(一)单片机控制模块

STC89C52单片机,具有测量速度快,功率损耗小,抗干扰能力强的特点。完全兼容传统的STC系列单片机指令代码,各个端口连接不同的电路器件,实现相应的功能。

(二)超声波发射模块

HC-SR04模块的超声波发射电路,单片机相连的部分均接有滤波电容,主要是起到通高频阻低频,通交流隔直流的作用,电阻值选用10k,主要是起到保护电路的作用。采用pnp型三极管,是因为其发射结和集电结耐压高,性能良好。

(三)语音模块

WT588D性能优良,使用方便,与51单片机有一个非常类似的性能。。WT588D功能强大,这种芯片可以多次擦写。任何一种VioceChip WT588D软件控制模式支持WT588D语音芯片的随机替换,可以下载到SPI-Flash的信息。软件操作方式具有简洁易懂的特点,综合语音组合技术,极大的减少语音编辑时间。

四、系统软件设计

超声波测距系统的软件部分主要由数码管段选定义,语音模块定义,语音地址,1ms延时函数,小延时函数,三线发码子程序,数码位选函数,数码显示函数,超声波测距程序,处理距离函数,定时器初始化,定时中断服务程序,主函数等组成。汇编语言运行时间快,但对于超声波测距这种大程序,最好选用c语言编程。

(一)主程序

软件主要由两部分组成,主程序和中断服务程序。主程序实现工作的初始化、各路超声波的发射和控制接收顺序。

定时中断服务子程序控制超声波的发射,外部中断服务子程序是进行一些数据处理。

(二)外部中断服务子程序

外部中断服务子程序简而言之就是数据处理过程。外部中断管脚检测回波信号,如果有回波信号被接收,就进入中断服务程序。如果没有回波信号,那么定时器溢出,外部中断关闭,测距不成功。

结论

本次设计介绍了一种基于单片机的超声波测距仪的设计,给出了相应的软件和硬件的设计方案。基本能够实现该测距仪的功能:

1.距离精确到小数点后两位小数,通过语音播报距离。

2.8段数码管实时显示测出的距离,每隔3秒更新一次。

3、当测出的距离超出量程时,8段数码管不显示距离,并且提示测量已超出量程。

此次设计的测距仪具有市场前景,满足一定的市场需求,也可作为导盲人士的导盲仪使用,其规格不大,携带方便,能很容易的安装在需要测量距离的位置。通过数码管显示距离,同时语音播报距离,这就可以方便人们的生活。

猜你喜欢

测距仪数码管测距
类星体的精准测距
DME/N询问脉冲波形优化与计算
Arduino编程
MC9S08FL16单片机数码管静态显示分析
单片机控制的四位数码管动态显示编程
基于Qt的数码管数字编码系统的设计与实现
浅谈超声波测距
基于JADE的测距仪脉冲干扰抑制方法
基于PSOC超声测距系统设计
基于小波变换的测距仪脉冲干扰抑制方法