超声波测距系统设计_第1页
超声波测距系统设计_第2页
超声波测距系统设计_第3页
超声波测距系统设计_第4页
超声波测距系统设计_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

前言超声波测距系统为基于超声波反射原理的无线测距系统,近年来由于技术革新较快,于各领域均有广泛应用,是有望在工程领域取代人工测距的技术之一。相对于其他测距方式,超声波测距具有指向性较强、传播距离较远、耗电少的特点,尤其适用于测距领域,且测距速度快、精度高、实现方式简单、操作容易,适用于各类电子产品,且测量精度方面能够基本达到工业级指标。射频无线通信技术作为无线通信领域中的一个研究重点当前应用已经全面普及,其优势在于稳定性高、使用方便,在当前工业4.0以及物联网产业发展背景下,成为了各领域都需要用到的关键技术。基于以上背景本文主要利用STM32单片机进行超声波测距系统的设计,内部包括超声波收发模块、通信模块、温度测量模块等用于测量、计算以及温度数据补正的功能模块,并基于ARM旗下MDK软件平台进行了主程序设计、温度检测程序设计。根据理论以及实际性能测试,本测距系统在30-5000mm的距离下拥有较好的测量效果,其中理论测试中,测量精度保持为1mm;实际测试中,30-100mm距离下精度与理论测试结果接近,1000-5000mm精度下降较为明显,总体实际测量精度约为2%。具有一定的实用性及可靠性。本系统设计通过算法实现了测量距离的温度补正,一定程度上提升了测量精度,且作为嵌入式系统,可拓展性及兼容性较强,集成了声光报警系统,可作为简单工程控制系统的测距仪使用,具有一定的实用性。

