CN114594772A - 机器人、路径规划方法、装置和存储介质 - Google Patents

机器人、路径规划方法、装置和存储介质 Download PDF

Info

Publication number
CN114594772A
CN114594772A CN202210230813.4A CN202210230813A CN114594772A CN 114594772 A CN114594772 A CN 114594772A CN 202210230813 A CN202210230813 A CN 202210230813A CN 114594772 A CN114594772 A CN 114594772A
Authority
CN
China
Prior art keywords
path
target
point
global
robot
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.)
Pending
Application number
CN202210230813.4A
Other languages
English (en)
Inventor
朱吉林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Pudu Technology Co Ltd
Original Assignee
Shenzhen Pudu Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Pudu Technology Co Ltd filed Critical Shenzhen Pudu Technology Co Ltd
Priority to CN202210230813.4A priority Critical patent/CN114594772A/zh
Publication of CN114594772A publication Critical patent/CN114594772A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本申请涉及一种机器人、路径规划方法、装置和存储介质。该机器人包括存储器和处理器;该存储器用于存储有计算机可读指令,该处理器用于实现如下步骤;获取机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,全覆盖路径信息包括多个全局路径索引点和障碍物分布区域;根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径,第一位置和第二位置为目标清扫区域中的不同位置,第二位置根据所述第一位置、所述多个全局路径索引点以及路径截取目标确定;根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。采用本方法能够提高路径规划灵活性。

Description

