[go: up one dir, main page]

CN116257042A - Trajectory planning method for mobile robot and computer program product - Google Patents

Trajectory planning method for mobile robot and computer program product Download PDF

Info

Publication number
CN116257042A
CN116257042A CN202111497327.0A CN202111497327A CN116257042A CN 116257042 A CN116257042 A CN 116257042A CN 202111497327 A CN202111497327 A CN 202111497327A CN 116257042 A CN116257042 A CN 116257042A
Authority
CN
China
Prior art keywords
wheel
speed
point
path
trajectory
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
CN202111497327.0A
Other languages
Chinese (zh)
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 CN202111497327.0A priority Critical patent/CN116257042A/en
Priority to PCT/CN2022/123039 priority patent/WO2023103554A1/en
Publication of CN116257042A publication Critical patent/CN116257042A/en
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/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
    • 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
    • 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

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)

Abstract

提出了一种用于移动机器人的轨迹规划方法,其根据确定的路径对移动机器人进行速度规划,以确定包含时间信息的规划轨迹,轨迹规划方法包括:确定移动机器人的至少两个驱动轮中的一个为受约束轮,使得只要受约束轮满足运动学和动力学约束,与受约束轮相配合地运动的其它驱动轮就会满足运动学和动力学约束;基于路径在满足受约束轮的运动学和动力学约束的情况下对受约束轮进行速度规划,以确定受约束轮的速度;以配合所确定的受约束轮的速度的方式,对其它驱动轮进行速度规划。提出了相应的计算机程序产品。通过本发明,提供了一种可供选择的用于移动机器人的轨迹规划方法,其尤其能够可靠地为移动机器人规划出满足运动学和动力学约束的轨迹。

Figure 202111497327

A trajectory planning method for a mobile robot is proposed, which performs speed planning on the mobile robot according to a determined path to determine a planned trajectory containing time information, and the trajectory planning method includes: determining at least two driving wheels of the mobile robot One is a constrained wheel such that as long as the constrained wheel satisfies the kinematic and dynamic constraints, the other driving wheel moving in coordination with the constrained wheel will satisfy the kinematic and dynamic constraints; Under the condition of mechanical and dynamic constraints, the speed planning of the constrained wheel is carried out to determine the speed of the constrained wheel; the speed planning of the other driving wheels is carried out in a manner that matches the determined speed of the constrained wheel. A corresponding computer program product is proposed. Through the present invention, an alternative trajectory planning method for mobile robots is provided, which can especially reliably plan trajectories satisfying kinematics and dynamics constraints for mobile robots.

Figure 202111497327

Description

用于移动机器人的轨迹规划方法及计算机程序产品Trajectory planning method and computer program product for mobile robot

技术领域Technical Field

本发明涉及移动机器人领域、尤其是移动机器人的运动控制领域,具体涉及一种用于移动机器人的轨迹规划方法以及一种计算机程序产品。The present invention relates to the field of mobile robots, in particular to the field of motion control of mobile robots, and specifically to a trajectory planning method for mobile robots and a computer program product.

背景技术Background Art

随着经济快速增长、人力成本逐渐上升,移动机器人越来越广泛地应用于各种工业和家庭环境中。例如,自动引导车(AGV)、自主移动机器人(AMR)、叉车等移动机器人是现代物流系统的关键设备之一。移动机器人能够根据规划好的路径和作业要求运动并停靠到目标地点,以完成物料搬运输送等任务。轨迹规划是移动机器人的运动控制中的关键。With the rapid economic growth and the gradual increase in labor costs, mobile robots are increasingly used in various industrial and domestic environments. For example, mobile robots such as automatic guided vehicles (AGVs), autonomous mobile robots (AMRs), and forklifts are one of the key devices in modern logistics systems. Mobile robots can move and dock at the target location according to the planned path and operation requirements to complete tasks such as material handling and transportation. Trajectory planning is the key to the motion control of mobile robots.

在轨迹规划过程中,需要基于确定的路径为移动机器人进行速度规划。为了确定移动机器人在路径上的速度分布,并且尽可能地获得最优的运动轨迹,例如时间最短的运动轨迹,通常需要求解微分方程组。例如:在现有的算法中,在基于路径规划运动轨迹时,可定义以时间为优化目标的约束优化问题,同时考虑移动机器人的速度约束和加速度约束。对于具有多个驱动轮的移动机器人,还要考虑到各驱动轮之间的运动配合。这既需要占用较大的内存,又需要耗费相当大的计算量。In the process of trajectory planning, it is necessary to plan the speed of the mobile robot based on the determined path. In order to determine the speed distribution of the mobile robot on the path and obtain the optimal motion trajectory as much as possible, such as the motion trajectory with the shortest time, it is usually necessary to solve a set of differential equations. For example, in the existing algorithms, when planning the motion trajectory based on the path, a constrained optimization problem with time as the optimization target can be defined, while considering the speed constraint and acceleration constraint of the mobile robot. For a mobile robot with multiple drive wheels, the motion coordination between the drive wheels must also be considered. This requires both a large amount of memory and a considerable amount of computation.

现有技术在对于移动机器人的路径规划方面仍然存在诸多不足。The existing technology still has many deficiencies in path planning for mobile robots.

发明内容Summary of the invention

本发明的目的在于提供一种改进的用于移动机器人的轨迹规划方法及相应的计算机程序产品,以以克服现有技术的至少一个不足。An object of the present invention is to provide an improved trajectory planning method for a mobile robot and a corresponding computer program product to overcome at least one deficiency of the prior art.

根据本发明的第一方面,提供了一种用于移动机器人的轨迹规划方法,其中,根据确定的路径对移动机器人进行速度规划,以确定使移动机器人能够沿着所述路径运动的包含时间信息的规划轨迹,所述轨迹规划方法包括:确定移动机器人的至少两个驱动轮中的一个为受约束轮,使得只要所述受约束轮满足运动学和动力学约束,与受约束轮相配合地运动的其它驱动轮就会满足运动学和动力学约束;基于所述路径在满足受约束轮的运动学和动力学约束的情况下对受约束轮进行速度规划,以确定受约束轮的速度;以配合所确定的受约束轮的速度的方式,对受约束轮之外的其它驱动轮进行速度规划。According to a first aspect of the present invention, a trajectory planning method for a mobile robot is provided, wherein speed planning is performed on the mobile robot according to a determined path to determine a planned trajectory containing time information that enables the mobile robot to move along the path, and the trajectory planning method comprises: determining that one of at least two driving wheels of the mobile robot is a constrained wheel, so that as long as the constrained wheel satisfies kinematic and dynamic constraints, the other driving wheels that move in coordination with the constrained wheel will satisfy the kinematic and dynamic constraints; based on the path, speed planning is performed on the constrained wheel while satisfying the kinematic and dynamic constraints of the constrained wheel to determine the speed of the constrained wheel; and speed planning is performed on the other driving wheels other than the constrained wheel in a manner that matches the determined speed of the constrained wheel.

“时间信息”表示能够表征移动机器人在路径上的位置与时间的关系的信息。由于路径是确定的,因此“时间信息”也能表征移动机器人在路径上的各位置处的速度。“Time information” refers to information that can characterize the relationship between the position and time of the mobile robot on the path. Since the path is fixed, “time information” can also characterize the speed of the mobile robot at each position on the path.

在一个示例性实施例中,对受约束轮进行速度规划的过程中,受约束轮的速度被确定为使得受约束轮在任意点都具有满足其运动学和动力学约束并且满足所述路径的限制的情况下的最大的速度和最大的加速度中的一者。In an exemplary embodiment, during velocity planning of the constrained wheel, the velocity of the constrained wheel is determined so that the constrained wheel has one of a maximum velocity and a maximum acceleration at any point while satisfying its kinematic and dynamic constraints and satisfying the constraints of the path.

在一个示例性实施例中,在对受约束轮进行速度规划的过程中,采用T形规划方法。In an exemplary embodiment, a T-shaped planning method is used during velocity planning of the constrained wheel.

在一个示例性实施例中,运动学和动力学约束包括:驱动轮的速度的大小在针对所述驱动轮预定的极限轮速度以下;驱动轮的加速度的大小在针对所述驱动轮预定的极限轮加速度以下。In an exemplary embodiment, the kinematic and dynamic constraints include: a magnitude of a speed of a driving wheel is below a limit wheel speed predetermined for the driving wheel; a magnitude of an acceleration of a driving wheel is below a limit wheel acceleration predetermined for the driving wheel.

在一个示例性实施例中,对所述路径分区段地进行速度规划,对所述路径的至少一个区段分别执行下述步骤:针对作为所述区段的起点的第一控制点,根据所述区段的路径形状、各驱动轮在第一控制点处的运动状态以及驱动轮的运动学和动力学约束,确定所述至少两个驱动轮中的一个为所述区段中的受约束轮,所述受约束轮为:在所述区段中,根据所述区段的路径形状和各驱动轮在第一控制点处的运动状态,优先达到运动学或动力学约束的极限值的驱动轮;对受约束轮进行速度规划以确定受约束轮在所述区段内的速度;以配合所确定的受约束轮的速度的方式,确定所述其它驱动轮在区段内的速度。In an exemplary embodiment, speed planning is performed on the path segment by segment, and the following steps are performed on at least one segment of the path: for a first control point serving as the starting point of the segment, one of the at least two driving wheels is determined to be a constrained wheel in the segment according to the path shape of the segment, the motion state of each driving wheel at the first control point, and the kinematic and dynamic constraints of the driving wheels, and the constrained wheel is: in the segment, according to the path shape of the segment and the motion state of each driving wheel at the first control point, the driving wheel preferentially reaches the limit value of the kinematic or dynamic constraints; speed planning is performed on the constrained wheel to determine the speed of the constrained wheel in the segment; and the speed of the other driving wheels in the segment is determined in a manner that matches the determined speed of the constrained wheel.

在一个示例性实施例中,移动机器人为双差速轮机器人,所述至少两个驱动轮为对称地布置的第一驱动轮和第二驱动轮,其中,第一驱动轮和第二驱动轮受到相同的运动学和动力学约束。In an exemplary embodiment, the mobile robot is a dual-differential wheel robot, and the at least two driving wheels are a first driving wheel and a second driving wheel that are symmetrically arranged, wherein the first driving wheel and the second driving wheel are subject to the same kinematic and dynamic constraints.

在一个示例性实施例中,以下述方式确定各个区段中的受约束轮:In one exemplary embodiment, the constrained wheels in each segment are determined in the following manner:

获取第一驱动轮和第二驱动轮在第一控制点处的第一初速度vL0和第二初速度vR0Obtain a first initial velocity v L0 and a second initial velocity v R0 of the first driving wheel and the second driving wheel at the first control point;

确定作为所述区段的终点的第二控制点处的由所述路径决定的速度比k的取值k1,所述速度比k表示第二驱动轮与第一驱动轮的速度之比;Determine a value k1 of a speed ratio k determined by the path at a second control point as an end point of the section, wherein the speed ratio k represents a ratio of a speed of the second driving wheel to a speed of the first driving wheel;

分别确定第一驱动轮和第二驱动轮在第二控制点处的第一最大速度vLmax和第二最大速度vRmax,所述第一最大速度和第二最大速度分别表示在不考虑第一驱动轮和第二驱动轮在达到第二控制点之前的速度的情况下满足各驱动轮的运动学和动力学约束并且满足所述路径的限制的最大的速度;Determine a first maximum speed v Lmax and a second maximum speed v Rmax of the first driving wheel and the second driving wheel at the second control point, respectively, wherein the first maximum speed and the second maximum speed respectively represent maximum speeds that satisfy kinematic and dynamic constraints of each driving wheel and satisfy the constraints of the path without considering the speeds of the first driving wheel and the second driving wheel before reaching the second control point;

将第一驱动轮从第一控制点处的第一初速度vL0开始以第一驱动轮的极限轮加速度加速至第二控制点所得到的速度确定为第一加速终速度vLa,将第二驱动轮从第一控制点处的第二初速度vR0开始以第二驱动轮的极限轮加速度加速至第二控制点所得到的速度确定为第二加速终速度vRaThe speed obtained by accelerating the first driving wheel from the first initial speed v L0 at the first control point to the second control point at the limit wheel acceleration of the first driving wheel is determined as the first acceleration terminal speed v La , and the speed obtained by accelerating the second driving wheel from the second initial speed v R0 at the first control point to the second control point at the limit wheel acceleration of the second driving wheel is determined as the second acceleration terminal speed v Ra ;

将第二控制点处的第一最大速度vLmax与第一加速终速度vLa中的较小者确定为第一终速度vL,将第二控制点处的第二最大速度vRmax与第二加速终速度vRa中的较小者确定为第二终速度vR;以及The smaller of the first maximum speed v Lmax and the first acceleration terminal speed v La at the second control point is determined as the first terminal speed v L , and the smaller of the second maximum speed v Rmax and the second acceleration terminal speed v Ra at the second control point is determined as the second terminal speed v R ; and

将第二终速度vR与第一终速度vL之比与第二控制点处的速度比k1相比较,并根据比较结果确定所述区段中的受约束轮。The ratio of the second terminal velocity v R to the first terminal velocity v L is compared with the velocity ratio k1 at the second control point, and the constrained wheel in the section is determined based on the comparison result.

在一个示例性实施例中,如果第二终速度vR与第一终速度vL之比大于第二控制点处的速度比k1,则确定第一驱动轮为所述区段中的受约束轮;如果第二终速度vR与第一终速度vL之比小于第二控制点处的速度比k1,则确定第二驱动轮为所述区段中的受约束轮;如果第二终速度vR与第一终速度vL之比等于第二控制点处的速度比k1,则确定第一驱动轮与第二驱动轮中的一者为所述区段中的受约束轮。In an exemplary embodiment, if the ratio of the second terminal velocity v R to the first terminal velocity v L is greater than the speed ratio k1 at the second control point, the first drive wheel is determined to be the constrained wheel in the section; if the ratio of the second terminal velocity v R to the first terminal velocity v L is less than the speed ratio k1 at the second control point, the second drive wheel is determined to be the constrained wheel in the section; if the ratio of the second terminal velocity v R to the first terminal velocity v L is equal to the speed ratio k1 at the second control point, one of the first drive wheel and the second drive wheel is determined to be the constrained wheel in the section.

在一个示例性实施例中,各区段对应的运动时长等于预定的控制周期t,第一加速终速度vLa和第二加速终速度vRa根据下式来确定:In an exemplary embodiment, the motion duration corresponding to each segment is equal to the predetermined control period t, and the first acceleration terminal velocity v La and the second acceleration terminal velocity v Ra are determined according to the following formula:

vLa=vL0+a*tv La = v L0 + a*t

vRa=vR0+a*tv Ra = v R0 + a*t

其中,a表示第一驱动轮和第二驱动轮的极限轮加速度。Wherein, a represents the limit wheel acceleration of the first driving wheel and the second driving wheel.

在一个示例性实施例中,第一驱动轮和第二驱动轮在路径上的任意点处的第一最大速度vLmax和第二最大速度vRmax根据下述约束中的至少一者来确定:In an exemplary embodiment, the first maximum speed v Lmax and the second maximum speed v Rmax of the first drive wheel and the second drive wheel at any point on the path are determined according to at least one of the following constraints:

-基于极限轮速度vlim的第一约束:vLmax≤vlim- The first constraint based on the limit wheel speed v lim : v Lmaxv lim ,

-基于极限轮速度vlim和由路径决定的速度比的第二约束:vLmax≤vlim/k,- A second constraint based on the limit wheel speed v lim and the speed ratio determined by the path: v Lmaxv lim /k,

-基于极限轮加速度a和由路径决定的速度比变化率k’的第三约束:

Figure BDA0003401242370000021
其中,k′≠0;并且- The third constraint based on the limit wheel acceleration a and the speed ratio change rate k' determined by the path:
Figure BDA0003401242370000021
where k′≠0; and

第一驱动轮和第二驱动轮在路径上的任意点处的第一最大速度vLmax和第二最大速度vRmax满足:vRmax=vLmax*k。The first maximum speed v Lmax and the second maximum speed v Rmax of the first driving wheel and the second driving wheel at any point on the path satisfy: v Rmax =v Lmax *k.

在一个示例性实施例中,第一驱动轮和第二驱动轮在路径上的任意点处的第一最大速度vLmax和第二最大速度vRmax附加地根据下述第四约束来确定:In an exemplary embodiment, the first maximum speed v Lmax and the second maximum speed v Rmax of the first drive wheel and the second drive wheel at any point on the path are additionally determined according to the following fourth constraint:

确定假设沿着所述路径第一驱动轮以由第一约束、第二约束和第三约束中的所述至少一者确定的最大速度运动而得到随第一驱动轮的运动距离LL变化的第一初步最大速度和随第二驱动轮的运动距离LR变化的第二初步最大速度中的至少一者;Determine at least one of a first preliminary maximum speed varying with a movement distance LL of the first driving wheel and a second preliminary maximum speed varying with a movement distance LR of the second driving wheel assuming that the first driving wheel moves along the path at a maximum speed determined by the at least one of the first constraint, the second constraint, and the third constraint;

确定第一初步最大速度和第二初步最大速度中的所述至少一者的极大值点和极小值点;determining a maximum point and a minimum point of the at least one of the first preliminary maximum velocity and the second preliminary maximum velocity;

所述任意点处的第一最大速度vLmax和/或第二初步最大速度vRmax满足:The first maximum speed v Lmax and/or the second preliminary maximum speed v Rmax at any point satisfy:

如果所述任意点在距离所述任意点最近的极小值点的后方,则:If the arbitrary point is behind the minimum point closest to the arbitrary point, then:

Figure BDA0003401242370000022
和/或
Figure BDA0003401242370000023
Figure BDA0003401242370000022
and/or
Figure BDA0003401242370000023

