Method and control means for controlling a robot
09592606 · 2017-03-14
Assignee
Inventors
Cpc classification
B25J9/1676
PERFORMING OPERATIONS; TRANSPORTING
G05B2219/40369
PHYSICS
G05B2219/39086
PHYSICS
International classification
Abstract
According to a method according to the invention for controlling a robot, in particular a human-collaborating robot, a robot- or task-specific redundancy of the robot is resolved, wherein, in order to resolve the redundancy, a pose-dependent inertia variable of the robot is minimized.
Claims
1. A method for controlling a robot having a plurality of successive links driven by motors actuated by a controller, wherein a robot-specific or task-specific redundancy of the robot is resolved, the method comprising: minimizing a pose-dependent inertia variable of the robot in the controller for resolution of the redundancy; and operating the robot with the controller at a speed that is higher than the operating speed of the robot prior to resolving the redundancy, or operating the robot with the controller in a pose selected to reduce the consequences of a collision and at a speed that is equal to or higher than the operating speed of the robot prior to resolving the redundancy.
2. The method according to claim 1, wherein the inertia variable includes at least one of an effective mass, an effective moment of inertia, or a pseudo matrix of a kinetic energy of the robot.
3. The method according to claim 1, wherein the inertia variable is determined in advance or during operation.
4. The method according to claim 1, further comprising using the inertia variable as a quality criterion of a path plan.
5. The method according to claim 1, further comprising: determining a gradient of the inertia variable; and varying a pose of the robot in a direction of the determined gradient.
6. The method according to claim 1, further comprising: determining the inertia variable for at least two redundant poses; and selecting the redundant pose with the lower inertia variable.
7. The method according to claim 1, further comprising: predefining a pose having a minimal inertia variable as a reference pose.
8. The method according to claim 1, further comprising: varying one or more degrees of freedom of the robot for minimization of the inertia variable.
9. The method according to claim 1, wherein the pose-dependent motion variable contains a product of the inertia variable and a power of a speed of the robot or derivative of a speed of the robot.
10. The method according to claim 3, wherein the inertia variable is determined on the basis of at least one of joint coordinates or a predetermined direction.
11. The method of claim 6, wherein the inertia variable is determined for at least one of a path or a spatial point.
12. A controller for controlling a human-collaborating robot, the controller comprising: a processing unit; and a memory unit operatively coupled to the processing unit and containing a program that, when executed by the processing unit, causes the controller to: resolve a robot-specific or task-specific redundancy of the robot by minimizing a pose-dependent inertia variable of the robot; and operate the robot with the controller at a speed that is higher than the operating speed of the robot prior to resolving the redundancy, or operate the robot with the controller in a pose selected to reduce the consequences of a collision and at a speed that is equal to or higher than the operating speed of the robot prior to resolving the redundancy.
13. A computer program product comprising: a non-transitory computer readable storage medium; and a program stored on the non-transitory computer readable storage medium that, when executed by a processing unit, causes the processing unit to: resolve a robot-specific or task-specific redundancy of the robot by minimizing a pose-dependent inertia variable of the robot; and operate the robot with the controller at a speed that is higher than the operating speed of the robot prior to resolving the redundancy, or operate the robot with the controller in a pose selected to reduce the consequences of a collision and at a speed that is equal to or higher than the operating speed of the robot prior to resolving the redundancy.
14. A method for controlling a robot having a plurality of successive links driven by motors actuated by a controller, wherein a robot-specific or task-specific redundancy of the robot is resolved, the method comprising: minimizing a pose-dependent inertia variable of the robot in the controller for resolution of the redundancy; and operating the robot with the controller at a speed that is higher than the operating speed of the robot prior to resolving the redundancy.
Description
BRIEF DESCRIPTION OF THE FIGURES
(1) Additional advantages and features arise from the subsidiary claims and the exemplary embodiments. To this end, the figures, partially in schematic form, show the following:
(2)
(3)
DETAILED DESCRIPTION
(4) In an exemplary embodiment simplified for illustrative purposes,
(5) If the task of a robot 1 consists in traveling a path B on the drawing plane with its TCP without consideration of its orientation, the robot is redundant with its three degrees of freedom q(q.sub.1, q.sub.2, q.sub.3).sup.T with respect to the predefined position z=x=(x y).sup.T: one recognizes that different, redundant poses exist to the same Cartesian TCP position (x, y) on path B on the drawing plane of
(6) If one calculates the effective mass m.sup.u(.sub.v(q)) for each of these poses according to Eq (2) with respect to the tangent unit vector u to path b in the point (, y), the lowest effective mass results for the pose represented in solid lines, since here the projection of the mass of the massive link arm 1.1 disappears. Accordingly, in the case of planning a path for traveling path B with the TCP the redundancy is resolved as a result of the fact that for each sampling point the pose with the lowest effective mass is selected and predefined as the target pose. This can, as explained above, take place by determining the inertia variables m.sub.u(.sub.v(q.sub.i,j)) for different redundant joint angle sets q.sub.i, which each yield the same TCP sampling position (x, y).sub.j, and the selection of the joint angle combination with the lowest effective mass. Similarly, it is possible to determine in advance and save the pose q*.sub.a,b,c, with the minimum effective mass for equidistant spatial points (x.sub.a, y.sub.b) and directions u.sub.c. In the planning of path B or likewise also with a manual online control of the robot 1 a position can then be automatically varied in the direction of the closest of these saved, hazard optimal poses while retaining the TCP position and considering the predefined direction of movement. Instead of this, the effective mass, in analytical or numerical form equally, can also be considered as a quality criterion in the planning of the path.
(7)
(8) Then, in step S2 a predefined direction of movement u.sub.1 is first determined for each of these sampling points (x, y) as a unit tangent vector to the path.
(9) Then, in an optimization the pose q*.sub.i is determined, which meets the second-order condition (NB): (x,y)(q*.sub.i)=(x, y).sub.i, i.e. in which pose the TCP occupies the predefined sampling point, and in the event that the effective mass m.sub.u(.sub.v(q*.sub.i)) according to Eq (2) is minimal, i.e. less than the effective mass m.sub.u(.sub.v(q.sub.i)) or at least one other redundant pose, for which the following applies: (x, y)(q.sub.i)=(x, y).sub.i.
(10) Finally, in a step S3 the driving speed {dot over (q)}.sub.i of the robot is defined such that a function, in particular the product of the effective mass and the Cartesian TCP speed ({dot over (x)},{dot over (y)}).sub.i=({dot over (q)}.sub.i) remains below a threshold. As becomes clear from this, the speed which is predefined (here the joint angle speed {dot over (q)}.sub.i) and the speed which is used for determining the inertia variable do not have to be identical, however this can be the case if for example the TCP speed is predefined.
REFERENCE LIST
(11) 1 Robot 1.1 Link arm (light) 1.2 Arm (light) 1.3 Hand B Path TCP Tool Center Point (reference point)