基于单片机的超声波测距系统设计文献综述
2020-04-10 14:40:20
超声波测距在如今的生活中应用的越来越广泛,主要还是应用于倒车提醒、建筑工地、工业现场的距离测量。由于现在的技术原因及现场的条件限制(温度等),测量距离可以达到数百米,精度可以达到厘米量级。
由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在移动机器人的研制上也得到了广泛的应用。为了使移动机器人能自动避障行走,就必须装备测距系统,以使其及时获取距障碍物的距离信息(距离和方向)。超声波测距系统,就是为机器人了解其前方、左侧和右侧的环境而提供一个运动距离信息。为了研究和利用超声波,人们已经设计和制成了许多超声波发生器。
在如今的汽车种类和市场发展迅速的时代,超声波测距的技术也会被广泛应用。汽车驾驶员在越发拥堵的交通环境下,会更加小心谨慎,倒车时在有了测距技术的帮助下,发生事故的概率会小很多。
利用超声波检测往往比较迅速、方便,计算简单,已做到实时控制,并且在测量精度方面能达到工业实用要求,测量时与被测物体无直接接触等,这些优点使其广泛应用于倒车雷达、建筑施工工地以及一些工业现场,例如液位测量、精深测量等场合。目前国内一般实用专用集成电路设计超声波测距器,但是成本高,没有显示,操作不便,操作使用不方便,创展不灵活。基于单片机的超声波测距易克服了上述缺点,应用非常广泛。
超声波测距仪主要以单片机AT89C51为核心,其发射器是利用压电晶体的谐振带动周围空气振动来工作的。超声波发射器向某一方向发射超声波,在发射的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器接收到反射波就立即停止计时。一般情况下,超声波在空气中的传播速度为340m/ s,根据计时器记录的时间t ,就可以计算出发射点距障碍物的距离S,即S=340#215;t/2,这就是常用的时差法测距。 在测距计数电路设计中,采用了相关计数法,其主要原理是:测量时单片机系统先给发射电路提供脉冲信号,单片机计数器处于等待状态,不计数;当信号发射一段时间后,由单片机发出信号使系统关闭发射信号,计数器开始计数,实现起始时的同步;当接收信号的最后一个脉冲到来后,计数器停止计数。
由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量。利用超声波检测距离,设计比较方便,计算处理也较简单,并且在测量精度方面也能达到农业生产等自动化的使用要求。
超声波测距仪的软件设计主要由主程序、超声波发生子程序、超声波接收中断程序及显示子程序组成。我们知道C语言程序有利于实现较复杂的算法,汇编语言程序则具有较高的效率且容易精细计算程序运行的时间,而超声波测距仪的程序既有较复杂的计算(计算距离时),又要求精细计算程序运行时间(超声波测距时),所以控制程序可采用C语言和汇编语言混合编程。
超声波测距的原理为超声波发生器T在某一时刻发出一个超声波信号,当这个超声波遇到被测物体后反射回来,就被超声波接收器R所接收到。这样只要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生器与反射物体的距离。距离的计算公为:d=s/2=(c#215;t)/2 其中,d为被测物与测距仪的距离,s为声波的来回的路程,c为声速,t为声波来回所用的时间。在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波时,接收电路输出端产生一个负跳变,在INT0或INT1端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离。
软件分为两部分,主程序和中断服务程序。主程序完成初始化工作、各路超声波发射和接收顺序的控制。定时中断服务子程序完成三个方向超声波的轮流发射,外部中断服务子程序主要完成时间值的读取、距离计算、结果的输出等工作。