论文部分内容阅读
为实现机器人的自主移动,首先要解决机器人的即时定位与地图构建(SLAM)问题。目前基于激光雷达的SLAM算法发展相对成熟。移动底盘与激光雷达作为激光SLAM系统主要传感器,传感器精度降低将导致SLAM算法输出的地图精度变差。本文拟在低精度传感器的条件下,通过对传感器数据的优化处理来提高其测量精度,并搭建一个完整的SLAM系统,优化后端优化算法,实现室内移动机器人自主定位与构建环境地图的能力。首先对SLAM系统各个部分进行建模,给出了基于贝叶斯滤波器的SLAM系统概率模型,建立传感器的测量模型来获取里程计与环境测量数据,建立基于似然场模型的系统观测模型来对机器人位姿预测结果进行修正。为获取二维室内环境的障碍物信息,给出栅格地图的数学模型。上述模型为后文的传感器数据处理策略以及粒子滤波算法优化奠定了数学基础。在机器人运动过程中移动底盘提供的里程计会产生累积误差。设计了轮式里程计的实时标定策略对该误差进行消除。采用PL-ICP算法对激光雷达扫描数据进行匹配计算,获取机器人位姿的参考真值。基于非线性最小二乘法对原始里程计进行标定计算,完成里程计累积误差的消除。激光雷达的扫描数据会在其快速移动时产生运动畸变。分析了此畸变的产生原理,并提出基于线性插值法的激光雷达运动畸变去除算法。通过对里程计提供的位姿信息进行线性插值求解激光束的发射位姿,完成激光雷达运动畸变的去除。采用粒子滤波作为SLAM后端优化算法。分析了粒子滤波算法原理,给出基于粒子滤波的SLAM算法基本步骤。针对粒子滤波出现的粒子退化与耗散问题,提出了多阈值重采样算法来对粒子滤波进行优化。通过MATLAB仿真验证了优化算法通过控制有效粒子数的波动幅度可以减缓粒子退化与耗散的程度,进而减少粒子滤波的跟踪误差。同时给出阈值数与粒子滤波的跟踪误差的关系。在室内环境下,分别对轮式里程计实时标定策略,激光雷达运动畸变去除算法以及多阈值重采样的优化效果进行了验证实验。采用机器人操作系统(ROS)作为软件平台,控制机器人在室内进行移动并给出SLAM算法输出的机器人路径信息与栅格地图。对实验结果进行分析并给出了相应结论。