Planning robot trajectory and robot control

By dividing the application into multiple stages and setting constraints and priority for each stage, gradually planning the robot trajectory, solving the problems of complexity and inefficiency of trajectory planning in the existing technology, and achieving efficient and accurate trajectory planning and control.

CN119768255APending Publication Date: 2025-04-04KUKA DEUT GMBH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380061671.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-08-24
Filing Date
2023-07-17
Publication Date
2025-04-04

AI Technical Summary

Technical Problem

When planning and controlling robot trajectory, it is difficult to effectively deal with the complex relationship between multiple constraints, resulting in long calculation time, low performance and easy to fall into a dead end of local minimum values.

Method used

By dividing the application into multiple continuous stages and presetting different constraints for each stage, assigning priority, and gradually planning the trajectory. The specific steps include planning the highest priority partial trajectory, planning the second-most priority partial trajectory based on the partial trajectory, and planning the lowest priority partial trajectory if necessary.

Benefits of technology

It significantly reduces the search space of the optimization method, improves the efficiency and accuracy of trajectory planning, avoids the risk of falling into local minimums, and achieves more efficient robot trajectory planning and control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119768255A_ABST
    Figure CN119768255A_ABST
Patent Text Reader

Abstract

A method for trajectory planning of a robot, comprising the steps of: dividing (S10) an application into at least two consecutive phases; presetting (S20) constraint conditions for these phases; assigning (S30) priorities for these constraints; planning (S40) a portion of the trajectory for executing a stage in which a constraint condition to which a higher priority is assigned is preset, taking into account the constraint condition to which the higher priority is assigned; then planning (S50) a partial trajectory for executing a stage in which a constraint condition assigned with a lower priority is preset on the basis of the planned partial trajectory while taking into account the constraint condition assigned with the lower priority; and planning (S70) a trajectory of the robot, the planned partial trajectories being connected to one another in the transition region, and the connected partial trajectories forming the trajectory of the robot or a part of the trajectory.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a method for planning a trajectory of a robot to perform an application or to control a robot, and to a system, a computer program or a computer program product for performing the method described herein. Background Art

[0002] In order to carry out an application with a robot, its trajectory must usually be planned. In one embodiment of the invention, the trajectory of a robot is understood in a professional manner as a sequence of positions q of the robot or its (movement) axes or joints. i . In one embodiment of the invention, the position of the robot can be defined in a manner professional in the field by the position of the (movement) axes or joints of the robot, such as axis angles or joint angles, or by a preferably six-dimensional pose X of a robot-specific reference object, in particular an end effector or TCP, if necessary in combination with additional redundant parameters (such as elbow angles or redundant angles, etc.), or defined in other ways, in particular presetting. In an embodiment of the invention, a pose (Pose), in particular a pose of a robot-specific reference object, defines a one-dimensional, two-dimensional or three-dimensional position and / or a one-dimensional, two-dimensional or three-dimensional direction (of a robot-specific reference object) in a manner professional in the field; in the present invention, the robot-specific reference object can in particular be the end effector, end flange or end segment or TCP of the robot, or be fixed (ortsfest) relative to it.

[0003] In particular, if the robot is redundant with respect to the application, for example, a seven-axis robot arm is required to move its end effector into a predetermined three-dimensional position without a predefined orientation, then optimization methods are used according to internal practice, in which certain constraints are already predefined. For example, the robot is required to move its end effector from the starting or current posture or position into the initial posture of the machining, inspection and / or measuring path without collision and as quickly and / or energy-saving as possible to machine, inspect or measure the workpiece, and then to guide the machining, inspection and / or measuring tool along the workpiece contour on the machining, inspection and / or measuring path without collision to the end posture of the machining, inspection and / or measuring path, and if necessary to follow the workpiece contour with its end effector, if necessary to achieve a predefined orientation of the end effector (for example, to orient the tool perpendicular to the workpiece surface).

[0004] As can be clearly seen from this example, in robot applications it is often necessary to comply with different constraints in stages, some of which are more important than others (e.g., in the above example, following the contour of the workpiece may be more important than driving into the initial pose as quickly and energy-efficiently as possible). The invention is not limited to the purely exemplary application and / or use of the optimization method with respect to robots using redundancy, but it represents a particularly advantageous application of the invention.

[0005] One possible approach is to plan the entire trajectory completely or over its entire length for the application and to take into account the different constraints in pieces. However, this represents a very complex optimization problem that not only places high demands on computing time and computing performance, but can also lead to undesirable dead ends in local minima. Summary of the invention

