CN117406755A - 机器人避障方法、装置、设备和可读存储介质 - Google Patents
机器人避障方法、装置、设备和可读存储介质 Download PDFInfo
- Publication number
- CN117406755A CN117406755A CN202311629884.2A CN202311629884A CN117406755A CN 117406755 A CN117406755 A CN 117406755A CN 202311629884 A CN202311629884 A CN 202311629884A CN 117406755 A CN117406755 A CN 117406755A
- Authority
- CN
- China
- Prior art keywords
- obstacle avoidance
- point
- robot
- obstacle
- local
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 83
- 238000001514 detection method Methods 0.000 claims abstract description 88
- 238000012545 processing Methods 0.000 claims abstract description 41
- 238000004590 computer program Methods 0.000 claims description 18
- DMSMPAJRVJJAGA-UHFFFAOYSA-N benzo[d]isothiazol-3-one Chemical compound C1=CC=C2C(=O)NSC2=C1 DMSMPAJRVJJAGA-UHFFFAOYSA-N 0.000 claims description 5
- 230000008569 process Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 13
- 239000007787 solid Substances 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
Abstract
本发明公开提供一种机器人避障方法、装置、设备和可读存储介质,涉及智能仓储领域;其中,机器人避障方法包括:先基于机器人的当前位置信息确定全局避障区域和局部避障区域;之后,获取全局避障区域内的全局障碍点检测结果和局部避障区域内的局部障碍点检测结果;以根据全局障碍点检测结果和局部障碍点检测结果确定候选避障点;其中,候选避障点包括全局避障点和/或局部避障点;最后,基于候选避障点,确定目标避障点,基于目标避障点和机器人的当前位置信息,确定是否进行避障处理;如此,将全局避障与局部避障相结合;能够提高机器人的避障精度,减少误避障,提高机器人的运行效率和运行流畅度,提高机器人的安全性。
Description
技术领域
本发明涉及智能仓储领域,尤其是涉及一种机器人避障方法、装置、设备和可读存储介质。
背景技术
在机器人对货架或目标货物进行搬运的过程中,机器人会判断前方避障区域内是否存在障碍点。当障碍点出现在机器人前方的避障区域内时,机器人会根据当前位置信息与障碍点之间的距离进行避障减速,保障机器人安全。
但是,机器人按照行驶路径行驶的过程中可能会因为外部因素(如,控制精度存在误差、雷达精度受限),导致机器人本体姿态出现歪斜。当机器人本体姿态出现歪斜时,会检测到行驶路径以外的障碍点,当机器人根据该障碍点进行避障减速时,可能出现误避障的情况,影响机器人的运行效率。而且机器人在行驶的过程中,机器人可能检测不到位于机器人前方的避障区域边缘的障碍点,导致机器人会与障碍点发生碰撞,导致机器人运行的安全性较低。
发明内容
本发明提供了一种机器人避障方法、装置、设备和可读存储介质,不仅能够检测机器人本体姿态出现歪斜时机器人前方的避障区域(局部避障区域)的障碍点,还能检测机器人本体姿态正常(未出现歪斜)时机器人前方的避障区域(全局避障区域)的障碍点;如此,能够提高机器人的避障精度,减少机器人的误避障情况,提高机器人的运行效率和运行流畅度;且这样还能够降低机器人与避障点发生碰撞的概率,提高机器人的安全性。
本申请实施例公开了以下技术方案:
第一方面,本申请实施例提供一种机器人避障方法,方法包括:
基于机器人的当前位置信息,确定全局避障区域和局部避障区域;获取全局避障区域内的全局障碍点检测结果和局部避障区域内的局部障碍点检测结果;根据全局障碍点检测结果和局部障碍点检测结果,确定候选避障点,候选避障点包括全局避障点和/或局部避障点;基于候选避障点,确定目标避障点;基于目标避障点和机器人的当前位置信息,确定是否进行避障处理。
在一种可选择的实施例中,基于机器人的当前位置信息,确定全局避障区域和局部避障区域,包括:
基于机器人在全局坐标系下的当前位置信息和预设避障区域尺寸,确定全局避障区域;基于机器人在局部坐标系下的当前位置信息和预设避障区域尺寸,确定局部避障区域。
在一种可选择的实施例中,获取全局避障区域内的全局障碍点检测结果和局部避障区域内的局部障碍点检测结果,包括:
获取至少一个障碍点的位置信息;基于障碍点的位置信息和全局避障区域,确定全局障碍点检测结果;全局障碍点检测结果用于指示全局避障区域内是否存在障碍点;基于障碍点的位置信息和局部避障区域,确定局部障碍点检测结果;局部障碍点检测结果用于指示局部避障区域内是否存在障碍点。
在一种可选择的实施例中,所述根据所述全局障碍点检测结果和所述局部障碍点检测结果,确定候选避障点,包括:
在全局障碍点检测结果指示全局避障区域存在至少一个第一障碍点时,基于机器人的当前位置信息,在至少一个第一障碍点中确定全局避障点;和/或,在局部障碍点检测结果指示局部避障区域存在至少一个第二障碍点时,基于机器人的当前位置信息,在至少一个第二障碍点中确定局部避障点。
在一种可选择的实施例中,基于机器人的当前位置信息,在至少一个第一障碍点中确定全局避障点,包括:
基于机器人的当前位置信息,确定各第一障碍点与机器人之间的距离;将距离机器人最近的第一障碍点确定为全局避障点。
在一种可选择的实施例中,基于机器人的当前位置信息,在至少一个第二障碍点中确定局部避障点,包括:
基于机器人的当前位置信息,确定各第二障碍点与机器人之间的距离;将距离机器人最近的第二障碍点确定为局部避障点。
在一种可选择的实施例中,基于候选避障点,确定目标避障点,包括:
在所述候选避障点不包括所述局部避障点,且,所述候选避障点包括所述全局避障点的情况下,将所述全局避障点沿第一方向投影至所述局部避障区域内的投影点确定为所述目标避障点。
在一种可选择的实施例中,基于候选避障点,确定目标避障点,包括:
在候选避障点包括局部避障点,且,候选避障点包括全局避障点的情况下,若机器人的当前位置信息和/或局部避障点满足预设条件,则将局部避障点确定为目标避障点;若机器人的当前位置信息和/或局部避障点不满足预设条件,则确定局部避障点与全局避障区域的第一位置关系,并基于第一位置关系和机器人的当前位置信息,确定目标避障点;或者,若机器人的当前位置信息和/或局部避障点不满足预设条件,则确定全局避障点与局部避障区域的第二位置关系,并基于第二位置关系,确定目标避障点。
在一种可选择的实施例中,机器人的当前位置信息和/或局部避障点满足预设条件,包括以下至少一项:
机器人的行驶角度与目标角度之间的角度差大于预设角度差;机器人的当前行驶路径与预设行驶路径之间的横向距离大于预设横向距离;局部避障点与机器人之间的距离小于或等于机器人的刹车距离。
在一种可选择的实施例中,基于第一位置关系,确定目标避障点,包括:
在第一位置关系指示局部避障点位于全局避障区域外的情况下,将全局避障点沿第一方向投影至局部避障区域内的投影点确定为目标避障点。
在一种可选择的实施例中,基于第一位置关系,确定目标避障点,包括:
在第一位置关系指示局部避障点位于全局避障区域内的情况下,确定全局避障点沿第一方向投影至局部避障区域内的投影点;基于投影点、局部避障点和机器人的当前位置信息,确定目标避障点。
在一种可选择的实施例中,基于投影点、局部避障点和机器人的当前位置信息,确定目标避障点,包括:
确定投影点与机器人之间的第一距离;确定局部避障点与机器人之间的第二距离;若第一距离小于第二距离,则将投影点确定为目标避障点;若第一距离大于第二距离,则将局部避障点确定为目标避障点。
在一种可选择的实施例中,基于第二位置关系,确定目标避障点,包括:
在第二位置关系指示全局避障点位于局部避障区域内的情况下,分别确定全局避障点和局部避障点与机器人之间的距离;将全局避障点和局部避障点中,距离机器人最近的避障点确定为目标避障点。
在一种可选择的实施例中,基于目标避障点和机器人的当前位置信息,确定是否进行避障处理,包括:
若目标避障点与机器人之间的距离小于或等于机器人的刹车距离,则进行避障处理;若目标避障点与机器人之间的距离大于机器人的刹车距离,则不进行避障处理。
在一种可选择的实施例中,基于候选避障点,确定目标避障点,包括:
在候选避障点包括局部避障点,且,候选避障点不包括全局避障点的情况下,基于局部避障点与机器人的当前位置确定目标避障点。
在一种可选择的实施例中,基于局部避障点与机器人的当前位置确定目标避障点,包括:
若局部避障点与机器人之间的距离小于或等于机器人的刹车距离,则确定局部避障点为目标避障点;若局部避障点与机器人之间的距离大于机器人的刹车距离,则将预设避障点确定为目标避障点,预设避障点与机器人之间的距离始终大于机器人的刹车距离。
在一种可选择的实施例中,基于候选避障点,确定目标避障点,包括:
在候选避障点不包括局部避障点和全局避障点的情况下,将预设避障点确定为目标避障点,预设避障点与机器人之间的距离大于机器人的刹车距离。
在一种可选择的实施例中,基于障碍点的位置信息和全局避障区域,确定全局障碍点检测结果,包括:
基于障碍点在局部坐标系下的位置信息、机器人在局部坐标系下的当前位置信息以及机器人的位置姿态角度,确定障碍点在全局坐标系中的位置信息;基于障碍点在全局坐标系中的位置信息和全局避障区域,确定全局障碍点检测结果。
在一种可选择的实施例中,基于障碍点的位置信息和局部避障区域,确定局部障碍点检测结果,包括:
基于障碍点在局部坐标系下的位置信息和局部避障区域,确定局部障碍点检测结果。
第二方面,本申请实施例提供了一种机器人避障装置,包括:
处理模块,用于基于机器人的当前位置信息,确定全局避障区域和局部避障区域;
获取模块,用于获取全局避障区域内的全局障碍点检测结果和局部避障区域内的局部障碍点检测结果;
处理模块,还用于根据全局障碍点检测结果和局部障碍点检测结果,确定候选避障点,候选避障点包括全局避障点和/或局部避障点;基于候选避障点,确定目标避障点;基于目标避障点和机器人的当前位置信息,确定是否进行避障处理。
第三方面,本申请实施例还提供了一种电子设备,包括存储器和处理器,存储器存储有计算机程序,其特征在于,处理器执行计算机程序时实现第一方面任一实现方式中的方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储计算机指令,计算机程序被处理器执行时实现第一方面任一实现方式中的方法。
本实施例提供的机器人避障方法、装置、设备和可读存储介质,机器人避障方法包括:先基于机器人的当前位置信息确定全局避障区域和局部避障区域;之后,获取全局避障区域内的全局障碍点检测结果和局部避障区域内的局部障碍点检测结果;以根据全局障碍点检测结果和局部障碍点检测结果确定候选避障点;其中,候选避障点包括全局避障点和/或局部避障点;最后,基于候选避障点,确定目标避障点,基于目标避障点和机器人的当前位置信息,确定是否进行避障处理;如此,机器人在行驶的过程中,不仅能够检测到机器人本体姿态出现歪斜时机器人前方的避障区域(局部避障区域)内的障碍点,还能检测到机器人为目标本体姿态(本体姿态未出现歪斜)时机器人前方的避障区域(全局避障区域)内的障碍点;即将全局避障与局部避障相结合,能够提高机器人的避障精度,减少机器人的误避障情况,提高机器人的运行效率和运行流畅度;且这样还能够降低机器人与避障点发生碰撞的概率,提高机器人的安全性。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一种机器人避障方法的应用场景的示意图;
图2为本申请实施例提供的一种机器人避障方法的流程示意图;
图3为本申请实施例提供的一种机器人避障方法中全局避障区域与局部避障区域的位置示意图;
图4A为本申请实施例提供的一种机器人避障方法中局部坐标系和全局坐标系的示意图;
图4B为本申请实施例提供的一种机器人避障方法中避障区域的示意图;
图5为本申请实施例提供的另一种机器人避障方法的流程示意图;
图6为本申请实施例提供的又一种机器人避障方法的流程示意图;
图7为本申请实施例提供的又一种机器人避障方法的流程示意图;
图8为本申请实施例提供的又一种机器人避障方法的流程示意图;
图9为本申请实施例提供的一种候选避障点的位置示意图;
图10为本申请实施例提供的另一种候选避障点的位置示意图;
图11为本申请实施例提供的又一种候选避障点的位置示意图;
图12为本申请实施例提供的又一种候选避障点的位置示意图;
图13为本申请实施例提供的又一种候选避障点的位置示意图;
图14为本申请实施例提供的一种机器人避障装置的结构示意图;
图15为本申请实施例提供的一种机器人的内部结构示意图;
图16为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请实施例中的技术方案,并使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中的技术方案作进一步详细的说明。
在机器人对货架或目标货物进行搬运的过程中,机器人会判断前方避障区域内是否存在障碍点。当障碍点出现在机器人前方的避障区域内时,机器人会根据当前位置信息与障碍点之间的距离进行避障减速,保障机器人安全。
但是,机器人(如,拣选机器人)按照行驶路径行驶的过程中可能会因为外部因素(如,控制精度存在误差、雷达精度受限),导致机器人本体姿态出现歪斜。
在一些实施例中,当机器人本体姿态出现歪斜时,会检测到行驶路径以外的障碍点,若机器人根据该障碍点进行避障减速时,可能出现误避障的情况,影响机器人的运行效率。
示例性地,机器人本体姿态出现歪斜时,机器人会一边行驶一边调整本体姿态,以将机器人本体姿态调整至目标本体姿态(机器人本体姿态未出现歪斜时的姿态);因此,机器人在实际运行过程中,可能并不会与检测到的位于行驶路径以外的障碍点发生接触;此时,若基于该行驶路径以外的障碍点进行避障,将出现误避障的情况。
另外,机器人在行驶的过程中,机器人可能检测不到位于机器人前方的避障区域边缘的障碍点,导致机器人在行驶过程中可能会与避障区域边缘的障碍点发生碰撞,导致机器人运行的安全性较低。
基于此,本申请提供一种机器人避障方法,使得机器人在行驶的过程中,不仅能够检测到机器人本体姿态出现歪斜时机器人前方的避障区域(局部避障区域)以内的障碍点,还能检测到机器人本体姿态正常(未出现歪斜)时机器人前方的避障区域(全局避障区域)以内的障碍点,即将全局避障与局部避障相结合;如此,能够提高机器人的避障精度,减少机器人的误避障情况,提高机器人的运行效率和运行流畅度;且这样还能够降低机器人与避障点发生碰撞的概率,提高机器人的安全性。
在对本申请实施例的技术方案说明之前,首先结合附图对本申请实施例的应用场景进行说明。如图1所示,该应用场景中包括控制装置11、机器人12、存储区13和工作站14。仓库中包括至少一个机器人12、存储区13和至少一个工作站14。其中,存储区13用于放置货物,货物存放在库存容器(如,货箱、可移动载具、托盘、周转箱或原箱)内。控制装置11通过网络与机器人12进行通信。
示例性地,控制装置11向机器人12发送搬运指令,搬运指令包括行驶路径。
例如,以行驶路径的起点为存储区13中放置目标货物的货位A,终点为工作站P1为例,当机器人12接收搬运指令后,基于该搬运指令移动至货位A处以获取目标货物,并按照行驶路径将目标货物搬移至工作站P1,由工作站P1处的工作人员或拣货设备对目标货物进行拣选。
再例如,以行驶路径的起点为工作站P1,终点为存储区13中的货位A为例,当机器人12接收搬运指令后,基于该搬运指令移动至工作站P1以获取目标货物,并按照行驶路径将目标货物搬移至货位A。在机器人按照行驶路径对目标货物进行搬运的过程中,机器人会根据预设检测频率或者实时对避障区域中的障碍物进行检测以及时避障。
在一些实施例中,机器人12搬运目标货物时可以直接搬运目标货物(如,将目标货物放置在机器人12上进行搬运),也可以对存放有目标货物的库存容器(如,货箱、托盘、周转箱或原箱)进行搬运,还可以对存放有目标货物的可移动载具(例如,货架)进行搬运。本申请实施例对于机器人搬运目标货物的方式不作限定,在仓储系统的不同应用场景中,机器人搬运目标货物的方式可以不同。在一些实施例中,机器人搬运目标货物的方式与机器人的类型有关。
在一些实施例中,控制装置11可以部署在终端设备或者服务器上。终端设备可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等电子设备,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。下述实施例以控制装置11部署在电子设备上为例进行示例性说明。
图2示出了一种机器人避障方法的流程示意图。如图2所示,本申请实施例提供了一种机器人避障方法,包括S201-S205。
S201、基于机器人的当前位置信息,确定全局避障区域和局部避障区域。
在一些实施例中,机器人的当前位置信息表征机器人在仓库中的坐标信息。
示例性地,机器人可以通过识别仓库中设置的位置标识(如,二维码),确定机器人的当前位置信息;机器人也可以通过识别仓库中设置的位置标识,发送位置标识对应的标识信息至控制装置,由控制装置基于机器人发送的标识信息确定机器人在仓库中的坐标信息;之后,机器人通过控制装置获取机器人的当前位置信息。本申请实施例对确定机器人的当前位置信息的方式不作限定。
在一些实施例中,控制装置根据订单信息确定行驶路径的起点和终点,并基于行驶路径的起点和终点规划行驶路径;之后,基于行驶路径生成搬运指令,搬运指令用于指示机器人按照行驶路径运行。全局避障区域指机器人按照行驶路径运行的过程中,机器人为目标本体姿态(本体姿态未发生歪斜)时机器人前方的避障区域;局部避障区域指机器人按照行驶路径运行的过程中,机器人的本体姿态发生歪斜时机器人前方的避障区域。
示例性地,如图3所示,机器人沿行驶路径行驶的过程中,若机器人的本体姿态出现歪斜,则机器人的避障区域将由避障区域1(图3中虚线框框选的区域)变为避障区域2(图3中实线框框选的区域)。其中,避障区域1即为全局避障区域,避障区域2即为局部避障区域。
在一些实施例中,机器人的当前位置信息包括机器人在局部坐标系下的当前位置信息和机器人在全局坐标系下的当前位置信息中的至少一项。
需要说明的是,机器人在局部坐标系下的当前位置信息与机器人在全局坐标系下的当前位置信息之间可以进行互换。即当机器人在局部坐标系下的当前位置信息为已知信息时,可以基于全局坐标系和局部坐标系,对机器人在局部坐标系下的当前位置信息进行坐标系转换,以得到机器人在全局坐标系下的当前位置信息;当机器人在全局坐标系下的当前位置信息为已知信息时,可以基于全局坐标系和局部坐标系,对机器人在全局坐标系下的当前位置信息进行坐标系转换,以得到机器人在局部坐标系下的当前位置信息。
在一些实施例中,基于机器人在全局坐标系下的当前位置信息和预设避障区域尺寸,确定全局避障区域。
示例性地,图4A示出了局部坐标系和全局坐标系;如图4A所示,全局坐标系可以为以机器人根据行驶路径行驶过的历史区域中的任意一点为原点(图4A中的点O),机器人的行驶路径的长度方向为Y轴,以及垂直于Y轴的方向为X轴构建的坐标系X-O-Y。
在一些实施例中,预设避障区域尺寸为预设数值,该预设避障区域可以存储在机器人的存储模块中,也可以存储在控制装置中。即机器人可以通过机器人的存储模块获取预设避障区域尺寸,也可以从控制装置中请求获取预设避障区域尺寸。本申请实施例对此不作限定。
需要说明的是,机器人包括多种型号,不同型号的机器人对应的规格、功能和避障区域尺寸可以相同也可以不同。本申请实施例对此不作限定。
另外,机器人的避障区域的形状可以是矩形,也可以是圆形;本申请实施例对机器人的避障区域的形状不作限定。下述实施例中将以机器人的避障区域为设置在机器人前方的矩形区域为例进行示例性说明。
示例性地,图4B示出了一种避障区域,如图4B所述,避障区域的长度可以为行驶路径长度(obs_length),即起始点(start_point)至终止点(end_point)之间的距离;避障区域的宽度可以为机器人宽度(obs_width)。
在一些实施例中,可以基于公式1-公式4分别计算得到全局避障区域的左边界x_left、右边界 x_right、上边界 y_up和下边界 y_down,公式1-公式4分别如下所示:
x_left =X - obs_width/2 公式1
x_right = X + obs_width/2 公式2
y_up = Y + robot_length / 2 + obs_length 公式3
y_down = Y + robot_length /2 公式4
其中,robot_length为机器人的长度,(X,Y)为机器人在全局坐标系中的坐标。
在一些实施例中,基于机器人在局部坐标系下的当前位置信息和预设避障区域尺寸,确定局部避障区域。
示例性地,如图4A所示,局部坐标系可以为以机器人(机器人当前位置信息)为原点(图4A中的点o),机器人的本体姿态歪斜时朝向的方向(即机器人当前的实际运行方向)为y轴,以及垂直于y轴的方向为x轴构建的坐标系x-o-y。
在一些实施例中,将公式1-公式4中机器人在全局坐标系下的当前位置信息替换为机器人在局部坐标系下的当前位置信息,即将公式1-公式4中机器人在全局坐标系下的坐标(X,Y)替换为机器人在局部坐标系下的坐标(x,y),即可基于机器人在局部坐标系下的当前位置信息和预设避障区域尺寸确定局部避障区域。
需要说明的是,由于全局避障区域为机器人的本体姿态未产生歪斜时对应的避障区域,而局部避障区域为机器人的本体姿态产生歪斜时对应的避障区域;因此,若机器人的本体姿态歪斜θ度时,全局避障区域的左边界(右边界)与局部避障区域的左边界(右边界)之间将形成一角度为θ度的夹角。
在一些实施例中,局部坐标系和全局坐标系可以由机器人基于机器人的当前位置信息和行驶路径进行构建,也可以由控制装置基于机器人的当前位置信息和行驶路径进行构建后发送至机器人。本申请实施例对此不作限定。
S202、获取全局避障区域内的全局障碍点检测结果和局部避障区域内的局部障碍点检测结果。
在一些实施例中,全局障碍点为行驶路径上位于全局避障区域中的障碍点,局部避障点为行驶路径上位于局部避障区域中的障碍点。
示例性地,机器人基于执行S201得到的全局避障区域和局部避障区域,通过确定全局避障区域内是否有障碍点以确定全局避障点检测结果,通过确定局部避障区域内是否有障碍点以确定局部障碍点检测结果。
在一些实施例中,障碍点可以是固定的物体(如,货物、库存容器等),也可以是可移动的物体(如,暂停在行驶路径上的其他机器人)。本申请实施例对此不作限定。
如图5所示,在一些实施例中,S202可以包括S2021-S2023。
S2021、获取至少一个障碍点的位置信息。
示例性地,机器人可以通过内置的激光雷达对行驶路径上的障碍点进行检测,以获取至少一个障碍点在局部坐标系下的坐标,从而得到至少一个障碍点的位置信息。
其中,由于机器人通过内置的激光雷达对行驶路径上的障碍点进行检测的过程中,内置的激光雷达发出的激光雷达信号沿机器人当前的实际运行方向传播,即沿局部坐标系的y轴传播;因此,机器人获取的至少一个障碍点的位置信息均为至少一个障碍点在局部坐标系下的位置信息。
S2022、基于障碍点的位置信息和全局避障区域,确定全局障碍点检测结果。
其中,全局障碍点检测结果用于指示全局避障区域内是否存在障碍点。
示例性地,机器人通过内置的激光雷达对行驶路径上的障碍点进行检测,以获取至少一个障碍点在局部坐标系下的坐标之后,基于至少一个障碍点在局部坐标系下的坐标能够得到对应的障碍点云。此时,通过确定障碍点云与全局避障区域之间是否存在重叠的区域,即可确定全局避障区域中是否存在障碍点,从而得到全局避障点结果。
为了提高全局障碍点检测结果的精确度,如图6所示,在一些实施例中,S2022可以包括S20221-S20222。
S20221、基于障碍点在局部坐标系下的位置信息、机器人在局部坐标系下的当前位置信息以及机器人的位置姿态角度,确定障碍点在全局坐标系中的位置信息。
在一些实施例中,障碍点在局部坐标系下的位置信息为障碍点在局部坐标系下的坐标。机器人的位置姿态角度为机器人的本体姿态歪斜时对应的角度。
示例性地,基于图4A所示,若机器人的本体姿态歪斜θ度,即机器人的位置姿态角度为θ度,则可以基于公式5-公式6确定障碍点在全局坐标系下的位置信息,公式5和公式6分别如下所示:
X0= x0×cosθ - y0×sinθ+a 公式5
Y0= x0×sinθ+y0×cosθ+b 公式6
其中,(a,b)为机器人在全局坐标系中的坐标,θ为机器人的位置姿态角度,(x0,y0)为障碍点在局部坐标系下的坐标,即障碍点在局部坐标系下的位置信息;(X0 ,Y0)为障碍点在全局坐标系下的坐标,即障碍点在全局坐标系中的位置信息。
S20222、基于障碍点在全局坐标系中的位置信息和全局避障区域,确定全局障碍点检测结果。
示例性地,若基于障碍点在全局坐标系中的位置信息(障碍点在全局坐标系下的坐标),确定该障碍点在全局避障区域中,则确定全局障碍点检测结果指示全局避障区域内存在障碍点;若基于障碍点在全局坐标系中的位置信息,确定该障碍点不在全局避障区域中,则确定全局障碍点检测结果指示全局避障区域内不存在障碍点。
S2023、基于障碍点的位置信息和局部避障区域,确定局部障碍点检测结果。
其中,局部障碍点检测结果用于指示局部避障区域内是否存在障碍点。
在一些实施例中,S2023可以包括:基于障碍点在局部坐标系下的位置信息和局部避障区域,确定局部障碍点检测结果。
示例性地,若基于障碍点在局部坐标系中的位置信息(障碍点在局部坐标系下的坐标),确定该障碍点在局部避障区域中,则确定局部障碍点检测结果指示局部避障区域内存在障碍点;若基于障碍点在局部坐标系中的位置信息,确定该障碍点不在局部避障区域中,则确定局部障碍点检测结果指示局部避障区域内不存在障碍点。
需要说明的是,可以先执行S2022以确定全局避障点检测结果,再执行S2023以确定全局部障碍点检测结果;还可以先执行S2023以确定全局部障碍点检测结果,再执行S2022以确定全局避障点检测结果。本申请实施例对S2022- S2023的执行顺序不作限定。
S203、根据全局障碍点检测结果和局部障碍点检测结果,确定候选避障点。
其中,候选避障点包括全局避障点和/或局部避障点。
在一些实施例中,在全局障碍点检测结果指示全局避障区域存在至少一个第一障碍点时,基于机器人的当前位置信息,在至少一个第一障碍点中确定全局避障点;和/或,在局部障碍点检测结果指示局部避障区域存在至少一个第二障碍点时,基于机器人的当前位置信息,在至少一个第二障碍点中确定局部避障点。
需要说明的是,第一障碍点为机器人检测到的行驶路径上的多个障碍点中位于全局避障区域中的障碍点,第二障碍点为机器人检测到的行驶路径上的多个障碍点中位于局部避障区域中的障碍点。
如图7所示,在一些实施例中,基于机器人的当前位置信息,在至少一个第一障碍点中确定全局避障点包括S701-S702。
S701、基于机器人的当前位置信息,确定各第一障碍点与机器人之间的距离。
示例性地,基于机器人在全局坐标系下的坐标,与各第一障碍点在全局坐标系下的坐标,确定各第一障碍点与机器人之间的距离;或者,基于机器人在局部坐标系下的坐标,与各第一障碍点在局部坐标系下的坐标,确定各第一障碍点与机器人之间的距离。
S702、将距离机器人最近的第一障碍点确定为全局避障点。
在一些实施例中,第一障碍点的数量可以是一个也可以是多个。当第一障碍点的数量为一个时,将该第一障碍点确定为全局避障点;当第一障碍点的数量为多个时,将多个第一障碍点中距离机器人最近的第一障碍点确定为全局避障点。
如图8所示,在一些实施例中,基于机器人的当前位置信息,在至少一个第二障碍点中确定全局避障点包括S801-S802。
S801、基于机器人的当前位置信息,确定各第二障碍点与机器人之间的距离。
示例性地,基于机器人在全局坐标系下的坐标,与各第二障碍点在全局坐标系下的坐标,确定各第二障碍点与机器人之间的距离;或者,基于机器人在局部坐标系下的坐标,与各第二障碍点在局部坐标系下的坐标,确定各第二障碍点与机器人之间的距离。
S802、将距离机器人最近的第二障碍点确定为局部避障点。
在一些实施例中,第二障碍点的数量可以是一个也可以是多个。当第二障碍点的数量为一个时,将该第二障碍点确定为局部避障点;当第二障碍点的数量为多个时,将多个第一障碍点中距离机器人最近的第二障碍点确定为局部避障点。
S204、基于候选避障点,确定目标避障点。
示例性地,目标避障点用于指示机器人是否进行避障处理。
在一些实施例中,在候选避障点不包括局部避障点且侯选避障点包括全局避障点的情况下,将全局避障点沿第一方向投影至局部避障区域内的投影点确定为目标避障点。
在一些实施例中,第一方向指将全局避障点从全局避障区域投影至局部避障区域的方向。其中,第一方向可以是全局坐标系的X轴方向,还可以是局部坐标系的x轴方向,本申请实施例对此不作限定。下述实施例中将以第一方向为全局坐标系的X轴方向为例进行示例性说明。
示例性地,如图9所示,当候选避障点不包括局部避障点且候选避障点包括全局避障点时,意味着局部避障区域中不存在局部避障点,且全局避障区域中存在全局避障点;即全局避障区域(图9中虚线框框选的区域)内有全局避障点A(又称obstacle_A),但全局避障点A不在局部避障区域(图9中实线框框选的区域)内。此时,将全局避障点A沿全局坐标系的X轴方向投影到机器人的局部避障区域中的左边界上,得到投影点 A’ (又称obstacle_A’),将投影点 A’确定为目标避障点。
可以理解的是,在候选避障点不包括局部避障点且侯选避障点包括全局避障点的情况下,机器人以全局避障点沿第一方向投影至局部避障区域内的投影点为目标避障点,能够避免机器人调整本体姿态至目标本体姿态时,机器人与全局避障点之间的距离较近,导致机器人无法及时刹车,从而导致机器人与全局避障点发生碰撞;由于机器人调整本体姿态的过程中,全局避障点沿第一方向投影至局部避障区域内的投影点较全局避障点距离机器人更近,因此通过将投影点作为目标避障点,能够在机器人调整本体姿态的过程中及时避障,提高机器人运行过程中的安全性。
在一些实施例中,可以将全局避障点沿第一方向投影至局部避障区域的任一边界(如,左边界、右边界)上,也可以将全局避障点沿第一方向投影至局部避障区域内的任意部分。本申请实施例对此不作限定。
为了进一步提高机器人的安全性,提高机器人的避障精度,提高机器人的运行效率和运行流畅度。在一些实施例中,在候选避障点包括局部避障点且候选避障点包括全局避障点的情况下,若机器人的当前位置信息和/或局部避障点满足预设条件,则将局部避障点确定为目标避障点。
示例性地,当候选避障点包括局部避障点且候选避障点包括全局避障点时,意味着局部避障区域中存在局部避障点且全局避障区域中存在全局避障点。此时,机器人可以基于机器人的当前位置信息和/或局部避障点是否满足预设条件,判断进行全局避障还是局部避障。
在一些实施例中,机器人的当前位置信息和/或局部避障点满足预设条件,包括以下至少一项:机器人的行驶角度与目标角度之间的角度差大于预设角度差;机器人的当前行驶路径与预设行驶路径之间的横向距离大于预设横向距离;局部避障点与机器人之间的距离小于或等于机器人的刹车距离。
示例性地,机器人的行驶角度与目标角度之间的角度差指机器人的当前本体姿态与机器人的目标本体姿态之间的角度差。机器人的行驶角度与目标角度之间的角度差大于预设角度差(如,3度)时,意味着机器人的行驶方向与行驶路径对应的方向偏差较大。此时,全局避障区域中的障碍点与机器人的距离较远,不会影响机器人的运行,机器人可以进行局部避障,即将局部避障点确定为目标避障点。
机器人的当前行驶路径与预设行驶路径之间的横向距离大于预设横向距离(如,3厘米)时,意味着机器人的当前行驶路径与预设行驶路径平行,即全局避障区域中的障碍点不会影响机器人的运行。因此,机器人进行局部避障,即将局部避障点确定为目标避障点。
局部避障点与机器人之间的距离小于或等于机器人的刹车距离时,意味着机器人在将本体姿态调整至目标本体姿态之前可能与局部避障点发生碰撞。因此,机器人将局部避障点确定为目标避障点,以及时进行避障处理,避免与局部避障点发生碰撞。
在一些实施例中,在候选避障点包括局部避障点且候选避障点包括全局避障点的情况下,若机器人的当前位置信息和/或局部避障点不满足预设条件,则确定局部避障点与全局避障区域的第一位置关系,并基于第一位置关系和机器人的当前位置信息,确定目标避障点。
示例性地,局部避障点与全局避障区域的第一位置关系用于指示局部避障点是否在全局避障区域内。
在一些实施例中,基于第一位置关系确定目标避障点包括:在第一位置关系指示局部避障点位于全局避障区域外的情况下,将全局避障点沿第一方向投影至局部避障区域内的投影点确定为目标避障点。
示例性地,如图10所示,设全局避障区域(图10中虚线框框选的区域)内有全局避障点A,局部避障区域(图10中实线框框选的区域)有局部避障点B(又称obstacle_B),且局部避障点B不在全局避障区域内。此时,由于机器人的当前位置信息和/或局部避障点不满足预设条件,即局部避障点B与机器人之间的距离大于机器人的刹车距离,因此,将全局避障点A沿全局坐标系的X轴方向投影到机器人的局部避障区域中的左边界上得到的投影点A’,确定为目标避障点。
在一些实施例中,基于第一位置关系,确定目标避障点包括:在第一位置关系指示局部避障点位于全局避障区域内的情况下,确定全局避障点沿第一方向投影至局部避障区域内的投影点;基于投影点、局部避障点和机器人的当前位置信息,确定目标避障点。
示例性的,如图11所示,设全局避障区域(图11中虚线框框选的区域)内有全局避障点A,局部避障区域(图11中实线框框选的区域)有局部避障点B,且局部避障点B在全局避障区域内。将全局避障点A沿全局坐标系的X轴方向投影到机器人的局部避障区域中的左边界上得到的投影点 A’,之后基于机器人的当前位置信息,对投影点 A’和局部避障点B进行比较,从投影点 A’和局部避障点B中确定目标避障点。
在一些实施例中,基于投影点、局部避障点和机器人的当前位置信息,确定目标避障点,包括:确定投影点与机器人之间的第一距离,并确定局部避障点与机器人之间的第二距离。若第一距离小于第二距离,则将投影点确定为目标避障点;若第一距离大于第二距离,则将局部避障点确定为目标避障点。
示例性地,可以基于投影点在全局坐标系下的坐标以及机器人在全局坐标系下的坐标,确定投影点与机器人之间的第一距离;基于局部避障点在全局坐标系下的坐标以及机器人在全局坐标系下的坐标,确定局部避障点与机器人之间的第二距离;或者,基于投影点在局部坐标系下的坐标以及机器人在局部坐标系下的坐标,确定投影点与机器人之间的第一距离;基于局部避障点在局部坐标系下的坐标以及机器人在局部坐标系下的坐标,确定局部避障点与机器人之间的第二距离。
在一些实施例中,若第一距离小于第二距离,则意味着投影点与机器人之间的距离小于局部避障点与机器人之间的距离,即投影点距离机器人更近。此时,将投影点确定为目标避障点,以使得机器人能够及时进行避障处理。若第一距离大于第二距离,则意味着局部避障点与机器人之间的距离大于投影点与机器人之间的距离,即局部避障点距离机器人更近。此时,将局部避障点确定为目标避障点,以使得机器人能够及时进行避障处理。
示例性地,如图11所示,若投影点 A’与机器人之间的距离小于局部避障点B与机器人之间的距离,即投影点 A’距离机器人更近,则确定投影点 A’为目标避障点。
在一些实施例中,在候选避障点包括局部避障点且候选避障点包括全局避障点的情况下,若机器人的当前位置信息和/或局部避障点不满足预设条件,则确定全局避障点与局部避障区域的第二位置关系,并基于第二位置关系,确定目标避障点。
示例性地,全局避障点与局部避障区域的第二位置关系用于指示全局避障点是否在局部避障区域内。
在一些实施例中,基于第二位置关系,确定目标避障点包括:在第二位置关系指示全局避障点位于局部避障区域内的情况下,分别确定全局避障点和局部避障点与机器人之间的距离;将全局避障点和局部避障点中,距离机器人最近的避障点确定为目标避障点。
示例性的,如图12所示,设全局避障区域(图12中虚线框框选的区域)内有全局避障点A,且全局避障点A在局部避障区域(图12中实线框框选的区域)内;局部避障区域有局部避障点B和局部避障点C(又称obstacle_C),且局部避障点B和局部避障点C均在全局避障区域内。基于机器人的的当前位置信息,分别确定全局避障点A、局部避障点B和局部避障点C与机器人之间的距离。若局部避障点B距离机器人最近,则将局部避障点B确定为目标避障点。
在一些实施例中,在候选避障点包括局部避障点且候选避障点不包括全局避障点的情况下,基于局部避障点与机器人的当前位置确定目标避障点。
示例性地,候选避障点包括局部避障点且候选避障点不包括全局避障点,意味着全局避障区域内不存在全局避障点,而局部避障区域存在局部避障点。为了保证机器人能够及时避障,基于局部避障点与机器人的当前位置,确定局部避障点与机器人之间的距离,通过局部避障点与机器人之间的距离,确定局部避障点是否为目标避障点。
在一些实施例中,若局部避障点与机器人之间的距离小于或等于机器人的刹车距离,则确定局部避障点为目标避障点;若局部避障点与机器人之间的距离大于机器人的刹车距离,则将预设避障点确定为目标避障点。
其中,预设避障点与机器人之间的距离始终大于机器人的刹车距离。
示例性地,如图13所示,设全局避障区域(图13中虚线框框选的区域)内不存在全局避障点,且局部避障区域(图13中实线框框选的区域)内有局部避障点A。此时,若局部避障点A与机器人之间的距离小于或等于刹车距离,则将局部避障点A确定为目标避障点,以保证机器人及时避障,避免机器人在运行过程中与局部避障点A发生碰撞。若局部避障点A与机器人之间的距离大于刹车距离,则意味着机器人此时不需要进行避障处理,将预设避障点确定为目标避障点,以保证机器人的运行效率。
在一些实施例中,在候选避障点不包括局部避障点和全局避障点的情况下,将预设避障点确定为目标避障点。
示例性地,候选避障点不包括局部避障点和全局避障点,意味着全局避障区域和局部避障区域中均不存在障碍点,此时机器人不需要进行避障处理,将预设避障点确定为目标避障点,以保证机器人的运行效率。
S205、基于目标避障点和机器人的当前位置信息,确定是否进行避障处理。
示例性地,基于目标避障点和机器人的当前位置信息,确定目标避障点和机器人之间的距离;之后,基于目标避障点和机器人之间的距离,确定是否进行避障处理。其中,可以基于机器人在全局坐标系下的坐标,与目标避障点在全局坐标系下的坐标,确定目标避障点与机器人之间的距离;或者,基于机器人在局部坐标系下的坐标,与目标避障点在局部坐标系下的坐标,确定目标避障点与机器人之间的距离。
在一些实施例中,S205包括:若目标避障点与机器人之间的距离小于或等于机器人的刹车距离,则进行避障处理;若目标避障点与机器人之间的距离大于机器人的刹车距离,则不进行避障处理。
示例性地,若目标避障点与机器人之间的距离小于或等于机器人的刹车距离,意味着机器人若不减速或刹车,将与目标避障点发生碰撞,此时进行避障处理。
在一些实施例中,机器人进行避障处理指机器人减速或停止运行。其中,机器人可以基于目标避障点与机器人之间的距离确定减速时的减速度。
示例性地,目标避障点与机器人之间的距离越短,机器人减速时的减速度越大。
在一些实施例中,机器人进行避障处理后,可以生成避障指令。避障指令用于指示工作人员对目标避障点进行移除。当机器人检测到目标避障点被移除时,机器人将按照行驶路径继续行驶。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的机器人避障方法的机器人避障装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个机器人避障装置实施例中的具体限定可以参见上文中对于机器人避障方法的限定,在此不再赘述。具体地,图14为本申请实施例中一种机器人避障装置的结构示意图。如图14所示,该装置包括:
处理模块1401,用于基于机器人的当前位置信息,确定全局避障区域和局部避障区域;
获取模块1402,用于获取全局避障区域内的全局障碍点检测结果和局部避障区域内的局部障碍点检测结果;
处理模块1401,还用于根据全局障碍点检测结果和局部障碍点检测结果,确定候选避障点,候选避障点包括全局避障点和/或局部避障点;基于候选避障点,确定目标避障点;基于目标避障点和机器人的当前位置信息,确定是否进行避障处理。
在一种可选择的实施例中,处理模块1401,还用于基于机器人在全局坐标系下的当前位置信息和预设避障区域尺寸,确定全局避障区域;基于机器人在局部坐标系下的当前位置信息和预设避障区域尺寸,确定局部避障区域。
在一种可选择的实施例中,获取模块1402,还用于获取至少一个障碍点的位置信息;处理模块1401,还用于基于障碍点的位置信息和全局避障区域,确定全局障碍点检测结果;全局障碍点检测结果用于指示全局避障区域内是否存在障碍点;基于障碍点的位置信息和局部避障区域,确定局部障碍点检测结果;局部障碍点检测结果用于指示局部避障区域内是否存在障碍点。
在一种可选择的实施例中,处理模块1401,还用于在全局障碍点检测结果指示全局避障区域存在至少一个第一障碍点时,基于机器人的当前位置信息,在至少一个第一障碍点中确定全局避障点;和/或,在局部障碍点检测结果指示局部避障区域存在至少一个第二障碍点时,基于机器人的当前位置信息,在至少一个第二障碍点中确定局部避障点。
在一种可选择的实施例中,处理模块1401,还用于基于机器人的当前位置信息,确定各第一障碍点与机器人之间的距离;将距离机器人最近的第一障碍点确定为全局避障点。
在一种可选择的实施例中,处理模块1401,还用于基于机器人的当前位置信息,确定各第二障碍点与机器人之间的距离;将距离机器人最近的第二障碍点确定为局部避障点。
在一种可选择的实施例中,处理模块1401,还用于在候选避障点不包括局部避障点,且,候选避障点包括全局避障点的情况下,将全局避障点沿第一方向投影至局部避障区域内的投影点确定为目标避障点。
在一种可选择的实施例中,处理模块1401,还用于在候选避障点包括局部避障点,且,候选避障点包括全局避障点的情况下,若机器人的当前位置信息和/或局部避障点满足预设条件,则将局部避障点确定为目标避障点;若机器人的当前位置信息和/或局部避障点不满足预设条件,则确定局部避障点与全局避障区域的第一位置关系,并基于第一位置关系和机器人的当前位置信息,确定目标避障点;或者,若机器人的当前位置信息和/或局部避障点不满足预设条件,则确定全局避障点与局部避障区域的第二位置关系,并基于第二位置关系,确定目标避障点。
在一种可选择的实施例中,机器人的当前位置信息和/或局部避障点满足预设条件,包括以下至少一项:机器人的行驶角度与目标角度之间的角度差大于预设角度差;机器人的当前行驶路径与预设行驶路径之间的横向距离大于预设横向距离;局部避障点与机器人之间的距离小于或等于机器人的刹车距离。
在一种可选择的实施例中,处理模块1401,还用于在第一位置关系指示局部避障点位于全局避障区域外的情况下,将全局避障点沿第一方向投影至局部避障区域内的投影点确定为目标避障点。
在一种可选择的实施例中,处理模块1401,还用于在第一位置关系指示局部避障点位于全局避障区域内的情况下,确定全局避障点沿第一方向投影至局部避障区域内的投影点;基于投影点、局部避障点和机器人的当前位置信息,确定目标避障点。
在一种可选择的实施例中,处理模块1401,还用于确定投影点与机器人之间的第一距离;确定局部避障点与机器人之间的第二距离;若第一距离小于第二距离,则将投影点确定为目标避障点;若第一距离大于第二距离,则将局部避障点确定为目标避障点。
在一种可选择的实施例中,处理模块1401,还用于在第二位置关系指示全局避障点位于局部避障区域内的情况下,分别确定全局避障点和局部避障点与机器人之间的距离;将全局避障点和局部避障点中,距离机器人最近的避障点确定为目标避障点。
在一种可选择的实施例中,处理模块1401,还用于若目标避障点与机器人之间的距离小于或等于机器人的刹车距离,则进行避障处理;若目标避障点与机器人之间的距离大于机器人的刹车距离,则不进行避障处理。
在一种可选择的实施例中,处理模块1401,还用于在所述候选避障点包括所述局部避障点,且,所述候选避障点不包括所述全局避障点的情况下,基于所述局部避障点与所述机器人的当前位置确定所述目标避障点。
在一种可选择的实施例中,处理模块1401,还用于若所述局部避障点与所述机器人之间的距离小于或等于所述机器人的刹车距离,则确定所述局部避障点为所述目标避障点;若所述局部避障点与所述机器人之间的距离大于所述机器人的刹车距离,则将预设避障点确定为所述目标避障点,所述预设避障点与所述机器人之间的距离始终大于所述机器人的刹车距离。
在一种可选择的实施例中,处理模块1401,还用于在候选避障点不包括局部避障点和全局避障点的情况下,将预设避障点确定为目标避障点,预设避障点与机器人之间的距离大于机器人的刹车距离。
在一种可选择的实施例中,处理模块1401,还用于基于障碍点在局部坐标系下的位置信息、机器人在局部坐标系下的当前位置信息以及机器人的位置姿态角度,确定障碍点在全局坐标系中的位置信息;基于障碍点在全局坐标系中的位置信息和全局避障区域,确定全局障碍点检测结果。
在一种可选择的实施例中,处理模块1401,还用于基于障碍点在局部坐标系下的位置信息和局部避障区域,确定局部障碍点检测结果。
关于机器人避障装置的具体限定和能够达到的有益效果,可以参见上文中对于机器人避障方法的限定,在此不再赘述。
如图15所示,为本实施例提供的一种机器人的内部结构示意图。该机器人包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该机器人的处理器用于提供计算和控制能力。该机器人的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该机器人的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种机器人避障方法。该机器人的显示屏可以是液晶显示屏或者电子墨水显示屏,该机器人的输入装置可以是显示屏上覆盖的触摸层,也可以是机器人外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
如图16所示,为本实施例提供的一种电子设备的内部结构示意图。该电子设备可以是服务器。该电子设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的数据库用于存储高度参数和三维地图数据。该电子设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种机器人避障方法。
本领域技术人员可以理解,图15和图16中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的机器人和电子设备的限定,具体的机器人和电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在具体实现中,本申请实施例提供了一种电子设备,包括处理器和存储器,存储器上存储有计算机程序,计算机程序被处理器执行时实现上述任一项实施例中方法的步骤。
在具体实现中,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一项实施例中方法的步骤。
在具体实现中,本申请实施例提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任一项实施例中方法的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random AccessMemory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (22)
1.一种机器人避障方法,其特征在于,所述方法包括:
基于机器人的当前位置信息,确定全局避障区域和局部避障区域;
获取所述全局避障区域内的全局障碍点检测结果和所述局部避障区域内的局部障碍点检测结果;
根据所述全局障碍点检测结果和所述局部障碍点检测结果,确定候选避障点,所述候选避障点包括全局避障点和/或局部避障点;
基于所述候选避障点,确定目标避障点;
基于所述目标避障点和所述机器人的当前位置信息,确定是否进行避障处理。
2.根据权利要求1所述的方法,其特征在于,所述基于机器人的当前位置信息,确定全局避障区域和局部避障区域,包括:
基于所述机器人在全局坐标系下的当前位置信息和预设避障区域尺寸,确定所述全局避障区域;
基于所述机器人在局部坐标系下的当前位置信息和所述预设避障区域尺寸,确定所述局部避障区域。
3.根据权利要求2所述的方法,其特征在于,所述获取所述全局避障区域内的全局障碍点检测结果和所述局部避障区域内的局部障碍点检测结果,包括:
获取至少一个障碍点的位置信息;
基于所述障碍点的位置信息和所述全局避障区域,确定所述全局障碍点检测结果;所述全局障碍点检测结果用于指示所述全局避障区域内是否存在所述障碍点;
基于所述障碍点的位置信息和所述局部避障区域,确定所述局部障碍点检测结果;所述局部障碍点检测结果用于指示所述局部避障区域内是否存在所述障碍点。
4.根据权利要求3所述的方法,其特征在于,所述根据所述全局障碍点检测结果和所述局部障碍点检测结果,确定候选避障点,包括:
在所述全局障碍点检测结果指示所述全局避障区域存在至少一个第一障碍点时,基于所述机器人的当前位置信息,在所述至少一个第一障碍点中确定所述全局避障点;和/或,
在所述局部障碍点检测结果指示所述局部避障区域存在至少一个第二障碍点时,基于所述机器人的当前位置信息,在所述至少一个第二障碍点中确定所述局部避障点。
5.根据权利要求4所述的方法,其特征在于,所述基于所述机器人的当前位置信息,在所述至少一个第一障碍点中确定所述全局避障点,包括:
基于所述机器人的当前位置信息,确定各所述第一障碍点与所述机器人之间的距离;
将距离所述机器人最近的所述第一障碍点确定为所述全局避障点。
6.根据权利要求4所述的方法,其特征在于,所述基于所述机器人的当前位置信息,在所述至少一个第二障碍点中确定所述局部避障点,包括:
基于所述机器人的当前位置信息,确定各所述第二障碍点与所述机器人之间的距离;
将距离所述机器人最近的所述第二障碍点确定为所述局部避障点。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述基于所述候选避障点,确定目标避障点,包括:
在所述候选避障点不包括所述局部避障点,且,所述候选避障点包括所述全局避障点的情况下,将所述全局避障点沿第一方向投影至所述局部避障区域内的投影点确定为所述目标避障点。
8.根据权利要求1-6中任一项所述的方法,其特征在于,所述基于所述候选避障点,确定目标避障点,包括:
在所述候选避障点包括所述局部避障点,且,所述候选避障点包括所述全局避障点的情况下,若所述机器人的当前位置信息和/或所述局部避障点满足预设条件,则将所述局部避障点确定为所述目标避障点;
若所述机器人的当前位置信息和/或所述局部避障点不满足所述预设条件,则确定所述局部避障点与所述全局避障区域的第一位置关系,并基于所述第一位置关系和所述机器人的当前位置信息,确定所述目标避障点;或者,若所述机器人的当前位置信息和/或所述局部避障点不满足所述预设条件,则确定所述全局避障点与所述局部避障区域的第二位置关系,并基于所述第二位置关系,确定所述目标避障点。
9.根据权利要求8所述的方法,其特征在于,所述机器人的当前位置信息和/或所述局部避障点满足预设条件,包括以下至少一项:
所述机器人的行驶角度与目标角度之间的角度差大于预设角度差;
所述机器人的当前行驶路径与预设行驶路径之间的横向距离大于预设横向距离;
所述局部避障点与所述机器人之间的距离小于或等于所述机器人的刹车距离。
10.根据权利要求9所述的方法,其特征在于,所述基于第一位置关系,确定所述目标避障点,包括:
在所述第一位置关系指示所述局部避障点位于所述全局避障区域外的情况下,将所述全局避障点沿第一方向投影至所述局部避障区域内的投影点确定为所述目标避障点。
11.根据权利要求9所述的方法,其特征在于,所述基于第一位置关系,确定所述目标避障点,包括:
在所述第一位置关系指示所述局部避障点位于所述全局避障区域内的情况下,确定所述全局避障点沿第一方向投影至所述局部避障区域内的投影点;
基于所述投影点、所述局部避障点和所述机器人的当前位置信息,确定所述目标避障点。
12.根据权利要求11所述的方法,其特征在于,所述基于所述投影点、所述局部避障点和所述机器人的当前位置信息,确定所述目标避障点,包括:
确定所述投影点与所述机器人之间的第一距离;
确定所述局部避障点与所述机器人之间的第二距离;
若所述第一距离小于所述第二距离,则将所述投影点确定为所述目标避障点;
若所述第一距离大于所述第二距离,则将所述局部避障点确定为所述目标避障点。
13.根据权利要求9所述的方法,其特征在于,所述基于第二位置关系,确定所述目标避障点,包括:
在所述第二位置关系指示所述全局避障点位于所述局部避障区域内的情况下,分别确定所述全局避障点和所述局部避障点与所述机器人之间的距离;
将所述全局避障点和所述局部避障点中,距离所述机器人最近的避障点确定为所述目标避障点。
14.根据权利要求1-6中任一项所述的方法,其特征在于,所述基于所述目标避障点和所述机器人的当前位置信息,确定是否进行避障处理,包括:
若所述目标避障点与所述机器人之间的距离小于或等于所述机器人的刹车距离,则进行避障处理;
若所述目标避障点与所述机器人之间的距离大于所述机器人的刹车距离,则不进行避障处理。
15.根据权利要求14所述的方法,其特征在于,所述基于所述候选避障点,确定目标避障点,包括:
在所述候选避障点包括所述局部避障点,且,所述候选避障点不包括所述全局避障点的情况下,基于所述局部避障点与所述机器人的当前位置确定所述目标避障点。
16.根据权利要求15所述的方法,其特征在于,所述基于所述局部避障点与所述机器人的当前位置确定所述目标避障点,包括:
若所述局部避障点与所述机器人之间的距离小于或等于所述机器人的刹车距离,则确定所述局部避障点为所述目标避障点;
若所述局部避障点与所述机器人之间的距离大于所述机器人的刹车距离,则将预设避障点确定为所述目标避障点,所述预设避障点与所述机器人之间的距离始终大于所述机器人的刹车距离。
17.根据权利要求16中所述的方法,其特征在于,所述基于所述候选避障点,确定目标避障点,包括:
在所述候选避障点不包括所述局部避障点和所述全局避障点的情况下,将所述预设避障点确定为所述目标避障点。
18.根据权利要求3所述的方法,其特征在于,所述基于所述障碍点的位置信息和所述全局避障区域,确定所述全局障碍点检测结果,包括:
基于所述障碍点在所述局部坐标系下的位置信息、所述机器人在所述局部坐标系下的当前位置信息以及所述机器人的位置姿态角度,确定所述障碍点在全局坐标系中的位置信息;
基于所述障碍点在全局坐标系中的位置信息和所述全局避障区域,确定所述全局障碍点检测结果。
19.根据权利要求3所述的方法,其特征在于,所述基于所述障碍点的位置信息和所述局部避障区域,确定所述局部障碍点检测结果,包括:
基于所述障碍点在所述局部坐标系下的位置信息和所述局部避障区域,确定所述局部障碍点检测结果。
20.一种机器人避障装置,其特征在于,包括:
处理模块,用于基于机器人的当前位置信息,确定全局避障区域和局部避障区域;
获取模块,用于获取所述全局避障区域内的全局障碍点检测结果和所述局部避障区域内的局部障碍点检测结果;
所述处理模块,还用于根据所述全局障碍点检测结果和所述局部障碍点检测结果,确定候选避障点,所述候选避障点包括全局避障点和/或局部避障点;基于所述候选避障点,确定目标避障点;基于所述目标避障点和所述机器人的当前位置信息,确定是否进行避障处理。
21.一种电子设备,包括存储器和处理器,存储器存储有计算机程序,其特征在于,处理器执行计算机程序时实现权利要求1-19中任一项所述的方法。
22.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至19中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311629884.2A CN117406755B (zh) | 2023-12-01 | 2023-12-01 | 机器人避障方法、装置、设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311629884.2A CN117406755B (zh) | 2023-12-01 | 2023-12-01 | 机器人避障方法、装置、设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117406755A true CN117406755A (zh) | 2024-01-16 |
CN117406755B CN117406755B (zh) | 2024-04-19 |
Family
ID=89496358
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311629884.2A Active CN117406755B (zh) | 2023-12-01 | 2023-12-01 | 机器人避障方法、装置、设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117406755B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541057A (zh) * | 2010-12-29 | 2012-07-04 | 沈阳新松机器人自动化股份有限公司 | 一种基于激光测距仪的移动机器人避障方法 |
CN103455034A (zh) * | 2013-09-16 | 2013-12-18 | 苏州大学张家港工业技术研究院 | 一种基于最近距离向量场直方图的避障路径规划方法 |
CN108241375A (zh) * | 2018-02-05 | 2018-07-03 | 景德镇陶瓷大学 | 一种自适应蚁群算法在移动机器人路径规划中的应用方法 |
CN113741431A (zh) * | 2021-08-17 | 2021-12-03 | 嘉兴市敏硕智能科技有限公司 | 一种避障路径确定方法、避障方法、装置及存储介质 |
WO2023115658A1 (zh) * | 2021-12-22 | 2023-06-29 | 广东栗子科技有限公司 | 智能避开障碍的方法及装置 |
WO2023178910A1 (zh) * | 2022-03-21 | 2023-09-28 | 江苏集萃清联智控科技有限公司 | 一种具备多型避障方式的车辆局部轨迹规划方法及系统 |
-
2023
- 2023-12-01 CN CN202311629884.2A patent/CN117406755B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541057A (zh) * | 2010-12-29 | 2012-07-04 | 沈阳新松机器人自动化股份有限公司 | 一种基于激光测距仪的移动机器人避障方法 |
CN103455034A (zh) * | 2013-09-16 | 2013-12-18 | 苏州大学张家港工业技术研究院 | 一种基于最近距离向量场直方图的避障路径规划方法 |
CN108241375A (zh) * | 2018-02-05 | 2018-07-03 | 景德镇陶瓷大学 | 一种自适应蚁群算法在移动机器人路径规划中的应用方法 |
CN113741431A (zh) * | 2021-08-17 | 2021-12-03 | 嘉兴市敏硕智能科技有限公司 | 一种避障路径确定方法、避障方法、装置及存储介质 |
WO2023115658A1 (zh) * | 2021-12-22 | 2023-06-29 | 广东栗子科技有限公司 | 智能避开障碍的方法及装置 |
WO2023178910A1 (zh) * | 2022-03-21 | 2023-09-28 | 江苏集萃清联智控科技有限公司 | 一种具备多型避障方式的车辆局部轨迹规划方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117406755B (zh) | 2024-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11016493B2 (en) | Planning robot stopping points to avoid collisions | |
US9354070B2 (en) | Systems, methods, and industrial vehicles for determining the visibility of features | |
US9574883B2 (en) | Associating semantic location data with automated environment mapping | |
CA3113099C (en) | Zone engine for providing context-augmented map layer | |
JP6802137B2 (ja) | 搬送車システム、搬送車制御システム及び搬送車制御方法 | |
AU2014343128A1 (en) | Systems, methods, and industrial vehicles for determining the visibility of features | |
US10012992B2 (en) | Integrated obstacle detection and payload centering sensor system | |
CN103635779A (zh) | 用于促进用于工业车辆导航的地图数据处理的方法和装置 | |
WO2019037553A1 (zh) | 调度服务器、机器人及其行驶方法 | |
CN110609546B (zh) | 拣货装置的防护方法、系统、计算机设备和可读存储介质 | |
US10824160B2 (en) | Robot localization with co-located markers | |
CN111880525A (zh) | 机器人避障方法、装置、电子设备及可读存储介质 | |
CN114859914B (zh) | 障碍物检测方法、装置、设备及存储介质 | |
US20200191559A1 (en) | Method, system and apparatus for support structure detection | |
CN117406755B (zh) | 机器人避障方法、装置、设备和可读存储介质 | |
JP2019151452A (ja) | 物品の管理システム | |
CN110857859B (zh) | 障碍物检测方法及装置 | |
JP2013161399A (ja) | 搬送車 | |
WO2020032157A1 (ja) | 物品位置推定システム及び物品位置推定方法 | |
US20240286878A1 (en) | Transportation tool, method for interaction between robot and transportation tool, and system comprising transportation tool | |
CN118579473A (zh) | 运输设备控制方法、装置、运输设备及可读存储介质 | |
US20240208736A1 (en) | Ai-powered load stability estimation for pallet handling | |
US20230236600A1 (en) | Operational State Detection for Obstacles in Mobile Robots | |
WO2023192333A1 (en) | Automated identification of potential obstructions in a targeted drop zone | |
WO2023192331A1 (en) | Localization of horizontal infrastructure using point clouds |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |