历史上的今天
今天是:2025年03月11日(星期二)
2021年03月11日 | 基于μC/OS-Ⅱ的高精度超声波测距系统设计
2021-03-11 来源:eefocus
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.1LPC2138微控制器简介
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的整体结构图。

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显示,电路简单,显示界面友好,通讯能力强,可扩展性好,具有良好的实际应用价值。该系统可运用于机器人智能行走和导航,在汽车电子行业也有一定的应用领域.可配合其他模块实现多功能测量,同时在显示输入上可扩展触摸屏功能。
史海拾趣
|
刚刚老板找我谈话.说希望我提出一个方案,实现5KW音频放大其他具体要求没说.只说是用于军舰喊话.我跑了趟西四音响市场.都说没有5KW的,最大只有2X2KW.一般常见只有几百W. 买不到看来只有自己DIY了,我自己提出使用电子管FU81四只来实现推挽输出,功率 ...… 查看全部问答> |
|
STANDARDSDK STANDARDSDK_42有什么区别(新手) 1、用过EVC4.0平台,它上面有STANDARDSDK和STANDARDSDK_42,是不是编真机版时就选前者,跑模拟器就选择后者?它们有什么区别? 2、顺便问问,在用EVC时,比如我选择了STANDARDSDK这个SDK,为什么编译选项Win 32[WCE ARM4V]既可以有release,又可以 ...… 查看全部问答> |
|
大虾们,verilog hdl的编译器 有没有只有上10M的 小软件啊,我只需要一个编译器,顶多加上一个语法检测器。因为我用的是上网本,小电脑处理能力很有限,ISE根本装不上去,加上下个ISE估计就要花好几天时间,推荐下 我该下那个编译器 谢谢啊… 查看全部问答> |
|
M0的开发板咋挑呀,英蓓特蓝精灵、周立功TinyM0、poweravr的NanoM0 另外还有从坛友签名里翻到的智林Z111xP和龙达电子的 请问主要的区别在哪?硬件的、调试环境的,谢谢啦 在下是brand new的新手,学校里专业是自动化,现在用PLC [ 本帖最后由 krtek 于 2010-9-29 21:06 编辑 ]… 查看全部问答> |
|
芯片资料说设置时间只要10us,现在有50us,spi接口是用FPGA口模拟出来的,频率是20MHZ,做的是dds正弦波生成,后来把串口频率改成30MHZ,还是50us,求高手指点… 查看全部问答> |
|
现在的认识:MSP430 5438 有3个时钟,分别是 TA0、TA1 和TB了解了定时器A的用法:定时器A可以分成几个独立的时间周期。这几个时钟周期共用一个计数器TA1R 或TA0R。 在头文件中可以查到: TIMER0 含 TA0CCR0- TA0CCR4 五个TIMER1 含& ...… 查看全部问答> |