机器人、路径规划方法、装置和存储介质
技术领域
本申请涉及机器人技术领域,特别是涉及一种机器人、路径规划方法、装置和存储介质。
背景技术
机器人在设定区域中进行全覆盖路径清扫时需要进行路径规划,通常情况下,机器人先根据设定区域的地图进行全局的全覆盖路径规划,然后在实际清扫过程中再进行局部路径规划。
传统技术中,机器人在进行局部路径规划时,通常根据机器人当前的状态信息(例如位置信息以及环境信息)以及机器人动力学模型,确定机器人下一步的路径。
但是,上述局部路径规划方法,存在路径规划灵活性差的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高路径规划灵活性的机器人、路径规划方法、装置和计算机可读存储介质。
第一方面,本申请提供了一种机器人。该机器人包括存储器以及处理器,该存储器用于存储可在所述处理器上运行的计算机可读指令,该处理器用于执行计算机可读指令时实现如下步骤:
获取机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,全覆盖路径信息包括多个全局路径索引点和障碍物分布区域;
根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径,第一位置和第二位置为目标清扫区域中的不同位置,第二位置根据第一位置、多个全局路径索引点以及路径截取目标确定;
根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。
第二方面,本申请还提供了一种路径规划方法。该路径规划方法包括:
获取机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,全覆盖路径信息包括多个全局路径索引点和障碍物分布区域;
根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径,第一位置和第二位置为目标清扫区域中的不同位置,第二位置根据第一位置、多个全局路径索引点以及路径截取目标确定;
根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。
第三方面,本申请还提供了一种路径规划装置。该装置包括:
获取模块,用于获取机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,全覆盖路径信息包括多个全局路径索引点和障碍物分布区域;
候选模块,用于根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径,第一位置和第二位置为目标清扫区域中的不同位置,第二位置根据第一位置、多个全局路径索引点以及路径截取目标确定;
规划模块,用于根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。
第四方面,本申请还提供了一种计算机可读存储介质。计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如第二方面的路径规划方法。
上述机器人、路径规划方法、装置和计算机可读存储介质,机器人通过采集机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,全覆盖路径信息包括多个全局路径索引点和障碍物分布区域,根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径,并根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径,其中,第一位置和第二位置为目标清扫区域中的不同位置,且第一位置对应的采集时刻在时序上位于第二位置对应的采集时刻之前,第二位置是根据第一位置、多个全局路径索引点以及路径截取目标确定的。由于在进行局部路径规划时,结合了采集到的障碍分布区域以对候选局部路径进行重新规划,提高了局部路径规划的灵活性。
附图说明
图1为一个实施例机器人的结构示意图;
图2为一个实施例中处理器执行计算机可读指令时实现步骤的流程示意图;
图3为一个实施例中“牛耕式全覆盖路径规划”对应的全覆盖路径示意图;
图4为一个实施例中“回字型全覆盖路径规划”对应的全覆盖路径示意图;
图5为一个实施例中步骤102的流程示意图;
图6为一个实施例中第二位置的确定过程的流程示意图;
图7为一个实施例中步骤202的流程示意图;
图8为一个实施例中步骤402的流程示意图;
图9为一个实施例中步骤503的流程示意图;
图10为另一个实施例中步骤202的流程示意图;
图11为一个实施例中步骤103的流程示意图;
图12为一个实施例中步骤801的流程示意图;
图13为另一个实施例中步骤801的流程示意图;
图14为另一个实施例中路径规划方法的流程示意图;
图15为又一个实施例中路径规划方法的流程示意图;
图16为又一个实施例中路径规划方法的流程示意图;
图17为一个实施例中路径状态判别的流程示意图;
图18为一个实施例中路径规划装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
请参见图1,本申请实施例提供了一种机器人。该机器人包括存储器以及处理器。
存储器,存储有可在处理器上运行的计算机程序。
其中,存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。
处理器,用于执行计算机可读指令时实现如图2所示的步骤,包括步骤101-步骤103:
步骤101,获取机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息。
其中,全覆盖路径信息包括多个全局路径索引点和障碍物分布区域。
可选的,该第一位置可借助机器人上安装的采集装置获取得到。该采集装置包括传感器装置。该传感器装置可用于获取该机器人所处位置的周围环境对应的感知信息。具体的,根据传感器装置获取到感知信息以及目标清扫区域对应的地图来确定第一位置。该传感器装置可以为彩色相机装置、深度相机装置、惯性传感器装置、GPS定位装置以及雷达装置中的一种。传感器装置的数量可以是一个、两个或者多个。当传感器装置为多个时,各传感器装置的设置不同。需要说明的是,传感器装置的传感器种类和安装位置可根据实际情况进行调整。
可选的,机器人上还设置有通信装置。该第一位置可基于由通信装置接收云端或者外界服务器传输的信息得到。
可选的,该全覆盖路径信息是基于针对目标清洁区域规划的全覆盖路径得到的。全局路径索引点为在全覆盖路径上具有先后顺序的路径点。
具体的,该全覆盖路径是基于目标清扫区域的全局地图、清扫路径起点以及全覆盖路径规划算法得到的。其中,该地图的格式可为2D栅格地图。该全覆盖路径规划算法可以为“牛耕式全覆盖路径规划”以及“回字型全覆盖路径规划”中的一种。该全覆盖路径的示意图可参见图3、图4,其中,图3为“牛耕式全覆盖路径规划”对应的全覆盖路径示意图,图4为“回字型全覆盖路径规划”对应的全覆盖路径示意图。
可选的,该目标清扫区域的地图为从预设存储区域直接调用保存的目标清扫区域的地图数据信息。其中,预设存储区域可以为云端服务器或者移动机器人的内部存储器中。具体的,该地图数据信息是在进行全覆盖路径规划前得到的。为构建地图,移动机器人会在目标清扫区域进行移动,并在运动的过程中,利用传感器装置采集构建地图所需的数据,并基于采集到的数据构建地图。在进行局部路径规划时,机器人会采用传感器装置实时采集机器人周围的障碍信息,并基于实时采集得到的障碍物信息更新地图。
可选的,该障碍物分布区域是从目标清扫区域的地图中提取得到的。具体的,机器人在构建或者更新地图时,会在地图上标注该障碍物分布区域。处理器根据标注信息以得到障碍物分布区域。
步骤102,根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径。
其中,第一位置和第二位置为目标清扫区域中的不同位置,且第二位置出现在第一位置之后,即第二位置对应的时刻在第一位置对应的时刻之后,第二位置是根据所述第一位置、所述多个全局路径索引点以及路径截取目标确定的。
可选的,获取全局路径索引点中距离第一位置处预设范围内的全局路径索引点;根据获取到的全局路径索引点以及预设全局路径索引点的目标截取数量,确定第二位置。若全局路径索引点中存在多个位于预设范围内的全局路径索引点,则从中随机选择一个全局路径索引点,并根据随机选取的全局路径索引点以及预设全局路径索引点的目标截取数量,确定第二位置。例如,若随机选择的全局路径索引点为全覆盖路径信息中第i个全局路径索引点,目标截取数量为N,则将全覆盖路径信息中第i+N个全局路径索引点对应的位置作为第二位置。
可选的,获取全局路径索引点中距离第一位置处预设范围内的全局路径索引点;根据获取到的全局路径索引点以及预设截取路径长度,确定第二位置。具体的,在全覆盖路径中以获取到的全局路径索引点为起点按照第一位置在全覆盖路径中对应的清扫方向向前截取预设截取路径长度的路径段,根据截取到的路径段的终点确定第二位置。其中,若全覆盖路径信息中存在与截取到的路径段的终点的所在位置重合的全局路径索引点,则将与截取到的路径段的终点的所在位置重合的全局路径索引点的位置作为第二位置;若全覆盖路径信息中不存在与该截取到的路径段的终点的所在位置重合的全局路径索引点,则将全覆盖路径信息中距离该截取到的路径段的终点最近的全局路径索引点的位置作为第二位置。
步骤103,根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。
可选的,根据障碍物分布区域,利用避障算法对候选局部路径执行重新规划,以得到目标局部路径。可选的,该避障算法包括模糊逻辑算法(Fuzzy Logic Algorithm,FLA)、遗传算法(Genetic Algorithms,GA)、快速扩展随机树(Rapidly Random-exploringTrees,RRT)、蚁群算法、水滴算法、触须算法及粒子群算法(Particle SwarmOptimization,PSO)以及组合算法等。
该实施例中,机器人通过采集机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,全覆盖路径信息包括多个全局路径索引点和障碍物分布区域,根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径,并根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径,其中,第一位置和第二位置为目标清扫区域中的不同位置,且获取第一位置对应的时刻在时序上位于第二位置对应的时刻之前,第二位置是根据第一位置、多个全局路径索引点以及路径截取目标确定的。由于在进行局部路径规划时,结合了采集到的障碍分布区域以对候选局部路径进行重新规划,提高了局部路径规划的灵活性。
在一个实施例中,如图5所示,基于图2所示的实施例,本实施例涉及到步骤102,该步骤中根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径的实现过程可以包括以下步骤:
步骤201,基于第一位置以及多个全局路径索引点,执行获取全局路径索引点过程,得到目标全局路径索引点,并将目标全局路径索引点作为候选局部路径对应的目标起始点。
可选的,采用距离度量算法,从全覆盖路径上确定距离第一位置最近的全局路径索引点,将确定的全局路径索引点作为目标起始点。具体的,该距离度量算法可以为欧式距离以及切比雪夫距离中的一种。
步骤202,根据目标起始点以及第二位置,确定候选局部路径。
可选的,将全覆盖路径信息中以目标起始点以及第二位置为终点对应的路径,并将该路径段作为候选局部路径。该第二位置的获取方式可参见步骤102。
该实施例中,机器人通过基于第一位置以及多个全局路径索引点得到目标起始点以用于候选局部路径的确定,提高了候选局部路径的准确性,提高局部路径规划的准确性。
在一个实施例中,如图6所示,基于图5所示实施例,该路径截取目标包括目标截取索引点数量或者目标截取路径长度,对应的,该第二位置的确定过程,包括:
步骤301,若路径截取目标为目标截取索引点数量,基于多个全局路径索引点,确定以目标起始点为首个集合元素且以目标截取索引点数量为集合元素个数的全局路径索引点集合,基于全局路径索引点集合中的元素确定第二位置。
可选的,将全局路径索引点集合中的最后一个元素对应的全局路径索引点对应的位置作为第二位置。或者,将全局路径索引点集合中的未落入障碍物分布区域的最后一个元素对应的全局路径索引点对应的位置作为第二位置。
步骤302,若路径截取目标为目标截取路径长度,基于多个全局路径索引点,确定以目标起始点为起点且以目标截取路径长度为路径长度的目标截取路径段,基于目标截取路径段确定第二位置。
可选的,该目标截取路径段的终点对应的位置作为第二位置。
该实施例中,机器人通过多个全局路径索引点以及路径截取目标确定第二位置,确定方法简单,计算量小。
在一个实施例中,如图7所示,基于图6所示的实施例,本实施例涉及是步骤202中基于第一位置以及多个全局路径索引点,执行获取全局路径索引点过程,得到目标全局路径索引点之前,该处理器用于执行所述计算机可读指令时,还实现如下步骤:确定当前的获取全局路径索引点过程是否为首次执行。
可选的,根据操作标识信息判断当前的获取全局路径索引点过程是否为首次执行。该操作标识信息用于表征获取目标起始路径索引点操作的已执行次数。具体的,该操作标识信息的初始值为0,处理器在每次执行后全局路径索引点过程会将操作标识信息加1。
对应的,上述步骤202的具体实现过程包括步骤301和步骤302:
步骤401,若是首次执行,则从多个全局路径索引点中查找距离第一位置最近的全局路径索引点,并将查找到的全局路径索引点作为目标全局路径索引点。
可选的,若该操作标识信息为0,则当前的获取全局路径索引点过程为首次执行。
步骤402,若不是首次执行,则将上一次执行获取全局路径索引点过程得到的全局路径索引点作为参考索引点,并基于参考索引点、多个全局路径索引点以及第一预设路径长度,确定目标全局路径索引点。
可选的,若该操作标识信息大于0,则当前的获取全局路径索引点过程不是首次执行。
可选的,采用距离度量算法,确定距离第一位置最近的全局路径索引点。具体的,该距离度量算法可以为欧式距离以及切比雪夫距离中的一种。
该实施例中,通过基于是否是首次执行获取全局路径索引点的判断结果,以确定目标全局路径索引点,以保证该确定的目标全局路径索引点位于机器人待行驶的方向上,提高候选局部路径的准确性。
在一个实施例中,如图8所示,基于图7所示的实施例,本实施例涉及的是步骤402中基于参考索引点、多个全局路径索引点以及第一预设路径长度,确定目标全局路径索引点,包括:
步骤501,基于多个全局路径索引点,确定以参考索引点为起点且以第一预设路径长度为路径长度的第一初始路径段。
下面示例性说明了第一预设路径长度的确定方式:
第一种:通过人工设置的方式确定,例如,由处理器调用预设存储位置处的阈值信息得到;
第二种:处理器基于参考索引点到第一位置的路径长度来确定第一预设路径长度。具体的,基于该参考索引点到第一位置,确定对应的最短路径长度;根据最短路径长度值以及预设阈值,得到第一预设路径长度,该第一预设路径长度的取值等于最短路径长度值与预设阈值之和;
第三种:处理器将每次执行获取全局路径索引点时得到的全局路径索引点保存,得到全局路径索引点序列,计算全局路径索引点序列中每相邻的两个全局路径索引点在全覆盖路径中对应的路径长度的均值,并将计算得到的均值作为第一预设路径长度。
步骤502,从第一初始路径段包括的全局路径索引点中查找距离第一位置最近的全局路径索引点,得到中间路径索引点。
步骤503,判断机器人在中间路径索引点对应的第一朝向与机器人在第一位置对应的第二朝向是否方向相反,并基于判断结果,确定目标全局路径索引点。
可选的,获取机器人在中间路径索引点对应的第一朝向角与机器人在第一位置对应的第二朝向角,并计算第一朝向角与第二朝向角之间的差值;若第一朝向角与第二朝向角之间的差值小于预设角度阈值,则确定第一朝向与第二朝向方向相同;若第一朝向角与第二朝向角之间的差值大于或等于预设角度阈值,则确定第一朝向与第二朝向方向相反。这种基于第一朝向角与第二朝向角之间的差值判断第一朝向与第二朝向是否方向相反,方法简单,计算量小。
具体的,机器人在全覆盖路径规划时,会保存有各全局路径索引点对应的朝向角信息;基于根据保存的朝向角信息,得到第一朝向角。
可选的,该第二朝向角通过机器人上设置的采集装置得到,该采集装置中至少包括有惯性传感器装置。利用该惯性传感器装置得到机器人在第一位置对应的第二朝向角。可选的,该预设角度阈值为90度。
该实施例中,通过判断机器人在中间路径索引点对应的第一朝向与机器人在第一位置对应的第二朝向是否方向相反以用于确定目标全局路径索引点,进一步保证该确定的目标全局路径索引点位于机器人待行驶的方向上,提高候选局部路径的准确性。
在一个实施例中,如图9所示,基于上述实施例,本实施例涉及的是步骤503中基于判断结果,确定目标全局路径索引点的实现过程,包括以下步骤:
步骤601,若第一朝向与第二朝向方向相同,则将中间路径索引点作为目标全局路径索引点。
步骤602,若第一朝向与第二朝向方向相反,则确定以参考索引点为起点且以两倍的第一预设路径长度为路径长度的第二初始路径段,并从第二初始路径段包括的全局路径索引点中查找距离第一位置最近的全局路径索引点,得到目标全局路径索引点。
该实施例中,若第一朝向与第二朝向方向相同,则将中间路径索引点作为目标全局路径索引点;若第一朝向与第二朝向方向相反,则从确定的第二初始路径段包括的全局路径索引点中查找距离第一位置最近的全局路径索引点,得到目标全局路径索引点,针对不同的判断结果确定对应的目标全局路径索引点的确定方式,提高了目标全局路径索引点的可靠性。
在一个实施例中,目标截取路径长度为第二预设路径长度。如图10所示,基于图7所示的实施例,本实施例涉及的是步骤202中根据目标起始点以及第二位置,确定候选局部路径,包括:
步骤701,获取目标截取路径段中未落入障碍物分布区域的最后一个全局路径索引点,并将最后一个全局路径索引点作为第二位置。
其中,第二预设路径长度大于第一预设路径长度。可选的,该第二预设长度的取值是由人工设置的固定值。
可选的,获取该目标截取路径段与障碍物分布区域的重叠区域,并从位于重叠区域之外的全局路径索引点中,查找得到目标截取路径段中未落入障碍物分布区域的最后一个全局路径索引点。
步骤702,基于目标截取路径段,确定以目标起始点为起点且以第二位置为终点的路径段,得到候选局部路径。
可选的,该候选局部路径为全覆盖路径中以目标起始点为起点且以第二位置为终点的路径段。
在该实施例中,机器人通过获取目标截取路径段中未落入障碍物分布区域的最后一个全局路径索引点,并将获取得到的最后一个全局路径索引点作为第二位置,结合障碍物信息,实现第二位置点的确定,提高了局部路径规划的灵活性。
在一个实施例中,如图11所示,基于图10所示的实施例,本实施例涉及的是步骤103根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径,包括:
步骤801,根据障碍物分布区域,确定候选局部路径的路径状态。
其中,路径状态包括危险状态或安全状态。
在一种可选的实现方式中,若候选局部路径中存在障碍物,则该路径状态为危险状态,否则,则该路径状态为安全状态。
在另一种可选的实现方式中,若候选局部路径不存在落入障碍物区域的全局路径索引点或者候选局部路径中落入障碍物区域的全局路径索引点的数量少于预设阈值,则该路径状态为安全状态;否则该路径状态为危险状态。
步骤802,根据路径状态,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。
可选的,若路径状态为安全状态,则直接将候选局部路径作为第一位置与第二位置之间的目标局部路径。若路径状态为危险状态,则采用最短路径规划算法,得到第一位置与第二位置之间的目标局部路径。
该实施例中,机器人基于路径状态,实现了目标局部路径的确定,提高了局部路径规划的灵活性。
在一个实施例中,如图12所示,基于图11所示的实施例,该路径状态包括危险状态或安全状态,本实施例涉及的是步骤801根据障碍物分布区域,确定候选局部路径的路径状态,包括:
步骤901,确定以目标起始点为起点且以第三预设路径长度为路径长度的第三初始路径段。
其中,第三预设路径长度小于第二预设路径长度,且第三预设路径长度大于第一预设路径长度。
可选的,该第三预设路径长度为第二预设路径长度的一半。
步骤902,判断第三初始路径段中是否存在落入障碍物分布区域的全局路径索引点。
步骤903,若第三初始路径段中不存在落入障碍物分布区域的全局路径索引点,则路径状态为安全状态。
该实施例中,通过对目标截取路径段进行分段式路径状态判断,提高了路径状态判断的灵活性。
进一步的,请参照图13,步骤801根据所述障碍物分布区域,确定所述候选局部路径的路径状态,还包括:
步骤1010,若第三初始路径段中存在落入障碍物分布区域的全局路径索引点,则将候选局部路径中未落入障碍物分布区域的全局路径索引点作为无障路径索引点。
可选的,获取第三初始路径段与障碍物分布区域的重叠区域,将未落人该重叠区域的全局路径索引点,作为无障路径索引点。
步骤1011,若无障路径索引点的数量不超过预设数值,则路径状态为危险状态。
可选的,该预设数值可由处理器调用预设存储位置的保存的数值信息得到。
步骤1012,若无障路径索引点的数量超过预设数值,则对无障路径索引点执行插值操作,得到多个扩充路径索引点,并判断多个扩充路径索引点中是否存在落入障碍物分布区域的扩充路径索引点,若不存在,则路径状态为安全状态,否则,将路径状态确认为危险状态。
可选的,根据插值算法对多个无障路径索引点执行插值操作,其中,该插值算法可以为多项式插值算法、B样条曲线插值法算法、拉格朗日插值法算法、分段线性插值算法中的一种。
在该实施例中,机器人在进行路径状态的判断时,结合了全局路径索引点是否落入障碍物分布区域、落入障碍物分布区域的全局路径索引点数量以及插值后是否存在落入障碍物分布区域的索引点多种判断条件,实现了路径状态的多重判断,同时将分布较少障碍物对应的路径状态设置为安全状态,提高了路径状态判断的灵活性。
在一个实施例中,基于图13所示的实施例,本实施例涉及的是步骤102根据路径状态,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径,包括:
若路径状态为安全状态,则将多个扩充路径索引点作为目标局部路径的路径规划点;若路径状态为危险状态,则采用预设路径规划算法获取以第一位置为起始点且以第二位置为终点的规划路径,并将获取得到的规划路径作为目标局部路径。
在该实施例中,对于不同路径状态进行不同的路径规划,对于将分布较少障碍物对应的候选局部路径,只需利用插值后得到的多个扩充路径索引点来得到目标局部路径,降低了局部路径规划的计算量,提高了路径规划的灵活性。
在一个实施例中,如图14所示,基于图2所示的实施例,该处理器还用于执行所述计算机可读指令时实现如下步骤:
步骤1020,获取机器人在第一位置处的探测范围。
可选的,该探测范围为机器人上设置的采集装置包括的传感器装置的探测范围。
步骤1021,对位于探测范围内的障碍物进行检测,得到障碍物的障碍物信息。
其中,障碍物信息包括障碍物类型以及障碍物位置,障碍物类型包括静态障碍物以及动态障碍物。
可选的,该静态障碍物可以认为是在一段时间内所处的位置是固定的物体,例如桌椅、垃圾桶、柜子等。该动态障碍物包括行人以及其他机器人等等。
步骤1022,确定障碍物类型对应的预设膨胀值,并基于障碍物位置以及预设膨胀值,确定障碍物分布区域。
其中,预设膨胀值用于表征以障碍物位置为中心向外膨胀的距离。
可选的,机器人的存储器中存储有障碍物类型与膨胀值的映射关系表。处理器可调用该映射关系表,基于查表操作以及检测得到的障碍物类型,得到对应的膨胀值。具体地,静态障碍物对应的膨胀值小于动态障碍物的膨胀值。
在该实施例中,通过对不同的障碍物类型设置不同的障碍物分布区域大小,提高了路径规划的准确性。
在一个实施例中,请继续参考图1,该机器人还包括移动组件1。
如图15所示,基于图2所示的实施例,该处理器还用于执行所述计算机可读指令时实现如下步骤:
步骤1030,基于目标局部路径以及预设机器人行驶约束条件,得到局部可行轨迹。
其中,局部可行轨迹包括多个可行轨迹点。
可选的,该行驶约束条件至少包括安全约束条件、跟随约束条件、速度约束条件以及加速度约束条件中的一种或多种。其中,该安全约束条件用来保证规划的局部可行轨迹不会与障碍物发生碰撞;该跟随约束条件是用于保证规划的局部可行轨迹不会偏离目标局部路径太远;该速度约束条件用于保证规划的局部可行轨迹对应的速度在预设范围内;该加速度约束条件用于保证规划的局部可行轨迹对应的加速度在预设范围内。
可选的,处理器基于目标局部路径以及预设机器人行驶约束条件,利用TAB规划器,得到局部可行轨迹。
步骤1031,基于多个可行轨迹点对应的轨迹点信息,确定各可行轨迹点对应的移动控制信息。
其中,移动控制信息用于指示机器人移动。
可选的,该移动控制信息包括行驶线速度以及行驶角速度,轨迹点信息包括机器人的位置信息、机器人的朝向信息以及预计到达时刻,其中,该预计到达时刻用于表征机器人预计行驶到该可行轨迹点时的时刻。
其中,该机器人的位置信息包括:该可行轨迹点在地图坐标系下的x轴方向的位置信息x以及可行轨迹点在地图坐标系下的y轴方向的位置信息y。该机器人的朝向信息可以为该可行轨迹点在地图坐标系下的朝向角信息theta。该地图坐标系是指基于目标清扫区域对应的地图建立的坐标系。
可选的,针对每个可行轨迹点,在多个可行轨迹点中确定与该可行轨迹点对应的参考轨迹点,参考轨迹点为在预计到达时刻上与该可行轨迹点对应的预计到达时刻相邻的多个可行轨迹点,且参考轨迹点对应的预计到达时刻早于该可行轨迹点对应的预计到达时刻;基于参考轨迹点的位置信息以及预计到达时刻,计算平均线速度,并将计算得到的平均线速度作为行驶线速度;基于参考轨迹点的角度信息以及预计到达时刻,计算平均角速度,并将计算得到的平均角速度作为行驶角速度。
可选的,该参考轨迹点的数量为2。具体的,该平均线速度以及平均角速度的计算公式表示如下:
Figure BDA0003538283460000121
Figure BDA0003538283460000122
其中,(x1,y1,theta1),(x2,y2,theta2)表示参考轨迹点对应的坐标点信息;t表示该两个参考轨迹点的时间间隔,v表示平速度,w表示平均角速度。
移动组件1,用于根据移动控制信息带动机器人进行移动。
可选的,该移动组件1包括轮毂电机。
在实施例中,机器人通过基于目标局部路径以及预设机器人行驶约束条件,得到局部可行轨迹,在保证规划轨迹平滑的基础上可以对规划的速度进行约束使机器的清扫速度更快同时还可以保证清扫路径在绕障的同时能够更贴近规划好的路径。
在一个实施例中,提供了一种机器人。该机器人包括移动组件、存储器以及处理器,该移动控制用于根据移动控制信息带动机器人进行移动,该处理器用于执行计算机程序时实现如图16所示的步骤:
步骤1040,获取机器人当前的第一位置、目标清扫区域对应的全覆盖路径信息以及机器人在第一位置处的探测范围,并对位于探测范围内的障碍物进行检测,得到障碍物的障碍物信息。
其中,该障碍物信息包括障碍物类型以及障碍物位置,障碍物类型包括静态障碍物以及动态障碍物,该全覆盖路径信息包括多个全局路径索引点和障碍物分布区域。
步骤1041,确定障碍物类型对应的预设膨胀值,并基于障碍物位置以及预设膨胀值,确定障碍物分布区域。
其中,预设膨胀值用于表征以障碍物位置为中心向外膨胀的距离。
步骤1042,基于第一位置以及多个全局路径索引点,执行获取全局路径索引点过程,得到目标全局路径索引点,并将目标全局路径索引点作为候选局部路径对应的目标起始点。
具体的,确定当前的获取全局路径索引点过程是否为首次执行;若是首次执行,则从多个全局路径索引点中查找距离第一位置最近的全局路径索引点,并将查找到的全局路径索引点作为目标全局路径索引点;
若不是首次执行,则将上一次执行获取全局路径索引点过程得到的全局路径索引点作为参考索引点,基于多个全局路径索引点,确定以参考索引点为起点且以第一预设路径长度为路径长度的第一初始路径段;从第一初始路径段包括的全局路径索引点中查找距离第一位置最近的全局路径索引点,得到中间路径索引点;获取机器人在中间路径索引点对应的第一朝向角与机器人在第一位置对应的第二朝向角,并计算第一朝向角与第二朝向角之间的差值;若第一朝向角与第二朝向角之间的差值小于预设角度阈值,则将中间路径索引点作为目标全局路径索引点;
若第一朝向角与第二朝向角之间的差值大于或等于预设角度阈值,则确定以参考索引点为起点且以两倍的第一预设路径长度为路径长度的第二初始路径段,并从第二初始路径段包括的全局路径索引点中查找距离第一位置最近的全局路径索引点,得到目标全局路径索引点。
步骤1043,确定以目标起始点为起点且以第二预设路径长度为路径长度的目标截取路径段,第二预设路径长度大于第一预设路径长度。
步骤1044,获取目标截取路径段中未落入障碍物分布区域的最后一个全局索引点,并将获取得到的最后一个全局索引点作为第二位置。
步骤1045,基于目标截取路径段,确定以目标起始点为起点且以第二位置为终点的路径段,得到候选局部路径。
步骤1046,根据障碍物分布区域,确定候选局部路径的路径状态。
其中,路径状态包括危险状态或安全状态。
具体的,该路径状态的判别方法可参见图17,具体过程如下:
确定以目标起始点为起点且以第三预设路径长度为路径长度的第三初始路径段,其中第三预设路径长度小于第二预设路径长度,且第三预设路径长度大于第一预设路径长度;判断第三初始路径段中是否存在落入障碍物分布区域的全局路径索引点;若第三初始路径段中不存在落入障碍物分布区域的全局路径索引点,则路径状态为安全状态。
若第三初始路径段中存在落入障碍物分布区域的全局路径索引点,则获取候选局部路径中未落入障碍物分布区域的全局路径索引点,得到多个无障路径索引点;若多个无障路径索引点的数量不超过预设数值,则路径状态为危险状态。
若多个无障路径索引点的数量超过预设数值,则对多个无障路径索引点执行插值操作,得到多个扩充路径索引点,并判断多个扩充路径索引点中是否存在落入障碍物分布区域的扩充路径索引点,若不存在,则路径状态为安全状态,否则,则路径状态为危险状态。
步骤1047,根据路径状态,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。
具体的,若路径状态为安全状态,则将多个扩充路径索引点作为目标局部路径的路径规划点;若路径状态为危险状态,则采用预设路径规划算法获取以第一位置为起始点且以第二位置为终点的规划路径,并将获取得到的规划路径作为目标局部路径。
步骤1048,基于目标局部路径以及预设机器人行驶约束条件,得到局部可行轨迹。
其中,局部可行轨迹包括多个可行轨迹点。
步骤1049,针对每个可行轨迹点,在多个可行轨迹点中确定与可行轨迹点对应的参考轨迹点。
其中,该参考轨迹点为与可行轨迹点对应的预计到达时刻相邻的多个可行轨迹点,且参考轨迹点对应的预计到达时刻早于该可行轨迹点对应的预计到达时刻。
步骤1050,基于参考轨迹点的位置信息以及预计到达时刻,计算平均线速度,并将计算得到的平均线速度作为可行轨迹点对应的行驶线速度。
步骤1051,基于参考轨迹点的角度信息以及预计到达时刻,计算平均角速度,并将计算得到的平均角速度作为可行轨迹点对应的行驶角速度。
在一个实施例中,提供了一种路径规划方法,其执行主体可以是路径规划装置,该路径规划设置于机器人上,可以通过软件、硬件或者软硬件结合的方式实现成为机器人的终端的部分或者全部。该终端可以是个人计算机、笔记本电脑、媒体播放器、智能电视、智能手机、平板电脑和便携式可穿戴设备等。该方法所提供的解决问题的实现方案与上述机器人中所记载的实现方案相似,故下面所提供的一个或多个路径规划方法实施例中的具体限定可以参见上文中对于机器人的限定,在此不再赘述。
在一个实施例中,该路径规划方法包括:
获取机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,全覆盖路径信息包括多个全局路径索引点和障碍物分布区域;
根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径,第一位置和第二位置为目标清扫区域中的不同位置,且第一位置对应的时刻在时序上位于第二位置对应的时刻之前,第二位置是根据第一位置、多个全局路径索引点以及路径截取目标确定的;
根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。
在一个实施例中,根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径,包括:
基于第一位置以及多个全局路径索引点,执行获取全局路径索引点过程,得到目标全局路径索引点,并将目标全局路径索引点作为候选局部路径对应的目标起始点;
根据目标起始点以及第二位置,确定候选局部路径。
在一个实施例中,该路径截取目标包括目标截取索引点数量或者目标截取路径长度,该第二位置的确定过程,包括:
若路径截取目标为目标截取索引点数量,基于多个全局路径索引点,确定以目标起始点为首个集合元素且以目标截取索引点数量为集合元素个数的全局路径索引点集合,基于全局路径索引点集合中的元素确定第二位置;
若路径截取目标为目标截取路径长度,基于多个全局路径索引点,确定以目标起始点为起点且以目标截取路径长度为路径长度的目标截取路径段,基于目标截取路径段确定第二位置。
在一个实施例中,基于第一位置以及多个全局路径索引点,执行获取全局路径索引点过程,得到目标全局路径索引点之前,包括:
确定当前的获取全局路径索引点过程是否为首次执行;
对应的,基于第一位置以及多个全局路径索引点,执行获取全局路径索引点过程,得到目标全局路径索引点,包括:
若是首次执行,则从多个全局路径索引点中查找距离第一位置最近的全局路径索引点,并将查找到的全局路径索引点作为目标全局路径索引点;
若不是首次执行,则将上一次执行获取全局路径索引点过程得到的全局路径索引点作为参考索引点,并基于参考索引点、多个全局路径索引点以及第一预设路径长度,确定目标全局路径索引点。
在一个实施例中,基于参考索引点、多个全局路径索引点以及第一预设路径长度,确定目标全局路径索引点,包括:
基于多个全局路径索引点,确定以参考索引点为起点且以第一预设路径长度为路径长度的第一初始路径段;
从第一初始路径段包括的全局路径索引点中查找距离第一位置最近的全局路径索引点,得到中间路径索引点;
判断机器人在中间路径索引点对应的第一朝向与机器人在第一位置对应的第二朝向是否方向相反,并基于判断结果,确定目标全局路径索引点。
在一个实施例中,判断机器人在中间路径索引点对应的第一朝向与机器人在第一位置对应的第二朝向是否方向相反,包括:
获取机器人在中间路径索引点对应的第一朝向角与机器人在第一位置对应的第二朝向角,并计算第一朝向角与第二朝向角之间的差值;
若第一朝向角与第二朝向角之间的差值小于预设角度阈值,则确定第一朝向与第二朝向方向相同;
若第一朝向角与第二朝向角之间的差值大于或等于预设角度阈值,则确定第一朝向与第二朝向方向相反。
在一个实施例中,基于判断结果,确定目标全局路径索引点,包括:
若第一朝向与第二朝向方向相同,则将中间路径索引点作为目标全局路径索引点;
若第一朝向与第二朝向方向相反,则确定以参考索引点为起点且以两倍的第一预设路径长度为路径长度的第二初始路径段,并从第二初始路径段包括的全局路径索引点中查找距离第一位置最近的全局路径索引点,得到目标全局路径索引点。
在一个实施例中,该目标截取路径长度为第二预设路径长度,第二预设路径长度大于第一预设路径长度,根据目标起始点以及第二位置,确定候选局部路径,包括:
获取目标截取路径段中未落入障碍物分布区域的最后一个全局路径索引点,并将最后一个全局路径索引点作为第二位置;
基于目标截取路径段,确定以目标起始点为起点且以第二位置为终点的路径段,得到候选局部路径。
在一个实施例中,根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径,包括:
根据障碍物分布区域,确定候选局部路径的路径状态;
根据路径状态,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。
在一个实施例中,路径状态包括危险状态或安全状态,根据障碍物分布区域,确定候选局部路径的路径状态,包括:
确定以目标起始点为起点且以第三预设路径长度为路径长度的第三初始路径段,第三预设路径长度小于第二预设路径长度,且第三预设路径长度大于第一预设路径长度;
判断第三初始路径段中是否存在落入障碍物分布区域的全局路径索引点;
若第三初始路径段中不存在落入障碍物分布区域的全局路径索引点,则路径状态为安全状态。
在一个实施例中,根据障碍物分布区域,确定候选局部路径的路径状态,还包括:
若第三初始路径段中存在落入障碍物分布区域的全局路径索引点,则将候选局部路径中未落入障碍物分布区域的全局路径索引点作为无障路径索引点;
若无障路径索引点的数量不超过预设数值,则路径状态为危险状态;
若无障路径索引点的数量超过预设数值,则对无障路径索引点执行插值操作,得到多个扩充路径索引点,并判断多个扩充路径索引点中是否存在落入障碍物分布区域的扩充路径索引点,若不存在,则路径状态为安全状态,否则,将路径状态确认为危险状态。
在一个实施例中,根据路径状态,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径,包括:
若路径状态为安全状态,则将多个扩充路径索引点作为目标局部路径的路径规划点;
若路径状态为危险状态,则采用预设路径规划算法获取以第一位置为起始点且以第二位置为终点的规划路径,并将获取得到的规划路径作为目标局部路径。
在一个实施例中,该路径规划方法还包括:
获取机器人在第一位置处的探测范围;
对位于探测范围内的障碍物进行检测,得到障碍物的障碍物信息,障碍物信息包括障碍物类型以及障碍物位置,障碍物类型包括静态障碍物以及动态障碍物;
确定障碍物类型对应的预设膨胀值,并基于障碍物位置以及预设膨胀值,确定障碍物分布区域,预设膨胀值用于表征以障碍物位置为中心向外膨胀的距离。
在一个实施例中,该路径规划方法还包括:
基于目标局部路径以及预设机器人行驶约束条件,得到局部可行轨迹,局部可行轨迹包括多个可行轨迹点;
基于多个可行轨迹点对应的轨迹点信息,确定各可行轨迹点对应的移动控制信息,移动控制信息用于指示机器人移动。
在一个实施例中,移动控制信息包括行驶线速度以及行驶角速度,轨迹点信息包括机器人的位置信息、机器人的朝向信息以及预计到达时刻,基于多个可行轨迹点对应的轨迹点信息,确定各可行轨迹点对应的移动控制信息,包括:
针对每个可行轨迹点,在多个可行轨迹点中确定与可行轨迹点对应的参考轨迹点,参考轨迹点为在预计到达时刻上与可行轨迹点对应的预计到达时刻相邻的多个可行轨迹点,且参考轨迹点对应的预计到达时刻早于该可行轨迹点对应的预计到达时刻;
基于参考轨迹点的位置信息以及预计到达时刻,计算平均线速度,并将计算得到的平均线速度作为行驶线速度;
基于参考轨迹点的角度信息以及预计到达时刻,计算平均角速度,并将计算得到的平均角速度作为行驶角速度。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的路径规划方法的路径规划装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个路径规划装置实施例中的具体限定可以参见上文中对于路径规划方法的限定,在此不再赘述。
在一个实施例中,如图18所示,提供了一种路径规划装置,包括:获取模块100、候选模块200和规划模块300,其中:
获取模块100,用于获取机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,全覆盖路径信息包括多个全局路径索引点和障碍物分布区域;
候选模块200,用于根据第一位置以及多个全局路径索引点,确定第一位置与第二位置之间的候选局部路径,第一位置和第二位置为目标清扫区域中的不同位置,且获取第一位置对应的时刻在时序上位于第二位置对应的时刻之前,即获取第一位置时对应一个时序,获取第二位置时对应一个时序,第一位置对应的时刻位于第二位置对应的时刻之前,第二位置是根据第一位置、多个全局路径索引点以及路径截取目标确定的;
规划模块300,用于根据障碍物分布区域,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。
在一个实施例中,该候选模块200,具体用于:
基于第一位置以及多个全局路径索引点,执行获取全局路径索引点过程,得到目标全局路径索引点,并将目标全局路径索引点作为候选局部路径对应的目标起始点;根据目标起始点以及第二位置,确定候选局部路径。
在一个实施例中,该路径截取目标包括目标截取索引点数量或者目标截取路径长度,该候选模块200还具体用于:
若路径截取目标为目标截取索引点数量,基于多个全局路径索引点,确定以目标起始点为首个集合元素且以目标截取索引点数量为集合元素个数的全局路径索引点集合,基于全局路径索引点集合中的元素确定第二位置;
若路径截取目标为目标截取路径长度,基于多个全局路径索引点,确定以目标起始点为起点且以目标截取路径长度为路径长度的目标截取路径段,基于目标截取路径段确定第二位置。
在一个实施例中,该装置还用于:
确定当前的获取全局路径索引点过程是否为首次执行;
对应的,该候选模块200,还具体用于:
若是首次执行,则从多个全局路径索引点中查找距离第一位置最近的全局路径索引点,并将查找到的全局路径索引点作为目标全局路径索引点;
若不是首次执行,则将上一次执行获取全局路径索引点过程得到的全局路径索引点作为参考索引点,并基于参考索引点、多个全局路径索引点以及第一预设路径长度,确定目标全局路径索引点。
在一个实施例中,该候选模块200,还具体用于:
基于多个全局路径索引点,确定以参考索引点为起点且以第一预设路径长度为路径长度的第一初始路径段;
从第一初始路径段包括的全局路径索引点中查找距离第一位置最近的全局路径索引点,得到中间路径索引点;
判断机器人在中间路径索引点对应的第一朝向与机器人在第一位置对应的第二朝向是否方向相反,并基于判断结果,确定目标全局路径索引点。
在一个实施例中,该候选模块200,还具体用于:
若第一朝向与第二朝向方向相同,则将中间路径索引点作为目标全局路径索引点;
若第一朝向与第二朝向方向相反,则确定以参考索引点为起点且以两倍的第一预设路径长度为路径长度的第二初始路径段,并从第二初始路径段包括的全局路径索引点中查找距离第一位置最近的全局路径索引点,得到目标全局路径索引点。
在一个实施例中,该目标截取路径长度为第二预设路径长度,第二预设路径长度大于第一预设路径长度,该候选模块200,还具体用于:
获取目标截取路径段中未落入障碍物分布区域的最后一个全局索引点,并将最后一个全局索引点作为第二位置;
基于目标截取路径段,确定以目标起始点为起点且以第二位置为终点的路径段,得到候选局部路径。
在一个实施例中,该规划模块300,具体用于:
根据障碍物分布区域,确定候选局部路径的路径状态,路径状态包括危险状态或安全状态;根据路径状态,对候选局部路径进行重新规划,得到第一位置与第二位置之间的目标局部路径。
在一个实施例中,该规划模块300,还具体用于:
确定以目标起始点为起点且以第三预设路径长度为路径长度的第三初始路径段,第三预设路径长度小于第二预设路径长度,且第三预设路径长度大于第一预设路径长度;
判断第三初始路径段中是否存在落入障碍物分布区域的全局路径索引点;
若第三初始路径段中不存在落入障碍物分布区域的全局路径索引点,则路径状态为安全状态。
在一个实施例中,该规划模块300,还具体用于:
若第三初始路径段中存在落入障碍物分布区域的全局路径索引点,则获取候选局部路径中未落入障碍物分布区域的全局路径索引点,得到多个无障路径索引点;
若多个无障路径索引点的数量不超过预设数值,则路径状态为危险状态;
若多个无障路径索引点的数量超过预设数值,则对多个无障路径索引点执行插值操作,得到多个扩充路径索引点,并判断多个扩充路径索引点中是否存在落入障碍物分布区域的扩充路径索引点,若不存在,则路径状态为安全状态,否则,则路径状态为危险状态。
在一个实施例中,该规划模块300,还具体用于:
若路径状态为安全状态,则将多个扩充路径索引点作为目标局部路径的路径规划点;
若路径状态为危险状态,则采用预设路径规划算法获取以第一位置为起始点且以第二位置为终点的规划路径,并将获取得到的规划路径作为目标局部路径。
在一个实施例中,该路径规划装置还包括障碍物模块,该障碍物模块,具有用于:
获取机器人在第一位置处的探测范围;
对位于探测范围内的障碍物进行检测,得到障碍物的障碍物信息,障碍物信息包括障碍物类型以及障碍物位置,障碍物类型包括静态障碍物以及动态障碍物;
确定障碍物类型对应的预设膨胀值,并基于障碍物位置以及预设膨胀值,确定障碍物分布区域,预设膨胀值用于表征以障碍物位置为中心向外膨胀的距离。
在一个实施例中,该路径规划装置还包括控制模块,该控制模块,具有用于:
基于目标局部路径以及预设机器人行驶约束条件,得到局部可行轨迹,局部可行轨迹包括多个可行轨迹点;基于多个可行轨迹点对应的轨迹点信息,确定各可行轨迹点对应的移动控制信息,移动控制信息用于指示机器人移动。
上述路径规划装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (18)

