APP下载

基于粒子群算法的拉线位移传感器三维坐标测量*

2017-11-30杜泽峰刘湛基李沅时

组合机床与自动化加工技术 2017年11期
关键词:基准点拉线乘法

杜泽峰,王 晗,刘湛基,李沅时

(广东工业大学 机电工程学院,广州 510006)

基于粒子群算法的拉线位移传感器三维坐标测量*

杜泽峰,王 晗,刘湛基,李沅时

(广东工业大学 机电工程学院,广州 510006)

文章提出了一种基于粒子群算法(PSO)的拉线位移传感器测量系统的方法来用于测量空间三维坐标,分析了测量系统的目标函数,建立了粒子群算法求解三维坐标的数学模型,通过软件仿真验证了粒子群算法在拉线位移传感器测量系统上的可行性。最后,搭建了拉线位移传感器三维测量系统平台并进行实验,同时与最小二乘法计算三维坐标作比较,实验结果表明,粒子群算法在基于拉线位移传感器测量系统计算三维坐标中简单易于实现、鲁棒性好和对迭代初值不敏感等优点。

粒子群算法;拉线位移传感器;三维坐标测量

0 引言

随着科技的发展,现代的产品都在追求高质量的制造和高效率的生产,各种复杂的零件在生产和研制过程都需要精密的测量仪器,其中三维坐标测量起到了极为关键的作用[1]。目前,常用的三维坐标测量系统主要有三坐标测量机[2]、关节式坐标测量机[3]、双经纬仪系统[4]、激光跟踪仪系统[5]以及视觉测量系统[6]等。其中,三坐标测量机结构复杂、价格昂贵、探针必须与物体相接触等,不能满足快速现场测量的需要;关节式坐标测量机关节的相对运动不够精确,且测量范围受臂长的限制;激光跟踪仪系统成本高,可能也需要多个测量设备,无法大范围进行推广使用;视觉测量在三维重建和三维重构问题上仍然是目前研究的重点,如何提高多目视觉测量速度也是一个亟待解决的问题。

因此,随着测量技术的发展,急需找到一个测量速度快、精度高、成本低的三维测量系统。基于拉线位移传感器的空间三维坐标测量系统是一种三维坐标测量的新方法,该方法用多路传感器进行计算三维坐标,Dynalog 公司在2001年开发了这一产品,但国内对于该方法的研究很少。文献[7]装置利用数值迭代算法进行三维坐标计算,该算法首先需要初值,其次对于每次计算都需要求解一个三元二次方程组不易于计算机实现;文献[8]装置利用几何关系求解三维坐标,对于系统初始状态要求很高的精度且很难得到全局最优解。本文基于拉线位移传感器测量三维坐标的装置,提出了粒子群算法计算三维坐标的方法,该方法简单易于计算机实现,精度比传统的最小二乘法高且具有很好的鲁棒性以及对初值的选取不敏感等优点。

1 拉线位移传感器测量系统构建

1.1 拉线位移传感器测量系统原理

在本文测量系统使用时,可将传感器安装在一固定位置(基准点Xi,Xi=(xi,yi,zi))上,拉线末端连接在移动物体上,物体运动到一位置X(x,y,z)就能输出得到该被测物体到基准点的距离li。即空间距离方程可表示为:

li2=(x-xi)2+(y-yi)2+(z-zi)2

(1)

式中,i=1,2…,n。n为基准点。

若给定一被测点,由式(1)可知,需要至少3个距离方程可解得空间三维坐标。所以,当拉线位移传感器作为基准点去测量空间三维坐标时,至少需要3个。但由于测距方程包含误差项(包括系统装置误差、传感器测量误差、系统振动误差等)[9],估计被测点的坐标也可以看做是一个最优化问题。因此,本文采用四个拉线位移传感器做为基准点,系统的测量原理图如图1所示,被测点X(x,y,z)与四个基准点(A,B,C,D)相连接。

图1 测量系统的数学模型