1绪论1.1研究背景与意义从传统工业中矿山、地质勘探工作中到如今无人驾驶汽车技术的研发,都离不开无线测距技术的支持。无线测距不仅能够弥补人工测距对工作环境要求较高的不足——于高温、有毒、辐射环境下进行测距,还能实现设备的智能化控制,便于生产效率的提升。然而,无线测距相应对技术层面的要求更高。例如抗干扰能力强、体积小、成本低等,都是工程中对于无线测距技术及设备的实际要求,而基于超声测距原理所开发的无线测距系统一般能够满足工程中上述需要,也因此超声波测距已经成为了无线测距中的主流技术之一。无线测距对于传播介质的要求、使用的便捷性以及灵活性都是有线测距所不能达到的。在能够保证测量精度的前提下,普及无线测距已经成为了当前工业生产、地质勘探中的一种趋势。尤其是如今物联网、工业4.0等新概念层出不穷,促进了射频无线通信技术的飞速发展。此外,无线测距技术是实现无人驾驶技术的关键环节之一,无人驾驶中对于车辆避让行人车辆、倒车入库、维持安全行驶距离都离不开无线测距系统的支持。因此,基于超声波进行无线测距系统的开发,将有助于进一步认识无线测距数据发送和接收流程,解决超声波测距原理应用于实际中可能存在的问题,从而为工业中超声波测距技术的进一步开发提供参考,进而促进我国无人驾驶技术的进步。1.2研究现状与发展趋势国外对于超声波测距技术的研究开始于上世纪初期物理学有关压电效应发现的接触上解决了利用电子学产生超声波的难题。但直到二十世纪七十年代,该项技术才逐渐在生产实践中得到了应用。超声波测距技术最早的应用领域为在管道检测方面,由于超声波测距相较于人工测距精度较大、测距难度更小,因此短时间内在管道检测领域超声波测距技术即得到了广泛且成熟的应用,时至今日当前对于超声波测距技术的研究重点已经从探讨应用环境转变为了针对于各类应用场景中的超声波测距系统的特点对测距过程的精度进行提升,并尽可能地扩大超声波测距技术的适用情况,从而设计出更为成熟的超声波测距产品。例如HuaHong(2014)在其针对于超声波测距系统精度提升的研究中,利用超声波传感器发射接收连续调幅声波的原理开发出了一个完整的调幅连续大范围超声波动态测距系统。该系统的测量过程基于发射、接收两传感器之间的正比关系以及接收信号与发射信号之间的相位差展开,从而得到传感器之间的动态距离。经过严格的实验室测试,结果表明基于以上原理超声波测距系统的测量精度可在15米范围内达到1mm。Takanori(2017)则将双频超声波相位检测法应用到了超声波测距系统之中,通过测量两个发射频率不同的猝发声波对应回波信号的相位从而进行高精度测距。然而理论上该方法尽管精度更高,但由于相位测量的局限性,最终将导致输出测量结果为存在周期为2Π的多个解,因此为了消除这种不确定性,需要应用包络检测法从而得出便于显示的准确测量结果。另外,Figneroa(2019)提出了一种可以提升超声波测距系统测量精度的新型计时方法,即首先采用一种方法得到峰值时延,而后采用另一种方法得到相位时延,最后通过将峰值时延与相位时延相加得到最终的回波时延,从而得到测量结果,其研究结果指出,应用这一计时方法的超声波测距系统测量范围将提升为18-34m,但误差控制效果较为一般,接近2%。我国对于超声波测距技术的研究开始较晚,目前更多的研究重点聚焦早超声波的回波处理、超声波发射波处理以及超声波传感器的改良上。此外,基于对于上述问题大量的理论分析以及研究,开发出了一系列的实用技术优化方案,包括无人设备智能避障功能的实现、液位测量、车辆防撞等。目前国内超声波测距产品与传统测距方式相比,能够在短距离、纵向做到精度高、方向性强、对干扰光电信号不敏感,目前已经普遍于生产中应用。国内市场普遍销售的超声波测距仪价格从几十元至两百元不等,便携性较好,但测量精度普遍在1%左右。曹玉华(2011)提出了采用温度补偿的方法测量声速从而提升超声波测距精度。使得系统在近距离0.1-1.5m范围内测量精度提升至1cm级别水平。王红梅(2015)在此基础上通过分析以往超声波系统测距过程中存在的问题与缺陷,在其超声波测距系统的设计过程中应用了多次发射接收取结果平均值的设计思路与算法略微提升了测量精度,并考虑到了环境温度的变化对于测量的影响,从而在系统中加入了温度检测模块与测量结果的温度补正公式,最终基于高分辨率仪器的基础上,使得所设计的超声波测距系统在1-50cm范围内的测量精度能够达到0.5%的水平。董子和(2016)基于超声波测距原理以及误差消除原理设计、研制并优化了汽车倒车防撞检测报警器,能够实现自动检测车尾与最近障碍物之间的距离,并在超过安全距离的情况下报警,对以往防撞报警器对于障碍物识别智能化不足的缺点进行了优化。未来超声波测量的发展方向依然将聚焦于提升测距精度、提升设备智能化水平两个方面,并不断融合多种学课、门类知识技术,从而向系统化发展。1.3主要研究内容论文主要内容为基于STM32单片机的超声波测距系统设计基本方案,本超声波测距系统核心电路部分包括了系统超声波发射与接收部分、测距过程开始后输入捕获过程以及定时器启动后PWM部分。文章对于系统的核心电路与功能模块的电路进行了设计与说明,并在附录中展示了通信程序中中断函数以及测温程序的代码。而后系统设计过程中为了提升总体测距精确度,通过添加时间增益补偿电路采用对电位器增量表组织改变量进行补正的方式对回波信号进行处理,从而完成基于对回波信号进行处理的时间补偿,最后利用算法检测回波信号,完成测距显示。1.4本章小结本章在基于STM32超声波无线测距系统设计绪论中对于超声波测距系统以及超声波测距技术理论以及实际应用上在国内外的发展历程做出了概括总结,对课题研究背景、意义、国内外发展现状以及研究及设计主要内容做出了阐述。通过对上述内容的研究,基本确定了此次超声波系统设计过程中所需要达到的功能与精度要求,并且确定了设计过程中核心电路设计的总体思路以及辅助功能模块的选择。在对超声波无线测距系统做出了整体把握的基础上,对整个系统的发展历程形成了较为清晰的认知,便于在下文的设计中基于当前现有技术水平及发展状况对设计做出指导,并对设计中出现的问题相应的进行解决。

