一种移动机器人停障方法、装置、电子设备及存储介质与流程

未命名 10-21 阅读:56 评论:0


1.本技术涉及避障技术领域,具体而言,涉及一种移动机器人停障方法、装置、电子设备及存储介质。


背景技术:

2.随着科技的飞速发展,人们生活水平的不断提高,越来越多的设备趋向于智能化,其中尤为突出的是移动机器人。移动机器人是一种具有移动能力的智能机器,例如自动驾驶车辆、扫地机器人和建筑机器人等。
3.移动机器人通常具有障碍物感应功能,当遇到障碍物的时候,能够自动避开或者停下,以避免与障碍物发生碰撞。现有技术中对于移动机器人的控制方式,准确度不够。


技术实现要素:

4.有鉴于此,本技术的目的在于提供一种移动机器人停障方法、装置、电子设备及存储介质,以克服现有技术中的问题。
5.第一方面,本技术实施例提供了一种移动机器人停障方法,所述方法包括:
6.预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹;
7.对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,并检测出所述停障检测区域中障碍物的目标位置;其中,所述目标位置映射在所述行驶轨迹上一阻挡位置;
8.根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。
9.在本技术一些技术方案中,上述预测时间包括多个具有预设时间间隔的预测子时间;所述预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹,包括:
10.根据所述移动机器人行驶过程中的预瞄距离,在所述预设行驶路径或所述预设行驶路径的扩展路径上确定一预瞄点;
11.基于所述移动机器人的当前速度、预瞄距离和所述移动机器人与所述预瞄点之间的位置关系,确定出所述移动机器人相对于该预瞄点的角速度;
12.基于所述移动机器人的当前位置、所述移动机器人的当前速度和相对于所述预瞄点的角速度,预测所述移动机器人在该预测子时间内行驶子轨迹;
13.根据各个所述预测子时间内行驶子轨迹,得到预测时间内所述移动机器人的行驶轨迹。
14.在本技术一些技术方案中,上述方法通过以下方式确定所述预瞄点:
15.响应于前视距离设置操作,确定所述移动机器人的前视距离;
16.基于所述前视距离、或所述前视距离和所述移动机器人的当前速度,确定出所述移动机器人所在位置对应的预瞄距离;
17.将所述预设行驶路径或扩展路径上距所述移动机器人所述预瞄距离的点作为所
述预瞄点。
18.在本技术一些技术方案中,上述基于所述移动机器人的当前速度、预瞄距离和所述移动机器人与所述预瞄点之间的位置关系,确定出所述移动机器人相对于该预瞄点的角速度,包括:
19.根据所述移动机器人的当前速度、预瞄距离和所述移动机器人与所述预瞄点之间的相对角度,确定出所述移动机器人相对于该预瞄点的角速度。
20.在本技术一些技术方案中,上述方法还包括:
21.构建位置参考坐标系;
22.所述基于所述移动机器人的当前位置、所述移动机器人的当前速度和相对于所述预瞄点的角速度,预测所述移动机器人在该预测子时间内行驶子轨迹,包括:
23.基于所述移动机器人当前位置在所述位置参考坐标系中的当前坐标,所述移动机器人的当前速度和相对于所述预瞄点的角速度,预测所述移动机器人在该预测子时间内移动后的移动坐标;
24.根据所述移动机器人在该预测子时间内移动后的移动坐标和所述位置参考坐标系,确定所述移动机器人在该预测子时间内行驶子轨迹。
25.在本技术一些技术方案中,上述移动机器人包含有不同类型,所述对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,包括:
26.针对不同类型的所述移动机器人,使用与该类型的所述移动机器人对应的膨胀方式,得到所述停障检测区域。
27.在本技术一些技术方案中,上述针对不同类型的所述移动机器人,使用与该类型的所述移动机器人对应的膨胀方式,得到所述停障检测区域,包括:
28.针对差速轮类型的所述移动机器人,根据所述移动机器人的属性信息对所述行驶轨迹进行膨胀扩充进行膨胀扩充,得到所述停障检测区域;
29.针对全向轮类型的所述移动机器人,根据所述移动机器人各个时间点的速度方向和所述移动机器人的属性信息对所述行驶轨迹进行膨胀扩充进行膨胀扩充,得到所述停障检测区域。
30.在本技术一些技术方案中,上述方法通过以下方式确定所述目标位置在所述行驶轨迹上映射的阻挡位置:
31.以所述目标位置为起点向所述行驶轨迹做垂线,确定所述目标位置与所述行驶轨迹或所述行驶轨迹延长线的垂足;
32.将距离所述移动机器人最近的垂足作为所述目标位置在所述行驶轨迹上映射的阻挡位置。
33.在本技术一些技术方案中,上述根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,包括:
34.根据所述轨迹距离与预设速度控制区长度之间的关系,确定一安全系数;
35.基于所述安全系数调整所述移动机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。
36.第二方面,本技术实施例提供了一种移动机器人停障装置,所述装置包括:
37.预测模块,用于预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨
迹;
38.膨胀模块,用于对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,并检测出所述停障检测区域中障碍物的目标位置;其中,所述目标位置映射在所述行驶轨迹上一阻挡位置;
39.调控模块,用于根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。
40.第三方面,本技术实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的移动机器人停障方法的步骤。
41.第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的移动机器人停障方法的步骤。
42.本技术的实施例提供的技术方案可以包括以下有益效果:
43.本技术方法包括预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹;对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,并检测出所述停障检测区域中障碍物的目标位置;其中,所述目标位置映射在所述行驶轨迹上一阻挡位置;根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。
44.本技术预测了移动机器人的行驶轨迹,基于移动轨迹确定停障检测区域,而非设置固定的停障检测区域,且不受机器人非运动方向障碍物的影响,更加精准的计算与障碍物的距离,进而更加准确的进行速度调控,增加机器人运行稳定性。
45.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
46.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
47.图1示出了本技术实施例所提供的现有技术中停障方法的示意图;
48.图2示出了本技术实施例所提供的一种移动机器人停障方法的流程示意图;
49.图3示出了本技术实施例所提供的一种本技术中移动机器人描述相对点的示意图;
50.图4示出了本技术实施例所提供的一种预瞄点示意图;
51.图5示出了本技术实施例所提供的一种停障检测区域的示意图;
52.图6示出了本技术实施例所提供的一种移动机器人停障装置的示意图;
53.图7为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
54.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解,本技术中附图仅起到说明和描述的目的,并不用于限定本技术的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本技术中使用的流程图示出了根据本技术的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本技术内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
55.另外,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
56.需要说明的是,本技术实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其他的特征。
57.如图1所示,现有技术中的停障方法为:在移动机器人的周围分别设置固定的减速区、停止区等。在减速区内出现了障碍物的时候,移动机器人降低行驶速度。在停止区内出现了障碍物的时候,移动机器人停止行驶。在这种停障方式中,对于移动机器人的控制精度较低。
58.基于此,本技术实施例提供了一种移动机器人停障方法、装置、电子设备及存储介质,下面通过实施例进行描述。
59.图2示出了本技术实施例所提供的一种移动机器人停障方法的流程示意图,其中,该方法包括步骤s101-s103;具体的:
60.s101、预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹;
61.s102、对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,并检测出所述停障检测区域中障碍物的目标位置;其中,所述目标位置映射在所述行驶轨迹上一阻挡位置;
62.s103、根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。
63.本技术预测了移动机器人的行驶轨迹,基于移动轨迹确定停障检测区域,而非设置固定的停障检测区域,且不受机器人非运动方向障碍物的影响,更加精准的计算与障碍物的距离,进而更加准确的进行速度调控,增加机器人运行稳定性。
64.下面对本技术的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
65.本技术实施例提供一种移动机器人停障方法,这里的移动机器人表征的是能够移动的智能设备,一般由本体和移动轮构成,这里的本体具有一定的长度和宽度,例如本体可以为长方体状、正方体状或者圆柱体状等。一般本体设置在移动轮上。本体内部设置有处理模块、储能模块、传感器模块、驱动模块等,移动机器人的移动原理都是现有技术中能够实现的,在此不再赘述。需要说明的是,本技术中对于移动机器人的描述都是相对于底部切面
的中心点或者垂直于移动机器人在预设形式路径上做投影的中心点而言的。即预测出来的行驶轨迹也是相对于该中心点而言的。如图3所示,图中的矩形框为移动机器人,本技术中的相对位置、角度等都是相对于矩形框的中心点(图中的圆圈)而言的,而不是其他位置。进而在本技术中预测得到的行驶轨迹为一条线(直线或者曲线)。
66.s101、预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹。
67.在s101中,预设行驶路径和预测时间都是人为预先设定好的。这里的行驶路径可以是预先为移动机器人选好,然后输入到移动机器人的处理模块中的。也可以是在移动机器人的处理模块内输入了终点之后,移动机器人通过对路线、路况等综合处理之后,移动机器人自己选定的路径。在确定了路径之后,移动机器人会按照该路径进行行驶。在对移动机器人的行驶轨迹进行预测的时候,还需要设置一预测时间,预测该预测时间内移动移动机器人在预设行驶路径上的行驶轨迹。如果未设置预测时间的话,移动机器人会在预设行驶路径上一直行驶,不知道什么时候才能结束。而且这里的预测时间要小于或者等于移动机器人走完预设行驶路径的所需时间。
68.在具体实施的时候,移动机器人为自动驾驶车辆,设置行驶路径为a地到b地。自动驾驶车辆从a地到b地的所需时间为三十分钟,本技术实施例中可以设置预测时间为二十分钟。即在自动驾驶车辆从a地到b地的时候,预测自动驾驶车辆在二十分钟的时候的行驶轨迹。
69.在对移动机器人的行驶轨迹进行预测的时候,为了保证预测的准确度,本技术实施例将预测时间又划分为了多个预测子时间,相邻两个预测之间时之间具有固定的时间间隔(这里的时间间隔也是人为设定的)。也就是说,本技术实施例中的预测时间是由多个预测子时间构成的,那么对预测时间内的行驶轨迹预测,就转化为了对各个预测子时间的行驶子轨迹的预测,然后将各个预测行驶子轨迹依次连接就能够得到预测时间内的行驶轨迹。
70.为了预测各个预测子时间内移动机器人在行驶路径上的行驶子轨迹,本技术实施例需要先设置一前视距离。这里的前视距离也是人为设置的,在确定了移动机器人的前视距离之后,本技术实施例需要基于前视确定出移动机器人在行驶过程的预瞄距离。在确定预瞄距离的时候本技术实施例还需要考虑移动机器人的当前速度。如果移动机器人的当前速度大于等于预设速度阈值的话,移动机器人的预瞄距离是根据前视距离和移动机器人的当前速度确定的。如果移动机器人的当前速度小于预设阈值的话,移动机器人的预瞄距离是根据前视距离确定的。
71.在具体实施的时候,这里的速度阈值一般选择为0.2m/s,具体的,当v》0.2时,v_flw=0.5*v+flw;当v≤0.2时,v_flw=0.5*flw。其中,v_flw为预瞄距离,flw为前视距离,v为移动机器人的当前速度。
72.在确定了移动机器人的前视距离之后,本技术实施例还需要再预设行驶路径上确定出移动机器人当前的所在位置的预瞄点。预瞄点用于将移动机器人的行驶方向约束在预设行驶路径上。在确定了预瞄距离之后,将距离移动机器人预瞄距离的点作为预瞄点。
73.需要说明的是,距离移动机器人预瞄距离的点有很多,本技术实施例需要做以下排除。预瞄点顾名思义行驶路径前方的点,所以排除移动机器人行驶反方向的点。再者,本技术上述已说明本技术是相对于底部切面的中心点或者垂直于移动机器人在预设形式路
径上做投影的中心点而言的,所以这里的预瞄点仅有一个点。而且预瞄点可能位于预设行驶路径内,也可能位于预设行驶路径的扩展路径上(移动机器人在预设行驶路径的末端时)。这里的扩展路径为预设行驶路径的延长线,其作用主要是为了约束小车在靠近终点时的前进方向,其生成方式为确定预设行驶路径终点的方向角,延方向角(相对于以移动机器人的中心点为原点,已移动方向为正方向构建的坐标系而言)的方向生成长度1m的拓展路径。
74.在确定了预瞄点之后,本技术实施例还需要计算出移动机器人相对于该预瞄点的角速度。在确定移动机器人相对于该预瞄点的角速度的时候,本技术实施例依据的是移动机器人的当前速度和所述移动机器人与所述预瞄点之间的位置关系。这里移动机器人与预瞄点之间的位置关系为移动机器人与预瞄点之间的相对角度。这里的相对角度为移动机器人的当前速度方向、移动机器人与预瞄点连线之间的夹角,如图4所示。
75.具体的,角速度为w=(v)/(0.5*v_lfw/sin(eta));其中,v_flw表示运动过程中的预瞄距离,v表示移动机器人的当前速度,w代表角速度,eta表示移动机器人与预瞄点之间的位置关系为移动机器人与预瞄点之间的相对角度。如果eta==0;那么w=0。角速度对行驶速度的压制关系为v=v*[(1.57-|w|)/1.57]^4,及角速度越大,速度越小。通常会有最小速度的限制,当v《vmin时,v=vmin。
[0076]
在得到了移动机器人相对于该预瞄点的角速度之后,本技术实施例基于所述移动机器人的当前位置、所述移动机器人的当前速度和相对于所述预瞄点的角速度,预测所述移动机器人在该预测子时间内行驶子轨迹;根据各个所述预测子时间内行驶子轨迹,得到预测时间内所述移动机器人的行驶轨迹。
[0077]
为了方便位置预测,本技术实施例需要构建一位置参考坐标系。为了计算方便,以所述移动机器人的中心点为原点构建位置参考坐标系。这里的位置参考坐标系为一个二维坐标系,以移动机器人的移动方向为x轴正方向。这样移动机器人的当前位置在位置参考坐标系中可以用具体的坐标进行表示。这样对下一个移动位置的预测,就转化为了对下一个移动位置的坐标预测。在该位置参考坐标系中确定出下一个移动位置的移动坐标之后,基于移动坐标与移动机器人当前位置在所述位置参考坐标系中的当前坐标之间的关联关系和移动机器人的当前位置,确定下一个移动位置的。基于当前位置和移动位置,即可得到移动机器人在该预测子时间内行驶子轨迹。
[0078]
对于移动坐标的计算过程如下所示:
[0079][0080]
其中,x、y为移动机器人当前位置在位置参考坐标系中的横坐标、纵坐标,θ为当前位置的方向角,w代表角速度,v为移动机器人的当前速度。和预测位置的横坐标、纵坐标和方向角。δt为预测子时间。
[0081]
s102、对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,并检测出所述停障检测区域中障碍物的目标位置;其中,所述目标位置映射在所述行驶轨迹上
一阻挡位置。
[0082]
在预测得到了移动机器人的行驶轨迹之后,需要确定出移动机器人的停障检测区域。本技术实施例中为了提升检测的准确性,没有直接使用预测得到的行驶轨迹作为停障检测区域,而是对行驶轨迹进行了膨胀扩充得到停障检测区域。也就是说,本技术实施例中的停障检测区域相较于预测得到的行驶轨迹大,能够检测更加全面的区域。
[0083]
在对行驶轨迹进行膨胀扩充的时候,考虑到移动机器人具有不同的类型,本技术实施例针对不同类型的移动机器人采取与不同的膨胀方式。这里不同类型的移动机器人主要是按照移动机器人移动轮的移动方式进行区分的。具体可以分为差速轮类型的移动机器人和全向轮类型的移动机器人。
[0084]
对于差速轮类型的移动机器人来说其仅具有x方向的速度(这里x方向是在上述位置参考坐标系中而言的),所以在针对差速轮类型的移动机器人进行膨胀扩充的时候,仅需要考虑移动机器人的属性信息即可。在这里的属性信息主要是移动机器人的宽度。对于针对差速轮类型的移动机器人来说,具体的膨胀长度为0.5*移动机器人的宽度。
[0085]
对于全向轮类型的移动机器人来说,在对其进行膨胀扩充的时候,需要考虑其瞬时速度方向,即移动机器人在各个时间点的速度方向。根据所述移动机器人各个时间点的速度方向和所述移动机器人的属性信息对所述行驶轨迹进行膨胀扩充进行膨胀扩充。这里移动机器人的属性信息为移动机器人的宽度和长度。在考虑移动机器人的速度方向的时候,主要是使用的时速度方向与移动机器人本体正方向(也就是上述坐标系中的x轴方向)的偏转角。具体的膨胀长度:expend=(car_width*cos(omni_angle)+car_length*sin(omni_angle))/2;其中,expend表示膨胀长度,car_width为移动机器人的宽度,car_length为移动机器人的长度,omni_angle为速度方向与移动机器人正方向(x轴)的偏转角。
[0086]
在确定了各个时间点的膨胀长度之后,根据膨胀长度对行驶轨迹进行膨胀扩充。由于本技术实施例都是相对于中心点而言的,而非移动机器人的自身真实结构,所以在确定停障检测区域的时候,需要考虑中心点在行驶轨迹末端的时候,移动机器人本身前半部分已经超出了行驶轨迹。即在对行驶轨迹进行膨胀扩充之后,还需要加上半个移动机器人的体积。如图5所示,其中曲线a为预测出来的行驶轨迹,曲线b和曲线c为根据膨胀长度膨胀扩充出来的线。将曲线b和曲线c的起点连接起来在加上图中的虚线部分(移动机器人体积的一半)作为停障检测区域。
[0087]
在确定了停障检测区域之后,为了提高检测效率,本技术实施例需要将停障检测区域中的移动机器人本身所在区域排除掉,即对停障检测区域中有效区域进行障碍物检测。在对障碍物进行检测的时候,本技术实施例采用的是获取点云信息的方式。具体的点云发射方式为现有技术能够实现的在此不再赘述。在获取到停障检测区域中点云信息之后,排除了移动机器人自身的点云,进而确定出障碍物的所在位置。
[0088]
得到了障碍物的所在位置之后,本技术实施例并不是直接使用障碍物与移动机器人之间的距离进行停障预测。因为移动机器人是按照预测的行驶轨迹行驶的,移动机器人在预测的行驶轨迹行驶的距离与该障碍物到移动机器人的距离可能会有差别。障碍物在预测的行驶轨迹上且行驶轨迹为直线的时候,移动机器人在预测的行驶轨迹行驶的距离与该障碍物到移动机器人的距离相同,在其他情况是不同的。所以为了提高停障的精确度,本技术实施例使用的是障碍物的目标位置在行驶轨迹上映射的阻挡位置。
[0089]
为了得到障碍物的目标位置在行驶轨迹上映射的阻挡位置,本技术实施例以所述目标位置为起点向所述行驶轨迹做垂线,确定所述目标位置与所述行驶轨迹或所述行驶轨迹延长线的垂足;将距离所述移动机器人最近的垂足作为所述目标位置在所述行驶轨迹上映射的阻挡位置。
[0090]
由于本技术实施例中预测的行驶轨迹是由多个预瞄点确定的,在从目标位置向行驶轨迹做垂线的时候,本技术实施例是依次向相邻两个预瞄点之间的连线上做。有的相邻两个预瞄点之间的连线是与目标位置之间是不存在垂直关系的,这种连线是本技术实施例需要排除的,然后找到能够做垂线的垂足。垂足可能存在多个的情况,对于存在多个垂足的情况,本技术实施例根据移动机器人通过的先后顺序,将距离所述移动机器人最近的垂足作为所述目标位置在所述行驶轨迹上映射的阻挡位置。
[0091]
由于本技术实施例中的停障检测区域包含有预测的行驶轨迹外部的半个移动机器人的体积。当障碍物在该区域的时候,障碍物所在的目标位置是不会存在与行驶轨迹存在垂线的情况。此时,在映射障碍物的阻挡位置的时候,需要将行驶轨迹从终点向轨迹方向角进行延长,得到行驶轨迹的延长线。以目标位置为起点向延长线上做垂线,进而找到目标位置在所述行驶轨迹上映射的阻挡位置。
[0092]
s103、根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。
[0093]
在确定了阻挡位置之后,计算出阻挡位置与移动机器人之间的距离。即从移动机器人的当前位置按照行驶轨迹行驶到阻挡物位置所要行驶的距离。由于本技术实施例中都是相对于机器人的中心点而言的,所以在计算出来阻挡位置与移动机器人之间的距离之后,还需要考虑移动机器人本身的体积。即将阻挡位置与移动机器人之间的距离加上移动机器人的长度的一半即可得到阻挡位置与移动机器人之间的轨迹距离。具体的,可以根据二者在位置参考坐标系中的坐标计算欧式距离。
[0094]
在得到了阻挡位置与移动机器人之间的轨迹距离之后,基于根据所述轨迹距离与预设速度控制区长度之间的关系,确定一安全系数;基于所述安全系数调整所述移动机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。
[0095]
这里的速度控制区长度包括了停止区长度和减速区长度,如果轨迹距离小于等于停止区长度的话,安全系数为0,调控移动机器人的速度为0。如果轨迹距离大于等于减速区长度的话,安全系数为1,调控移动机器人保持当前速度。如果轨迹距离大于停止区长度且小于速度控制区长度(停止区长度加上减速区长度)的话,轨迹距离越小,安全系数越大,调控移动机器人的速度越慢,否则相反。
[0096]
具体的,安全系数通过以下方式的得到:
[0097][0098]
其中,y为安全系数,dis为轨迹距离,stop停止区长度slow减速区长度。
[0099]
图6示出了本技术实施例所提供的一种移动机器人停障装置的结构示意图,所述
装置包括:
[0100]
预测模块,用于预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹;
[0101]
膨胀模块,用于对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,并检测出所述停障检测区域中障碍物的目标位置;其中,所述目标位置映射在所述行驶轨迹上一阻挡位置;
[0102]
调控模块,用于根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。
[0103]
所述预测时间包括多个具有预设时间间隔的预测子时间;所述预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹,包括:
[0104]
根据所述移动机器人行驶过程中的预瞄距离,在所述预设行驶路径或所述预设行驶路径的扩展路径上确定一预瞄点;
[0105]
基于所述移动机器人的当前速度、预瞄距离和所述移动机器人与所述预瞄点之间的位置关系,确定出所述移动机器人相对于该预瞄点的角速度;
[0106]
基于所述移动机器人的当前位置、所述移动机器人的当前速度和相对于所述预瞄点的角速度,预测所述移动机器人在该预测子时间内行驶子轨迹;
[0107]
根据各个所述预测子时间内行驶子轨迹,得到预测时间内所述移动机器人的行驶轨迹。
[0108]
通过以下方式确定所述预瞄点:
[0109]
响应于前视距离设置操作,确定所述移动机器人的前视距离;
[0110]
基于所述前视距离、或所述前视距离和所述移动机器人的当前速度,确定出所述移动机器人所在位置对应的预瞄距离;
[0111]
将所述预设行驶路径或扩展路径上距所述移动机器人所述预瞄距离的点作为所述预瞄点。
[0112]
基于所述移动机器人的当前速度、预瞄距离和所述移动机器人与所述预瞄点之间的位置关系,确定出所述移动机器人相对于该预瞄点的角速度,包括:
[0113]
根据所述移动机器人的当前速度、预瞄距离和所述移动机器人与所述预瞄点之间的相对角度,确定出所述移动机器人相对于该预瞄点的角速度。
[0114]
所述装置还包括构建模块,用于构建位置参考坐标系;
[0115]
所述基于所述移动机器人的当前位置、所述移动机器人的当前速度和相对于所述预瞄点的角速度,预测所述移动机器人在该预测子时间内行驶子轨迹,包括:
[0116]
基于所述移动机器人当前位置在所述位置参考坐标系中的当前坐标,所述移动机器人的当前速度和相对于所述预瞄点的角速度,预测所述移动机器人在该预测子时间内移动后的移动坐标;
[0117]
根据所述移动机器人在该预测子时间内移动后的移动坐标和所述位置参考坐标系,确定所述移动机器人在该预测子时间内行驶子轨迹。
[0118]
所述移动机器人包含有不同类型,所述对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,包括:
[0119]
针对不同类型的所述移动机器人,使用与该类型的所述移动机器人对应的膨胀方
式,得到所述停障检测区域。
[0120]
所述针对不同类型的所述移动机器人,使用与该类型的所述移动机器人对应的膨胀方式,得到所述停障检测区域,包括:
[0121]
针对差速轮类型的所述移动机器人,根据所述移动机器人的属性信息对所述行驶轨迹进行膨胀扩充进行膨胀扩充,得到所述停障检测区域;
[0122]
针对全向轮类型的所述移动机器人,根据所述移动机器人各个时间点的速度方向和所述移动机器人的属性信息对所述行驶轨迹进行膨胀扩充进行膨胀扩充,得到所述停障检测区域。
[0123]
通过以下方式确定所述目标位置在所述行驶轨迹上映射的阻挡位置:
[0124]
以所述目标位置为起点向所述行驶轨迹做垂线,确定所述目标位置与所述行驶轨迹或所述行驶轨迹延长线的垂足;
[0125]
将距离所述移动机器人最近的垂足作为所述目标位置在所述行驶轨迹上映射的阻挡位置。
[0126]
根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,包括:
[0127]
根据所述轨迹距离与预设速度控制区长度之间的关系,确定一安全系数;
[0128]
基于所述安全系数调整所述移动机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。
[0129]
如图7所示,本技术实施例提供了一种电子设备,用于执行本技术中的移动机器人停障方法,该设备包括存储器、处理器、总线及存储在该存储器上并可在该处理器上运行的计算机程序,其中,上述处理器执行上述计算机程序时实现上述的移动机器人停障方法的步骤。
[0130]
具体地,上述存储器和处理器可以为通用的存储器和处理器,这里不做具体限定,当处理器运行存储器存储的计算机程序时,能够执行上述的移动机器人停障方法。
[0131]
对应于本技术中的移动机器人停障方法,本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述的移动机器人停障方法的步骤。
[0132]
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述的移动机器人停障方法。
[0133]
在本技术所提供的实施例中,应该理解到,所揭露系统和方法,可以通过其他的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其他的形式。
[0134]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0135]
另外,在本技术提供的实施例中的各功能单元可以集成在一个处理单元中,也可
以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0136]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0137]
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0138]
最后应说明的是:以上所述实施例,仅为本技术的具体实施方式,用以说明本技术的技术方案,而非对其限制,本技术的保护范围并不局限于此,尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本技术实施例技术方案的精神和范围。都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应所述以权利要求的保护范围为准。

