CN116414116A - 路径规划方法、运动控制方法及计算机程序产品 - Google Patents

路径规划方法、运动控制方法及计算机程序产品 Download PDF

Info

Publication number
CN116414116A
CN116414116A CN202111681531.8A CN202111681531A CN116414116A CN 116414116 A CN116414116 A CN 116414116A CN 202111681531 A CN202111681531 A CN 202111681531A CN 116414116 A CN116414116 A CN 116414116A
Authority
CN
China
Prior art keywords
point
path
mobile robot
pose
curvature
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
CN202111681531.8A
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.)
Lingdong Technology Beijing Co Ltd
Original Assignee
Lingdong Technology Beijing 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 Lingdong Technology Beijing Co Ltd filed Critical Lingdong Technology Beijing Co Ltd
Priority to CN202111681531.8A priority Critical patent/CN116414116A/zh
Priority to PCT/CN2022/123040 priority patent/WO2023124339A1/zh
Publication of CN116414116A publication Critical patent/CN116414116A/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, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface

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)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

提出了一种用于移动机器人的路径规划方法,其包括以下步骤:获取起点A处的起点位姿和起点曲率τ0以及终点B处的终点位姿和终点曲率τ1;确定点C1和点C3;在线段C1C3上确定点C2;确定第一路径和第二路径,其均为满足下述约束的三阶贝塞尔曲线:根据第一路径,移动机器人在起点A处满足起点位姿和起点曲率τ0,根据第二路径,移动机器人在终点B处满足终点位姿和终点曲率τ1,以及根据第一路径和第二路径,移动机器人在点C2处的线速度方向与向量
Figure DDA0003443312530000011
相同并且曲率为0;将第一路径与第二路径拼接而成的路径作为规划路径或其一部分。提出了相应的用于移动机器人的运动控制方法及相应的计算机程序产品。借助于本发明,能够优化移动机器人的运动路径。

Description

路径规划方法、运动控制方法及计算机程序产品
技术领域
本发明涉及移动机器人领域、尤其是移动机器人的运动控制领域,具体涉及一种用于移动机器人的路径规划方法、相应的用于移动机器人的运动控制方法以及相应的计算机程序产品。
背景技术
随着经济快速增长、人力成本逐渐上升,移动机器人越来越广泛地应用于各种工业和家庭环境中。例如,自动引导车(AGV)、自主移动机器人(AMR)、叉车等移动机器人是现代物流系统的关键设备之一。移动机器人能够根据路径规划和作业要求运动并停靠到目标地点,以完成物料搬运输送等任务。路径规划是移动机器人的运动控制中的关键。
在移动机器人工作过程中,可能需要其以特定的方向到达特定的位置。然而,在现有的轨迹规划算法中,往往无法准确地实现这一点,或者必须通过预先停止移动机器人或预先调整移动机器人的方向才能实现。
特别是在移动机器人需要停泊对接的工作场景中,例如在移动机器人需要与充电桩对接、与产线对接或与货架对接的情况下,对接任务往往要求移动机器人以特定的位姿停泊。已知的停泊路径规划方法存在曲率突变、位姿不准确、计算复杂、对路径起点的位姿有特定要求等问题。例如,已知一种采用Dubins曲线来进行路径规划的停泊路径规划算法,其中,规划的路径由三段组成:一段弧、一段直线和另一段弧,或者是三段方向交替的弧。由此规划的路径曲率不一定连续,不利于移动轮机器人的准确对接。
现有技术在对于移动机器人的路径规划和运动控制方面仍然存在诸多不足。
发明内容
本发明的目的在于提供一种改进的用于移动机器人的路径规划方法和相应的运动控制方法,以克服现有技术的至少一个不足。
根据本发明的第一方面,提供了一种用于移动机器人的路径规划方法,其中,所述路径规划方法包括以下步骤:
S11:获取移动机器人在起点A处的起点位姿和起点曲率τ0以及在终点B处的终点位姿和终点曲率τ1
S12:确定点C1和点C3,使得向量
Figure BDA0003443312510000021
的方向与移动机器人在起点A处的方向相同,向量/>
Figure BDA0003443312510000022
的方向与移动机器人在终点B处的方向相同;
S13:在线段C1C3上确定点C2
S14:确定以起点A为起始点、点C2为终止点的第一路径,并且确定以点C2为起始点、终点B为终止点的第二路径,其中,第一路径和第二路径均为满足下述约束的三阶贝塞尔曲线:
根据第一路径,移动机器人在起点A处满足起点位姿和起点曲率τ0
根据第二路径,移动机器人在终点B处满足终点位姿和终点曲率τ1,以及
根据第一路径和第二路径,移动机器人在点C2处的线速度方向与向量
Figure BDA0003443312510000023
相同并且曲率为0;以及
S15:将第一路径与第二路径拼接而成的路径作为用于移动机器人的规划路径或规划路径的一部分。
在一个示例性实施例中,在步骤S12中,以下述方式确定点C1和点C3:确定点M,使得向量
Figure BDA0003443312510000024
的方向与移动机器人在起点A处的方向相同,并且向量/>
Figure BDA0003443312510000025
的方向与移动机器人在终点B处的方向相同;以及在线段AM上确定点C1,在线段MB上确定点C3
在一个示例性实施例中,在步骤S13中,在线段C1C3上选择能够使第一路径和第二路径的曲率的最大绝对值最小的点作为点C2
在一个示例性实施例中,在步骤S13中,选择线段C1C3的中点作为点C2
在一个示例性实施例中,在步骤S12和S13中,以使第一路径和第二路径的曲率的最大绝对值最小的方式,确定点C1、点C3和点C2
在一个示例性实施例中,第一路径为由下式表示的曲线:
Figure BDA0003443312510000031
其中,
Figure BDA0003443312510000032
依次表示贝塞尔曲线的四个控制点的坐标并且通过以下方式来确定:
Figure BDA0003443312510000033
为起点A的坐标,/>
Figure BDA0003443312510000034
为点C2的坐标,
向量
Figure BDA0003443312510000035
的方向与移动机器人在起点A处的方向相同,
向量
Figure BDA0003443312510000036
的方向与向量/>
Figure BDA0003443312510000037
的方向相同,
将s=0代入
Figure BDA0003443312510000038
中,其中,P′1x(s)、P′1y(s)、P″p1x(s)、P″p1y(s)、分别是/>
Figure BDA0003443312510000039
的一阶导横、纵坐标和二阶导横、纵坐标,以及
将s=1代入
Figure BDA00034433125100000310
中;
和/或,
第二路径为由下式表示的曲线:
Figure BDA00034433125100000311
其中,
Figure BDA00034433125100000312
依次表示贝塞尔曲线的四个控制点的坐标并且通过以下方式来确定:
Figure BDA00034433125100000313
为点C2的坐标,/>
Figure BDA00034433125100000314
为终点B的坐标;
向量
Figure BDA00034433125100000315
的方向与向量/>
Figure BDA00034433125100000316
的方向相同;
向量
Figure BDA00034433125100000317
的方向与移动机器人在终点B处的方向相同;
将s=0代入
Figure BDA00034433125100000318
中,其中,P′p2x(s)、P′p2y(s)、P″p2x(s)、P″p2y(s)、分别是/>
Figure BDA00034433125100000319
的一阶导横、纵坐标和二阶导横、纵坐标;以及
将s=1代入
Figure BDA00034433125100000320
中。
在一个示例性实施例中,所述规划路径为用于使移动机器人运动至目标停泊点T并以期望的停泊位姿停泊在目标停泊点T的停泊规划路径,其中,起点A为所述停泊规划路径的起始点,终点位姿和终点曲率τ1根据所述期望的停泊位姿来确定。
在一个示例性实施例中,终点B为所述停泊规划路径的终止点,终点位姿被确定为与所述期望的停泊位姿相同,终点曲率τ1=0。
在一个示例性实施例中,终点B为不同于所述目标停泊点T的点,其中:
移动机器人在终点B处的方向与移动机器人在目标停泊点T处的方向相同;
移动机器人在终点B处的方向与向量
Figure BDA0003443312510000041
的方向相同;
在步骤S15中,将第一路径、第二路径与线段BT拼接而成的路径作为用于使移动机器人运动至目标停泊点T的停泊规划路径。
在一个示例性实施例中,移动机器人为差速机器人。
根据本发明的第二方面,提供了一种用于移动机器人的运动控制方法,其中,所述运动控制方法包括以下步骤:
S21:获取用于移动机器人的全局路径;
S22:在所述全局路径上选取第一点和与第一点相比更靠近全局路径的终止点的第二点,以第一点作为起点A、第二点作为终点B,执行根据本发明的路径规划方法,以获得用于移动机器人的规划路径;
S23:将全局路径中从第一点到第二点的区段替换为所述规划路径;以及
S24:控制移动机器人按照替换后的全局路径运动。
在一个示例性实施例中,在所述规划路径为用于使移动机器人运动至目标停泊点T并以期望的停泊位姿停泊在目标停泊点T的停泊规划路径的情况下,在所述全局路径上确定位于与目标停泊点T对应的预定的停泊区域内的第一点作为起点A,所述预定的停泊区域是针对目标停泊点T的位置预先划定的、覆盖目标停泊点T的位置的区域。
在一个示例性实施例中,移动机器人在起点A处的位姿和/或曲率相应地与移动机器人在全局路径上的第一点处的位姿和/或曲率相同。
根据本发明的第三方面,提供了一种用于移动机器人的运动控制方法,其中,所述运动控制方法包括以下步骤:
S31:获取用于移动机器人的全局路径,并控制移动机器人按照所述全局路径运动;
S32:以移动机器人的当前位置作为起点A,在全局路径上确定与所述当前位置相比更靠近全局路径的终止点的第三点作为终点B,执行根据本发明的路径规划方法,以获得用于移动机器人的规划路径;
S33:将全局路径中的从移动机器人的当前位置到第三点的区段替换为所述规划路径;以及
S34:控制移动机器人按照替换后的全局路径运动。
在一个示例性实施例中,在所述规划路径为用于使移动机器人运动至目标停泊点T并以期望的停泊位姿停泊在目标停泊点T的停泊规划路径的情况下,在移动机器人运动至与目标停泊点T对应的预定的停泊区域内之后开始执行步骤S32,所述预定的停泊区域是针对目标停泊点T的位置预先划定的、覆盖目标停泊点T的位置的区域。
在一个示例性实施例中,移动机器人在起点A处的位姿和/或曲率相应地与移动机器人在当前位置处的位姿和/或曲率相同。
根据本发明的第四方面,提供了一种计算机程序产品,其包括计算器程序指令,其中,当所述计算机程序指令被一个或多于一个处理器执行时,所述处理器够执行根据本发明的路径规划方法或根据本发明的运动控制方法。
本发明的积极效果在于:由第一路径和第二路径拼接而成的路径有利于使移动机器人以特定的方向到达特定的位置而对规划路径的起点没有特殊的位姿要求,而且较为平滑,并且具有连续的曲率。这使得生成的规划轨迹对于移动机器人的运动和对接而言特别有利。另外,对第一路径和第二路径的上述约束,不仅有利于获得平滑且曲率连续的路径,还有利于以简单的方式确定第一路径和第二路径,而无需复杂的计算。
附图说明
下面,通过参看附图更详细地描述本发明,可以更好地理解本发明的原理、特点和优点。附图包括:
图1示意性地示出了在根据本发明的一个示例性实施例中利用路径规划方法生成用于移动机器人的规划路径;
图2示意性地示出了根据本发明的一个示例性实施例的用于移动机器人的路径规划方法的流程图;
图3示意性地示出了在根据本发明的一个示例性实施例中利用路径规划方法生成用于移动机器人的规划路径;
图4A和图4B示意性地示出了利用根据本发明的一个示例性实施例的路径规划方法生成的规划路径及其曲率;
图5A和图5B示意性地示出了利用根据本发明的一个示例性实施例的路径规划方法生成的规划路径及其曲率;
图6示意性地示出了根据本发明的一个示例性实施例的用于移动机器人的运动控制方法的流程图;
图7示意性地示出了利用根据本发明的一个示例性实施例的运动控制方法获取替换后的全局路径;以及
图8示意性地示出了根据本发明的一个示例性实施例的用于移动机器人的运动控制方法的流程图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案以及有益的技术效果更加清楚明白,以下将结合附图以及多个示例性实施例对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用于解释本发明,而不是用于限定本发明的保护范围。
本发明适用于移动机器人,其可以是任何能够自主地进行空间移动的机器人,例如AGV、AMR等。所述移动机器人可用于执行各种任务,例如用作仓储机器人、清扫型机器人、家庭陪护机器人、迎宾机器人等。
应理解,在本文中,表述“第一”、“第二”等仅用于描述性目的,而不应理解为指示或暗示相对重要性,也不应理解为隐含指明所指示的技术特征的数量。限定有“第一”、“第二”的特征可以明示或者隐含地表示包括至少一个该特征。
下面结合图1和图2说明根据本发明的一个示例性实施例的用于移动机器人1的路径规划方法。图1示意性地示出了在根据本发明的一个示例性实施例中利用路径规划方法生成用于移动机器人1的规划路径。
在该实施例中,移动机器人1例如为差速机器人,即移动机器人1包括差速轮运动系统。替代地,移动机器人1也可以是其它类型的机器人,例如单舵轮机器人或双舵轮机器人等。相应地,移动机器人1例如可包括双舵轮运动系统。
移动机器人1例如包括用于与其它设备、例如调度控制系统进行通信的通信装置。移动机器人1还可包括传感器,例如摄像装置、雷达等。移动机器人1可通过所述传感器获取所需的信息,例如移动机器人1的当前位置或其周围环境等。
移动机器人1例如还包括控制器。控制器用于移动机器人1的部件,所述部件例如包括差速轮运动系统、传感器、通信装置等。控制器还可以通过通信线路接收相应部件、例如传感器的工作状态或检测数据,用以监测或控制移动机器人1的操作。
在移动机器人1的工作过程中,可能需要以特定的位姿停泊,即以特定的方向(姿态)停泊在特定的目标停泊点。例如,移动机器人1可能需要以期望的停泊位姿停在某个位置,以等待操作人员的操作或以便与其他设备对接等。图1示例性地示出了移动机器人1需要运动至邻近充电桩2的目标停泊点,以便与充电桩2对接从而充电。
为了使移动机器人1以特定的位姿到达特定的位置,可执行根据用于移动机器人1的路径规划方法。图2示意性地示出了根据本发明的一个示例性实施例的用于移动机器人1的路径规划方法的流程图。
如图2所示,所述路径规划方法可包括以下步骤:
S11:获取移动机器人1在起点A处的起点位姿和起点曲率τ0以及在终点B处的终点位姿和终点曲率τ1
S12:确定点C1和点C3,使得向量
Figure BDA0003443312510000071
的方向与移动机器人1在起点A处的方向相同,向量/>
Figure BDA0003443312510000072
的方向与移动机器人1在终点B处的方向相同;
S13:在线段C1C3上确定点C2
S14:确定以起点A为起始点、点C2为终止点的第一路径3,并且确定以点C2为起始点、终点B为终止点的第二路径4,其中,第一路径3和第二路径4均为满足下述约束的三阶贝塞尔曲线:
根据第一路径3,移动机器人1在起点A处满足起点位姿和起点曲率τ0
根据第二路径4,移动机器人1在终点B处满足终点位姿和终点曲率τ1,以及
根据第一路径3和第二路径4,移动机器人1在点C2处的线速度方向与向量
Figure BDA0003443312510000081
相同并且曲率为0;以及
S15:将第一路径3与第二路径4拼接而成的路径作为用于移动机器人1的规划路径或规划路径的一部分。
由此生成的规划路径有利于使移动机器人1以特定的方向到达特定的位置,而对规划路径的起点没有特殊的位姿要求。即,可以根据需要以任意方向和任意曲率为起点。特别是,利用两段三阶贝塞尔曲线拼接而成的路径能够使停泊规划路径更加平滑。对第一路径3和第二路径4的上述约束有利于使生成的规划路径曲率平滑且具有连续的曲率。这使得移动机器人1的速度和加速度的变化更平缓。对于差速机器人而言,这种具有连续曲率的停泊规划路径能够特别有利地适配差速机器人的运动特性。对第一路径3和第二路径4的上述约束,还有利于以简单的方式确定第一路径3和第二路径4,而无需复杂的计算。
应理解,移动机器人1在某一点处的位姿包括移动机器人1的位置和方向。在直角坐标系中,移动机器人1的位姿例如可表示为(x,y,θ),其中,x、y分别表示移动机器人1的横、纵坐标,θ表示移动机器人1的方向。移动机器人1在此可正向移动,也可以以倒车的方式移动,因此移动机器人1在起点A处的方向可相应地表示移动机器人1的“车头”方向或“车尾”方向。对于实施为差速机器人的移动机器人1而言,移动机器人1在起点A处的方向即移动机器人1在起点A处的运动方向。
在图1所示的实施例中,所述规划路径为用于使移动机器人1运动至目标停泊点T并以期望的停泊位姿停泊在目标停泊点T的停泊规划路径,其中,起点A为所述停泊规划路径的起始点,终点位姿和终点曲率τ1根据所述期望的停泊位姿来确定。相应地,路径规划方法可看作是用于移动机器人1的停泊路径规划方法,所述停泊路径规划方法旨在规划用于使移动机器人1以特定的方向停泊在特定的目标停泊点的移动路径。期望的停泊位姿可由移动机器人1的停泊任务来确定。例如,对于需要与充电桩2对接的移动机器人1而言,期望的停泊位姿可根据充电桩2的位置和方向以及充电桩2要求的对接方向来确定。
相应地,获得的停泊规划路径能够使移动机器人1以任意方向和任意曲率开始停泊规划路径,而无需使移动机器人1在停泊规划路径开始处先停止,也无需使移动机器人1在停泊规划路径开始处调整至特定的方向。并且,有利于使停泊规划路径具有连续的曲率。这使得移动机器人1的速度和加速度的变化更平缓。对于差速机器人而言,这种具有连续曲率的停泊规划路径是特别有利的。另外,利用两段三阶贝塞尔曲线拼接而成的路径将使得停泊规划路径更加平滑。
在此,特别是将第一路径3与第二路径4拼接而成的路径作为用于移动机器人1的停泊规划路径。换言之,起点A为停泊规划路径的起始点,并且终点B为用于移动机器人1的停泊规划路径的终止点,即目标停泊点T。在终点B为停泊规划路径的终止点的情况下,终点位姿被确定为与所述期望的停泊位姿相同,终点曲率τ1=0。
在步骤S11中,例如可通过通信装置从其它设备获取移动机器人1在起点A处的起点位姿和起点曲率τ0以及在路径的终点B处的终点位姿和终点曲率τ1。例如,也可通过传感器获取移动机器人1在起点A处的起点位姿和起点曲率τ0以及在路径的终点B处的终点位姿和终点曲率τ1
在该实施例中,例如以下述方式在步骤S12中确定点C1和点C3:首先,确定点M,使得向量
Figure BDA0003443312510000091
的方向与移动机器人1在起点A处的方向相同,并且向量/>
Figure BDA0003443312510000092
的方向与移动机器人1在终点B处的方向相同;然后,在线段AM上确定点C1,在线段MB上确定点C3。由此,至少可确保第一路径3和第二路径4在三角形AMB的范围内,从而有利于生成较平滑的停泊规划路径。
可选地,选择线段AM的中点作为点C1;和/或选择线段MB的中点作为点C3。在点C1和点C3分别为线段AM和线段MB的中点的情况下,可进一步确保第一路径3和第二路径4在三角形AMB的下部部分、即梯形AC1C3B内。
在步骤S13中,例如可选择线段C1C3的中点作为点C2。由此,能够以简单的方式生成曲率较小的第一路径3和第二路径4。
在确定点C2之后,可在步骤S14中确定第一路径3和第二路径4。
例如,第一路径3可由下式表示:
Figure BDA0003443312510000101
其中,
Figure BDA0003443312510000102
依次表示贝塞尔曲线的四个控制点的坐标,其可通过以下方式来确定:
Figure BDA0003443312510000103
为起点A的坐标,/>
Figure BDA0003443312510000104
为点C2的坐标;
向量
Figure BDA0003443312510000105
的方向与移动机器人1在起点A处的方向相同;
向量
Figure BDA0003443312510000106
的方向与向量/>
Figure BDA0003443312510000107
的方向相同;
将s=0代入
Figure BDA0003443312510000108
中,其中,P′p1x(s)、P′p1y(s)、P″p1x(s)、P″p1y(s)、分别是/>
Figure BDA0003443312510000109
的一阶导横、纵坐标和二阶导横、纵坐标;以及
将s=1代入
Figure BDA00034433125100001010
中。
类似地,第二路径4可由下式表示:
Figure BDA00034433125100001011
其中,
Figure BDA00034433125100001012
依次表示贝塞尔曲线的四个控制点的坐标,其可通过以下方式来确定:
Figure BDA00034433125100001013
为点C2的坐标,/>
Figure BDA00034433125100001014
为终点B的坐标;
向量
Figure BDA00034433125100001015
的方向与向量/>
Figure BDA00034433125100001016
的方向相同;
向量
Figure BDA00034433125100001017
的方向与移动机器人1在终点B处的方向相同;
将s=0代入
Figure BDA00034433125100001018
中,其中,P′p2x(s)、P′p2y(s)、P″p2x(s)、P″p2y(s)、分别是/>
Figure BDA00034433125100001019
的一阶导横、纵坐标和二阶导横、纵坐标;以及
将s=1代入
Figure BDA0003443312510000111
中。
如上所述,在根据本发明的路径规划方法中,在确定起点A、终点B和点C2之后,即可根据移动机器人1在起点A、终点B和点C2的位姿和曲率确定作为三阶贝塞尔曲线的第一路径3和第二路径4的控制点。该过程无需复杂的计算。
然后,可将第一路径3与第二路径4拼接而成的路径作为用于使移动机器人1运动至目标停泊点的停泊规划路径或停泊规划路径的一部分。显然,第一路径3和第二路径4本身具有连续的曲率,并且第一路径3和第二路径4拼接而成的路径在拼接点C2处也具有连续的曲率。
图3示意性地示出了在根据本发明的一个示例性实施例中利用路径规划方法生成规划路径。
如图3所示,移动机器人1需要运动至邻近充电桩2的目标停泊点T,以便与充电桩2对接从而充电。在路径规划方法中,终点B可不与停泊规划路径的目标停泊点T重合。在这种情况下,可将移动机器人1在终点B处的方向设定为与向量
Figure BDA0003443312510000112
的方向相同。另外,可使移动机器人1在终点B处的方向与移动机器人在目标停泊点T处的方向相同。然后,与上文参照图1和图2所描述的过程类似地,生成第一路径3和第二路径4。不同之处在于,在步骤S15中,将第一路径3、第二路径4与线段BT拼接而成的路径作为用于使移动机器人1运动至目标停泊点的停泊规划路径。
图4A和图4B示意性地示出了利用根据本发明的一个示例性实施例的路径规划方法生成的规划路径及其曲率。
如图4A所示,规划路径由第一路径3和第二路径4拼接而成。根据移动机器人1在起点A和终点B处的位姿可确定点C1和点C3。可选地,点C1和点C3可设定为分别与起点A和终点B间隔预定的距离。例如,点C1与起点A间隔预定的第一距离、例如0.4m,点C3与终点B间隔预定的第二距离、例如0.7m。
在确定点C1和点C3之后,可在线段C1C3上确定点C2。在图4A中,点C2被确定为线段C1C3上的第一个四等分点。因此,
Figure BDA0003443312510000113
如上文所述,在确定点C2之后,可进一步确定第一路径3和第二路径4。图4B示出了由第一路径3和第二路径4拼接而成的规划路径的曲率。如图4B所示,由此生成的规划路径的曲率最大绝对值将超过10。
图5A和图5B示意性地示出了利用根据本发明的一个示例性实施例的路径规划方法生成的规划路径及其曲率。该实施例与图4A和图4B所示的实施例的不同之处在于,点C2在线段C1C3上的位置不同。
如图5A所示,点C2被确定为线段C1C3的中点。因此,
Figure BDA0003443312510000121
Figure BDA0003443312510000122
图5B示出了由图5A中示出的第一路径3和第二路径4拼接而成的规划路径的曲率。如图5B所示,由此生成的规划路径的曲率最大绝对值将小于10。
可以看出,点C2在线段C1C3上的位置不同将使得生成的第一路径3和第二路径4的曲率不同。将线段C1C3的中点确定为点C2有利于获得曲率的最大绝对值较小的第一路径3和第二路径4。
在根据本发明的一个示例性实施例中,可在步骤S13中,在线段C1 C3上选择能够使第一路径3和第二路径4的曲率的最大绝对值最小的点作为点C2。例如,可将线段C1C3等分为n份(n为大于2的整数),并对比在将各等分点作为点C2的情况下所生成的第一路径3和第二路径4的曲率的最大绝对值,然后将能够获得最小的第一路径3和第二路径4的曲率的最大绝对值的点C2作为最终的点C2。或者,也可以以预定的分辨率选取线段C1C3上的点,例如在线段C1C3上每间隔0.1m选取一个点。然后对比在将这些点作为点C2的情况下所生成的第一路径3和第二路径4的曲率的最大绝对值,并将能够获得最小的第一路径3和第二路径4的曲率的最大绝对值的点C2作为最终的点C2。本领域技术人员应理解,也可以以其他方式来实现在线段C1C3上选择能够使第一路径3和第二路径4的曲率的最大绝对值最小的点作为点C2
在根据本发明的一个示例性实施例中,可在步骤S12和S13中,以使第一路径3和第二路径4的曲率的最大绝对值最小的方式,确定点C1、点C3和点C2。与上文关于点C2的描述类似地,本领域技术人员应理解,可以以多种方式来实现以使第一路径3和第二路径4的曲率的最大绝对值最小的方式确定点C1、点C3和点C2。例如,以第一路径3和第二路径4的曲率的最大绝对值最小为优化目标,利用优化算法确定点C1、点C3和点C2的位置。
图6示意性地示出了根据本发明的一个示例性实施例的用于移动机器人1的运动控制方法的流程图。图7示意性地示出了利用根据本发明的一个示例性实施例的运动控制方法获取替换后的全局路径5。所述运动控制方法包括以下步骤:
S21:获取用于移动机器人1的全局路径5(在图7中仅部分地示出);
S22:在所述全局路径5上选取第一点和与第一点相比更靠近全局路径5的终止点的第二点,以第一点作为起点A、第二点作为终点B,执行根据本发明的路径规划方法,以获得用于移动机器人1的规划路径;
S23:将全局路径5中从第一点到第二点的区段(以点划线表示)替换为所述规划路径;以及
S24:控制移动机器人1按照替换后的全局路径5运动。
原全局路径5可利用任何适用的已知方法来获取,例如,可通过A星算法来规划。在规划原全局路径5时,可能需要考虑多方面的因素,例如避障、时间最短等。由此获得的全局路径5可能无法满足目标停泊点的位姿要求。例如按照原全局路径5运动的移动机器人1可能无法以准确的方向停泊在目标停泊点,从而导致移动机器人1无法准确地与充电桩2对接,或者导致移动机器人1在达到目标停泊点之后必须进行额外的位姿调整。利用根据本发明的运动控制方法,有利于移动机器人1准确地以特定的位姿停泊。另外,上文中针对路径规划方法所描述的特征和优势,也可相应地适用于运动控制方法。
运动控制方法例如可借助于移动机器人1的控制器来执行。在步骤S21中,例如可借助于控制器来规划用于移动机器人1的原全局路径5。可选地,在步骤S21中,也可借助于通信装置从其它设备、例如调度控制系统获取用于移动机器人1的全局路径5。
可选地,在所述规划路径为用于使移动机器人1运动至目标停泊点T并以期望的停泊位姿停泊在目标停泊点T的停泊规划路径的情况下,在所述全局路径5上确定位于与目标停泊点T对应的预定的停泊区域内的第一点作为起点A,所述预定的停泊区域是针对目标停泊点T的位置预先划定的、覆盖目标停泊点T的位置的区域。例如,可为在仓库工作的移动机器人1设置专用的充电区域6,至少一个充电桩2布置在所述充电区域6中,需要充电的移动机器人1可运动至充电区域6中的特定充电位置以与充电桩2对接,从而充电。通常,充电区域6是平坦的无障碍区域,即,充电区域6中不会布置与充电无关的设备,使得移动机器人1能够在充电区域6中较为自由地运动,而不会遇到障碍。在此,可针对用于移动机器人1的充电位置预先划定停泊区域,所述停泊区域例如设定为整个充电区域6。预先划定停泊区域并在预定的停泊区域内选取起点A可使移动机器人1在进入停泊区域后沿着较平滑的停泊规划路径运动。当移动机器人1需要充电,并进入停泊区域后,即可开始依照停泊规划路径运动。
移动机器人1在起点A处的位姿和/或曲率可相应地与移动机器人1在全局路径5上的第一点处的位姿和/或曲率相同。由此,能够使停泊规划路径平滑地嵌入原全局路径5,使得移动机器人1无须在停泊规划路径开始处先停止,也无须在停泊规划路径开始处调整至特定的方向。
图8示意性地示出了根据本发明的一个示例性实施例的用于移动机器人1的运动控制方法的流程图。所述运动控制方法包括以下步骤:
S31:获取用于移动机器人1的全局路径5,并控制移动机器人1按照所述全局路径5运动;
S32:以移动机器人1的当前位置作为起点A,在全局路径5上确定与所述当前位置相比更靠近全局路径5的终止点的第三点作为终点B,执行根据本发明的路径规划方法,以获得用于移动机器人1的规划路径;
S33:将全局路径5中的从移动机器人1的当前位置到第三点的区段替换为所述规划路径;以及
S34:控制移动机器人1按照替换后的全局路径5运动。
可选地,在所述规划路径为用于使移动机器人1运动至目标停泊点T并以期望的停泊位姿停泊在目标停泊点T的停泊规划路径的情况下,在移动机器人1运动至与目标停泊点T对应的预定的停泊区域内之后开始执行步骤S32,所述预定的停泊区域是针对目标停泊点T的位置预先划定的、覆盖目标停泊点T的位置的区域。
移动机器人1在起点A处的位姿和/或曲率可相应地与移动机器人1在当前位置处的位姿和/或曲率相同。
根据本发明的运动控制方法与根据本发明的路径规划方法具有对应的特征和相似的原理。上文中针对路径规划方法所描述的特征和优势,也可相应地适用于运动控制方法。
另外,本发明还涉及一种计算机程序产品,其包括计算器程序指令,当所述计算机程序指令被一个或多于一个处理器执行时,所述处理器能够执行根据本发明的路径规划方法或运动控制方法。
在本发明中,计算机程序产品可存储在计算机可读存储介质中。计算机可读存储介质例如可包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡,安全数字卡,闪存卡、至少一个磁盘存储器件、闪存器件、或其它易失性固态存储器件。处理器可以是中央处理单元,还可以是其它通用处理器、数字信号处理器、专用集成电路、现成可编程门阵列或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者也可以是任何常规的处理器等。
尽管这里详细描述了本发明的特定实施方式,但它们仅仅是为了解释的目的而给出的,而不应认为它们对本发明的范围构成限制。在不脱离本发明精神和范围的前提下,各种替换、变更和改造可被构想出来。

Claims (17)

1.一种用于移动机器人(1)的路径规划方法,其中,所述路径规划方法包括以下步骤:
S11:获取移动机器人(1)在起点A处的起点位姿和起点曲率τ0以及在终点B处的终点位姿和终点曲率τ1
S12:确定点C1和点C3,使得向量
Figure FDA0003443312500000011
的方向与移动机器人(1)在起点A处的方向相同,向量/>
Figure FDA0003443312500000012
的方向与移动机器人(1)在终点B处的方向相同;
S13:在线段C1C3上确定点C2
S14:确定以起点A为起始点、点C2为终止点的第一路径(3),并且确定以点C2为起始点、终点B为终止点的第二路径(4),其中,第一路径(3)和第二路径(4)均为满足下述约束的三阶贝塞尔曲线:
根据第一路径(3),移动机器人(1)在起点A处满足起点位姿和起点曲率τ0
根据第二路径(4),移动机器人(1)在终点B处满足终点位姿和终点曲率τ1,以及
根据第一路径(3)和第二路径(4),移动机器人(1)在点C2处的线速度方向与向量
Figure FDA0003443312500000013
相同并且曲率为0;以及
S15:将第一路径(3)与第二路径(4)拼接而成的路径作为用于移动机器人(1)的规划路径或规划路径的一部分。
2.根据权利要求1所述的路径规划方法,其中,
在步骤S12中,以下述方式确定点C1和点C3
确定点M,使得向量
Figure FDA0003443312500000014
的方向与移动机器人(1)在起点A处的方向相同,并且向量/>
Figure FDA0003443312500000015
的方向与移动机器人(1)在终点B处的方向相同;以及
在线段AM上确定点C1,在线段MB上确定点C3
3.根据权利要求1或2所述的路径规划方法,其中,
在步骤S13中,在线段C1C3上选择能够使第一路径(3)和第二路径(4)的曲率的最大绝对值最小的点作为点C2
4.根据权利要求1或2所述的路径规划方法,其中,
在步骤S13中,选择线段C1C3的中点作为点C2
5.根据权利要求1所述的路径规划方法,其中,
在步骤S12和S13中,以使第一路径(3)和第二路径(4)的曲率的最大绝对值最小的方式,确定点C1、点C3和点C2
6.根据权利要求1-5中任一项所述的路径规划方法,其中,
第一路径(3)为由下式表示的曲线:
Figure FDA0003443312500000021
其中,
Figure FDA0003443312500000022
依次表示贝塞尔曲线的四个控制点的坐标并且通过以下方式来确定:
Figure FDA0003443312500000023
为起点A的坐标,/>
Figure FDA0003443312500000024
为点C2的坐标,
向量
Figure FDA0003443312500000025
的方向与移动机器人(1)在起点A处的方向相同,
向量
Figure FDA0003443312500000026
的方向与向量/>
Figure FDA0003443312500000027
的方向相同,
将s=0代入
Figure FDA0003443312500000028
中,其中,P′p1x(s)、P′p1y(s)、P″p1x(s)、P″p1y(s)、分别是/>
Figure FDA0003443312500000029
的一阶导横、纵坐标和二阶导横、纵坐标,以及
将s=1代入
Figure FDA00034433125000000210
中;
和/或,
第二路径(4)为由下式表示的曲线:
Figure FDA00034433125000000211
其中,
Figure FDA0003443312500000031
依次表示贝塞尔曲线的四个控制点的坐标并且通过以下方式来确定:
Figure FDA0003443312500000032
为点C2的坐标,/>
Figure FDA0003443312500000033
为终点B的坐标;
向量
Figure FDA0003443312500000034
的方向与向量/>
Figure FDA0003443312500000035
的方向相同;
向量
Figure FDA0003443312500000036
的方向与移动机器人(1)在终点B处的方向相同;
将s=0代入
Figure FDA0003443312500000037
中,其中,P′p2x(s)、P′p2y(s)、P″p2x(s)、P″p2y(s)、分别是/>
Figure FDA0003443312500000038
的一阶导横、纵坐标和二阶导横、纵坐标;以及
将s=1代入
Figure FDA0003443312500000039
中。
7.根据权利要求1-6中任一项所述的路径规划方法,其中,
所述规划路径为用于使移动机器人(1)运动至目标停泊点T并以期望的停泊位姿停泊在目标停泊点T的停泊规划路径,其中,起点A为所述停泊规划路径的起始点,终点位姿和终点曲率τ1根据所述期望的停泊位姿来确定。
8.根据权利要求7所述的路径规划方法,其中,
终点B为所述停泊规划路径的终止点,终点位姿被确定为与所述期望的停泊位姿相同,终点曲率τ1=0。
9.根据权利要求7所述的路径规划方法,其中,
终点B为不同于所述目标停泊点T的点,其中,
移动机器人(1)在终点B处的方向与移动机器人(1)在目标停泊点T处的方向相同;
移动机器人(1)在终点B处的方向与向量
Figure FDA00034433125000000310
的方向相同;
在步骤S15中,将第一路径(3)、第二路径(4)与线段BT拼接而成的路径作为用于使移动机器人(1)运动至目标停泊点T的停泊规划路径。
10.根据权利要求1-9中任一项所述的路径规划方法,其中,
移动机器人(1)为差速机器人。
11.一种用于移动机器人(1)的运动控制方法,其中,所述运动控制方法包括以下步骤:
S21:获取用于移动机器人(1)的全局路径(5);
S22:在所述全局路径(5)上选取第一点和与第一点相比更靠近全局路径(5)的终止点的第二点,以第一点作为起点A、第二点作为终点B,执行根据权利要求1-10中任一项所述的路径规划方法,以获得用于移动机器人(1)的规划路径;
S23:将全局路径(5)中从第一点到第二点的区段替换为所述规划路径;以及
S24:控制移动机器人(1)按照替换后的全局路径(5)运动。
12.根据权利要求11所述的运动控制方法,其中,
在所述规划路径为用于使移动机器人(1)运动至目标停泊点T并以期望的停泊位姿停泊在目标停泊点T的停泊规划路径的情况下,在所述全局路径(5)上确定位于与目标停泊点T对应的预定的停泊区域内的第一点作为起点A,所述预定的停泊区域是针对目标停泊点T的位置预先划定的、覆盖目标停泊点T的位置的区域。
13.根据权利要求11或12所述的运动控制方法,其中,
移动机器人(1)在起点A处的位姿和/或曲率相应地与移动机器人(1)在全局路径(5)上的第一点处的位姿和/或曲率相同。
14.一种用于移动机器人(1)的运动控制方法,其中,所述运动控制方法包括以下步骤:
S31:获取用于移动机器人(1)的全局路径(5),并控制移动机器人(1)按照所述全局路径(5)运动;
S32:以移动机器人(1)的当前位置作为起点A,在全局路径(5)上确定与所述当前位置相比更靠近全局路径(5)的终止点的第三点作为终点B,执行根据权利要求1-10中任一项所述的路径规划方法,以获得用于移动机器人(1)的规划路径;
S33:将全局路径(5)中的从移动机器人(1)的当前位置到第三点的区段替换为所述规划路径;以及
S34:控制移动机器人(1)按照替换后的全局路径(5)运动。
15.根据权利要求14所述的运动控制方法,其中,
在所述规划路径为用于使移动机器人(1)运动至目标停泊点T并以期望的停泊位姿停泊在目标停泊点T的停泊规划路径的情况下,在移动机器人(1)运动至与目标停泊点T对应的预定的停泊区域内之后开始执行步骤S32,所述预定的停泊区域是针对目标停泊点T的位置预先划定的、覆盖目标停泊点T的位置的区域。
16.根据权利要求14或15所述的运动控制方法,其中,
移动机器人(1)在起点A处的位姿和/或曲率相应地与移动机器人(1)在当前位置处的位姿和/或曲率相同。
17.一种计算机程序产品,其包括计算器程序指令,其中,当所述计算机程序指令被一个或多于一个处理器执行时,所述处理器够执行根据权利要求1-10中任一项所述的路径规划方法或根据权利要求11-26中任一项所述的运动控制方法。
CN202111681531.8A 2021-12-29 2021-12-29 路径规划方法、运动控制方法及计算机程序产品 Pending CN116414116A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111681531.8A CN116414116A (zh) 2021-12-29 2021-12-29 路径规划方法、运动控制方法及计算机程序产品
PCT/CN2022/123040 WO2023124339A1 (zh) 2021-12-29 2022-09-30 路径规划方法、运动控制方法及计算机程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111681531.8A CN116414116A (zh) 2021-12-29 2021-12-29 路径规划方法、运动控制方法及计算机程序产品

