APP下载

基于AT89C51单片机的超声波测距系统设计*

2015-07-12王香梅薛英龙

新技术新工艺 2015年5期
关键词:测距中断超声波

王香梅,薛英龙

(1.西安职业技术学院,陕西 西安 710032;2.西电三菱电机开关设备有限公司,陕西 西安710032)

基于AT89C51单片机的超声波测距系统设计*

王香梅1,薛英龙2

(1.西安职业技术学院,陕西 西安 710032;2.西电三菱电机开关设备有限公司,陕西 西安710032)

超声波测距在水库液位测量、汽车倒车、机器人定位及避障等方面应用十分广泛,其结构简单,成本低,不受色彩、电磁场和光照度等因素的影响。本文主要分析了超声波测距的原理,设计了以AT89C51单片机为核心的超声波测距系统,阐述了其实现过程,分析了回波检测对系统的影响。

超声波;测距;AT89C51单片机

1 超声波测距的原理

超声波测距可分为脉冲反射式和共振式2种,在实际应用中,一般采用脉冲反射式。采用超声波测距的原理是当超声波在空气中传播时,遇到障碍物会反射回来,从发出超声波时开始计时,到接收回波时计时停止,计时器记录的两者时间差就是传播时间的2倍,进而就可以算出待测距离[1]。常温下,空气中超声波的传播速度为C=340 m/s,发射点到障碍物的距离S可以以此为根据计算,即:S=Ct/2=Ct0,式中,t0是渡越时间(上游信号到下游信号的时间差)。

超声波测量系统主要包括隔离开关、发射电路、接收传感器、发射传感器、记录/控制设备和接收放大器。 在超声波测量系统中,如果频率太高,在传播过程中容易衰减,并且衰减的速度较快,如果频率太低,容易受到外界杂音的干扰;因此,测量频率通常选取为40 kHz。目前,超声波测量的距离较短,最长也就几十米,所以大多用于室内测量。因为超声波接收装置和发射装置具有电源频率本身所具有的频率特性,所以,其他电波频率不容易对其进行干扰。

超声波测距系统一般采用脉冲压力波,其频率范围较大,一般为25~300 kHz。发射传感器和接收传感器可共用一个,也可分开使用[2]。发射电路一般由功放电路和振荡电路2部分组成,其主要作用是向传感器输出高压脉冲串,输出的高压脉冲串具备一定的宽度,传感器将高压脉冲串转换成声能之后,才能将其发出。接收放大器将回声信号放大并记录,其应有足够的频带宽度,以接收具有一定频带宽度的短脉冲信号。收/发隔离的主要作用是隔离干扰信号,使其不能影响接收装置接收回波。记录/控制部分的主要作用是启动或关闭发射电路,换算时差,显示或记录距离读数[3]。

2 单片机超声波测距构想

基于单片机的超声波测距系统在设计过程中考虑的参数较多,本文从系统组件和整体结构角度来讨论其主要参数。

2.1 超声波测距系统的总体方案

系统整体结构如图1所示。

图1 超声波测距系统整体结构图

本系统选用的超声探头为超声波传感器,其频率为40 kHz。接收装置和发射装置不是同一个传感器,接收传感器 选择SZW-R40-10P,发射传感器选择SZW-S40-12M,其特性参数见表1。

表1 传感器特性参数

发射电路通常为非调谐式和调谐式。调谐元件不存在于非调谐电路中,所发射的超声波的频带较宽,由压电晶片的固有参数决定着发射频率的大小。为了使其振动发出超声,需要在发射传感器的两端施加一定幅度和频率的交流电压。调谐线圈主要存在于调谐式电路和探头2处,通常将其设置在调谐式电路中。调谐频率的大小由电路的电感和电容决定。

因为存在谐振频率,所以在选择电路频率时应考虑发射传感器40 kHz的固有频率。根据理论知识可知,回波功率越大,接收电路的设计就越容易。然而,发射传感器的工作电压值应在一定范围内,如果工作电压值超过最大值,就会对传感器的内部电路造成不能修复的严重损坏,使其不能正常工作。

发射电路中存在阻尼电阻,电阻小时,阻尼大,发射强度小,分辨能力强,适用于对分辨力有较高要求或者是探测近表面缺陷时使用;电阻大时,阻尼小,发射强度大,分辨能力弱,适宜于探测厚度大的试件时使用。