基准点A,B,C,D的空间位置坐标为已知值(xi,yi,zi),其中i=1,2,3,4。

1.2 测量系统目标函数

由前所述,可得到四个距离方程:

(2)

求解以上方程组问题本质上是一个非线性最优化问题:

(3)

即求目标函数F(X)的最小值。

2基于粒子群算法的拉线位移传感器三维测量流程与仿真分析

2.1 粒子群算法原理和数学描述

1995年,Kennedy和Eberhat模拟了鸟群觅食行为[10],其优化算法如下简述:

假设目标搜索空间的维数为D维,种群S={X1,X2,…,XN}的粒子数为N,其中第i(i=1,2…,N)个粒子的位置Xi=(xi1,xi2,…,xiD);飞行速度:Vi=(v1,v2…,vD);该粒子个体经历的最好位置:pbesti=(pi1,pi2,…,piD);在整个粒子群中,所有粒子搜索到的群体当前的最佳位置:gbest=(g1,g2,…,gD)。每个粒子都通过pbesti和gbest来不断地更新自己,从而产生新一代的群体。即:

(4)

(5)

其中的参数及作用分别表示为:

c1,c2-分别表示粒子自身加速度权重系数和群体加速度权重系数c1,c2是学习因子,它们的作用是调节学习最大步长,让粒子达到整体最优状态,使得粒子逐渐向自己的历史最优点和群体最优点靠近,通常取值范围[0,2]。

r1,r2-两个随机函数,取值范围[0,1],有利于保持群体的多样性。

ω-惯性权重,非负数。作用是调节对解空间的搜索范围,用来平衡算法的全局搜索能力和局部搜索能力。

同时,为了防止粒子远离搜索空间,确保充分搜索,设定粒子的最大速度Vmax。当粒子的最大速度超过Vmax时,速度将被限定为Vmax,通常取Vmax=kXmax,0.1≤k≤1.0。

2.2 粒子群算法的基本步骤和流程

粒子群算法算法的步骤如下:

(1)初始化。包括粒子数N,维数D,粒子的位置Xi和速度Vi;

(2)根据适应的函数,计算每个粒子的适应度fitness(Xi);

(3)对每个粒子,将其当前适应度fitness(Xi)与自身历史最佳位置pbesti对应的适应度fitness(pbesti)作比较,如果fitness(Xi)< fitness(pbesti),则将当前的位置更新为该粒子历史最佳位置pbesti;

(4)对每个粒子,将其当前适应度fitness(Xi)与全局最佳位置gbest对应的适应度fitness(gbest)作比较,如果fitness(Xi)< fitness(gbest),则将当前的位置更新为该群体全局最佳位置gbest;

(5)根据公式(4)、公式(5),更新每个粒子的位置和速度;

(6)如果得到的适应度值满足预先设定的阈值或算法达到最大迭代次数K时,则停止;否则返回第二步。

PSO算法的流程图如图2所示。

图2 粒子群算法流程

2.3 数值仿真分析

根据系统模型可知,在测量时,测量系统基准点的坐标恒定不变。假设四个基准点的位置为:

(6)

为了验证粒子群算法在拉线位移传感器测量系统装置的可行性,现设定空间8个不同点(空间)的三维坐标值,通过式(1)反演出在对应坐标位置下的拉线位移传感器理论距离li,(i=1,2,3,4)。然后利用matlab粒子群算法mypso.m程序进行仿真求解三维坐标。同时,在li下添加5mm的随机误差进行仿真。其中,粒子群算法参数设定如下:适应度函数为式(3),最大迭代次数K=1000,搜索空间维数D=3(未知数个数x,y,z),初始化群体粒子个体数目N=50,惯性权重系数ω=0.9,粒子的最大速度Vmax=3,学习因子c1=c2=2。两种情况下的粒子群算法仿真结果如表1、表2所示。

表1 传感器理论距离下的粒子群算法三维坐标仿真值(单位:mm)

