APP下载

粒子群算法在超声三维坐标测量中的应用

2015-03-23韩欢欢郭天太

中国计量大学学报 2015年1期
关键词:接收端测距反演

孔 明,韩欢欢,郭天太

(中国计量学院 计量测试工程学院,浙江 杭州 310018)

粒子群算法在超声三维坐标测量中的应用

孔 明,韩欢欢,郭天太

(中国计量学院 计量测试工程学院,浙江 杭州 310018)

提出一种基于粒子群算法的三维坐标反演模型,实现了超声波三坐标测量中三维坐标的高精度反演,提高了坐标反演迭代过程的鲁棒性.同时介绍了超声波测距系统的原理,推导了三维坐标反演的目标函数,建立了基于粒子群算法的反演模型,并进行了实验研究.通过软件仿真,对粒子群算法在超声波三维测量上的可行性和鲁棒性进行了验证,并搭建超声波三维定位平台,在1 m×1 m×2 m空间中进行了测量实验.结果表明,测量的绝对误差小于10 mm,具有较高的反演精度.

超声传感器;三维坐标测量;粒子群算法

三维坐标测量在机械、汽车、航空、船舶等方面具有广泛的应用,目前的三维坐标测量方法主要有三坐标测量机、经纬仪、全站仪、激光雷达测量系统等,这些测量方法存在着成本高、扩展性低、便携性差等问题[1],因此研发出一款低成本、可扩展、便携的三维坐标测量系统是很有必要的.目前定位方法主要有红外线、射频识别、超声波、无线蓝牙、光跟踪等[2],相对于其他定位方法,超声波技术具有成本低、抗干扰能力强、不受光线粉尘影响、安装方便等优点,将超声波技术应用于三维坐标测量上具有一定的优势[3-4].超声波在进行空间坐标测量时,测量精度受传感器测距精度及三维反演模型及算法等因素的影响.本文提出基于粒子群算法[5-7]的反演模型,可以提高超声波三维测量的精度及提高反演过程的鲁棒性.

1 超声波三维坐标测量系统

超声波三维坐标测量的基础是超声波测距.测距的基本原理是通过超声波的传输时间来测量距离.测距模块包括超声波发射端和接收端,该模块工作时,超声波发射端发出超声波并开始计时,当接收端接收到超声波时立即停止计时.假设超声波的传输时间为t,那么发射端与接收端之间的距离为

L=ct.

(1)

式中,c—波速.

超声波坐标测量系统由一个可自由移动的超声波发射端和多个精确定位的超声波接收端构成.当超声波接收端的个数n≥3(在本文中,n=4)的时候即可进行三维坐标测量.系统工作时,超声波发射端发射超声波并且开始计时,接收端接收到超声波信号时停止计时,根据计时可以获得超声波发射端到各超声波接受端的距离,根据基于粒子群算法的三维坐标反演模型可得到超声波发射端的三维坐标值,从而实现三维测量.

超声波三维坐标测量系统的测量原理如图1所示.其中:X为超声波发射端,其空间坐标是待测值;A、B、C、D为接收端,其坐标均为已知,i=1,2,…,n,n为测头个数;O为坐标原点.

图1 坐标测量示意图Figure 1 Diagram of three-dimensionalcoordinate measurement

根据距离公式,可得到n个测距方程

(2)

式中,li—第i个超声波接收端与超声波发射端之间的测量距离.通过解由n个测距方程构成的非线性方程组,即可得到测头的位置.

2 基于粒子群算法的三维坐标反演模型

在粒子群算法中粒子的位置用来表示所求问题的可行解,该算法采用速度-位置搜索模型进行优化计算,通过由粒子所处位置的目标函数决定的适应值函数对粒子性能加以判断,从而得出最优解.

2.1 目标函数

目标定位与跟踪问题本质上是一个非线性估计问题,为方便求解,在保证精度的情况下,可将该非线性问题先线性化.得到如下方程组:

(3)

将式(3)改写为矩阵形式:

TX=L.

(4)

式中

(5)

(6)

(7)

则设其目标函数为

F=‖TX-L‖.

(8)

2.2 粒子群算法

假设有一个搜索空间为D维的粒子群,该粒子群中有M个粒子,则第i个粒子的位置矢量记为Xi=(xi1,xi2,…,xid),其飞行速度是V=(vi1,vi2,…,vid).算法执行时,首先初始化各粒子的基本参数,然后通过迭代过程寻找最优解.在迭代过程当中,粒子根据个体极值和全局极值来更新自己参数信息.其中,个体极值是该粒子在寻优过程中找到的最优解,用Pi表示,Pi=(pi1,pi2,…,pid);全局极值是整个粒子群经过寻优后找到的最优解,用Gi表示,Gi=(gil,gi2,…,gid).粒子群优化算法运行时遵循以下基本公式:

(9)

(10)

其中:ω—惯性权重,主要用于控制粒子的当前速度对下次迭代的影响,本文取ω为0.4~0.9;c1、c2为学习因子,主要用来控制优化过程中向自我经验和组织经验学习的能力,从而使粒子更趋于全局最优值,在本文中c1、c2的值都是20;ξ、η是两个在0~1之间的随机数,目的是为了保持粒子群体的多样性[8-9].

为了使粒子群算法具有良好的全局搜索能力和局部改进能力,采用自适应加权方法动态改变惯性权重ω,表达式如下:

(11)

其中,ωmax、ωmin为ω的最大值和最小值,f为粒子当前的目标函数值,favg和fmin则表示当前所有粒子目标函数的平均值和最小值.

粒子群算法流程(图2)如下[10]:

1)随机初始化种群中各粒子的速度和位置;

2)计算每个粒子的适应值;

3)对各粒子的适应值进行比较,得到全局极值Gbest和个体极值Pbest;

4)根据公式(9)、(10)、(11)对粒子的位置及速度和权重进行更新;

5)判断是否达到最大迭代次数或者满足精度要求.如果条件满足,运算停止;如果条件不满足,则跳转到第2步继续执行.

图2 粒子群算法流程图Figure 2 Flow chart of particle swarm algorithm

3 仿真分析及实验验证

3.1 数值仿真及分析

根据超声波传感器的测量范围0.25~5 m,在多个传感器的可用范围内选取1 m×1 m×2 m的空间进行测量及反演仿真研究.假设四个超声波接收探头的位置为:

(12)

为了验证粒子群算法在超声波三维坐标测量反演过程中的可行性,根据超声波测距的误差限,分别设定测距值为理论值以及添加5 mm的随机超声波测距误差的情况下对该算法进行了仿真.仿真时,设定10个不同的超声波发射探头位置(x,y,z)如表1,由公式(2)可计算出超声波发射端到各接收端的理论距离l,利用粒子群算法进行仿真,粒子群算法参数设定如下:维数D=3,粒子群数M=100,惯性权重ωmax=0.9、ωmin=0.4,学习因子c1=c2=20,迭代次数为1 000.两种情况下粒子群算法的仿真结果见表1.

表1 三维坐标仿真值

由表1可以看出,在采用理论值进行仿真时,利用粒子群算法求得的三维坐标值相较于标准值误差较小,反演误差在0.1 mm以内.添加5 mm随机误差后得到的仿真结果相较于理论值时的仿真结果误差增大,反演误差在10 mm以内,测量误差可以满足实际测量需求.

为了对算法的鲁棒性进行验证,对相同的仿真数据在设定空间中随机选取初值,进行反演计算,仿真过程中目标函数随迭代次数变化如图3.

图3 目标函数随迭代次数的变化规律Figure 3 Changing curve of objective function