2超声波测距的理论基础2.1超声波的类型超声波即为频率较高的声波类型,本质上属于电磁波的一种,按照沿着传播方向的波动方式,例如质点振动与波传播方向相对关系的不同,可以将超声波的类型分为横波、纵波以及表面波三种。理想状况下,超声波的质点振动公式可由式2-1进行表示:St式2.1中St为质点位置,A0为振动初始状态下参数,x为距离,a为衰减系数,t为时间,2.2介质的超声波传播特征2.2.1声速声速一般表示声波在介质中的传播速度.温度、湿度、压强等因素对于声速能够显著产生影响,其中温度影响最为明显,波速在-30℃-100℃的变化情况如下表2.1、式2.2所示:表2.1波速以空气介质传播速度随温度变化表温度(℃)-30-20-100102030100c(m/s)313319325323338344349386空气介质中声速可近似表示为:c=331.6×式中。T为环境温度,单位为℃。2.2.2声衰减声波作为一种电磁波,因此在环境介质传播过程中不可避免地将发生反射、吸收、散射等现象导致波能量略微减少的声衰减现象。声衰减现象的发生一般有三个原因:晶粒散射、波束扩散以及介质吸收。晶粒散射现象为电磁波在介质中进行传播过程中经由波阻抗不同界面产生散乱反射的现象,晶粒散射现象所产生的声衰减与界面晶格结构、晶粒结构相关,除此之外,介质中如果存在气泡与杂质同样将导致声波在介质传播过程中发生晶粒散射,形成声衰减的结果。介质吸收现象为电磁波在介质中传播过程中,因介质质点之间互相的摩擦与热传导造成的能量损失,映射至超声波传播过程即表现为超声波能量的衰减。扩散衰减则指在电磁波传输过程中由于波束扩散使得波的能量随着传播距离的增加而不断减弱的现象。超声波扩散衰减现象的发生主要取决于超声波波阵面形状,但与介质性质无关,因此是区别于介质吸收现象的声衰减类型。2.3超声波测距原理回波探测法实现难度低、检测范围大,但在短距离内有盲区,适合作为本系统基本原理使用。回波探测法的原理可以概括为已知介质声波传播速度情况下,采取发射、接收声波,对发射与接受进行计时计算距离值的方法。计算公式如下2.3所示s=t×式中t为从发射到接收经过的时间,c为给定温度、介质下波的传播速度。s即为测距装置与障碍物之间的距离。联合式2.2、2.3可根据环境温度对距离进行温度补正,补正结果如公式2.4所示:L=12273.15+T式中L为距离,t为从发射到接收经过的时间,T为环境温度,单位为℃。回波探测测距原理可表示为下图2.1。图2.1回波探测原理图本系统系统设计原理基于回波探测法展开。在回波探测过程中传感器分为发射传感器与接收传感器。但无论是超声波发射传感器还是接受传感器,其传感器的本质与功能都是需要完成将电能转变为机械能的转化,因此在大多数有关于超声波测距系统的研究过程中,基本将超声波传感器定义为能量转换器,用于将超声波震动机械能转化为电信号用于系统的处理。2.4本章小结本章对基于STM32的超声波无线测距系统所用到的基本理论及技术做出了说明与分析,主要包括超声波基本特征、传播特点以及超声波测距实现原理三个部分。基本说明了基于单片机的超声波测距系统设计过程中所用到的物理原理以及单片机在系统中所起到的关键作用,确定了超声波测距系统完成测距过程的基本设计原理为回拨探测法,在此基础上基于理论分析对系统设计中程序部分以及数据换算部分用到的公式进行了说明。