[0006] The object of the present invention is to improve trajectory planning and / or control of a robot.

[0007] The object of the invention is achieved by a method having the features of claim 1 or 8. Claims 9 and 10 protect a system or a computer program or a computer program product for carrying out the method described herein. The dependent claims provide preferred developments.

[0008] According to one embodiment of the present invention, a method for planning a robot trajectory to perform an application (using a robot; "robot application" or "robot trajectory") comprises the following steps:

[0009] - the application is divided into at least two consecutive phases, in one embodiment, a transition region is predefined, in an extension, a transition posture of a robot-specific reference object or a transition position of the robot between the two consecutive phases is predefined; in one embodiment, the application is divided into at least three consecutive phases, in particular a transition region is predefined, in an extension, each transition posture of a robot-specific reference object or a transition position of the robot between each two consecutive phases is predefined;

[0010] - presetting a constraint condition for one of at least two consecutive stages, and presetting another different constraint condition for another of the at least two consecutive stages; in one embodiment, presetting a constraint condition for each of at least three consecutive stages, wherein preferably at least two of the constraints are different from each other; and

[0011] - Assign a priority (rank) to each of these constraints.

[0012] In one embodiment, the robot has at least three, in particular at least six, in one embodiment at least seven (movement) axes or joints, in particular rotation axes or rotation joints. In one embodiment, the robot has a robot arm, in particular a stationary or mobile robot arm, which has at least three, in particular at least six, in one embodiment at least seven (movement) axes or joints, in particular rotation axes or rotation joints. In one embodiment, the robot has a robot-specific reference object, which can in particular be an end effector, an end flange or an end segment or TCP of the robot, or can be fixed for this purpose, wherein the application can include postures, in particular one-dimensional, two-dimensional or three-dimensional positions and / or one-dimensional, two-dimensional or three-dimensional orientations of the robot-specific reference object, which positions or orientations should be positions or orientations that the robot needs to approach or reach sequentially or stepwise with the robot-specific reference object in order to or when executing the application.

[0013] For such robots, the invention is particularly suitable due to its field of application and kinematic properties.

[0014] In one embodiment, the division of the application into successive phases is based on user input or user settings or higher-level automatic application planning and / or on the basis of different work processes or work objectives of the individual application phases, such as, on the one hand, transfer or transport processes or transfer or transport phases, in particular from and / or to a work station and / or from and / or to a conveying or storage station, and on the other hand, (processing) work processes or (processing) work phases. In one embodiment, each two successive phases are bounded by a transition region, in an extension, by a robot-specific reference object transition posture of the robot or a transition position of the robot; wherein, in an extension, the transition region(s) are predefined, in one embodiment, when or for the division of the application into the phases, and / or are predefined based on user input or user settings or higher-level automatic application planning.

[0015] One or more constraints may (respectively) include: avoiding collisions; (adopting) one or more predetermined postures specific to a reference object of the robot; and / or optimizing the robot's travel time, load, in particular stress and / or acceleration; and / or the energy requirements of the robot for executing corresponding stages of the application, etc., and / or describe one-dimensional or multi-dimensional constraints for the optimization method or are set as one-dimensional or multi-dimensional constraints for the optimization method.

[0016] In one embodiment, the priority (level) assigned to the constraint condition is based on user input or user setting, or is automatically performed, and in an extended solution, is based on a preset level of the constraint condition, etc. Here, the priority (level) can also be defaulted. Assignment, so that, for example, by presetting a (higher or lower) priority (rank) for one of two constraints, the constraint has a higher or lower priority relative to the other constraint, without explicitly assigning a priority (rank) to the other constraint. Correspondingly, for example, by presetting a higher and lower priority (rank) for two of three constraints, the two constraints can have a higher or lower priority relative to the third constraint, without explicitly assigning a priority (rank) to the third constraint.

[0017] According to one embodiment of the present invention, the method comprises the following steps:

[0018] - planning a sub-trajectory (“highest priority sub-trajectory”) for executing the at least two, if necessary at least three, phases of the phases which are predefined to be assigned a higher or highest priority constraint, taking into account the (highest priority) constraint;

[0019] - a partial trajectory ("second priority partial trajectory") is then planned for executing the phases of at least two, if necessary at least three phases for which constraints with (subordinate) lower priority are assigned, taking into account the constraints with (subordinate) lower priority and based on the previously planned highest priority partial trajectory, in one embodiment based on or using a posture of a robot-specific reference object and / or a position of the robot at an end of the previously planned partial trajectory (which faces the partial trajectory to be planned) so that the two partial trajectories advantageously have this posture or position in their transition area;

[0020] - Optionally, a partial trajectory is then planned for executing at least three stages of the pre-set constraints assigned to the lowest third priority level, taking into account the constraints assigned to the lowest third priority level and based on a previously planned partial trajectory of the highest priority or second priority, in one embodiment based on or using a posture of a robot-specific reference object and / or the position of the robot at one end of a previously planned partial trajectory of the highest priority or second priority, which end just faces the partial trajectory to be planned, so that the two partial trajectories advantageously have this posture or position in their transition area; and - Planning a trajectory of the robot for executing the application, wherein the planned partial trajectory of the highest priority level and the planned partial trajectory of the second priority level are connected to each other in a transition area, and if necessary, the third partial trajectory or the last planned partial trajectory is connected in another transition area to the partial trajectory of the highest priority level and the second priority partial trajectory used to plan the third partial trajectory; and these connected partial trajectories form the trajectory of the robot or part of this trajectory.

[0021] The embodiments of the present invention are based on the idea that the constraints to be observed in each phase are prioritized, and then a portion of the trajectory is planned (respectively) for the phase with the higher priority constraint, and the planned portion of the trajectory is taken into account when subsequently planning the portion of the trajectory for the phase with the lower priority constraint. In a preferred extension, when planning the portion of the trajectory that still needs to be planned, the posture of the robot-specific reference object and / or the position of the robot at the end of the planned portion of the two partial trajectories facing the portion of the two partial trajectories that still need to be planned is used, in one embodiment as the posture or position of the partial trajectory to be planned. It can be clearly seen from this that in one embodiment, the planning of the partial trajectory that still needs to be planned can be improved; in one embodiment, in particular, the search space of the optimization method can be significantly reduced, and / or the partial trajectory that still needs to be planned can be planned so that the planned portion of the trajectory can be executed, in particular, it can be executed directly. Likewise, the posture or position of an already planned trajectory may first be further processed, for example transformed, in particular moved and / or rotated or adjusted in a predetermined manner, and then used as the posture or position of the partial trajectory to be planned, or the partial trajectory may be planned in another, preferably predetermined manner based on the already planned partial trajectory.

[0022] In one embodiment, at least one phase of the application comprises a processing phase, an inspection phase and / or a measuring phase for robot-assisted processing and / or inspection and / or measurement of a workpiece, in particular for holding and / or moving a processing tool, an inspection tool and / or a measuring tool while a robot-guided processing tool, an inspection tool and / or a measuring tool processes or inspects or measures the workpiece, or for holding and / or moving a workpiece while a processing tool, an inspection tool and / or a measuring tool processes or inspects or measures the robot-guided workpiece, and the partial trajectory planned for the execution of this phase comprises, and can in particular be, a processing trajectory, an inspection trajectory and / or a measuring trajectory of the robot. In this context, processing refers in particular to material removal processes such as grinding, sawing, drilling, etc., material application processes such as painting, coating, etc., connection processes such as welding, bonding, riveting, etc., and separation processes such as, for example, sawing, etc. In this context, measurement is particularly understood as measurement (Vermessen, dimensional measurement).

[0023] Additionally or alternatively, in one embodiment, at least one phase of the application includes an entry phase for entering a processing trajectory, an inspection trajectory and / or a measuring trajectory or a conveying position or a storage position, and the partial trajectory planned for executing this phase includes, in particular, an entry trajectory of the robot.

[0024] Additionally or alternatively, in one embodiment, at least one phase of the application includes a departure phase for leaving a processing trajectory, an inspection trajectory and / or a measuring trajectory or a conveying position or a storage position, and the partial trajectory planned for executing this phase includes, in particular, a departure trajectory of the robot.

[0025] The present invention is particularly advantageous for such applications, in particular because of the constraints that often have to be observed in this context.

