APP下载

基于单片机超声波测距系统的电路设计与实现

2015-03-27厦门惠尔洁卫浴科技有限公司郑翔骥

电子世界 2015年19期
关键词:子程序测距中断

厦门惠尔洁卫浴科技有限公司 杨 斌 郑翔骥

湄洲湾职业技术学院 佘明辉

引言

超声波具有较强指向性,能量损耗少,较远的传播距离,因此距离的测量通常用超声波来测量。易于实时控制、计算简便、使用方便迅速是超声波检测的特点,而且在测量精度上,超声波检测也能够达到工业设备控制的需求[1-4]。为了使测距系统及时获取距障碍物的距离信息(距离和方向),设计一种超声波测距器,能使被测量物在测量时没有直接接触,就能够直观地且稳定显现所测结果数据。广泛应用于汽车倒车、机器人、建筑业等位置的检测监控,还可以用在水位深度、管道长度的测量等场合[5-7]。

1 系统模型

系统框图如图1所示,系统主要由单片机控制器、超声波发射器、超声波接收器、LED显示器、电源电路等五大部分组成。单片机控制器(微处理器8051)先把P2.7口置0,启动超声波传感器发射超声波,同时启动内部定时器T0开始计数进行检查是否有声波返回,当发射出来的超声波信号遇到物体时信号立即反射回来,此时单片机控制器不停地计数扫描INT0引脚,当INT0接收到的超声波反射信号由高电平变为低电平,此时表明超声波信号已经返回,单片机控制器进入中断关闭定时器[1]。同时定时器中的数据经过换算就可得到超声波传感器所测得的有关数值,并通过单片机控制器处理送至LED显示器而显示出来。

图1 系统框图

2 系统硬件设计

采用超声波往返时间检测法是数字显示超声波测距系统的硬件设计指导思想,其原理为:假设传播介质为气体,从超声波发射器发出的超声波进行检测,就是超声波往返时间。即经气体介质的传播到接收器的时间[2]。从而可推算出声波传输的距离,即气体介质中的声速与往返时间的乘积。然而声波传输距离的一半才是真正所要测距离,设待测距离用L表示,为超声波的声速用V表示,往返时间T表示。则:

前方测距电路的输出端接至单片机控制器INT0端口,中断优先级最高。左、右测距电路的输出端接至单片机INT1端口,而左、右测距电路的输出是通过与门电路输出的,与门电路的输入端接到单片机P1.3口和P1.4口,中断优先级为先右后左,中断源的识别是由单片机控制器程序查询来处理[3]。

2.1 系统发射电路

系统发射电路实际上是用单片机控制器中的压控晶振控制产生波形为方波、频率为40KHz的超声波信号,然后该信再通过驱动放大后进行发射。而单片机控制器中传感器发射电压信号的大小主要取决于发射信号损失程度和接收器的灵敏度,其中信号损失包括往返传播、声波传输和声波反射以及环境噪声等损失。由于系统的电源容易对发射端产生干扰,会影响系统发射电路的正常工作,为此,可选择容量大小适当的滤波电容把相关的干扰信号消除掉。发射电路如图2所示。图中单片机P1.0口输出为单片机控制产生40KHz的方波信号,三极管8050构成放大器为驱动电路。驱动电路的作用是对方波信号进行放大。

图2 超声波发射电路

2.2 系统接收电路

系统接收电路的作用是对发射信号进行接收,并对有用的信号进行放大,同时对一些的噪声和干扰信号加以抑制,从而使该系统接收电路达到最大的信噪比,提高了系统的可靠性和稳定性。如图3超声波接收电路原理图。超声波接收传感器接收到超声波回波信号,该信号通过隔直电容进行滤波后,再经过一级放大器和二级放大器进行两级放大后,信号通过耦合电容送入单片机P0端口。在解码器的输出端有信号时将得到低电平进入单片机以产生中断用于计时。

图3 超声波接收电路原理图

当接收模块接收到发送模块发出的40KHZ超声波信号时候,便产生谐振,经过VT1和VT2组成直耦式放大电路放大后,经过C1后送入单片机口,给予中断。如图3所示由于在距离较远的情况下,声的回波很弱,因而转换为电信号的幅值也较小,因为本设计对超声波检测的距离要求太远,因此只需将这较为微弱的信号放大100倍左右。为此采用三级管两级放大,前级放大器放大50倍后再由后级放大器进行放大到要求的倍数即可。

2.3 集成锁相环路解码LM567连接电路图