发射装置的点脉冲电压值较高,但回波使压电晶片产生的射频电压值只有几十mV,需对其进行放大处理,所以接收装置一定要设置放大电路。接收装置主要包括3种电路:三级放大电路、检测电路和门限判断电路。最终对回波信号进行放大,回波到达的标志是产生一个中断信号,并且这个中断信号能够被单片机识别;但由于超声波传感器存在盲区,不利于回波的处理和接收,对其产生了很大影响。

2.2 系统主要参数分析

2.2.1 传感器的指向角

传感器的指向角直接影响测量的分辨率,传感器的工作波长λ和其半径r直接影响圆片传感器的指向角的大小。根据:(2π/λ)rsin(θ/2)=1.615,当选择f0的值为40 kHz时,λ=C/f0=8.5 mm。当确定f0的值后,指向角θ的大小和传感器半径大小成反比。由于当前生产的压电传感片规格不全,所以在以不降低空间分辨率的前提下,为了降低成本,通常选择国产压电传感片,该压电传感片的规格为最大半径r=6.3 mm,因此,θ=2arcsin(1.615λ/ 2πr)=75°。

2.2.2 测距仪的工作频率

测距仪的工作频率决定了传感器的尺寸,并对超声波有显著的影响(如影响超声波扩散和超声波背景噪声等),还直接影响着空气中超声波的衰减系数;因此,应科学、合理地选择超声波频率,通常情况下,超声波频率选择约为40 kHz。如果频率太高,超声波将不能在空气中传播。

在确定测距仪的工作频率时,应从下述几方面进行考虑。

1)如果对测距仪的测距能力要求较高,声波在传播中的损耗也会相应增加,所以应采取相应的措施降低声波的传播损耗。因为声波频率越大,声波的吸收也越大,所以必须降低工作频率。

2)如果换能器的尺寸一样,则工作频率越高,越容易测量障碍物的复杂表面。此外,由于波长和尺寸分辨率成反比,所以,为了提高测量精度和清晰地测量障碍物的复杂表面,应提高工作频率。

3)因为工作频率和传感器的尺寸成反比关系,所以工作频率越大,传感器的尺寸越小,越容易安装和制造。

2.2.3 声速

声速的精确程度直接影响并决定着测距系统测量精度的大小。声波在介质中传播会受到很多因素的影响,比如温度、介质压力和杂质含量等,声速随着温度的变化公式为:

V=331.4+0.607T

(1)

式中,T是温度。

由于设计的测距系统用于室内测量,且测量范围并不大,温度可以看作是恒定的。在室温下,根据式1可以计算出声音在空气中的传播速度,计算结果为340 mm/ms。

2.2.4 发射脉冲宽度

发射脉冲宽度对测距系统的测量精度也有影响,容易使其存在测距盲区,此外,其也影响着发射信号的能量。发射脉冲宽度降低,测量精度较高,降低了发射能量,减少测量盲区,不利于回波接收;脉冲宽度过宽,测量盲区会有所增加,会对比较电路和接收回波产生一定的影响,造成一定的困难。分别选择24、240、120和720 μs的发射脉冲宽度作为发射信号后的接收信号进行比较,最终选定的发射脉冲宽度为120 μs。

2.2.5 测量盲区

如果选择传感器发射电脉冲的电压很高,在激励传感器的同时也进入接收部分。此时,在很短的时间内放大器的放大倍数将会减少,甚至放大效应消失,这种现象被称为阻塞。

对缺陷进行定量评价时,如果以阻塞区内的缺陷回波高度为依据进行,会降低辨别结果,有时甚至不能发现障碍物的存在。由于放大器存在阻塞问题,并且发射声脉冲本身存在一定的宽度,所以在靠近发射脉冲的短时间范围内存在盲区,不能发现缺陷。

3 超声波测距系统的实现

单片机程序的主体是主程序。主程序启动时,先完成单片机的初始化,然后对控制发射信号过程进行重复,每次发射周期结束时都会对信号的延时等待过程进行判断。主程序流程图如图2所示。

图2 主程序流程图

3.1 40 kHz 脉冲的产生与超声波发射

定时/计数器T0初始化完成之后才会产生脉冲,选定工作模式1定时器模式,设定TMOD为01H。然后使用指令STEB TR0对T0进行开启,与此同时发射超声波脉冲。超声波传感器选择压电陶瓷传感器UCM40,其工作电压的脉冲信号为40 kHz,单片机脉冲信号的产生根据下述程序进行。

PUZEL:MOV 14H, #12H ;超声波发射持续200 ms

