Robot path planning and control
Patent Information
- Application Number
- PCT/EP2026/055597
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-03-12
- Filing Date
- 2026-03-02
- Publication Date
- 2026-09-17
Smart Images

Figure EP2026055597_17092026_PF_FP_ABST
Abstract
Description
[0001] 1 / 18 KUKA Deutschland GmbH 2024P00067WO
[0002] Description
[0003] Robot path planning and control
[0004] The present invention relates to a method for planning a robot's path, a method for controlling a robot to follow the planned path, and a system or computer program or computer program product for carrying out a method described herein.
[0005] In practice, it is known that for human-robot collaboration (HRC) a virtual safety space is defined for a robot, in which people are allowed to be present during a movement of the robot in order to cooperate with it, whereby the speed of the robot within the safety space is reduced for safety reasons.
[0006] One objective of an embodiment of the present invention is to improve robot path planning.
[0007] This problem is solved in particular by a method having the features of claim 1.
[0008] One objective of an embodiment of the present invention is to improve the operation of a robot.
[0009] This problem is solved in particular by a method with the features of claim 8 for controlling a robot described herein, wherein a (target) path of the robot is determined or planned according to a method described herein and the robot is controlled to follow this determined (target) path.
[0010] Claims 9 and 10 describe a system or computer program or...
[0011] A computer program product for carrying out a method described herein under protection. The dependent claims relate to advantageous further developments.
[0012] According to one embodiment of the present invention, a robot, in a further development a robot arm, in one embodiment an articulated robot, has a, in a 2 / 18 KUKA Deutschland GmbH 2024P00067WO
[0013] Further development stationary or movable, base and an end effector, which are connected by a chain of (successive) joints, in one embodiment at least three, in particular at least five and / or at most eight joints, in a further development a chain of six joints, wherein in one embodiment one or more of the joints may be rotational or swivel joints and / or one or more of the joints may be translational or shear joints.
[0014] The present invention is particularly advantageous for redundant or seven- or multi-jointed robots, since simple, fast and / or reliable path planning can be provided for these more complex kinematics, and is also advantageous (especially) for six-jointed robots, as are particularly common in industry, since safety and / or process speed can be increased in a simple, fast and / or reliable way even without exploiting redundancies.
[0015] According to one embodiment of the present invention, to plan a (target) path (of the robot), a target path (of the robot) from a starting pose via at least one intermediate pose to a target pose is determined or planned, preferably using computer-aided or -implemented methods.
[0016] In one embodiment, and in a further development, the starting pose is predefined, preferably by a user or an application; in another embodiment, the starting pose is stored or retrieved from memory. In another embodiment, and in a further development, the target pose is additionally or alternatively predefined, preferably by a user or an application; in another embodiment, the target pose is stored or retrieved from memory. A pose within the meaning of the present invention can be defined, in particular, by the position of the robot's joints and / or a position and / or orientation of a robot-fixed reference, especially a TCP or end effector.
[0017] According to one embodiment of the present invention, in the intermediate position a reference of the robot, preferably end-effector-fixed, or in a further development a TCP or end effector or the like, is positioned at a boundary of a virtual safety space for the robot. In one embodiment, in a 3 / 18 KUKA Deutschland GmbH 2024P00067WO
[0018] Further training involves defining the virtual safety space. In one embodiment, the boundary of the safety space is predefined, preferably by a user or an application. In another embodiment, the safety space or its boundary is stored or retrieved from memory. In one embodiment, the safety space is a space in which persons are present during robot operation, and in another embodiment, may cooperate with the robot. Preferably, at least temporarily, one or more persons are actually present and cooperate with the robot. Additionally or alternatively, a speed, in particular a nominal and / or (permissible) maximum speed of the robot within the safety space (compared to a corresponding speed outside the safety space), is reduced, thereby advantageously increasing safety.The present invention is particularly suitable for HRC applications with such virtual safety spaces.
[0019] According to one embodiment of the present invention, a section of the target path, which lies within the safety space and extends from the intermediate position (to) to the target position and is therefore referred to as the target section, is determined by optimizing a quality criterion, which, without limiting generality, is referred to as the first quality criterion and improves (under otherwise identical conditions) the fewer joints of the chain there are between a joint closest to the end effector (in the chain of joints) and the joint of the chain closest to the base that is to be adjusted or is adjusted for or during the traversal of this target section and which is the joint closest to the base in the chain of joints.
[0020] For example, if only the joint closest to the end effector needs to be adjusted to move the robot from the intermediate pose to the target pose, then the joint closest to the end effector is also the (base-nearest to be adjusted or adjusted) joint in the chain that needs to be adjusted or is adjusted during the traversal of the target section and is the base-nearest joint in the chain of joints, since it is the only joint that needs to be adjusted or is adjusted during the traversal of the target section. If, on the other hand, only the joint closest to the end effector and the next joint in the chain, or even just the second-nearest joint, need to be adjusted...4 / 18 KUKA Deutschland GmbH 2024P00067WO
[0021] If the joints of a robot need to be adjusted to move from an intermediate position to a target position, then the joint closest to the second effector is the joint in the chain that needs to be adjusted or is adjusted, since it is adjusted during the movement along the target section and is closer to the base than the joint closest to the end effector. Conversely, if, for example, all six joints of a six-joint robot need to be adjusted to move from the intermediate position to the target position, then the joint closest to the base is the one in the chain that needs to be adjusted during the movement along the target section and is the joint closest to the base in the chain of joints.
[0022] In general, if a robot with (exactly) n joints, where the joint closest to the end effector is designated as joint i = 1, the next joint in the chain (or second-nearest end effector) is designated as joint i = 2, and so on, and the joint closest to the base in the chain is designated as joint i = n, and joint i = j (1 < j < n) and, if necessary, one or more of the joints i < j and no joint i > j need to be adjusted from the chain {joint i = 1 , joint i = 2, ... , joint i = n} to traverse the target section, then this joint i = j is the joint closest to the base to be adjusted or adjusted in the chain.
[0023] In other words, starting from the joint closest to the end effector, and possibly taking into account further aspects or quality functions in the first quality criterion, only joints as close to the end effector as possible are adjusted when traversing the target section or when moving the robot or its reference within the virtual safety space. This advantageously reduces the impact that occurs in the event of a collision between the end effector and an obstacle, especially a person, within the safety space, since fewer and often lighter robot segments are moved and contribute to the effective mass. At the same time, this quality criterion or aspect can...
[0024] The quality functions of the first quality criterion can be easily, quickly and / or reliably considered or evaluated during optimization.
[0025] In one embodiment, the first quality criterion is defined such that it improves the shorter the (target section or partial) path length is between the intermediate pose and the target pose. The number of joints in the chain between the joint closest to the end effector and the joint closest to the base to be adjusted can be used as a factor. 5 / 18 KUKA Deutschland GmbH 2024P00067WO
[0026] or adjusted joint and this path length and optionally one or more further aspects or quality functions of the first quality criterion preferably by means of a multi-criteria optimization, for example a weighted sum, a hierarchical optimization, in which (only) for two or more possible target sections with the same number of joints between the end-effector-nearest joint and the base-nearest joint to be adjusted or adjusted, one or more further aspects or quality functions of the first quality criterion, preferably (also) the (target section or partial) path length, are additionally taken into account, or the like, are simultaneously optimized.
[0027] Similarly, the number of joints in the chain between the joint closest to the end effector and the joint closest to the base (to be adjusted or adjusted) can, alone or together with one or more other aspects or performance functions, constitute the first performance criterion. This can preferably be optimized simultaneously using multi-criteria optimization, such as a weighted sum, a hierarchical optimization (where, only if there are two or more possible target segments with the same number of joints between the joint closest to the end effector and the joint closest to the base (to be adjusted or adjusted), one or more additional aspects or performance functions of the first performance criterion are considered), or the like. For example, energy consumption and / or jerk can be reduced, or only the path length between the start position and intermediate position, or between the intermediate position and target position, can be considered.
[0028] In one embodiment, a section of the target path, located outside the safety zone and extending from the start position to or into the intermediate position, and therefore referred to as the start section, is determined by optimizing a second quality criterion that differs from the first. This advantageously allows the number of joints in the chain between the joint closest to the end effector and the joint closest to the base, which must be adjusted to traverse the start section, to be disregarded outside the safety zone. The start section can then be determined accordingly, for example, with regard to travel time and / or energy efficiency, or similar criteria. 6 / 18 KUKA Deutschland GmbH 2024P00067WO
[0029] The underlying idea is therefore to consider the number of joints in the chain between the joint closest to the end effector and the joint closest to the base, which is to be adjusted or is adjusted to travel a section of the track, only when necessary or only within the safety area.
[0030] In one embodiment, the second quality criterion is defined such that it improves the shorter the (initial segment or partial) path length between the starting position and the intermediate position. This path length can form the second quality criterion alone or together with one or more other aspects or quality functions. This second quality criterion is preferably optimized simultaneously using a multi-criteria optimization, for example, a weighted sum, a hierarchical optimization, or the like.
[0031] In one implementation, the optimization of the first quality criterion is an optimization subject to one or more constraints, which are specified in a training course, preferably by a user or an application.
[0032] Additionally or alternatively, in one implementation, the optimization of the second quality criterion is an optimization subject to one or more constraints specified in a further development process, preferably by a user or an application. In one implementation, at least one constraint considered in the optimization of the first quality criterion is identical to a constraint considered in the optimization of the second quality criterion. Additionally or alternatively, in another implementation, at least one constraint considered in the optimization of the first quality criterion is not considered in the optimization of the second quality criterion, and / or at least one constraint considered in the optimization of the second quality criterion is not considered in the optimization of the first quality criterion. This allows the start and / or end sections to be planned particularly advantageously.
[0033] In a further training, a constraint considered in the optimization of the first quality criterion is the avoidance of a collision between the robot and at least one predefined virtual obstacle, preferably at least one predefined virtual obstacle that lies at least partially within the safety area. Additionally or alternatively, in one embodiment, a [missing information - likely a specific feature or method] is considered. (7 / 18 KUKA Deutschland GmbH 2024P00067WO)
[0034] Optimization of the second quality criterion took into account the constraint of avoiding a collision between the robot and at least one predefined virtual obstacle. This allows the start and / or finish sections to be planned particularly advantageously.
[0035] In one embodiment, to determine the target section, two or more different potential target sections or candidates for target sections are examined, which lead to the target position from different intermediate poses within the safety space ("target section candidates"), wherein in two or more of these different intermediate poses or intermediate poses of these different target section candidates the robot's reference is positioned at different points on the boundary of the virtual safety space and / or in two or more of these different intermediate poses or intermediate poses of these different target section candidates the robot's reference is positioned in different orientations on the boundary of the virtual safety space.
[0036] In other words, for several different intermediate positions, it is determined or checked how many joints of the chain are between the joint closest to the end effector and the joint of the chain closest to the base that is to be adjusted or has been adjusted, and, if necessary taking into account one or more further aspects or quality functions of the first quality criterion, the target path is planned or determined with the one of these target section candidates for which the first quality criterion is optimal.
[0037] According to one embodiment of the present invention, a (target) path of the robot is determined or planned according to a method described herein, and the robot is controlled to follow this determined path.
[0038] According to one embodiment of the present invention, a system, in particular hardware and / or software, in particular programming technology, for planning a (target) path of a robot described herein, in a further development for controlling the robot, is set up and / or has:
[0039] Means for determining a target path of the robot from a starting pose via at least one intermediate pose to a target pose such that: 8 / 18 KUKA Deutschland GmbH 2024P00067WO
[0040] In the intermediate pose, a reference point of the robot is positioned at a boundary of a virtual safety space for the robot; and
[0041] A target section of the intended path within the safety space from the intermediate position to the target position is determined by optimizing a first quality criterion, which improves the fewer joints of the chain there are between a joint closest to the end effector and the joint of the chain that needs to be adjusted to traverse this target section and is the joint closest to the base in the chain.
[0042] In one version, the system or its means has:
[0043] - Means of determining a starting section of the target trajectory outside the safety area from the starting position to the intermediate position, optimizing a second quality criterion different from the first; and / or
[0044] - Means of checking different target section candidates within the safety space from different intermediate poses to the target pose for determining the target section, wherein in at least two of the different intermediate poses the robot's reference is positioned at different locations on the boundary of the virtual safety space and / or in different orientations on the boundary of the virtual safety space; and / or
[0045] - Means of controlling the robot to follow the determined or planned (target) path.
[0046] A system and / or means according to the present invention can be configured as hardware and / or software, in particular comprising at least one processing unit, preferably a microprocessor unit (CPU), graphics processing unit (GPU), or the like, preferably connected to a storage and / or bus system via data or signals, and / or comprising one or more programs or program modules. The processing unit can be configured to execute instructions implemented as a program stored in a storage system, to acquire input signals from a data bus, and / or to output signals to a data bus. A storage system can comprise one or more, in particular different, storage media, in particular optical, magnetic, solid-state, and / or other non-volatile media. 9 / 18 KUKA Deutschland GmbH 2024P00067WO
[0047] A program can be designed in such a way that it embodies or is capable of executing the procedures described herein, enabling the processing unit to perform the steps of such procedures and thus, in particular, to plan the path or control the robot. A computer program product can, in one version, include a storage medium, in particular a computer-readable and / or non-volatile medium, for storing a program or instructions, or with a program or instructions stored thereon. In one version, the execution of this program or these instructions by a system or controller, in particular a computer or an arrangement of several computers, causes the system or controller, in particular the computer(s), to execute a procedure described herein or one or more of its steps, or the program or instructions are configured for this purpose.
[0048] In one embodiment, one or more, in particular all, steps of a procedure described herein are fully or partially computer-implemented, or one or more, in particular all, steps of the procedure are fully or partially automated, in particular by the system or its means. In one embodiment, the system includes the robot.
[0049] Further advantages, features, and advantageous embodiments of the present invention will become apparent from the dependent claims and the exemplary embodiments. These are shown, in part schematically:
[0050] Fig. 1: a robot traversing a planned path according to an embodiment of the present invention in a starting pose;
[0051] Fig. 2: the robot in an intermediate pose and another intermediate pose checked during planning;
[0052] Fig. 3: the robot in a target pose; and
[0053] Fig. 4: A method for controlling the robot according to one embodiment of the present invention. 10 / 18 KUKA Deutschland GmbH 2024P00067WO
[0054] Fig. 4 shows a method for controlling a robot 10 shown in Fig. 1-3 according to an embodiment of the present invention, which has a base 11 and an end effector 13 connected by a chain of joints 10.1 - 10.6.
[0055] In step S10, the following parameters, for example those specified by a user, are provided, for example read in:
[0056] - a starting pose (see Fig. 1) of the robot;
[0057] - a target pose (see Fig. 3: “Z”) of the robot;
[0058] - a (boundary 31 of a) virtual safety space 30 for the robot 10; and - if applicable (virtual) obstacles 32 and / or (other) requirements to be taken into account in the path planning.
[0059] In step S20, the boundary 31 is discretized into various locations, and for each of these locations, at least one virtual intermediate pose of the robot is determined in which a reference of the robot 10, in this embodiment a TCP 12, is positioned at the boundary 31. Additionally, virtual intermediate poses of the robot can be determined in which the reference 12 is positioned at the same discretized location but has different orientations. Two intermediate poses are shown as examples in Fig. 2 (solid and dashed lines, respectively) and identified as P1 and P2.
[0060] Now, in step S30, for each of the determined virtual intermediate poses, it is first checked whether – starting from the respective intermediate pose, avoiding a collision with the obstacle 32, and if necessary taking into account or fulfilling the other specified requirements to be considered in path planning – the target pose can be reached solely by adjusting the distal joint 10.1 of the six-jointed articulated robot 10, which is closest to its end effector 13. If this is the case, the corresponding partial path from the intermediate pose to the target pose is determined as a potentially possible target segment candidate, for which the number of joints in the chain 10.1–10.6 between the joint 10.1 closest to the end effector and the joint 10.1 of the chain that needs to be adjusted to traverse this target segment and is the joint closest to the base in the chain is zero. Then the next intermediate position is checked. 11 / 18 KUKA Deutschland GmbH 2024P00067WO
[0061] Otherwise, i.e., if the target pose (starting from the respective intermediate pose, avoiding a collision with obstacle 32, and if necessary, observing or fulfilling the other specified requirements to be considered during trajectory planning) cannot be reached solely by adjusting the distal joint 10.6, it is now checked whether (starting from the respective intermediate pose, avoiding a collision with obstacle 32, and if necessary, observing or fulfilling the other specified requirements to be considered during trajectory planning) the target pose can be reached by adjusting the joint 10.5 nearest to the second end-effector, and if necessary, also by adjusting the joint 10.6 nearest to the end-effector. If this is the case, this corresponding partial trajectory from the intermediate pose to the target pose is determined as a potentially possible target segment candidate, for which the number i mThe value in the joint of the chain between the end-effector-adjustable joint 10.1 and the base-adjustable joint 10.2 is one. This is the case, for example, for the intermediate position P1 shown in extensible in Fig. 2. Then the next intermediate position is checked again.
[0062] This procedure is continued until either a potentially possible target segment candidate has been identified for the corresponding intermediate position or it has been determined that, starting from the intermediate position itself, the target position cannot be reached by adjusting all joints 10.1–10.6. For example, for the intermediate position P2 shown with dashed lines in Fig. 2, joint 10.5 must also be adjusted to reach the target position, so that the number of joints in the chain between the end-effector-nearest joint 10.1 and the base-nearest joint 10.5 to be adjusted is three, and this number is assigned to this potentially possible target segment candidate.
[0063] Now, in step S40, from all the potentially possible target section candidates determined in this way, the target section (candidate) is selected for which the weighted sum S = wi • imin + w2• L F ig.2 >Fi g .3 / L o with the user-specified weighting factors wi, w2 (where a sufficiently strong weighting wi » w2 primarily selects a target segment candidate in which only joints as close as possible to the end effector are to be adjusted or are adjusted), the path length from the intermediate pose and the target pose and a scaling path length L o The minimum is selected. Likewise, the 12 / 18 KUKA Deutschland GmbH 2024P00067WO
[0064] The target section can also be selected using a hierarchical optimization, in which the target section with the same number of joints between the end-effector-nearest joint and the base-nearest joint to be adjusted or adjusted is selected, and only if two or more possible target sections have the same (minimal) number of joints between the end-effector-nearest joint and the base-nearest joint to be adjusted or adjusted, the path length between the intermediate pose and the target pose is additionally taken into account, and the target section with the minimum number of joints between the end-effector-nearest joint and the base-nearest joint to be adjusted or adjusted and the minimum path length from the intermediate pose to the target pose is selected.
[0065] For the selected target section with the minimum number of joints between the joint nearest to the end effector and the joint nearest to the base to be adjusted or adjusted, in step S40 a starting section of the target path outside the safety space 30 from the starting position to the intermediate position of the selected target section is determined under optimization of a second quality criterion different from the first quality criterion, in the exemplary embodiment a or the starting section with minimum path length between the starting position and this intermediate position.
[0066] This results in a target path, in which
[0067] - for moving along the target section within the safety area from the intermediate pose to the target pose, the number of joints between the joint closest to the end effector and the joint to be adjusted or adjusted closest to the base is minimal, or only joints as close as possible to the end effector are to be adjusted or are adjusted; and in doing so
[0068] - the starting section track length between the starting pose and the intermediate pose, and the finishing section track length between the intermediate pose and the finishing pose, and thus also the total track length between the starting pose and the finishing pose, is minimal; and thereby
[0069] - a collision of the robot with obstacle 32 was avoided and, if necessary, other specified requirements to be considered during path planning were taken into account or fulfilled. 13 / 18 KUKA Deutschland GmbH 2024P00067WO
[0070] In this way, the effective mass within the safety area is reduced, thus increasing safety or allowing for higher speeds.
[0071] In step S50, a controller 20, which can also perform the aforementioned steps, controls the robot 10 to follow this determined or planned (target) path. Accordingly, steps S10-S40 illustrate a method for planning the path according to one embodiment of the present invention.
[0072] In the present disclosure, "has an X" does not generally imply an exhaustive list, but is a shorthand for "has at least one X" and also includes "has two or more X" as well as "has Y in addition to X". Although exemplary embodiments were explained in the preceding description, it should be noted that a multitude of variations are possible. Furthermore, it should be noted that the exemplary embodiments are merely examples and are not intended to limit the scope of protection, applications, or structure in any way.Rather, the preceding description provides the skilled person with a guideline for implementing at least one exemplary embodiment, whereby various modifications, particularly with regard to the function and arrangement of the described components, can be made without leaving the scope of protection as defined by the claims and these equivalent combinations of features. 14 / 18 KUKA Deutschland GmbH.
[0073] 2024P00067WO
[0074] List of reference signs
[0075] 10 robots
[0076] 10.1 end-effector-nearest joint
[0077] 10.2 Second effector next joint 10.3 - 10.6 Further joints
[0078] 11 Basic
[0079] 12 TCP (Reference)
[0080] 13 End effector
[0081] 20 Control
[0082] 30 Security Room
[0083] 31 Safety area boundary
[0084] 32nd obstacle
[0085] P1, P2 Reference position
[0086] Z Target pose
Claims
15 / 18 KUKA Deutschland GmbH 2024P00067WO Patent claims 1. Method for planning a path of a robot (10) having a base (11) and an end effector (13) connected by a chain of joints (10.1-10.6), wherein a target path of the robot is determined from a starting pose via at least one intermediate pose to a target pose (S30, S40); wherein in the intermediate position a reference (12) of the robot is positioned at a boundary (31) of a virtual safety space (30) for the robot; and a target section of the desired path within the safety space (30) from the intermediate position to the target position is determined by optimizing a first quality criterion, which improves the fewer joints of the chain there are between an end-effector-nearest joint (10.1) and the joint of the chain that is to be adjusted to traverse this target section and is the base-nearest joint in the chain.
2. Method according to claim 1, characterized in that the first quality criterion improves the shorter the path length between the intermediate pose and the target pose.
3. Method according to one of the preceding claims, characterized in that a starting section of the target path outside the safety area from the starting position to the intermediate position is determined by optimizing a second quality criterion different from the first quality criterion.
4. Method according to the preceding claim, characterized in that the second quality criterion improves the shorter the path length between the starting pose and the intermediate pose.
5. A method according to one of the preceding claims, characterized in that the optimization of the first quality criterion and / or the optimization of the second quality criterion is an optimization subject to one or more constraints. 16 / 18 KUKA Deutschland GmbH 2024P00067WO 6. Method according to the preceding claim, characterized in that a constraint taken into account in the optimization of the first quality criterion and / or the optimization of the second quality criterion is the avoidance of a collision of the robot with at least one predetermined virtual obstacle (32).
7. Method according to one of the preceding claims, characterized in that, in order to determine the target section, various target section candidates within the safety space are tested from different intermediate poses to the target pose, wherein in at least two of the different intermediate poses the reference of the robot is positioned at different locations on the boundary of the virtual safety space and / or in different orientations on the boundary of the virtual safety space.
8. Method for controlling a robot (10) having a base (11) and an end effector (13) connected by a chain of joints (10.1-10.6), wherein a robot path is determined according to a method according to one of the preceding claims (S30, S40); and the robot is controlled to follow this determined path (S50).
9. System for planning the path of a robot (10) comprising a base (11) and an end effector (13) connected by a chain of joints (10.1-10.6), in particular for controlling the robot (10), wherein the system is configured and / or comprises a method according to one of the preceding claims: Means for determining a target path of the robot from a starting pose via at least one intermediate pose to a target pose such that in the intermediate pose a reference (12) of the robot is positioned at a boundary (31) of a virtual safety space (30) for the robot; and A target section of the intended path within the safety area from the intermediate pose to the target pose is determined by optimizing a first quality criterion, which improves the fewer joints of the chain there are between a joint closest to the end effector (10.1) and the joint of the chain that 17 / 18 KUKA Deutschland GmbH 2024P00067WO to adjust for driving down this target section and is the joint closest to the base in the chain.
10. Computer program or computer program product, wherein the computer program or computer program product contains instructions, in particular stored on a computer-readable and / or non-volatile storage medium, which, when executed by one or more computers or a system according to the preceding claim, cause the computer(s) or system to perform a method according to any one of claims 1 to 8.