COORDINATION SYSTEM, HANDLING DEVICE, AND METHOD

20210053228 · 2021-02-25

    Inventors

    Cpc classification

    International classification

    Abstract

    A coordination system for a handling device including a plurality of kinematic chains is provided. Each of the kinematic chains being movable in a workspace. At least two of the workspaces having an overlap, the kinematic chains being designed to carry out a work movement based on a work command. The coordination system includes a trajectory planning module and a control module. The control module is designed to activate the kinematic chains to carry out the work movement based on trajectory data. The trajectory planning module is designed to determine the trajectory data to carry out the work movement and to provide the trajectory data to the control module. The trajectory planning module is designed, if a further work command is provided while the work movement is being carried out, to replan the trajectory data into replanned trajectory data and provide these data to the control module.

    Claims

    1-16. (canceled)

    17. A coordination system for a handling device, comprising: a plurality of kinematic chains, each of the kinematic chains being movable in a workspace, at least two of the workspaces having an overlap, the kinematic chains being configured to carry out a work movement based on a work command; a trajectory planning module; and a control module configured to activate the kinematic chains to carry out the work movement based on trajectory data; wherein the trajectory planning module is configured to determine the trajectory data to carry out the work movement and to provide the trajectory data to the control module, and the trajectory planning module is configured to replan the trajectory data into replanned trajectory data and provide the replanned trajectory data to the control module, if a further work command is provided while the work movement is being carried out.

    18. The coordination system as recited in claim 17, wherein the trajectory planning module is configured to replan the trajectory data only from a buffer point in time into the replanned trajectory data, the buffer point in time being after an event point in time by a buffer time interval, the event point in time being a point in time at which the further work command is provided.

    19. The coordination system as recited in claim 17, wherein the control module is designed to activate the kinematic chains to carry out the work movement based on original trajectory data at least up to a guarantee point in time, the guarantee point in time being a point in time lying after the event point in time by a guarantee interval.

    20. The coordination system as recited in claim 19, wherein the guarantee point in time is equal to the buffer point in time.

    21. The coordination system as recited in claim 17, wherein the trajectory planning module is configured to determine a minimal time trajectory for each of the kinematic chains as preliminary trajectory data, the coordination system including a coordination module, the coordination module being configured to reparameterize the preliminary trajectory data based on the minimal time trajectory into the trajectory data, so that work movements may be carried out free of collisions.

    22. The coordination system as recited in claim 21, wherein the trajectory planning module is configured to determine the minimal time trajectory based on a finite maximum acceleration and/or a finite maximum velocity.

    23. The coordination system as recited in claim 17, further comprising: a masking module configured to shield the trajectory data for the control module which are in replanning and/or have a later point in time than a maximum read ahead point in time.

    24. The coordination system as recited in claim 23, further comprising: an estimation module configured to estimate a planning time interval, the planning time interval being a period of time for planning, and/or the reparameterizing, and/or the replanning the trajectory data.

    25. The coordination system as recited in claim 24, wherein: the trajectory planning module is configured to replan the trajectory data only from a buffer point in time into the replanned trajectory data, the buffer point in time being after an event point in time by a buffer time interval, the event point in time being a point in time at which the further work command is provided; and the buffer point in time corresponds to the event point in time plus the planning time interval and/or the maximum read ahead point in time corresponds to the event point in time plus the planning time interval.

    26. The coordination system as recited in claim 17, further comprising: an estimation module configured to estimate a planning time interval, the planning time interval being a period of time for planning, and/or the reparameterizing, and/or the replanning the trajectory data; wherein the trajectory planning module is configured to replan the trajectory data only from a buffer point in time into the replanned trajectory data, the buffer point in time being after an event point in time by a buffer time interval, the event point in time being a point in time at which the further work command is provided; wherein the control module is designed to activate the kinematic chains to carry out the work movement based on original trajectory data at least up to a guarantee point in time, the guarantee point in time being a point in time lying after the event point in time by a guarantee interval; and wherein the buffer point in time corresponds to the event point in time plus the guarantee interval plus the planning time interval.

    27. The coordination system as recited in claim 23, wherein: the trajectory planning module is configured to replan the trajectory data only from a buffer point in time into the replanned trajectory data, the buffer point in time being after an event point in time by a buffer time interval, the event point in time being a point in time at which the further work command is provided; and the buffer point in time is less than or equal to the maximum read ahead point in time.

    28. The coordination system as recited in claim 17, wherein each of the kinematic chains is a robot arm.

    29. A handling device, comprising: a coordination system, including: a plurality of kinematic chains, each of the kinematic chains being movable in a workspace, at least two of the workspaces having an overlap, the kinematic chains being configured to carry out a work movement based on a work command; a trajectory planning module; and a control module configured to activate the kinematic chains to carry out the work movement based on trajectory data; wherein the trajectory planning module is configured to determine the trajectory data to carry out the work movement and to provide the trajectory data to the control module, and the trajectory planning module is configured to replan the trajectory data into replanned trajectory data and provide the replanned trajectory data to the control module, if a further work command is provided while the work movement is being carried out.

    30. A method for coordinating a handling device including a coordination system, the method comprising the following steps: determining first trajectory data for carrying out a work movement, the work movement being based on a work command; activating the handling device using the first trajectory data; and when a further work command is provided and/or arrives and the handling device is still activated using the first trajectory data, determining replanned trajectory data in parallel to and/or simultaneously with the activating using the first trajectory data.

    31. A non-transitory machine-readable storage medium on which is stored a computer program for coordinating a handling device including a coordination system, the method comprising the following steps: determining first trajectory data for carrying out a work movement, the work movement being based on a work command; activating the handling device using the first trajectory data; and when a further work command is provided and/or arrives and the handling device is still activated using the first trajectory data, determining replanned trajectory data in parallel to and/or simultaneously with the activating using the first trajectory data.

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0033] FIG. 1 shows a handling device as an exemplary embodiment of the present invention.

    [0034] FIG. 2 shows the handling device in a sense-plan-act scheme in accordance with an example embodiment of the present invention.

    [0035] FIGS. 3a through 3i show the coordination sequence in accordance with an example embodiment of the present invention.

    DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

    [0036] FIG. 1 shows a handling device 1. Handling device 1 includes a robot 2 or is designed as a robot 2. Handling device 1 furthermore includes a coordination system 3.

    [0037] Robot 2 is designed as a multi-arm robot, in this example as a two-arm robot. Robot 2 and/or handling device 1 is part of an assembly place of a production system. Robot 2 is designed for processing and/or assembling an object, the object being a workpiece, for example. Robot 2 may grip, transport, and/or process the object.

    [0038] Robot 2 includes two kinematic chains 4, kinematic chains 4 being formed by the robot arms and/or forming the robot arms. Kinematic chains 4 each include a plurality of joints 5, joints 5 being designed to enable an angle adjustment, so that the kinematic chains are each movable in workspace 6 with the aid of joints 5. Joints 5 are movable at an adjustment velocity and an adjustment acceleration, joints 5 having a maximum velocity and a maximum acceleration which restrict the possible trajectories and/or carrying out the trajectory. An end effector 7 is arranged at each of the free ends of kinematic chains 4. End effectors 7 are designed as grippers and may grip and/or manipulate the workpiece, for example.

    [0039] Kinematic chains 4 are movable in workspace 6. End effector 7 is movable from a starting point along a movement path s(t) to an endpoint. The movement paths may be different for the two kinematic chains 4, for example, handling device 1 is designed to move one end effector along movement path s.sub.1(t) and the other end effector along movement path s.sub.2(t).

    [0040] Handling device 1 includes a coordination system 3, coordination system 3 including a control module 8 and a trajectory planning module 9. Control module 8 is designed to activate robot 2 with the aid of trajectory data to carry out a work movement. The trajectory data are, for example, trajectory functions, the trajectory functions preferably being vector-valued functions which each have as many entries as kinematic chain 4 has joints 5. For example, a kinematic chain 4 includes three joints 5, the trajectory function then forming a three-component vector having, for example, three angle entries, the angle entries describing the angle position of joint 5. Furthermore, it is possible that the trajectory functions include the adjustment velocities and adjustment accelerations of joints 5 and take into consideration their limits.

    [0041] Handling device 1 may include a plurality of sensors 10, sensors 10 monitoring, for example, the present status and/or the present work process of robot 2. For example, sensors 10 are video cameras or movement trackers of end effectors 7. Sensors 10 may provide sensor data to coordination system 3 and in particular to trajectory planning module 9. Handling device 1 and/or coordination system 3 includes an input device 11. With the aid of input device 11, for example, a user or an adjuster of handling device 1 may input a work command. The work command reads, for example: grip object A and transport it to point B. Trajectory planning module 9 includes and/or forms a trajectory coordinator, trajectory planning module 9 being designed to determine a trajectory based on the work command, the trajectory including in particular the maximum velocity and maximum accelerations. Furthermore, the trajectory planning module is designed to take into consideration the movements of all kinematic chains 4 of robot 2, so that the work command may be carried out free of collisions, the movement being free of collisions in particular with respect to the static surroundings. In particular, trajectory planning module 9 takes into consideration the sensor data of sensors 10. Trajectory planning module 9 is designed to provide the trajectory data, which describe the trajectory to be carried out, in control module 8.

    [0042] If a new work command or a further work command is input, for example, using input device 11, trajectory planning module 9 is thus designed to at least temporarily continue to carry out the original and/or previously provided trajectory, control module 8 still activating robot 2 using the old trajectory data, and to determine replanned trajectory data, which take into consideration the further work command, during the further activation using the old trajectory data. The replanned trajectory data are provided to control module 8 only after replanning and robot 2 is activated using the new replanned trajectory data. Thus, during the planning of new replanned trajectory data, robot 2 is still operated using the original trajectory data, so that the operation of handling device 1 takes place preferably effectively.

    [0043] FIG. 2 schematically shows the structure of handling device 1 according to the sense-plan-act scheme. The sense-plan-act scheme corresponds in particular to the measure-planning-execute model. This scheme provides that handling device 1 includes a sensor level 12, a planning level 13, and an execution level 14. A data exchange takes place in each case between sensor level 12, planning level 13, and/or execution level 14. In particular, the data exchange is cyclic and/or regular. Sensor level 12 provides that sensor data are ascertained with the aid of sensors 10. The sensor data are provided to planning level 13. In particular, the sensor data may be buffered in a first buffer 15. These sensor data are provided to trajectory planning module 9. Trajectory planning module 9 determines the trajectory for carrying out the work movement. Trajectory planning module 9 functions in particular as a trajectory coordinator, the trajectory coordinator being designed to replan and/or reparameterize the original trajectory data, so that the work movements may be carried out partially accelerated or decelerated. The thus ascertained trajectory data may be buffered in a coordination buffer 16. Coordination buffer 16 is especially formed by the trajectory buffer module. The trajectory data may then be passed on to control module 8. Control module 8 is in turn part of execution level 14. Control module 8 is designed to activate the robot based on the trajectory data and thus carry out the work movement. The robot may in turn provide feedback with the aid of the actuators, this provided feedback again being settled on sensor level 12.

    [0044] While trajectory planning module 9 is part of planning level 13 and control module 8 is part of execution level 14, coordination system 3 is part of both levels 13 and 14. Coordination system 3 is thus structurally located in planning level 13 and execution level 14.

    [0045] FIGS. 3a through 3i schematically show the sequence for coordinating handling device 1 with the aid of coordination system 2. A two-arm robot is used for this purpose as an example. The sequence is shown here in a coordination space. The abscissa of the coordination space forms the time axis of right arm t.sub.R and the ordinate forms the time axis of left arm t.sub.L.

    [0046] In FIG. 3a, robot 2 is stationary and does not carry out any work movements. All points in time are set to zero and/or at the origin. In particular, time coordinates are understood as points in time, for example, the time coordinates in the coordination space.

    [0047] FIG. 3b shows a state in which a work command is provided for the right arm. Trajectory planning module 9 determines a trajectory for this purpose, which may be carried out free of collisions in the workspace. To carry out the work command and/or the work movement, the robot requires a certain time, so that a maximum execution point in time is establishable, which establishes point P. Point P is on the abscissa, since only one arm carries out a work movement and no work time elapses for the left arm. By establishing point P, in particular trajectory planning module 9 may determine the collision-free trajectory. The trajectory data are provided to control module 8.

    [0048] In FIG. 3c, the trajectory data are already provided to robot 2 and it begins to carry out the work movement. Present point in time t.sub.A extends during this work movement along the abscissa. Furthermore, a guarantee point in time t.sub.G is shown in FIG. 3c. Guarantee point in time t.sub.G is in the future with respect to time from present point in time t.sub.A. Guarantee point in time t.sub.G is furthermore located between point P, which describes the maximum execution time, and present time t.sub.A.

    [0049] FIG. 3d shows a state in which a further work command is provided, the further work command relating to the left arm. Point P is set in the coordination space, point P bearing the maximum execution duration for the right arm and the maximum execution duration for the left arm as coordinates. Trajectory planning module 9 is designed to determine a trajectory to point P. However, since the robot has already carried out the first work movement up to the present point in time, planning from the origin to point P is not productive. To compute a new trajectory, coordination system 3 requires a planning time interval. The planning time interval is added starting from guarantee point in time t.sub.G, so that a buffer point in time t.sub.P is obtained. The trajectory planning module is designed to determine the trajectory between buffer point in time t.sub.P and point P.

    [0050] FIG. 3e shows the newly planned trajectory between buffer point in time t.sub.P and point P. Up to buffer point in time t.sub.P, the handling device and/or the robot is still determined using the old trajectory data, so that the area between the origin and buffer point in time t.sub.P is secured for carrying out the original trajectory data.

    [0051] FIG. 3f shows a state in which a further work command is provided, the further work command now relating to the right arm. Point P is shifted in the coordination space, this new point P taking into consideration the new execution period of the right arm.

    [0052] FIG. 3g now establishes a new buffer point in time t.sub.P, t.sub.P now taking into consideration that carrying out the work movement has progressed further and present point in time t.sub.A has shifted. To determine buffer point in time t.sub.P, the guarantee time interval and the planning time interval are added to present point in time t.sub.A.

    [0053] FIG. 3h shows a plan of the newly planned and/or reparameterized trajectories to reach point P, which takes into consideration all three work events. In order that the trajectories are free of collisions, the connection between buffer point in time t.sub.P and point P is not a straight line, but rather a bent path. This bent path in the coordination space represents the collision-free trajectories.

    [0054] FIG. 3i shows the coordination space at a later present point in time t.sub.A and how guarantee point in time t.sub.G shifts with progressing present point in time t.sub.A.