
技术摘要:
本发明公开了一种基于自动驾驶平台上的地图生成与导航避障方法,所述方法包含以下步骤:基于EKF的改进Hector SLAM的地图算法,获得小车驾驶的空间地图;利用获得的空间地图,运用融合A*与DWA的导航避障算法获得小车在这张空间地图中驾驶过程中的路线规划;通过实验评估 全部
背景技术:
扩展卡尔曼滤波(Extended Kalman Filter,EKF)是卡尔曼滤波的非线性版本。它 主要是一种将系统的输入输出观测数据利用线性状态方程处理后,根据结果对系统状态进 行最优估计的算法。卡尔曼滤波是一种线性方程式,它最初是用来进行雷达跟踪实验,后续 发展成为可以在导航,通讯等各领域使用的滤波算法。 地图生成属于同步定位与地图构建(Simultaneous Localization And Mapping, SLAM)的范畴。该问题可以描述为将机器人放入一个未知的环境,然后让其一边移动进行位 置估计和自身定位,一边绘制出环境的增量式地图,走遍环境的每个角落后绘制出场景的 完整地图。地图生成可用于定位和导航相关研究中。地图生成算法分为基于激光滤波和基 于视觉两种。基于激光滤波的方法技术成熟,应用广泛。基于视觉的方法发展时间短,目前 研究方法难以解决计算复杂度高、数据量大、实时性的问题,在研究领域内少有应用研究。 导航避障是自动驾驶中非常重要的一个研究领域,它关系着设备运行时的安全性 和稳定性。虽然深度神经网络有取代路径规划进行导航避障的趋势,但它仍然存在结果不 可控以及需要高性能硬件支持其运行等问题。所以目前研究领域中进行导航避障的方法还 是以路径规划结合局部避障算法为主。 导航避障中的路径规划又称全局路径规划,是在已有地图中,给定起点与终点,规 划出从起点到终点的近似最短路径的过程。常用的算法有Dijkstra[1]、A*[2]、人工势场法[3] (Artifical Potential Field,APF)。局部避障又可称局部路径规划,其用来处理小车运行 过程中遇到障碍物时的躲避问题。动态窗口(Dynamic Window Approach,DWA)模糊逻辑、神 经网络以及自然启发算法都可用于解决局部避障问题。 路径规划中的APF算法在实验过程中出现无法完全收敛到目标点的情况。局部避 障中的模糊逻辑和神经模糊算法的输出将小车位姿划分成若干段,每段中所有位姿对应的 当前速度都是同一个值,这导致小车行驶过程中速度不是连续的。而神经网络的实现通常 需要GPU,使用CPU运行神经网络效率会非常低。 参考文献 [1]Kruskal Jr.,J .B.:On the Shortest Spanning Subtree of a Graph and the Travelling Salesman Problem.Proc.Amer.Math.Soc.7,48–50(1956) . [2]熊壬浩,刘羽.A*算法的改进及并行化[J].计算机应用,2015 ,35(07):1843- 1848. [3]Khatib O.Realtime Abstract Avoidance for Manipulators ,and Mobile Robots in Proe[J] .IEEE Int Conf .On .Robotics and Automation March 25- 381985.500-505,also in Int JRobot Res,1986,5(1):90-98. 3 CN 111578926 A 说 明 书 2/8 页 [4]BALLESTEROS J ,URDIALES C ,VELASCO A B M ,et al .A biomimetical dynamic window approach to navigation for collaborative control[J] .IEEE Transactions on Human-Machine Systems,2017,47(6):1123-1133.
技术实现要素:
本发明提供了一种基于自动驾驶平台的地图生成与导航避障的方法,本发明可以 避免现有地图生成算法存在地图错位、地图信息缺失、系统资源占用率高等问题,从而改善 地图生成的效果;本发明提出的导航避障方法可以融合现有的不同的导航避障的算法,具 有有效性、完备性和可修正性,详见下文描述: 一种基于自动驾驶平台上的地图生成与导航避障方法,所述方法包含以下步骤: 基于EKF的改进Hector SLAM的地图算法,获得小车驾驶的空间地图; 利用获得的空间地图,运用融合A*与DWA的导航避障算法获得小车在这张空间地 图中驾驶过程中的路线规划; 通过实验评估和验证对地图生成算法和导航避障算法的效果。 其中,所述基于EKF的改进Hector SLAM的地图算法,获得小车驾驶的空间地图具 体为: 使用EKF对轮式里程计、惯性测量单元、激光雷达的数据进行融合,初始时刻时,对 多传感器信息融合系统状态与协方差矩阵进行初始化; 在k时刻,第一个传感器观测状态修正后得到的系统状态量x1(k);将x1(k)用于第 二个传感器的状态修正中得到新的系统状态量x2(k);最后第三个传感器使用x2(k)进行修 正得到最终系统状态量x(k); 使用EKF对Hector SLAM算法中的每时刻的位姿信息进行修正,使用里程计数据中 的坐标(x,y)、偏移角yaw、仰俯角pitch来对坐标转换公式中的数据进行修正;直接使用原 有数据与融合里程计数据进行线性组合的方式得到新的数据,利用修正完的信息更新栅格 地图。 进一步地,所述利用获得的空间地图,运用融合A*与DWA的导航避障算法获得小车 在这张空间地图中驾驶过程中的路线规划具体为: 在小车启动时,利用A*算法规划出从起点到终点的路径,在小车行驶过程中使用 激光雷达实时监测周围环境信息,如果在范围阈值内没有检测到障碍物时,小车将沿着A* 算法规划出的路径行驶; 若激光雷达在范围阈值内检测到障碍物,则小车切换成DWA算法进行实时避障;当 确认躲避障碍物之后,重新生成路径,并沿着路径前进,重复前两步,直至小车行驶到达目 标点。 本发明提供的技术方案的有益效果是: 1、本发明提出了基于EKF的Hector SLAM算法,EKF分为预测未来与修正当下两个 过程。Hector SLAM算法由于只考虑激光雷达的信息,通过上一帧位姿信息得到当前帧位姿 信息,该过程与EKF中“预测未来”原理相同。所以,该过程中出现信息错误时,理论上同样能 够使用EKF对其进行修正。因此本发明提出的地图生成算法可以改善地图生成的效果。 2、对于导航避障问题本发明提出了融合A*与DWA的导航避障算法。A*算法由于其 4 CN 111578926 A 说 明 书 3/8 页 良好的完备性以及处理速度快等优势,适合应用在实时性要求高的导航避障功能中。DWA算 法的运行效率相比于其它导航避障算法要高很多,因为DWA算法只根据一系列的评价函数 选择可行解。相比于找到局部最优解而言,DWA算法仅需要依据评分选择路径即可。因此选 择融合A*与DWA的算法使导航避障算法更具有有效性、完备性和可修正性。 3、利用本文提出的地图生成算法生成的地图中无地图错位现象,房间边界检测完 整,场景中障碍物信息也如实反映在地图中。在10次实验结果中,出现重新生成地图现象的 概率为0%。地图边界与障碍物信息清晰度也优于原HectorSLAM算法与IMU功能节点改进 HectorSLAM算法。本文设计的导航避障算法在动态环境中实验中效果良好。小车能够合理 躲避环境中的移动障碍物并朝目标点前进,每次躲避障碍物的路径选择也会根据当前的环 境因素和自身速度,距离目标点方向等因素综合考虑选择合理的方案。每次躲避障碍之后 都会在原有路径基础上重新规划路径,也说明了本文融合导航避障算法的完备性和可修正 性。 附图说明 图1为一种基于自动驾驶平台上的地图生成与导航避障方法的流程图; 图2为修正传感器部分的流程图; 图3为原Hector SLAM算法实验结果的示意图; 图4为功能节点改进Hector SLAM实验结果的示意图; 图5为基于EKF的改进Hector SLAM算法实验结果示意图; 图6为动态环境下小车运行过程示意图; 图7为动态环境下小车避障过程示意图。