一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

机器人的路径规划方法、电子设备及计算机可读存储介质与流程

2022-06-08 23:16:01 来源:中国专利 TAG:


1.本技术涉及机器人技术领域,特别是涉及一种机器人的路径规划方法、电子设备及计算机可读存储介质。


背景技术:

2.近年来,移动机器人在家庭服务等领域迅猛发展,其相关技术也逐渐成为研究热点,其中移动机器人路径规划算法是导航技术的关键。路径规划指机器人在具有障碍物的环境中,按照一定的规则,寻找一条从机器人当前位姿到目标位姿的最优无碰撞路径。
3.考虑到实际环境比较复杂,障碍物形状不确定因素太高等原因,目前路径规划算法在进行路径规划时,都需要膨胀车身、障碍物或者轨迹等达到避开障碍物的目的,但是在某些场景中,机器人移动的空间比较小,在进行膨胀处理时,传感器精度以及机器人、障碍物膨胀后的膨胀判断等因素的存在,导致存在机器人在狭小空间内路径规划失败的现象。


技术实现要素:

4.本技术提供一种机器人的路径规划方法、电子设备及计算机可读存储介质,能够提高机器人的环境适应能力。
5.本技术实施例第一方面提供一种机器人的路径规划方法,所述方法包括:规划所述机器人的全局运动路径;响应于所述全局运动路径规划成功,则规划所述机器人的局部运动路径;响应于所述全局运动路径规划失败,则侦测所述机器人周围的障碍物;基于所述机器人周围的所述障碍物,控制所述机器人避开所述障碍物,并返回执行所述规划所述机器人的全局运动路径的步骤。
6.本技术实施例第二方面提供一种电子设备,所述电子设备包括处理器、存储器以及通信电路,所述处理器分别耦接所述存储器、所述通信电路,所述存储器中存储有程序数据,所述处理器通过执行所述存储器内的所述程序数据以实现上述方法中的步骤。
7.本技术实施例第三方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序能够被处理器执行以实现上述方法中的步骤。
8.有益效果是:本技术的路径规划方法,在规划机器人的全局运动路径失败时,侦测机器人周围的障碍物,然后基于机器人周围的障碍物,控制机器人避开障碍物,使得机器人运动到空旷空间,然后再重新规划机器人的全局运动路径,其中在控制机器人运动到空旷空间的过程中,能够远离障碍物,克服传感器噪声、膨胀处理等因素带来的虚拟障碍物,进而提高机器人的环境适应能力、稳定性以及路径规划方法的鲁棒性。
附图说明
9.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他
的附图。其中:
10.图1是本技术机器人的路径规划方法一实施方式的流程示意图;
11.图2是本技术机器人的路径规划方法另一实施方式的流程示意图;
12.图3是本技术机器人的路径规划方法另一实施方式的流程示意图;
13.图4是本技术机器人的路径规划方法另一实施方式的流程示意图;
14.图5是本技术机器人的路径规划方法另一实施方式中的部分流程示意图;
15.图6是一应用场景中机器人的运动示意图;
16.图7是第一区域的划分示意图;
17.图8是本技术机器人的路径规划方法另一实施方式中的部分流程示意图;
18.图9是一应用场景中机器人的运动示意图;
19.图10是一应用场景中运动空间的示意图;
20.图11是一应用场景中运动空间的示意图;
21.图12是本技术电子设备一实施方式的结构示意图;
22.图13是本技术电子设备另一实施方式的结构示意图;
23.图14是本技术计算机可读存储介质一实施方式的结构示意图;
24.图15是本技术计算机程序产品一实施方式的结构示意图。
具体实施方式
25.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
26.参阅图1,图1是本技术机器人的路径规划方法一实施方式的流程示意图,该方法包括:
27.s101:规划机器人的全局运动路径。
28.本实施方式中的路径规划方法由控制机器人运动的电子设备执行,该电子设备可以与机器人彼此独立,也可以集成在机器人上。其中,当电子设备集成在机器人上时,电子设备具体可以是机器人中的处理器。
29.其中本技术对机器人的类型不做限制,其可以是任何一个可以移动的移动机器人,例如扫地机器人、救援机器人、服务机器人等。
30.其中电子设备在获取到机器人的当前位置以及目标位置后,根据预先存储的地图,规划从当前位置到目标位置的全局运动路径。
31.其中,可以采用例如a*(启发式搜索算法)、d*(动态启发式路径搜索算法)或者dijkstra(迪科斯彻算法)等算法规划机器人的全局运动路径。
32.s102:判断全局运动路径是否规划成功。
33.若成功,则执行步骤s105,若失败,则执行步骤s103。
34.其中,如果获取到全局运动路径,则判定全局运动路径规划成功,否则判定全局运动路径规划失败。
35.s103:侦测机器人周围的障碍物。
36.在本实施方式中,若全局路径规划失败,则判定造成失败的原因是机器人进入了狭小空间,进而侦测机器人周围的障碍物。
37.其中,预先在机器人上安装传感器,用于采集机器人周围的障碍物,在本实施方式中,在机器人上安装的传感器包括深度相机以及激光雷达。
38.具体而言,深度相机存在视野小、噪声大、易受光照干扰、无法测量透射材料等缺点,但具有不受物体高度限制、清晰度高等优点,而激光雷达虽然无法准确测量高度较高的物体,但是具有视野大、不易受环境因素影响等优点,因此采用深度相机和激光雷达相互配合,以弥补对方存在的缺点,保证获取机器人周围的障碍物的准确率。
39.其中,电子设备同时与深度相机以及激光雷达连接,通过深度相机以及激光雷达采集的数据,侦测机器人周围的障碍物。
40.s104:基于机器人周围的障碍物,控制机器人避开障碍物。
41.在获取到机器人周围的障碍物后,基于机器人周围的障碍物,控制机器人运动,以避开障碍物,即控制机器人进行脱困处理。
42.s105:规划机器人的局部运动路径。
43.如果步骤s102成功获取到机器人的全局运动路径,则规划机器人的局部运动路径,即进行局部路径规划。
44.其中,局部路径规划也称为局部避障,在机器人的实际运动过程中,其周围的环境并不是静态不变的,可能会出现一些运动的障碍物或者出现静态地图上不存在的障碍物,而这时就需要侦测机器人周围的环境信息,如果出现新的障碍物,就需要规划机器人的局部运动路径,以避开障碍物。
45.其中,可以采用例如dwa(动态窗口算法)或者teb等算法规划机器人的局部运动路径。
46.上述实施方式的路径规划方法,在规划机器人的全局运动路径失败时,侦测机器人周围的障碍物,然后基于机器人周围的障碍物,控制机器人避开障碍物,使得机器人运动到空旷空间,然后再重新规划机器人的全局运动路径,其中在控制机器人运动到空旷空间的过程中,能够远离障碍物,克服传感器噪声、膨胀处理等因素带来的虚拟障碍物,进而提高机器人的环境适应能力、稳定性以及路径规划方法的鲁棒性。
47.参阅图2,图2是本技术机器人的路径规划方法另一实施方式的流程示意图,该方法包括:
48.s201:规划机器人的全局运动路径。
49.s202:判断全局运动路径是否规划成功。
50.s203:侦测机器人周围的障碍物。
51.s204:基于机器人周围的障碍物,控制机器人避开障碍物。
52.s205:规划机器人的局部运动路径。
53.步骤s201-s205与上述实施方式中的步骤s101-s105对应相同,具体可参见上述实施方式,在此不再赘述,
54.s206:判断局部运动路径是否规划成功。
55.若成功,则执行步骤s207,若失败,则返回执行步骤s201。
56.其中,如果获取到局部运动路径,则判定局部运动路径规划成功,否则判定局部运
动路径规划失败。
57.s207:控制机器人运动至目的地。
58.与上述实施方式不同的是,本实施方式在局部运动路径规划失败时,判定机器人当前周围可能存在障碍物,由于局部运动路径影响着全局运动路径,因此返回重新规划机器人的全局运动路径。但是如果局部运动路径规划成功,则直接控制机器人运动至目的地。
59.参阅图3,图3是本技术机器人的路径规划方法另一实施方式的流程示意图,该方法包括:
60.s301:规划机器人的全局运动路径。
61.s302:判断全局运动路径是否规划成功。
62.s303:侦测机器人周围的障碍物。
63.s304:基于机器人周围的障碍物,控制机器人避开障碍物。
64.s305:规划机器人的局部运动路径。
65.步骤s301-s305与上述实施方式中的步骤s101-s105对应相同,具体可参见上述实施方式,在此不再赘述,
66.s306:判断局部运动路径是否规划成功。
67.如果成功,则执行步骤s309,如果失败,则执行步骤s307。
68.s307:侦测机器人周围的障碍物。
69.s308:基于机器人周围的障碍物,控制机器人避开障碍物。
70.在步骤s308之后,返回执行步骤s305。
71.与图2实施方式不同的是,本实施方式在局部运动路径规划失败时,不再重新规划全局运动路径,而是直接控制机器人进行脱困处理。其中步骤s307与上述实施方式中的步骤s103相同,步骤s308与上述实施方式中的步骤s104相同,具体可参见上述相关内容。
72.s309:控制机器人运动至目的地。
73.考虑到机器人在避开障碍物后,可能存在其他因素导致全局路径规划失败,此时重新规划全局运动路径会一直陷入循环,为了避免该现象,参阅图4,在另一实施方式中,机器人的路径规划方法包括:
74.s401:规划机器人的全局运动路径。
75.s402:判断全局运动路径是否规划成功。
76.若判断规划成功,则执行步骤s408,否则执行步骤s403。
77.s403:获取全局路径规划连续失败的累计次数。
78.s404:判断累计次数是否超过次数阈值。
79.若判断结果为是,则执行步骤s407,否则执行步骤s405。
80.s405:侦测机器人周围的障碍物。
81.s406:基于机器人周围的障碍物,控制机器人避开障碍物。
82.s407:提示规划失败。
83.s408:规划机器人的局部运动路径。
84.s409:判断局部运动路径是否规划成功。
85.若判断规划成功,则执行步骤s410,否则返回执行步骤s401。
86.s410:控制机器人运动至目的地。
87.在本实施方式中,利用计数器对全局运动路径规划连续失败的次数进行累计,当全局运动路径规划成功时,该计数器进行清零,当步骤s402判定全局运动路径规划失败时,获取计数器的计数,如果计数超过次数阈值,则提示规划失败,不再重新规划全局运动路径,否则控制机器人进行脱困处理。
88.其中,次数阈值可以根据实际应用场景进行设置,例如设置为20次或者10次等。
89.在上述任一项实施方式中,判断机器人是否脱困成功的标准可以是:机器人的预设范围内不存在障碍物。具体而言,在基于机器人周围的障碍物,控制机器人避开障碍物的过程中,如果一旦侦测到机器人周围的预设范围内不存在障碍物,则确定机器人已经避开了障碍物,机器人脱困成功,然后重新规划机器人的全局运动路径,否则继续驱动机器人避开障碍物。
90.其中预设范围可以根据实际应用场景进行设置,例如,在一应用场景中,当侦测到机器人周围0.6m内都不存在障碍物时,确定机器人已经避开了障碍物。
91.其中考虑到在某些应用场景中,可能存在无论机器人怎么运动,其都无法避开障碍物的现象,此时为了避免流程一直停留在基于机器人周围的障碍物,控制机器人避开障碍物的步骤,对机器人的运动时长进行累计,如果累计的时长达到时长阈值时,机器人还没有避开障碍物,则强制退出控制机器人避开障碍物的步骤,返回规划机器人的全局运动路径的步骤。
92.其中,时长阈值可以根据实际应用场景进行设置,例如,设置为2分钟或者15分钟等。
93.在其他实施方式中,判断机器人是否脱困成功的标准还可以是其他,例如:机器人的运动时长达到第一阈值,也就是说,在基于机器人周围的障碍物,控制机器人运动,直至机器人的运动时长达到第一阈值。
94.参阅图5,在一应用场景中,基于机器人周围的障碍物,控制机器人避开障碍物的步骤,包括:
95.s501:获取机器人周围第一区域内的障碍物。
96.在一应用场景中,第一区域是以机器人为圆心,半径等于第一预设距离的圆形区域。其中,第一预设距离可以根据实际场景进行设定,例如设定为0.6m。
97.在其他应用场景中,第一区域还可以是例如扇形、矩形、梯形等其他形状的区域,总而言之本技术对第一区域的形状不做限制。
98.s502:在第一区域不存在障碍物的至少一个第一子区域中,查找对应代价值最小的第一子区域,其中,第一子区域与机器人的前进方向的偏离程度和第一子区域对应的代价值呈正比,且第一子区域距离机器人最近的点到机器人的距离等于零,距离机器人最远的点处于第一区域的轮廓上。
99.其中,第一子区域中的代价值预先设置好,且第一子区域与机器人的前进方向的偏离程度越大,第一子区域对应的代价值越大。
100.其中,不存在障碍物的第一子区域距离机器人最近的点到机器人的距离等于零,距离机器人最远的点处于第一区域的轮廓上,从而使得机器人可以在不触碰障碍物的前提下,沿着该第一子区域内的任意一条路径离开第一区域,达到脱困的目的。
101.结合图6,机器人的前进方向记为“front”,第一子区域与机器人的前进方向的偏
离程度指的是,机器人指向第一子区域中任意一点的方向与前进方向front的最大夹角。
102.可以理解的是,第一子区域与机器人的前进方向的偏离程度越大,机器人自当前位置朝向第一子区域运动时、需要消耗的时间、能量等越多,因此设置第一子区域对应的代价值越大。
103.可以理解的是,当第一区域中不存在障碍物的第一子区域为一个时,该第一子区域即为对应代价值最小的第一子区域,当第一区域中不存在障碍物的第一子区域为两个以上时,需要在两个以上的第一子区域中查找对应代价值最小的第一子区域。
104.s503:控制机器人沿着指向对应代价值最小的第一子区域的方向运动,以避开障碍物。
105.其中,控制机器人沿着指向对应代价值最小的第一子区域的方向运动,以避开障碍物时,可以先在对应代价值最小的第一子区域中随机确定一点,然后控制机器人沿着指向该点的路径运动,从而达到避开障碍物的目的,或者,先在对应代价值最小的第一子区域中确定目标点,然后控制机器人沿着指向目标点的路径运动,从而达到避开障碍物的目的,其中在对应代价值最小的第一子区域的所有点中,机器人指向目标点的方向与机器人的前进方向front的夹角最小。
106.为了更好地理解,结合图6对步骤s503进行说明:
107.假设在图6中,第一区域中存在第一子区域a和第一子区域b都不存在障碍物,而由于第一子区域a与前进方向front的偏离程度大于第一子区域b与前进方向front的偏离程度,因此预先设置的第一子区域a的代价值大于第一子区域b的代价值,从而控制机器人沿着指向第一子区域b的方向(例如图6中虚线箭头方向)运动,以避开障碍物。
108.在该应用场景中,为了提高查找的效率,步骤s502在第一区域不存在障碍物的第一子区域中,查找对应代价值最小的第一子区域,具体包括:
109.(a1)在第一区域预先划分的多个子区域中,查找不存在障碍物的第一子区域;其中,子区域距离机器人最近的点到机器人的距离等于零,到机器人最远的点处于第一区域的轮廓上。
110.其中结合图7,以将第一区域划分为12个子区域对步骤s502进行说明:
111.在图7中,将第一区域平均分为4个大小相等且为扇形的区域,每个区域的圆心角均为90度,将该4个区域分别记为front区域、left区域、right区域以及back区域,其中,front区域的对称轴与机器人的前进方向front重合,且机器人的前进方向经过front区域,left区域、right区域分别位于front区域的两侧,back区域位于left区域、right区域之间。
112.4个大小相等的区域又分别平均被划分为3个大小相等且为扇形的子区域,也就是说,第一区域被划分为12个大小相等的子区域,可以理解的是,front区域中存在一个对称轴与机器人的前进方向front重合的子区域,将该子区域记为第一基准子区域f-c,第一基准子区域f-c两侧的子区域分别记为f-l、f-r。
113.其中,继续结合图7,在划分好子区域后,分别为多个子区域分配代价值,分配原则为:第一基准子区域f-c的代价值最小,其他的子区域中,与机器人前进方向front的偏离程度越大,其对应的代价值越大。在图7中,子区域中的数值的绝对值表示该子区域对应的代价值,数值的正、负号表示机器人自当前位置朝向对应子区域运动时的旋转方向,在图7中,第一基准子区域f-c的代价值为0,f-l子区域、f-r子区域与机器人前进方向front的偏离程
度相同,设置f-l子区域、f-r子区域的代价值相等,均为1;r-l子区域、l-r子区域与机器人前进方向front的偏离程度相同,但均大于f-l子区域/f-r子区域与机器人前进方向front的偏离程度,因此设置r-l子区域、l-r子区域的代价值为2,依次类推。
114.本实施方式将第一区域划分为多个子区域以及为子区域分配代价值后,在查找不存在障碍物的第一子区域时,只要先分别判断多个子区域中是否存在障碍物,然后在不存在障碍物的子区域中查找代价值最小的子区域即可,可以提高查找速度以及准确率。
115.在上述方案中,第一基准子区域f-c的对称轴与机器人的前进方向front重合,但是在其他实施方式中,第一基准子区域f-c的对称轴也可以与机器人的前进方向front不重合,只要保证机器人的前进方向front能够经过第一基准子区域f-c即可。可以理解的是,当第一基准子区域f-c的对称轴不与机器人的前进方向front重合时,第一区域中各个子区域的代价值不再如图7中呈对称设置。
116.同时上述方案以将第一区域划分为12个子区域对方案进行了说明,但是本技术并不限制于此,在其他实施方式中,还可以将第一区域划分为例如4、5、6、15或者18等其他数量的子区域。
117.同时在其他实施方式中,划分的多个子区域大小可以不等,且形状也可以不同,只要保证子区域距离机器人最近的点到机器人的距离等于零,距离机器人最远的点处于第一区域的轮廓上即可。
118.参阅图8,在另一应用场景中,基于机器人周围的障碍物,控制机器人避开障碍物的步骤,包括:
119.s601:获取机器人周围第一区域内的障碍物。
120.s602:判断在第一区域中,机器人的前进方向上是否存在障碍物。
121.若存在,则执行步骤s603,若不存在,则执行步骤s605。
122.在本实施方式中,步骤s602具体包括:判断第一区域中的第一基准子区域中,是否存在障碍物,其中,机器人的前进方向经过第一基准子区域;响应于第一基准子区域中存在障碍物,则确定机器人的前进方向上存在障碍物;响应于第一基准子区域中不存在障碍物,则确定机器人的前进方向上不存在障碍物。
123.也就是说,判断上述第一基准子区域f-c是否存在障碍物,如果存在,则执行步骤s603,如果不存在,则执行步骤s605。
124.在其他实施方式中,步骤s602还可以直接判断机器人的前进方向front是否经过障碍物,如果经过,则执行步骤s603,否则执行步骤s605。
125.s603:在第一区域不存在障碍物的第一子区域中,查找对应代价值最小的第一子区域。
126.s604:控制机器人沿着指向对应代价值最小的第一子区域的方向运动,以避开障碍物。
127.步骤s603与上述步骤s502相同,步骤s604与上述步骤s503相同,在此不再赘述。
128.s605:获取第一区域外围第二区域内的障碍物。
129.其中,第二区域位于第一区域的外围,且与第一区域连接,也可以理解为第二区域位于第一区域远离机器人一侧。在一应用场景中,第二区域中是以机器人为圆心,内径为第一预设距离,外径为第二预设距离的环形区域。其中,第二预设距离大于第一预设距离。例
如,第一预设距离为0.6m,第二预设距离为1.5m。
130.在其他应用场景中,第二区域还可以是例如扇形、矩形、梯形等其他形状的区域。
131.具体地,如果机器人的前进方向上存在障碍物,则直接在第一区域中查找不存在障碍物且代价值最小的第一子区域,如果机器人的前进方向上不存在障碍物时,则说明机器人此时如果直接前进,可以避开障碍物,但是本应用场景为了避免机器人在前进过程中再遇到障碍物,从而导致后续路径规划失败,又要重新进行路径规划,此时还要再结合第一区域外围的第二区域进行规划。
132.s606:在第一区域不存在障碍物的第一子区域以及第二区域不存在障碍物的第二子区域中,查找对应代价值最小的目标子区域,第二子区域中距离机器人最近的点处于第一区域的轮廓上,距离机器人最远的点处于第二区域的轮廓上,且目标子区域包括连通的第一子区域以及第二子区域。
133.其中,目标区域同时包括连通的第一子区域以及第二子区域,且第二子区域距离机器人最近的点处于第一区域的轮廓上,距离机器人最远的点处于第二区域的轮廓上,从而在不触碰障碍物的前提下,机器人可以沿着目标子区域中的任意一条路径,在经过第一区域后,离开第二区域,达到脱困的目的。
134.其中,与上述相同,目标子区域与机器人的前进方向front的偏离程度越大,对应的代价值越大,因此本应用场景为了降低提高,减少规划的时间,查找代价值最小的目标子区域,后续步骤s607控制机器人沿着指向目标子区域的方向运动,达到脱困的目的。
135.为了更好地理解,结合图9进行说明:
136.在图9中,假设在第一区域中,有第一子区域a1、a2、a3不存在障碍物,假设在第二区域中,有第二子区域b1、b2、b3不存在障碍物,此时目标子区域为两个,分别为包括第一子区域a2以及第二子区域b1的第一目标子区域,另一个为包括第一子区域a3以及第二子区域b2的第二目标子区域,此时从图9可以看出,第一目标子区域与机器人的前进方向的偏离程度小于第二目标子区域与机器人的前进方向的偏离程度,也就是,第一目标子区域的代价值小于第二目标子区域的代价值,因此控制机器人沿着指向第一目标子区域的方向运动,即图9中虚线箭头所示的方向。
137.其中,为了提高查找的效率,同样在第二区域中划分多个子区域,在本实施方式中,第二区域中的多个子区域与第一区域中的多个子区域一一对应,其中一一对应指的是,两个子区域的对称轴重合,对应的代价值相等,例如在图9中,第一区域包括12个大小相等且均为扇形的子区域,第二区域包括12个大小相等且均为扇环形的子区域。
138.s607:控制机器人沿着指向目标子区域的方向运动,以避开障碍物。
139.其中,考虑到真正对机器人产生影响的是机器人前进方向上的障碍物,因此为了减小计算量,在步骤s606之前,还可以先判断第二区域中,机器人的前进方向上是否存在障碍物,如果存在,则执行步骤s606,如果不存在,则直接控制机器人前进即可。
140.与判断第一区域中,机器人的前进方向上是否存在障碍物类似,在判断第二区域中,机器人的前进方向上是否存在障碍物时,具体判断第二区域中的第二基准子区域中,是否存在障碍物,如果存在,则确定机器人的前进方向上存在障碍物,如果不存在,则确定机器人的前进方向上不存在障碍物。其中,第二区域中的第二基准子区域与第一区域中的第一基准子区域对应。
141.需要说明的是,判断第一区域中,机器人的前进方向上是否存在障碍物以及,判断第二区域中,机器人的前进方向上是否存在障碍物均不是必经步骤,例如,在其他实施方式中,在步骤s605之后,直接执行步骤s606,或者在其他实施方式中,在步骤s601之后直接执行步骤s603,此时只需要根据第一区域中障碍物的情况而控制机器人进行脱困,或者在其他实施方式中,当步骤s602判定出第一区域中,机器人的前进方向上不存在障碍物时,控制机器人直接前进。
142.同时在其他实施方式中,也可以不对第一区域和第二区域进行子区域的划分,此时在查找不存在障碍物的第一子区域或者第二子区域时,可以直接将相邻两个障碍物之间的区域,确定为第一子区域或者第二子区域,或者为了保证机器人能够顺利通过,将相邻两个障碍物之间且面积大于阈值的子区域,确定为第一子区域或者第二子区域。且此时在确定第一子区域或者第二子区域的形状不固定,也可以将第一子区域或者第二子区域设定为预定形状,也可以根据实际障碍物的分布情况进行设定。
143.结合图10和图11,当机器人想要从图10中虚线箭头所指的位置运动到图11中虚线箭头所指的位置时,需要通过一个狭小的空间(图10中实线箭头所指处),在现有技术中,由于传感器精度以及膨胀处理等障碍物的影响,狭小空间被填充了,在规划机器人的轨迹时,判定该位置有障碍物,不可通行,从而造成路径规划失败,而在本实施方式中,由于在路径规划失败时,控制机器人进行脱困处理,使机器人运动到空旷空间后,重新规划路径,能够远离障碍物以及虚拟障碍物,从而保证机器人可以通过狭小空间。
144.参阅图12,图12是本技术电子设备一实施方式的结构示意图。该电子设备200包括处理器210、存储器220以及通信电路230,处理器210分别耦接存储器220、通信电路230,存储器220中存储有程序数据,处理器210通过执行存储器220内的程序数据以实现上述任一项实施方式方法中的步骤,其中详细的步骤可参见上述实施方式,在此不再赘述。
145.其中,电子设备200可以是控制机器人运动的任何一种类型的设备,在此不做限制。
146.且电子设备200可以与机器人彼此独立,也可以集成在机器人上。其中,当电子设备200集成在机器人上时,电子设备具体可以是机器人中的处理器。
147.参阅图13,图13是本技术电子设备一实施方式的结构示意图。该电子设备300包括全局规划模块310、局部规划模块320、侦测模块330以及脱困模块340。
148.全局规划模块310用于规划机器人的全局运动路径。
149.局部规划模块320与全局规划模块310连接,用于在全局运动路径规划成功时,规划机器人的局部运动路径。
150.侦测模块330与全局规划模块310连接,用于在全局运动路径规划失败时,侦测机器人周围的障碍物。
151.脱困模块340与侦测模块330连接,用于基于机器人周围的障碍物,控制机器人避开障碍物。
152.其中,在脱困模块340控制机器人避开障碍物后,全局规划模块310再次规划机器人的全局运动路径。
153.其中,电子设备300在工作时执行上述任一项实施方式中的步骤,详细的步骤可参见上述内容,在此不再赘述。
154.其中,电子设备300可以是控制机器人运动的任何一种类型的设备,在此不做限制。
155.且电子设备300可以与机器人彼此独立,也可以集成在机器人上。其中,当电子设备300集成在机器人上时,电子设备具体可以是机器人中的处理器。
156.参阅图14,图14是本技术计算机可读存储介质一实施方式的结构示意图。该计算机可读存储介质400存储有计算机程序410,计算机程序410能够被处理器执行以实现上述任一项方法中的步骤。
157.其中,计算机可读存储介质400具体可以为u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等可以存储计算机程序410的装置,或者也可以为存储有该计算机程序410的服务器,该服务器可将存储的计算机程序410发送给其他设备运行,或者也可以自运行该存储的计算机程序410。
158.参阅图15,图15是本技术计算机程序产品一实施方式的结构示意图。该计算机程序产品500包括计算机程序510,计算机程序510在被处理器执行时实现上述任一项方法中的步骤,其中详细的方法步骤可参见上述实施方式,在此不再详述。
159.以上所述仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献