[0026] In one embodiment, when planning at least one partial trajectory to execute a phase of an application, a part of the constraints is taken into account, that is, the part of the constraints is pre-set for executing the previous phase and the subsequent phase of the application and is assigned a lower priority. In one embodiment, the part of the constraints preferably only relates to the transition area or posture of the reference object specific to the robot and / or the position of the robot at one end of the partial trajectory to be planned, which faces the partial trajectory for executing the previous or subsequent phase of the application and is assigned a lower priority. Thus, in one embodiment, even when planning partial trajectories to execute the phase of the application assigned a higher priority, the search space can be advantageously reduced and the planning can be improved. As an example and for illustration only, a situation can be considered: the entry processing trajectory, the inspection trajectory and / or the measuring trajectory are planned first, and then the processing trajectory, the inspection trajectory and / or the measuring trajectory itself is planned. In this case, it is advantageous that the direction pre-set or to be considered for the processing trajectory, the inspection trajectory and / or the measuring trajectory is already taken into account when planning the entry trajectory, or that (only) the redundancy that can be (still) provided for the subsequent partial trajectory to be planned, especially in the transition area, is fully utilized. Constraints in the sense of the present invention may include in particular predefined initial conditions and / or predefined end conditions of an application phase or a partial trajectory.

[0027] As already explained elsewhere, the invention is particularly advantageous for robots which are redundant with respect to one or more phases of the application, since in this case different constraints usually have to be taken into account in stages.

[0028] Preferably, one or more partial trajectories are (separately) planned by an optimization method, in one embodiment by the same optimization method. This is particularly advantageous in conjunction with prioritized constraints, and thus enables a multi-stage optimization, wherein each of these successive partial trajectories is (separately) optimized by means of an optimization method for the respective partial trajectories taking into account the respective constraints, if necessary based on the partial constraints of the already planned partial trajectories (which are connected in the transition region to the partial trajectory to be planned) and / or based on the partial trajectories to be subsequently planned (which are connected in the transition region to the partial trajectory to be planned).

[0029] According to one embodiment of the present invention, a method for controlling a robot comprises the following steps:

[0030] - planning the robot's trajectory according to the method described herein; and

[0031] - Controlling the robot along the planned trajectory, in particular executing the application.

[0032] According to one embodiment of the present invention, a system is designed in hardware and / or software technology, in particular program technology, to perform the method described herein and / or has:

[0033] - means for dividing the application into at least two consecutive phases, in one embodiment, by presetting a transition region, in one embodiment, by presetting a transition position of a robot-specific reference object or a transition position of the robot between the two consecutive phases, in one embodiment, by dividing the application into at least three consecutive phases, in particular by presetting a transition region, in one embodiment, by presetting each transition position of a robot-specific reference object or a transition position of the robot between every two phases of the three consecutive phases;

[0034] - means for presetting a constraint for one of at least two consecutive stages and for presetting a different constraint for another of the at least two consecutive stages, in one embodiment for each of at least three consecutive stages, wherein preferably at least two of the constraints are different from each other;

[0035] - means for assigning a priority (rank) to each of these constraints;

[0036] - means for planning a part of a trajectory ("highest priority part of the trajectory"), in order to execute the at least two, if necessary at least three, phases of the at least two phases which are predefined to be assigned a higher or highest priority constraint, taking into account the (highest priority) constraint;

[0037] - a device for subsequent planning of a partial trajectory ("second-priority partial trajectory"), for executing the phases of at least two, if necessary at least three phases for which constraints with (subordinate) lower priority are predefined, taking into account the constraints with (subordinate) lower priority and based on the previously planned highest-priority partial trajectory, in one embodiment based on or using a posture of a robot-specific reference object and / or a position of the robot at one end of the previously planned partial trajectory, which end faces the partial trajectory just being planned, so that the two partial trajectories advantageously have this posture or position in their transition area;

[0038] - if necessary, also having means for subsequent planning of a partial trajectory, in order to execute the phases of at least three phases for which the constraints assigned to the lowest third priority are predefined, taking into account the constraints assigned to the lowest third priority and based on the previously planned partial trajectory of the highest or second priority, in one embodiment based on or using the posture of a robot-specific reference object and / or the position of the robot at one end of the previously planned partial trajectory of the highest or second priority, which end is just facing the partial trajectory to be planned, so that the two partial trajectories advantageously have this posture or position in their transition area; and

[0039] - a device for planning a trajectory of a robot for executing an application, wherein the planned partial trajectory of the highest priority and the planned partial trajectory of the second priority are connected to one another in a transition region, and where appropriate, a third partial trajectory or a last planned partial trajectory is connected in another transition region to that partial trajectory of the highest priority and the second priority partial trajectory used for planning the third partial trajectory; and these connected partial trajectories form the trajectory of the robot or a part of the trajectory;