如果所述任意点在距离所述任意点最近的极小值点的前方,则:If the arbitrary point is in front of the minimum point closest to the arbitrary point, then:

Figure BDA0003401242370000031
和/或
Figure BDA0003401242370000032
Figure BDA0003401242370000031
and/or
Figure BDA0003401242370000032

其中,LL和LR分别表示第一驱动轮和第二驱动轮运动到所述任意点处的运动距离,v1相应地表示距离所述任意点最近的极小值点的第一初步最大速度或第二初步最大速度,LL1和LR1分别表示第一驱动轮和第二驱动轮运动到所述最近的极小值点处的运动距离。Among them, LL and LR respectively represent the movement distances of the first driving wheel and the second driving wheel to the arbitrary point, v1 correspondingly represents the first preliminary maximum speed or the second preliminary maximum speed of the minimum point closest to the arbitrary point, and LL1 and LR1 respectively represent the movement distances of the first driving wheel and the second driving wheel to the nearest minimum point.

在一个示例性实施例中,所述路径是通过根据移动机器人的至少一个任务点进行全局路径规划而确定的全局路径,所述至少一个任务点位于所述全局路径上;和/或所述路径呈3阶以上贝塞尔曲线的形式。In an exemplary embodiment, the path is a global path determined by performing global path planning based on at least one task point of the mobile robot, and the at least one task point is located on the global path; and/or the path is in the form of a Bezier curve of order 3 or above.

根据本发明的第二方面,提供了一种计算机程序产品,其包括计算器程序指令,其中,当所述计算机程序指令被一个或多于一个处理器执行时,所述处理器够执行根据本发明的轨迹规划方法。According to a second aspect of the present invention, a computer program product is provided, comprising computer program instructions, wherein when the computer program instructions are executed by one or more processors, the processors are capable of performing the trajectory planning method according to the present invention.

本发明的积极效果在于:提供了一种可供选择的轨迹规划方法,其尤其能够可靠地为移动机器人规划出满足运动学和动力学约束的轨迹。The positive effect of the present invention is that it provides an alternative trajectory planning method, which can especially reliably plan a trajectory for a mobile robot that satisfies kinematic and dynamic constraints.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

下面,通过参看附图更详细地描述本发明,可以更好地理解本发明的原理、特点和优点。附图包括:The present invention will be described in more detail below with reference to the accompanying drawings, so that the principles, features and advantages of the present invention can be better understood. The accompanying drawings include:

图1示意性地示出了实施根据本发明的一个示例性实施例的轨迹规划方法的移动机器人及其路径;FIG1 schematically shows a mobile robot and its path implementing a trajectory planning method according to an exemplary embodiment of the present invention;

图2示意性地示出了根据本发明的一个示例性实施例的用于移动机器人的轨迹规划方法的流程图;FIG2 schematically shows a flow chart of a trajectory planning method for a mobile robot according to an exemplary embodiment of the present invention;

图3示意性的示出了根据一个示例性实施例对路径分区段地进行速度规划的流程图;FIG3 schematically shows a flow chart of performing speed planning on a path segment by segment according to an exemplary embodiment;

图4A示意性地示出了在根据本发明的一个示例性实施例中路径上的曲率半径和曲率的变化曲线;FIG4A schematically shows a curve of a change in the radius of curvature and the curvature on a path according to an exemplary embodiment of the present invention;

图4B示意性地示出了在根据本发明的一个示例性实施例中路径上的速度比和满足第一约束和第二约束的第一最大速度和第二最大速度的变化曲线;4B schematically shows a variation curve of a speed ratio on a path and a first maximum speed and a second maximum speed satisfying a first constraint and a second constraint in an exemplary embodiment of the present invention;

图4C和图4D示意性地示出了与图4B所示的第一最大速度和第二最大速度对应的移动机器人的运动速度和运动距离以及第一驱动轮和第二驱动轮所需的第一需求加速度和第二需求加速度和移动机器人沿路径运动的时间戳;4C and 4D schematically illustrate the movement speed and movement distance of the mobile robot corresponding to the first maximum speed and the second maximum speed shown in FIG. 4B , as well as the first required acceleration and the second required acceleration required by the first driving wheel and the second driving wheel, and the timestamp of the mobile robot moving along the path;

图4E示意性地示出了经过重新规划后的第一驱动轮和第二驱动轮所需的第一需求加速度和第二需求加速度和移动机器人沿路径运动的时间戳;FIG4E schematically shows the first required acceleration and the second required acceleration required by the first driving wheel and the second driving wheel after replanning and the timestamp of the mobile robot moving along the path;

图4F示意性地示出了速度比k以及经过重新规划后的第一驱动轮和第二驱动轮的速度变化曲线;FIG4F schematically shows the speed ratio k and the speed variation curves of the first driving wheel and the second driving wheel after replanning;

图5A示意性地示出了根据本发明的一个示例性实施例中的路径;FIG5A schematically shows a path according to an exemplary embodiment of the present invention;

图5B示意性地示出了在图5A所示的示例性实施例中的路径上的曲率的变化曲线;FIG5B schematically shows a curve of curvature variation on the path in the exemplary embodiment shown in FIG5A ;

图5C示意性地示出了在图5A所示的示例性实施例中的路径上的速度比的变化曲线;FIG5C schematically shows a curve of a change in speed ratio on a path in the exemplary embodiment shown in FIG5A ;

图5D示意性地示出了在图5A所示的示例性实施例中满足第一约束的第一最大速度和第二最大速度;FIG5D schematically illustrates a first maximum speed and a second maximum speed satisfying a first constraint in the exemplary embodiment shown in FIG5A ;

图5E示意性地示出了在图5A所示的示例性实施例中满足第一约束和第二约束的第一最大速度和第二最大速度;FIG. 5E schematically illustrates a first maximum speed and a second maximum speed satisfying the first constraint and the second constraint in the exemplary embodiment shown in FIG. 5A ;

图5F示意性地示出了在图5A所示的示例性实施例中满足第一约束、第二约束和第三约束的第一最大速度和第二最大速度;FIG. 5F schematically illustrates a first maximum speed and a second maximum speed that satisfy the first constraint, the second constraint, and the third constraint in the exemplary embodiment shown in FIG. 5A ;

图5G-5H中示意性地示出了在一个示例性实施例中随第一驱动轮的运动距离变化的第一驱动轮的第一初步最大速度的曲线;5G-5H schematically show a curve of a first preliminary maximum speed of the first driving wheel as a function of the movement distance of the first driving wheel in an exemplary embodiment;

图5I示意性地示出了在图5A所示的示例性实施例中满足第一约束、第二约束、第三约束和第四约束的第一最大速度和第二最大速度;FIG. 5I schematically illustrates a first maximum speed and a second maximum speed satisfying the first constraint, the second constraint, the third constraint, and the fourth constraint in the exemplary embodiment shown in FIG. 5A ;

图6示意性地示出了根据本发明的一个示例性实施例的多机器人轨迹规划方法的流程图;FIG6 schematically shows a flow chart of a multi-robot trajectory planning method according to an exemplary embodiment of the present invention;

图7示意性地示出了相应地用于5个移动机器人的5条路径;FIG7 schematically shows five paths for five mobile robots respectively;

图8示意性地示出了根据本发明的一个示例性实施例中的交集点和冲突点;以及FIG8 schematically illustrates intersection points and conflict points according to an exemplary embodiment of the present invention; and

图9示意性地示出了在图8所示的示例性实施例中解除冲突点“1-2”之后的交集点和冲突点。FIG. 9 schematically shows intersection points and conflict points after the conflict point “ 1 - 2 ” is resolved in the exemplary embodiment shown in FIG. 8 .

具体实施方式DETAILED DESCRIPTION

为了使本发明所要解决的技术问题、技术方案以及有益的技术效果更加清楚明白,以下将结合附图以及多个示例性实施例对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用于解释本发明,而不是用于限定本发明的保护范围。In order to make the technical problems, technical solutions and beneficial technical effects to be solved by the present invention more clearly understood, the present invention will be further described in detail below in conjunction with the accompanying drawings and multiple exemplary embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention, rather than to limit the scope of protection of the present invention.

本发明适用于移动机器人,其可以是任何能够自主地进行空间移动的机器人,例如AGV、AMR等。所述移动机器人可用于执行各种任务,例如用作仓储机器人、清扫型机器人、家庭陪护机器人、迎宾机器人等。The present invention is applicable to mobile robots, which may be any robot capable of autonomously moving in space, such as AGV, AMR, etc. The mobile robot may be used to perform various tasks, such as a storage robot, a cleaning robot, a home care robot, a welcoming robot, etc.

应理解,在本文中,表述“第一”、“第二”等仅用于描述性目的,而不应理解为指示或暗示相对重要性,也不应理解为隐含指明所指示的技术特征的数量。限定有“第一”、“第二”的特征可以明示或者隐含地表示包括至少一个该特征。It should be understood that, in this document, the expressions "first", "second", etc. are used for descriptive purposes only and should not be understood as indicating or implying relative importance, nor should they be understood as implicitly indicating the number of technical features indicated. Features defined as "first" or "second" may explicitly or implicitly indicate that at least one of the features is included.

下面结合图1和图2示例性地说明本发明的运动控制方法。图1示意性地示出了实施根据本发明的一个示例性实施例的轨迹规划方法的移动机器人1及其路径2。图2示意性地示出了根据本发明的一个示例性实施例的用于移动机器人1的轨迹规划方法的流程图。The motion control method of the present invention is exemplarily described below in conjunction with Figures 1 and 2. Figure 1 schematically shows a mobile robot 1 and its path 2 for implementing a trajectory planning method according to an exemplary embodiment of the present invention. Figure 2 schematically shows a flow chart of a trajectory planning method for a mobile robot 1 according to an exemplary embodiment of the present invention.

在图1所示的实施例中,移动机器人1例如为差速机器人,即移动机器人1具有包括第一驱动轮(在下文中示例性地以左轮为第一驱动轮进行说明)和第二驱动轮(在下文中示例性地以右轮为第二驱动轮进行说明)的差速轮运动系统。替代地,移动机器人1也可以是其它类型的机器人,例如双舵轮机器人等。相应地,移动机器人1例如可包括双舵轮运动系统。In the embodiment shown in FIG1 , the mobile robot 1 is, for example, a differential robot, that is, the mobile robot 1 has a differential wheel motion system including a first drive wheel (hereinafter, the left wheel is exemplarily used as the first drive wheel for explanation) and a second drive wheel (hereinafter, the right wheel is exemplarily used as the second drive wheel for explanation). Alternatively, the mobile robot 1 may also be another type of robot, such as a dual-steering wheel robot. Accordingly, the mobile robot 1 may, for example, include a dual-steering wheel motion system.

在轨迹规划方法中,根据确定的路径2对移动机器人1进行速度规划,以确定使移动机器人1能够沿着所述路径2运动的包含时间信息的规划轨迹。所述路径2可以是通过根据移动机器人1的至少一个任务点进行全局路径规划而确定的全局路径,所述至少一个任务点位于所述全局路径上。In the trajectory planning method, velocity planning is performed on the mobile robot 1 according to the determined path 2 to determine a planned trajectory including time information that enables the mobile robot 1 to move along the path 2. The path 2 may be a global path determined by performing global path planning according to at least one task point of the mobile robot 1, and the at least one task point is located on the global path.

路径2可呈3阶以上贝塞尔曲线的形式并且能够以下式表示:The path 2 may be in the form of a Bezier curve of degree 3 or higher and can be expressed as follows:

Figure BDA0003401242370000041
Figure BDA0003401242370000041

其中,

Figure BDA0003401242370000042
表示移动机器人1的位置,i=0,1,…,N,N≥3,
Figure BDA0003401242370000043
Figure BDA0003401242370000044
表示贝塞尔曲线的控制点的坐标。当s从0增大到1,对应的
Figure BDA0003401242370000045
表示移动机器人1沿着路径2从起点到终点的位置。这对于差速机器人而言是尤其有利的。路径2具有连续的二阶导数能够特别有利地适应差速机器人的运动特性。特别是,路径2能够具有连续的曲率。这使得移动机器人1的速度和加速度的变化更平缓。图1中示出了呈4阶贝塞尔曲线形式的路径2。但应理解,路径2也可具有其它形状。in,
Figure BDA0003401242370000042
represents the position of mobile robot 1, i=0,1,…,N,N≥3,
Figure BDA0003401242370000043
Figure BDA0003401242370000044
Represents the coordinates of the control points of the Bezier curve. When s increases from 0 to 1, the corresponding
Figure BDA0003401242370000045
represents the position of the mobile robot 1 along the path 2 from the starting point to the end point. This is particularly advantageous for a differential robot. The continuous second-order derivative of the path 2 can be particularly advantageous for adapting to the motion characteristics of the differential robot. In particular, the path 2 can have a continuous curvature. This makes the change of the speed and acceleration of the mobile robot 1 smoother. FIG. 1 shows the path 2 in the form of a 4th-order Bezier curve. However, it should be understood that the path 2 may also have other shapes.

如图2所示,轨迹规划方法包括:步骤S11、确定移动机器人1的至少两个驱动轮中的一个为受约束轮,使得只要所述受约束轮满足运动学和动力学约束,与受约束轮相配合地运动的其它驱动轮就会满足运动学和动力学约束;步骤S12、基于所述路径2在满足受约束轮的运动学和动力学约束的情况下对受约束轮进行速度规划,以确定受约束轮的速度;步骤S13、以配合所确定的受约束轮的速度的方式,对受约束轮之外的其它驱动轮进行速度规划。As shown in Figure 2, the trajectory planning method includes: step S11, determining that one of the at least two driving wheels of the mobile robot 1 is a constrained wheel, so that as long as the constrained wheel satisfies the kinematic and dynamic constraints, the other driving wheels that move in coordination with the constrained wheel will satisfy the kinematic and dynamic constraints; step S12, based on the path 2, the constrained wheel is speed-planned while satisfying the kinematic and dynamic constraints of the constrained wheel to determine the speed of the constrained wheel; step S13, the speed of other driving wheels other than the constrained wheel is planned in a manner that matches the determined speed of the constrained wheel.

由此,提供了一种可供选择的轨迹规划方法,其尤其能够可靠地为移动机器人1规划出满足运动学和动力学约束的轨迹。Thus, an alternative trajectory planning method is provided, which can reliably plan a trajectory for the mobile robot 1 that satisfies kinematic and dynamic constraints.

在对受约束轮进行速度规划的过程中,使受约束轮在任意点都具有满足其运动学和动力学约束并且满足所述路径2的限制的情况下的最大的速度和最大的加速度中的一者。由此,能够为移动机器人1规划出时间最优的轨迹。In the process of velocity planning for the constrained wheel, the constrained wheel is made to have at any point one of the maximum velocity and the maximum acceleration under the condition of satisfying its kinematic and dynamic constraints and satisfying the restrictions of the path 2. Thus, a time-optimal trajectory can be planned for the mobile robot 1.

运动学和动力学约束可包括:驱动轮的速度的大小在针对所述驱动轮预定的极限轮速度以下;驱动轮的加速度的大小在针对所述驱动轮预定的极限轮加速度以下。所述极限轮速度和极限轮加速度受移动机器人1本身的构造限制而不考虑路径2的限制。极限轮速度和极限轮加速度例如由用于驱动相应的驱动轮的电机决定。可选地,运动学和动力学约束也可包括驱动轮的加加速度在针对所述驱动轮预定的极限轮加加速度以下。可选地,移动机器人1的第一驱动轮和第二驱动轮可对称地设置,从而具有相同的极限轮速度和极限轮加速度。The kinematic and dynamic constraints may include: the magnitude of the speed of the driving wheel is below the limit wheel speed predetermined for the driving wheel; the magnitude of the acceleration of the driving wheel is below the limit wheel acceleration predetermined for the driving wheel. The limit wheel speed and the limit wheel acceleration are limited by the construction of the mobile robot 1 itself without considering the limitation of the path 2. The limit wheel speed and the limit wheel acceleration are determined, for example, by the motor used to drive the corresponding driving wheel. Optionally, the kinematic and dynamic constraints may also include the acceleration of the driving wheel being below the limit wheel jerk predetermined for the driving wheel. Optionally, the first driving wheel and the second driving wheel of the mobile robot 1 may be symmetrically arranged so as to have the same limit wheel speed and limit wheel acceleration.

受约束轮可被确定为在运动过程中,从当前控制时刻到下一控制时刻,根据移动机器人1的路径2和当前时刻的移动机器人1的运动状态,在满足运动学和动力学约束并且以尽可能大的轮速度运动的情况下,先达到极限轮加速度的驱动轮。在此,先达到极限轮加速度的驱动轮表示在移动机器人以当前时刻的运动状态为起始状态而期望沿着路径尽快加速到运动学和动力学约束允许的最大速度的情况下,将由于达到极限轮加速度而导致移动机器人无法以更大的加速度加速的驱动轮。例如,如果移动机器人的加速度大到一定程度,第一驱动轮已经率先达到其极限轮加速度,而第二驱动轮的轮加速度仍在其极限轮加速度以下,那么移动机器人将由于第一驱动轮达到极限轮加速度而不能再以更大的加速度加速。因此,可将第一驱动轮确定为受约束轮。如果移动机器人1的当前运动状态已经达到了运动学和动力学约束允许的、符合路径的最大速度,那么可以将任一驱动轮作为受约束轮,或者也可以认为在该状态下不存在受约束轮。The constrained wheel can be determined as the driving wheel that first reaches the limit wheel acceleration during the motion process, from the current control moment to the next control moment, according to the path 2 of the mobile robot 1 and the motion state of the mobile robot 1 at the current moment, while satisfying the kinematic and dynamic constraints and moving at the maximum possible wheel speed. Here, the driving wheel that first reaches the limit wheel acceleration means that when the mobile robot takes the motion state at the current moment as the starting state and expects to accelerate to the maximum speed allowed by the kinematic and dynamic constraints as soon as possible along the path, the driving wheel that will cause the mobile robot to be unable to accelerate with a greater acceleration due to reaching the limit wheel acceleration. For example, if the acceleration of the mobile robot is large to a certain extent, the first driving wheel has reached its limit wheel acceleration first, and the wheel acceleration of the second driving wheel is still below its limit wheel acceleration, then the mobile robot will not be able to accelerate with a greater acceleration due to the first driving wheel reaching the limit wheel acceleration. Therefore, the first driving wheel can be determined as a constrained wheel. If the current motion state of the mobile robot 1 has reached the maximum speed allowed by the kinematic and dynamic constraints and in line with the path, then any driving wheel can be used as a constrained wheel, or it can also be considered that there is no constrained wheel in this state.

