一种用于移动机器人沿墙运动的方法及设备转让专利

申请号 : CN201810601994.0

文献号 : CN108303989B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵永华陈士凯陆祎李宇翔

申请人 : 上海思岚科技有限公司

摘要 :

本申请的目的是提供一种用于移动机器人沿墙运动的方法及设备,本申请通过将获取的沿墙传感器测距数据与激光测距数据进行融合确定贴墙检测数据;根据所述贴墙检测数据进行确定待贴近的墙面;根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间;根据所述贴墙检测数据确定机器人在当前采样周期内的运行速度,根据所述待贴近的墙面及所述运动空间以所述运行速度进行沿墙运动。有效的避免了机器人在实际贴墙运动过程中与外部物体发生碰撞;并且以合适的最大速度运动,使机器人运动得更加迅速流畅,便捷的完成贴边任务。

权利要求 :

1.一种用于移动机器人沿墙运动的方法,其中,所述方法包括:

将获取的沿墙传感器测距数据插入至激光测距数据中,得到测距数据集,确定所述测距数据集中的数据与所述沿墙传感器测距数据之间的距离偏差,判断所述距离偏差是否超过距离偏差阈值,若否,则根据所述距离偏差对所述测距数据集中的激光测距数据进行补偿处理,根据补偿处理后的激光测距数据更新所述测距数据集,将更新后的测距数据集作为贴墙检测数据,若是,则将所述测距数据集中的激光测距数据作为贴墙检测数据;

根据所述贴墙检测数据进行确定待贴近的墙面;

根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间;

根据所述贴墙检测数据确定机器人在当前采样周期内的运行速度,根据所述待贴近的墙面及所述运动空间以所述运行速度进行沿墙运动。

2.根据权利要求1所述的方法,其中,将获取的沿墙传感器测距数据插入至激光测距数据中之前,包括:根据所述沿墙传感器的安装位置信息采集对应的沿墙传感器测距数据;

确定与所述沿墙传感器之间的角度在角度阈值内的激光传感器,以获取对应的激光测距数据。

3.根据权利要求1所述的方法,其中,将获取的沿墙传感器测距数据插入至激光测距数据中,包括:将获取的沿墙传感器测距数据按照角度增量的存储方式插入至激光测距数据中。

4.根据权利要求1或2所述的方法,其中,根据所述贴墙检测数据进行确定待贴近的墙面,包括:根据所述贴墙检测数据判断所述移动机器人当前所在的位置距离墙面是否在预设值内,若否,则进行步骤S:判断是否采取固定的方向贴近墙,若是,则以给定的目标点作为贴墙点,若否,则从所述激光测距数据中选取距离所述移动机器人最近的点作为贴墙点;

根据确定的贴墙点对应的方向作为运动方向,循环执行步骤S,直至所述移动机器人当前所在的位置距离墙面在预设值内。

5.根据权利要求1所述的方法,其中,根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间,包括:根据所述移动机器人的最大的线速度和角速度确定所述移动机器人的初始采样速度;

根据所述初始采样速度确定对应的所述移动机器人在采样周期内的当前运动空间。

6.根据权利要求5所述的方法,其中,根据所述初始采样速度确定对应的所述移动机器人在采样周期内的当前运动空间之后,包括:判断所述当前运动空间与激光传感器感知的周围环境是否相碰撞,若是,则调整所述移动机器人的线速度和角速度以确定采样速度,若否,则根据当前的线速度和角速度进行沿墙运动。

7.根据权利要求6所述的方法,其中,所述方法包括:

判断所述角速度的调整是否超过对应阈值,若是,则减小线速度,判断减小后的线速度是否低于设定的阈值,若是,则停止所述移动机器人的贴墙运动,若否,则根据调整后的角速度和线速度确定新的采样速度,根据所述新的采样速度确定对应的所述移动机器人在新的采样周期内的运动空间。

8.根据权利要求7所述的方法,其中,所述方法包括:

若所述角速度的调整未超过对应阈值,则根据调整后的角速度及线速度确定新的采样速度,根据所述新的采样速度确定对应的所述移动机器人在新的采样周期内的运动空间。

9.一种用于移动机器人沿墙运动的设备,其中,所述设备包括:

数据融合模块,用于将获取的沿墙传感器测距数据插入至激光测距数据中,得到测距数据集,确定所述测距数据集中的数据与所述沿墙传感器测距数据之间的距离偏差,判断所述距离偏差是否超过距离偏差阈值,若否,则根据所述距离偏差对所述测距数据集中的激光测距数据进行补偿处理,根据补偿处理后的激光测距数据更新所述测距数据集,将更新后的测距数据集作为贴墙检测数据,若是,则将所述测距数据集中的激光测距数据作为贴墙检测数据;

确定墙面运动模块,用于根据所述贴墙检测数据进行确定待贴近的墙面;

贴墙运动模块,用于根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间;

贴墙运动模块,用于根据所述贴墙检测数据确定机器人在当前采样周期内的运行速度,根据所述待贴近的墙面及所述运动空间以所述运行速度进行沿墙运动。

说明书 :

一种用于移动机器人沿墙运动的方法及设备

技术领域

[0001] 本申请涉及机器人领域,尤其涉及一种用于移动机器人沿墙运动的方法及设备。

背景技术

[0002] 随着计算机技术、微电子技术、网络技术等快速的发展,机器人技术也得到了飞速发展,除了工业机器人水平不断提高之外,各种用于服务行业的先进机器人系统也有了长足的发展,各类移动服务机器人越来越普及,特别是家庭服务类和商场导购类机器人,例如扫地机器人、拖地机器人,给人们的生活带来了极大的方便。机器人在完成任务前,需要采用沿墙(或贴边)的行为探索当前环境并建立地图,然后依据全局地图制定具体的任务规划。当前实现这种方式主要采取的是超声或红外传感器,和采用已知地图预测实现沿墙行为。然而,超声或红外进行贴墙不能很好的预测出移动机器人前端障碍物情况,而且单点预测针对局部凹凸的物体可能会做出错误的判断,容易撞上贴近的物体。再者,基于地图预测的行为无法很好的体现环境的变化性,而且基于地图预测是建立在存在已知地图的情况,不能用于探索阶段的贴边。同时,由于激光安装位置的限制,单纯激光方式不能很好的检测较低位置的障碍物。

发明内容

