超声波定位器的设计.docx
- 文档编号:23479725
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:42
- 大小:186.01KB
超声波定位器的设计.docx
《超声波定位器的设计.docx》由会员分享,可在线阅读,更多相关《超声波定位器的设计.docx(42页珍藏版)》请在冰豆网上搜索。
超声波定位器的设计
超声波定位器的设计
内容摘要:
超声波是一种声波,它的传播速度和环境温度有密切关系,所以温度变化时,声速也变化,导致测量不准确。
为提高测量的准确性。
必须采用温度补偿。
传统的温度补偿方法,如热敏电阻、铂电阻、热电偶以及集成温度传感器补偿,其硬件电路复杂,而且传统温度传感器大都输出的是模拟信号(电压或电流),不能直接送入单片机等处理器进行处理,这样就需要经过采样保持、A/D转换然后再与单片机相连,经过数据处理得出温度,这样设计的硬件电路复杂,成本也高。
本文介绍一种基于AT89C51单片机的超声波定位器的硬件及软件的设计。
本设计利用DS18B20数字温度传感器进行超声波测距中的温度补偿,该型温度传感器准确性高,并且简洁、实用,提高了测量的准确性。
由于超声波在空气传播的速度与环境温度的关系密切,因此在测量距离过程中采用了温度补偿法,即用DS18B20数字温度传感器测量环境温度,根据超声波速度与温度的关系对声速进行修正,以提高测量的准确性。
在设计中,为每个功能模块提供选择方案,对各方案进行横向对比,比较各自优劣点,选出较好的方案,以使本设计达到较好的结果。
文中给出了个功能模块的软件实现。
另外,本设计具有RS-232接口和扩展连接接口,可与上位机通信,上位机可通过本定位器对电机进行驱动,实现机械定位控制。
试验结果表明,本设计工作稳定,性能良好,能够满足设计要求,并且较之以往的测量方案有许多优点。
关键字:
超声波定位器温度补偿AT89C2051
Thedesignofanultrasonicposition
Abstract:
ThedesignofanultrasonicpositionfixeddevicebasedonAT89c51microcontrolunitisintroducedinthisthesisindetail.Themethodoftrianglepositionfixedisappliedtothisdevice.Thepointofultrasonictransmitterandthepointsoftwoultrasonicreceiverscomposedoftheacmesofatriangle.Twoultrasonictransmitspanbetweenthepointsofthetransmitterandtworeceiverscanbemeasuredbymicrocontrolunitandthetimespansareconvertedtodistances,accordingly,accurateultrasonicpositionfixedisachieved.Duetoclosedrelationbetweenthevelocityofultrasonicwaveandtemperature,forthisreason,themethodoftemperatureoffsetisadoptedinthisdesign.ThetemperatureismeasuredwithdigitaltemperaturesensorDS18B20,andthevelocityofultrasonicisamendedbymicrocontrolunitonthebasicoftherelationbetweenthevelocityofultrasonicwaveandtemperature.Sotheaccuracyofmeasurementisenhanced.Inthisdesign,variousselectiveschemesareofferedforeachfunctionmoduleandtheseschemesarecontrastedhorizontally,andmakesureagoodresultisattainedofthisdesign.
Keyword:
superwaveultrasonicpositionfixeddevicetemperatureoffset
MCUAT89c51
一、绪论
(一)超声波测距原理
超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t,然后求出距离S=Ct/2,式中的C为超声波波速。
由于超声波也是一种声波,其声速C与温度有关,在使用时,如果温度变化不大,则可认为声速是基本不变的。
如果测距精度要求很高,则应通过温度补偿的方法加以校正。
声速确定后,只要测得超声波往返的时间,即可求得距离。
这就是超声波测距仪的机理。
如图1所示:
图1超声波测速原理示意图
(二)超声波特性
超声波是一种人耳无法听到的、频率一般超过20KHZ的声音。
超声波的基本特性如下所述:
波长与辐射波的传播速度是用频率乘以波长来表示。
电磁波的传播速度是3×10^8/s,而声波在空气中的传播速度很慢,约为344m/s(20℃时)。
在这种比较低的传播速度下,波长很短,就意味着可以获得较高的距离和方向分辨北率。
正是由于这种较高的分辨率特性,才使我们有可能在进行测量时获得很高的精确度。
超声波设备的外表面尺寸易于获得精确的辐射。
反射要探测某个物体是否存在,超声波就能够在该物体上得到反射。
由于金属、木材、混泥土、玻璃、橡胶和纸等可以反射近乎100%的超声波,因此我们可以很容易地发现这些物体。
由于布、棉花、绒毛等可以吸收超声波,因此很难利用超声波探测到它们。
同时,由于不规则反射,通常可能很难探测到表面振动幅度很大的物体。
温度效应声波传播的速度”c”可以用下列公式表示。
c=331.5+0.607t(m/s)式中,t=温度,也就是说,声音传播速度随周围温度的变化而有所不同。
因此,要精确的测量与某个物体之间的距离时,始终检查周围温度是十分必要的。
衰减传播到空气中的超声波强度随距离的变化成比例地减弱,这是因为衍射现象所导致的在球形表面上的扩散损失,也是因为介质吸收能量产生的吸收损失。
如图2所示,超声波的频率越高,衰减率就越高,波的传播距离也就越短。
图2声压在不同距离上的衰减特性
(三)AT89C2051的功能特点
AT89C2051是一个2k字节可编程EPROM的高性能微控制器。
它与工业标准MCS-51的指令和引脚兼容,因而是一种功能强大的微控制器,它对很多嵌入式控制应用提供了一个高度灵活有效的解决方案。
AT89C2051有以下特点:
2k字节EPROM、128字节RAM、15根I/O线、2个16位定时/计数器、5个向量二级中断结构、1个全双向的串行口、并且内含精密模拟比较器和片内振荡器,具有4.25V至5.5V的电压工作范围和12MHz/24MHz工作频率,同时还具有加密阵列的二级程序存储器加锁、掉电和时钟电路等。
此外,AT89C2051还支持二种软件可选的电源节电方式。
空闲时,CPU停止,而让RAM、定时/计数器、串行口和中断系统继续工作。
可掉电保存RAM的内容,但可使振荡器停振以禁止芯片所有的其它功能直到下一次硬件复位。
AT89C2051有2个16位计时/计数器寄存器Timer0tTimer1。
作为一个定时器,每个机器周期寄存器增加1,这样寄存器即可计数机器周期。
因为一个机器周期有12个振荡器周期,所以计数率是振荡器频率的1/12。
作为一个计数器,该寄存器在相应的外部输入脚P3.4/T0和P3.5/T1上出现从1至0的变化时增1。
由于需要二个机器周期来辨认一次1到0的变化,所以最大的计数率是振荡器频率的1/24,可以对外部的输入端P3.2/INT0和P3.3/INT1编程,便于测量脉冲宽度的门。
二、系统总体设计
(一)设计原理及设计方案
图3设计原理图
(二)单元电路设计方案论证与论证
1.主控制器方案论证确定
方案一:
采用PIC16F877控制外围元件及对超声波距离的计算,PIC16877内部模块多,功能强大,易于外围设计,是一般小中型控制芯片的理想选择。
方案二:
采用PIC16F877的兄弟模块PIC16F873来进行控制,既然是兄弟模块,在功能上基本上相同,唯一欠缺的是外围端口相对较少。
方案三:
采用AT89C51可编程EPROM的高性能微控制器。
它与工业标准MCS-51的指令和引脚兼容,因而是一种功能强大的微控制器,它对很多嵌入式控制应用提供了一个高度灵活有效的解决方案。
适用于本方案。
2.超声波发射电路方案论证确定
方案1:
电路中晶体管Q1、Q2组成强反馈稳频振荡器,振荡频率等于超声波换能器T40的共振频率。
T40是反馈耦合元件,对于电路来说又是输出换能器。
T40两端的振荡波形近似于方波,电压振幅接近电源电压。
S是电源开关,按一下S,便能驱动T40发射出一串
超声波信号。
电路工作电压
,工作电流约
。
发射超声波信号大于
。
电路不需调试即可工作。
不采用此方案。
图440KHz超声波发动和电路一
方案2:
超声波发射电路原理图如图5所示。
发射电路主要由反向器74LS04和超声波发射换能器T40构成,单片机P1.5端口输出的
方波信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极。
用这种推挽形式将方波信号加到超声波换能器两端,可以提高超声波的发射强度。
输出端采用两个反向器并联,用以提高驱动能力。
上拉电阻R1、R2。
一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声换能器的阻尼效果,缩短其自由振荡的时间。
这种方法的特点是分利用软件,声波的发射强度。
输出端采用两个反向器并联,用以提高驱动能力。
上拉电阻R1、R2。
一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声换能器的阻尼效果,缩短其自由振荡的时间。
这种方法的特点是分利用软件,声波的发射强度。
输出端采用两个反向器并联,用以提高驱动能力。
上拉电阻R1、声波的发射强度。
输出端采用两个反向器并联,用以提高驱动能力。
上拉电阻R1、R2。
一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声换能器的阻尼效果,缩短其自由振荡的时间。
这种方法的特点是分利用软件,灵活性好,但需要设计一个驱动电流为100mA以上的驱动电路。
不采用此方案。
图540KHz超声波发动和电路二
方案3 :
由NE555时基电路及外围元件构成40kHZ多谐振荡器电路,调节电阻器RP阻值,可以改变振荡频率。
由NE555第3脚输出端驱动超声波换能器US_T使之发射出超声波信号。
电路简单易制。
电路工作电压9V,工作电流40~50mA。
发射超声波信号大于8m。
图640KHz超声波发动和电路三
3.超声波接收及信号处理电路方案论证确定
方案1:
超声波接收器包括超声波接收探头、信号放大电路及波形变换电路三部分。
超声波探头必须采用与发射探头对应的型号,主要是频率要一致,这里采用CSB40R,否则因无法产生共振而影响接收效果、甚至无法接收。
由于经探头变换后的正弦波电信号非常弱,因此必须经放大电路放大。
正弦波信号不能直接被单片机接收,因此必须进行波形变换。
按照前文所讨论的原理,单片机需要的只是第1个回波的时刻,因此可采用比较电路将正弦波转换为脉冲方波,由软件查询得到第1个回波前沿时刻。
如图7所示。
超声波在空气中传播时,其能量的衰减程度与距离成正比,即距离越近、信号越强,距离越远、信号越弱,通常在
之间。
当然,不同的接收探头的输出信号强度存在差异。
由于输入信号的范围较大,对放大电路的增益提出了两个要求:
(1)放大增益要大,以适应小信号时的需要;
(2)放大增益要能变化,以适应信号变化范围大的需要。
另外,由于输入信号为正弦波,因此必须将放大电路设计成交流放大电路。
为减少负电源的使用,放大电路采用单电源供电,信号放大和变换采用了一片LM324通用运算放大器,前三级为放大器设计,后一级为比较器设计。
LM324既可以双电源工作,也可以单电源工作,因此能满足使用要求。
也可以选用其他运算放大器,但必须注意其能否单电源工作,因为不是所有运算放大器都能单电源使用的。
也可以选用其他运算放大器,但必须注意其能否单电源工作,因为不是所有运算放大器都能单电源使用的。
为满足交流信号的需要,每~级放大器均采用阻容电路进行电平偏移,即图5。
中的C2、C5和C6,容量均为10µF,实现单电源条件下交流信号的放大。
前两级放大电路的放大增益均为10。
距离较近时,两级放大时的增益已能输出足够强度的信号了,第三级看可能出现信号饱和,但距离较远时,必须采用三级放大。
为提高适应能力,可在图的基础上,增设增益选择电路。
由软件自动完成增益切换,切换的原理是先进行大增益搜索回波,一旦发现回波而后续无回波的情况,说明增益过大,必须减少一级增益。
当然,软件设计的难度会大大增加,而且这种软件自适应增益法只能适用于静态测量,在动态条件下,会导致距离测量误差增大。
其原因是第1回波不可能作为距离计算依据,采用的可能是第2或第3回波的前沿信号,存在时差问题。
合理调节电位器R9,选择比较基准电压,可使测量更加准确和稳定。
实践证明,比较器参考电压的选取非常关键,它与测量灵敏度、系统鲁棒性都有关联。
选小可提高测量灵敏度,但鲁棒性下降,容易出现虚假回波被捕捉的情况,选大则情况相反。
显然,按照图7中的设计,当没有回波信号或回波信号很弱(即超出测量范围)时,比较器输出INTO为高。
此方案调试及控制较复杂,不予采用。
图7超声波接收及信号处理电路
方案2:
采用集成电路CX20106A构成超声波接收电路,如图8。
集成电路CX20106A是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。
CX20106A内部电路由前置放大器、自动偏置电平控制电路(ABLC)、限幅放大器、带通滤波器、峰值检波器及波形整形电路组成。
考虑到红外遥控常用的载波频率38kHz与测距的超声波频率40kHz较为接近,可以利用它制作超声波检测接收电路。
此电路外围元件较少,灵敏度可靠性较高,故选择此方案。
图8CX20106A
4.温度补偿
超声波是一种声波,它的传播速度受空气密度的影响,密度越大,传播速度就越快,而空气密度和环境温度有密切关系,所以温度变化时,声速也变化,导致测量不准确。
例如,超声波传播速度在0℃时为
,25℃时为
。
超声波传播速和环境温度有如下近似关系:
(1-1)
当温度为20℃时,
,当温度为30℃时,
,声速变化为
。
设超声波传播距离为
,若在30℃时,以20℃的超声波速度进行测量,误差将达到
。
可见要实现高精度测量,必须对声速进行温度补偿
。
温度补偿通常有以下两种修正法:
补偿方法l:
每次计算当时声速
,然后再按照式(1-1)计算距离。
其特点是:
根据当时的温度得到当时的精确声速,从而计算得到的距离值也比较精确;但程序中牵涉到浮点数运算,对于单片机系统实现,难度相对较大。
补偿方法2
:
根据当前的环境温度,查取特征温度值——声速表中最接近温度对应的声速值,作为当前声速,然后按照式(1-1)进行距离计算。
其特点是:
避免了复杂的声速计算,可采用事先计算得到温度--声速二维表,将之固化到系统程序中,然后直接使用查表法得到声速值,程序实现比较简单,但精度没有方法1高。
温度补偿是在求取声速过程中的一个必要环节。
采用查表法进行温度补偿,其主要目的是为了避开复杂的浮点数运算及浮点结果中各字节的提取操作。
这样,既保证了一定的精度要求,又可以避免浮点运算,在基于单片机的系统中通常可将浮点运算改为定点运算。
查表法的前提是,必须事先得到温度与声速的二维关系表,表格的密度可根据精度的需要和单片机资源的分配来决定。
由于表格中的典型温度点有限而且是离散分布的,为提高精度可以采取小区间插值计算法。
例如,测得温度为23,而表格中与之最接近的特征温度点为20和30,对应的声速分别为344和349,即温度变化10,声速变化5,也即每2℃度声速增加1,于是进行最简便的线性插补得到声速为345。
表格可按照式(1-1)计算得到,见表1。
表1温度与声速的二维关系表
温度(℃)
声速(m/s)
折合后的声速
-30
313
3130
-20
319
3190
-10
325
3250
0
332
3320
10
338
3380
20
344
3440
30
349
3490
40
355
3550
50
361
3610
计算得到的温度进行取整处理,然后判断所在区间,进行插值计算,为距离计算方便起见,在表格中的声速值乘以机器周期
再乘以1000得到折合后的声速值。
因为机器周期为常数,因此将乘法运算直接设计在表格中,避免了程序中的乘法运算。
这里乘以1000是从精度和计算复杂性两者结合起来考虑,既保证2位精度,同时又能进行2字节与2字节的乘法运算。
这样,虽然引入了一定的误差,但大大简化了程序的复杂程度,不失为一种解决此类问题的有效途径。
测温补偿电路方案论证确定
常用的测温补偿方法有:
热敏电阻、铂电阻、热电偶以及集成温度传感器(如AD590)补偿。
使用传统温度传感器,硬件电路复杂,而且传统温度传感器大都输出的是模拟信号(电压或电流),不能直接送入单片机等单片机进行处理,这样就需要经过采样保持、A/D转换然后再与单片机相连,经过数据处理得出温度,这样设计的硬件电路复杂,成本也高。
本设计中不采用以上方法。
本设计中的温度传感器采用了DALLAS半导体器件公司生产的可编程一线数字温度传感器芯片DS18B20,其采用了1-wire技术,其实物图如图9所示。
图9DS18B20
目前常用的微机与外设之间进行数据传输的串行总线主要有:
总线、SPI总线等。
其中
总线以同步串行2线方式进行通信(一条时钟线、一条数据线),SPI总线则以同步串行2线方式进行通信(一条时钟线、一条输入线和一条输出线)。
DALLAS半导体公司推出一项特有的1-wire技术,该技术与上述总线不同,它采用单根信号线,即能传输时钟,又能传输数据,;而且数据传输是双向的,因而这种单总线技术具有线路简单,硬件开销少,成本低廉,便于总线扩展和维护等优点。
DS18B20全部传感元件及转换电路集成在一只形如三极管的集成电路内。
它具有微型化、低功耗,直接将测得的结果以串行数字信号输出,仅用一线就可完成与单片机的硬件接口,具有使用简单方便、分辨率高的优点。
DS18B20的硬件接线非常简单,只需占用一个普通I/O线,具体电路如图10所示。
DS18B20的特性总结如下:
(1)独特的单线接口方式。
DS18B20在与处理器连接时,仅需要一个I/O口即可实现单片机同DSl8B20的双向通讯;
(2)DS18B20支持组网功能,多个DS18B20可以并联在一根线上,实现多点测温;
(3)DS18B20的测温范围为:
-55℃~+125℃,在-10℃~+85℃时,其精度为+0.5℃;
(4)DS18B20的测温结果的数字量位数从9位--12位,可编程进行选择。
图10DS18B20
本设计采用了DALLAS半导体器件公司生产的可编程一线数字温度传感器芯片DS18B20,如图10,其采用了1-wire技术。
目前常用的微机与外设之间进行数据传输的串行总线主要有:
总线、SPI总线等。
其中
总线以同步串行2线方式进行通信(一条时钟线、一条数据线),SPI总线则以同步串行2线方式进行通信(一条时钟线、一条输入线和一条输出线)。
DALLAS半导体公司推出一项特有的1-wire技术,该技术与上述总线不同,它采用单根信号线,即能传输时钟,又能传输数据,;而且数据传输是双向的,因而这种单总线技术具有线路简单,硬件开销少,成本低廉,便于总线扩展和维护等优点。
DS18B20全部传感元件及转换电路集成在一只形如三极管的集成电路内。
它具有微型化、低功耗,直接将测得的结果以串行数字信号输出,仅用一线就可完成与单片机的硬件接口,具有使用简单方便、分辨率高的优点。
DS18B20的硬件接线非常简单,只需占用一个普通I/O线,具体电路如图2.2所示。
DS18B20的特性总结如下:
(1)独特的单线接口方式。
DS18B20在与处理器连接时,仅需要一个I/O口即可实现单片机同DSl8B20的双向通讯;
(2)DS18B20支持组网功能,多个DS18B20可以并联在一根线上,实现多点测温;
(3)DS18B20的测温范围为:
-55℃~+125℃,在-10℃~+85℃时,其精度为+0.5℃;
(4)DS18B20的测温结果的数字量位数从9位--12位,可编程进行选择。
5.显示电路方案论证确定
方案1:
使用四连数码管动态刷新现实。
如图11。
用按键切换显示温度值、距离值及位标。
此方案电路简单,但显示不直观。
方案2:
采用12232型液晶点阵字符模块显示。
12232型液晶点阵字符模块为
点阵,有点阵字符液晶显示器和专用的行、列驱动器,控制器及必要的连接件、结构件装配而成。
该型点阵字符模块为
工作电压,背光电压亦为
,与系统电源兼容。
图11四连数码管动态刷新电路
12232型液晶点阵字符模块体积小巧,可显示两行中文或西文。
因此,可同时显示当前温度值、距离值及位标。
故显示电路选择此方案。
6.RS-232通信接口电路方案论证确定
选用MAX232CPE集成电路构成RS-232接口电路。
如图12所示:
图12RS-232接口电路
7.三角形定位法
在某二维平面中,如果有两个定点,且这两个定点之间的距离已知,则惟一确定在该平面中以这两个定点为顶点的三角形的另一个顶点的位置(两定点所连线为平面某一边,三角形另一顶点在平面内)。
如图13所示:
A,B为两个定点,AB之间的距离已知为定值。
若可求出Distance_0及Distance_1的值,则可确定动点C的位置。
在本定位器中,C点位置为超声波发射端所在的位置,A,B两点处各安装一个超声波接收器。
直接测量出Distance_0及Distance_0的值,可定义C点坐标为:
(Distance0,Disance1),可得到超声波射端所在的位置。
图13三角形定位法示意图
8.系统电源电路
系统电源以
为主电源,通过三端稳压电路LM7809及LM7805得到系统需要的
和
电源。
超声波发射电路采用
供电,其余电路采用
供电。
电路如图14。
图14电源电路
四、软件设计
(一)超声波定位器的软件规划
超声波定位器的程序主要包含一下功能模块:
(1)DS18B20温度传感器接口模块,分为初始化子程序、写入子程序及读取子程序等部分;
(2)基于12232型液晶的显示模块,分为12232液晶初始化子程序、图像写入子程序、文本写入子程序及显示子程序等部分;
(3)温度补偿与距离计算模块,分为超声波发射控制子程序、接收处理子程序、温度补偿子程序及距离计算子程序等部分;
(4)三角形定位模块,分为距离比较子程序等部分;
(5)主模块,分为系统初始化子程序、按键处理子程序及各子程序的调度管等部分。
图15形象地描述了个模块功能及相互之间的关系。
图15各程序模块功能及相互关系
(二)DS18B20程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 超声波 定位器 设计