可选地,对所述路径2分区段地进行速度规划,对所述路径2的至少一个区段分别执行下述步骤:针对作为所述区段的起点的第一控制点,根据所述区段的路径形状、各驱动轮在第一控制点处的运动状态以及驱动轮的运动学和动力学约束,确定所述至少两个驱动轮中的一个为所述区段中的受约束轮,所述受约束轮为:在所述区段中,根据所述区段的路径形状和各驱动轮在第一控制点处的运动状态,优先达到运动学和动力学约束的极限值的驱动轮;对受约束轮进行速度规划以确定受约束轮在区段内的速度;以及以配合所确定的受约束轮的速度的方式,确定所述其它驱动轮在区段内的速度。在此,优先达到运动学和动力学约束的极限值的驱动轮表示该驱动轮将在其它驱动轮之前或与其它驱动轮同时地达到达到运动学和动力学约束的极限值。Optionally, the path 2 is speed-planned in sections, and the following steps are respectively performed on at least one section of the path 2: for a first control point as the starting point of the section, according to the path shape of the section, the motion state of each driving wheel at the first control point, and the kinematic and dynamic constraints of the driving wheel, one of the at least two driving wheels is determined to be a constrained wheel in the section, and the constrained wheel is: in the section, according to the path shape of the section and the motion state of each driving wheel at the first control point, the driving wheel preferentially reaches the limit value of the kinematic and dynamic constraints; the constrained wheel is speed-planned to determine the speed of the constrained wheel in the section; and the speed of the other driving wheels in the section is determined in a manner that matches the speed of the determined constrained wheel. Here, the driving wheel that preferentially reaches the limit value of the kinematic and dynamic constraints means that the driving wheel will reach the limit value of the kinematic and dynamic constraints before or at the same time as the other driving wheels.

各区段对应的运动时长可以是预定的控制周期t。所述控制周期t可设定为非常短的时间,例如设定为毫秒级的时间,例如可小于10ms。The exercise duration corresponding to each section may be a predetermined control period t. The control period t may be set to a very short time, such as a millisecond time, such as less than 10 ms.

下面结合图3进一步说明对所述路径2分区段地进行速度规划的过程。图3示意性的示出了根据一个示例性实施例对所述路径2分区段地进行速度规划。在该示例性实施例中,将路径2的起点作为首个控制点,并判断从当前控制点开始,对控制周期所对应的路径2的区段进行速度规划,然后以所述区段的终点作为下一控制点,继续进行速度规划,直到达到整个路径2的终点。The process of performing speed planning on the path 2 in sections is further described below in conjunction with FIG3. FIG3 schematically shows the speed planning on the path 2 in sections according to an exemplary embodiment. In the exemplary embodiment, the starting point of the path 2 is taken as the first control point, and it is determined that starting from the current control point, the speed planning is performed on the section of the path 2 corresponding to the control cycle, and then the end point of the section is taken as the next control point, and the speed planning is continued until the end point of the entire path 2 is reached.

对于每个区段,首先获取第一驱动轮和第二驱动轮在第一控制点处的第一初速度vL0和第二初速度vR0。在路径2的起点处,第一驱动轮和第二驱动轮的初始速度是已知的。对于从路径2的起点开始的第一个区段之外的区段,第一驱动轮和第二驱动轮在第一控制点处的第一初速度vL0和第二初速度vR0可由上一区段的规划结果得出。在本文的描述中,驱动轮的“速度”(也称为“轮速度”)以线速度为例进行说明。由于驱动轮的尺寸是确定的,因此驱动轮的线速度与角速度之间的关系也是确定的。For each section, first obtain the first initial velocity v L0 and the second initial velocity v R0 of the first drive wheel and the second drive wheel at the first control point. At the starting point of path 2, the initial velocities of the first drive wheel and the second drive wheel are known. For sections other than the first section starting from the starting point of path 2, the first initial velocity v L0 and the second initial velocity v R0 of the first drive wheel and the second drive wheel at the first control point can be obtained from the planning result of the previous section. In the description of this article, the "speed" (also called "wheel speed") of the drive wheel is explained by taking the linear velocity as an example. Since the size of the drive wheel is determined, the relationship between the linear velocity and the angular velocity of the drive wheel is also determined.

另外,确定作为所述区段的终点的第二控制点处的由所述路径2决定的速度比k的取值k1,所述速度比k表示第二驱动轮与第一驱动轮的速度之比。对于差速轮运动系统,速度比k与路径2的曲率半径R满足:

Figure BDA0003401242370000051
其中,b表示第一驱动轮与第二驱动轮的轮距,曲率半径R与曲率互为导数,而路径2在任一点处的曲率是确定的。因此,对于确定的路径2,路径2上的任一点处的速度比k是确定的。例如,对于呈贝塞尔曲线的形式,速度比k可表示为变量s的函数:k=g(s)。相应地,还可确定速度比变化率k’:k′=g′(s)。在已经确定路径2上的任一点处的速度比k的情况下,第二控制点处的速度比k1可通过现有技术已知的方法求取。In addition, a value k1 of the speed ratio k determined by the path 2 at the second control point as the end point of the segment is determined, wherein the speed ratio k represents the speed ratio of the second driving wheel to the first driving wheel. For the differential wheel motion system, the speed ratio k and the curvature radius R of the path 2 satisfy:
Figure BDA0003401242370000051
Wherein, b represents the wheelbase of the first driving wheel and the second driving wheel, the radius of curvature R and the curvature are derivatives of each other, and the curvature of the path 2 at any point is determined. Therefore, for the determined path 2, the speed ratio k at any point on the path 2 is determined. For example, for the form of a Bezier curve, the speed ratio k can be expressed as a function of the variable s: k = g(s). Correspondingly, the speed ratio change rate k' can also be determined: k' = g'(s). When the speed ratio k at any point on the path 2 has been determined, the speed ratio k1 at the second control point can be obtained by methods known in the prior art.

此外,分别确定第一驱动轮和第二驱动轮在第二控制点处的第一最大速度vLmax和第二最大速度vRmax,所述第一最大速度和第二最大速度分别表示在不考虑第一驱动轮和第二驱动轮在达到第二控制点之前的速度的情况下满足各驱动轮的运动学和动力学约束并且满足所述路径2的限制的最大的轮速度。In addition, a first maximum speed v Lmax and a second maximum speed v Rmax of the first drive wheel and the second drive wheel at the second control point are respectively determined, wherein the first maximum speed and the second maximum speed respectively represent the maximum wheel speeds that satisfy the kinematic and dynamic constraints of each drive wheel and satisfy the restrictions of the path 2 without considering the speeds of the first drive wheel and the second drive wheel before reaching the second control point.

然后,将第一驱动轮从第一控制点处的第一初速度vL0开始以第一驱动轮的极限轮加速度加速至第二控制点所得到的轮速度确定为第一加速终速度vLa,将第二驱动轮从第一控制点处的第二初速度vR0开始以第二驱动轮的极限轮加速度加速至第二控制点所得到的轮速度确定为第二加速终速度vRa。在所述区段对应控制周期t的情况下,第一加速终速度vLa和第二加速终速度vRa可根据下式来确定:Then, the wheel speed obtained by accelerating the first driving wheel from the first initial speed v L0 at the first control point to the second control point with the limit wheel acceleration of the first driving wheel is determined as the first acceleration terminal speed v La , and the wheel speed obtained by accelerating the second driving wheel from the second initial speed v R0 at the first control point to the second control point with the limit wheel acceleration of the second driving wheel is determined as the second acceleration terminal speed v Ra . In the case where the section corresponds to the control period t, the first acceleration terminal speed v La and the second acceleration terminal speed v Ra can be determined according to the following formula:

vLa=vL0+a*tv La = v L0 + a*t

vRa=vR0+a*tv Ra = v R0 + a*t

其中,a表示第一驱动轮和第二驱动轮的极限轮加速度。Wherein, a represents the limit wheel acceleration of the first driving wheel and the second driving wheel.

将第二控制点处的第一最大速度vLmax与第一加速终速度vLa中的较小者确定为第一终速度vL,并且将第二控制点处的第二最大速度vRmax与第二加速终速度vRa中的较小者确定为第二终速度vRThe smaller of the first maximum speed v Lmax and the first acceleration terminal speed v La at the second control point is determined as the first terminal speed v L , and the smaller of the second maximum speed v Rmax and the second acceleration terminal speed v Ra at the second control point is determined as the second terminal speed v R .

然后,将第二终速度vR与第一终速度vL之比与第二控制点处的速度比k1相比较,并根据比较结果确定所述区段中的受约束轮。Then, the ratio of the second terminal velocity v R to the first terminal velocity v L is compared with the velocity ratio k1 at the second control point, and the constrained wheel in the section is determined based on the comparison result.

在确定该区段中的受约束轮之后,如果还未到达路径2的终点,则将当前的第二控制点作为下一区段的第一控制点,并继续对下一区段进行速度规划。After determining the constrained wheels in the segment, if the end point of path 2 has not been reached, the current second control point is used as the first control point of the next segment, and speed planning for the next segment continues.

可选地,以下述方式根据第二终速度vR与第一终速度vL之比与第二控制点处的速度比k1的比较结果确定受约束轮:如果第二终速度vR与第一终速度vL之比大于第二控制点处的速度比k1,则确定第一驱动轮为所述区段中的受约束轮;如果第二终速度vR与第一终速度vL之比小于第二控制点处的速度比k1,则确定第二驱动轮为所述区段中的受约束轮;如果第二终速度vR与第一终速度vL之比等于第二控制点处的速度比k1,则可确定第一驱动轮与第二驱动轮中的任一者为所述区段中的受约束轮。Optionally, the constrained wheel is determined according to the comparison result of the ratio of the second terminal velocity v R to the first terminal velocity v L and the speed ratio k1 at the second control point in the following manner: if the ratio of the second terminal velocity v R to the first terminal velocity v L is greater than the speed ratio k1 at the second control point, the first drive wheel is determined to be the constrained wheel in the section; if the ratio of the second terminal velocity v R to the first terminal velocity v L is less than the speed ratio k1 at the second control point, the second drive wheel is determined to be the constrained wheel in the section; if the ratio of the second terminal velocity v R to the first terminal velocity v L is equal to the speed ratio k1 at the second control point, either the first drive wheel or the second drive wheel can be determined to be the constrained wheel in the section.

下面结合图4A-4F详细说明确定第一驱动轮和第二驱动轮在路径2上的任意点处的第一最大速度vLmax和第二最大速度vRmax的过程。The process of determining the first maximum speed v Lmax and the second maximum speed v Rmax of the first driving wheel and the second driving wheel at any point on the path 2 is described in detail below in conjunction with FIGS. 4A-4F .

图4A示意性地示出了在根据本发明的一个示例性实施例中路径2上的曲率半径R和曲率к的变化曲线。在该示例性实施例中,所述路径2为四阶贝塞尔曲线,其五个贝塞尔曲线控制点坐标分别为(0,-1)、(0,0)、(1,2)(4,2)和(5,3)。Fig. 4A schematically shows a variation curve of the curvature radius R and the curvature к on the path 2 according to an exemplary embodiment of the present invention. In this exemplary embodiment, the path 2 is a fourth-order Bezier curve, and the coordinates of its five Bezier curve control points are (0, -1), (0, 0), (1, 2) (4, 2) and (5, 3) respectively.

根据所述路径2,可确定路径2上的任一点处的曲率к如下:According to the path 2, the curvature к at any point on the path 2 can be determined as follows:

Figure BDA0003401242370000061
Figure BDA0003401242370000061

其中,Px′(s)、Py′(s)、Px″(s)、Py″(s)分别是

Figure BDA0003401242370000062
的一阶导横、纵坐标和二阶导横、纵坐标。相应地,可确定路径2上的任一点处的曲率半径R。Among them, P x ′(s), P y ′(s), P x ″(s), and P y ″(s) are
Figure BDA0003401242370000062
The first-order derivative, ordinate and second-order derivative, ordinate. Accordingly, the radius of curvature R at any point on the path 2 can be determined.

进而,可得出路径2上的任一点处的速度比k。图4B的底部示意性地示出了路径2上的速度比k的变化曲线。Then, the speed ratio k at any point on the path 2 can be obtained. The bottom of FIG4B schematically shows the variation curve of the speed ratio k on the path 2.

在该示例性实施例中,根据基于极限轮速度vlim的第一约束和基于极限轮速度vlim和由路径2决定的速度比的第二约束来确定第一驱动轮和第二驱动轮在路径2上的任意点处的第一最大速度vLmax和第二最大速度vRmaxIn this exemplary embodiment, the first maximum speed v Lmax and the second maximum speed v Rmax of the first and second driving wheels at any point on Path 2 are determined according to a first constraint based on the limit wheel speed v lim and a second constraint based on the limit wheel speed v lim and the speed ratio determined by Path 2 .

第一约束表示驱动轮的速度不能超过其极限轮速度。因此,第一驱动轮的第一最大速度vLmax需满足约束:vLmax≤vlim。在该实施例中,第一驱动轮和第二驱动轮的极限轮速度vlim被预先设定为1.5(m/s)。The first constraint indicates that the speed of the driving wheel cannot exceed its limit wheel speed. Therefore, the first maximum speed v Lmax of the first driving wheel must satisfy the constraint: v Lmax ≤v lim . In this embodiment, the limit wheel speed v lim of the first driving wheel and the second driving wheel is preset to 1.5 (m/s).

第二约束表示第一驱动轮和第二驱动轮中的任一个驱动轮的速度需使得满足速度比k的另一个驱动轮也不能超过其极限轮速度。因此,第一驱动轮的第一最大速度vLmax需满足约束:vLmax≤vlim/k。The second constraint indicates that the speed of any one of the first driving wheel and the second driving wheel must be such that the other driving wheel that satisfies the speed ratio k cannot exceed its limit wheel speed. Therefore, the first maximum speed v Lmax of the first driving wheel must satisfy the constraint: v Lmax ≤v lim /k.

第一驱动轮和第二驱动轮在路径2上的任意点处的第一最大速度vLmax和第二最大速度vRmax还满足约束:vRmax=vLmax*k。The first maximum speed v Lmax and the second maximum speed v Rmax of the first driving wheel and the second driving wheel at any point on the path 2 also satisfy the constraint: v Rmax =v Lmax *k.

因此,第一最大速度vLmax和第二最大速度vRmax为满足下述约束的最大轮速度:Therefore, the first maximum speed v Lmax and the second maximum speed v Rmax are the maximum wheel speeds that satisfy the following constraints:

Figure BDA0003401242370000071
Figure BDA0003401242370000071

可得出vLmax=min(vlim,vlim/k),vRmax=min(vlim,vlim*k),其中,min(a,b)表示a与b中的较小者。所得出的第一最大速度vLmax和第二最大速度vRmax在图4B的顶部和中部示意性地示出。It can be derived that v Lmax =min(v lim ,v lim /k), v Rmax =min(v lim ,v lim *k), where min(a,b) represents the smaller of a and b. The derived first maximum speed v Lmax and second maximum speed v Rmax are schematically shown in the top and middle of FIG. 4B .

可以看出,在确定第一最大速度vLmax和第二最大速度vRmax的过程中,没有考虑第一驱动轮和第二驱动轮在达到所述任意点之前的实际速度或规划速度对其在所述任意点处所能达到的速度的限制。It can be seen that in the process of determining the first maximum speed v Lmax and the second maximum speed v Rmax , the actual speed or planned speed of the first driving wheel and the second driving wheel before reaching the arbitrary point is not considered to limit the speed that can be achieved at the arbitrary point.

假设第一驱动轮和第二驱动轮始终以第一最大速度vLmax和第二最大速度vRmax沿着路径2运动,那么相应的移动机器人1的运动速度vr和运动距离L将如图4C所示。相应地,可得到移动机器人1沿路径2运动的时间戳t以及第一驱动轮和第二驱动轮所需的第一需求加速度aLneed和第二需求加速度aRneed,如图4D所示。Assuming that the first driving wheel and the second driving wheel always move along the path 2 at the first maximum speed v Lmax and the second maximum speed v Rmax , the corresponding movement speed v r and movement distance L of the mobile robot 1 will be as shown in Figure 4C. Accordingly, the timestamp t of the movement of the mobile robot 1 along the path 2 and the first required acceleration a Lneed and the second required acceleration a Rneed required by the first driving wheel and the second driving wheel can be obtained, as shown in Figure 4D.

