摘 要:定位是移动机器人最基本的问题之一。应用了迭代卡尔曼滤波(iekf)集成航位推算和全局观测信息,解决机器人的定位问题。该方法在卡尔曼滤波测量更新阶段,多次迭代计算估计状态,直到误差小于一定的阈值。减少了由于泰勒展开的截断带来的定位误差,使得算法的收敛稳定性增强。最后通过仿真实验与ekf方法比较。结果表明,iekf在移动机器人定位中是一种有效的方法。 关键词:迭代卡尔曼滤波; 误差分析; 移动机器人; 机器人定位
appliatin f iterated kalan filtering in rbt lalizatin
lng hui1, hu li2, zhu yan-yu3
(1.hunan bilgial and eletrehanial plytehni, hangsha 410126, hina;2.hunan intelligent ntrl syste pany, hangsha 410001, hina;
3.llege f infratin engineering, entral suth university, hangsha 410075, hina)
abstrat: lalizatin is ne f the st fundaental prble in bile rbts. the lalizatin prble as slved by iterated extended kalan filtering (iekf) by bining the rekn referene and glbal bservatin infratin. in the easureent update phase f kalan filtering, the state estiatin is iterated any ties until estiatin errr is ler than the threshld and lalizatin errr arused fr taylr expand is redued effetively. the nvergent stability as iprved by the ethd. finally, iekf and ekf ethds are pared. the siulatin result shs that iekf is an effetive ethd in lalizatin f bile rbts.keyrds: iterated kalan filtering; errr analysis; bile rbts; rbt lalizatin
0 引 言
定位是自主机器人导航当中最基本的问题之一[1],对于一个自主机器人系统,精确的空间定位是其实现自主导航的前提。lenard和 durrant-hyte 把导航问题归结为3个子问题[2],包括回答“我在哪里?”,“我要去哪里?” 和“我怎样到达那里?”。其中第一个问题就是定位问题。如果机器人没有获取自身的位置,就无法进行后续的目标识别和路径规划。现有大多数定位方法的关键是通过融合内部传感器的测量信息与外部传感器的测量信息,以减少过程噪声和传感器的测量误差,得到更精确的机器人位置信息。
kalan滤波[3]是一种线性无偏最小方差估计,采用时间递推得到的,模型简单,数据存储量小,特别适用于计算机应用,已被广泛应用于航天、航空、航海、系统工程、通信等多种领域状态的估计和控制中。
1 问题描述
在二维空间,移动机器人的位置可以用3个变量表示(x,y,θ)[4],其中x,y和θ分别表示机器人的位置坐标和方位角。机器人具有的运动模型如下:
x(k+1)=f[x(k),u(k),(k)]
=x(k)y(k)θ(k)+δd(k)s[θ(k)+δθ(k)/2]
δd(k)sin[θ(k)+δθ(k)/2]
δθ(k)(1)
z(k)=h[x(k),v(k)](2)
式中:x(k)为系统在k 时刻状态; z(k)为k 时刻状态变量的观测量; u(k)=δd(k)
δθ(k)为系统的控制输入;δd和δθ为k到k+1时刻机器人的相对位移和运动方向;(k)和v(k)分别为高斯加性过程噪声和测量噪声,且具有如下的统计特性:
e[v(k)]=e[(k)]=0;
e[v(k)vt(j)]=q(k)δ(k); j=k
e[(k)t(j)]=r(k)δ(k); j=k
e[v(k)t(j)]=0(3)
机器人运动过程和观测过程均受到随机高斯白噪声干扰,在此的目的是根据系统方程和观测方程,并结合噪声统计特性及给定的初始位置估计机器人的位置,机器人位置如图1所示。
图1 机器人位置示意图
2 迭代扩展卡尔曼滤波定位
2.1 扩展卡尔曼滤波
卡尔曼滤波是由r.e. kalan于1960 年提出的,它是一种简单有效的线性最优递推估计算法,可估计带噪声的线型动态系统状态。然而,假设卡尔曼滤波器是线性系统,但实际上机器人的运动模型与观测模型是非线性的。因此通常采用扩展卡尔曼滤波器(extended kalan filter,ekf),并通过一阶泰勒展开来近似非线性模型。依据urran [5]综合航位推算、超声和红外传感器数据,提出了基于ekf的定位和运动控制算法。为了简化定位算法,jensfelt和hristensen[6]应用加权霍夫变换算法提取了环境特征,采用最小化环境特征模型和激光雷达数据,建立了基于ekf的位姿跟踪算法。基于ekf的滤波算法分为时间更新和测量更新2个阶段,具体步骤如下:
未完...点击下方链接下载完整文档