[0040] - and in one embodiment, there are also devices for controlling the robot to drive along the planned trajectory, in particular to execute an application.

[0041] In one embodiment, the system or its device is designed to consider the part of constraints that are predefined for executing the previous and next stages of the application and are assigned a lower priority when planning at least one partial trajectory to execute a stage of the application.

[0042] In one specific embodiment, the system or its device for planning a partial trajectory comprises an optimizer for planning a partial trajectory by means of an optimization method.

[0043] The system and / or device within the meaning of the present invention can be designed in hardware technology and / or software technology, in particular, it has: at least one processing unit, in particular a digital processing unit, in particular a microprocessor unit (CPU), a graphics card (GPU), etc., which is preferably connected to the storage system and / or the bus system for data or signals, and / or one or more programs or program modules. The processing unit can be designed to: process the instructions implemented as a program stored in the storage system; collect input signals from the data bus; and / or send output signals to the data bus. The storage system can have one or more, in particular different storage media, in particular optical, magnetic, solid and / or other non-volatile media. The program can be provided as follows: that is, it can embody or implement the method described herein, so that the processing unit can implement the steps of this method and thereby can plan trajectories or control robots in particular. In one embodiment, the computer program product can have, in particular, a computer-readable, non-volatile storage medium for storing programs or instructions or a storage medium on which a program is stored or on which instructions are stored. In one embodiment, the implementation of the program or the instruction causes a system or a controller, in particular a computer or a plurality of computer arrays, to execute the program or the instruction, so that the system or the controller, in particular one or more computers, executes the method described herein or one or more steps thereof, or the program or the instruction is designed for this purpose.

[0044] In one embodiment, one or more, in particular all steps of the method are fully or partially computer-implemented, or one or more, in particular all steps of the method are fully or partially performed automatically, in particular by the system or its device.

[0045] In one embodiment, the system has one or more robots. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] Further advantages and features are given by the dependent claims and the embodiments. To this end, the following is partially schematically shown:

[0047] Figure 1 : A method according to an embodiment of the present invention; and

[0048] Figure 2 : A system according to an embodiment of the present invention. DETAILED DESCRIPTION

[0049] Figure 2 A system according to an embodiment of the present invention is shown, which has a seven-axis robot (arm) 1 and a controller 2 for controlling the robot (arm) 1 or performing trajectory planning according to an embodiment of the present invention.

[0050] For example, the robot (arm) 1 needs to drive with its TCP from a starting posture or starting position (Startpose bzw.-stellung) into a preset initial posture S ("entry trajectory") of a processing trajectory, an inspection trajectory and / or a measurement trajectory, and then the TCP is guided along a preset route to a preset end posture E, and from there drives with its TCP to a target posture or position ("exit trajectory").

[0051] Constraints N need to be observed on the machining trajectory, inspection trajectory and / or measurement trajectory SE , such as preset routes, such as workpiece contours, collision-free and with preset directions for TCP.

[0052] Another constraint N needs to be followed on the entry trajectory S , such as the initial posture S, driving in without collision and as quickly as possible.

[0053] Another constraint N needs to be followed on the departure trajectory E , such as a target posture or position, to be driven in without collision and in the most energy-efficient way possible.

[0054] For trajectory planning, the above-mentioned application or the trajectory to be planned is first divided into a plurality of phases or partial trajectories in step S10, for example, one or more entry trajectories, processing or inspection or measurement or processing trajectories, inspection trajectories and / or measurement trajectories, and exit or exit trajectories. This division can be carried out in particular based on user input or user settings or higher-level automatic application planning and includes the setting of transition areas between the individual partial trajectories, and in one embodiment consists of them.

[0055] For these phases or partial trajectories, different constraints are predefined in step S20, in this example the above-mentioned constraint N for entering or entering the trajectory. S , used for processing or inspection or measurement or processing track, inspection track and / or measurement track N SE , or N for driving off or off track E Such pre-setting may be performed based on user input or user setting, or may be performed automatically, for example, based on the correspondence between pre-set constraint conditions and different application phase types or sub-application trajectory types.