在该实施例中,第一驱动轮和第二驱动轮的极限轮加速度a示例性地被预先设定为0.5(m/s2)。从图4D可见,第二驱动轮在s<s1区间内超过了极限轮加速度a的限制。因此,需要对此进行重新规划,重新规划过程例如如下:以超过极限轮加速度限制的区段中的速度最小值点为起点向两侧开始重新规划。在本实施例中,从s=0处开始向s增大方向重新规划。将加速度强制设定为极限轮加速度a,如图4E所示。即,从s=0处开始,第二驱动轮以加速度a=0.5加速,第一驱动轮配合第二驱动轮运动,以满足由路径2决定的速度比。显然,第一驱动轮在此需要先减速(其加速度的大小将在极限轮加速度a以下),然后再加速。图4F再此示出了速度比k以及经过重新规划后的第一驱动轮和第二驱动轮的速度变化曲线。从图4F可见,在s=s2的位置,第一驱动轮和第二驱动轮将达到第一最大速度vLmax和第二最大速度vRmax。在此,s2>s1。在s=s2之后,第一驱动轮和第二驱动轮可以以第一最大速度vLmax和第二最大速度vRmax沿着路径2运动。In this embodiment, the limit wheel acceleration a of the first drive wheel and the second drive wheel is pre-set to 0.5 (m/s 2 ) by way of example. As can be seen from FIG. 4D , the second drive wheel exceeds the limit wheel acceleration a in the interval s<s1. Therefore, it is necessary to replan this, and the replanning process is as follows: replanning is started from the speed minimum point in the section exceeding the limit wheel acceleration limit to both sides. In this embodiment, replanning is started from s=0 in the direction of increasing s. The acceleration is forcibly set to the limit wheel acceleration a, as shown in FIG. 4E . That is, starting from s=0, the second drive wheel accelerates with an acceleration a=0.5, and the first drive wheel cooperates with the second drive wheel to move to meet the speed ratio determined by path 2. Obviously, the first drive wheel needs to decelerate first (the magnitude of its acceleration will be below the limit wheel acceleration a) and then accelerate. FIG. 4F again shows the speed ratio k and the speed change curves of the first drive wheel and the second drive wheel after replanning. As can be seen from FIG4F , at the position s=s 2 , the first drive wheel and the second drive wheel will reach the first maximum speed v Lmax and the second maximum speed v Rmax . Here, s 2 >s 1. After s=s 2 , the first drive wheel and the second drive wheel can move along the path 2 at the first maximum speed v Lmax and the second maximum speed v Rmax .

在被重新规划的区段中,可确定第二驱动轮为受约束轮,并对第二驱动轮进行速度规划以确定第二驱动轮的速度。然后,以配合所确定的第二驱动轮的速度的方式,对第一驱动轮进行速度规划。确定第二驱动轮为受约束轮的过程可参照图3。在被重新规划的区段中,vR0+a*t<vRmax,因此,vR=vR0+a*t。而vL0+a*t>vLmax,因此,vL=vLmax。进而,vR/vL<k,因此,以第二驱动轮(即右轮)为约束轮。In the replanned section, the second driving wheel may be determined as a constrained wheel, and the speed of the second driving wheel may be planned to determine the speed of the second driving wheel. Then, the speed of the first driving wheel may be planned in a manner that matches the determined speed of the second driving wheel. The process of determining the second driving wheel as a constrained wheel may refer to FIG. 3 . In the replanned section, v R0 +a*t<v Rmax , therefore, v R =v R0 +a*t. And v L0 +a*t>v Lmax , therefore, v L =v Lmax . Furthermore, v R/ v L <k, therefore, the second driving wheel (i.e., the right wheel) is the constrained wheel.

在上述示例性描述的过程中,假设了移动机器人1的第一驱动轮和第二驱动轮在路径2的起点处分别具有第一最大速度vLmax和第二最大速度vRmax。当第一驱动轮和第二驱动轮在路径2的起点处的轮速度为其它值的情况下,移动机器人1需经历满足极限轮加速度的限制的加速阶段以达到第一最大速度vLmax和第二最大速度vRmaxIn the above exemplary description, it is assumed that the first drive wheel and the second drive wheel of the mobile robot 1 have a first maximum speed v Lmax and a second maximum speed v Rmax respectively at the starting point of the path 2. When the wheel speeds of the first drive wheel and the second drive wheel at the starting point of the path 2 are other values, the mobile robot 1 needs to go through an acceleration phase that satisfies the limit of the limit wheel acceleration to reach the first maximum speed v Lmax and the second maximum speed v Rmax .

下面结合图5A-5F详细说明在根据本发明的示例性实施例中确定第一驱动轮和第二驱动轮在路径2上的任意点处的第一最大速度vLmax和第二最大速度vRmax的过程。5A-5F , a process of determining the first maximum speed v Lmax and the second maximum speed v Rmax of the first driving wheel and the second driving wheel at any point on the path 2 according to an exemplary embodiment of the present invention will be described in detail below.

图5A示意性地示出了在根据本发明的一个示例性实施例中的路径2。在该示例性实施例中,所述路径2满足曲线方程:y=sin(π/2*x)。图5B示意性地示出了在该示例性实施例中的路径2上的曲率к的变化曲线。图5C示意性地示出了该路径2上的速度比k的变化曲线。根据路径2确定路径2上的曲率к和速度比k的过程可参考上文针对图4A-4F的描述。FIG. 5A schematically shows a path 2 in an exemplary embodiment according to the present invention. In the exemplary embodiment, the path 2 satisfies the curve equation: y=sin(π/2*x). FIG. 5B schematically shows a curve of a change in the curvature к on the path 2 in the exemplary embodiment. FIG. 5C schematically shows a curve of a change in the speed ratio k on the path 2. The process of determining the curvature к and the speed ratio k on the path 2 according to the path 2 can refer to the description of FIGS. 4A-4F above.

在该示例性实施例中,与图4A-4F所示的实施例类似地,第一驱动轮和第二驱动轮在路径2上的任意点处的第一最大速度vLmax和第二最大速度vRmax需满足第一约束和第二约束。In this exemplary embodiment, similar to the embodiment shown in FIGS. 4A-4F , the first maximum speed v Lmax and the second maximum speed v Rmax of the first driving wheel and the second driving wheel at any point on the path 2 need to satisfy the first constraint and the second constraint.

图5D示意性地示出了在该示例性实施例中满足第一约束的第一最大速度vLmax和第二最大速度vRmax。第一约束表示驱动轮的速度不能超过其极限轮速度。因此,第一最大速度vLmax和第二最大速度vRmax需满足约束:vLmax≤vlim,vRmax≤vlim。在该实施例中,第一驱动轮和第二驱动轮的极限轮速度vlim被预先设定为1.2(m/s)。FIG5D schematically shows the first maximum speed v Lmax and the second maximum speed v Rmax satisfying the first constraint in this exemplary embodiment. The first constraint indicates that the speed of the driving wheel cannot exceed its limit wheel speed. Therefore, the first maximum speed v Lmax and the second maximum speed v Rmax need to satisfy the constraints: v Lmax ≤v lim , v Rmax ≤v lim . In this embodiment, the limit wheel speed v lim of the first driving wheel and the second driving wheel is preset to 1.2 (m/s).

图5E示意性地示出了在该示例性实施例中满足第一约束与第二约束的第一最大速度vLmax和第二最大速度vRmax。第二约束表示第一驱动轮和第二驱动轮中的任一个驱动轮的速度需使得满足速度比k的另一个驱动轮也不能超过其极限轮速度。因此,第一驱动轮的第一最大速度vLmax需满足约束:vLmax≤vlim/k;第二驱动轮的第二最大速度vRmax需满足约束:vRmax=vlim*k。FIG5E schematically shows the first maximum speed v Lmax and the second maximum speed v Rmax satisfying the first constraint and the second constraint in this exemplary embodiment. The second constraint indicates that the speed of any one of the first driving wheel and the second driving wheel must be such that the other driving wheel satisfying the speed ratio k cannot exceed its limit wheel speed. Therefore, the first maximum speed v Lmax of the first driving wheel must satisfy the constraint: v Lmax ≤v lim /k; the second maximum speed v Rmax of the second driving wheel must satisfy the constraint: v Rmax =v lim *k.

由此,可得到满足第一约束和第二约束的最大轮速度:vLmax=min(vlim,vlim/k),vRmax=min(vlim,vlim*k)。Thus, the maximum wheel speeds satisfying the first constraint and the second constraint can be obtained: v Lmax =min(v lim ,v lim /k), v Rmax =min(v lim ,v lim *k).

第一驱动轮和第二驱动轮在路径2上的任意点处的第一最大速度vLmax和第二最大速度vRmax还满足约束:vRmax=vLmax*k。The first maximum speed v Lmax and the second maximum speed v Rmax of the first driving wheel and the second driving wheel at any point on the path 2 also satisfy the constraint: v Rmax =v Lmax *k.

在该实施例中,第一驱动轮和第二驱动轮在路径2上的任意点处的第一最大速度vLmax和第二最大速度vRmax可附加地满足基于极限轮加速度a和由路径2决定的速度比变化率k’的第三约束:

Figure BDA0003401242370000081
其中,k′≠0。In this embodiment, the first maximum speed v Lmax and the second maximum speed v Rmax of the first driving wheel and the second driving wheel at any point on the path 2 may additionally satisfy a third constraint based on the limit wheel acceleration a and the speed ratio change rate k' determined by the path 2:
Figure BDA0003401242370000081
Among them, k′≠0.

下面具体介绍第三约束的原理。如上文所述,在路径2被确定之后,就能够确定路径2上任意点处的速度比k和速度比变化率k’。假设在路径2上某一点处,沿着路径2运动的移动机器人1的第一驱动轮和第二驱动轮分别具有速度vL0和vR0,速度比k0=vR0/vL0The principle of the third constraint is described in detail below. As described above, after path 2 is determined, the speed ratio k and speed ratio change rate k' at any point on path 2 can be determined. Assume that at a certain point on path 2, the first driving wheel and the second driving wheel of the mobile robot 1 moving along path 2 have speeds v L0 and v R0 respectively, and the speed ratio k 0 =v R0 /v L0 .

由于第一驱动轮和第二驱动轮的轮加速度不能超过极限轮加速度a,因此,在移动机器人1沿路径2以一微小的时间段t运动经过一路径段之后,速度比k的取值范围为:

Figure BDA0003401242370000082
Since the wheel accelerations of the first driving wheel and the second driving wheel cannot exceed the limit wheel acceleration a, after the mobile robot 1 moves along the path 2 for a small period of time t through a path segment, the value range of the speed ratio k is:
Figure BDA0003401242370000082

那么,在该点处,速度比变化率k’应满足下式:Then, at this point, the speed ratio change rate k' should satisfy the following formula:

Figure BDA0003401242370000083
Figure BDA0003401242370000083

其中,L表示移动机器人1的运动距离,微小位移量dL表示移动机器人1在微小的时间段t内的位移。微小位移量dL等于第一驱动轮和第二驱动轮的位移的算术平均值,即

Figure BDA0003401242370000084
由此,上式可简化为:Wherein, L represents the movement distance of the mobile robot 1, and the small displacement dL represents the displacement of the mobile robot 1 in a small time period t. The small displacement dL is equal to the arithmetic mean of the displacements of the first driving wheel and the second driving wheel, that is,
Figure BDA0003401242370000084
Therefore, the above formula can be simplified to:

Figure BDA0003401242370000085
Figure BDA0003401242370000085

当vR0+vL0不等于0时,上式可简化为:When v R0 +v L0 is not equal to 0, the above formula can be simplified to:

Figure BDA0003401242370000086
Figure BDA0003401242370000086

由此可知,当速度比变化率k′≠0时,第一驱动轮的轮速度需满足:

Figure BDA0003401242370000087
相应地,第二驱动轮的轮速度需满足:
Figure BDA0003401242370000088
It can be seen from this that when the speed ratio change rate k′≠0, the wheel speed of the first driving wheel must satisfy:
Figure BDA0003401242370000087
Accordingly, the wheel speed of the second driving wheel must satisfy:
Figure BDA0003401242370000088