技术特征:
1.一种移动机器人停障方法,其特征在于,所述方法包括:预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹;对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,并检测出所述停障检测区域中障碍物的目标位置;其中,所述目标位置映射在所述行驶轨迹上一阻挡位置;根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。2.根据权利要求1所述的方法,其特征在于,所述预测时间包括多个具有预设时间间隔的预测子时间;所述预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹,包括:根据所述移动机器人行驶过程中的预瞄距离,在所述预设行驶路径或所述预设行驶路径的扩展路径上确定一预瞄点;基于所述移动机器人的当前速度、预瞄距离和所述移动机器人与所述预瞄点之间的位置关系,确定出所述移动机器人相对于该预瞄点的角速度;基于所述移动机器人的当前位置、所述移动机器人的当前速度和相对于所述预瞄点的角速度,预测所述移动机器人在该预测子时间内行驶子轨迹;根据各个所述预测子时间内行驶子轨迹,得到预测时间内所述移动机器人的行驶轨迹。3.根据权利要求2所述的方法,其特征在于,所述方法通过以下方式确定所述预瞄点:响应于前视距离设置操作,确定所述移动机器人的前视距离;基于所述前视距离、或所述前视距离和所述移动机器人的当前速度,确定出所述移动机器人所在位置对应的预瞄距离;将所述预设行驶路径或扩展路径上距所述移动机器人所述预瞄距离的点作为所述预瞄点。4.根据权利要求2所述的方法,其特征在于,所述基于所述移动机器人的当前速度、预瞄距离和所述移动机器人与所述预瞄点之间的位置关系,确定出所述移动机器人相对于该预瞄点的角速度,包括:根据所述移动机器人的当前速度、预瞄距离和所述移动机器人与所述预瞄点之间的相对角度,确定出所述移动机器人相对于该预瞄点的角速度。5.根据权利要求2所述的方法,其特征在于,所述方法还包括:构建位置参考坐标系;所述基于所述移动机器人的当前位置、所述移动机器人的当前速度和相对于所述预瞄点的角速度,预测所述移动机器人在该预测子时间内行驶子轨迹,包括:基于所述移动机器人当前位置在所述位置参考坐标系中的当前坐标,所述移动机器人的当前速度和相对于所述预瞄点的角速度,预测所述移动机器人在该预测子时间内移动后的移动坐标;根据所述移动机器人在该预测子时间内移动后的移动坐标和所述位置参考坐标系,确定所述移动机器人在该预测子时间内行驶子轨迹。6.根据权利要求1所述的方法,其特征在于,所述移动机器人包含有不同类型,所述对
所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,包括:针对不同类型的所述移动机器人,使用与该类型的所述移动机器人对应的膨胀方式,得到所述停障检测区域。7.根据权利要求6所述的方法,其特征在于,所述针对不同类型的所述移动机器人,使用与该类型的所述移动机器人对应的膨胀方式,得到所述停障检测区域,包括:针对差速轮类型的所述移动机器人,根据所述移动机器人的属性信息对所述行驶轨迹进行膨胀扩充进行膨胀扩充,得到所述停障检测区域;针对全向轮类型的所述移动机器人,根据所述移动机器人各个时间点的速度方向和所述移动机器人的属性信息对所述行驶轨迹进行膨胀扩充进行膨胀扩充,得到所述停障检测区域。8.根据权利要求1所述的方法,其特征在于,所述方法通过以下方式确定所述目标位置在所述行驶轨迹上映射的阻挡位置:以所述目标位置为起点向所述行驶轨迹做垂线,确定所述目标位置与所述行驶轨迹或所述行驶轨迹延长线的垂足;将距离所述移动机器人最近的垂足作为所述目标位置在所述行驶轨迹上映射的阻挡位置。9.根据权利要求1所述的方法,其特征在于,根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,包括:根据所述轨迹距离与预设速度控制区长度之间的关系,确定一安全系数;基于所述安全系数调整所述移动机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。10.一种移动机器人停障装置,其特征在于,所述装置包括:预测模块,用于预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹;膨胀模块,用于对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,并检测出所述停障检测区域中障碍物的目标位置;其中,所述目标位置映射在所述行驶轨迹上一阻挡位置;调控模块,用于根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,避免所述移动机器人与障碍物发生碰撞。11.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至9任一所述的移动机器人停障方法的步骤。12.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至9任一所述的移动机器人停障方法的步骤。

技术总结
本申请提供了一种移动机器人停障方法、装置、电子设备及存储介质,该方法包括:预测在预测时间内所述移动机器人在预设行驶路径上的行驶轨迹;对所述行驶轨迹进行膨胀扩充,得到所述移动机器人的停障检测区域,并检测出所述停障检测区域中障碍物的目标位置;其中,所述目标位置映射在所述行驶轨迹上一阻挡位置;根据所述阻挡位置与移动机器人之间的轨迹距离,调控机器人的移动速度,避免所述移动机器人与障碍物发生碰撞;本申请预测了移动机器人的行驶轨迹,基于移动轨迹确定停障检测区域,而非设置固定的停障检测区域,且不受机器人非运动方向障碍物的影响,更加精准的计算与障碍物的距离,进而更加准确的进行速度调控,增加机器人运行稳定性。人运行稳定性。人运行稳定性。


技术研发人员:请求不公布姓名
受保护的技术使用者:广东利元亨智能装备股份有限公司
技术研发日:2023.07.31
技术公布日:2023/10/15
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

航空商城 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

评论

相关推荐