1.一种机器人,其特征在于,所述机器人包括存储器和处理器,所述存储器用于存储可在所述处理器上运行的计算机可读指令,所述处理器用于执行所述计算机可读指令时实现如下步骤:
获取所述机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,所述全覆盖路径信息包括多个全局路径索引点和障碍物分布区域;
根据所述第一位置以及所述多个全局路径索引点,确定所述第一位置与第二位置之间的候选局部路径,所述第一位置和所述第二位置为所述目标清扫区域中的不同位置,所述第二位置根据所述第一位置、所述多个全局路径索引点以及路径截取目标确定;
根据所述障碍物分布区域,对所述候选局部路径进行重新规划,得到所述第一位置与所述第二位置之间的目标局部路径。
2.根据权利要求1所述的机器人,其特征在于,所述根据所述第一位置以及所述多个全局路径索引点,确定所述第一位置与第二位置之间的候选局部路径,包括:
基于所述第一位置以及所述多个全局路径索引点,执行获取全局路径索引点过程,得到目标全局路径索引点,并将所述目标全局路径索引点作为所述候选局部路径对应的目标起始点;
根据所述目标起始点以及所述第二位置,确定所述候选局部路径。
3.根据权利要求2所述的机器人,其特征在于,所述路径截取目标包括目标截取索引点数量或者目标截取路径长度,所述第二位置的确定过程,包括:
若所述路径截取目标为目标截取索引点数量,基于所述多个全局路径索引点,确定以所述目标起始点为首个集合元素且以所述目标截取索引点数量为集合元素个数的全局路径索引点集合,基于所述全局路径索引点集合中的元素确定所述第二位置;
若所述路径截取目标为目标截取路径长度,基于所述多个全局路径索引点,确定以所述目标起始点为起点且以所述目标截取路径长度为路径长度的目标截取路径段,基于所述目标截取路径段确定所述第二位置。
4.根据权利要求3所述的机器人,其特征在于,所述基于所述第一位置以及所述多个全局路径索引点,执行获取全局路径索引点过程,得到目标全局路径索引点之前,所述处理器用于执行所述计算机可读指令时,还实现如下步骤:
确定当前的获取全局路径索引点过程是否为首次执行;
对应的,所述基于所述第一位置以及所述多个全局路径索引点,执行获取全局路径索引点过程,得到目标全局路径索引点,包括:
若是首次执行,则从所述多个全局路径索引点中查找距离所述第一位置最近的全局路径索引点,并将查找到的全局路径索引点作为所述目标全局路径索引点;
若不是首次执行,则将上一次执行获取全局路径索引点过程得到的全局路径索引点作为参考索引点,并基于所述参考索引点、所述多个全局路径索引点以及第一预设路径长度,确定所述目标全局路径索引点。
5.根据权利要求4所述的机器人,其特征在于,所述基于所述参考索引点、所述多个全局路径索引点以及第一预设路径长度,确定所述目标全局路径索引点,包括:
基于所述多个全局路径索引点,确定以所述参考索引点为起点且以所述第一预设路径长度为路径长度的第一初始路径段;
从所述第一初始路径段包括的全局路径索引点中查找距离所述第一位置最近的全局路径索引点,得到中间路径索引点;
判断所述机器人在所述中间路径索引点对应的第一朝向与所述机器人在所述第一位置对应的第二朝向是否方向相反,并基于判断结果,确定所述目标全局路径索引点。
6.根据权利要求5所述的机器人,其特征在于,所述判断所述机器人在所述中间路径索引点对应的第一朝向与所述机器人在所述第一位置对应的第二朝向是否方向相反,包括:
获取所述机器人在所述中间路径索引点对应的第一朝向角与所述机器人在所述第一位置对应的第二朝向角,并计算所述第一朝向角与所述第二朝向角之间的差值;
若所述第一朝向角与所述第二朝向角之间的差值小于预设角度阈值,则确定所述第一朝向与所述第二朝向方向相同;
若所述第一朝向角与所述第二朝向角之间的差值大于或等于所述预设角度阈值,则确定所述第一朝向与所述第二朝向方向相反。
7.根据权利要求5或6任意一项所述的机器人,其特征在于,所述基于判断结果,确定所述目标全局路径索引点,包括:
若所述第一朝向与所述第二朝向方向相同,则将所述中间路径索引点作为所述目标全局路径索引点;
若所述第一朝向与所述第二朝向方向相反,则确定以所述参考索引点为起点且以两倍的第一预设路径长度为路径长度的第二初始路径段,并从所述第二初始路径段包括的全局路径索引点中查找距离所述第一位置最近的全局路径索引点,得到所述目标全局路径索引点。
8.根据权利要求4所述的机器人,其特征在于,所述目标截取路径长度为第二预设路径长度,所述第二预设路径长度大于所述第一预设路径长度,所述根据所述目标起始点以及所述第二位置,确定所述候选局部路径,包括:
获取所述目标截取路径段中未落入所述障碍物分布区域的最后一个全局路径索引点,并将所述最后一个全局路径索引点作为所述第二位置;
基于所述目标截取路径段,确定以所述目标起始点为起点且以所述第二位置为终点的路径段,得到所述候选局部路径。
9.根据权利要求8所述的机器人,其特征在于,所述根据所述障碍物分布区域,对所述候选局部路径进行重新规划,得到所述第一位置与所述第二位置之间的目标局部路径,包括:
根据所述障碍物分布区域,确定所述候选局部路径的路径状态;
根据所述路径状态,对所述候选局部路径进行重新规划,得到所述第一位置与所述第二位置之间的目标局部路径。
10.根据权利要求9所述的机器人,其特征在于,所述路径状态包括危险状态或安全状态,所述根据所述障碍物分布区域,确定所述候选局部路径的路径状态,包括:
确定以所述目标起始点为起点且以第三预设路径长度为路径长度的第三初始路径段,所述第三预设路径长度小于所述第二预设路径长度,且所述第三预设路径长度大于所述第一预设路径长度;
判断所述第三初始路径段中是否存在落入所述障碍物分布区域的全局路径索引点;
若所述第三初始路径段中不存在落入所述障碍物分布区域的全局路径索引点,则所述路径状态为安全状态。
11.根据权利要求10所述的机器人,其特征在于,所述根据所述障碍物分布区域,确定所述候选局部路径的路径状态,还包括:
若所述第三初始路径段中存在落入所述障碍物分布区域的全局路径索引点,则将所述候选局部路径中未落入所述障碍物分布区域的全局路径索引点作为无障路径索引点;
若所述无障路径索引点的数量不超过预设数值,则所述路径状态为危险状态;
若所述无障路径索引点的数量超过预设数值,则对所述无障路径索引点执行插值操作,得到多个扩充路径索引点,并判断所述多个扩充路径索引点中是否存在落入所述障碍物分布区域的扩充路径索引点,若不存在,则所述路径状态为安全状态,否则,将所述路径状态确认为危险状态。
12.根据权利要求11所述的机器人,其特征在于,所述根据所述路径状态,对所述候选局部路径进行重新规划,得到所述第一位置与所述第二位置之间的目标局部路径,包括:
若所述路径状态为安全状态,则将所述多个扩充路径索引点作为所述目标局部路径的路径规划点;
若所述路径状态为危险状态,则采用预设路径规划算法获取以所述第一位置为起始点且以所述第二位置为终点的规划路径,并将获取得到的规划路径作为所述目标局部路径。
13.根据权利要求1所述的机器人,其特征在于,所述处理器用于执行所述计算机可读指令时,还实现如下步骤:
获取所述机器人在所述第一位置处的探测范围;
对位于所述探测范围内的障碍物进行检测,得到所述障碍物的障碍物信息,所述障碍物信息包括障碍物类型以及障碍物位置,所述障碍物类型包括静态障碍物以及动态障碍物;
确定所述障碍物类型对应的预设膨胀值,并基于所述障碍物位置以及所述预设膨胀值,确定所述障碍物分布区域,所述预设膨胀值用于表征以所述障碍物位置为中心向外膨胀的距离。
14.根据权利要求1所述的机器人,其特征在于,所述机器人还包括移动组件;
所述处理器用于执行所述计算机可读指令时,还实现如下步骤:
基于所述目标局部路径以及预设机器人行驶约束条件,得到局部可行轨迹,所述局部可行轨迹包括多个可行轨迹点;
基于所述多个可行轨迹点对应的轨迹点信息,确定各所述可行轨迹点对应的移动控制信息,所述移动控制信息用于指示所述机器人移动;
所述移动组件,用于根据所述移动控制信息带动所述机器人进行移动。
15.根据权利要求14所述的机器人,其特征在于,所述移动控制信息包括行驶线速度以及行驶角速度,所述轨迹点信息包括所述机器人的位置信息、所述机器人的朝向信息以及预计到达时刻,所述基于所述多个可行轨迹点对应的轨迹点信息,确定各所述可行轨迹点对应的移动控制信息,包括:
针对每个所述可行轨迹点,在所述多个可行轨迹点中确定与所述可行轨迹点对应的参考轨迹点,所述参考轨迹点为在预计到达时刻上与所述可行轨迹点对应的预计到达时刻相邻的多个可行轨迹点,且所述参考轨迹点对应的预计到达时刻早于所述可行轨迹点对应的预计到达时刻;
基于所述参考轨迹点的位置信息以及预计到达时刻,计算平均线速度,并将计算得到的平均线速度作为所述行驶线速度;
基于所述参考轨迹点的角度信息以及预计到达时刻,计算平均角速度,并将计算得到的平均角速度作为所述行驶角速度。
16.一种路径规划方法,其特征在于,所述方法包括:
获取机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,所述全覆盖路径信息包括多个全局路径索引点和障碍物分布区域;
根据所述第一位置以及所述多个全局路径索引点,确定所述第一位置与第二位置之间的候选局部路径,所述第一位置和所述第二位置为所述目标清扫区域中的不同位置,所述第二位置根据所述第一位置、所述多个全局路径索引点以及路径截取目标确定;
根据所述障碍物分布区域,对所述候选局部路径进行重新规划,得到所述第一位置与所述第二位置之间的目标局部路径。
17.一种路径规划装置,其特征在于,所述装置包括:
获取模块,用于获取机器人当前的第一位置以及目标清扫区域对应的全覆盖路径信息,所述全覆盖路径信息包括多个全局路径索引点和障碍物分布区域;
候选模块,用于根据所述第一位置以及所述多个全局路径索引点,确定所述第一位置与第二位置之间的候选局部路径,所述第一位置和所述第二位置为所述目标清扫区域中的不同位置,所述第二位置根据所述第一位置、所述多个全局路径索引点以及路径截取目标确定;
规划模块,用于根据所述障碍物分布区域,对所述候选局部路径进行重新规划,得到所述第一位置与所述第二位置之间的目标局部路径。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求16所述的方法的步骤。
CN202210230813.4A 2022-03-09 2022-03-09 机器人、路径规划方法、装置和存储介质 Pending CN114594772A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210230813.4A CN114594772A (zh) 2022-03-09 2022-03-09 机器人、路径规划方法、装置和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210230813.4A CN114594772A (zh) 2022-03-09 2022-03-09 机器人、路径规划方法、装置和存储介质