Publications (1)

Publication Number Publication Date
CN116414116A true CN116414116A (zh) 2023-07-11

Family

ID=86997446

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111681531.8A Pending CN116414116A (zh) 2021-12-29 2021-12-29 路径规划方法、运动控制方法及计算机程序产品

Country Status (2)

Country Link
CN (1) CN116414116A (zh)
WO (1) WO2023124339A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116701821B (zh) * 2023-08-03 2024-03-19 季华实验室 机器人速度计算方法、装置、电子设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9746854B2 (en) * 2015-04-24 2017-08-29 Autonomous Solutions, Inc. System and method for controlling a vehicle
CN104965519B (zh) * 2015-06-10 2018-08-10 北京理工大学 一种基于贝塞尔曲线的带落角约束的末制导方法
CN107168305B (zh) * 2017-04-01 2020-03-17 西安交通大学 路口场景下基于Bezier和VFH的无人车轨迹规划方法
CN110865610B (zh) * 2019-10-18 2020-09-08 中国工程物理研究院机械制造工艺研究所 一种基于机床振动抑制的刀具轨迹插值和速度规划方法
CN111796594A (zh) * 2020-06-17 2020-10-20 珠海云洲智能科技有限公司 无人船停泊控制方法、无人船停泊控制装置及无人船
CN112269965B (zh) * 2020-08-10 2024-04-05 中国北方车辆研究所 一种非完整约束条件下的连续曲率路径优化方法