[0056] In step S30, different priorities (levels) are assigned to different constraints. This assignment can be performed in particular based on user input or user settings or automatically, for example based on preset levels of constraints, etc. Thus, for example, following a preset direction along a machining track, an inspection track and / or a measurement track can minimize travel time and energy requirements, etc. The assignment based on user input or user settings can be particularly advantageous for the use of professional knowledge, since application engineers are usually best able to judge which constraints are the most important or not (too) important. In the above example, the constraint N for the machining track, the inspection track and / or the measurement track is SE Assigned the highest priority (level) for the constraint condition N that leaves the trajectory E is assigned the lowest priority (level) and is used for the constraint condition N of the entry trajectory S is assigned an intermediate priority (rank) that is lower than the constraint N assigned to the machining trajectory, the inspection trajectory and / or the measurement trajectory. SE The highest priority (level) of the departure trajectory and higher than the constraint N assigned to the departure trajectory E The lowest priority (level).

[0057] Now, in step S40, a portion of the trajectory is first planned, the constraints to be observed in the planning are assigned the highest priority (level), in the above example, the processing trajectory, the inspection trajectory and / or the measurement trajectory. The planning is based on a predetermined initial posture S and a predetermined end posture E in a known manner, taking into account the predetermined constraints N. SE In the case of i =[q1,q2,…q7] i , in particular in the initial position S or in the position q for the initial position S and the position q in or for the ending posture E E conduct.

[0058] Then, in step S50, a portion of the trajectory is planned, the constraints to be observed in the planning being assigned the next lower priority, in the above example the approach trajectory. The planning is based in a known manner on the predefined starting posture or starting position and the robot (arm) position q determined in step S40. S , considering the pre-set constraints N S In the case of i To carry out.

[0059] Here, the entry trajectory is planned so that the robot (arm) 1 enters the position q determined in step S40 at the end of the entry trajectory. S .

[0060] As can be seen from this example, by the position q determined in step S40 S , which significantly reduces the search space for planning the entry trajectory. In one embodiment, in this way, (sub)trajectories can be planned with (less) computing time and / or power, and / or the risk of the optimization method only finding a local minimum is reduced, in particular, situations similar to dead ends are avoided. It can also be seen that the primary goal is to comply with the highest priority constraint N SE , while the relatively lower priority constraint N S Then under the highest priority constraint N SE (Still) be satisfied as much as possible when possible.

[0061] Then, in step S60, a portion of the trajectory is planned, the constraints to be observed in the planning being assigned a lower priority (level), in the above example, the departure trajectory. The planning is based in a known manner on the predefined target pose or target position and the robot (arm) position q determined in step S40. E , considering the pre-set constraints N E In the case of i To carry out.

[0062] Here, the departure trajectory is planned so that it is located at or with the position q determined in step S40. E start.

[0063] This also illustrates that the position q determined in step S40 E To reduce the search space for planning the departure trajectory, so that in one embodiment, (sub)trajectories can be planned with (less) computing time and / or power, and / or the risk of the optimization method finding only a local minimum, in particular getting stuck in a dead end, is reduced. It can also be seen that the primary goal is to comply with the highest priority constraint N SE Then the highest priority constraint N SE (Still) respect the lower priority constraints N as much as possible, if (still) allowed S , and finally under the higher priority constraint N SE 、N S Where possible, (still) respect the constraints of lower priority N E .

[0064] In step S70, the controller 2 connects the planned partial trajectories and controls the robot (arm) 1 to travel over the planned trajectory to execute the application. Here, this connection can also be achieved in particular in the following way: that is, the subsequently planned partial trajectory is already connected to the already planned partial trajectory during its planning, in particular connected to the partial trajectory or continued. Therefore, the planning of the trajectory of the robot can generally be used to execute the application, wherein the planned partial trajectories are connected to each other in the transition area and these connected partial trajectories form the trajectory of the robot or a part of the trajectory, which is (already) achieved by planning a single partial trajectory (in this embodiment, steps S40-S60).

[0065] While exemplary embodiments have been set forth in the foregoing description, it should be noted that many variations are possible.

[0066] Therefore, once again purely by way of example and for the purpose of illustration only, the planning of an entry or exit trajectory and / or the constraints N for the entry or exit trajectory may be omitted. S or N E Can have more than for machining track, inspection track and / or measurement track N SE The constraints with higher priority.

