您的当前位置:首页基于SLAM的水下导航算法及仿真分析

基于SLAM的水下导航算法及仿真分析

2023-04-20 来源:爱问旅游网
第29卷第10期 仪 器 仪 表 学 报 Chinese Journa】of Scientific Instrument Vo1.29 No.1O 2008年l0月 0ct.2008 基于SLAM的水下导航算法及仿真分析术 孙枫 ,王文晶。,刘付强 ,朱哈尔滨怡 150001; (1哈尔滨工程大学自动化学院2北京空问飞行器总体设计部摘北京100094) 要:起源于移动机器人定位的同步构『皋【定位(simultaneous localization and mapping,SLAM)算法可以克服基于先验网的水下 导航算法的 足,实现水卜载体的自主导航。本文给出了基于SLAM算法的水下导航算法的系统构建和执行过程,建立了状态 方程和观测方程,讨论了新特征加入的问题,并利用模拟数据进行了仿真。仿真结果表明,无论是采用航渡还是区域探索航行 方式,该导航算法的定位精度均高于 纯推位方法,具有广阔的应用前景。 关键词:水下导航;同步构冈定位;扩展卡尔曼滤波;仿真 中图分类号:TP301 文献标识码:A 国家标准学科分类代码:510.80 Underwater navigation algorithm based on SLAM and its simulation analysis Sun Feng ,Wang Wenjing ,Liu Fuqiang ,Zhu Yi’ ( Automation College,Harbin Engineering University,Harbin 150001,China; 2 Bering Institute of Spacecr ̄&stem Engi ̄ering,Beijing 100094,China) Abstract:The simultaneous localization and mapping algorithm,which is originated from mobile robot localization, can overcome the disadvantages of the underwater navigation methods based on prior maps,hence realize true auton— omous navigation of the underwater vehicles.The constuction and executrion of the underwater navigation system based on SLAM are introduced.and the state equation and observation equation are established.Furthermore,the issue of adding new features is discussed.and simulation data are used to test the system performance.Simulation results show that the algorithm can achieve better precision than pure dead—reckoning in both straight sailing and local searching patterns,and has a wide application prospect. Key words:underwater navigation;simultaneous localization and mapping;extended Kalman filter;simulation 足,开拓了无图导航的新方向,有望为水下导航开辟一条 1 引 言 新的途径。 同步构图定位(simultaneous localization and mapping, 地球物理导航是上世纪末期出现的新型水下导航方 SLAM)算法的雏形是由Smith、Self和Cheeseman 于20 法,主要包括地磁导航、重力导航、地形导航等。虽然地 球物理导航方法可以达到很高的导航精度,但是由于它 们属于基于先验图的导航方法,导航精度受先验图测绘 精度的影响很大,且航行区域受到先验图大小的限制。 20世纪末发展起来的同步构图定位算法,克服了上述有 图方法易受先验图测绘精度和实时测量精度影响的不 收稿日期:2007-05 Received Date:2007-05 世纪80年代提出的,最先用于陆上机器人的导航。该算 法主要是在运载体运动时预测自身位置,并依靠对周围 环境的感知即对位置保持不变的“特征”或称“路标”的 测量,通过滤波估计来修正运载体和特征的位置估计,在 实现对运载体导航的同时,构造用这些特征表示的精确 的环境地图。目前,算法的应用已不仅仅局限于室内 基金项目:国家自然科学基金(60775001)资助项目 第l0期 孙枫等:基于SLAM的水下导航算法及仿真分析 2073 环境,而是进一步延伸到了室外 、水下 和航空 环 境。本文着重研究基于SLAM的水下导航应用方法。 AX=【 Ay△ ]r,协方差为△P,则由坐标变换公 为: 式可知,航行器预测位置 2水下SLAM导航算法描述 与日常生活中用江河、湖泊、街道、房屋等标志性建 筑表示地图的方法类似,告水F航行器具有通过自身携 带的传感器感知周围环境・Il明显的静止物体的能力,诸 如珊瑚礁、水下建筑、失事船等,则可将这些显而易见的 物体提取为二维点特征,用这些二维点特征在全局坐标 系下的位置作为“路标”,由此构成一幅可描述当前水下 环境的“特征地图”。 为此,算法首先定义了一个全局坐标系作为基准坐 标系,它是以航行器的初始位置为原点、以东向为 轴而 建立起来的二维直角坐标系,航行器状态及地图状态均 是在这个坐标系下表示的。航行器状态用航行器在全局 坐标系下的位置和航向表示为X =[ Y ] ,协方 差为P 把航行器观测到的所有特征组成另一个地图状 态向量 即X  ,= [F … F ]。 = [ 。Y. … Y ] ,协方差为P 。由于航行器一边 航行一边观测特征,每一时刻都可能有以前未观测过的 新特征进入视野,在观测到新特征后需要将新特征也加 入到地图向量中,故而地图状态 的维数不固定,可用 新特征的位置对其进行扩维。为使航行器和地图相关并 在卡尔曼滤波的框架下对航行器和特征的位置同时进行 更新,算法定义了一个系统联合状态向量 ,其维数可随 的变化而作相应扩展。系统向量及其协方差矩阵分 埘为: ]’P_ 状态协方差P的各部 分体现了航行器状态之间、航行器与特征之间、特征与特 征之间的相关性,是将航行器状态与地图特征状态联系 起来的桥梁和纽带。正是凶为协方差矩阵P能够保持这 种相关性,才保证了算法生成的特征地图的收敛性。 3系统执行过程 算法的执行是一个递推的过程,可以分为2个阶段: 预测(时间更新)阶段和修正(测量更新)阶段 ,具体流 程如图1所示。 3.1状态方程的建立 水下航行器首先通过自身携带的推位传感器如 测速、测向仪器等,测量航行器在相邻时刻的状态变 化量,建立系统的状态方程,预测自身位置。例如,若 航行器状态改变量用相邻时刻的航向改变量以及在 航向方向上和垂直航向方向上的距离变化量表示为 罔1导航算法执行过程 Fig.1 Schematic of SLAM algorithm implementation :[ Y 】 =-厂(X ,AX)= r量 +Axcos 一Aysin ] l多 +Axsin +Aycos I (1) L +△ J 认为环境中的特征静止不动,因此,系统状态中的特 征部分不发生改变,故特征预测位置可表示如下: =X (2) 结合式(1)和式(2),系统预测状态向量 一可表 示为: r 1 X- 【 J g ( ) 其状态预测协方差P一为: P一=Vg PVg T十Vg△ △PVg (4) 式中:Vg 代表g关于AX在估计(X,AX)处的雅可比矩 阵,其余表示方法类似,以后不再赘述。 3.2建立观测模型 在预测自身状态的同时,航行器利用外部传感器如 水下照相机、侧扫声纳、前视声纳、合成孔径声纳等感知 周围环境是否存在特征,得到一些量测值。这些量测可 能产生于系统状态变量中已有的特征(即以前观测过的 特征),也可能来源于新的特征(即尚未观测过的特征), 还可能是虚警(因测量传感器存在误差导致)。产生来 源不同,对量测的处理方法也不同:只有那些已有特征的 2074 仪器仪表学报 第2 9卷 量测_『用了滤波更新过程;新特征的量测需要转换后加 入到状念向量中,成为地图巾新的成员,具体见3.3节; 而虚警则 接从量测集中剔除,不予考虑。因此,需要将 量测量与已有特 进行匹配,考察量测的来源,以确定该 量测的用途,这一过程就被称为数据关联过程..数据关 联完成后,利用与已有特 关联上的观测量通过扩展卡 尔曼滤波来对状态进行更新,可实现对航行器和特征位 置的同时修rF。 没航行器利用外部测量传感器得到的量测量为各特 征相对于当前航行器的方位和距离.例如可设在 时刻 获得的・个量测为Z=[r 0] 。若确定了该量测与状态 变量中某个已存在的特征F =( , ) 关联,则根据预 测航行器他置和特 F 位置,可得到估汁观测模型为: 『 (王 --,):+( 一 !] z= …( )-6 j 其测量方差为R。则测量新息I,: =Z—Z (6) 新息协 : S=V h P V h:+R (7) 卡尔曼增益'’,: W=P—V h:S。。 (8) 更新后的位置 和协方差P : X =X一+Wv (9) P =P一一WSW (10) 通过式(5)~(10),就【1I以利用测量完成对航行器 状态和特征状态的同步更新过程。若没有观测到新的特 ,则可以进入下一时刻状态预测和更新的迭代递推过 程;否则,必须进行扩维,实现地图的自动扩展。 3.3新特征的加入 存航行器运动过程中,它不断探索新的环境并发现 新的特征, 此存完成对已有特征的更新后,需要对其状 态变量进行扩维处理,将新特征加入到状态中去,建立航 行器状态及地图已有特征与新特征间的关系,以构造精 确、收敛的地图。 设已确定量测Z=[r 0] 来源于一新特征,则可将 新特征存全局坐标系下的位置表示为: r +#'COS(0+(b )1 。=“( z)=I【 +rsin(0+¥ )JI  (11) 将新特征加入到系统特征向量中,扩充后的新系统 状态向量和协方差分别为: = 。(12) r P 尸: P ] P:。l P P P_ I (13) L P P P . 式中: 为观测方差,P =ViixP P =V H p r,P: ,。rv Ux PV+ V比: RV H 。 ,通过加入新的特元素,算法实现_r地图的逐步自 动扩展,使导航免受航行区域大小的限制,这也是无图方 法相比丁有图方法的优点之一。 4仿真结果及分析 为验证算法精度,利用MATLAB软件对水下航行器 分别采用区域探索和航渡这两种方式航行的情况进行了 仿真,根据仿真结果分析算法性能。 4.1区域探索试验 区域探索仿真环境设为一片200 ill×200 Ill的海域, 该范同内均匀分布着16个点特征。针对区域探索航行 方式的特点,假设航行器从区域的(50 m,50 m)位置处 发,沿边长为100 Ill的正方形轨迹以匀速5 m/s逆时 针航行,即每80 S绕区域1周,共绕区域航行 5周,总 运行时间为400 S。 航行器携带的传感器视野可覆盖以自身位置为中 心、半径100 m内的前方半圆形区域,测量频率为1 Hz。 设传感器无虚警,测量值存在高斯随机误差,其距离测量 误差均值为零,方差为0.25 m ,方位测量误差均值也为 零,方差为2.25×10 rad 。航行器推位过程中同样存 存均值为零的高斯随机误差作用。 方向距离、Y方向距 离和航向的误差方差分别为1 Ilq 、1 Ill=和5.29 X 10一 tad 。 用航行器第一次观测到的所有特征位置对地图向量 进行初始化。设航行器的初始位置和方位存在偏差, 为X, =[52.1 48.3 0.008]’,初始航行器协方差矩阵 『20 0 0 ] 和观测方差阵分别为:P =ll  0 200 0 0. 0 l001 J , R= 。. 图2是单纯推位得到的航行器航行5周的航迹,图3 是相应的误差曲线。在与单纯推位同样的航行器状态预 测误差作用下,利用基于SLAM的导航算法得到了另一 组定位结果,如图4所示。 第10期 孙枫等:基于SLAM的水下导航算法及仿真分析 2075 尽 罔2推位航迹 Fig.2 Dead—reckoning trajectory 60 40 2O 0 20 0 50 100 l5O 200 250 300 350 400 0 5O lOO l5O 200 250 300 350 400 时间/s 3网2对应的推位误差变化曲线 Fig.3 Dead—reckoning error for fig.2 2O0 180 160 140 120 景100 80 60 4O 2O 0 x/m 罔4 域探索方式,航行器真实、 推位、滤波位置及特征地图 Fig.4 Vehicle real position,dead—reckoning position, ifltered position and feature map in area reconnaissance mode 图4中圆圈、方块和五角星分别代表最后1周(即最 后80 s内)的航行器真文位置、单纯推位和SLAM滤波后 的位置。凶为单纯推位和SLAM滤波中的航行器状态预 测误差相同,从这两条轨迹的对比,可以很自然地得出这 样的结论,即经过SLAM滤波环节后得到的定位精度要 大大高于无滤波的单纯推位方法。 吸/ 匠椒 pEI/粼 足 图5是经SI AM滤波后航行器状态估计误差及误差 2o"边界的变化曲线。由于航行器的位置和方位误差在 零值附近小幅变化,且始终未超出由20"协方差边界定义 的95%置信界限,说明算法十分稳定,滤波性能良好。 由此可以看出,若航行器可以重复探索区域,在此过程中 对区域内的特征进行多次观测,则航行器状态可以达到 误差有界 g 10 5 0 雹 5 10 0 50 l00 150 200 250 300 350 400 1 j;1lj _叵.1 0. 0.0  I篡 厦一0.0 5}r、^ 、、r 接一0 l l: ..............。................ ......... ..... .................................................. ................ ......一 0 50 1O0 l50 200 250 300 350 400 时问/s 冈5航行器状态误差及20"协方差边界变化曲线 5 5 O Fig.5 Vehicle estimation error and 20"eovariance bounds {l 娶。 0 5O 1O0 15O 200 250 300 350 400 冈6特征1~4的估计误差变化曲线 Fig.6 Estimation errors for feature 1—4 图4中均匀散布在整个仿真区域内的l6个三角形是 仿真设定的特征位置,星号是仿真结束时的特征估计位 置。将地图中的特征按其首次被观测的次序编号,分别位 于(90 m,125 m)、(145 m,20 m)、(125 m,100 il1)和 (80 m,35 m)处的4个特征均是最先被观测到的,将它们 依次标记为特征1-4,图6给出了其估计位置与真实位置 之间误差随时间变化的曲线。可以看出,经过第1圈探索 即80 s之后,由于对系统状态中已有的特征进行再次观 测,各特征的误差变化幅度开始减小,在探索3圈即240 s 之后,各特征误差逐渐趋于一个恒值,但不趋于O。这个常 值误差是由航行器状态初始不确定度产生的”j。 2076 仪器仪表学报 第2 9卷 E 面 糕 犍 一一 k 一臂‰ 一蝴 一“ 一肚^州 一 Im一 一一~一’一1 0 50 100 I 50 200 250 300 350 400 O 2 童0 。。 _1)_l 0.2 0 50 100 150 200 250 300 350 400 时间/s 罔7 区域探索方式 的新息序列 F ig.7 Innovation series in area reconnaissance mode 图7足新息随时间的变化曲线。观测新息均值为0 的现象冉次蜕明了SLAM导航算法是具有收敛性的。 4.2航渡试验 航渡试验的仿真环境设为一片l 200 m×l 200 n 的 海域,该区域内随机分布着120个特征。航行器从(10 ITI, 4OO n1)处以恒速10 nVs沿 轴方向直线运动了100 S。设 使用的推位及测量传感器、所添加的推位及测量随机噪声 的类型和指标均与4.1节文验相同,不同之处仅在于测量 传感器的 程选用大量程250 I]1。航行器初始状态为 X =[1l。4 399.2 0.01 。 存图8所示的推位误差作用卜,得到了如图9和图 j0所示的定位结果。图9中图例与图4完全相同。由这 组图像可以看出,算法大幅减缓了定位误差的增长速率, 其对航行器位置和方位的修正是卓有成效的。即使在推 位得到的结果已经极其不可靠的情况下,由SI AM获得 的估计还是可以令人满意的。 {20 10 苣0 -l0 鳓飘100 }一一一—// /——一  50 —商— —布— —斋— — 0 焉0.3 差.0 .0 j0 2O 3O 40 50 60 70 80 9O 1OO 时间,s 罔8推位误差变化fffl线 Fig.8 Dead—reckoning errors in straight line trajectory 罔9航渡方式,航行器真实、 推位、滤波位置及特征地罔 ¨g.9 Vehicle real position,dead—reckoning position. filtered position and feature map in straight line trajectmw 暑 宴 歪 0.1 r -IX 一0.05U 三至乏 至三圣一~一 墨一0.I L—— ——— ——— ———..——— —— ——— ——— ——一 0 10 20 30 40 5O 时间,s 罔l0航渡方式,航行器状态误差 及20"协方差边界变化 线 Fig.10 Vehicle estimation error and 2盯covarianee bounds in straight line trajectory 下面对图8~l0进行具体分析。理论上讲,根据式 (1),在Ax和by随机误差量级相同的情况_卜,经式(1) 运算后得到的 , 的误差增长速率通常要比互 大。多次 仿真结果也不约而同地证明了这一点:如图8所示,推位 中',方向误差要远远大于 方向误差。由于好的推位也 会得到相对较好的滤波效果,因此,图l0中 方向的滤 波效果要优于y方向。这就是当航行器沿 方向直线航 行时,滤波后通常 方向误差变化很小、而Y方向误差增 大的原因所在。 在整个航行过程中共观测到了48个特征,图ll是 仿真结束时的各特征估计误差,特征序号标记方法同4.1 节。由于航行器始终沿一个方向航行,对每个特征只能 进行有限次观测,因此随着航行器定位误差缓慢增长,后 第l0期 孙枫等:基于SLAM的水下导航算法及仿真分析 2077 观测到的特征估计误差也相对较大。如图l l所示,大序 号特征估计误差总体上要大于小序号特征的误差。 g 鞭 七 特征序号 l 1特征估计误差 Fig.1 1 Estimation error for observed features 需要说明的是,因为仿真目的是验证算法可行性,故 4.1~4.2节中所有仿真结果都是在数据关联完全正确 的条件下给出的。事实上,由于水下实际情况的复杂性 和测量误差的影响,测量与特征问很可能产生错误的数 据关联,一旦发生较为严重的错误关联,将导致滤波不稳 定甚至发散。此外,当工作范围很大、环境特征数目过多 时,系统状态维数的快速增长将使滤波过程中的矩阵计 算复杂度迅速膨胀,这会对处理器提出过高的要求。 此,如何提高算法的鲁棒性、容错性以及实时性,将是今 后研究的重点。 5 结 论 本文概述了同步构图与定位算法的原理,建立了系 统状态方程和量测方程,利用扩展卡尔曼滤波对算法进 行了仿真。针对水下航行器两种常用的航行方式即区域 探索和航渡方式,利用仿真结果证明了在同样的导航测 量干扰误差作用下,尽管误差的累积作用导致了单纯推 位方法的导航结果不可靠,但是由基于SLAM的水下导 航算法获得的导航定位精度却远高于推位精度,且表现 出了良好的收敛性,证实了基于SLAM的水下导航算法 的巨大应用潜力。尽管如此,数据关联模糊度和算法复 杂性却有可能引起算法的不稳定以及在线执行的困难, 在算法改进方面仍有很多工作需要完成。 参考文献 SMITH R,SELF M,CHEESEMAN P.Estimating nncer— tain spat—ial relationships in robotics[A].Proceedings of Conference on Uncertainty in Artiifcial Intelligence[C]. 1988:435-461. [2] LI M H,HONG B R,CAI Z S,et a1.Novel rao—black一 wellized particle filter for mobile robot SLAM using mo— noeular vision『J].International Journal of Intelligent Technology,.2006,1(1):63—69. [3] CHRISTIAN B,OLIVER W,BERNARDO W.Using 3 D laser range data for SLAM in outdoor environments[A]. Proceedings of the 2003 1EEE/RSJ Int.Conf.on lntelli— gent Robots and Systems[C].2003:188—193. [4] IOSEBA T R,SEBASTIEN D R.Concurrent mapping and localization using sidescan sonar l J].IEEE Journal of Oceanic Engineering,2004,29(2):442456. [5] JONG H K.SALAH S.Airborne simuhaneous loealiza— tion and map Building[A].Proceedings of the 2003 lEEE International Conference on Robotics&Automation 『C].2003:406-411. [6] HUGH D W.TJM B.Simultaneous localization and map— ping:Part I[J].1EEE Robotics&Automation Magazine, 2006,13(2):99—108. [7] GAMINI M W M D.PAUL N.HUGH F D W.A solu— tion t0 the simultaneous localization and map building (SLAM)problem[J].IEEE Transactions on Robotics and Autonmtion,2001,17(3):229—241. [8] PAUL N.LEONARD J J.Pure range—only sub—sea SLAM I A.Proceedings of the 2003 IEEE intemational confer— ence on Robotics&Automationl C【.2003:1921—1926. 作者简介 from Harbin Engineering University in 2007;now she is a PhD candidate in Harbin Engineering University.Her research inter— ests include marine passive navigation,and simultaneous loealiza— tion and mapping. E—mail:cristinwwj@163.con 

因篇幅问题不能全部显示,请点此查看更多更全内容