表2 添加5mm传感器理论距离的随机误差下的粒子群算法三维坐标仿真值(单位:mm)

由表1可以看出,当采用空间正方体坐标反演出的理论距离li进行仿真时,用粒子群算法求得的三维坐标相对误差很小,最大误差在0.0006mm内。由表2可以看出,当在理论距离li下添加5mm的随机误差,算出的最大三维坐标误差为6.1772mm。同时,粒子群算法在迭代200次左右,迭代时间2.2s左右时收敛。且该算法的初始值随机给定,相对于传统迭代算法对初始值的敏感性,该算法有明显的优点,如有很好的鲁棒性和易于计算机实现。因此,粒子群算法用于本拉线位移传感器测量三维坐标系统是可行的。

3 实验验证与分析

为了进一步验证粒子群算法和拉线位移传感器测量三维坐标,本文设计了如下实验装置。

图3 拉线位移传感器测量系统

如图3所示,将四个传感器安装在标定好的底座上,通过出丝装置将拉线末端连接在拉线适配器上,组成整个拉线位移传感器测量系统。拉线适配器固定到机器人法兰上。同时激光跟踪仪的靶标固定在和适配器连接的法兰上。实验过程如下:

示教机器人,使机器人运动到如图4所示路线的8个正方体顶点,正方体的边长分别为250×250×250mm。如图4所示按路线重复走10次,且在每个顶点位置停顿5s并记录拉线位移传感器的读数和激光跟踪仪的读数,最后取平均值,然后得到顶点间的实际距离。

图4 示教机器人行走路线

同时,本文加入最小二乘法测量三维坐标的方法,与粒子群算法在本测量系统测量三维坐标作比较,两者的实验结果如下:

3.1 最小二乘法计算三维坐标实验结果

为解决式(2)非线性方程组问题,最小二乘法尤为经典。其解得的未知测量点的位置估计为[11]:

X=(ATA)-1ATL

(7)

其中,

(8)

X=[xyz]T

(9)

(10)

实验结果如表3所示。

表3 最小二乘法测量三维坐标实验结果(单位:mm)

3.2 粒子群算法计算三维坐标实验结果

如2.3节方法,粒子群算法测量三维坐标实验结果如表4所示。

表4 粒子群算法测量三维坐标实验结果(单位:mm)

3.3 实验结果分析

由实验数据表3、表4可以看出,最小二乘法计算的三维坐标的最大误差13.3413mm,粒子群算法计算的三维坐标最大误差3.2390mm。且由图5可知,最小二乘法计算得到的距离误差不稳定,虽然某些测量距离相对粒子群算法得到的误差更小,但普遍测距数值较为震荡,这与该算法线性化过程损失了一定的精度有关[11]。粒子群算法计算得到的距离误差更稳定,也体现出改算法在本测量系统中的良好的鲁棒性。

图5 最小二乘法和粒子群算法计算三维坐标比较

因此,基于粒子群算法的拉线位移传感器测量三维坐标系统是可行的,且优于最小二乘法。粒子群算法产生偏差的原因可能与系统结构安装误差、出线装置和拉线接线头装置加工误差、拉线位移传感器自身精度误差等因素有关。

4 结论

本文基于粒子群算法,提出了一种拉线位移传感器测量系统测量三维坐标的方法。仿真分析了粒子群算法计算三维坐标的可行性。最后,通过实验平台计算得到系统测量三维坐标点间的距离,通过与激光跟踪仪做对比,最大误差为3.2390mm,且优于最小二乘法。最后,分析了误差来源。实验证明,粒子群算法在基于拉线位移传感器测量系统计算三维坐标简单易于实现、鲁棒性好和对迭代初值不敏感等优点。后续将改进系统自身的精度以及添加粒子群算法的惯性权重函数来提高全局搜索能力进一步减小测量误差。

[1] 裘祖荣, 石照耀, 李岩. 机械制造领域测量技术的发展研究[J]. 机械工程学报, 2010, 46(14): 1-11.