[0067] For example, in a variant, in step S40, the entry trajectory is first planned instead of the processing trajectory, the inspection trajectory and / or the measurement trajectory. Then, the planning is carried out in a known manner based on a predetermined starting posture or starting position and a predetermined initial posture S, taking into account the predetermined constraints N. S In the case of i , especially at or with respect to the position q of the initial posture S S In this case, in one embodiment, only that part of the constraints that relates to the initial position S is already taken into account, in this example realizing the preset direction of the TCP. In other words, full use is made of the (still) permissible or available redundancy from the perspective of the subsequent processing trajectory, inspection trajectory and / or measurement trajectory. Of course, it is also possible that a part of the constraints related to the previous partial trajectory is already taken into account when planning the subsequent partial trajectory in a preferential manner, and this part of the constraints only relates to the transition area between two partial trajectories.

[0068] Then, in step S50, a machining trajectory, an inspection trajectory and / or a measurement trajectory is planned. This planning is based in a known manner on the predefined end posture E and the robot (arm) position q determined in step S40.S , considering the pre-set constraints N SE In the case of the same or another optimization method and the defined position q of the robot (arm) 1 along the processing trajectory, the inspection trajectory and / or the measurement trajectory, i , especially at or for the position q of the end posture E E To carry out.

[0069] This also illustrates that the position q determined in step S40 S The search space for planning the machining trajectory, the inspection trajectory and / or the measurement trajectory is reduced, so that in one embodiment, the (sub)trajectory can be planned with (less) computing time and / or power, and / or the risk of the optimization method only finding a local minimum, in particular getting stuck in a dead end, is reduced. It can also be seen that the primary goal is to comply with the higher priority constraints N S , then in the higher priority constraint N S (Still) try to respect the relatively lower priority constraints N as much as possible, if (still) allowed SE .

[0070] In the above example, the robot position is determined by planning a partial trajectory with higher priority constraints and used to plan a partial trajectory with lower priority constraints. It can be particularly advantageous here if the robot position determined in the higher priority planning is used as the starting position or end position in the lower priority planning, i.e. in the above example, for planning to reach the robot (arm) position q determined in the higher priority planning of the machining trajectory, the inspection trajectory and / or the measuring trajectory. S or conversely the planning for the robot (arm) position q determined from the higher priority planning of the approach trajectory. S The machining trajectory, inspection trajectory and / or measuring trajectory to be continued, or the robot (arm) position q determined from the higher priority planning of the machining trajectory, inspection trajectory and / or measuring trajectory is planned E However, it is also possible to calculate the initial position or the end position used in the lower priority plan based on the robot position determined in the higher priority plan, in particular based on a predefined mapping or transformation. Thus, once again purely by way of example and only for the purpose of illustration, Figure 1 The robot (arm) 1 is arranged on a mobile platform, and the mobile platform moves a preset route between the end of the planned entry trajectory and the start of the planned processing trajectory, inspection trajectory and / or measurement trajectory. Then, for the processing trajectory, inspection trajectory and / or measurement trajectory that is planned first, the robot (arm) position q can be determined first. S, and based on the robot (arm) position q while compensating for the movement path S , To plan the robot (arm) position q that will be driven into the trajectory S In this case, the transition region between the approach trajectory and the machining trajectory, the inspection trajectory and / or the measuring trajectory includes the movement path.

[0071] It should also be pointed out that the exemplary embodiment is only an example and does not constitute any limitation on the scope of protection, application and configuration. On the contrary, the above description can provide a person skilled in the art with a teaching for implementing a transformation of at least one exemplary embodiment, wherein various changes, in particular with respect to the function and arrangement of the components, can be implemented without departing from the scope of protection of the present invention, such as can be obtained according to the claims and their equivalent feature combinations.

[0072] Reference Signs List 1 robot (arm)

[0073] 2 Controller

[0074] TCP tool center point (robot-specific reference object) q1,…q7 joint coordinates.

Claims

1. A method for planning a trajectory (1) of a robot to perform an application, comprising the following steps: - dividing (S10) the application into at least two consecutive phases; - presetting (S20) a constraint condition for one of the at least two stages, and presetting another different constraint condition for the other of the at least two stages; - assigning (S30) a priority to one of the two constraints and assigning a relatively higher or lower priority to the other of the two constraints; - planning (S40) a portion of a trajectory for executing the phase of the at least two phases for which the constraint condition assigned the higher priority of the two priorities has been pre-set, taking into account the constraint condition assigned the higher priority of the two priorities; - then planning (S50) a portion of a trajectory for executing the phase of the two phases to which the constraint condition assigned the lower priority of the two priorities has been preset, taking into account the constraint condition assigned the lower priority of the two priorities and based on the portion of the trajectory that has previously been planned for executing the phase of the two phases to which the constraint condition assigned the higher priority of the two priorities has been preset; as well as - planning ( S70 ) a trajectory of the robot to execute the application, wherein the planned partial trajectories are connected to each other in transition regions and the connected partial trajectories form the trajectory of the robot or a part of the trajectory.