Also Published As

Publication number Publication date
WO2023124339A1 (zh) 2023-07-06

Similar Documents

Publication Publication Date Title
CN106950972B (zh) 一种无人搬运车agv及其路线纠偏方法
Gu et al. Tunable and stable real-time trajectory planning for urban autonomous driving
JP3842312B2 (ja) 自律移動装置の衝突回避方法
US20190079537A1 (en) Automatic guided vehicle
WO2020220604A1 (zh) 一种多agv系统动态障碍物实时避障方法及避障系统
JP4735476B2 (ja) 自律移動装置
KR20090125075A (ko) 반자동 주차 기계
CN109032129B (zh) 路径纠偏方法及装置、路径导引方法、可读介质
Digani et al. Obstacle avoidance for industrial AGVs
KR20140130055A (ko) 무인 운반차, 컴퓨터와 무인 운반차를 가진 시스템, 무인 운반차를 작동하기 위한 방법
WO2023036044A1 (zh) 全局路径规划方法、运动控制方法及计算机程序产品
US20220011780A1 (en) Mobile body and method of controlling mobile body
JP7047659B2 (ja) 無人搬送車の制御装置及び制御方法
KR102206512B1 (ko) 이동로봇의 센서 데이터를 활용한 교차점 패턴 인식모델 생성 방법 및 교차점 패턴 인식 시스템
Behrje et al. An autonomous forklift with 3d time-of-flight camera-based localization and navigation
Franke et al. Versatile autonomous transportation vehicle for highly flexible use in industrial applications
CN116414116A (zh) 路径规划方法、运动控制方法及计算机程序产品
US11614750B2 (en) Self-propelled device, self-propelling method, and recording medium
Thai et al. Obstacle Avoidance Algorithm for Autonomous Mobile Robots in the Indoor Environment
CN108475060B (zh) 位置检测装置、控制装置和移动体
CN112534376B (zh) 控制装置
WO2023279918A1 (zh) 双舵轮式自主移动设备的运动控制方法和系统及程序产品
JP7527950B2 (ja) 制御装置及びプログラム
CN112947487B (zh) 一种自动引导车辆及其曲线路径跟踪方法、控制装置
US20230348247A1 (en) Control device, mobile body, movement control system, control method, and program

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