利用555电路产生延时,来模拟超声波传播的时间,从而达到测距的目的。以单片机AT89C51为控制器,利用软件方式增加环境温度及几何角度的补偿,从而提高测距精度。使用软件Proteus构建电路,实现对超声波测距系统的完全仿真。
首先,超声波测距有着广泛的应用,其有关的论文也很多,主要体现在硬件构建和编制程序方面,但在仿真研究上相对的不完整,特别是从开始发射波到接收波的这段时间,基本上没有得到仿真。其次,鉴于学生利用资源的经验很少,故在教学方面,特别要求在硬件制作之前有充分的仿真分析,从而很好地完成一次设计。最后,本研究涉及超声波测距的系统,利用555定时器以及简单的RC电路,重点实现超声波发射与接收之间的时间计算与仿真。
1 超声波测距原理
超声波传感器发射一定频率的超声波,借助空气媒质传播,到达测量目标或障碍物后反射回来,经反射后由超声波接收器接收脉冲,其所经历的时间即往返时间,与超声波传播的路程的远近有关。假定s为被测物体到测距仪之间的距离,测得的时间为t(s),超声波传播速度为c(m/s),则有关系式:
(1)
超声波声速c与空气温度有关,一般温度每升高1摄氏度,声速增加0.6米/秒。为提高测量精度,可在硬件电路基本不变的情况下通过软件改进算法的方法加以校正。在本系统中利用AT89C51中的定时器测量超声波传播时间,利用数字温度计DS18B20测量环境温度。空气中声速与温度的关系:
(2)
式中,T为实际温度,单位为℃
声速确定后,只要测得超声波往返的时间,即可求得距离:
(3)
设发射器与接收器之间的中心距离为2h,为了进一步提高测量精度,本设计将根据需要利用软件方式增加角度补偿,得校正关系式(4):
(4)
2 超声波仿真电路原理
通过对超声波测距原理的分析可知,测距采用了超声波往返时间检测法,其往返时间(延时)可利用集成时基电路来实现。
当有来自单片机的引脚P2.4一个负脉冲触发信号加到2端时,并使2端电位瞬时低于1/3VCC,输出端为高电平,电路开始一个暂态过程,电容C开始充电,电容电压按指数规律增长。当电容电压充电到2/3Vcc时,输出为低电平,电容C上电荷很快放电,暂态结束,电路恢复稳态。暂稳态的持续时间tw决定于外接元件R、C值的大小,即:
tw=1.1RC (5)
另外,因为单片机的引脚P1.0接收低电平时有效,因此在延时电路输出端再串接一个74LS04与非门,这样在P1.0端就相应地得到一个延时了的正脉冲触发信号,延时电路输入输出波形。
3 超声波测距系统仿真电路
本系统由AT89C51控制器、超声波延时电路、温度测量电路、按键及提示电路和液晶显示器LCD显示电路组成,使用单片机仿真软件Proteus,利用按钮“开始”和“停止”模拟系统电源的开关,其电路见图3。
图3 超声波测距系统设计电路仿真图
图中RP1为上拉电阻。现将编制好的程序植入单片机AT89C51,开始仿真,启动测距按键,超声波延时电路和温度测量电路工作,经过AT89C51数据处理将温度和距离显示到LCD上,提示灯熄灭,如果距离小于设定值110mm,提示灯闪烁。
4 仿真分析
通过计算式(3)~(5),令h=0,得
(6)通过改变变阻器RV1的值来改变超声波发射与接收之间的延时,通过改变数字温度计DS18B20的设定值来模拟环境温度的改变。现将计算值和仿真值。
随着电阻值的增加,延时加长,测距将会增加;当环境温度升高10℃,声速增加,相应测距略有增加;仿真值与计算值存在粗大误差和累积误差。
其中粗大误差来自测量中的盲区,即延时避开直达信号,软件设置为650μs,超声波在这段时间能够传播的距离称为盲区;累积误差主要为元器件自身的时延加长了,误差值将随之增加。
至此,超声波测距系统仿真完全实现。本系统易于产品化、具有较强的实用价值,可用于距离探测和方位探测,如液面、井深测量,方位入侵报警、汽车防撞及倒车雷达等。后期可增加串口通讯模块,直接将测距结果通过串口发送到上位机,从而实现更宽广的数据存储和更加灵活的数据操作。
詹庄春(作者单位:华南农业大学珠江学院)
……
关注读览天下微信,
100万篇深度好文,
等你来看……