3基于单片机的超声波测距系统设计3.1超声波测距系统总体设计3.1.1设计原则本系统要求进行测量过程中不仅要运行的准确、安全、稳定,且要求易于维护,因此系统设计需要遵循以下原则:1、稳定性超声波测距设备一般作为嵌入式设备在大型控制系统中长期稳定使用,因此需要从PCB设计、电磁兼容等要素,通过合理布局排版尽量减少环路电阻、加粗电源线宽度,从而提升抗噪能力。高频电路采用多点串联接地,低频电路采用单点并联接地,地线保证短而粗,使得能够通过三倍于PCB允许电流,高频元件周围用大面积栅格状铜箔。PCB大面积敷铜,从而控制PCB的工作温度、减少地线阻抗、屏蔽电路板信号交叉干扰,提高系统稳定性。2、可扩展性由于当前对于超声波测距系统的要求更智能化、全面化,因此系统设计过程中需要注重在当前功能基础上进行扩展、升级的可能性,例如升级主控单元、扩展功能等。为此,在进行系统设计过程重需要采用模块化、系统化的设计思想,即能够扩展产品的适用范围、也能够将系统应用到更为广泛的领域之中。3、简洁性设计简洁即实现功能的前提下尽可能地通过简洁的设计提高主控单元的处理效率,从而提升系统的综合性能、稳定性和可拓展性。3.1.2总体设计思路与功能概述参考当前无限超声波测距系统的发展现状与自身技术能力的实际,此次设计系统需要实现的性能如下:测量范围达到20mm-5000mm,测量精度大于2%,结合硬件性能考虑,小测距单位设计为10mm,响应时间2000ms以内即可。液晶显示方案选用价格较为低廉的LCD液晶显示屏降低成本,并添加环境温度检测模块从而根据温度补正公式完成测距过程中对于环境温度因素的屏蔽。预设工作环境温度为0-40℃,采用STM32为核心电路芯片解决方案,完成超声波发射、接收以及电信号的分析处理过程,最终输出测量值由显示模块进行显示。3.2超声波测距系统硬件设计3.2.1单片机选型与核心电路设计单片机因其相对强劲的性能与低廉的价格成为了近几十年来受到广泛欢迎的嵌入式系统处理芯片解决方案。与PC中CPU相比较,单片机同时具有中央处理器、物理内存以及缓存部分,在超声波测距系统中作为主控单元,可以达到在固定时间设定超声波发射模块进行超声波发射以及控制接收电路对发射的超声波信号进行回波信号接收的效果,另外也可较为轻易的完成读取芯片内部计时器时间值结合测温模块输出12位温度值对测距过程的测量结果进行距离计算与补正,最终向显示模块输出信号,完成各项环境信息以及测量结果的输出与显示。STM32是ST公司开发的一款32位单片机,主频位1.25DMIPS/MHz,综合价格、性能以及功耗因素考虑适合于作为超声波测距系统主控单元使用。STM32内核为ARM公司Cortex-M3架构,拥有Thumb-2指令集,尽管目前已有大量成熟的64位单片机产品,但STM32的效率和稳定性依然使其广泛应用于各类嵌入式系统主控单元中。STM32PLL可达72Mhz,高分辨率计时器为测量精度提供了保证,内部集成除法器,大大降低了计算时间。系统设计采用的STM32封装为LQFP64,如下图所示:图3.1STM32LQFP64封装外观图在此次设计中,STM32单片机所起到的作用主要包括:(1)控制超声波发射模块在给定时间段进行超声波的发射工作,并在接收阶段相应的停止超声波的发射过程;(2)在超声波发射模块发射超声波后,相应的在给定时间范围内完成超声波接收模块的超声波接收过程,并基于计时器完成超声波发射与接收信号之间时间差(渡越时间)的计算;(3)从温度检测模块中搜集输出的环境温度数据,根据渡越时间、环境温度根据相应公式进行距离计算,并输出计算结果;(4)计算结果经有显示模块处理,完成距离值以及环境温度值在LCD液晶显示屏的显示,便于查看。核心电路设计包括晶体震荡电路、复位电路、电源供电模块设计、单片机程序下载端口。具体设计方案以及采用立创EDA软件绘制的核心电路图如下,核心电路包括四个主要部分,分别为电源供电部分、晶体震荡电路部分、复位电路部分以及下载端口部分。图3.2STM32核心电路总体设计图图3.3电源电路设计图核心电路的四个主要部分介绍如下:电源模块为核心电路的供能部分,此次设计对于电源供电的要求基本可以概括为两点:即纹波干扰少、稳定性高,从而保证整个超声波测距系统的稳定运行。单片机核心电路理论上对于电源的要求为5V直流供电,考虑到实际设计环境与成本问题,很难为核心电路提供高稳定性的5V直流供电方案,因此选择采用以三节干电池供电的方式进行供电方案的代替,经后文中实际测试,可看出采用三节干电池供电基本能够达到系统电源供电的要求。供电电路中串接了发光二极管实现通路指示的功能,同时串接了并联滤波退耦电容与开关,将供电正极接往STM32单片机40号针脚,供电负极接往单片机20号针脚,完成对单片机核心电路的供电。复位电路模块主要用于整个超声波无线测距系统的启停、复位等功能的实现,复位模块是系统设计中系统得以可靠协调工作的保障。如图3.2所示,复位电路最终输出的复位信号直接连接到STM32单片机的第9号针脚。STM32单片机的复位需要使得单片机RST针脚上维持多个周期的高电平信号,而根据单片机型号的不同维持信号所需的周期也不同,根据此次系统设计所用STM32系列单片机型号的说明,复位电路需要向单片机输出不低于24个脉冲周期的高电平信号即可完成复位。复位电路组成包括电阻、电容以及复位开关,从而在开关闭合形成通路时,电路中电容能够维持住一个较短的高电平周期使得芯片完成复位,同时该复位开关可以作为整个系统的手动复位开关,当超声波测距系统发生工作异常时,可通过手动复位开关完成系统复位。晶振电路用于对于整个超声波测距系统以及核心电路提供符合单片机要求的固定周期脉冲信号,在此次设计中,晶振电路由两个无源石英晶体振荡器实现,由于需要对振荡波型的稳定性提出要求,因此需要在振荡器的周边搭配两片无极贴片电容进行接地。晶振电路所输出的信号类型为方波震荡脉冲,该震荡脉冲直接进入单片机第18、19号针脚,经由单片机确定本超声波无线测距系统中所有工作的周期。一般而言,系统工作的反应速度与晶振频率直接呈现正相关。单片机程序下载端口为用于单片机程序烧录的下载电路,该端口(电路)的功能为向单片机存储器烧录完整的二进制代码,从而达到通过单片机进行程序控制的效果。STM32单片机作为成熟的单片机产品,可直接通过串口通信完成程序烧录与下载过程。如图3.2所示,下载电路中2\3针脚直接与单片机第10、11针脚相连接,是下载电路中的串口通信接口,用于直接将程序向单片机储存器进行烧录。从而实现通过串口通信直接向单片机进行程序下载与烧录的过程。3.2.2无线收发芯片模块本超声波无线测距系统中无线收发芯片采用型号为nRF24L01,实物如图3.4所示,该款nRF24L01采用双列八脚直插封装,针间距为2.54mm。板载2.4GHz天线,理论比特率为250kbps时通信距离约200m左右,于150m以内有较好的通信效果。该型号扩展版使用外置2.4GHz天线,最高通信距离可达1000m,能够满足本超声波无限测距系统的需要。发射功率最大为4.5:+7dB,接收灵敏度最高为90dB。该型号芯片集成RF协议及通信技术,自带FIFO缓存,采用SPI串行接口与单片机硬件SPI进行直接连接,因此能够兼容不同速度的接口,对于价格较为低廉,性能较为一般的单片机兼容性较好。芯片模块具有智能重发功能,可自检及重发丢失的数据包,且具备无线通信链路层协议,便于开发。此次设计中的无线收发模块由单片机发出片选信号,经由SPI总线片选端口CSN进行接收,单片机与无线收发模块之间的数据发送或者接收端口为CE端口,同样由单片机进行数据发送和回收的选择控制,串行通信数据则经由SPI总线数据输入端口MOSI,时钟断口SCK用于接收由单片机计时器发出的固定时钟信号。nRF24L01芯片读写时序如图3.5所示:图3.4nRF24L01实物图图3.5nRF24L01读写时序图3.2.3超声波收发模块超声波收发电路是本超声测距系统的重要部分,超声收发模块承担着测距信号的发送和接收功能,一般超声波测距系统的超声波收发模块都由超声波探头(超声波换能器)与超声波激励电路组成,其中超声波探头为直接进行超声波的发射与接收的组件,用于进行电能至机械能的能量转化过程,在诸多相似的超声波测距系统研究中均可表明,超声波探头组件性能将极大影响到超声波测距系统的实际测量性能与精度。超声波激励电路则是用于产生用于激励超声波探头进行超声波信号发射的电路设计,原理为通过向超声波探头施加一定电压、频率的电信号使得这一电信号经由超声波探头中的元件转化为一定频率的超声波信号,因此,超声波发射电路中激励电压的性质将直接关系到最终发射超声波的频率与振幅。超声波收发模块的实物如下图3.6所示。图3.6超声波收发模块实物图由上图3.6可得,超声波模块为双传感器结构,分别负责超声波的发送和接收,以此完成超声波测距,传感器外接单片机,利用单片机对发射传感器发射至接收传感器接收所需时间进行计时,而后利用算法对这一时间进行输出计算,最终得到所测距离,于LCD屏幕显示。超声波反馈至R传感器后由这一高电平信号传输至单片机从而进行中断处理,停止计时。测距模块时序如下图3.7所示。超声波模块利用超声波遇障碍反射的特性,从而利用接收反射波的时间乘波速完成距离测量。此次设计中超声波发射电路由单片机内部的定时器向发射电路输出两路高频且互补的PWM信号(频率40KHz、占空比0.5),这两对互补PWM信号分别经由发射电路向偏载电荷泵输入,最终产生+6V\-6V的一组电压,最终驱动超声波探头发射出40KHz的超声波。图3.7超声波收发模块时序图3.2.4声光报警模块声光报警是本超声测距系统应用于实际的功能模块,用于在测距输出结果低于设定值的情形下由蜂鸣器、二极管报警提示障碍物。系统电路如图3.8所示,报警电路采用S8550放大电流,从而推动二极管发光、蜂鸣器发声。当单片机驱动端口输出为低电平时,此时管子饱和导通,发光二极管与蜂鸣器工作。图3.8声光报警电路设计3.2.5显示模块考虑到原材料获取难易度以及超声波系统设计功能及兼容性要求,显示模块选用LCD1602黑白液晶显示器作为测距仪的系统显示界面。本测距系统设计功能较为简单,显示模块只需显示字符、不需显示图象,因而选择低端型号LCD1602。该型号显示内容格式较为灵活,作为大众型产品能够较好的满足测距系统的需要,LCD1602的电路如图3.9所示,十六个针脚的基本说明如下:针脚1:接地。针脚2:电源阳极输入。针脚3:LCD偏压控制,在电路中一般采用可变电阻进行调节,在此次设计中为了简化电路,直接采用电阻接地的方式进行实现。针脚4:直接与单片机连接,用于接收单片机数据选择信号与命令。针脚5:直接与单片机连接,用于接收单片机所发出的控制信号,单片机发出低电平指示显示电路写入数据、单片机发出高电平则指示显示电路读取数据,无电平发出默认处于接地状态。针脚6:与单片机相连,接收单片机控制信号。针脚8:液晶显示屏背光阳极,与电源正极相连。针脚9:液晶显示屏背光阴极,与电源负极相连。实物如图3.10所示。显示模块对应STM32接口如图3.2核心电路设计所示。图3.9显示电路设计图图3.10LCD1602实物图3.2.6温度模块此次系统设计中需要温度测量模块对环境温度进行采集,避免温度因素对测量造成影响,提升系统测量精度。DS18B20传感器输出信号为采集温度过程完成后输出的数字信号,其自带的驱动程序使得传感器最终能够输出12位温度数值,如图所示,DS18B20通过单总线与STM32的P2.3端口进行连接完成温度数据的读写过程,4.7K电阻的功用是完成单总线电源上拉,总体温度测量精度可以达到0.5℃。该温度模块设计方案的优点与特性包括(1)拓展性较好,若采取多个传感器并联的方案,可以达到多点测温的效果。(2)占用系统资源少,整个温度采集模块仅仅只占用超声波测距系统的一个IO口。(3)待机功耗几乎为0。(4)无需额外设置其余外置器件即可达到测温效果。(5)可拓展过温报警或者低温报警功能。(6)对于供电电压的要求较为宽松,供电电压处于3.0-5.5V范围内均可正常工作。(7)当出现电源反接情形下,电路内各元件具有良好的自我保护效果。图3.11温度采集电路图3.3软件设计3.3.1主程序本超声波测距系统软件设计采用MDK软件平台,MDK前身为Keil软件,广泛运用于STM32单片机的开发中,作为拥有一整套编译、仿真的嵌入式开发平台,被ARM收购后更名为MDK。软件基本界面如下图:图3.12软件平台主界面图3.13主程序流程图图3.14测距仪通信程序流程图主程序流程如图3.13所示:主程序开始运行后首先加载硬件配置以及参数初始化,而后进入主循环。主循环包括超声波距离测算、显示、温度采集、通讯信号处理以及物理按键检测等轮训项目。当按下物理按键启动测量时,经有按键处理模块进行超神波的发送阶段,同时启动计时器。单片机中断管脚的过程由单片机接收到传感器返回的脉冲信号后完成,当脉冲信号返回单片机,单片机将启动中断函数(interrupt1,代码见附录)从而完成中断管脚的过程,从单片机计时器获取时间值后则测量完成。单片机计时器计时精度为1μs。测量完成后,测量数据的计算处理过程在通讯处理模块中进行,主程序以20Hz的频率调取函数执行,对应LCD屏幕每50ms刷新一次,基本能够满足人眼的观测要求。温度采集函数在本系统设计过程中根据要求作用为采集变化波动基本不大的环境温度,因此预设执行频率为2000ms一次,即2s在LCD屏幕更新一次环境温度信息。当主循环检测到单片机因接收中断函数。(interrupt1)指令形成接收标志位时,即进入通信处理模块进行通信协议规定的处理任务上述超声波测距外部中断1服务函数(interrupt1)如下:voidexter()interrupt1{T_WaveH=TH1;//取出计时器高8位值T_WaveL=TL1//取出计时器低8位值F_WaveOK=1//设置接收标志位EX1=0//关闭外部中断1}测距计算代码:voidCountWave(void){WaveTime=T_WaveH*256+T_WaveHL;Length=(WaveTime*(331.45+K_Temp*tmp)/2))/100;//根据公式计算,得到单位为cmdispbuf[0]=0xal;dispbuf[1]=Length%256dispbuf[2]=Length/256;//处理显示数据}无线通信接收函数:ucharRX_Pack(uchar*RX_REG){ucharflag=0;Sta=SPI_read(STATus)if(RX_DR){CE=0;Spi_R_load(RD_RX_LOAD,RX_REG,TX_LOAD_Length);Flag=1;SPI_RW_BUF(WR_BUF+STATS,0xff);CSN=0;SPI_RW(F_LusH_RX);CSN=1;CE=1;}return(flag);}无线通信应答函数:uncharCheck_ACK(){status=NRF_RD_Reg(R_REGIST+STA);if(TX_D||MAX_R){NRF_WR_Reg(W_REGIST+STA,0xff);CSN=0;NRF_SPI(F_LusH_TX);CSN=1;return(0);}elsereturn(1);}3.3.2温度采集程序设计系统中外接DS18B20模块采集环境温度,温度采集模块受单片机程序驱动,操作步骤如下:温度传感器复位过程中,通过单总线向传感器发送RAM指令脉冲,此时总线为低电平脉冲。随后释放总线,发送正常信号,进行传感器的正常检测,利用函数代码列出只读温度返回值tmp。温度采集函数代码如下:RD_tmp(){floatt;ow_reset();Delayus(200);WR_byte(0xcc);WR_byte(0x44);ow_reset();delayus(1);WR_byte(0xcc);WR_byte(0xbe);tmp_data[0]=RD_byte();tmp_data[1]=RD_byte();tmp=tmpdata[1];tmp<<=8;tmp=tmp|tmp_data[0];//合成字节为整型变量tmp=tmp*0.0625//进制转换val=t*100+(tmp>0?0.5:-0.5);returntmp;}DS18B20对应温度补正公式2.4进行测算距离的温度补正,温度在12位下与输出的二进制、16进制代码对应如下表3.1所示表3.1DS18B20温度测量模块温度输出对应表温度(℃)输出代码(二进制)输出代码(十六进制)125111110100000700H85101010100000550H25.061100100010191H10.131010001000A2H0.510000008H000000H-0.51.11111E+15FFF8H-10.131.11111E+15FF5EH-25.061.11111E+15FF6FH-551.11111E+15FC90H3.4本章小结本章详细就超声波测距系统的总体设计,包括设计原则以及总体设计思路与功能进行了概述。并对超声波测距系统中单片机选型以及核心电路设计、无线收发模块设计、超声波收发模块设计、声光报警模块设计、显示模块设计以及温度模块设计过程中的电路图以及思路做出了详细阐述。在此基础上,对于该系统软件部分的设计给出了详细代码,基本就本超声波测距系统功能的实现给出了硬件以及软件部分的解决方案。主要的包括讲述了射频无线通信nRF24L0传输模块的总体电路设计以及原理,展示了超声波发射与接收模块的实物图片;通过产品使用手册实现了超声波测距系统测量结果向LCD液晶显示屏的输出,并为了提升测量精度,消除温度对于测量结果的影响,利用DS18B20传感器进行了温度采集电路的设计,从而达到了向单片机输出温度数据的效果,最终得以根据回波测距法温度补正计算公式消除由公式带来的误差。

4超声波测距理论性能及实际性能测试4.1理论性能实验4.1.1实验目的本超声测距系统设计包含系统实验部分,用于测试系统设计各模块能否正常运行,以达到一定精度下的测距效果。本设计主电路基于单片机STM32开发,通信模块为Nrf24L01,系统为典型的嵌入式设备,最终测距仪成品如下所示:图4.1测距仪实物图实验目的主要有三点:第一,测距前利用万用表检查硬件设计及电路板焊接是否存在虚焊、短路连接、装配错误等问题,保证各系统模块调试正常。使用示波器、万用表检测工作时的各项电流、频率参数。第二,检查软件编译错误,修复影响测距仪正常运行的bug。第三,确定超声波测距仪的理论与实际测量效果。为详细测定本超声测距系统的误差,除上述实际测量实验之外,补充设计了于室温下实验室环境的距离测量实验。实验装置为距测距系统25mm至5000mm不等的超声波反射挡板,每一挡板测试10次得到10组数据,从而检验本超声波系统的测距精度、最大测量距离以及盲区。4.1.2测量结果室温下距离测试的测量结果如下表4.1所示:表4.1超声波测距仪理论性能测试结果实际距离/mm测量示数绝对误差2562.67-3030.350.35100100.330.33200200.40.4300300.280.28400399.740.26500500.320.3210001000.30.314001399.440.5618001800.430.4322002200.460.4626002600.580.5830003000.680.6834003400.760.7638003799.360.6440004000.740.7444004400.680.6848004800.750.7550005000.350.3652005100.12-5400--由上表4.1可以看出,本超声波测距系统在低于30mm的情况下,由于超声波发生多次反射,已经无法正常进行测量,因此30mm以下为本超声波测距仪的测量盲区。另外测量距离超过5000mm后,因超声波回波信号较弱,难以进行准确的测距,因此本系统理论测量范围为30-5000mm。在此量程内,测量精度为1mm。使用万用表及示波器对测距仪工作时进行测量,得到的电流、功率等参数如下表所示:表4.2超声波测距仪理论性能测试结果项目测量值备注测量精度1mm最小测量距离30mm如表4.1所示最大测量距离5000mm 发送端电流21.05mA如图4.2所示接收端电流43.08mA发送端功率1.5mW如图4.3所示接收端功率215.40mW单片机工作频率12.000MHz 工作电流以及工作频率的检测如下图4.2、4.3所示:图4.2超声波测距仪工作电流测量图4.2超声波测距仪工作频率测量4.2室外测试为了验证无线测距仪在室外条件下的测量可靠性,此次设计在理论测试的基础上补充了室外测距实验,为获得较好的测量效果,选用了对波反射能力较强的铁门作为测试对象,测试现场图片如图4.3、4.4所示:图4.3超声波测距仪现场测距图现场测量采用卷尺进行实际距离测量,具体测量数据如下表4.3所示:表4.3超声波测距仪现场测距数据项目实际距离示数室内墙面1000mm960mm室外铁门20mm80mm室外铁门50mm50mm室外铁门1000mm980mm室外铁门2000mm1970mm室外铁门3000mm2950mm室外铁门4000mm4040mm室外铁门5000mm4940mm室外铁门5500mm-由表4.3中数据可以看出,实际测量条件下,超声波测距仪的测量精度很难达到实验室条件1mm水平,误差一般为1%-2%左右,在50mm以下能够表现出较好的测量精度,1000mm-5000mm的测量距离下,测量精度下降较为明显。盲区与最大测量距离数据与理论测试保持吻合,低于30mm的测量距离下无法取得正确的示数,高于5000mm的距离则因返回波较弱无法显示示数。4.3本章小结本章首先展示了超声波测距系统的设计实物,并给出了理论性能测试的环境说明以及测试结果,在进行工作电流及示波器辅助监控的前提下,完成了该超声波测距系统理论测量范围、精度等数据信息。而后为了说明本实验设计的可靠性及实用性,安排了室外测试实验,以宿舍铁门为对象进行了本测距仪的室外性能测试实验。结果表明室外实验性能表现不及理论性能:实验室性能测试结果为测量范围30mm-5000mm,精度为1mm;室外性能测试结果为测量范围50mm-5000mm,精度为1%-2%。

结论此次无线超声波测距系统设计主要特色为在一般超声波测量仪基础上添加了射频无线通信技术以及温度补正模块。控制核心采用兼容性好、价格成本较低的STM32单片机,利用单片机驱动超声波收发模块发送超声波信号,同时由该模块传感器进行超声波信号接收,转换为电信号返回单片机,利用计时器进行时间值,经计算与温度补正得到测量距离值,最终由LCD1602显示屏进行显示。测量仪使用按键进

温馨提示

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

最新文档

评论

0/150

提交评论