图3表示目标函数值随迭代次数的变化规律,迭代次数N为1 000.可以看出,算法刚运行的时候,由于粒子位置是随机的,故目标函数值较大,随着迭代次数的增加,粒子在不断寻优,在第200次迭代时,目标函数已趋近于0,最终收敛于同一结果,说明该算法具有很好的鲁棒性.

通过对粒子群算法三维坐标反演模型的仿真可以发现,该算法在迭代次数为1 000时,迭代时间为2.5 s左右;对比于传统的迭代算法,该算法初值随机,避免了初值选取不好对实验结果的影响;经过多次仿真之后发现,目标函数在每次迭代时虽然收敛速度有所差异,但是均能很好的收敛到同一结果,说明该算法具有很好的鲁棒性.

3.2 实验研究

为了对该算法进行验证,设计了一套孔板实验装置.实验台实物图如图4.

图4 试验台实物图Figure 4 Picture of the experimental table

在实验时取n=4,即一个发射端,四个接收端.该装置主要构成部分是两块尺寸完全相同的孔板,孔板大小为60 cm×60 cm,为配合超声波传感器的尺寸,孔选择直径为4.5 cm的圆孔.试验时,在测量装置上建立一个坐标系,由于孔板上的孔的位置已知,同时两个孔板之间的位置可以精确测量,所以固定在孔板上的超声波传感器的位置可以确定.

在进行不同坐标测量实验时,只需改变传感器在孔板上的位置即可.利用激光测距仪和三坐标测量机对孔的位置以及移动距离进行标定.在对系统进行测试时,四个接收机的位置参数选择和仿真时位置一致,即如公式(12).实验过程中可通过改变发射端位置得到不同距离不同角度时该三坐标测量系统的测量结果.为方便实验结果与仿真结果进行对比,实验时尽量选择接近仿真时坐标的点进行实验研究.

3.3 实验结果及分析

实验过程中通过不断地改变发射端的位置得到不同的测量结果,为了使测量结果更接近真实值,针对不同的测量点采取多次测量取平均值的方法,本文中的数据是重复测量20次的值,结果如表2.

表2 三维坐标测得值及误差分析

由表2可知,采用粒子群三维反演算法对超声波三维测量系统进行位置计算,结果表明x,y,z三轴的绝对误差均小于10 mm.在单个坐标20次的重复测量中发现其最大值和最小值之差不超过5 mm,由此可知,该方法具有良好的反演精度且具有极好的重复性.优于实验室前期采用传统最小二乘法反演的绝对误差20 mm[11].

4 结 语

本文提出了一种基于超声波传感器的三维坐标测量方法,建立了基于粒子群算法的三维坐标反演模型,并搭建了一套孔板式四路超声波传感器的三维坐标测量系统.通过软件仿真以及实验对该算法进行验证,仿真结果表明该算法在处理坐标反演问题时具有很好的鲁棒性,寻优结果良好;实验结果表明采用粒子群算法求解三维坐标绝对误差在10 mm以内,优于传统最小二乘法的绝对误差20 mm.本文的研究结果对于促进超声波传感器在空间测量上的应用具有积极的意义.

[1] HASHINO S,CHURCHIAN R. A blind guidance system for street crossings based on ultrasonic sensors[C]//Proceedings of the 2010 IEEE International Conference on Information and Automation. Harbin:[s. n.],2010:476-481.

[2] 杨阳,肖金红,刘智.基于超声波的室内三维定位系统[J].吉林大学学报:信息科学版,2012,30(3):267-271. YANG yang, XIAO Jinghong, LIU Zhi. Indoor three-dimensional positioning system based on ultrasonic[J]. Journal of Jilin University:Information Science Edition,2007(11):981-983.

[3] SUZUKI A,IYOTA T,CHOI Y,et al. Measurement accuracy on indoor positioning system using spread spectrum ultrasonic waves[C]//Proceedings of the 4th International Conference on Autonomous Robots and Agents. Wellington: [s. n.],2009:294-297.

