基于μC/OS-Ⅱ和ARM处理器的高精度超声波测距系统设计
扫描二维码
随时随地手机看文章
1 引言
超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而用于距离测量。利用超声波检测往往较迅速、方便、计算简单、易于实时控制,且测量精度能达到工业实用要求,因此在移动机器人的研制中得到广泛应用。移动机器人要在未知和不确定环境下运行,必须具备自动导航和避障功能。超声波传感器以其信息处理简单、速度快和价格低的特点广泛用作移动机器人的测距传感器,实现避障、定位、环境建模和导航等功能。
2 系统总体设计方案
2.1 超声波测距原理
2.1.1 超声波发生器
超声波为直线传播方式,频率高,反射能力强。空气中其传播速度为340 m/s,容易控制,受环境影响小。因此采用超生波传感器作为距离探测的“眼睛”,可用于测距领域的超声波频率为20~400 kHz的频段,空气介质中常用为40 kHz。
2.1.2 压电式超声波发生器原理
压电式超声波发生器实际上利用压电晶体的谐振工作。超声波发生器内部结构有2个压电晶片和1个共振板。当它的两电极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将发生共振,并带动共振板振动,产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电品片振动,将机械能转换为电信号,这时就成为超声波接收器。
2.1.3 超声波测距原理
超声波发射器向某一方向发射超声波,在发射的同时开始计时,超声波在空气中传播,碰到障碍物就立即返回。超声波接收器收到反射波立即停止计时,超声波在空气中的传播速度为340 m/s。系统中,超声波测距采用检测超声波往返时间的方法。由于时间长度与声音通过的距离成正比,当超声波发射极发出一个短暂的脉冲波时,计时开始;当超声波接收端接收到第1个返回波脉冲后,计时立即停止。根据计时器记录的时间t,可计算发射点距障碍物的距离(s),即:s=340t/2。这就是所谓的时间差测距法。
2.2 系统总体设计
该系统采用μC/OS-lI操作系统,系统将软件划分为4个功能模块:回波A/D采集模块, LED显示和按键处理模块,LCD显示模块,报警、存储及串口处理模块。其中,回波A/D采集模块用于采样,保存实时数据;LED显示和按键处理模块用于处理采样数据,并将其转换成有实际意义的参数:LCD显示模块是将各种参数在LED显示;而报警、存储及串口处理模块主要是实时处理相应数据。图1为系统设计总体框图。
3 系统硬件设计
3.1 LPC2138微控制器简介
LPC2138内嵌512 KB的高速Flash存储器和32 KB的RAM,具有丰富的外设资源:2个32位定时器(带捕获、比较通道),2个10位8路A/D转换器,1个10位D/A转换器,PWM通道,47路 GPIO,9个边沿或电平触发的外部中断,具有独立电源和时钟的RTC,多个串行接口(UART、I2C、SPI、SSP)。它内含向量中断控制器,可配置中断优先级和向量地址.片内Boot装载程序可实现在系统应用编程(ISP/IAP),通过片内PLL可实现60 MHz的CPU操作频率,具有空闲和掉电2种低功耗模式,并可通过外部中断唤醒,图2为LPC2138的整体结构图。
[!--empirenews.page--]
3.2 超声波发射电路
超声波发射电路是南超声波发射器T和PWM产生的40 kHz频率信号、驱动(或激励)电路等组成。该系统设计采用ARM中的PWM模块产生高精度的40 kHz的频率信号,然后通过南74HC00等组成的驱动电路,最后将发射信号送到超声波发射器T。对于放射探头T,选用发射频率为40kHz的一种,该类型现在应用较普遍,电路也简单,只需给发射端40 kHz的脉冲,发射探头即不断发送超声波。具体硬件电路如图3所示。
其中超声波发射和接收采用φ15的超声波换能器TCT40-10F1(T发射)和TCT40-10S1(R接收),其中心频率为40 kHz,安装时应保持两换能器中心轴线平行并相距4~8 cm。
若将超声波接收电路用金属壳屏蔽起来,则可提高抗干扰能力。根据不同测量范围要求,可适当调整与接收换能器并联的滤波电容器C4,以获得合适的接收灵敏度和抗干扰能力。
3.3 超声波接收电路
超声波接收电路由以MC3403为核心的三级滤波放大电路和二极管的倍压稳流电路等组成。处理好的回波信号被送到ARM的A/D转换模块进行A/D采样,从而触发得到返回的时间。德州仪器公司的MC3403的具体引脚配置如图4所示。超声波接收电路如图5所示。
5 测量结果
该系统经过反复调试后进行测试,测量范围为0.1~4.5m,测量精度为1cm,测量误差保持在4 cm以下,因此系统性能比较良好。其测试数据如表1所示。
6 结束语
基于ARM和μC/OS—II的超声波测距系统利用LCD显示,电路简单,显示界面友好,通讯能力强,可扩展性好,具有良好的实际应用价值。该系统可运用于机器人智能行走和导航,在汽车电子行业也有一定的应用领域.可配合其他模块实现多功能测量,同时在显示输入上可扩展触摸屏功能。