论文部分内容阅读
随着IT智能时代的到来,智能移动机器人给越来越多的领域带来了高效和便捷。具备自我导航能力是机器人高度智能化的重要标志。机器人依赖传感器对所处未知环境进行探索实现自主运动的过程包含对环境信息的自动获取、处理、分析、理解和决策等一系列关键环节。机器人利用传感器采集景物数据估算位姿信息,利用位姿信息绘制环境地图的过程即实现了即时定位和制图(Simultaneous Localization And Mapping,SLAM)。目前SLAM技术在应用中需要完善三大需求:高稳定性、低复杂度和高一致性。本文的主要工作有:设计MATLAB仿真实验进行SLAM算法的研究;开展基于机器人操作系统(Robot Operating System,ROS)的SLAM应用技术实验;设计和实现SLAM技术中激光雷达样机。(1)设计了SLAM研究的模型:运动模型、观测模型和地图模型。建模过程基于对二维SLAM问题中机器人运动过程和噪声影响的分析。运动模型采用了基于运动速度的条件概率转移方程;观测模型利用了极坐标转换直角坐标的观测方程;地图模型采用了以栅格状态表示障碍物分布的占据栅格地图。(2)分析了卡尔曼滤波(Kalman Filtering,KF)和扩展卡尔曼滤波(Extended Kalman Filter,EKF)的滤波原理。设计了在SLAM中运用EKF的算法流程,开展了基于EKF-SLAM的仿真实验。实验研究了EKF-SLAM算法中不同参数如系统噪声协方差、测量噪声协方差、路标数量和数据关联阈值对SLAM结果的影响。实验结果表明了系统噪声协方差、测量噪声协方差和数据关联阈值是影响SLAM估算结果与真实值是否一致的综合因素;路标数量是影响SLAM估算定位精度的因素。实验分析给出了EKF-SLAM算法在运用中的参数优化方案。(3)分析了基于EKF-SLAM和粒子滤波(Particle Filter,PF)的FastSLAM算法原理。设计二叉树数据结构改进了FastSLAM中粒子的存储与计算,开展仿真实验验证了改进结果可以有效降低内存开销、减少计算时间。设计仿真实验对比了EKF-SLAM和FastSLAM在不同粒子数目下的定位估算精度。实验表明了FastSLAM的定位估算精度随着粒子数目增加显著提升并逐渐接近EKF-SLAM。设计仿真实验对比了同一数据集下EKF-SLAM和FastSLAM结果的定位误差,从而验证了FastSLAM估算结果与真实值之间的一致性。(4)开展了基于应用型SLAM系统的研究和设计。研究了Hector SLAM和Cartographer技术方案,利用ROS平台搭建RPlidar A1激光雷达实验环境开展了对校园建筑层的SLAM实验。实验结合EKF-SLAM研究中的参数优化方案设计参数,利用二叉树数据结构优化计算过程,得到了Hector SLAM和Cartographer的适用性特点。开展了SLAM系统硬件初步研究,设计和实现了基于MEMS微镜扫描的激光雷达样机。样机完成了包括光学、机械、电子、软件各模块在内的整体方案设计,实现了高精度时间信息提取、探测器暗计数滤除等关键技术。