杨慧敏
(菏泽学院物理系 山东 菏泽 274015)
超声波测距在很多距离探测应用中具有重要的用途[1,2],特别是在空气测距方面的用于尤为突出。由于信息在空气中的传播速度较慢,其回拨信号中所包含的沿传播方向的信息很容易被检测出来,因而具有很高的分辨能力,而且其准确度也比其他方法高;此外,超声波传感器由于体积小、结构简单、信号处理可靠等特点受到了越来越广泛的应用。目前,基于超声波精确测距的需求也越来越大,如油库和水箱液面,机械内部损伤的检测和物体内气孔大小的检测等,都会用到超声波对其进行测试[3,4]。文章介绍了用AT89S52单片机设计实现超声波测距仪的原理和思路。
图1是系统设计的总体的结构框图,图2是系统设计的软件流程图。
图1 系统结构框图
图2 系统软件流程图
超声波传感器在40kHz时其声压能级、灵敏度最大,所以本设计所采用的超超声波传感器的频率为40kHz。本设计测量距离的方法为采用电平触发方式,其具体工作原理如下:工作时单片机输出口向超声波测距模块发射出脉宽至少为10us的高电平信号,以便使超声波发射模块发射超声波,同时由单片机中的定时器模块开始计时,超声波在空气中进行传播,当碰到目的障碍物时,超声波发生反射并由超声波接收模块接收回波,当有信号返回时,单片机通过输出口输出一高电平脉冲,高电平持续的时间就是超声波从发射到返回所用的时间[2]。假设超声波往返的时间为t,根据L=vt/2便可以计算出超声波收发器与障碍物之间的具体距离,这种方法就是通常所说的的时间差测距法。其中v为超声波的在空气中的传播速度,其具体值与环境温度有关,在测量精度要求比较高的场合中要考虑到温度的影响,可由软件进行相应的调整补偿;在测量精度要求不是很严格的情况下,可以忽略温度对测量的影响,认为v为常数,并取v=340m/s。由此可得:
式中TH0、TL0—计数器T0的计数开始和终点时间值。L为测距仪和障碍物之间的距离。
测距仪测量出的结果将以十进制形式传送到系统的显示模块中显示出来,然后再由测距仪发射超声波脉冲重复测量。
按照以上步骤完成超声波测距仪的安装和调试后,对所设计的具体的测距仪进行实际的数据测量。为了使测量结果可靠,并且考虑测量过程中存在着的许多外界因素的干扰,测量多次数据,并将数据整理如下。
表1 第一次测试数据
表2 第二次测试数据
表3 第三次测试数据
为了保证测量结果的准确性,对每一组数据进行3次测量,对所测的每组数据去掉一个最大值和最小值,然后再求其平均值,用来作为最终的测量结果数据,最后将结果进行比较分析,这样处理数据也具有一定的科学性和合理性。从表中的数据可以看出,测量结果一般都比实际值要大,总体上看测试结果的准确性还是比较高的,误差比较小。
超声波测距在很多距离探测应用中具有重要的用途,本系统介绍了AT89S52单片机设计实现便携式超声波测距仪的原理和思路,由于采用时间差法测距,系统在近距和远距都可以实现精确测量,所以系统的测量应用范围更广。
[1]沈红卫.基于单片机的智能系统的设计与实现[M].北京:电子工业出版社,2005:205-244.
[2]管连俊,李威.智能超声波测距传感器在测井仪中的应用[J].煤矿机电,2005(3):45-48.
[3]吴慎山,聂惠娟,吴东芳,付会凯.智能超声波测距系统的设计[J].河南师范大学学报:自然科学版,2007,35(2):86-88.
[4]刘成安,孙涛.智能超声波测距仪的研制[J].微计算机信息,2007,23(17):101-102,107.