集成锁相环路解码LM567连接电路图如图4所示。集成LM567为锁相环路解码,锁相环路利用相位同步的原理,使可变频率振荡器的频率锁定在基准频率上。解码器的输出频率为可变振荡器的频率,将可变频率振荡器的频率与晶体振荡器的基准频率一起,加到相位检波电路上进行鉴相,当可变频率振荡器发生频率漂移时,相应发生相位漂移,鉴相器便输出一个直流电压,再用此直流电压去控制可变振荡器,将其频率拉回到原始值,即把振荡器的频率锁定在基准频率上。解码器中心频率由电压控制振荡器确定。该压控振荡器中心频率大小由外接电阻R和电容C元件来独立设定。

图5 显示电路

图6 电源电路

图4 LM567外部连接图

锁相环的解码集成块LM567,其内部的压控振荡器的中心频f0,当环路锁定时,可变分频器的输出频率fN等于参考频率fR,而fR=f0/N,所以VCO输出频率f0与参考频率fR的关系是f0=NfR,则集成块LM567输出端8脚由高电平跳变为低电平,作为中断请求信号,送至单片机处理[4]。

2.4 显示电路

显示电路由单片机8051中的P1口、P2口、4位共阴LED显示器。如图5所示。

LED选用共阴极的四段译码管,并采用动态显示原理,即由低位到高位,一位一位显示。对于每一位显示器来说,每隔一段时间点亮一次。因此,控制显示器公共阴极电位的I/O口只需一个,现选用PB口(称为扫描口)、即用PB口输出位选码[5]。位选码中为0的位是被选中的显示位。4位二进制代码中,每次只有一位为0的被选位。此外,控制各位显示器所显示的字形也需一个I/O口,现选用PA口。PA口的输出与LED相连,完成“段选”功能[6]。

2.5 电源电路设计

整个系统需要+5V的电源供电,由交流电220V经过变压器变压变为交流电15V,然后通过桥式整流电路后变成脉动的直流电,再经过和滤波电路进行滤波后得到较平稳的直流电信号,最后将较平稳的直流电信号经过一个稳压管7805组成三端稳压电路进行稳压后得到一个稳定的直流电5V。本电源电路设计就是采用直流稳压电源提供,电源电路如图6所示。

3 软件设计

软件设计主要分为两部分分别是主程序和中断服务程序。以下是超声波测距离的程序流程框图,主程序流程图如图7所示,中断服务程序流程图如图8所示。

图7 主程序流程图

图8 中断服务程序流程图

如图7主程序流程图主要是完成单片机初始化工作、定时中断服务子程序和外部中断服务子程序的控制。主程序处于键控循环工作方式,当按下测量键时,单片机进入初始化工作,然后转入定时中断服务子程序,此时主程序开始调用发射子程序进行超声波发射。之后查询接收子程序判断是否有回波,若有,则进入外部子程序工作,若无,则进入定时子程序。如图8中断服务程序流程图主要是外部子程序、定时子程序的工作。其中,定时中断服务子程序主要完成轮流发射三方向超声波的控制和关断发射等,外部中断服务子程序主要完成超声波信号的读取、计算以及结果输出等,并将测量结果用数码显示器上显示出来[7]。

4 结论

本系统硬件设汁采用模块化设计,由发射电路模块、接收电路模块、集成锁相环路解码模块、显示电路模块、电源电路模块等组成。并对系统接收的发射电路、接收电路、集成锁相环路解码电路、显示电路、电源电路等进行了较全面的分析论述。该系统软件设计主要由主程序和中断服务程序两部分组成。由于超声波测距系统是基于单片机设计的,故该系统具有硬件结构简单、电路工作可靠、测量误差小等优点。因此,本系统电路广泛应用于各种电子设备和检测系统中。

[1]牛余朋.基于单片机的高精度超声波测距电路[J].电子世界,2005.

[2]佘明辉.电子信息类专业毕业设计指导书[M].机械工业出版社,2012.

[3]陆军,米文龙,朱齐丹,王艳.超声波测距系统在移动机器人中的设计与应用[J].电子技术应用,2007.

[4]赵珂,向瑛,王忠,施琴红.高精度超声波测距仪的研制[J].电子技术应用,2003.

[5]李娣娜,刘丽丽,薛宁静,樊延虎. 一种新超声波测距系统的设计[J].延安大学学报(自然科学版),2008.

[6]赵海鸣,王纪婵,刘军,史春雪.一种高精度超声波测距系统的改进[J].电子技术应用,2007.

[7]张珂,刘钢海.提高超声波测距精度方法的研究[J].现代电子技术应用,2007.

猜你喜欢

子程序测距中断
类星体的精准测距
基于FPGA的中断控制器设计*
跟踪导练(二)(5)
千里移防,卫勤保障不中断
浅谈超声波测距
浅谈子程序在数控车编程中的应用
基于PSOC超声测距系统设计
子程序在数控车加工槽中的应用探索
相对差分单项测距△DOR
西门子840D系统JOG模式下PLC调用并执行NC程序