




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一种多路无串扰超声测距系统的fpga设计
超声波清洗机具有尺寸小、价格低廉、易于实施硬件电路等优点,在工业测量和移动设备产业的领域得到了广泛应用。还有人脉地图集。目前用于移动机器人的超声测距系统至少存在两方面的问题,一是测距精度偏低,二是多个超声换能器同时工作时存在相互干扰,即串扰。基于渡越时间法测距的关键是回声时间的准确获取,但在测距过程中,由于噪声等其他信号的干扰和回声信号在空气中幅值的衰减和变形等原因,导致渡越时间难以准确捕获。由于超声换能器的波束角有限,为了提供360°范围的环境信息,需要将多个超声换能器组成环状。但多个换能器同时工作,就可能产生串扰现象,即某个换能器接收到其他换能器发射的超声,从而导致测距错误。为了提高渡越时间捕获的准确性,国内外一些学者提出了测量或估计渡越时间的方法。最简单的渡越时间捕获方法为阈值法(ThresholdMethod),但由于回声幅值的变动很难预测,且回声信号到达阈值的时刻迟于实际回声信号的起始时刻,所以这种方法准确度不高。Huang等提出了基于二值频移键控(BFSK)的相移法测距,该方法的测距精度较高,但实时性较差,且硬件实现成本高。姚振静等基于平方根无迹卡尔曼滤波估计了单脉冲超声测距系统的渡越时间。考虑到卡尔曼滤波的收敛速度与初始状态有关,该文提出了多初始状态的平方根无迹卡尔曼滤波算法用于渡越时间估计,并通过计算机仿真验证了所提算法的可行性和准确性。但这种算法计算复杂程度高,不能满足实时性要求。在计算自相关函数时,黄增荣等采用数字相关方法确定渡越时间,并用并行数字相关技术代替傅里叶变换算法,减少了数据处理时间和FPGA资源,通过仿真进行了验证。葛万成等采用两步相关法计算渡越时间,减少了处理时间。潘仲明等提出了一种粗、精两步相关法计算互相关函数,并由此确定超声波的射程时间,显著地减少了超声测距系统的数据处理时间,因此采用普通单片机可实现大量程超声测距。文献设计了结构紧凑、功耗较低且具有超声收发一体功能的硬件系统,为超声测距提供了稳定、可靠的硬件平台,并建立了该测距系统基于自回归滑动平均(ARMA)的数学模型,为仿真研究提供了模型支撑。文献采用极性相关算法并利用FPGA实现了实时距离信息的测量,测距效果良好,但FPGA中占用资源较多。为了消除多个超声换能器同时工作带来的串扰问题,Jörg等通过脉冲压缩的方法赋予每个超声换能器唯一的标识,并挑选合适的伪随机码,在接收端采用相关匹配法分辨回波信号是否为自身发出的超声波。Fortuna等基于混沌脉冲位置调制方法研究了超声串扰消除问题。文献和分别采用巴克码和格雷码消除超声串扰现象。但巴克码的有限长度和格雷码实现的复杂性在某种程度上限制了这两种编码在超声扩频领域的实际应用。为减小回声相关的计算量,Nakahira等采用数字极性相关方法,把连续模拟信号的乘法运算转换为简单的数字运算,大大简化了运算量和硬件开销。程晓畅等采用m序列结合幅移键控的调制方式研究了超声扩频测距系统,提出了一种基于快速傅里叶变换的伪随机码包络相关快速时延估计算法,降低了运算量。杨斌虎采用m序列结合数字信号处理器研究了超声测距方法。孟庆浩等采用遗传算法优化伪随机脉冲位置调制和混沌脉冲位置调制序列,有效地抑制了超声串扰现象。杨雪将4种模拟调制方法(即混沌脉冲位置调制、混沌脉冲宽度调制、线性调频及非线性调频)和3种数字调制方法(即二值幅移键控、二值频移键控和二值相移键控)与多种伪随机编码方式结合构造出了脉冲序列激励超声换能器,并用回声相关度、能量效率等性能指标进行了比较,找出了适合扩频超声测距系统的编码和调制方式,有效地避免了超声串扰,提高了有效测距范围。但该文并未将结果应用于实际超声测距系统中。本文在前期的超声编码与收发电路设计的工作基础上,给出了一个基于FPGA的六路无串扰超声测距系统的设计与实现方案。FPGA作为整个系统核心,用于完成超声激励编码的存储与发射、回声信号极化相关、计算/显示距离及向上位机发送数据等任务。实验表明,本文给出的设计方案可保证六路超声测距单元实时地工作,相互之间的串扰可有效地消除,在35cm~420cm的范围内,可实现10mm的测距精度。1声换能器与颗粒物的距离无串扰超声测距的关键包括超声编码/调制及渡越时间捕获。在得到渡越时间t后,可采用式(1)计算距离。D=Ct/2(1)式中,D为超声换能器与障碍物之间的距离;C为超声波在空气中的传播速度。在常温常压下,空气近似为理想气体。超声波在理想气体中的传播速度可用式(2)计算。C=RTr/u−−−−−−√(2)C=RΤr/u(2)式中,r为定压分子热容量与定容分子热容量的比值,R为气体常数,T为绝对温度,u为气体的分子量。对于一定的气体,r和u为定值;当温度恒定时候,可以认为超声波在空气中传播的速度C为一个定值。这样,渡越时间的准确性决定了测距的准确性。1.1基于相关度的调值为了有效抑制超声串扰并扩大有效测距范围,本测距系统引入了扩频和编码思想,给每路超声换能器激励序列赋予独特的编码。同时,为了简化硬件电路,降低程序复杂度,保证系统实时性,测距系统采用脉冲序列激励超声换能器。基于超声扩频脉冲编码测距原理,本文总结了杨雪研究的数字调制激励序列构造方法,即将6种伪随机编码和3种数字调制方式两两结合,从而得到18种扩频脉冲编码激励序列。6种伪随机编码序列包括m序列,混沌序列,Gold序列,BalancedGold序列,Legendre序列和Hall序列;3种数字调制方式包括二值幅移键控(BASK)、二值频移键控(BFSK)和二值相移键控(BPSK)。为了从中挑选出一种最适合超声测距应用的激励序列,本文从回声序列相关特性、激励序列与回声序列的能量特性两个方面对这18种数字激励序列进行了评价。本文用相关度评价回声序列的相关特性。相关度R定义为:P路超声换能器的回声序列集中,所有序列两两互相关的函数峰值中的最大值和各序列自相关的函数旁瓣值中的最大值,二者中较大的值为回声序列的相关度。其表达式为:其中,Ra-max为P个超声换能器的回声序列自相关函数的最大旁瓣值,Rc-max是所有超声换能器的回声序列互相关函数峰值的最大值;Rii(mx)为第i路超声换能器回声序列的自相关函数,Rij(mxy)为第i路超声换能器的回声序列与第j路超声换能器的回声序列的互相关函数;P为多路超声测距系统中包含的超声换能器的个数(本文中P=6),δ是回声序列自相关函数主瓣宽度的一半,N为回声序列的采样点数;xinxnxi为第i路超声换能器的回声序列中第nx个采样点取值,xjnxynxyj为第j路超声换能器的回声序列中第nxy个采样点取值。在测距过程中,同一类编码调制方式组合生成的激励序列所产生的回波自相关函数的旁瓣值越小,互相关函数的最大峰值越小,即回声序列相关度越小,相关特性越优良,则通过相关法越容易识别出与自身匹配的回声序列,也越能准确地捕捉到主瓣峰值对应的渡越时间点,从而防止串扰现象和错误测距信息的产生。能量特性的评价指标为激励序列能量值及能量效率。超声测距系统的激励序列所携带的能量越大,可测量的距离范围越大;回声序列的能量越高就越容易被接收端检测到;能量效率越高,测距系统的能量利用率越高。定义信号v的能量为E=1REE=1RE∑i=1N∑i=1Νv2ii2(8)其中,vi(i=1,2,…,N)为信号v的第i个采样点取值,N为采样点数,RE为等效电阻。将能量效率η定义为回声序列与激励序列的能量之比,即η=ER/ET(9)其中,ER为回声序列能量值,ET为激励序列能量值。在测距过程中,激励序列能量越高,且能量效率越高,才能保证系统的有效测距范围越大。综合考虑回声序列相关度,激励序列与回声序列的能量/能量效率的性能分析比较结果,从中可以得出Gold序列与BFSK调制方式的组合在各方面的综合性能最好。所以本文设计的超声测距系统中选用Gold序列与BFSK调制结合的脉冲编码数字调制序列激励六路超声换能器。图1和图2分别为Gold编码BFSK脉冲激励序列与其回波序列。1.2基于同或、加速度的过零极化相关运算算法超声测距中获取渡越时间的关键在于准确地估计回声信号起始位置。本文采用相关检测法估计渡越时间。该方法是指超声测距系统接收端的回声信号与预先存储的标准回波信号进行匹配滤波,进而确定渡越时间。假设参考信号为x(t),回声信号为y(t),那么它们之间的互相关函数定义为:Rxy(τ)=1T=1Τ∫T0x(t)y(t+τ)dt(10)当互相关函数取得最大值的时候,τ的取值即为渡越时间。但是由于相关算法计算量大,计算时间较长,导致超声测距系统的实时性差。为了简化在FPGA中计算的复杂度,加快测距系统实时性,应用了过零极化相关算法。该算法先将模拟回波极化为二值序列,这样就将普通相关算法转化为极化相关算法,即用同或、加法运算代替模拟相关复杂的卷积运算。对于两个离散时间序列f1(k),f2(k),它们之间的互相关函数可以定义为如下:R12(n)=∑k=0k=N∑k=0k=Νf1(k)f2(k+n),n=0,1,2,…,N(11)而f1(k)的自相关函数可以定义为:R11(n)=∑k=0k=N∑k=0k=Νf1(k)f1(k+n),n=0,1,2,…,N(12)为了进一步简化计算量,该算法提出针对数据段进行运算的思想,而不是针对数据位进行运算。首先对数据块进行划分,其块之间的边界点就是本地码(标准回波信号)数据突变时刻点,由1变0或0变1的时刻点,因此把此数据突变时刻称为过零时刻。假设x0表示本地码数据,y(k)表示k时刻与本地码进行相关运算的数据,整个本地码x0中按照上述定义划为M段,则在k时刻x0和y(k)的相关结果和在(k-1)时刻x0和y(k-1)的相关结果的关系可表示为:其中,Rxy(k)表示k时刻x0和y(k)的相关结果;Rli(k)表示k时刻第i个数据段最左端的数据位和y(k)最左端的数据位作同或运算;RrMΜr(k-1)表示(k-1)时刻第M个数据段最右端的数据位和y(k-1)最右端的数据位作同或运算。从上式中可以看出,如果已知(k-1)时刻的相关结果,只需在k时刻对本地码x0的第一位数据、最后一位数据和过零时刻点的数据与待相关信号y的对应位数据作同或运算,即可求出k时刻的相关结果。通过理论与实验验证,过零极化相关算法与直接相关算法相比计算结果几乎相同,但过零极化相关只需在过零时刻,本地码的最左端以及最右端进行运算,运算量减少了90%,大大减少FPGA的计算量。本测距系统中回波信号时间长度为2ms,采样频率为1MHz,采样后得到2000个回波数据,这2000个数据存储在FPGA中。如果采用一般极性相关算法,那么需要对这2000个采样数据逐位进行计算,这要占用FPGA中大量的逻辑模块资源。而采用过零极化相关算法,只需要找出过零时刻,采样数据最左端和最右端的数据(约为200个)进行计算,运算量大大减少,并且极大减少FPGA中存储器资源和逻辑模块资源的使用。2号调理电路组成本文设计的无串扰超声测距系统由六路相互独立的测距单元组成,原理如图3所示。每一路测距单元则由FPGA数字处理模块和超声收发电路及信号调理电路两大部分组成。其中FPGA数字处理模块控制超声收发电路发射与接收超声波,信号调理电路则对超声回波进行滤波、放大、幅值调节,最后将其转换为数字信号送入FPGA数字处理模块中与参考信号进行过零极化相关运算,识别回波并捕获渡越时间,进而计算出超声换能器到障碍物的距离。FPGA把每路测距单元计算得到的障碍物距离信息通过RS-232接口,传输到上位机,然后障碍物距离信息显示在用户使用界面。2.1超声接收系统设计超声收发电路及信号调理电路是由发射/接收一体电路、滤波电路、自增益电路与极化电平转换电路组成,如图4所示。本系统设计采用SensComp公司生产的600系列静电超声换能器。由于从FPGA发射出来的激励信号功率太小,无法直接激励超声换能器。激励信号需通过以变压器为核心的功率放大电路进行放大,得到由200V直流偏置和200V交流电压叠加而成的驱动电压,从而激励超声换能器发出超声波。为了使硬件结构紧凑,系统采用超声收/发一体结构,通过FPGA控制光电开关AQW216切换超声换能器的发射与接收状态。超声回波在接收过程中不可避免地引入外部环境噪声,因此首先对其进行滤波处理。由于系统采用的超声换能器工作频带在40kHz~70kHz,所以采用MAX275设计了该频带范围的带通滤波电路。众所周知,超声波在介质传输过程中会呈指数形式衰减,且传播距离越长衰减越大,为此,本文使用了基于PID的自增益电路,它的作用是根据回波幅值的大小,自适应地调节放大倍数,使来自不同距离的回波信号能够与参考信号在波形上尽可能相似。这样回波信号在FPGA中与参考信号进行过零极化相关计算得到的结果更准确。超声收发电路及信号调理电路的细节可参考文献。回波信号经自增益电路之后仍然是模拟信号。为了满足过零极化相关算法对过零点数据的需要,系统采用迟滞比较器和开关管电路对其进行极化处理和电平转换,从而得到满足FPGA电平标准的数字信号,用于FPGA的后续处理和计算。2.2扫描回波识别算法本测距系统中的FPGA主要完成3个工作,一是储存并发送六路含有独特标识的脉冲编码数字调制激励序列;二是对六路经硬件系统处理后的回波信号与本地码进行相关运算,得到距离信息;三是在计算距离信息的同时将其通过RS-232接口传输到上位机,在用户使用界面显示。为了协调好六路测距单元正常工作,使其得到正确测距结果,采用有限状态机的设计思想对其进行管理。将FPGA内部所要完成的任务分为4个状态,分别为State1,State2,State3和State4。其中State1为空状态。具体工作分配为:(1)State2状态的工作是系统初始化。(2)State3状态的工作是发送脉冲编码数字调制激励序列。(3)State4状态的工作是回波识别,计算距离信息并将其传送到用户使用界面上。在编程中,单独设置3个完成标志位State2_Ready、State3_Ready和State4_Ready。当且仅当全部六路测距单元都完成初始化的工作之后,State2_Ready变为低电平,State3_Ready处于高电平状态,用于触发State3工作;当且仅当全部六路测距单元都完成发送各自脉冲编码数字调制激励序列的工作之后,State4_Ready处于高电平状态,用于触发State4工作。以此来保证FPGA内部工作正常、有序地执行。系统具体的工作流程如下:程序编译成功之后,将程序下载到FPGA芯片中(芯片选用的是Altera公司的EP2C35F484C8),系统自动进入初始化环节。FPGA中的管脚Sign_Control输出高电平,开关控制电路接收到高电平控制信号,则控制发射/接收一体电路处于超声波发射状态。这时,FPGA中的管脚Sign_Transmit输出脉冲编码数字调制激励序列,超声换能器开始发射超声波。超声波发射结束后,FPGA中的管脚Sign_Control输出低电平,开关控制电路接到这个低电平控制信号后,将控制发射/接收一体电路处于回声接收状态,等待回波信号的到来。超声换能器接收回声信号后,通过信号调理电路的处理,从而得到数字信号。这个信号通过管脚InData进入回波识别模块进行匹配处理。基于相关判别法判断本地码与接收的回波信号是否相关,从而确定回波信号是否为自身回波。这种方法也称为回波识别算法,具体步骤为:第1步将回波信号送入FPGA的移位寄存器中;第2步将回波信号与预存在ROM中的本地码进行过零极化相关运算;第3步将此计算结果与预设的阈值比较。如果计算结果大于阈值,那么说明此回波信号为自身换能器发射超声波的回波;否则,不是自身回波。其中阈值的选取是通过大量的实验研究而得到的。第4步捕获相关运算峰值对应的时间点,计算渡越时间,得出距离值。在系统计算距离信息的同时,还将已得到的距离信息通过RS-232接口,传输到上位机,在用户使用界面显示。这样用户可以在使用界面上实时地得到距离信息。图5给出了FPGA的工作流程图。当以上内容完成后,系统会自动进入State3状态,继续发射超声波,一直循环下去。如果外部系统指示信号突然变为无效,或者由于不可预测的原因状态机转入了不确定状态,那么FPGA系统会在内部时钟的下一时刻到来后,自动进入State1状态。这样设计可以使系统工作更为稳定,容错性更好。3结果与分析图6给出了本文设计的六路无串扰超声测距仪原型样机图。基于此原型样机,开展了无串扰及有串扰两种情况下的测距实验。3.1测量距离的改变当六路超声测距系统的各个测距单元相互独立时,如图7所示,即测距时只有一路超声测距单元向障碍物发射超声波。图7中障碍物采用的是表面平整光滑的有机玻璃,对声音的反射能力强。实验的具体实施方法如下:超声换能器发射面始终垂直于障碍物,然后不断改变障碍物与超声换能器之间的距离,并从用户使用界面上读取每次距离变化后的数据结果。由于六路测距数据量较大,我们在这里取的是六路测距结果的平均值,如图8所示;测距结果的绝对误差和相对误差如图9所示。从图8和图9中可以看出,在相互独立的超声测距实验中,测量的范围为350mm~4200mm,测量的绝对误差小于10mm,相对误差在2%之内。当距离在350mm~500mm之间,由于接近超声换能器的测量盲区,测量的误差反而比距离在500mm~2000mm的误差大。距离在500mm~3000mm之内的测量精度很高,在测量距离超过2500mm后,测量误差随着距离的增加而增加。这说明本文的超声测距系统的最佳测量范围是500mm到3000mm之间,能够满足移动机器人避障需要。3.2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 软件工程师转正报告范文
- 燃气反思报告范文
- 汽车救援报告范文
- 2025年度生物科技合伙企业退股协议
- 2025年度旅游规划兼职劳务协议合同
- 二零二五年度个人单位借款资金监管合同
- 二零二五年度车辆未过户期间的维修保养免责服务合同
- 二零二五年度科技研发项目委托合同审查标准与专利申请
- 二零二五年度文化产业财务顾问及市场调研协议
- 二零二五年度体育赛事举办保证金质押担保合同
- 数控机床故障诊断与维护实验指导书-实验报告
- 毕业设计(论文)-CK6140数控车床主传动系统设计
- T-CHAS 20-2-11-2022 医疗机构药事管理与药学服务 第2-11部分:临床药学服务 治疗药物监测
- 广州退休申请表范本
- 2023年中国海关科学技术研究中心招聘应届毕业生7人笔试模拟试题及答案解析
- 皮带机安全-课件
- 传媒侵权法介绍
- 初中物理作图题集萃附答案
- 5S管理优点与推行手段实施可视化现场管理的要点与方法
- 2023届高考英语单词分类-航空航天类词汇短语与高分句型模板讲义
- 第七版《方剂学》课本方歌
评论
0/150
提交评论