C8051单片机实现多目标超声波测距的设计

发布者:温柔花香最新更新时间:2024-02-23 来源: elecfans关键字:C8051  单片机  超声波测距 手机看文章 扫描二维码
随时随地手机看文章

超声波测距传感器以其测量精度高、响应快和价格低廉而广泛应用在工业现场测距、移动机器人导航和定位等场合。超声波测距传感器常用的方式是1 个发射头对应1 个接收头,也有多个发射头对应1 个接收头。 它们共同之处是:每个接收头只测量一个位置,这个位置就是除盲区内因发射的超声波旁瓣引起的接收信号超声波包络峰值外,第1个接收信号超声波包络峰值对应的距离。 在机器人自主导航避障时,机器人只关心最近障碍物的距离,是能够完成自主避障的。 但是在机器人定位时,尤其在动态环境下,1 个接收头同时测量多个距离,能够更多地描述环境信息,这对机器人用超声波定位具有重要意义。


1 超声波

1. 1 超声波测距原理

超声波测距原理比较简单,一般是采用时差法。即:通过检测发射的超声波与其遇到障碍物后产生回波之间的时间差Δt ,求出障碍物的距离d ,计算公式为: d = cΔt/ 2 ,其中:

C8051单片机实现多目标超声波测距的设计

c 为超声波波速, T1 为环境摄氏温度。

1. 2 发射信号超声波包络

在发射头两端加40 kHZ 的矩形脉冲电压, 压电晶体把电能转变成机械能,带动其上振动板运动,见图1. 振动板的固有频率是40 kHZ,由于共振,振动板很快起振,然后稳定, 脉冲电压撤销, 振动板作阻尼振荡衰减。 若振动板长时间工作在最大振幅状态,即振动板新增能量与其损耗能量相等,这样产生的超声波能量大,有利于提高信噪比,但是接收信号超声波包络从起振到峰值的时间将变长(放大器增益小,不出现削顶的情况下) ,不利于阈值选择,误差变大,也不利于第二个位置的测量,另外盲区也会增大。 振动板振动时,空气、压电晶体(起振时是激励)等消耗振动板能量, 其中受空气阻力消耗的能量转变成发射超声波。 压电晶体激励撤销,则振动板振动作阻尼呈指数关系衰减。 把振动板简化成是一个弹簧振子,设振动板在一个正弦周期( T = 25μs) 内是标准正弦波,则在发射头振动板运动周期数n ≤发射头激励脉冲数N 时,发射头振动板运动满足:

x = A ( n) sinωt (1)

式中t ∈[ ( n - 1) T , nT ] , A ( n)是第n 个周期内的振幅。

k 是常数, E( n) 是第n 个周期内振动板的机械能。

a 是一个与衰减有关的常系数, Ef ( n) 第n 个周期内振动板损耗的机械能。

ΔE 是压电晶片每次施加的能量。

在n 》 N 时, 发射头振动板运动能量满足:

1. 3 接收信号超声波包络

发射头产生的超声波遇到不同介质就会产生回波,接收头把回波转变成电能,产生接收信号。 现分析超声波垂直入射到墙壁面时的接收信号,接收信号超声波包络由起振阶段和衰减阶段两部分组成,如图1。

接收信号与回波超声包络的各正弦波幅值关系是:

式中W R 是接收信号包络峰值,W Echo 是回波包络峰值, H 是回波的单位冲击响应。

C8051单片机实现多目标超声波测距的设计

图1 实际接收信号( N = 5)

从图1 中可看出, 接受信号包络从起振到峰值的时间要小于从峰值衰减至噪声幅值的时间。 实际总长度接近1. 5 ~ 2 ms ,而从起振到包络峰值只需250μs 左右,即9 ~ 12 个T , T = 25μs.

根据发射的超声波能量特点, 得出接收信号每个周期能量的表达式, 设每个周期内的正弦波是标准正弦波且发射头振动板尚未达稳定振动状态。

N 是发射头激励脉冲数。

