当前位置:首页 期刊杂志

基于FPGA的多声路超声波定位系统

时间:2024-07-28

吴 倩

(东南大学自动化学院,南京 210096)

1 引言

定位的传感器有很多,如视觉、声纳、超声波、红外线、罗盘等,这些传感器中仅超声波传感器应用于绝对定位中。由于超声波在空气中的衰减较大,只适用于较小的范围。目前超声波测距已有很成熟的技术,而超声波定位的研究还在起步阶段,且大多都只是研究利用超声波传感器在空间中定位单个静止物体的位置。

本系统在超声波测距的基础上,利用FPGA 内部高效率的处理能力,使多个超声波传感器分时工作并连续不断地扫描超声波传感器前面一定范围内的障碍物情况,测量得到的数据通过FPGA 内部处理后可将障碍物的分布情况动态地显示在VGA 屏上,通过多个超声波传感器之间的协调工作达到了实时监测超声波前面动态情况的效果。本设计可应用于无人场所中移动和静止物体的定位,如车辆行进路线监测,机器人避障等。

2 系统工作原理

2.1 超声波测距原理

超声波传感器的发射端向空气中发射特定频率的超声波,同时接收端探测来自某个物体的反射波。超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t,然后求出距离s。系统利用FPGA 产生脉冲方波,放大后经超声波探头产生40KHz的超声波输出。由于超声波传播速度受温度T的影响较大,因此系统接入温度传感器,计算距离公式为:

2.2 系统设计

系统由FPGA 模块、VGA 屏定位显示模块、LCD测距显示模块、温度传感器模块及超声波传感器模块组成。具体如图1 所示。

图1 多声路超声波障碍物定位系统组成

2.3 工作原理

系统启动后,由定时模块产生5 路信号先后送往超声波传感器,产生超声波。由正确回波验证模块,传感器传播速度模块,测距换算模块,VGA 模块,LCD 模块构成。对于超声波接收模块接收的信号,先用正确回波验证模块验证接收信号中是否存在一定连续数目的传感器工作频率的信号,如是则计算回波时间差,并将结果送至测距换算模块,否则不作处理。同时使用温度传感器测得的数据送往传感器传播速度模块处理可获得超声波在环境中的传播速度,并将结果送至测距换算模块,在测距换算模块中计算出对应的距离数值,并经过VGA 模块和LCD 模块的处理后将结果分别显示在VGA 屏和LCD 屏上。

3 关键模块设计

3.1 FPGA 芯片EP2C8Q208C8N 简介

FPGA 选 用 Altera 公 司的 Cvclone Ⅱ系 列EP2C8Q208C8N。该芯片有8256个逻辑单元(LE),包括嵌入式18bit ×18bit 乘法器、专用外部存储器接口电路、4 Kbit 嵌入式存储器块、锁相环(PLL)和高速差分I/O 能力,是一款高速度、高密度、高性能、低成本的FPGA。FPGA 包括超声波发送处理模块、超声波接收处理模块、VGA 模块、温度传感器模块等。

3.2 超声波传感器收发模块

为有效测量障碍物位置,5个超声波传感器成对使用,每对传感器并排摆放。程序启动后,由定时选择模块根据设定时间间隔自动产生5 路信号,连续不断地按顺序依次使能每个传感器发送模块,使得同一个时刻只使能对应的传感器接收模块接收回波信号。

由FPGA 产生40KHz 脉冲,输出放大后驱动超声波发送器工作。超声波接收电路接收到回波信号后,经过两级NE5532 对信号放大和LM311 比较电路的处理得到FPGA 可识别的幅值为3.3V的脉冲信号,并通过I/O 接口送回FPGA 内进行处理。超声波接收电路如图2 所示。

图2 超声波接收模块

3.3 VGA 显示模块

为增大扫描范围,5 对超声波传感器成同圆心的圆弧排列,角度间隔45°,建立坐标系如图3 所示。根据每个超声波摆放位置与圆心之间的角度,可将每个传感器测得的距离换算成屏幕坐标。

测得障碍物坐标后,通过VGA 模块连续不断地行扫描,场扫描,将坐标点在屏幕中标注出来以表示障碍物当前的位置,当障碍物在移动时,行扫描,场扫描可以及时地更新障碍物的位置。

4 系统软件设计

软件用硬件语言VHDL,Verilog 编写,整个软件采用模块化设计,主程序由超声波发射子程序、回波处理子程序、VGA 显示子程序等模块组成。程序采用对5个超声波发射接收回路的循环检测方式,计算各通道所测结果并保存于存储器,并将所测结果的数值及所计算的位置显示在VGA 屏中。主程序流程图设计如图4 所示。

设计中连续不断地按顺序依次使能每个传感器发送模块,为防止5个超声波传感器之间的信号相互干扰而造成误测现象,采用在每个超声波发送器工作时只发送10个周期数目的驱动信号,且用定时器对每个超声波的工作时间做了限定,使设定范围内的回波信号都能返回收到且使环境中反射多次的超声波信号在该时间内衰减掉,保证当下一个超声波发送器使能时不受其他超声波干扰信号的影响。超声波发送子程序流程图如图5 所示。

图5 超声波发送子程序流程图

由于采用的是超声波发送和接收分开处理的形式,所以采用FPGA 给发送提供驱动信号的同时,也在不断的检测接收端是否接收到信号。当接收到待测信号后,软件中通过检测待测信号两个下降沿的间隔来判断其周期,通过记录待测信号一个周期所包含的系统晶振50MHz的数目来判断是否为40KHz,当连续接收到5个周期的40KHz的脉冲时,则认为接收到正确的回波信号。设计如图6 所示。

图6 回波处理子程序流程图

5 结束语

系统利用FPGA为控制器的多声路超声波障碍物定位系统,可实时监视范围内障碍物空间分布情况及物体的移动情况。在实际应用中本设计工作稳定可靠,反应敏捷,能满足2m 范围内较高精度的测距要求,且成本较低,有良好的性价比,经适当改进后也可用于机器人的辅助视觉系统和其它短距离测距要求及相关系统中。

[1]吴超.基于FPGA的超声波测距系统[D].武汉:武汉理工大学,2009:20-24.

[2]曾德怀,谢存禧,张铁,等.行走机器人的超声波测距系统的研究[J].机械科学与技术,2004,23(5):613-616.

[3]周光明.基于主动探测的室内未知环境下移动机器人[J].模式识别与人工智能,2006,19(5):591-596.

[4]杨媛,高勇,余宁梅.多声路高精度超声波流量测量系统[J].化学工程,2005,33(6):71-73.

[5]孙艳,孙爱良,王紫婷.基于FPGA的VGA 显示控制器的实现[J].自动化与仪器仪表,2008,6(2):106-107.

[6]郑美芳,高晓蓉,王黎,等.基于FPGA的VGA时序彩条信号实现[J].现代电子技术,2009,32(14):90-92.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!