一种机器人地图的更新方法与流程

文档序号:36877422发布日期:2024-02-02 20:56阅读:35来源:国知局
一种机器人地图的更新方法与流程

本发明涉及机器人构建导航地图的,具体涉及一种机器人地图的更新方法。


背景技术:

1、目前,扫地机器人的建图和定位算法往往导致鲁棒性不够,从而在扫地机器人采集环境数据的过程中,经常重新建图、或增量建图的方式进行更新,但是更新后的地图会变成新的地图,而历史地图(原有地图)会被剔除掉,导致相对于历史地图的操作也随地图的改变而失效,例如扫地机器人,若地图改变,上一次清扫过的环境信息的记录也会随之失效。又由于扫地机器人常用的定位传感器有惯性测量仪(inertial measurement unit,简称:imu)、轮式里程计(odometry,简称:odo)、激光雷达和视觉里程计等。其中,imu和odo随着时间的积累,误差会越来越大;激光雷达和视觉里程计随着移动位置的积累,误差会越来越大,这就导致扫地机器人在每次清扫的过程中,不仅面临着历史地图被删除的问题,而且随着清扫时间的推移构建出的地图会逐渐发生漂移,降低了建图精度。

2、综上,如何利用预先保留下来的历史地图信息来更新最新建立的地图信息,成为机器人进行导航定位过程中亟需解决的技术问题。


技术实现思路

1、为解决上述问题,本发明提供一种机器人地图的更新方法。本发明的具体技术方案如下:

2、一种机器人地图的更新方法,所述更新方法包括:步骤1、机器人在当前环境内建立当前地图;步骤2、根据当前地图与上一次存入历史地图库的地图之间的角度关系,对当前地图进行更新,再将更新后的当前地图存入历史地图库,并将该更新后的当前地图更新为上一次存入历史地图库的地图,以维持对步骤1建立的当前地图进行更新;其中,同一个历史地图库内存储的每帧地图表示所述当前环境。

3、进一步地,在所述步骤2中,对当前地图进行更新的方式包括:机器人按照概率值加权的方式对当前地图的对应栅格处的占用概率进行更新,获得更新后的当前地图;在机器人将该更新后的当前地图存入历史地图库后,将该更新后的当前地图更新为上一次存入历史地图库的地图,然后执行步骤1;其中,除了存入历史地图库的第一帧地图之外,通过所述步骤2存入历史地图库的每帧地图的对应栅格处的占用概率都被按照概率值加权的方式更新过。

4、进一步地,每当机器人在所述步骤2中往历史地图库存入所述更新后的当前地图之前,机器人将所述当前地图以及历史地图库内在先存储的每帧地图当中具有相同位置关系的栅格处的占用概率进行加权平均处理,获得定位评估值,再将该定位评估值更新为当前地图对应栅格处的占用概率,则确定机器人按照概率值加权的方式对当前地图的对应栅格处的占用概率进行更新;当更新完当前地图中每个栅格处的占用概率时,获得所述更新后的当前地图;在将所述更新后的当前地图存入历史地图库之前,若检测到所述历史地图库内存储满历史地图,则机器人将所述历史地图库内的存入时间最早的一帧地图移除以腾出存储空间,再将所述更新后的当前地图存入历史地图库内。

5、进一步地,每帧地图当中,具有相同位置关系的栅格都相对于所属地图的坐标系的原点,在同一坐标轴方向上具有相等的坐标值;每帧地图中,每个栅格都有与之对应的坐标位置;具有相同位置关系的栅格处标记的环境信息包括障碍物占据的栅格位置、未被障碍物占据的栅格位置或未知栅格位置;同一个栅格处标记的环境信息不同时,该栅格处被施加的占用概率是不同;机器人每遍历一次所述当前环境,则建立新的当前地图,并更新该新的当前地图内每个栅格处的占用概率;当所述定位评估值大于预设评估阈值时,机器人将当前地图中对应栅格处标记为障碍物占据的栅格位置,以实现对当前地图的更新。

6、进一步地,所述历史地图库内存储的地图包括初始历史地图、参考历史地图、以及其余地图;机器人将存入历史地图库的第一帧地图配置为初始历史地图;机器人将上一次存入历史地图库内的地图配置为参考历史地图;机器人对参考历史地图配置的权重、以及机器人对初始历史地图配置的权重都大于机器人对所述历史地图库内存储的其余任一帧地图对应配置的权重,机器人对参考历史地图配置的权重、以及机器人对初始历史地图配置的权重也大于对当前地图配置的权重。

7、进一步地,所述根据当前地图与上一次存入历史地图库的地图之间的角度关系,对当前地图进行更新,再将更新后的当前地图存入历史地图库的方法包括:机器人将所述上一次存入历史地图库的地图配置为参考历史地图;若当前地图的坐标系与参考历史地图的坐标系之间的偏转角度的绝对值小于预设角度阈值,则对当前地图进行更新,再将更新后的当前地图存入历史地图库;若当前地图的坐标系与参考历史地图的坐标系之间的偏转角度的绝对值大于或等于预设角度阈值,则控制当前地图按照预设时针方向旋转;每当控制当前地图按照预设时针方向旋转预设判断角度后,判断旋转后的当前地图的坐标系与参考历史地图的坐标系之间的偏转角度的绝对值是否小于预设角度阈值,是则对旋转后的当前地图更新为当前地图,并控制当前地图停止旋转,再对该当前地图进行更新,再将更新后的当前地图存入历史地图库;否则控制旋转后的当前地图更新为当前地图,再控制当前地图按照预设时针方向继续旋转预设判断角度;在所述当前地图按照预设时针方向旋转第一预设数量次的预设判断角度的过程中,若每次机器人都是判断到旋转后的当前地图的坐标系与参考历史地图的坐标系之间的偏转角度的绝对值大于或等于预设角度阈值,则不对最后一次旋转后的当前地图进行更新,并暂停往存入历史地图库存入地图,并控制最后一次旋转后的当前地图停止旋转。