[4] GALETTO M, PRALIO B. Optimal sensor positioning for large scale metrology applications[C]//Precision Engineering. Linz: Elsevier Ltd,2010:563-577.

[5] KENNEDY J, EBERHART R. Particle swarm optimization[C]//Proceedings of the IEEE International Conference on Neural Networks. Nanjing: IEEE Service Center,1995:1942-1948.

[6] 张顶学,关治洪,刘新芝.一种动态改变惯性权重的自适应粒子群算法[J].控制与决策,2008,23(11):1253-1257. ZHANG Dingxue, GUAN Zhihong, LIU Xinzhi. Adaptive particle swarm optimization algorithm with dynamically changing inertia weight[J]. Control and Decision,2008,23(11):1253-1257.

[7] 许立雄,吕林,刘俊勇.基于改进粒子群优化算法的配电网络重构[J].电力系统自动化,2006,30(7):27-30,79. XU Lixiong, LYU Lin, LIU Junyong. Modified partiele swarm optimization for reeonfiguration of distribution network[J]. Automation of Electric Power Systems,2006,30(7):27-30,79.

[8] 高传根.基于简化粒子群优化的无线传感网络节点定位算法研究[D].沈阳:辽宁大学,2013. GAO Chuangen. Study of node localization algorithm based on simple particle swarm optimization in wireless sensor network[D]. Shenyang: Liaoning University,2013.

[9] 马国庆,李瑞峰,刘丽.学习因子和时间因子随权重调整的粒子群算法[J].计算机应用研究,2014,31(11):3291-3294. MA Guoqing, LI Ruifeng, LIU Li. Particle swarm optimization algorithm of learning factors and time factor adjusting to weights[J].Application Research of Computers,2014,31(11):3291-3294.

[10] 赵志刚,黄树运,王伟倩.基于随机惯性权重的简化粒子群优化算法[J].计算机应用研究,2014,31(2):361-363,391. ZHAO Zhigang, HUANG Shuyun, WANG Weiqian. Simplified particle swarm optimization algorithm based on stochastic inertia weight[J]. Application Research of Computers,2014,31(2):361-363,391.

[11] 单良,孔明,侯蕊.一种基于超声传感器的三维坐标测量方法[J].传感器与微系统,2013,32(6):123-125. SHAN Liang, KONG Ming, HOU Rui. A three-dimensional coordinate measuring method based on ultrasonic sensor[J]. Transducer and Microsystem Technologies,2013,32(6):123-125.

A three-dimensional ultrasonic coordinate measuring method based on particle swarm optimization algorithm

KONG Ming, HAN Huanhuan, GUO Tiantai

(College of Metrology and Measurement Engineering, China Jiliang University, Hangzhou 310018, China)

High precision and good robustness for the 3D coordinate inversion algorithm is the key to realize ultrasonic measurement. The 3D coordinate inversion model based on the particle swarm optimization (PSO) algorithm was presented. The experimental study was carried out in two steps. Firstly, we validated the feasibility of the ultrasonic measurement of PSO by software simulation. Then, we set up a three-dimensional experiment platform to validate the method. The results show that the measuring absolute error is less than 10 mm, with a good retrieval precision.

ultrasonic sensor; three-dimensional coordinate measurement; particle swarm optimization algorithm

1004-1540(2015)01-0034-05

10.3969/j.issn.1004-1540.2015.01.006

2014-09-28 《中国计量学院学报》网址:zgjl.cbpt.cnki.net

国家自然科学基金资助项目(No.51375467).

TP216

A

猜你喜欢

接收端测距反演
反演对称变换在解决平面几何问题中的应用
基于扰动观察法的光通信接收端优化策略
基于ADS-B的风场反演与异常值影响研究
利用锥模型反演CME三维参数
基于多接收线圈的无线电能传输系统优化研究
一类麦比乌斯反演问题及其应用
类星体的精准测距
手机无线充电收发设计
浅谈超声波测距
基于PSOC超声测距系统设计