[0003] 本申请的一个目的是提供一种用于移动机器人沿墙运动的方法及设备,解决单点预测对局部凹凸的物体做出错误判断,容易撞上贴近物体,且不能很好检测较低位置的障碍物的问题。
[0004] 根据本申请的一个方面,提供了一种用于移动机器人沿墙运动的方法,该方法包括:
[0005] 将获取的沿墙传感器测距数据插入至激光测距数据中,得到测距数据集,确定所述测距数据集中的数据与所述沿墙传感器测距数据之间的距离偏差,根据所述距离偏差及所述测距数据集确定贴墙检测数据;
[0006] 根据所述贴墙检测数据进行确定待贴近的墙面;
[0007] 根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间;
[0008] 根据所述贴墙检测数据确定机器人在当前采样周期内的运行速度,根据所述待贴近的墙面及所述运动空间以所述运行速度进行沿墙运动。
[0009] 进一步地,将获取的沿墙传感器测距数据插入至激光测距数据中之前,包括:
[0010] 根据所述沿墙传感器的安装位置信息采集对应的沿墙传感器测距数据;
[0011] 确定与所述沿墙传感器之间的角度在角度阈值内的激光传感器,以获取对应的激光测距数据。
[0012] 进一步地,根据所述距离偏差及所述测距数据集确定贴墙检测数据,包括:
[0013] 判断所述距离偏差是否超过偏差阈值,若否,则根据所述距离偏差对所述测距数据集中的激光测距数据进行补偿处理,根据补偿处理后的激光测距数据更新所述测距数据集,将更新后的测距数据集作为贴墙检测数据;
[0014] 若是,则将所述测距数据集中的激光测距数据作为贴墙检测数据。
[0015] 进一步地,将获取的沿墙传感器测距数据插入至激光测距数据中,包括:
[0016] 将获取的沿墙传感器测距数据按照角度增量的存储方式插入至激光测距数据中。
[0017] 进一步地,根据所述贴墙检测数据进行确定待贴近的墙面,包括:
[0018] 根据所述贴墙检测数据判断所述移动机器人当前所在的位置距离墙面是否在预设值内,若否,则进行步骤S:判断是否采取固定的方向贴近墙,若是,则以给定的目标点作为贴墙点,若否,则从所述激光检测数据中选取距离所述移动机器人最近的点作为贴墙点;
[0019] 根据确定的贴墙点对应的方向作为运动方向,循环执行步骤S,直至所述移动机器人当前所在的位置距离墙面在预设值内。
[0020] 进一步地,根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间,包括:
[0021] 根据所述移动机器人的最大的线速度和角速度确定初始采样速度;
[0022] 根据所述初始采样速度确定对应的所述移动机器人在采样周期内的当前运动空间。
[0023] 进一步地,根据所述初始采样速度确定对应的所述移动机器人在采样周期内的当前运动空间之后,包括:
[0024] 判断所述当前运动空间与所述激光传感器感知的周围环境是否相碰撞,若是,则调整所述移动机器人的线速度和角速度以确定采样速度,若否,则根据当前的线速度和角速度进行沿墙运动。
[0025] 进一步地,所述方法包括:
[0026] 判断所述角速度的调整是否超过对应阈值,若是,则减小线速度,判断减小后的线速度是否低于设定的阈值,若是,则停止所述移动机器人的贴墙运动,若否,则根据调整后的角速度和线速度确定新的采样速度,根据所述新的采样速度确定对应的所述移动机器人在新的采样周期内的运动空间。
[0027] 进一步地,所述方法包括:
[0028] 若所述角速度的调整未超过对应阈值,则根据调整后的角速度及线速度确定新的采样速度,根据所述新的采样速度确定对应的所述移动机器人在新的采样周期内的运动空间。
[0029] 根据本申请另一个方面,还提供了一种用于移动机器人沿墙运动的设备,所述设备包括:
[0030] 数据融合模块,用于将获取的沿墙传感器测距数据插入至激光测距数据中,得到测距数据集,确定所述测距数据集中的数据与所述沿墙传感器测距数据之间的距离偏差,根据所述距离偏差及所述测距数据集确定贴墙检测数据;
[0031] 确定墙面运动模块,用于根据所述贴墙检测数据进行确定待贴近的墙面;
[0032] 贴墙运动模块,用于根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间;
[0033] 贴墙运动模块,用于根据所述贴墙检测数据确定机器人在当前采样周期内的运行速度,根据所述待贴近的墙面及所述运动空间以所述运行速度进行沿墙运动。
[0034] 根据本申请又一个方面,还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如前述所述的方法。
[0035] 根据本申请的另一个方面,还提供了一种用于移动机器人沿墙运动的设备,所述设备包括:
[0036] 一个或多个处理器;以及
[0037] 存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如前述所述方法的操作。
[0038] 与现有技术相比,本申请通过将获取的沿墙传感器测距数据插入至激光测距数据中,得到测距数据集,确定所述测距数据集中的数据与所述沿墙传感器测距数据之间的距离偏差,根据所述距离偏差及所述测距数据集确定贴墙检测数据;根据所述贴墙检测数据进行确定待贴近的墙面;根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间;根据所述贴墙检测数据确定机器人在当前采样周期内的运行速度,根据所述待贴近的墙面及所述运动空间以所述运行速度进行沿墙运动。充分考虑当前环境,同时,以采样速度预测机器人在特定周期的运动轨迹空间,有效的避免了机器人在实际贴墙运动过程中与外部物体发生碰撞。再者,采样速度的设计方法,充分考虑了机器人的运动尽量贴近墙,并且以合适的最大速度运动,使机器人运动得更加迅速流畅,便捷的完成贴边任务。

附图说明

[0039] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0040] 图1示出根据本申请的一个方面提供的一种用于移动机器人沿墙运动的方法流程示意图;
[0041] 图2示出本申请一实施例中的障碍物场景;
[0042] 图3示出本申请一实施例中贴墙最近点的寻路行为指示图;
[0043] 图4示出本申请一实施例中移动机器人的预测运动轨迹示意图;
[0044] 图5示出本申请一实施例中移动机器人的沿墙运动的运动驱动的指示图;
[0045] 图6示出根据本申请另一个方面提供的一种用于移动机器人沿墙运动的设备结构示意图;
[0046] 图7示出本申请一实施例中通过数据融合模块11、确定墙面运动模块12及贴墙运动模块13实现的贴墙运动示意图。
[0047] 附图中相同或相似的附图标记代表相同或相似的部件。

具体实施方式

