基于ATMEGA8的高精度超声波测距仪设计
扫描二维码
随时随地手机看文章
摘要 针对普通超声波测距系统测量精度低的问题,介绍了一种由ATMEGA8单片机控制的实时超声波测距系统,电路主要采用专用时间测量芯片TDC—GP21,并考虑了温度补偿,有效地保证了系统则量精度和低功耗特性。
关键词 TDC-GP21;超声波测量;时间测量;ATMEGA8
由于超声波指向性强,能量消耗缓慢,在介质中的传播距离较远,因而超声波经常用于距离测量,如测距仪和物位测量仪等都可以用超声波来实现。利用超声波检测较为迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求。因而超声波测距,多应用于汽车倒车雷达、机器人定位、建筑工地以及一些工业现场的位置监控,如液位、井深的测量等场合。目前,石油石化行业对油库和水箱液面的精确测量和控制的要求越来越高,基于以上需要,以ATMEGA8为控制核心,利用专用时间数字转换芯片TDC—GP21为测量环节,设计了一种高精度的小型化超声波测距系统,并介绍了系统的硬件和软件设计方法。
1 超声波测距基本原理
超声波测量技术是基于蝙蝠等无目视能力的生物防御及捕捉猎物生存的原理,利用超声波借助空气媒质传播,通过遇到障碍物反射回来的时间间隔长短及被反射超声波的强弱判断障碍物性质和位置的方法。本系统采用时间间隔检测法,即测距时超声波发射器有规律发射超声波,遇到被检测对象后反射回来,通过超声波接收器接收到反射波信号,并将其转变为电信号,测出从发射超声波至接收到反射波的时间差
(时间间隔t)。t与超声波传播速度c相乘可求出被测距离s,即
由于超声波的声速和温度有关,如果温度变化不大,认为声速基本不变。如果测距精度要求高,那么可以通过温度补偿的方法加以校正。不同温度下超声波在空气中的传播速度随温度变化关系
c=331.4+0.61T (2)
式中,T为实际温度;c的单位为m/s。
2 超声波测距系统设计
根据超声波的工作原理,结合现场的使用需要,设计了一种低功耗、高精度、加密数据存储、便携式读写功能的超声波测距系统。超声波测距系统框图如图1所示。
2.1 超声波测距系统硬件设计
结合应用要求,根据超声波测距原理,以ATMEG8单片机为核心,利用专用时间数字转换芯片TDC—GP21为测量环节,设计制作超声波测距电路。
控制芯片选用ATMECA8。ATMEGA8是一款采用低功耗CMOS工艺生产的基于AVR R ISC结构的8位单片机,自带SPI接口,可以达到接近1 MIPS/M的性能,运行速度比普通CISC单片机高出10倍。
超声波测量部分由TDC—GP21、超声波探头、发射控制电路、温度传感器、超声波信号处理电路等组成。TDC—GP21是一种高精度时间数字转换芯片,是精密计时系统的核心器件。TDC—GP21内部主要由脉冲发生器、数据处理单元ALU、时间数字转换器单元TDC、温度测量单元、时钟控制单元、配置寄存器以及与单片机相接的SPI接口组成。计时芯片配置电路如图2所示。
温度测量选用Dallas公司的DS18B20数字式温度传感器,它通过输出9位二进制数字来直接表示所测量的温度值,温度值是通过DS18B20的数据总线直接输入CPU,无需A/D转换,而且读写指令和温度转换指令都是通过数据总线传入DS18B20,无需外部电源。
在超声波测距系统中,ATMEGA8单片机为核心控制器件,控制对超声波的采样、数据处理、存储、显示及通信等。ATMEGA8单片机通过自带SPI接口对TDC—GP21芯片进行控制,完成对TDC-GP21芯片功能配置选择。在配置完成后,TDC-CP21芯片能产生一组频率为1 MHz的超声波,1 MHz超声波送到超声波换能器驱动探头。接收探头收到的回波经过开关电路,进入超声波调理电路进行信号的处理,该测量回波返回到TDC-GP21芯片,TDC—GP21芯片判断接收到回波后结束测量,同时通过中断通知ATMEA8单片机,ATMECA8单片机读取测时时间。ATMEGA8单片机读取TDC-GP21芯片测时数据后,通过1-wire总线控制DS18B20测量当前温度,引入温度校正功能对单片机计算得到的距离进行修正,得到最终测量结果并通过LCM141液晶显示,同时对最终结果保存,液晶显示数据可通过键盘电路进行选择。
2.2 超声波测距系统软件设计
整个超声波测距系统工作模式的选择、数据的传输,以及计算都是由单片机内部程序完成的。
系统软件设计的核心工作是对TDC-GP21芯片进行控制。软件编程的操作主要有两个步骤,分别是写寄存器的配置和初始化,以确定TDC—GP21的工作模式和寄存器的读取工作。首先对TDC-GP21进行寄存器配置,设置测量范围和每个通道的采样次数,定义ALU的汁算方法;然后初始化TDC—GP21、选通START和STOP通道,TDC-GP21进入测量状态,等待START和STOP信号;接收指令后进行测量,测量完成后单片机读取TDC —GP21测量数据。为了保证测量数据的准确性,每次进行测量前,都需要对TDC-GP21进行初始化。超声波测距系统程序流程如图3所示。
3 实验结果分析
为保证测量结果的稳定性,在测试时采用光滑硬质表面作为反射面,测量结果如表1所示。
4 结束语
经测试系统在实际实验中测距准确。ATMEGA8单片机的低功耗、高运算速度和专用TDC—GP21高精度计时芯片相结合,使系统功耗和体积都有所降低,整个系统电路结构简单、精度高、软件的升级和更新方便,满足了现场高精度的测量要求。