论文部分内容阅读
随着计算机科学的蓬勃发展,人类的生产生活正变得越来越智能化,而无人驾驶汽车在为人类提供智能化服务方面扮演着重要的角色。无人驾驶汽车在餐饮、快递物流、移动出行、建筑及勘探等各个领域出现的频率越来越高,使得人类的活动变得更加便利、高效和安全。无人驾驶汽车的研究对国家的创新能力及经济发展都具有极其重要的助推作用。实时定位是无人驾驶研究领域的一个不可或缺的重要方向,可以为无人驾驶汽车的位姿确定、路径规划提供有力支撑。本文基于一款无人驾驶汽车,结合ROS(机器人操作系统)、里程计、惯性导航元件IMU和激光雷达获得无人驾驶汽车的相对精确的全局定位。ROS是目前广泛运用于无人驾驶领域的新标准软件框架,通过节点和话题等实现传感器测量数据、定位算法及不同模块之间的通讯。基于里程计和IMU提供的无人驾驶汽车的相对定位信息,激光雷达可以进一步实现无人驾驶汽车的相对准确的全局定位。本文的主要研究内容如下:(1)先以里程计返回的相对运动信息作为输入控制量,建立无人驾驶汽车的里程计运动模型,该模型将在蒙特卡罗定位中采样汽车的位姿。然后,根据激光雷达测量数据,基于似然域建立无人驾驶汽车的观测模型,该模型将用于计算采样得到的汽车位姿的权重。(2)配置VESC的固件参数,这些参数主要是BLDC电机工作所需的重要参数。对将无人驾驶汽车的期望速度和期望转角分别转化为驱动电机的期望转速和转向电机的期望转角涉及的重要参数进行校准。根据VESC自身反馈的驱动电机的实际转速及转向电机的实际转角获得汽车的实际速度和角速度,并通过航迹推算得到汽车的里程计信息。接着,选择IMU的型号并对加速计、陀螺仪和磁力计的参数进行校准。采用旋转矩阵表示无人驾驶汽车的姿态,并对旋转矩阵进行归一化以消除数值误差。根据旋转运动学计算汽车的姿态角,并采用方向余弦矩阵算法补偿陀螺仪的漂移以获得相对准确的方向信息。(3)研究融合里程计与IMU信息的扩展卡尔曼滤波算法、粒子滤波算法及实现无人驾驶汽车全局定位的基于KLD采样的自适应蒙特卡罗定位算法。接着,通过仿真验证了扩展卡尔曼滤波算法的融合效果及粒子滤波估计离散变量状态的效果,也比较了四种不同重采样方法的粒子退化情况,展示了自适应蒙特卡罗定位各个步骤的具体效果。(4)首先,结合一款小车底盘、VESC、SparkFun 9DoF Razor IMU M0和RPLIDAR-A2单线激光雷达搭建了测试平台。然后,设计了具体的定位方案:采用VESC及电机实现该汽车的运动控制;使用扩展卡尔曼滤波算法融合来自里程计及IMU的位姿信息以消除单独使用里程计带来的累积误差,从而实现了该汽车的相对定位;根据里程计运动模型及基于似然域的激光雷达观测模型,采用自适应蒙特卡罗定位算法实现该汽车的全局定位。最后,通过实验验证了增广蒙特卡罗定位解决汽车“绑架”问题的有效性及自适应蒙特卡罗定位的实际定位效果。