2. The method according to claim 1, characterized in that - dividing the application into at least three consecutive phases; - Pre-set constraints for the three stages respectively; - Assign different priorities to the three constraints; - firstly planning a part of the trajectory for executing the phase of the three phases for which the constraints assigned the highest priority have been pre-set, taking into account the constraints assigned the highest priority of the three priorities; - then planning a portion of the trajectory for executing the phases of the three phases to which the constraints assigned the lower priority of the three priorities are preset, taking into account the constraints assigned the lower priority of the three priorities and based on the portion of the trajectory that has previously been planned for executing the phases of the three phases to which the constraints assigned the highest priority of the three priorities are preset; - then planning a partial trajectory for executing the phase of the three phases for which the constraint assigned the lowest priority among the three priorities is pre-set, taking into account the constraint assigned the lowest priority among the three priorities and based on one of the two partial trajectories already planned; as well as The planned partial trajectories are each connected to one another in pairs in a transition region, and the connected partial trajectories form the trajectory of the robot or a part of this trajectory.

3. The method according to any one of the preceding claims, characterized in that - at least one phase of the application comprises a processing phase, an inspection phase and / or a measuring phase for robot-assisted processing and / or inspection and / or measurement of a workpiece, and the partial trajectory planned for executing the phase comprises a processing trajectory, an inspection trajectory and / or a measuring trajectory of the robot; and / or - at least one phase of the application comprises an entry phase for entering a processing trajectory, an inspection trajectory and / or a measuring trajectory or a conveying location or a storage location, and the partial trajectory planned for executing this phase comprises the entry trajectory of the robot; and / or At least one phase of the application comprises a departure phase for leaving a processing track, an inspection track and / or a measuring track or a transport location or a storage location, and the partial trajectory planned for executing this phase comprises the departure trajectory of the robot.

4. The method according to any one of the preceding claims, characterized in that When planning at least one partial trajectory for executing a phase of the application, a portion of the constraints that were predefined for executing a preceding phase and a subsequent phase of the application and were assigned a lower priority are taken into account.

5. The method according to any one of the preceding claims, characterized in that At least one of the constraints comprises: avoiding collisions; at least one pose of a reference object specific to the robot; and / or optimization of travel time; payload; and / or energy requirements of the robot for performing a corresponding phase of the application.

6. The method according to any one of the preceding claims, characterized in that The robot is redundant with respect to at least one phase of the application.

7. The method according to any one of the preceding claims, characterized in that At least one of the partial trajectories is planned by means of an optimization method.

8. A method for controlling a robot, comprising the steps of: - planning the robot's trajectory according to the method of any of the preceding claims; and -Control the robot to drive along the planned trajectory, especially to execute the application.

9. A system for planning a trajectory of a robot for executing an application, in particular for controlling a robot, wherein the system is designed to execute the method according to any one of the preceding claims and / or has: - means for dividing said application into at least two consecutive phases; - means for presetting a constraint condition for one of the two phases and for presetting a different constraint condition for the other of the two phases; - means for assigning a priority to one of the two constraints and assigning a higher or lower priority to the other of the two constraints; - means for planning a portion of a trajectory, for executing, taking into account the constraints assigned the higher of the two priorities, the phases of at least two phases for which the constraints assigned the higher of the two priorities have been pre-set; - means for subsequently planning a portion of the trajectory for executing the phase of the two phases to which the constraint assigned the lower of the two priorities is pre-set, taking into account the constraint assigned the lower of the two priorities and based on the portion of the trajectory previously planned for executing the phase of the two phases to which the constraint assigned the higher of the two priorities is pre-set; as well as - means for planning a trajectory of the robot for executing the application, wherein the planned partial trajectories are connected to one another in transition regions and the connected partial trajectories form the trajectory of the robot or a part of the trajectory.

10. A computer program or a computer program product, wherein: The computer program or computer program product comprises instructions, in particular instructions stored on a computer-readable and / or non-volatile storage medium, which, when executed by one or more computers or a system according to claim 9, cause the one or more computers or the system to perform a method according to any one of claims 1 to 8.