应理解,速度比变化率k′=0意味着移动机器人1在该点处进行直线运动或圆周运动。在直线运动(k′=0并且k=1)的情况下,可将第一驱动轮和第二驱动轮中的任一个确定为受约束轮。在圆周运动(k′=0并且k≠1)的情况下,可将外侧轮确定为受约束轮,即,如果k>1则将第二驱动轮确定为受约束轮,如果k<1则将第一驱动轮确定为受约束轮。It should be understood that the speed ratio change rate k'=0 means that the mobile robot 1 performs linear motion or circular motion at this point. In the case of linear motion (k'=0 and k=1), any one of the first drive wheel and the second drive wheel can be determined as a constrained wheel. In the case of circular motion (k'=0 and k≠1), the outer wheel can be determined as a constrained wheel, that is, if k>1, the second drive wheel is determined as a constrained wheel, and if k<1, the first drive wheel is determined as a constrained wheel.

图5F示意性地示出了在该示例性实施例中满足第一约束、第二约束和第三约束的第一最大速度vLmax和第二最大速度vRmaxFIG. 5F schematically illustrates a first maximum speed v Lmax and a second maximum speed v Rmax that satisfy the first constraint, the second constraint, and the third constraint in this exemplary embodiment.

可选地,还可为第一驱动轮和第二驱动轮在路径2上的任意点处的第一最大速度vLmax和第二最大速度vRmax设置下述第四约束。Optionally, the following fourth constraint may be set for the first maximum speed v Lmax and the second maximum speed v Rmax of the first driving wheel and the second driving wheel at any point on the path 2 .

下面参照图5G-5H来说明第四约束。首先,确定假设沿着所述路径2第一驱动轮以由第一约束、第二约束和第三约束确定的最大速度运动而得到随第一驱动轮的运动距离LL变化的第一驱动轮的第一初步最大速度。图5G-5H中示意性地示出了在一个示例性实施例中随第一驱动轮的运动距离LL变化的第一驱动轮的第一初步最大速度的曲线。应理解,在一些实施例中,第一初步最大速度也可以是满足第一约束和第二约束但不考虑第三约束的第一驱动轮的最大速度运动。The fourth constraint is described below with reference to FIGS. 5G-5H. First, a first preliminary maximum speed of the first driving wheel that varies with the movement distance LL of the first driving wheel is determined by assuming that the first driving wheel moves at the maximum speed determined by the first constraint, the second constraint, and the third constraint along the path 2. FIGS. 5G-5H schematically show a curve of the first preliminary maximum speed of the first driving wheel that varies with the movement distance LL of the first driving wheel in an exemplary embodiment. It should be understood that in some embodiments, the first preliminary maximum speed may also be the maximum speed movement of the first driving wheel that satisfies the first constraint and the second constraint but does not consider the third constraint.

然后,可确定第一初步最大速度的所有极大值点和极小值点。从每个极小值点向两侧的相邻极大值点(如果存在)以极限轮加速度a进行加速,直到与两侧的相邻极小值点以相同方式进行加速得到的曲线相交。然后,将所有的交点相邻极小值点间的曲线相连,即得到左轮在加速度约束下的加速度约束曲线。Then, all the maximum and minimum points of the first preliminary maximum speed can be determined. Accelerate from each minimum point to the adjacent maximum points on both sides (if any) with the limiting wheel acceleration a until the curve obtained by accelerating in the same way with the adjacent minimum points on both sides intersects. Then, connect the curves between the adjacent minimum points at all intersections to obtain the acceleration constraint curve of the left wheel under the acceleration constraint.

图5G示意性地示出了以LL=L1处的极小值点(L1,v1)为例,从该极小值点以极限轮加速度a向左侧(即后方)的相邻极大值点进行加速至相距极小距离dLL的LL=L2处,则:FIG5G schematically shows that taking the minimum point (L 1 , v 1 ) at L L =L 1 as an example, the wheel is accelerated from the minimum point to the adjacent maximum point on the left (i.e., the rear) at the limit wheel acceleration a to L L =L 2 at the minimum distance dL L , then:

Figure BDA0003401242370000091
Figure BDA0003401242370000091

其中,v2表示加速至相距极小距离的LL=L2处的第一驱动轮的轮速度,p表示第一驱动轮的轮速度在点(L1,v1)处以极限轮加速度a向点(L2,v2)增大的斜率。当dLL趋近于0,

Figure BDA0003401242370000092
Wherein, v2 represents the wheel speed of the first driving wheel accelerated to the minimum distance L L = L 2 , and p represents the slope of the wheel speed of the first driving wheel increasing from point (L 1 , v 1 ) to point (L 2 , v 2 ) at the limit wheel acceleration a. When dL L approaches 0,
Figure BDA0003401242370000092

从而可得:Thus we can get:

Figure BDA0003401242370000093
Figure BDA0003401242370000093

相应地,第四约束设定为对于路径2上在最近的极小值点的后方的点:Accordingly, the fourth constraint is set for points on path 2 that are behind the nearest minimum point:

Figure BDA0003401242370000094
Figure BDA0003401242370000094

应理解,在本文中,“前方”和“后方”是参照移动机器人1在路径2上运动方向而言。It should be understood that, in this article, “front” and “back” refer to the direction of movement of the mobile robot 1 on the path 2 .

图5H示意性地示出了从LL=L1处的极小值点(L1,v1)以极限轮加速度a向右侧(即前方)的相邻极大值点进行加速至相距极小距离dLL的LL=L2处,则:FIG5H schematically shows that the minimum point ( L1 , v1 ) at L L = L 1 is accelerated toward the adjacent maximum point on the right (i.e., in front) at the limit wheel acceleration a to L L = L 2 at the minimum distance dL L , then:

Figure BDA0003401242370000095
Figure BDA0003401242370000095

其中,v2表示加速至相距极小距离的LL=L2处的第一驱动轮的轮速度,p表示第一驱动轮的轮速度在点(L1,v1)处以极限轮加速度a向点(L2,v2)增大的斜率。当dLL趋近于0,

Figure BDA0003401242370000096
Wherein, v2 represents the wheel speed of the first driving wheel accelerated to the minimum distance L L = L 2 , and p represents the slope of the wheel speed of the first driving wheel increasing from point (L 1 , v 1 ) to point (L 2 , v 2 ) at the limit wheel acceleration a. When dL L approaches 0,
Figure BDA0003401242370000096

从而可得:Thus we can get:

Figure BDA0003401242370000097
Figure BDA0003401242370000097

相应地,第四约束设定为对于路径2上在最近的极小值点的前方的点:Accordingly, the fourth constraint is set for the points on path 2 that are ahead of the nearest minimum point:

Figure BDA0003401242370000098
Figure BDA0003401242370000098

同理,针对第二驱动轮的第二最大速度vRmax,第四约束可类似地设定。Likewise, for the second maximum speed v Rmax of the second driving wheel, the fourth constraint may be set similarly.

因此,根据第四约束,任意点处的第一最大速度vLmax和/或第二初步最大速度vRmax满足:如果所述任意点在距离所述任意点最近的极小值点的后方,则:Therefore, according to the fourth constraint, the first maximum speed v Lmax and/or the second preliminary maximum speed v Rmax at an arbitrary point satisfies: if the arbitrary point is behind the minimum point closest to the arbitrary point, then:

Figure BDA0003401242370000101
和/或
Figure BDA0003401242370000102
如果所述任意点在距离所述任意点最近的极小值点的前方,则:
Figure BDA0003401242370000101
and/or
Figure BDA0003401242370000102
If the arbitrary point is in front of the minimum point closest to the arbitrary point, then:

Figure BDA0003401242370000103
和/或
Figure BDA0003401242370000104
其中,LL和LR分别表示第一驱动轮和第二驱动轮运动到所述任意点处的运动距离,v1相应地表示距离所述任意点最近的极小值点的第一初步最大速度或第二初步最大速度,LL1和LR1分别表示第一驱动轮和第二驱动轮运动到所述最近的极小值点处的运动距离。
Figure BDA0003401242370000103
and/or
Figure BDA0003401242370000104
Among them, LL and LR respectively represent the movement distances of the first driving wheel and the second driving wheel to the arbitrary point, v1 correspondingly represents the first preliminary maximum speed or the second preliminary maximum speed of the minimum point closest to the arbitrary point, and LL1 and LR1 respectively represent the movement distances of the first driving wheel and the second driving wheel to the nearest minimum point.

图5I示意性地示出了在图5F的基础上进一步满足第四约束的第一最大速度vLmax和第二最大速度vRmax。换言之,图5I所示的第一最大速度vLmax和第二最大速度vRmax同时满足第一约束、第二约束、第三约束和第四约束。Fig. 5I schematically shows the first maximum speed v Lmax and the second maximum speed v Rmax that further satisfy the fourth constraint based on Fig. 5F. In other words, the first maximum speed v Lmax and the second maximum speed v Rmax shown in Fig. 5I satisfy the first constraint, the second constraint, the third constraint and the fourth constraint at the same time.

本发明的另一方面提出了一种多机器人轨迹规划方法,其可以独立于上文所述的规划方法被执行,也可优选地与上文所述的规划方法相结合地执行。Another aspect of the present invention provides a multi-robot trajectory planning method, which can be executed independently of the planning method described above, and can also be preferably executed in combination with the planning method described above.

图6示意性地示出了根据本发明的一个示例性实施例的多机器人轨迹规划方法。FIG6 schematically shows a multi-robot trajectory planning method according to an exemplary embodiment of the present invention.

如图6所示,所述多机器人轨迹规划方法至少包括下述步骤:初步规划步骤S21,其中,获取相应地用于多个移动机器人1的包含时间信息的多条规划轨迹,所述多条规划轨迹是通过对所述多个移动机器人1分别进行时间最优轨迹规划方法而生成的规划轨迹;冲突识别步骤S22,其中,识别所述多条规划轨迹中的两条规划轨迹之间在空间和时间维度上的冲突点,所述冲突点表示按照所述两条规划轨迹运动的移动机器人1将在相同的时间到达相同的位置;冲突解除步骤S23,其中,通过调整所述两条规划轨迹中的一条规划轨迹的时间信息解除所述冲突。由此,能够在多个移动机器人1在同一工作环境下工作时,在所述多个移动机器人1之间不发生碰撞的情况下,使所述多个移动机器人1整体上以尽量短的时间达到各自的目的地。As shown in FIG6 , the multi-robot trajectory planning method includes at least the following steps: a preliminary planning step S21, wherein a plurality of planning trajectories including time information corresponding to a plurality of mobile robots 1 are obtained, wherein the plurality of planning trajectories are planning trajectories generated by respectively performing the time optimal trajectory planning method on the plurality of mobile robots 1; a conflict identification step S22, wherein a conflict point in the space and time dimensions between two planning trajectories among the plurality of planning trajectories is identified, wherein the conflict point indicates that the mobile robots 1 moving along the two planning trajectories will reach the same position at the same time; a conflict resolution step S23, wherein the conflict is resolved by adjusting the time information of one of the two planning trajectories. Thus, when the plurality of mobile robots 1 are working in the same working environment, the plurality of mobile robots 1 can reach their respective destinations as a whole in the shortest possible time without collision between the plurality of mobile robots 1.

这种方法能够将多机器人轨迹规划方法分为时间最优的全局轨迹规划和时间调整(或速度调整)的局部轨迹规划两层。在时间最优的全局轨迹规划中,根据某种全局路径规划算法规划出用于各移动机器人1的不包含时间信息的全局路径,然后以使移动机器人1以自身最大运动能力(最大速度、最大加速度、最大加加速度)运动的方式为各移动机器人1进行速度规划以获得包含时间信息的规划轨迹。在时间调整的局部轨迹规划中,基于上一层时间最优的全局轨迹规划所获得的包含时间信息的规划轨迹,调整每条规划轨迹的运动时间(即,调整运动速度),从而使各规划轨迹之间不存在冲突点。由此获得多条规划轨迹能够保证所述多个移动机器人1之间不发生碰撞,并且使所述多个移动机器人1整体上以尽量短的时间达到各自的目的地。This method can divide the multi-robot trajectory planning method into two layers: time-optimal global trajectory planning and time-adjusted (or speed-adjusted) local trajectory planning. In the time-optimal global trajectory planning, a global path for each mobile robot 1 that does not contain time information is planned according to a certain global path planning algorithm, and then the speed of each mobile robot 1 is planned in a way that the mobile robot 1 moves at its maximum motion capacity (maximum speed, maximum acceleration, maximum jerk) to obtain a planned trajectory containing time information. In the time-adjusted local trajectory planning, based on the planned trajectory containing time information obtained by the time-optimal global trajectory planning of the previous layer, the movement time of each planned trajectory is adjusted (that is, the movement speed is adjusted), so that there are no conflict points between the planned trajectories. The multiple planned trajectories obtained in this way can ensure that there is no collision between the multiple mobile robots 1, and enable the multiple mobile robots 1 as a whole to reach their respective destinations in the shortest possible time.

应理解,冲突点并不限于规划轨迹在某一单独的点发生碰撞的情况,而是也包括规划轨迹之间具有重叠的轨迹区段的情况(参见图7)。在本文中,获取所述多条规划轨迹既包括以接收数据或读取数据的方式获取已有的多条规划轨迹,也包括通过轨迹规划方法为所述多个移动机器人进行轨迹规划从而获取相应的多条规划轨迹。It should be understood that the conflict point is not limited to the case where the planned trajectories collide at a single point, but also includes the case where the planned trajectories have overlapping trajectory segments (see Figure 7). In this article, obtaining the multiple planned trajectories includes both obtaining the existing multiple planned trajectories by receiving data or reading data, and also includes performing trajectory planning for the multiple mobile robots through a trajectory planning method to obtain the corresponding multiple planned trajectories.

在一个示例性实施例中,所述多条规划轨迹是通过上文描述的轨迹规划方法生成的规划轨迹。In an exemplary embodiment, the plurality of planned trajectories are planned trajectories generated by the trajectory planning method described above.

如图6所述,可重复执行冲突识别步骤S22和冲突解除步骤S23直到所述多条规划轨迹中的任意两条规划轨迹之间都不存在冲突点。As shown in FIG. 6 , the conflict identification step S22 and the conflict resolution step S23 may be repeatedly performed until no conflict point exists between any two planned trajectories among the plurality of planned trajectories.

具体地说,在冲突识别步骤S22中,可首先查找所述多条规划轨迹中的每两条规划轨迹在空间维度上的所有交集点。然后,针对每个交集点,检查相关的规划轨迹在所述交集点处的时间信息之间的时间间隔,若所述时间间隔小于预定的时间间隔阈值,则将相应的交集点识别为冲突点。交集点表示多条规划轨迹的路径相交的点,即被至少两条规划轨迹经过的空间位置。Specifically, in the conflict identification step S22, all intersection points of each two planned trajectories in the spatial dimension may be first found. Then, for each intersection point, the time interval between the time information of the relevant planned trajectories at the intersection point is checked. If the time interval is less than a predetermined time interval threshold, the corresponding intersection point is identified as a conflict point. The intersection point represents the point where the paths of the multiple planned trajectories intersect, that is, the spatial position passed by at least two planned trajectories.

冲突解除步骤S23例如可包括:子步骤S231:从识别出的冲突点和发生冲突的规划轨迹中选择待解除的冲突点和被调整的规划轨迹,其中,所述被调整的规划轨迹为与待解除的冲突点相关联的两条规划轨迹中的一条或者所述待解除的冲突点为与被调整的规划轨迹所具有的冲突点中的一个;子步骤S232:以延后被调整的规划轨迹在冲突点处的时间信息的方式调整被调整的规划轨迹在待解除的冲突点处的时间信息,使得所述相关联的两条规划轨迹在冲突点处的时间信息之间的时间间隔大于或等于时间间隔阈值;以及子步骤S233:基于被调整的规划轨迹在冲突点处的调整后的时间信息,相应地更新被调整的规划轨迹在冲突点之后的部分的时间信息。由此,能够以较少的调整解除冲突。The conflict resolution step S23 may include, for example, the following sub-steps: S231: selecting the conflict point to be resolved and the adjusted planning trajectory from the identified conflict points and the conflicting planning trajectories, wherein the adjusted planning trajectory is one of the two planning trajectories associated with the conflict point to be resolved or the conflict point to be resolved is one of the conflict points with the adjusted planning trajectory; sub-step S232: adjusting the time information of the adjusted planning trajectory at the conflict point to be resolved by delaying the time information of the adjusted planning trajectory at the conflict point, so that the time interval between the time information of the two associated planning trajectories at the conflict point is greater than or equal to the time interval threshold; and sub-step S233: based on the adjusted time information of the adjusted planning trajectory at the conflict point, correspondingly updating the time information of the part of the adjusted planning trajectory after the conflict point. Thus, the conflict can be resolved with less adjustment.

下面结合图7和图8进一步说明根据本发明的示例性实施例。图7示意性地示出了相应地用于5个移动机器人1的5条路径。标号1-5的曲线对应第1-5个移动机器人1的第1-5条路径。路径相交或重叠表示相应的移动机器人1轨迹在空间维度上的交集点。从图7中可以看出,用于第1个移动机器人1的第1条规划轨迹与其它规划轨迹之间具有5个交集点,分别为第1条规划轨迹先后与第2个、第5个、第3个、第4个和第5个条规划轨迹之间的交集点。显然,图7中没有示出相应的规划轨迹的时间信息。The exemplary embodiment according to the present invention is further described below in conjunction with FIG. 7 and FIG. 8. FIG. 7 schematically shows five paths corresponding to five mobile robots 1. The curves numbered 1-5 correspond to the 1st to 5th paths of the 1st to 5th mobile robots 1. The intersection or overlap of the paths represents the intersection points of the trajectories of the corresponding mobile robots 1 in the spatial dimension. As can be seen from FIG. 7, there are five intersection points between the first planned trajectory for the first mobile robot 1 and the other planned trajectories, which are the intersection points between the first planned trajectory and the second, fifth, third, fourth and fifth planned trajectories in sequence. Obviously, the time information of the corresponding planned trajectories is not shown in FIG. 7.

在找到所有交集点之后,针对每个交集点,可确定相关的规划轨迹进出所述交集点的时间信息,并根据相关的规划轨迹在所述交集点处的时间信息之间的时间间隔,确定各交集点是否为冲突点。After all intersection points are found, for each intersection point, the time information of the relevant planned trajectory entering and exiting the intersection point can be determined, and according to the time interval between the time information of the relevant planned trajectory at the intersection point, it is determined whether each intersection point is a conflict point.

图8示意性地示出了根据本发明的一个示例性实施例中的交集点和冲突点。在图8中,为了直观,将每条规划轨迹抽象地以一条横向轴线示意性地示出。每条横向轴线既对应时间刻度,又可对应移动机器人1运动的距离。每条横向轴线上的点表示按照时间最优的全局轨迹规划,该移动机器人1在对应时间将运动到该位置。在图8中,交集点以矩形格的形式被标识在每个移动机器人1的横向轴线上,其中,标号1-5的横向轴线对应第1-5移动机器人1的规划轨迹。各矩形格中列出了发生交集的移动机器人1的编号。例如,第1条规划轨迹先后与第2条、第5条、第3条、第4条和第5条规划轨迹之间的交集点相应地标记为“1-2”、“1-5”、“1-3”、“1-4”和“1-5”。矩形格在横向轴线上的位置表示该横向轴线所示的规划轨迹在矩形格所示的交集点处持续运动的时间段,矩形格沿横向轴线的宽度表示该规划轨迹在该交集点处持续运动的时间长度。例如,第4条规划轨迹在交集点“1-4”处持续运动的时间小于其在交集点“4-5”处持续运动的时间。FIG8 schematically shows the intersection points and conflict points in an exemplary embodiment of the present invention. In FIG8 , for the sake of intuitiveness, each planned trajectory is schematically illustrated in an abstract manner as a transverse axis. Each transverse axis corresponds to both a time scale and a distance moved by the mobile robot 1. The point on each transverse axis represents the position to which the mobile robot 1 will move at the corresponding time according to the global trajectory planning that is optimal in time. In FIG8 , the intersection points are marked on the transverse axis of each mobile robot 1 in the form of rectangular grids, wherein the transverse axes numbered 1-5 correspond to the planned trajectories of the 1st to 5th mobile robots 1. The numbers of the mobile robots 1 that intersect are listed in each rectangular grid. For example, the intersection points between the 1st planned trajectory and the 2nd, 5th, 3rd, 4th and 5th planned trajectories are marked as "1-2", "1-5", "1-3", "1-4" and "1-5" respectively. The position of the rectangular grid on the horizontal axis indicates the time period during which the planned trajectory shown by the horizontal axis continuously moves at the intersection point shown by the rectangular grid, and the width of the rectangular grid along the horizontal axis indicates the length of time during which the planned trajectory continuously moves at the intersection point. For example, the time during which the 4th planned trajectory continuously moves at the intersection point "1-4" is less than the time during which it continuously moves at the intersection point "4-5".

然后,可针对每个交集点,检查相关的规划轨迹在所述交集点处的时间信息之间的时间间隔,来判断交集点是否为冲突点。若所述时间间隔小于预定的时间间隔阈值,则将相应的交集点识别为冲突点。预定的时间间隔阈值例如可设定为0。为了安全起见,所述预定的时间间隔阈值也可设定为大于0。图8中最下方的横向轴线上标出了从交集点中识别出的冲突点。以交集点“1-2”为例,第1条规划轨迹与第2条规划轨迹在交集点“1-2”处持续运动的时间段之间的间隔小于0,即这两个时间段存在重叠。因此,交集点“1-2”为冲突点。再以交集点“2-5”为例,第2条规划轨迹与第5条规划轨迹在交集点“2-5”处持续运动的时间段之间的间隔大于0,即这两个时间段完全错开。因此,交集点“2-5”不是冲突点。Then, for each intersection point, the time interval between the time information of the relevant planned trajectory at the intersection point can be checked to determine whether the intersection point is a conflict point. If the time interval is less than the predetermined time interval threshold, the corresponding intersection point is identified as a conflict point. The predetermined time interval threshold can be set to 0, for example. For safety reasons, the predetermined time interval threshold can also be set to be greater than 0. The conflict points identified from the intersection points are marked on the bottom horizontal axis in Figure 8. Taking the intersection point "1-2" as an example, the interval between the time period in which the first planned trajectory and the second planned trajectory continue to move at the intersection point "1-2" is less than 0, that is, the two time periods overlap. Therefore, the intersection point "1-2" is a conflict point. Taking the intersection point "2-5" as an example, the interval between the time period in which the second planned trajectory and the fifth planned trajectory continue to move at the intersection point "2-5" is greater than 0, that is, the two time periods are completely staggered. Therefore, the intersection point "2-5" is not a conflict point.

各规划轨迹之间的交集点可以以矩阵的形式表示。例如,第i条轨迹与其它轨迹之间的交集点可以以下述矩阵表示:The intersection points between each planned trajectory can be represented in the form of a matrix. For example, the intersection points between the i-th trajectory and other trajectories can be represented by the following matrix:

Xi=[T1 … Tj … Tn],i=1,2,…,nX i = [T 1 … T j … T n ], i = 1, 2, …, n

其中,Tj表示第i条规划轨迹与第j条规划轨迹之间的交集点,n表示规划轨迹的数量。一般情况下,Tj可以以如下形式表示:Where Tj represents the intersection point between the i-th planned trajectory and the j-th planned trajectory, and n represents the number of planned trajectories. In general, Tj can be expressed in the following form:

Figure BDA0003401242370000111
Figure BDA0003401242370000111

其中,m≥0,

Figure BDA0003401242370000112
Figure BDA0003401242370000113
分别表示第i条规划轨迹进入和离开其与第j条规划轨迹之间的第m+1个交集点的时间。当第i条规划轨迹与第j条规划轨迹之间不存在交集点时,或者j=i时,规定Tj=0。Where m≥0,
Figure BDA0003401242370000112
and
Figure BDA0003401242370000113
They represent the time when the ith planned trajectory enters and leaves the m+1th intersection point between it and the jth planned trajectory. When there is no intersection point between the ith planned trajectory and the jth planned trajectory, or when j=i, T j =0.

为了便于表示,以最短规划轨迹运动时间为归一化时间1,其它规划轨迹根据运动时间长度按比例进行折算。上述5条规划轨迹之间的交集点可表示如下:For the convenience of representation, the shortest planned trajectory movement time is taken as normalized time 1, and other planned trajectories are converted in proportion to the length of the movement time. The intersection point between the above five planned trajectories can be expressed as follows:

Figure BDA0003401242370000121
Figure BDA0003401242370000121

Figure BDA0003401242370000122
Figure BDA0003401242370000122

Figure BDA0003401242370000123
Figure BDA0003401242370000123

Figure BDA0003401242370000124
Figure BDA0003401242370000124

Figure BDA0003401242370000125
Figure BDA0003401242370000125

以上矩阵中的数字的下标0和1分别用于标记该数字为对应的规划轨迹进入和离开该交集点的时间,数字的上标0和1分别用于标记该数字为第i条划轨迹与第j条规划轨迹之间的第1个和第2个交集点的时间信息。对于第i条划轨迹与第j条规划轨迹之间存在更多交集点的情况可依此类推。在第i条划轨迹与第j条规划轨迹之间仅存在一个交集点的情况下,省略了数字的上标。The subscripts 0 and 1 of the numbers in the above matrix are used to mark the time when the corresponding planned trajectory enters and leaves the intersection point, respectively. The superscripts 0 and 1 of the numbers are used to mark the time information of the first and second intersection points between the i-th drawn trajectory and the j-th planned trajectory, respectively. The same can be applied to the case where there are more intersection points between the i-th drawn trajectory and the j-th planned trajectory. In the case where there is only one intersection point between the i-th drawn trajectory and the j-th planned trajectory, the superscript of the number is omitted.

例如,可采用遍历法从交集点中搜索冲突点。从第1条规划轨迹的交集点X1开始,将X1的T2、T3、T4、T5分别与X2、X3、X4、X5的T1相比较,将有时间重叠的交集点进行标记。然后,将第2条规划轨迹的交集点X2的T1、T3、T4、T5分别与X1、X3、X4、X5的T2相比较,并标记有时间重叠的交集点。如此循环,直到遍历完所有规划轨迹。For example, the traversal method can be used to search for conflict points from the intersection points. Starting from the intersection point X1 of the first planned trajectory, T2 , T3 , T4 , and T5 of X1 are compared with T1 of X2 , X3 , X4 , and X5 , and the intersection points with time overlap are marked. Then , T1 , T3 , T4 , and T5 of the intersection point X2 of the second planned trajectory are compared with T2 of X1 , X3 , X4 , and X5 , and the intersection points with time overlap are marked. This cycle is repeated until all planned trajectories are traversed.

经过遍历,可找出上述5条规划轨迹之间的5个冲突点:“1-2”、“3-5”、“1-3”、“3-4”和“4-5”。在上述矩阵中以加粗的方式标记出各冲突点。在图8中,这5个冲突点在最后一条横线轴向上以矩形格的形式示出。After traversing, five conflict points between the five planned trajectories can be found: "1-2", "3-5", "1-3", "3-4" and "4-5". Each conflict point is marked in bold in the above matrix. In Figure 8, these five conflict points are shown in the form of rectangular grids along the axis of the last horizontal line.

在找出冲突点之后,可执行冲突解除步骤S23。优选地,在冲突解除步骤S23中等量地延后被调整的规划轨迹在冲突点处的时间信息和被调整的规划轨迹在冲突点之后的部分的时间信息。由于所述多条规划轨迹本身是时间最优的轨迹规划,这种方式能够保证调整后的规划轨迹仍然满足移动机器人1的运动学和动力学约束,并且使所述多个移动机器人1在不发生碰撞的情况下整体上以尽量短的时间达到各自的目的地。因为上一层时间最优的全局轨迹规划代表了移动机器人1的最大运动能力,因此在解除冲突时,只将被调整的规划轨迹进入待解除的冲突点处的时间向后推迟。这种向后延迟将相应地影响到被调整的规划轨迹在该待解除的冲突点之后的所有时间信息。After finding the conflict point, the conflict resolution step S23 can be executed. Preferably, in the conflict resolution step S23, the time information of the adjusted planned trajectory at the conflict point and the time information of the part of the adjusted planned trajectory after the conflict point are equally delayed. Since the multiple planned trajectories themselves are time-optimal trajectory planning, this method can ensure that the adjusted planned trajectories still meet the kinematic and dynamic constraints of the mobile robot 1, and enable the multiple mobile robots 1 to reach their respective destinations as soon as possible without collision. Because the time-optimal global trajectory planning of the previous layer represents the maximum movement capacity of the mobile robot 1, when resolving the conflict, only the time for the adjusted planned trajectory to enter the conflict point to be resolved is postponed. This backward delay will correspondingly affect all time information of the adjusted planned trajectory after the conflict point to be resolved.

在一个示例性实施例中,按规划轨迹对应的任务的优先级(或者说重要程度)选择待解除的冲突点和被调整的规划轨迹。如果不同的移动机器人1执行的任务具有不同的优先级,则当存在冲突点时,可优先固定具有高优先级任务的规划轨迹,依次通过调整与固定的规划轨迹发生冲突的规划轨迹来解除固定的规划轨迹的冲突点。In an exemplary embodiment, the conflict point to be resolved and the adjusted planned trajectory are selected according to the priority (or importance) of the task corresponding to the planned trajectory. If the tasks performed by different mobile robots 1 have different priorities, when there is a conflict point, the planned trajectory with the high priority task can be fixed first, and the conflict point of the fixed planned trajectory can be resolved by adjusting the planned trajectory that conflicts with the fixed planned trajectory in turn.

具体地说,冲突识别步骤S22和冲突解除步骤S23以下述方式执行:首先,识别所述多条规划轨迹之间的所有冲突点;将具有冲突点的规划轨迹按其对应的任务的优先级从高至低的顺序排序;选择排序最前的规划轨迹作为固定的规划轨迹,逐一将所述固定的规划轨迹的冲突点确定为待调整的冲突点,相应地将在待调整的冲突点处与所述固定的规划轨迹发生冲突的规划轨迹确定为被调整的规划轨迹,以解除所述固定的规划轨迹的所有冲突点;然后,再此执行冲突识别步骤S22以重新识别所述多条规划轨迹之间的所有冲突点。Specifically, the conflict identification step S22 and the conflict resolution step S23 are performed in the following manner: first, all conflict points between the multiple planned trajectories are identified; the planned trajectories with conflict points are sorted in descending order according to the priority of their corresponding tasks; the planned trajectory with the first sorting is selected as the fixed planned trajectory, and the conflict points of the fixed planned trajectory are determined one by one as the conflict points to be adjusted, and accordingly, the planned trajectory that conflicts with the fixed planned trajectory at the conflict points to be adjusted is determined as the adjusted planned trajectory, so as to resolve all conflict points of the fixed planned trajectory; then, the conflict identification step S22 is performed again to re-identify all conflict points between the multiple planned trajectories.

以图8所示的5条规划轨迹为例。这5条规划轨迹都具有冲突点,将它们按其对应的任务的优先级从高至低的顺序排序。如果这5条规划轨迹的对应的任务的优先级从高到低依次排序为:1>2>3>4>5,则先固定第1条规划轨迹。逐一将第1条规划轨迹的冲突点“1-2”和“1-3”确定为待解除的冲突点,相应地被调整的规划轨迹分别为第2条规划轨迹和第3条规划轨迹。Take the five planning trajectories shown in Figure 8 as an example. These five planning trajectories all have conflict points, and they are sorted in order from high to low according to the priority of their corresponding tasks. If the priorities of the tasks corresponding to these five planning trajectories are sorted from high to low as follows: 1>2>3>4>5, then fix the first planning trajectory first. The conflict points "1-2" and "1-3" of the first planning trajectory are determined one by one as the conflict points to be resolved, and the corresponding planning trajectories to be adjusted are the second planning trajectory and the third planning trajectory.

在此,先调整第2条规划轨迹以解除第2条规划轨迹与第1条规划轨迹之间的冲突点“1-2”。应理解,也可先调整第3条规划轨迹以解除第3条规划轨迹与第1条规划轨迹之间的冲突点“1-3”。Here, the second planned trajectory is adjusted first to resolve the conflict point "1-2" between the second planned trajectory and the first planned trajectory. It should be understood that the third planned trajectory may also be adjusted first to resolve the conflict point "1-3" between the third planned trajectory and the first planned trajectory.

如上文所述,可采用等量地延后第2条规划轨迹在冲突点“1-2”处的时间信息和第2条规划轨迹在冲突点“1-2”之后的部分的时间信息的方式来解除冲突点。延后的时间量为冲突的另一方第1条规划轨迹进入冲突点“1-2”的时间点减去被调整的规划轨迹(即,第2条规划轨迹)离开待解除的冲突点“1-2”的时间点再加上预定的时间间隔阈值,在此示例性地为0.3-0.275+0=0.025。As described above, the conflict point can be resolved by delaying the time information of the second planned trajectory at the conflict point "1-2" and the time information of the part of the second planned trajectory after the conflict point "1-2" by an equal amount. The amount of time delayed is the time point when the other party of the conflict, the first planned trajectory, enters the conflict point "1-2" minus the time point when the adjusted planned trajectory (i.e., the second planned trajectory) leaves the conflict point "1-2" to be resolved plus a predetermined time interval threshold, which is 0.3-0.275+0=0.025 in this exemplary embodiment.

因此,第2条规划轨迹进入和离开各交集点的时间将发生变化,如下所示:Therefore, the time when the second planned trajectory enters and leaves each intersection point will change as follows:

Figure BDA0003401242370000131
Figure BDA0003401242370000131

图9示意性地示出了在解除冲突点“1-2”之后的交集点和冲突点。如图9所示,第2条规划轨迹在冲突点“1-2”处以及之后的时间信息将整体延后,第2条规划轨迹的总时间也相应地延长。其它轨迹保持不变。FIG9 schematically shows the intersection point and conflict point after the conflict point "1-2" is resolved. As shown in FIG9, the time information of the second planned trajectory at and after the conflict point "1-2" will be delayed as a whole, and the total time of the second planned trajectory will be extended accordingly. The other trajectories remain unchanged.

然后,调整第3条规划轨迹以解除第3条规划轨迹与第1条规划轨迹之间的冲突点“1-3”。Then, the third planning trajectory is adjusted to resolve the conflict point “1-3” between the third planning trajectory and the first planning trajectory.

在此,第3条规划轨迹在冲突点“1-3”处的时间信息和第3条规划轨迹在冲突点“1-3”之后的部分的时间信息都等量地延后0.67-0.58+0=0.09。第3条规划轨迹进入和离开各交集点的时间将更新为:Here, the time information of the third planned trajectory at the conflict point "1-3" and the time information of the third planned trajectory after the conflict point "1-3" are both delayed by 0.67-0.58+0=0.09. The time when the third planned trajectory enters and leaves each intersection point will be updated as:

Figure BDA0003401242370000132
Figure BDA0003401242370000132

在解除固定的第1条规划轨迹的冲突点“1-2”和“1-3”之后,再次执行冲突识别步骤S22,以重新确定各规划轨迹之间的冲突点。如下述矩阵所示:After the conflict points "1-2" and "1-3" of the first planning trajectory are released, the conflict identification step S22 is performed again to redetermine the conflict points between the planning trajectories. As shown in the following matrix:

Figure BDA0003401242370000133
Figure BDA0003401242370000133

Figure BDA0003401242370000134
Figure BDA0003401242370000134

Figure BDA0003401242370000135
Figure BDA0003401242370000135

Figure BDA0003401242370000136
Figure BDA0003401242370000136

Figure BDA0003401242370000137
Figure BDA0003401242370000137

可以看出,此时上述5条规划轨迹之间存在3个冲突点:“3-5”、“4-5”和“3-5”。具有冲突点的规划轨迹按对应的任务的优先级从高到低依次排序为:3>4>5。然后,固定第3条规划轨迹。调整与第3条规划轨迹之间存在冲突点的第5条规划轨迹以解除第3条规划轨迹与第5条规划轨迹之间的冲突点。在此,第3条规划轨迹与第5条规划轨迹之间存在两个冲突点,可按冲突发生的时间顺序依次解除第3条规划轨迹与第5条规划轨迹之间的第一个冲突点。It can be seen that there are three conflict points between the above five planning trajectories: "3-5", "4-5" and "3-5". The planning trajectories with conflict points are sorted from high to low according to the priority of the corresponding tasks: 3>4>5. Then, the third planning trajectory is fixed. The fifth planning trajectory with a conflict point with the third planning trajectory is adjusted to resolve the conflict point between the third planning trajectory and the fifth planning trajectory. Here, there are two conflict points between the third planning trajectory and the fifth planning trajectory. The first conflict point between the third planning trajectory and the fifth planning trajectory can be resolved in the order of the time when the conflicts occur.

在解除第3条规划轨迹与第5条规划轨迹之间的第一个冲突点,更新第3条轨迹的时间信息:After resolving the first conflict point between the third and fifth planned trajectories, update the time information of the third trajectory:

Figure BDA0003401242370000141
Figure BDA0003401242370000141

可以看出,在解除第3条规划轨迹与第5条规划轨迹之间的第一个冲突点的同时,由于第5条规划轨迹在该冲突点之后的部分的时间信息被相应地更新,第3条规划轨迹与第5条规划轨迹之间的第二个冲突点也被解除。It can be seen that while the first conflict point between the third planned trajectory and the fifth planned trajectory is resolved, the second conflict point between the third planned trajectory and the fifth planned trajectory is also resolved because the time information of the part of the fifth planned trajectory after the conflict point is updated accordingly.

在此执行冲突识别步骤S22,识别结果如下述矩阵所示:Here, the conflict identification step S22 is performed, and the identification result is shown in the following matrix:

Figure BDA0003401242370000142
Figure BDA0003401242370000142

Figure BDA0003401242370000143
Figure BDA0003401242370000143

Figure BDA0003401242370000144
Figure BDA0003401242370000144

Figure BDA0003401242370000145
Figure BDA0003401242370000145

Figure BDA0003401242370000146
Figure BDA0003401242370000146

上述5条规划轨迹之间还存在1个冲突点:“4-5”。具有冲突点的规划轨迹按对应的任务的优先级从高到低依次排序为:4>5。然后,固定第4条规划轨迹。调整与第4条规划轨迹之间存在冲突点的第5条规划轨迹以解除第4条规划轨迹与第5条规划轨迹之间的冲突点。There is a conflict point between the above five planning trajectories: "4-5". The planning trajectories with conflict points are sorted from high to low according to the priority of the corresponding tasks: 4>5. Then, the fourth planning trajectory is fixed. The fifth planning trajectory that has a conflict point with the fourth planning trajectory is adjusted to resolve the conflict point between the fourth and fifth planning trajectories.

在解除第4条规划轨迹的冲突点之后,再次执行冲突识别步骤S22。各规划轨迹之间的交集点的时间信息如下所示:After the conflict point of the fourth planned trajectory is resolved, the conflict identification step S22 is performed again. The time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000147
Figure BDA0003401242370000147

Figure BDA0003401242370000148
Figure BDA0003401242370000148

Figure BDA0003401242370000149
Figure BDA0003401242370000149

Figure BDA00034012423700001410
Figure BDA00034012423700001410

Figure BDA0003401242370000151
Figure BDA0003401242370000151

此时,各规划轨迹之间不再具有冲突点。At this point, there are no more conflict points between the planned trajectories.

在根据本发明的另一示例性实施例中,按规划轨迹具有的冲突点的数量从少至多的顺序,选择待解除的冲突点和被调整的规划轨迹,以优先固定排序较前的规划轨迹使其无需被调整。In another exemplary embodiment according to the present invention, the conflict points to be resolved and the planned trajectories to be adjusted are selected in the order of the number of conflict points of the planned trajectories from the least to the most, so that the planned trajectories with the earlier order are preferentially fixed so that they do not need to be adjusted.

具体地说,冲突识别步骤S22和冲突解除步骤S23以下述方式执行:首先,识别所述多条规划轨迹之间的所有冲突点;将具有冲突点的规划轨迹按其冲突点的数量从少至多的顺序排序;选择排序最前的规划轨迹作为固定的规划轨迹,逐一将所述固定的规划轨迹的冲突点确定为待调整的冲突点,相应地将在待调整的冲突点处与所述固定的规划轨迹发生冲突的规划轨迹确定为被调整的规划轨迹,以解除所述固定的规划轨迹的所有冲突点;然后,再此执行冲突识别步骤S22以重新识别所述多条规划轨迹之间的所有冲突点。当有多条规划轨迹的冲突点数量一样且最少时,可依据进入冲突点的时间顺序来选择被调整的规划轨迹。Specifically, the conflict identification step S22 and the conflict resolution step S23 are performed in the following manner: first, all conflict points between the multiple planning trajectories are identified; the planning trajectories with conflict points are sorted in order from least to most according to the number of their conflict points; the planning trajectory with the highest sorting is selected as the fixed planning trajectory, and the conflict points of the fixed planning trajectory are determined as the conflict points to be adjusted one by one, and the planning trajectory that conflicts with the fixed planning trajectory at the conflict points to be adjusted is correspondingly determined as the adjusted planning trajectory to resolve all conflict points of the fixed planning trajectory; then, the conflict identification step S22 is performed again to re-identify all conflict points between the multiple planning trajectories. When there are multiple planning trajectories with the same and least number of conflict points, the adjusted planning trajectory can be selected according to the time sequence of entering the conflict point.

以图8所示的5条规划轨迹为例,这些规划轨迹之间存在5个冲突点:“1-2”、“3-5”、“1-3”、“3-4”和“4-5”。这5条规划轨迹都具有冲突点,将它们按其冲突点的数量从少至多的顺序排序:2<1=4=5<3。先固定第2条规划轨迹。被固定的第2条规划轨迹仅与第1条规划轨迹之间存在一个冲突点。因此,调整第1条规划轨迹以解除第1条规划轨迹与第2条规划轨迹之间的冲突点“1-2”。延后的时间量为0.325-0.25+0=0.075。Take the five planning trajectories shown in Figure 8 as an example. There are five conflict points between these planning trajectories: "1-2", "3-5", "1-3", "3-4" and "4-5". These five planning trajectories all have conflict points. Sort them in order from the least to the most in terms of the number of their conflict points: 2<1=4=5<3. Fix the second planning trajectory first. The fixed second planning trajectory has only one conflict point with the first planning trajectory. Therefore, adjust the first planning trajectory to resolve the conflict point "1-2" between the first planning trajectory and the second planning trajectory. The amount of time delayed is 0.325-0.25+0=0.075.

在执行第一次冲突解除步骤S23之后,各规划轨迹之间的交集点的时间信息如下所示:After executing the first conflict resolution step S23, the time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000152
Figure BDA0003401242370000152

Figure BDA0003401242370000153
Figure BDA0003401242370000153

Figure BDA0003401242370000154
Figure BDA0003401242370000154

Figure BDA0003401242370000155
Figure BDA0003401242370000155

Figure BDA0003401242370000156
Figure BDA0003401242370000156

再次执行冲突识别步骤S22,可识别出这些规划轨迹之间存在4个冲突点:“1-5”、“3-4”、“3-5”和“4-5”。对具有冲突点的第1、3、4、5条规划轨迹按其冲突点的数量从少至多的顺序排序:1<3=4<5。先固定第1条规划轨迹。然后,调整第5条规划轨迹以解除第5条规划轨迹与第1条规划轨迹之间的冲突点“1-5”。延后的时间量为0.65-0.625+0=0.025。Executing the conflict identification step S22 again, it can be identified that there are 4 conflict points between these planning trajectories: "1-5", "3-4", "3-5" and "4-5". The 1st, 3rd, 4th and 5th planning trajectories with conflict points are sorted in order from the least to the most in terms of the number of their conflict points: 1<3=4<5. First fix the 1st planning trajectory. Then, adjust the 5th planning trajectory to resolve the conflict point "1-5" between the 5th planning trajectory and the 1st planning trajectory. The amount of time delayed is 0.65-0.625+0=0.025.

在执行第二次冲突解除步骤S23之后,各规划轨迹之间的交集点的时间信息如下所示:After executing the second conflict resolution step S23, the time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000157
Figure BDA0003401242370000157

Figure BDA0003401242370000161
Figure BDA0003401242370000161

Figure BDA0003401242370000162
Figure BDA0003401242370000162

Figure BDA0003401242370000163
Figure BDA0003401242370000163

Figure BDA0003401242370000164
Figure BDA0003401242370000164

再次执行冲突识别步骤S22,可识别出这些规划轨迹之间存在3个冲突点:“3-4”、“3-5”和“4-5”。对具有冲突点的第3、4、5条规划轨迹按其冲突点的数量从少至多的顺序排序:3=4=5。此时,有3条规划轨迹的冲突点数量一样且最少,可依据进入冲突点的时间顺序来选择被调整的规划轨迹。例如,根据进入冲突点的时间顺序将冲突点数量一样且最少的规划轨迹排序:3<5<4。因此,可先固定第3条规划轨迹。然后,逐一第3条规划轨迹的冲突点“3-4”和“3-5”。Executing the conflict identification step S22 again, it can be identified that there are three conflict points between these planned trajectories: "3-4", "3-5" and "4-5". The 3rd, 4th and 5th planned trajectories with conflict points are sorted in order from the least to the most in terms of the number of their conflict points: 3=4=5. At this time, there are 3 planned trajectories with the same and least number of conflict points. The adjusted planned trajectory can be selected based on the time sequence of entering the conflict points. For example, the planned trajectories with the same and least number of conflict points are sorted according to the time sequence of entering the conflict points: 3<5<4. Therefore, the 3rd planned trajectory can be fixed first. Then, the conflict points "3-4" and "3-5" of the 3rd planned trajectory are checked one by one.

首先,调整第5条规划轨迹以解除第5条规划轨迹与第3条规划轨迹之间的冲突点“3-5”。延后的时间量为0.0425。First, the 5th planned trajectory is adjusted to resolve the conflict point "3-5" between the 5th planned trajectory and the 3rd planned trajectory. The amount of time delayed is 0.0425.

更新第5条轨迹的时间信息,可得:Update the time information of the fifth trajectory and get:

Figure BDA0003401242370000165
Figure BDA0003401242370000165

然后,调整第4条规划轨迹以解除第4条规划轨迹与第3条规划轨迹之间的冲突点“3-4”。延后的时间量为0.01。Then, the fourth planned trajectory is adjusted to resolve the conflict point "3-4" between the fourth planned trajectory and the third planned trajectory. The amount of time delayed is 0.01.

在解除第3条规划轨迹的冲突点之后,各规划轨迹之间的交集点的时间信息如下所示:After the conflict point of the third planned trajectory is resolved, the time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000166
Figure BDA0003401242370000166

Figure BDA0003401242370000167
Figure BDA0003401242370000167

Figure BDA0003401242370000168
Figure BDA0003401242370000168

Figure BDA0003401242370000169
Figure BDA0003401242370000169

Figure BDA00034012423700001610
Figure BDA00034012423700001610

再次执行冲突识别步骤S22,可识别出这些规划轨迹之间存在1个冲突点:“4-5”。根据进入冲突点的时间顺序将冲突点数量一样且最少的第4条和第5条规划轨迹排序:4<5。因此,可先固定第4条规划轨迹。然后,调整第5条规划轨迹以解除第5条规划轨迹与第4条规划轨迹之间的冲突点“4-5”。延后的时间量为0.0425。Executing the conflict identification step S22 again, it can be identified that there is a conflict point "4-5" between these planned trajectories. The 4th and 5th planned trajectories with the same and least number of conflict points are sorted according to the time sequence of entering the conflict point: 4<5. Therefore, the 4th planned trajectory can be fixed first. Then, the 5th planned trajectory is adjusted to resolve the conflict point "4-5" between the 5th planned trajectory and the 4th planned trajectory. The amount of time delayed is 0.0425.

在解除第4条规划轨迹的冲突点之后,各规划轨迹之间的交集点的时间信息如下所示:After the conflict point of the fourth planned trajectory is resolved, the time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000171
Figure BDA0003401242370000171

Figure BDA0003401242370000172
Figure BDA0003401242370000172

Figure BDA0003401242370000173
Figure BDA0003401242370000173

Figure BDA0003401242370000174
Figure BDA0003401242370000174

Figure BDA0003401242370000175
Figure BDA0003401242370000175

此时,各规划轨迹之间不再具有冲突点。At this point, there are no more conflict points between the planned trajectories.

在根据本发明的又一示例性实施例中,按规划轨迹具有的冲突点的冲突持续时间从少至多的顺序,选择待解除的冲突点和被调整的规划轨迹,以优先固定排序较前的规划轨迹不被调整。In another exemplary embodiment according to the present invention, the conflict points to be resolved and the planned trajectories to be adjusted are selected in order of the conflict durations of the conflict points of the planned trajectories from least to most, so that the planned trajectories with earlier fixed rankings are preferentially not adjusted.

具体地说,冲突识别步骤S22和冲突解除步骤S23以下述方式执行:首先,识别所述多条规划轨迹之间的所有冲突点;将具有冲突点的规划轨迹按具有的冲突点的冲突持续时间从少至多的顺序排序;选择排序最前的规划轨迹作为固定的规划轨迹,逐一将所述固定的规划轨迹的冲突点确定为待调整的冲突点,相应地将在待调整的冲突点处与所述固定的规划轨迹发生冲突的规划轨迹确定为被调整的规划轨迹,以解除所述固定的规划轨迹的所有冲突点;然后,再此执行冲突识别步骤S22以重新识别所述多条规划轨迹之间的所有冲突点。当有多条规划轨迹的冲突点数量一样且最少时,可依据进入冲突点的时间顺序来选择被调整的规划轨迹。Specifically, the conflict identification step S22 and the conflict resolution step S23 are performed in the following manner: first, all conflict points between the multiple planning trajectories are identified; the planning trajectories with conflict points are sorted in order from least to most according to the conflict duration of the conflict points; the planning trajectory with the highest sorting is selected as the fixed planning trajectory, and the conflict points of the fixed planning trajectory are determined as the conflict points to be adjusted one by one, and the planning trajectory that conflicts with the fixed planning trajectory at the conflict points to be adjusted is correspondingly determined as the adjusted planning trajectory to resolve all conflict points of the fixed planning trajectory; then, the conflict identification step S22 is performed again to re-identify all conflict points between the multiple planning trajectories. When there are multiple planning trajectories with the same and least number of conflict points, the adjusted planning trajectory can be selected according to the time sequence of entering the conflict points.

以图8所示的5条规划轨迹为例,这些规划轨迹之间存在5个冲突点:“1-2”、“3-5”、“1-3”、“3-4”和“4-5”。这5条规划轨迹都具有冲突点,将它们按其冲突点的冲突持续时间从少至多的顺序排序:2<1<3<4<5。先固定第2条规划轨迹。被固定的第2条规划轨迹仅与第1条规划轨迹之间存在一个冲突点。因此,调整第1条规划轨迹以解除第1条规划轨迹与第2条规划轨迹之间的冲突点“1-2”。延后的时间量为0.325-0.25+0=0.075。Taking the five planning trajectories shown in Figure 8 as an example, there are five conflict points between these planning trajectories: "1-2", "3-5", "1-3", "3-4" and "4-5". These five planning trajectories all have conflict points, and they are sorted in order from least to most in terms of the conflict duration of their conflict points: 2<1<3<4<5. Fix the second planning trajectory first. The fixed second planning trajectory has only one conflict point with the first planning trajectory. Therefore, adjust the first planning trajectory to resolve the conflict point "1-2" between the first planning trajectory and the second planning trajectory. The amount of time delayed is 0.325-0.25+0=0.075.

在执行第一次冲突解除步骤S23之后,各规划轨迹之间的交集点的时间信息如下所示:After executing the first conflict resolution step S23, the time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000176
Figure BDA0003401242370000176

Figure BDA0003401242370000177
Figure BDA0003401242370000177

Figure BDA0003401242370000178
Figure BDA0003401242370000178

Figure BDA0003401242370000181
Figure BDA0003401242370000181

Figure BDA0003401242370000182
Figure BDA0003401242370000182

再次执行冲突识别步骤S22,可识别出这些规划轨迹之间存在4个冲突点:“1-5”、“3-4”、“3-5”和“4-5”。在具有冲突点的第1、3、4、5条规划轨迹中,第1条规划轨迹的冲突点的冲突持续时间最短。先固定第1条规划轨迹。然后,调整第5条规划轨迹以解除第5条规划轨迹与第1条规划轨迹之间的冲突点“1-5”。延后的时间量为0.65-0.625+0=0.025。Executing the conflict identification step S22 again, it can be identified that there are 4 conflict points between these planned trajectories: "1-5", "3-4", "3-5" and "4-5". Among the 1st, 3rd, 4th and 5th planned trajectories with conflict points, the conflict duration of the conflict point of the 1st planned trajectory is the shortest. First fix the 1st planned trajectory. Then, adjust the 5th planned trajectory to resolve the conflict point "1-5" between the 5th planned trajectory and the 1st planned trajectory. The amount of time delayed is 0.65-0.625+0=0.025.

在执行第二次冲突解除步骤S23之后,各规划轨迹之间的交集点的时间信息如下所示:After executing the second conflict resolution step S23, the time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000183
Figure BDA0003401242370000183

Figure BDA0003401242370000184
Figure BDA0003401242370000184

Figure BDA0003401242370000185
Figure BDA0003401242370000185

Figure BDA0003401242370000186
Figure BDA0003401242370000186

Figure BDA0003401242370000187
Figure BDA0003401242370000187

再次执行冲突识别步骤S22,可识别出这些规划轨迹之间存在3个冲突点:“3-4”、“3-5”和“4-5”。对具有冲突点的第3、4、5条规划轨迹按其冲突点的冲突持续时间从少至多的顺序排序:3<4<5。因此,可先固定第3条规划轨迹。然后,逐一解除冲突点“3-4”和“3-5”。Executing the conflict identification step S22 again, it can be identified that there are three conflict points between these planned trajectories: "3-4", "3-5" and "4-5". The 3rd, 4th and 5th planned trajectories with conflict points are sorted in order from least to most in terms of the conflict duration of their conflict points: 3<4<5. Therefore, the 3rd planned trajectory can be fixed first. Then, the conflict points "3-4" and "3-5" are resolved one by one.

例如,可首先调整第4条规划轨迹以解除第4条规划轨迹与第3条规划轨迹之间的冲突点“3-4”。延后的时间量为0.01。For example, the fourth planned trajectory may be adjusted first to resolve the conflict point "3-4" between the fourth planned trajectory and the third planned trajectory. The amount of time delayed is 0.01.

然后,调整第5条规划轨迹以解除第5条规划轨迹与第3条规划轨迹之间的冲突点“3-5”。延后的时间量为0.0425。Then, the fifth planned trajectory is adjusted to resolve the conflict point "3-5" between the fifth planned trajectory and the third planned trajectory. The amount of time delayed is 0.0425.

在解除第3条规划轨迹的冲突点之后,各规划轨迹之间的交集点的时间信息如下所示:After the conflict point of the third planned trajectory is resolved, the time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000188
Figure BDA0003401242370000188

Figure BDA0003401242370000189
Figure BDA0003401242370000189

Figure BDA00034012423700001810
Figure BDA00034012423700001810

Figure BDA0003401242370000191
Figure BDA0003401242370000191

Figure BDA0003401242370000192
Figure BDA0003401242370000192

此时,各规划轨迹之间存在1个冲突点:“4-5”。根据进入冲突点的时间顺序将冲突点数量一样且最少的第4条和第5条规划轨迹排序:4<5。因此,可先固定第4条规划轨迹。然后,调整第5条规划轨迹以解除第5条规划轨迹与第4条规划轨迹之间的冲突点“4-5”。延后的时间量为0.0425。At this time, there is a conflict point "4-5" between the planned trajectories. Sort the 4th and 5th planned trajectories with the same and least number of conflict points according to the time sequence of entering the conflict point: 4<5. Therefore, the 4th planned trajectory can be fixed first. Then, the 5th planned trajectory is adjusted to resolve the conflict point "4-5" between the 5th planned trajectory and the 4th planned trajectory. The amount of time delayed is 0.0425.

之后,各规划轨迹之间的交集点的时间信息如下所示:Afterwards, the time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000193
Figure BDA0003401242370000193

Figure BDA0003401242370000194
Figure BDA0003401242370000194

Figure BDA0003401242370000195
Figure BDA0003401242370000195

Figure BDA0003401242370000196
Figure BDA0003401242370000196

Figure BDA0003401242370000197
Figure BDA0003401242370000197

此时,各规划轨迹之间不再具有冲突点。At this point, there are no more conflict points between the planned trajectories.

在根据本发明的另外的示例性实施例中,按冲突点的发生时间的先后顺序,选择待解除的冲突点和被调整的规划轨迹。In another exemplary embodiment according to the present invention, the conflict points to be resolved and the adjusted planned trajectory are selected in the order of occurrence time of the conflict points.

具体地说,冲突识别步骤S22和冲突解除步骤S23以下述方式执行:首先,执行冲突识别步骤S22以识别所述多条规划轨迹之间的所有冲突点;将冲突点按照其发生时间的先后顺序进行排序,选择排序最前的冲突点作为待解除的冲突点,选择与待解除的冲突点相关联的两条规划轨迹中进入冲突点的时间较晚的规划轨迹作为被调整的规划轨迹,以解除所述冲突点待解除的冲突点;再此执行冲突识别步骤S22以重新识别所述多条规划轨迹之间的所有冲突点。Specifically, the conflict identification step S22 and the conflict resolution step S23 are performed in the following manner: first, the conflict identification step S22 is executed to identify all conflict points between the multiple planned trajectories; the conflict points are sorted in chronological order of their occurrence time, and the conflict point at the front of the sort is selected as the conflict point to be resolved, and the planned trajectory that enters the conflict point later than the two planned trajectories associated with the conflict point to be resolved is selected as the adjusted planned trajectory to resolve the conflict point to be resolved; and the conflict identification step S22 is executed again to re-identify all conflict points between the multiple planned trajectories.

以图8所示的5条规划轨迹为例,这些规划轨迹之间存在5个冲突点:“1-2”、“3-5”、“1-3”、“3-4”和“4-5”。按冲突点按其发生时间的先后顺序进行排序为:“1-2”、“3-5”、“1-3”、“3-4”和“4-5”。由此,可确定“1-2”为待解除的冲突点。在参与冲突点“1-2”的第1条规划轨迹和第2条规划轨迹中,第2条规划轨迹较晚进入冲突点“1-2”,因此,将第2条规划轨迹确定为被调整的规划轨迹。然后,调整第2条规划轨迹以解除第2条规划轨迹与第1条规划轨迹之间的冲突点“1-2”。延后的时间量为0.3-0.275+0=0.025。Taking the five planning trajectories shown in Figure 8 as an example, there are five conflict points between these planning trajectories: "1-2", "3-5", "1-3", "3-4" and "4-5". The conflict points are sorted in the order of their occurrence time as: "1-2", "3-5", "1-3", "3-4" and "4-5". Therefore, "1-2" can be determined as the conflict point to be resolved. Among the first planning trajectory and the second planning trajectory participating in the conflict point "1-2", the second planning trajectory enters the conflict point "1-2" later, so the second planning trajectory is determined as the adjusted planning trajectory. Then, the second planning trajectory is adjusted to resolve the conflict point "1-2" between the second planning trajectory and the first planning trajectory. The amount of delayed time is 0.3-0.275+0=0.025.

在执行第一次冲突解除步骤S23之后,各规划轨迹之间的交集点的时间信息如下所示:After executing the first conflict resolution step S23, the time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000198
Figure BDA0003401242370000198

Figure BDA0003401242370000201
Figure BDA0003401242370000201

Figure BDA0003401242370000202
Figure BDA0003401242370000202

Figure BDA0003401242370000203
Figure BDA0003401242370000203

Figure BDA0003401242370000204
Figure BDA0003401242370000204

再次执行冲突识别步骤S22,可识别出这些规划轨迹之间存在4个冲突点:“1-3”、“3-4”、“3-5”和“4-5”。冲突点按其发生时间的先后顺序进行排序为:“3-5”、“1-3”、“3-4”和“4-5”。因此,调整第5条规划轨迹以解除第5条规划轨迹与第3条规划轨迹之间的冲突点“3-5”。延后的时间量为0.0425。Executing the conflict identification step S22 again, it can be identified that there are 4 conflict points between these planned trajectories: "1-3", "3-4", "3-5" and "4-5". The conflict points are sorted in the order of their occurrence time: "3-5", "1-3", "3-4" and "4-5". Therefore, the fifth planned trajectory is adjusted to resolve the conflict point "3-5" between the fifth planned trajectory and the third planned trajectory. The amount of time delayed is 0.0425.

在执行第二次冲突解除步骤S23之后,各规划轨迹之间的交集点的时间信息如下所示:After executing the second conflict resolution step S23, the time information of the intersection points between the planned trajectories is as follows:

Figure BDA0003401242370000205
Figure BDA0003401242370000205

Figure BDA0003401242370000206
Figure BDA0003401242370000206

Figure BDA0003401242370000207
Figure BDA0003401242370000207

Figure BDA0003401242370000208
Figure BDA0003401242370000208

Figure BDA0003401242370000209
Figure BDA0003401242370000209

然后,如上所述地重复执行冲突识别步骤S22和冲突解除步骤S23,直到这5条规划轨迹中的任意两条规划轨迹之间都不存在冲突点。Then, the conflict identification step S22 and the conflict resolution step S23 are repeatedly performed as described above until there is no conflict point between any two of the five planned trajectories.

替代地,也可以以其它方式执行冲突识别步骤S22和冲突解除步骤S23。例如,在识别所述多条规划轨迹之间的所有冲突点之后,将具有冲突点的规划轨迹以下述方式中的至少一者进行排序:按其对应的任务的优先级从高至低的顺序;按其冲突点的数量从少至多的顺序;按其冲突点的冲突持续时间从少至多的顺序;按其进入冲突点的时间的先后顺序。然后,选择在与排序最前的规划轨迹之间存在冲突点的规划轨迹中排序最前的一条作为被调整的规划轨迹,并且调整被调整的规划轨迹的时间信息以解除被调整的规划轨迹与排序较前的规划轨迹之间的冲突点。Alternatively, the conflict identification step S22 and the conflict resolution step S23 may also be performed in other ways. For example, after identifying all conflict points between the plurality of planned trajectories, the planned trajectories with conflict points are sorted in at least one of the following ways: in order of the priority of the tasks corresponding to them from high to low; in order of the number of their conflict points from small to large; in order of the conflict duration of their conflict points from small to large; in order of the time of entering the conflict point. Then, the first-ranked planned trajectory among the planned trajectories with conflict points with the first-ranked planned trajectory is selected as the adjusted planned trajectory, and the time information of the adjusted planned trajectory is adjusted to resolve the conflict points between the adjusted planned trajectory and the first-ranked planned trajectory.

另外,本发明还涉及一种计算机程序产品,其包括计算器程序指令,当所述计算机程序指令被一个或多于一个处理器执行时,所述处理器能够执行根据本发明的轨迹规划方法和/或多机器人轨迹规划方法。In addition, the present invention also relates to a computer program product, which includes computer program instructions. When the computer program instructions are executed by one or more processors, the processors are capable of executing the trajectory planning method and/or the multi-robot trajectory planning method according to the present invention.

在本发明中,计算机程序产品可存储在计算机可读存储介质中。计算机可读存储介质例如可包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡,安全数字卡,闪存卡、至少一个磁盘存储器件、闪存器件、或其它易失性固态存储器件。处理器可以是中央处理单元,还可以是其它通用处理器、数字信号处理器、专用集成电路、现成可编程门阵列或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者也可以是任何常规的处理器等。In the present invention, the computer program product may be stored in a computer-readable storage medium. The computer-readable storage medium may include, for example, a high-speed random access memory, and may also include a non-volatile memory, such as a hard disk, a memory, a plug-in hard disk, a smart memory card, a secure digital card, a flash memory card, at least one disk storage device, a flash memory device, or other volatile solid-state storage devices. The processor may be a central processing unit, or may be other general-purpose processors, digital signal processors, application-specific integrated circuits, off-the-shelf programmable gate arrays or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or may be any conventional processor, etc.

尽管这里详细描述了本发明的特定实施方式,但它们仅仅是为了解释的目的而给出的,而不应认为它们对本发明的范围构成限制。在不脱离本发明精神和范围的前提下,各种替换、变更和改造可被构想出来。Although specific embodiments of the present invention are described in detail herein, they are provided for the purpose of explanation only and should not be considered to limit the scope of the present invention. Various substitutions, changes and modifications may be conceived without departing from the spirit and scope of the present invention.

Claims (13)

1. A trajectory planning method for a mobile robot (1), wherein the mobile robot (1) is speed-planned according to a determined path (2) to determine a planned trajectory comprising time information enabling the mobile robot (1) to move along the path (2), the trajectory planning method comprising:
determining one of at least two driving wheels of the mobile robot (1) as a constrained wheel such that the other driving wheel moving in coordination with the constrained wheel satisfies the kinematic and dynamic constraints as long as the constrained wheel satisfies the kinematic and dynamic constraints;
-speed planning the constrained wheel on the basis of said path (2) while satisfying the kinematic and kinetic constraints of the constrained wheel, to determine the speed of the constrained wheel;
the other driving wheels than the constrained wheel are speed programmed in a manner that matches the determined speed of the constrained wheel.
2. The trajectory planning method of claim 1, wherein,
in the speed planning of the constrained wheel, the speed of the constrained wheel is determined such that the constrained wheel has one of a maximum speed and a maximum acceleration at any point that satisfies its kinematic and kinetic constraints and satisfies the constraints of the path (2).
3. The trajectory planning method of claim 2, wherein,
in the process of speed planning of the constrained wheel, a T-shaped planning method is adopted.
4. The trajectory planning method of claim 2, wherein,
kinematic and kinetic constraints include:
the magnitude of the speed of the drive wheel is below a predetermined limit wheel speed for the drive wheel;
the magnitude of the acceleration of the drive wheel is below a predetermined limit wheel acceleration for the drive wheel.
5. The trajectory planning method of claim 4, wherein,
-speed planning the path (2) in sections, -performing the following steps for at least one section of the path (2) respectively:
for a first control point that is a starting point of the segment, determining one of the at least two drive wheels as a constrained wheel in the segment according to a path shape of the segment, a motion state of each drive wheel at the first control point, and kinematic and dynamic constraints of the drive wheels, the constrained wheel being: in the section, driving wheels that preferentially reach a limit value of kinematic or dynamic constraint according to the path shape of the section and the motion state of each driving wheel at a first control point;
Planning the speed of the constrained wheel to determine the speed of the constrained wheel within the section;
the speed of the other drive wheels within the segment is determined in coordination with the determined speed of the constrained wheel.
6. The trajectory planning method of claim 5, wherein,
the mobile robot (1) is a double differential wheel robot, the at least two driving wheels are a first driving wheel and a second driving wheel which are symmetrically arranged, wherein the first driving wheel and the second driving wheel are constrained by the same kinematics and dynamics.
7. The trajectory planning method of claim 6, wherein,
the constrained wheels in each section are determined in the following manner:
acquiring a first initial velocity v of the first driving wheel and the second driving wheel at a first control point L0 And a second initial velocity v R0
Determining a value k1 of a speed ratio k determined by the path (2) at a second control point, which is the end point of the section, the speed ratio k representing the ratio of the speeds of the second driving wheel to the first driving wheel;
determining a first maximum speed v of the first and second drive wheels, respectively, at the second control point Lmax And a second maximum velocity v Rmax The first and second maximum speeds respectively represent the maximum speeds that satisfy the kinematic and kinetic constraints of the respective driving wheels and satisfy the constraints of the path (2) irrespective of the speeds of the first and second driving wheels before reaching the second control point;
A first initial speed v of the first driving wheel from a first control point L0 The speed obtained by starting acceleration to the second control point at the limit wheel acceleration of the first drive wheel is determined as the first acceleration final speed v La A second initial speed v of the second driving wheel from the first control point R0 The speed obtained by starting acceleration to the second control point at the limit wheel acceleration of the second drive wheel is determined as the second acceleration final speed v Ra
The first maximum speed v at the second control point Lmax With the first accelerating final velocity v La The smaller of (a) is determined as a first final speed v L A second maximum speed v at a second control point Rmax And a second acceleration final velocity v Ra The smaller of (a) is determined as the second final speed v R
Second final speed v R And a first final velocity v L The ratio is compared with a speed ratio k1 at the second control point and the constrained wheel in the section is determined from the comparison.
8. The trajectory planning method of claim 7, wherein,
if the second final speed v R And a first final velocity v L The ratio is greater than the speed ratio k1 at the second control point, determining the first drive wheel as the constrained wheel in the section;
if the second final speed v R And a first final velocity v L Determining the second drive wheel as a constrained wheel in the section if the ratio is less than the speed ratio k1 at the second control point;
If the second final speed v R And a first final velocity v L The ratio is equal to the speed ratio k1 at the second control point, then one of the first and second drive wheels is determined to be the constrained wheel in the section.
9. The trajectory planning method according to claim 7 or 8, wherein,
the movement duration corresponding to each section is equal to a preset control period t, and the first acceleration final speed v La And a second acceleration final speed v Ra The determination is made according to the following equation:
v La =v L0 +a*t
v Ra =v R0 +a*t
where a represents the limit wheel acceleration of the first and second drive wheels.
10. A trajectory planning method according to any one of claims 7 to 9, wherein,
a first maximum speed v of the first and second drive wheels at any point on the path (2) Lmax And a second maximum velocity v Rmax Determined according to at least one of the following constraints:
based on the limit wheel speed v lim Is a first constraint of (a): v Lmax ≤v lim
Based on the limit wheel speed v lim And a second constraint of the speed ratio determined by path (2): v lmax ≤v lim /k,
-a third constraint based on the limit wheel acceleration a and the rate of change k' of the speed ratio determined by the path (2):
Figure FDA0003401242360000021
wherein k' noteq0; and is also provided with
A first maximum speed v of the first and second drive wheels at any point on the path (2) Lmax And a second maximum velocity v Rmax The method meets the following conditions: v Rmax =v Lmax *k。
11. The trajectory planning method of claim 10, wherein,
a first maximum speed v of the first and second drive wheels at any point on the path (2) Lmax And a second maximum velocity v Rmax Additionally determined according to the fourth constraint:
determining that the first drive wheel is assumed to move along the path (2) at a maximum speed determined by the at least one of the first constraint, the second constraint and the third constraint resulting in a movement distance L with the first drive wheel L Varying a first preliminary maximum speed and a distance of movement L with the second drive wheel R At least one of the second preliminary maximum speeds of variation;
determining maximum and minimum points of the at least one of the first and second preliminary maximum speeds;
a first maximum velocity v at said arbitrary point Lmax And/or a second preliminary maximum velocity v Rmax The method meets the following conditions:
if the arbitrary point is behind the minimum point closest to the arbitrary point, then:
Figure FDA0003401242360000022
and/or +.>
Figure FDA0003401242360000023
If the arbitrary point is in front of the minimum point nearest to the arbitrary point, then:
Figure FDA0003401242360000031
and/or +.>
Figure FDA0003401242360000032
Wherein L is L And L R Representing the movement distance, v, of the first and second drive wheels to said arbitrary point, respectively 1 Representing distance accordinglyA first preliminary maximum speed or a second preliminary maximum speed of a minimum value point nearest to the arbitrary point, L L1 And L R1 Representing the movement distance of the first and second drive wheels to the nearest minimum point, respectively.
12. The trajectory planning method according to any one of claims 1 to 10, wherein,
the path (2) is a global path determined by global path planning from at least one task point of the mobile robot (1), the at least one task point being located on the global path; and/or
The path (2) is in the form of a bezier curve of 3 rd order or more.
13. A computer program product comprising computer program instructions, wherein the computer program instructions, when executed by one or more processors, are capable of performing the trajectory planning method of any one of claims 1-12.
CN202111497327.0A 2021-12-09 2021-12-09 Trajectory planning method for mobile robot and computer program product Pending CN116257042A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111497327.0A CN116257042A (en) 2021-12-09 2021-12-09 Trajectory planning method for mobile robot and computer program product
PCT/CN2022/123039 WO2023103554A1 (en) 2021-12-09 2022-09-30 Trajectory planning method for mobile robot, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111497327.0A CN116257042A (en) 2021-12-09 2021-12-09 Trajectory planning method for mobile robot and computer program product

Publications (1)

Publication Number Publication Date
CN116257042A true CN116257042A (en) 2023-06-13

Family

ID=86677920

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111497327.0A Pending CN116257042A (en) 2021-12-09 2021-12-09 Trajectory planning method for mobile robot and computer program product

Country Status (2)

Country Link
CN (1) CN116257042A (en)
WO (1) WO2023103554A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010136072A1 (en) * 2009-05-29 2010-12-02 El-Forest Ab Hybrid utility vehicle
CN109885052B (en) * 2019-02-26 2022-03-25 华南理工大学 Error model prediction control method based on omnidirectional mobile robot kinematics modeling
GB202002365D0 (en) * 2020-02-20 2020-04-08 Five Ai Ltd Implementing manoeuvres in autonomous vehicles
CN112462753B (en) * 2020-10-20 2024-01-30 天津大学 Kinematic modeling method for car-snake composite variable structure mobile robot

Also Published As

Publication number Publication date
WO2023103554A1 (en) 2023-06-15

Similar Documents

Publication Publication Date Title
US20220163969A1 (en) Systems and methods for optimizing route plans in an operating environment
CN107727099A (en) The more AGV scheduling of material transportation and paths planning method in a kind of factory
CN111532641B (en) Parallel path planning method for automatic guided vehicles in warehouse sorting
CN110989570A (en) A multi-AGV anti-collision collaborative path planning method
CN111474926A (en) Waste smoke recovery method based on multiple AGV time window path optimization algorithm
WO2022032444A1 (en) Obstacle avoidance method and system for multiple intelligent agents, and computer-readable storage medium
JP2024020457A (en) Information processing device, information processing method, computer program and information processing system
Kala et al. Planning of multiple autonomous vehicles using rrt
CN117151590B (en) AGV scheduling method based on translation time window and task path planning
CN115328113A (en) Multi-logistics robot path planning method based on improved time window algorithm
JP7577689B2 (en) Method, device, and system for controlling route of unmanned vehicle
Xiao et al. A collision and deadlock prevention method with traffic sequence optimization strategy for UGN-based AGVS
Yu et al. A parallel algorithm for multi-AGV systems
CN110412990B (en) AGV collision prevention method used in factory environment
Verma et al. Traffic management of multi-AGV systems by improved dynamic resource reservation
CN116257042A (en) Trajectory planning method for mobile robot and computer program product
JP7331835B2 (en) Self-propelled device, self-propelled method, and program
CN119124205A (en) A collaborative path planning method for multi-intelligent handling AGV conflict coordination and dynamic obstacle avoidance
CN116257044A (en) Multi-robot trajectory planning method and computer program product
CN117636641B (en) Inter-vehicle cooperative carrying method and device for vehicle carrying robot
CN112034845A (en) A multi-intelligent subject obstacle avoidance method, system and computer-readable storage medium
Mu et al. Research on two-stage path planning algorithms for storage multi-AGV
CN115416656B (en) Automatic driving lane changing method, device and medium based on multi-target track planning
Zhang et al. An optimization-based trajectory planning method with polynomial curves
Nguyen et al. A constant-time algorithm for checking reachability of arrival times and arrival velocities of autonomous vehicles

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
CB02 Change of applicant information
CB02 Change of applicant information

Country or region after: China

Address after: 100096 building C4, Jingcheng Shangde Zhizao Industrial Park, No.10, jianjiancheng East Road, Xisanqi street, Haidian District, Beijing

Applicant after: Lingdong Technology (Anhui) Co.,Ltd.

Address before: 100096 building C4, Jingcheng Shangde Zhizao Industrial Park, No.10, jianjiancheng East Road, Xisanqi street, Haidian District, Beijing

Applicant before: LINGDONG TECHNOLOGY (BEIJING) Co.,Ltd.

Country or region before: China