8、进一步地,机器人将所述预设判断角度配置为90度,并将所述第一预设数量配置为数值3,则机器人在一个360度的角度范围内,控制当前地图按照预设时针方向旋转最多3次,其中,当前一次旋转后的当前地图比上一次旋转后的当前地图在预设时针方向上多旋转预设判断角度;当前地图的坐标系与参考历史地图的坐标系之间的偏转角度是当前地图的坐标系的一个坐标轴与参考历史地图的坐标系的同一类型的坐标轴所成夹角的角度;预设角度阈值小于90度;当前地图按照预设时针方向旋转预设判断角度是配置为当前地图按照预设时针方向绕着其坐标系的原点旋转90度。

9、进一步地,在所述历史地图库内存储第二预设数量帧地图的情况下,若旋转后的当前地图的坐标系与参考历史地图的坐标系之间的偏转角度的绝对值小于预设角度阈值,则将所述历史地图库内的存入时间最早的一帧地图移除以腾出存储空间,并对旋转后的当前地图进行更新,获得第一当前地图,再将第一当前地图存入历史地图库内。

10、进一步地,在机器人检测到所述历史地图库内不存在地图的情况下,根据当前地图中障碍物轮廓线以及机器人的行走轨迹所成的夹角,选择满足预设角度条件的夹角所在的当前地图存入历史地图库,以形成历史地图库内存储时间最早的一帧地图;然后执行步骤1。

11、进一步地,所述根据当前地图中障碍物轮廓线以及机器人的行走轨迹所成的夹角,选择满足预设角度条件的夹角所在的当前地图存入历史地图库的具体方法包括:步骤a1、机器人第一次行走完当前环境并同步建立起当前地图后,机器人从当前地图中寻找障碍物轮廓线以及机器人的行走轨迹,再计算出该障碍物轮廓线与该行走轨迹所成的夹角的角度并将该角度标记为预设偏移角度;然后机器人判断预设偏移角度与预设误差角度阈值的大小关系;步骤a2、当机器人判断到预设偏移角度小于预设误差角度阈值时,将当前地图存入历史地图库,并将该当前地图配置为存入历史地图库的第一帧地图,并确定该当前地图是满足预设角度条件的夹角所在的当前地图;步骤a3、当机器人判断到预设偏移角度大于或等于预设误差角度阈值时,执行步骤a1,直至步骤a1的执行次数达到预设遍历次数,再执行步骤a4;步骤a4、机器人从步骤a3获得的所有预设偏移角度当中,选择角度最小的所述预设偏移角度对应的当前地图存入历史地图库,并将该当前地图配置为存入历史地图库的第一帧地图,并确定该当前地图是满足预设角度条件的夹角所在的当前地图。

12、进一步地,机器人从当前地图中寻找障碍物轮廓线以及机器人的行走轨迹分别是障碍物轮廓线与机器人沿该障碍物轮廓线行走过的轨迹;其中,机器人的行走轨迹的初始方向是平行于所述当前地图的坐标系的一个坐标轴。

13、与现有的技术相比,本发明的有益效果在于:机器人从建立的第一帧地图开始,每次建立新的地图,都需对除了第一帧地图之外的地图进行更新并保存为历史地图库内的地图,其中,更新的启动是由当前地图与上一次保存下的地图之间的角度关系决定;对于需要更新及保存的每帧地图,每当往历史地图库存入地图之前,则按照概率值加权的方式对当前地图的对应栅格处的占用概率进行更新,获得更新后的当前地图,实现以栅格(对应为单元格)为单位完成对地图的相关位置处概率信息实时更新,可以不断提升建图精度,使得机器人每次遍历同一环境都会将其建立的当前地图更新得更准确。避免随着机器人行走时间的推移,地图发生漂移现象,能够不断提高机器人的建图精度。

14、利用占据栅格地图构建算法原理为各种环境类型的栅格赋予对应的占用概率,在按照概率值加权的方式对当前地图的对应栅格处的占用概率进行更新时,对于上一次存入历史地图库内的地图、以及存入历史地图库的第一帧地图都配置相对较大的权重,实现对误差较小的地图施加较大的权重,进而实现以栅格为单位加快对地图的每个坐标位置处的概率信息实时更新,最终生成一个更加精确的地图,作为机器人最新遍历当前环境后的自主学习结果地图,有效提高移动机器人建图和定位算法的鲁棒性。

15、其次,本发明还支持对多次跑完同一环境区域对应生成的地图进行轮廓线的角度比较匹配以获得偏移误差较小的存入历史地图库的第一帧地图;在此基础上,支持对同一帧待保存地图(即所述当前地图)沿着同一方向旋转多次,并在每次旋转后与上一次保存的地图(上一次更新过的地图)进行坐标系的角度比较匹配以筛选出能够保存下来的当前地图;从而结合历史地图(上一次更新过的地图)对当前地图完成周期性的角度匹配判断,获取能够存入历史地图库的地图,完成对地图的管理(包括保存和剔除(直接不保存或从内存中剔除)),从而可以发挥机器人预先建立的地图的有效性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1