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的整体结构图。
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显示,电路简单,显示界面友好,通讯能力强,可扩展性好,具有良好的实际应用价值。该系统可运用于机器人智能行走和导航,在汽车电子行业也有一定的应用领域.可配合其他模块实现多功能测量,同时在显示输入上可扩展触摸屏功能。
关键字:ARM 超声波 测距
编辑:神话 引用地址:基于μC/OS-Ⅱ和ARM的超声波测距系统设计
推荐阅读最新更新时间:2023-10-12 20:47
英伟达收购ARM再遇阻:美国监管机构提潜在反对意见
英伟达收购ARM正遭遇重重阻碍。 几日前,出于反垄断和国家安全的考虑,英国政府预计将下令对英伟达以300亿英镑收购英国芯片设计公司ARM的计划进行深入调查。 而据金融时报最新报道,美国监管机构对这项交易也提出了潜在的反对意见。 虽然越来越多的迹象表明全球监管机构可能试图阻止英伟达的这笔交易,但英伟达表示,它仍然相信此次收购对ARM、其被许可方和整个行业的好处,是一个重大的机会。 英伟达在周三晚些时候向华尔街公布了最新的季度收益时,披露了美国监管机构的反对。英伟达表示,美国联邦贸易委员会已经“表达了对 ARM 交易的担忧”,并且正在与该机构讨论“解决这些担忧的补救措施”。 2020年9月,软银集团和英伟达宣布,双方已达成确定性协议,
[手机便携]
基于AT89C2051的超声波测距系统
非接触式的距离测量在工业中有广泛的应用机器人视觉系统中对距离的测量,汽车倒车雷达系统及液位、物位的检测系统等。有鉴于此,设计了基于超声波传感器的测距控制系统,以实现距离的测量和显示,并能输出控制信号及实现和上位机的通信。与以往类似系统不同的是:本设计采用了一种直流电机PWM调速芯片作为超声波发射驱动电路。
其优点是:电路简单,易于控制,而且对于不同电压峰值要求的超声波传感器,可以改变其供电电压值。
显示部分采用一种串行通讯芯片驱动数码管,以节约单片机IO口的使用数量和提高数码量,因此,系统应用灵活,实用性强,其模块化设计可嵌入到不同的系统中。
1 超声波测距传感器
超声波传感器是一种换能器,它把电能或机械能
[单片机]
ARM中断处理类型
在正常的程序执行流程发生暂时的停止时,称为中断,例如,处理一个外部的中断请求。在处理异常之前,当前处理器的状态必须保留,这样当异常处理完成之后,当前程序可以继续执行。处理器允许多个异常同时发生,它们将会按固定的优先级进行处理。
中断与堆栈设置和ARM体系结构紧密相关,ARM是一种支持多任务操作的系统内核,内部结构完全适应多任务应用。ARM内核支持7种中断,不同的中断处于不同的处理模式(如表1所示),具有不同的优先级,而且每个中断都有固定的中断入口地址。当一个中断发生时,相应的R14(LR)存储中断返回地址,SPSR存储状态寄存器CPSR的值。
由于ARM内核支持流水线工作,LR寄存器存储的地址可能是发生中断处后
[单片机]
ARM在进入main函数之前会做什么
首先声明,#define是在程序启动代码运行之前就会编译好的。烧录到芯片中时是已经替换完成的数值; 1、芯片复位,启动代码运行,启动代码进行初级硬件初始化等,比如内核从初始复位地址取指令,开始执行程序,最重要的是设置堆栈指针,如图 2、初始化0值变量,将对应内存初始化为0,这些内存对应在程序中的“int i= 0”的变量地址,图示 3、初始化非零变量,例如“int j = 6;”这样的语句对应的内存应该初始化为6,在启动程序中,从ROM中的Initializers段复制到对应的内存,图示 最后调用main(); 记忆:(启(启动代码)栈(初始化堆栈)0(0变量到RAM)变(非零变量到RAM))
[单片机]
ARM发布首款Cortex-A9处理器优化包
2012年2月29日,中国上海 —— ARM近日发布了ARM® Cortex™-A9 MPCore™处理器优化包(POP),将应用于GLOBALFOUNDRIES 28纳米超低功耗高K金属栅(HKMG)制程技术。为移动设备、网络和企业级应用进行优化的ARM 28纳米超低功耗超高性能处理器优化包,能够帮助Cortex-A9处理器在严苛的条件下达到1GHz至1.6GHz,并在典型条件下达到2GHz。通过ARM Artisan®物理IP平台和Cortex-A9处理器优化包,系统级芯片(SoC)设计商可拥有更大的灵活性,优化设计性能和功耗效率。
GLOBALFOUNDRIES设计实现战略和联盟部门副总裁Kevin Meyer表示:“
[单片机]
ARM笔记:内存控制器程序
.equ MEM_CTL_BASE, 0x48000000 .equ SDRAM_BASE, 0x30000000 .text .global _start _start: bl disable_watch_dog @关闭WATCHDOG,否则CPU会不断重启 bl memsetup @设置存储控制器 bl copy_steppingstone_to_sdram @赋值代码到SDRAM中 ldr pc,=on_sdram @跳到SDRAM中继续执行 on_sdram: ldr sp,=0x34000000 @设置栈 bl main halt_loop
[单片机]
ARM 浮点小知识
ARM浮点运算
一: ARM实现浮点运算的类型
有三种方法实现ARM的浮点运算,而且通常这三种方法在ARM与其编译器的发展时间
上是串行的.
(1): Linux Kernel 的 Floating point emulation,即内核完成浮点模拟(用户模式代码通过系统调用由内核完成);
(2): gcc 编译器带的libc实现软件浮点运算;
(3): ARM硬件浮点运算,由ARM协处理器完成真正的硬件浮点运算(旧的ARM不支持).
二: GNU gcc 编译器浮点编译选项(加入CFLAGS变量中)
(1): -mfloat-abi=soft == -
[单片机]
基于超声波检测的倒车雷达设计
倒车雷达(Car Reversing Aid Systems)的全称是“倒车防撞雷达”,也称“泊车辅助装置”,是汽车泊车安全辅助装置,能以声音或者更为直观的显示告知驾驶员周围障碍物的情况,解除了驾驶员泊车和起动车辆时前后左右探视所引起的困扰,并帮助驾驶员扫除了视野死角和视线模糊的缺陷,提高了安全性。
系统工作原理
倒车雷达只需要在汽车倒车时工作,为驾驶员提供汽车后方的信息。由于倒车时汽车的行驶速度较慢,和声速相比可以认为汽车是静止的,因此在系统中可以忽略多普勒效应的影响。在许多测距方法中,脉冲测距法只需要测量超声波在测量点与目标间的往返时间,实现简单,因此本系统采用了这种方法。
如图1所示,驾驶员将手柄转到倒车档后,系
[应用]