HERE:CPL P1.0 ;超出40 kHz方波

NOP

NOP

NOP

DIZN 14H,HERE

RET

单片机P1.0端口和前方测距电路的输入端相连接,单片机启动脉冲信号产生程序后,P1.0 端口输出一个40 kHz的脉冲信号,通过三极管T进行放大,超声波发射头发射出40 kHz的脉冲超声波,发射时经UCM40T驱动,发射持续时间为200 ms。右侧测距电路的输入端接P1.1端口,左侧测距电路的输入端P1.2端口,和前方测距电路的工作原理相同。

3.2 超声波的接收与处理

超声波的接收判断依据是外部中断口INT0是否产生中断脉冲。定时子程序转回来时,要初始化中断程序。选定脉冲方式和INT0口进行中断。

STEB EA ;中断总允许

STEB EXO ;INTO中断允许

STEB PXO ;设置INTO为高优先级中断

STEB ITO ;设置INTO为脉冲方式

接收头选择UCM40R,和发射头相互配对,转换超声波调制脉冲,使其转变成交变电压信号,经运算放大器IC1B和IC1A两极放大后加至IC2。IC2选择音频译码集成块LM567,带有锁定环(电容C4决定其锁定带宽),内部的压控振荡器的中心频率f0=1/1.1R8C3。在发射的载频上调节R8,则LM567输入信号高于25 mV,输出端8脚跃变为低电平,作为中断请求信号,送至单片机处理。

单片机INT0端口接前方测距电路的输出端,中断优先级最高,左、右测距电路的输出和单片机INT1端口相接,通过与门IC3A的输出实现相接,IC3A的输入端和单片机P1.3和P1.4相接,程序查询来处理中断源的识别,中断优先级为先右后左。

部分源程序如下: RECEIVE:PUSE PSW

PUST ACC

CLR ACC

JNB P1.1,RIGHT;P1.1引脚为0,转至右测距电路中断服务程序

JNB P1.2,RIGHT;P1.2引脚为0,转至左测距电路中断服务程序

RETURN:SETB EX1;开外部中断 INT1

POP ACC

POP PSW

RET1

3.3 数据读取和储存

读出T0计数器的计数值,才能得到接收回波与发射信号的时间差,在RAM中存储,每次发射周期开始,需对计数器清零,进行后续处理。

3.4 计算超声波传播时间

T0中读取出来的时间差数据不能直接得到距离值,因为S=0.5VT。其中,V代表在常温下声音的传播速度;T代表信号发射和接收间的时间差,在这个部分中,包括距离值和计数值换算,信号处理二进制与十进制转换。

4 结语

本文设计的超声波测距系统以AT89C51单片机为核心,工作频率为40 kHz,可以应用在车辆的倒车检测中,使其成为车载超声测距仪。该系统的应用前景十分广泛。

[1] 朱月秀.单片机原理与应用[M].2版.北京:科学出版社,2004.

[2] 陈莹.基于单片机的超声波测距系统[D].武汉:华中科技大学,2004.

[3] 戴曰章.基于AT89C51单片机的超声波测距系统[J].电气时代,2005(7):130-131.

*西安职业技术学院教学改革基金资助项目(SGH0903114)

责任编辑马彤

TheUltrasonicRangingSystembasedonAT89C51isDesigned

WANG Xiangmei1,XUE Yinglong2

(Xi′an Vocational And Technical College,Xi′an 710032,China;2.XD Mitsubishi Electric Switchgear Co.,Ltd.,Xi′an 710032,China)

Ultrasonic ranging is widely used in the robot obstacle avoidance and positioning, car reversing, reservoir level measuremont and so on, because that it has simple structure, low cost, and can not been affected by light or electromagnetic field. This article obtains the cause of ultrasonic distance measurement error, and analyzes the effects of temperature on ultrasonic velocity, echo detection of time measurement and the influence of ultrasonic sensor on measuring accuracy and the applied voltage range.

ultrasonic,ranging,AT89C51

TP 306

:A

王香梅(1977-),女,讲师,主要从事电气工程及自动化等方面的研究。

2014-12-26

猜你喜欢

测距中断超声波
类星体的精准测距
基于FPGA的中断控制器设计*
Linux中断线程化分析及中断延时测试
蝙蝠的超声波
基于Niosll高精度超声波流量计的研究
跟踪导练(二)(5)
千里移防,卫勤保障不中断
浅谈超声波测距
蝙蝠的超声波
超声波流量计的研究