由(6) 、(7) 式知:在N , a 一定的情况下,每个反射面产生的回波作用接收头得到的接收信号经归一化后是相同的。 为了便于取阈值,分析接收信号包络的特性与n、N 的关系是必要的。 首先找出定值a ,方法是取N = 5 , a值在一定范围内变化得到多幅仿真图,经比较a = 5 000/ s 时得到的图2 与图1 接近。 根据得到的a值可仿真N = 12 时的接收信号,见图3.

C8051单片机实现多目标超声波测距的设计

图2 接收信号仿真( N = 5 , a = 5 000/ s)

C8051单片机实现多目标超声波测距的设计

图3 接收信号仿真( N = 12 , a = 5 000/ s)

2 阈值和分辨率

阈值的选取,决定本测距系统的测量精度。 由于回波的能量大小受入射角、反射面大小、形状和材质、空气的湿度和温度等因素决定,为了较精确地测量文献中机器人与墙壁之间的距离,下面只针对超声波垂直入射墙壁,接受信号的大小进行分析。

在测量时,一旦有干扰物挡住超声波到墙壁的行进路径,则墙壁返回的信号将减弱,过高的阈值可能测不到墙壁回波信号,动态阈值因无规律可循而无法使用,故此阈值采用小固定值,因接收信号中的噪声峰值较稳定,固定阈值取3~5 倍噪声峰值。 由于墙壁回波信号不确定地高低变化,在标定测量参数时,用示波器采集信号,以接收信号包络峰值的0. 5 倍处(即图2 中n = 4 或5 处的时间) 作为距离信息。 这样处理的目的是: 即使接收信号过强或过弱,测距误差始终在3~5 cm 以内。 当N 过大时,盲区会增大同时测量精度也会下降,见图3.

多目标测量要能区分出两个不同目标。 由于阈值取得小,则系统的分辨能力很差,从图2 上可看出接收信号经1. 5 ms 后正弦幅值是包络峰值的0. 015倍。 图2 的波形只有在超声波垂直入射墙壁时才能得到,在大多数情况下接收信号从起振到包络峰值基本固定,但是接收信号从包络峰值以后各不一样,一般从起振经1. 5 ms~2 ms 后都会降到阈值以下。

在测量墙壁距离时,只要干扰物与墙壁保持30 cm以上距离则墙壁距离能较精确获得。

3 系统硬件

C8051 系列单片机具有丰富的模拟、数字外设和多种总线接口,支持在线编程,是很多测控系统的首选。系统硬件框图如图4 ,C8051F021 有5 个定时器,5 个PCA 通道,测4 个方向的超声波传感器发射头可共用1 个40 kHz 方波信号,实行同步发射;4 个接收头可接入PCA 的4 个通道。 信号放大电路的放大倍数在800 左右,即使接收信号经过带通滤波器,噪声峰值也达30 mv.

C8051单片机实现多目标超声波测距的设计

图4 单接收头多目标测量电路框图

C8051单片机实现多目标超声波测距的设计

图5 用示波器标定系统(只有一个发射头和一个接收头)

4 系统软件

系统软件基本构架如下:

void main ()

{ cONfig () ; EA = 1 ; While (1) {} ; }

void time0_inter () interrupt 1 {}

void time1_inter () interrupt 3 {}

void time2_inter () interrupt 5 {}

void time3_inter () interrupt 14 {}

void time4_inter () interrupt 16 {}

void PCA_inter () interrupt 9 {}

初始化程序config () : I/ O 交叉开关配置;使用外部时钟,指定系统时钟;time 0~4 中断使能,其中time 0 溢出中断发生,产生40 kHz 方波信号输出;PLA 中断开启。

中断函数time0_inter ( ) :产生5 个40 kHz 方波信号输出后关闭time0 中断, TF0 = 0 ; PLA 溢出、边缘捕捉中断开启。