[2] Coordinate measuring machines and systems[M]. CRC Press, 2016.

[3] 程文涛. 关节式坐标测量机标定技术研究[D]. 合肥: 合肥工业大学, 2011.

[4] 周富强, 张广军, 江洁, 等. 现场双经纬仪三维坐标测量系统[J]. 机械工程学报, 2004, 40(1): 165-169.

[5] Guoxiong Z, Yongbing L, Xinghua L. Four-Bearn Laser Tracking Interferometer System for Three-Dimensional Coordinate Measurement[J]. Acta Optica Sinica, 2003, 23(9): 1030-1036.

[6] 张旭苹,汪家其,张益昕,等. 大尺度三维几何尺寸立体视觉测量系统实现[J].光学学报,2012,32(3):140-147.

[7] 成世良.基于拉线传感器的工业机器人标定系统设计[D]. 哈尔滨:哈尔滨工业大学,2014.

[8] 龚成,陈文亮,张得礼. 基于拉线位移传感器的动态空间位置测量方法[J]. 机械设计与制造工程,2014(3):57-61.

[9] 伍沛刚,张鹏,周献琦. 拉线式位移传感器误差来源的初步分析[J]. 工业计量, 2014(1):61-62.

[10]Kennedy J, Eberhart R. Particle Swarm Optimization [C]// IEEE International Conference on Neural Networks, 2002:1942-1948.

[11] 吕睿,阳宪惠. 减少无线传感器网络节点定位误差的方法[J]. 清华大学学报(自然科学版),2008,48(S2):1839-1843.

Three-DimensionalCoordinateMeasurementofCableDisplacementSensorBasedonParticleSwarmOptimization

DU Ze-feng,WANG Han,LIU Zhan-ji,LI Yuan-shi

(School of Electromechanical Engineering, Guangdong University of Technology, Guangzhou 510006, China)

In this paper, a method of the cable displacement sensor measurement system based on particle swarm optimization (PSO) is proposed to measure the spatial three-dimensional coordinates. The objective function of the measurement system is analyzed. A mathematic model of PSO for 3D coordinates is established. The simulation results show that PSO is effective in the cable displacement sensor Measurement system on the feasibility. Finally, a three-dimensional measurement system platform of cable displacement sensor is built and experimented, and the three-dimensional coordinates are compared with least squares method. The experimental results show that the PSO algorithm is simple, easy to implement, good robustness and insensitive to iterative initial value in the calculation of 3D coordinates based on cable displacement sensor measurement system.

particle swarm optimization; cable displacement sensor; three-dimensional coordinate measuring

1001-2265(2017)11-0084-04

10.13462/j.cnki.mmtamt.2017.11.022

2017-01-13;

2017-02-16

广东省前沿与关键技术创新专项资金(2015B010124001);东莞市产学研项目(2013509109101);广东省科技计划项目:协同创新与平台环境建设(2015B010102014);“广东特支计划”科技青年拔尖人才项目(2014TQ01X212);广东省高等学校优秀青年教师培养计划(YQ2015056);广东省自然科学基金( 2015A030312008);佛山市科技计划项目(2015IT100152);广东省科技计划应用型科技研发专项资金项目( 2015B090921007)

杜泽峰(1991—),男,湖北鄂州人,广东工业大学硕士研究生,研究方向为精密测量仪器,(E-mail)zefengdut@163.com。

TH721;TG506

A

(编辑李秀敏)

猜你喜欢

基准点拉线乘法
算乘法
特高压单柱拉线塔的静力稳定性分析
建筑日照设计中基准点相关问题的探讨
我们一起来学习“乘法的初步认识”
架空配电线路拉线绝缘子安装设置规范性探讨
《整式的乘法与因式分解》巩固练习
把加法变成乘法
浅析建筑物的沉降观测技术及方法
深基坑监测技术的应用与探讨
浅析沿海风电场集电线路水泥杆塔拉线的维护管理