一种家居环境下的机器人路径规划方法
【技术领域】
[0001] 本发明涉及一种家居环境下的机器人路径规划方法,属于机器人的路径规划技 术。
【背景技术】
[0002] 随着生活水平和医疗水平的提高、城镇化的不断推进,人口老龄化现象日益凸显。 另一方面,人们迫切的希望从日常繁琐的家庭劳动中解脱出来。因此人们对于服务机器人 的需求越来越高。服务机器人的研宄得到了快速的发展,尤其是家庭服务机器人拥有着最 大的客户群体与市场,已成为未来机器人行业发展的一个重要趋势,也是未来我国机器人 研宄的重点。
[0003] 路径规划作为移动机器人自主运动中的关键问题,在机器人的相关技术研宄中有 着重要的地位。移动机器人的路径规划是在向目标点移动时避开环境中的障碍物,按照某 一性能指标(如距离、时间、能耗等)规划出一条从起始点到目标点的一条最优或者次最优 路径。现有的路径规划技术分为两种:全局路径规划和局部路径规划。全局路径规划是指 在环境信息完全已知的情况下,寻找从出发点到目标点的最优路径。全局路径规划对实时 性计算的要求不高,但是对环境地图的依赖性却很大,环境中不能存在动态障碍物。常用的 方法有可视图法、栅格法、自由空间法等。局部路径规划的环境地图信息存在部分未知或完 全未知,需要同时根据传感器反馈的信息完成环境地图的建立和路径规划。这就要求机器 人具有较好的信息处理能力,对计算实时性的要求比较高,同时要有较好的鲁棒性,但往往 规划出的全局路径不是最优路径。常用的方法有人工势场法、遗传算法、模糊逻辑算法、蚁 群优化算法等。
[0004] 现有的路径规划技术研宄的工作环境跟家庭服务机器人的实际工作环境存在一 定的差别,没有考虑家庭服务机器人工作环境的特殊性,规划出的路径往往不是最优路径。 普通的家庭环境中存在大量的墙壁和房门,将家庭服务机器人的工作区域分割成了很多个 独立的子工作区域,而两个相邻的子工作区域是否连通取决于房门的状态,从而影响到家 庭服务机器人能否跨多个子工作区域连续服务。同时机器人的工作环境中还存在各种动态 障碍物。这就需要针对家庭环境的特殊性提出更适合家庭服务机器人的路径规划方法。
[0005] 将栅格法和人工势场法相结合,能够克服单一路径规划方法的缺点,为家居服务 机器人提供一套有效可行的路径规划方法。栅格法用于机器人的全局路径规划,由于栅格 法在局部路径规划时实时性不好,无法有效躲避动态障碍物,因此引入人工势场法辅助制 定路线。人工势场法能够弥补栅格法的缺点,迅速的躲避突发障碍物,实时性比较好。将栅 格法和人工势场法相结合的方法具有如下特点:1、根据栅格法制定出机器人的初始全局路 径,栅格化环境地图,然后利用广度优先搜索方法寻找最短路径,将门口区域或连接两个局 部区域的部分作为关键区域;2、利用关键区域将规划出的全局路径分段,划分规则是从起 始点开始,直到遇到一个关键点或目标点作为一个局部路径;3、对于每一个局部路径,根据 势场法进行局部路径规划,直到完成所有局部路径。
[0006] 上述虽然考虑到了家庭服务机器人工作环境的特殊性,存在连通家庭服务机器人 子工作区域的关键区域,并以此关键区域作为分割全局路径的依据。但是该研宄默认这些 关键区域是自由区域,不存在无法通行的情况,机器人一定可以从一个子工作区域到达相 邻的另外一个子工作区域。此外人工势场法在进行局部路径规划时容易产生局部极小值, 在狭窄通道中容易产生振荡,难以保证避障平稳性。
【发明内容】
[0007] 发明目的:针对家居环境下的家庭服务机器人的路径规划问题,本发明综合考虑 家庭服务机器人的工作环境中存在大量的墙壁等静态障碍物、多种动态障碍物、房门的开 关状态对家庭服务机器人跨子工作区域连续服务产生影响等各种因素,提供一种家居环境 下的机器人路径规划方法,将全局路径规划和局部路径规划结合起来,为家庭服务机器人 规划出最优路径,以更好地适用于家居环境。
[0008] 技术方案:为实现上述目的,本发明采用的技术方案为:
[0009] 一种家居环境下的机器人路径规划方法,包括如下步骤:
[0010] (1)栅格化环境地图:将家庭服务机器人的工作环境转化为栅格地图,只考虑工 作环境中位置固定不变的静态障碍物(静态障碍物是指墙壁等位置固定不变的障碍物,不 包括门、沙发、凳子等可移动障碍物),并对静态障碍物进行膨胀处理(将栅格的大小设置 的稍微大一些,只需要规划出机器人的大体路径即可,以减少计算量);将工作环境划分为 以下三种区域:①自由区域,无静态障碍物区域,家庭服务机器人可自由行走;②障碍物区 域,有静态障碍物区域,家庭服务机器人不可行走;③动态区域,可能出现障碍物,将动态 区域内的栅格称为动态栅格,动态区域为连接各子工作区域的重要区域,如房门所在区域 等;
[0011] (2)全局路径规划:首先将动态区域假定为自由区域,利用广度优先搜索算法搜 索出从起始点到目标点的全局路径,然后将全局路径中的动态栅格标示出来;
[0012] (3)路径分割:若全局路径中不含有动态栅格,则直接进入局部路径规划;若全局 路径中含有动态栅格,则从起始点开始对全局路径进行划分,将起始点、动态栅格和目标点 作为分隔点,相邻两个分割点之间的全局路径称为一段局部路径,这两个分割点称为局部 路径的起点和终点;
[0013] (4)局部路径规划:在各子工作区域内,采用基于模糊逻辑控制的行为分解法进 行局部路径规划,具体包括如下步骤:
[0014] (41)家庭服务机器人的行为切换为奔向目标行为,即家庭服务机器人调整自身的 位姿以直线的方式向终点移动,进入步骤(42);
[0015] (42)家庭服务机器人实时检测前进方向上是否存在障碍物:若存在障碍物则进 入步骤(43);否则,进入步骤(46);
[0016] (43)判断障碍物与家庭服务机器人的距离是否小于安全距离dsafe:若小于安全距 离则进入步骤(44);否则,进入步骤(45);
[0017] (44)家庭服务机器人的行为切换为紧急行为,即家庭服务机器人立即停止移动, 并根据检测到的障碍物信息原地旋转一定角度直至前进方向上障碍物与家庭服务机器人 的距离大于安全距离d safe,进入步骤(45);
[0018] (45)家庭服务机器人的行为切换为避障行为,即家庭服务机器人采用模糊逻辑 控制的方法控制自身的运动方向,使得家庭服务机器人沿着障碍物边沿行走直至避开障碍 物,根据家庭服务机器人与目标点之间夹角I 的大小,将避障行为分为凹形障碍物 避障和凸形障碍物避障两种情况,Θ ^表示家庭服务机器人自身的航向角(即家庭服务机器 人的前进方向与全局环境坐标系的横坐标轴之间的夹角),Θ t表示目标点与全局环境坐标 系的横坐标轴之间的夹角;具体执行过程为:
[0019] (451)若I 0r0t|〈ji,则表明家庭服务机器人周围的障碍物为凸形障碍物,家庭 服务机器人执行凸形障碍物避障行为,即家庭服务机器人将奔向目标行为和避障行为进行 融合,使自身沿着凸形障碍物的外侧边缘进行避障直至避开凸形障碍物,执行步骤(46);
[0020] (452)若I 彡π,则表明家庭服务机器人周围的障碍物为凹形障碍物, 家庭服务机器人执行凹形障碍物避障行为,即家庭服务机器人与凹形障碍物保持一定的距 离,家庭服务机器人沿着凹形障碍物的内侧边缘进行避障:若避开凹形障碍物,则执行步骤 (46);若当I θ^θ」〈π时,家庭服务机器人仍未避开凹形障碍物,则执行步骤(451);
[0021] (46)判断家庭服务机器人是否到达局部路径的终点:若到达,则结束本次局部路 径规划;否则,返回步骤(41);
[0022] (5)封闭子工作区域的判定:当家庭服务机器人达到局部路径的动态栅格时:若 不存在障碍物,家庭服务机器人直接通行,并根据步骤(4)进行下一段局部路径规划;若存 在障碍物,家庭服务机器人不能够通行,家庭服务机器人的行为切换为搜索行为,即搜索动 态栅格周围是否存在可通行区域:若不存在可通行区域,则判断家庭服务机器人陷入环形 封闭区域(即局部死区),上报报警信息并停止局部路径规划;若存在可通行区域,则根据 步骤(4)进行下一段局部路径规划。
[0023] 所述步骤(5)中,搜索行为的实施过程为:家庭服务机器人首先在当前栅格内左 转90°,并以一倍动态栅格的长度作为最大移动距离进行直线移