[0048] 下面结合附图对本申请作进一步详细描述。
[0049] 在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
[0050] 内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM) 和/或非易失性内存等形式,如只读存储器 (ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。
[0051] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器 (CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
[0052] 图1示出根据本申请的一个方面提供的一种用于移动机器人沿墙运动的方法流程示意图,该方法包括:步骤S11 步骤S14,其中,~
[0053] 在步骤S11中,将获取的沿墙传感器测距数据插入至激光测距数据中,得到测距数据集,确定所述测距数据集中的数据与所述沿墙传感器测距数据之间的距离偏差,根据所述距离偏差及所述测距数据集确定贴墙检测数据;在此,沿墙的墙是指机器人可以碰到的物体的外部轮廓或边界,也可以称为贴边。所述沿墙传感器可用于采集机器人到障碍物的距离,将沿墙传感器采集的测距数据与其周围的激光传感器采集的激光测距数据进行融合,以用于贴墙,其中,激光传感器测量的数据为360的̊ 全角度测量数据,沿墙传感器测量的数据为某一角度对应的数据,将两种数据进行融合,可按照角度增量的存储方式,在激光测距数据中增加沿墙传感器测距数据;例如,激光测距数据为360个数据点,沿墙传感器测距数据为1个数据点,则融合后为361个数据点。需要说明的是,沿墙传感器可用红外传感器方式,为单点测距,激光传感器为多点测距。通过沿墙传感器与激光传感器的配合使用,能够很好的检测较低位置的障碍物,检测更精准。
[0054] 接着,在步骤S12中,根据所述贴墙检测数据进行确定待贴近的墙面;在此,融合的沿墙传感器测距数据与激光测距数据,可以作为贴墙检测数据,作为贴墙的参考数据源,使机器人首先确定待贴近的墙面,开始找墙运动,以进行后续的贴墙行为。即,在步骤S13中,根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间;在此,在贴墙运动中需要确定机器人的线速度和角速度,以确定采样速度,通过采样速度预测机器人在特定周期的运动轨迹空间,计算当前机器人在周期内的运动轨迹空间与激光数据反映的障碍物不发生碰撞,有效的避免机器人在实际的贴墙运动过程中与外部物体发生碰撞,其中,特定周期可以为预设的一个时间段的固定值,也可以为与程序运行频率有关的时间周期;最后,在步骤S14中,根据所述贴墙检测数据确定机器人在当前采样周期内的运行速度,根据所述待贴近的墙面及所述运动空间以所述运行速度进行沿墙运动,进而使得机器人的运动尽量贴近墙面,并且以合适的最大速度运动,其中,速度包括角速度和线速度,以使机器人运动得更加迅速流畅,便捷的完成贴边任务。
[0055] 在本申请一实施例中,将获取的沿墙传感器测距数据插入至激光测距数据中之前,需要根据所述沿墙传感器的安装位置信息采集对应的沿墙传感器测距数据;确定与所述沿墙传感器之间的角度在角度阈值内的激光传感器,以获取对应的激光测距数据。如图2所示的本申请一实施例中的障碍物场景,机器人遇到“T”型墙面,使用单点预测会做出错误的检测,容易撞上贴近的物体。因此,采用本申请所述的沿墙运动的方法,其中,沿墙传感器安装位置低于激光传感器的安装位置,以解决激光传感器安装位置的限制不能很好的检测较低位置的障碍物的问题,如激光传感器(比如激光雷达)观测平面A可测到墙面1,而沿墙传感器的观测点B可测到墙面2。根据实际的安装位置信息,将沿墙传感器测距数据融合进激光测距数据中,从而分析沿墙传感器测距数据和沿墙传感器附近角度对应的激光传感器测距数据,检测是否出现了如图2所示的激光测距与沿墙传感器测距距离偏差较大的环境。其中,将获取的沿墙传感器测距数据插入至激光测距数据中时,可以将获取的沿墙传感器测距数据按照角度增量的存储方式插入至激光测距数据中。在本申请一实施例中,从360̊全角度的激光测距数据点集中找到与沿墙传感器测距的角度相近的,偏差在一定范围内的数据。例如,沿墙传感器角度在机器人坐标系中30̊,角度阈值为5̊,则从激光测距数据中选取角度在27.5̊ 32.5̊范围内的数据点,角度阈值为从所有激光测距数据中挑选距离值的依据,将~
满足角度阈值的角度范围内的激光测距数据作平均值,以便后续将该平均值与沿墙传感器测距数据进行比较,确定距离偏差,即将上述角度在27.5̊ 32.5̊范围内的激光测距数据作距~
离平均值,计算得到后的平均值与角度在30̊时的沿墙传感器测距数据进行比较,得到距离偏差。
[0056] 具体地,在步骤S11中,判断所述距离偏差是否超过距离偏差阈值,若否,根据所述距离偏差对所述测距数据集中的激光测距数据进行补偿处理,根据补偿处理后的激光测距数据更新所述测距数据集,将更新后的测距数据集作为贴墙检测数据;若是,则仅将测距数据集中的激光测距数据作为贴墙检测数据。
[0057] 在此,距离偏差阈值为在某一角度时的沿墙传感器测距数据与以该角度及角度阈值确定的角度范围内激光测距数据的平均值之间的距离偏差的最大值,计算沿墙传感器测距数据与激光传感器测距数据的距离偏差,若距离偏差在一定允许的范围内(距离偏差阈值),则将相应的距离偏差补偿进激光数据中,即将补偿距离偏差后的激光数据作为贴墙检测数据,比如激光测距数据为360个数据点,沿墙传感器测距数据为1个数据点,则先将沿墙传感器测距数据补偿至激光测距数据中,为361个数据点,再判断361个数据点中与沿墙传感器测距数据差值在预设范围内的数据点,对这些数据点进行调整。在本申请一实施例中,先查找与目标角度时的沿墙传感器测距数据的角度偏差在角度偏差阈值内的激光测距数据,再计算角度偏差阈值内的激光测距数据的距离平均值,将该距离平均值与目标角度时的沿墙传感器测距数据进行比较,若距离偏差在距离偏差阈值内,则对比沿墙传感器测距数据大的角度偏差阈值内的激光测距数据进行处理,将沿墙传感器的测距数据补偿进激光测距数据,补偿方式为将激光测距数据以偏差值进行减小,比如,沿墙传感器测距数据为10cm,激光测距数据为12cm,偏差值为2cm,偏差值在预设值范围内(比如预设值为5cm),可认为可以进行补偿,则将对应的所有的激光测距数据减小2cm。进行补偿距离偏差后,更新贴墙检测数据,则更新后的贴墙检测数据包括原始的沿墙传感器测距数据以及补偿处理后的激光测距数据。将该距离平均值与目标角度时的沿墙传感器测距数据进行比较后,若距离偏差超过距离偏差阈值,则放弃该目标角度时的沿墙传感器测距数据,不再做两种数据的融合,仅将激光测距数据作为贴墙检测数据。确定贴墙检测数据后进入贴墙运动的行为逻辑,具体实现步骤如下:
[0058] 在本申请一实施例中,在步骤S12中,进行找墙运动,根据所述贴墙检测数据判断所述移动机器人当前所在的位置距离墙面是否在预设值内,若否,则进行步骤S:判断是否采取固定的方向贴近墙,若是,则以给定的目标点作为贴墙点,若否,则从所述激光检测数据中选取距离所述移动机器人最近的点作为贴墙点;根据确定的贴墙点对应的方向作为运动方向,循环执行步骤S,直至所述移动机器人当前所在的位置距离墙面在预设值内。在此,从当前激光数据分析当前是否靠近墙面,所述当前激光数据为贴墙检测数据,即产生测距偏差较小的环境后进行偏差补偿后的激光数据或测距偏差较大时的环境对应的初始激光数据,其中,产生测距偏差较小的环境为角度偏差阈值内的激光测距数据的距离平均值与目标角度时的沿墙传感器测距数据存在一定距离偏差,该距离偏差在距离偏差阈值内。当分析出机器人离墙面较远时,则进入步骤S:判断是否采取固定的方向贴近墙,若是,则给定的目标点作为运动方向,若否,则从激光数据中选取距离机器人最近的点作为贴墙点,并以此贴墙点对应的方向作为运动方向,进而按照选定的目标方向前进,循环执行步骤S,以完成找墙运动,直至所述移动机器人当前所在的位置距离墙面在预设值内,贴近墙面。如图3所示的本申请一实施例中贴墙最近点的寻路行为指示图,移动机器人(图中M)根据当前激光的测量数据和给定的目标点选择需要靠近的墙上(图中n为墙面)目标点(如最近点A1),以使扫地机朝着点A1前行。
[0059] 找墙运动结束后,进行贴墙运动行为逻辑,在步骤S13中,根据所述移动机器人的最大的线速度和角速度确定初始采样速度;根据所述初始采样速度确定对应的所述移动机器人在采样周期内的当前运动空间。在此,所述采样周期与采样速度对应,为机器人的运动计算周期,找墙面运动过程中,需要计算每一个运动计算周期内的运动空间,以确定待贴近的墙面的同时避免碰撞墙面。以最大的线速度和角速度作为初始采样速度,根据机器人的运动模型估计机器人下一个运动计算周期的运动空间。在本申请一实施例中,根据所述初始采样速度确定对应的所述移动机器人在采样周期内的当前运动空间之后,判断所述当前运动空间与所述激光传感器感知的周围环境是否相碰撞,若是,则调整所述移动机器人的线速度和角速度以确定采样速度,若否,则根据当前的线速度和角速度进行沿墙运动。在此,分析当前运动空间是否会与当前激光感知的周围环境相碰撞,若会发生碰撞,则需要调整机器人的角速度和线速度,若不会发生碰撞,则沿墙面以当前的线速度和角速度前进。需要调整线速度和角速度时,比如将机器人朝左的角度调整是减小角速度,朝右的角度调整是增大角速度,进一步地,所述方法包括步骤S131,判断所述角速度的调整是否超过对应阈值,若是,则减小线速度,判断减小后的线速度是否低于设定的阈值,若是,则停止所述移动机器人的贴墙运动,若否,则根据调整后的角速度和线速度确定新的采样速度,根据所述新的采样速度确定对应的所述移动机器人在新的采样周期内的运动空间。在此,若角速度调整超过对应阈值,则调整减小线速度,减慢机器人的运动,若线速度已经低于设定的阈值,则停止贴墙行为,否则需要根据机器人的运动模型重新估计机器人下一个运动计算周期的运动空间。例如,时间t=0时刻的线速度和角速度分别为v=5m/s,w=6̊/s,采样周期为T=200ms,先以当前的最大线速度,最大角速度运行,若在T范围内,在运动空间不会发生碰撞,下一时刻t=1时执行的线速度和角速度依旧为v=5m/s,w=6̊/s进行运动;若在运动空间发生碰撞,则继续调整v,w,直至对应的运动空间内不发生碰撞,比如调整为v=2m/s,w=3/̊ s,则下一时刻t=1时执行以v=2m/s,w=3̊/s进行;若调整的v和w超出范围则需要退出贴墙行为(如调整不了,丢墙了),重新进入找墙行为过程,此时,下一时刻t=1时刻的执行速度(线速度v和角速度w)由找墙部分计算得到。通过运动模型在特定周期的运动空间达到不与环境相碰撞的条件下进行调整,有效的避免了机器人在实际贴墙运动过程中与外部物体发生碰撞;并且以合适的最大速度运动,使机器人运动得更加迅速流畅,便捷的完成贴边任务。
[0060] 进一步地,所述方法包括:步骤S132,若所述角速度的调整未超过对应阈值,则根据调整后的角速度及线速度确定新的采样速度,根据所述新的采样速度确定对应的所述移动机器人在新的采样周期内的运动空间。在此,若调整机器人的角速度时,调整的角度未超过对应阈值,则根据机器人的运动模型,以调整后的角速度和线速度估计下一个运动计算周期内的运动空间。
[0061] 在本申请一实施例中,如图4所示的机器人的预测运动轨迹示意图,根据采样速度预测移动机器人在固定采样周期内以一定线速度和角速度的运动轨迹P(从位置A2到位置B1的运动轨迹)。分析当前的激光数据,不断调整机器人的线速度与角速度使得当前采样周期的运动轨迹与激光数据反映的障碍物不发生碰撞,从而进行沿墙运动,如图5所示的沿墙运动的运动驱动的指示图,其中,n为墙面,前进方向为L,驱使机器人超靠近边界轮廓(墙面n)方向和前进方向(L)运动。
[0062] 本申请所述的用于移动机器人的沿墙运动的方法,通过分析激光雷达和沿墙传感器的测距信息,实现机器人贴近周围物体的轮廓运动。通过构造移动机器人的运动模型,预测机器人在固定机器周期以一定线速度和角速度的运动轨迹,分析当前的激光数据,不断调整机器人的线速度与角速度,从而使得当前机器周期的运动轨迹与激光数据反映的障碍物不发生碰撞。
[0063] 图6示出根据本申请另一个方面提供的一种用于移动机器人沿墙运动的设备结构示意图,所述设备包括:数据融合模块11、确定墙面运动模块12和贴墙运动模块13;其中,数据融合模块11,用于将获取的沿墙传感器测距数据插入至激光测距数据中,得到测距数据集,确定所述测距数据集中的数据与所述沿墙传感器测距数据之间的距离偏差,根据所述距离偏差及所述测距数据集确定贴墙检测数据;确定墙面运动模块12,用于根据所述贴墙检测数据进行确定待贴近的墙面;贴墙运动模块13,用于根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间,以及,用于根据所述贴墙检测数据确定机器人在当前采样周期内的运行速度,根据所述待贴近的墙面及所述运动空间以所述运行速度进行沿墙运动。在本申请一实施例中,如图7所示的通过数据融合模块11、确定墙面运动模块12及贴墙运动模块13实现的贴墙运动示意图,数据融合模块11用于分析有效的沿墙传感器测距数据与周围激光测距数据,融合两组传感器数据用于贴墙;确定墙面运动模块12用于找墙,移动机器人根据当前激光的测量数据和给定的目标点选择需要靠近的墙上的目标点,并朝着目标点前行直至贴近墙面;贴墙运动模块13通过相应的算法分析,驱使机器人向着靠近边界轮廓方向和前进方向运动。具体实现方式为:
[0064] 在数据融合模块11中,执行以下步骤:融合激光与沿墙传感器数据,分析激光与沿墙传感器数据以确定是否出现距离偏差较大的环境(如检测到T型墙面),若否,则补偿激光数据形成融合后的激光数据,用于贴墙运动,若是,则直接将原激光数据作为用于贴墙运动的融合数据;接着,在确定墙面运动模块12中,进行找墙运动,判断机器人在当前的位置时是否贴近墙面,若是,则直接进入贴墙运动模块13中的执行步骤,若否,则判断是否采取固定方向运动,若是,则以选定给定的目标点作为运动方向,若否,则找距离机器人最近的贴墙点作为运动方向,朝选定的运动方向前进,不断判断是否贴近墙面,循环确定墙面运动模块12中的执行步骤,直至已经确定贴近墙面,则进入贴墙运动模块13中的执行步骤,在贴墙运动模块13中,执行以下步骤:以最大角速度和最大线速度作为初始速度(v,w),根据初始速度进行运动估计,计算机器人初始速度(v,w)对应的运动空间,判断运动空间是否会碰到障碍物,若否,则沿墙面以合适的最大速度(v,w)前进;若是,则调整机器人朝左或朝右的旋转程度以调整角速度,继续判断调整的角速度是否超过阈值,若否,则重新进行运动估计确定调整后的速度(v’,w’)对应的运动空间;若是,则调整减小线速度,当线速度低于最低阈值时退出贴墙模式,否则继续重新进行运动估计,直至完成贴墙运动,以进行后续的沿墙运动。
[0065] 通过本申请所述的用于移动机器人沿墙运动的设备的各模块中执行步骤,利用激光数据和沿墙传感器测距数据作为贴墙的参考数据源,充分考虑当前环境,同时,以采样速度预测机器人在特定周期的运动轨迹空间,有效的避免了机器人在实际贴墙运动过程中与外部物体发生碰撞。再者,采样速度的设计方法,充分考虑了机器人的运动尽量贴近墙,并且以合适的最大速度运动,使机器人运动得更加迅速流畅,便捷的完成贴边任务。
[0066] 根据本申请又一个方面,还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如前述所述的用于移动机器人沿墙运动的方法。
[0067] 根据本申请的另一个方面,还提供了一种用于移动机器人沿墙运动的设备,所述设备包括:
[0068] 一个或多个处理器;以及
[0069] 存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如前述用于移动机器人沿墙运动的方法的操作,例如,所述计算机可读指令在被执行时使所述处理器执行:将获取的沿墙传感器测距数据插入至激光测距数据中,得到测距数据集,确定所述测距数据集中的数据与所述沿墙传感器测距数据之间的距离偏差,根据所述距离偏差及所述测距数据集确定贴墙检测数据;根据所述贴墙检测数据进行确定待贴近的墙面;根据速度采样的方式确定所述移动机器人的采样速度,基于所述采样速度确定所述移动机器人在采样周期内的运动空间;根据所述贴墙检测数据确定机器人在当前采样周期内的运行速度,根据所述待贴近的墙面及所述运动空间以所述运行速度进行沿墙运动。
[0070] 显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
[0071] 需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
[0072] 另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。
[0073] 对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。