中断函数PCA_inter () :若是溢出中断发生(30ms) ,则关闭PCA_inter ( ) 中断,CF = 0 ,开启time0中断;若是CCFn = 1 ,则记下定时器时间(与初值相减后代入标定式得距离) ,给定time n 计时初值并启动time n 溢出中断( 2 ms) , 关闭CCFn 中断,CCFn = 0.

中断函数time1 _inter ( ) ~ time4 _inter ( ) : 当time n 中断发生则开启CCFn 中断,关闭time n 中断, TFn = 0.


5 结语

本文对单个接收头在一次采样时间(30 ms) 内测量多个目标进行了尝试,仿真并分析了接收信号波形,用0. 5 倍包络峰值标定而用小阈值测量,在2个目标与接收头距离之差大于30 cm 以上时能较精确测量出2 个目标,误差不超过2 cm.

由于一次能在同一时刻测多个距离,增大了超声波传感器捕获的信息量,移动机器人装配了该传感器能在人员不是密集的动态环境下根据4 面墙壁定位。


关键字:C8051  单片机  超声波测距 引用地址:C8051单片机实现多目标超声波测距的设计

上一篇:基于C8051F330芯片和MPPT技术实现太阳能路灯智能控制系统的设计
下一篇:采用单片机C8051F310实现光伏电池MPPT控制器的设计

推荐阅读最新更新时间:2024-11-03 20:35

基于89C51单片机的喷油校泵台调速系统设计
1 引言 燃油喷射系统的性能直接影响柴油机的工作过程和性能指标,是柴油机改善排放、降低油耗和提高性能的关键部分。传统的内燃机车柴油喷油校泵台主要用于喷油泵的磨合及性能试验,其驱动部分采用晶闸管电磁转差离合器无级调速系统,控制和显示喷油泵的主轴转速。由于采用分离元件,测试灵敏度低,设定调整不方便且故障率高。目前,国外喷油校泵台采用微机控制及数显系统。为此,按国际标准采用89C51单片机设计了一种新型的校泵台调速系统,能够实时控制主轴转速测试和调节,并将相关测量数据传输给上位PC机进行显示,从而提高测试灵敏度。 2 系统结构设计   该系统设计采用转速单闭环凋速系统,如图1所示。驱动电路由晶闸管和电机构成,而控制电路则由转
[汽车电子]
基于89C51<font color='red'>单片机</font>的喷油校泵台调速系统设计
智能式汽车安全气袋控制系统的设计方案
  在我国,随着汽车的普及,交通事故及伤亡人数也在逐年上升。如何在发生汽车碰撞事故时,有效地保护乘员生命就成为迫切需要解决的问题。作为与安全带配合使用的一种保护装置--安全气袋可以有效地保护乘员,已经在欧美等国得到普及,成为保护乘员的主要装备1,并已成功挽救了很多人的生命,显示了它的实用性。作为气袋系统核心部件的控制系统是各生产厂家严格保密的核心技术,因此研制自己的控制系统就成为我国发展汽车安全气袋、解决乘员保护问题的关键。   气袋控制系统的任务是准确判断出事故的碰撞强度,并点爆气袋。控制系统主要有机械式、模拟电子式、智能式几种1。第一、二代的机械式和模拟式控制系统,由于结构的局限,灵活性有很大限制,应用正在减少。现在大部分系统