Publications (1)

Publication Number Publication Date
CN114594772A true CN114594772A (zh) 2022-06-07

Family

ID=81809033

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210230813.4A Pending CN114594772A (zh) 2022-03-09 2022-03-09 机器人、路径规划方法、装置和存储介质

Country Status (1)

Country Link
CN (1) CN114594772A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115183793A (zh) * 2022-09-14 2022-10-14 毫末智行科技有限公司 一种障碍物膨胀的规划方法、系统、电子设备及存储介质
CN117553804A (zh) * 2024-01-11 2024-02-13 深圳市普渡科技有限公司 路径规划方法、装置、计算机设备和存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115183793A (zh) * 2022-09-14 2022-10-14 毫末智行科技有限公司 一种障碍物膨胀的规划方法、系统、电子设备及存储介质
CN115183793B (zh) * 2022-09-14 2022-12-23 毫末智行科技有限公司 一种障碍物膨胀的规划方法、系统、电子设备及存储介质
CN117553804A (zh) * 2024-01-11 2024-02-13 深圳市普渡科技有限公司 路径规划方法、装置、计算机设备和存储介质
CN117553804B (zh) * 2024-01-11 2024-04-09 深圳市普渡科技有限公司 路径规划方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
CN107677285B (zh) 机器人的路径规划系统及方法
CN109782763B (zh) 一种动态环境下的移动机器人路径规划方法
CN111670468B (zh) 移动体行为预测装置以及移动体行为预测方法
CN111090282B (zh) 机器人的避障方法、机器人以及装置
CN114594772A (zh) 机器人、路径规划方法、装置和存储介质
US20190322275A1 (en) Vehicle tracking
Siagian et al. Mobile robot navigation system in outdoor pedestrian environment using vision-based road recognition
CN109163722B (zh) 一种仿人机器人路径规划方法及装置
US9651388B1 (en) System and method for improved simultaneous localization and mapping
US11493930B2 (en) Determining changes in marker setups for robot localization
CN111469127B (zh) 代价地图更新方法、装置、机器人及存储介质
CN105606102A (zh) 一种基于格网模型的pdr室内定位方法及系统
CN110806211A (zh) 机器人自主探索建图的方法、设备及存储介质
CN109068278B (zh) 室内避障方法、装置、计算机设备及存储介质
WO2022016320A1 (zh) 地图更新方法、装置、计算机设备和存储介质
CN112445222A (zh) 导航方法、装置、存储介质以及终端
WO2023130766A1 (zh) 机器人的路径规划方法、电子设备及计算机可读存储介质
CN114543815A (zh) 基于基因调控网络的多智能体导航控制方法、设备及介质
EP4180895A1 (en) Autonomous mobile robots for coverage path planning
CN114879660A (zh) 一种基于目标驱动的机器人环境感知方法
CN113433937A (zh) 基于启发式探索的分层导航避障系统、分层导航避障方法
Bouman et al. Adaptive coverage path planning for efficient exploration of unknown environments
US20220187845A1 (en) Method for estimating positioning of moving object by using big cell grid map, recording medium in which program for implementing same is stored, and computer program stored in medium in order to implement same
Berrio et al. Updating the visibility of a feature-based map for long-term maintenance
Tsamis et al. Towards life-long mapping of dynamic environments using temporal persistence modeling

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