[单片机]
智能式汽车安全气袋控制系统的设计方案
nanoWatt XLP技术在单片机上的引用
单机片介绍 单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。 nanoWatt XLP技术 全球知名的单片机应商美国微芯科技公司推出采用nanoWatt XLP技术的全新8位PIC单片机(MCU)系列,可以实现极低的休眠电流。高性能、低功耗的PIC1
[单片机]
MCU 如何在机器人电机控制设计中提高系统性能
机器人系统可自动执行重复性任务,承担复杂而费力的作业,并在对人类有危险或有害的环境中工作。 集成度更高、性能更强的微控制器 (MCU) 可实现更高的功率效率、更平稳安全的运动以及更高的精度,从而提高生产力和自动化水平。例如,更高的精度(有时在 0.1mm 以内)对于处理激光焊接、精密涂层或喷墨或 3D 打印的应用非常重要。 机械臂的轴数以及所需的控制架构类型(集中式或分布式)决定了适合该系统的 MCU 或电机控制集成电路 (IC)。 现代工厂组合使用具有不同轴数和运动自由度(在 x、y 或 z 平面上移动和旋转)的机器人,以满足不同制造阶段的需求;因此,整个工厂车间采用不同的控制架构。 在选择 MCU 时,选择具有额外性能
[机器人]
<font color='red'>MCU</font> 如何在机器人电机控制设计中提高系统性能
时间片轮转算法在单片机程序设计中的应用
传统的单任务编程思想对于明显的顺序控制要求编程简单、思路清晰、开发周期短;但对于任务较多、控制功能复杂的问题时,却难以满足要求。因此,有必要对传统的单任务设计思想进行改进。时间片轮转算法是实现多任务调度的一种常用算法。在这种算法中,系统将所有的任务按顺序排成一个队列,每次调度时把CPU分配给队首的任务,并令其执行一个时间片,构成微观上轮流运行、宏观上并执行的多任务效果。作者在基于单片机的分级分布式控制系统 程控对讲系统的用户控制器程序中引入多任务机制,采用时间片轮转算法极大地改善了程序结构,实现了对32个独立用户的有效控制。这种程序设计思想也可以到其它以单片机为核心的分级分布控制系统软件设计中。 1 系统组成 程控对讲系统是一
[电源管理]
时间片轮转算法在<font color='red'>单片机</font>程序设计中的应用
PIC8引脚带A/D的单片机的特点
PIC 8引脚带A/D的单片机12C6和12CE6系列是Microchip公司生产的一类PIC 8位单片机,其产品型号是12C671/672和12CE673/674,它们是PIC单片机中级型产品之一,其引脚功能如附图所示。   该类产品是一种8引脚带4路8位A/D转换器的超小型产品,是目前性价比极高的8位OTP(一次编程不可擦除)单片机。由于它们体积小巧,所以可嵌入几乎任何一种电子产品中,特别是便携式电子产品,如IC卡、充电器、计时器、智能传感器和儿童玩具等等都已广泛地应用了。   PIC12C6和12CE6系列单片机之间的差别,仅后者产品内部硬件带有E2PROM的数据存储器(16×8),它们的其它性能几乎完全一样。
[单片机]
PIC8引脚带A/D的<font color='red'>单片机</font>的特点
单片机在微型氧气机中的应用
    采用PSA(变压吸附)空气分离制氧技术的微型氧气机,由于其完全采用物理方式制氧,既方便安全,又价格低廉,在运动保健、医疗康复和健康空调等多种场合得到了广泛应用。而单片机以其低廉的价格、可靠的性能,在微型氧气机的自动控制系统中发挥了重要的作用。   本文探讨的微型氧气机采用世界先进的变压吸附PSA技术,利用沸石分子筛作为吸附剂,通过吸附剂对空气中氧、氮吸附能力的差异而将气体混合物分开,实现氧气和氮气的分离。外界空气先进行压缩增压,保持一定的压力,再送入变压吸附分离床。在分离床的作用下,床内空气中的氮气被吸附,而氧气不被吸附,这样可以在分离床出口端获得高纯度的氧气。输出氧气的流量采用机械式流量调节阀进行调节,当输出流量增加时氧
[单片机]
<font color='red'>单片机</font>在微型氧气机中的应用
单片机寻址—位寻址
MCS-51系列单片机中有专用的位运算指令,可以对位寻址区的每一个位进行数据传送、逻辑运算等操作,如: MOV C, 07H; C←(07H) 该指令属于位操作指令,作用是将位地址为70H的位单元(字节地址20H单元的D7位)传送到位累加器C中。
[单片机]
<font color='red'>单片机</font>寻址—位寻址
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved