METHOD FOR DETERMINING A WEIGHT AND A CENTER OF GRAVITY OF A ROBOT MANIPULATOR LOAD

20220088804 · 2022-03-24

    Inventors

    Cpc classification

    International classification

    Abstract

    A method of determining a weight and a center of gravity of a load for a robot manipulator, the method including: gripping the load using an end effector; moving the load into a number n of distinct static poses; determining an external wrench wrench F.sub.ext for each of the n static poses; determining, in a base coordinate system, at least components of each external wrench F.sub.ext that indicate the external forces; determining a particular estimation of the weight of the load from a particular component pointing in a direction of a gravity vector from among the components of each external wrench F.sub.ext that indicate the external forces in the base coordinate system, and from a magnitude of the gravity vector; determining the weight of the load by averaging respective estimations of the weight of the load; determining estimations of coordinates of the center of gravity of the load for each of the n static poses based on the weight of the load or the particular estimation of the weight of the load determined for a particular static pose and based on the components of the external wrench F.sub.ext that indicate externally acting torques; and determining the center of gravity of the load by averaging respective estimations of coordinates of the center of gravity.

    Claims

    1. A method of determining a weight and a center of gravity of a load for a robot manipulator, wherein the robot manipulator is arranged on a base and has a plurality of links, and the links are connected to one another by joints and movable or rotatable relative to one another by actuators on the joints, and wherein the robot manipulator has an end effector for gripping the load, the method comprising the steps of: gripping the load by the end effector; moving the load into a number n of distinct static poses; determining an external wrench F.sub.ext for each of the n static poses, wherein a respective external wrench F.sub.ext indicates external forces and torques acting on the robot manipulator; determining, in a base coordinate system, at least components of each external wrench F.sub.ext that indicate the external forces, wherein the base coordinate system is a Cartesian coordinate system and imagined to be arranged in a body-fixed manner on the base of the robot manipulator, and an axis of the base coordinate system is parallel to a gravity vector; determining a particular estimation of the weight of the load from a particular component pointing in a direction of the gravity vector from among the components of each external wrench F.sub.ext that indicate the external forces in the base coordinate system; determining the weight of the load by averaging the respective estimations of the weight of the load; determining estimations of coordinates of the center of gravity of the load for each of the n static poses based on the basis of the weight of the load or the particular estimation of the weight of the load determined for a particular static pose and based on the basis of the components of the external wrench F.sub.ext that indicate the externally acting torques; and determining the center of gravity of the load by averaging the respective estimations of coordinates of the center of gravity.

    2. The method according to claim 1, wherein the external wrench F.sub.ext is determined by torque sensors in the joints.

    3. The method according to claim 1, wherein the external wrench F.sub.ext is determined by strain gauges on the joints or on the links.

    4. The method according to claim 1, wherein the load is moved several times from distinct directions into a number m of the n static poses, with m≤n.

    5. The method according to claim 1, wherein n=8.

    6. The method according to claim 1, wherein the external wrench F.sub.ext is determined for each of the n static poses in an end effector coordinate system that is body-fixed to the end effector, and for determining at least the components of each external wrench F.sub.ext that indicate the forces, a system transformation takes place in the base coordinate system between the end effector coordinate system and the base coordinate system.

    7. The method according to claim 1, wherein estimations for coordinates of the center of gravity of the load are determined for each of the n static poses in an end effector coordinate system that is body-fixed to the end effector.

    8. The method according to claim 1, wherein the center of gravity of the load is determined by arithmetic averaging of the respective estimations of coordinates of the center of gravity of the load.

    9. The method according to claim 1, wherein the weight of the load is determined by arithmetic averaging of the respective estimations of the weight of the load.

    10. A system to determine a weight and a center of gravity of a load for a robot manipulator, wherein the robot manipulator is arranged on a base and has a plurality of links, and the links are connected to one another by joints and rotatable relative to one another by actuators arranged on the joints, and wherein the robot manipulator comprises: an end effector designed to grip the load; a control unit designed to control the actuators arranged on the joints for moving the load into a number n of distinct static poses; an estimation unit designed to determine an external wrench F.sub.ext for each of the n static poses, wherein the respective external wrench F.sub.ext indicates external forces and torques acting on the robot manipulator; and a processing unit designed to: indicate at least components of each external wrench F.sub.ext that indicate the forces to be indicated in a base coordinate system, wherein the base coordinate system is a Cartesian coordinate system and arranged in a body-fixed manner on the base of the robot manipulator, and an axis of the base coordinate system is parallel to a gravity vector; determine a particular estimation of the weight of the load from a particular component pointing in a direction of the gravity vector from among the components in the base coordinate system that indicate the external forces of each external wrench F.sub.ext, and from the magnitude of the gravity vector; determine a weight of the load by averaging respective estimations of the weight of the load; determine estimations of coordinates of the center of gravity of the load for each of the n static poses based on the weight of the load or the particular estimation of the weight of the load determined for a particular static pose and based on the components of the external wrench F.sub.ext that indicate the externally acting torques; and determine the center of gravity of the load by averaging respective estimations for coordinates of the center of gravity.

    11. The system according to claim 10, wherein the robot manipulator comprises torque sensors in the joints, the torque sensors designed to determine the external wrench F.sub.ext.

    12. The system according to claim 10, wherein the robot manipulator comprises strain gauges on the joints or on the links, the strain gauges designed to determine the external wrench F.sub.ext.

    13. The system according to claim 10, wherein the load is moved several times from distinct directions into a number m of the n static poses, with m≤n.

    14. The system according to claim 10, wherein n=8.

    15. The system according to claim 10, wherein the external wrench F.sub.ext is determined for each of the n static poses in an end effector coordinate system that is body-fixed to the end effector, and for determining at least the components of each external wrench F.sub.ext that indicate the forces, a system transformation takes place in the base coordinate system between the end effector coordinate system and the base coordinate system.

    16. The system according to claim 10, wherein estimations for coordinates of the center of gravity of the load are determined for each of the n static poses in an end effector coordinate system that is body-fixed to the end effector.

    17. The system according to claim 10, wherein the center of gravity of the load is determined by arithmetic averaging of the respective estimations of coordinates of the center of gravity of the load.

    18. The system according to claim 10, wherein the weight of the load is determined by arithmetic averaging of the respective estimations of the weight of the load.

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0066] In the drawings:

    [0067] FIG. 1 shows a method for determining a weight and a center of gravity of a load for a robot manipulator according to one embodiment of the invention;

    [0068] FIG. 2 shows a system for determining a weight and a center of gravity of a load for a robot manipulator according to a further embodiment of the invention; and

    [0069] FIGS. 3A-3D show symbolically depicted static poses in addition to the method described in FIG. 1.

    [0070] The illustrations in the figures are schematic and not to scale.

    DETAILED DESCRIPTION

    [0071] FIG. 1 shows a method for determining a weight and a center of gravity of a load 11 for a robot manipulator 1, wherein the robot manipulator 1 is arranged on a base 3 and has a plurality of links 5, and the links 5 are connected to one another by joints 7 and rotatable relative to one another by actuators 6 on the joints 5, and wherein the robot manipulator 1 has an end effector 9 for gripping the load 11. The method includes: [0072] gripping S1 the load 11 by means of the end effector 9; [0073] moving S2 the load 11 into a number n of distinct static poses; [0074] determining S3 an external wrench F.sub.ext for each of the n static poses, wherein the respective external wrench F.sub.ext indicates external forces and torques acting on the robot manipulator 1; [0075] determining S4, in a base coordinate system, at least the components of each external wrench F.sub.ext that indicate the external forces, wherein the base coordinate system is a Cartesian coordinate system and arranged in a body-fixed manner on the base 3 of the robot manipulator 1, and an axis of the base coordinate system is parallel to a gravity vector; [0076] determining S5 a particular estimation of the weight of the load 11 from the particular component pointing in the direction of the gravity vector from among the components of each external wrench F.sub.ext that indicate the external forces in the base coordinate system; [0077] determining S6 the weight of the load 11 by averaging the respective estimations of the weight of the load 11; [0078] determining S7 estimations of coordinates of the center of gravity of the load 11 for each of the n static poses on the basis of the weight of the load 11 or the particular estimation of the weight of the load 11 determined for the particular static pose and on the basis of the components of the external wrench F.sub.ext that indicate the externally acting torques; and [0079] determining S8 the center of gravity of the load 11 by averaging the respective estimations of coordinates of the center of gravity.

    [0080] FIG. 2 shows a system 100 for determining a weight and a center of gravity of a load 11 for a robot manipulator 1, wherein the robot manipulator 1 is arranged on a base 3 and has a plurality of links 5, and the links 5 are connected to one another by joints 7 and rotatable relative to one another by actuators 6 arranged on the joints 7. The robot manipulator 1 includes the following: [0081] an end effector 9 designed to grip the load 11, [0082] a control unit 101 designed to control the actuators 6 arranged on the joints 7 for moving the load 11 into a number n of distinct static poses, [0083] an estimation unit 103 designed to determine an external wrench F.sub.ext for each of the n static poses, wherein the respective external wrench F.sub.ext indicates external forces and torques acting on the robot manipulator 1 and is determined by torque sensors 13 in the joints 7 and by strain gauges 15 on the links 5, [0084] a processing unit 105 designed to

    [0085] a) indicate at least the components of each external wrench F.sub.ext that indicate the forces to be indicated in a base coordinate system, wherein the base coordinate system is a Cartesian coordinate system and arranged in a body-fixed manner on the base 3 of the robot manipulator 1, and an axis of the base coordinate system is parallel to a gravity vector;

    [0086] b) determine a particular estimation of the weight of the load 11 from the particular component pointing in the direction of the gravity vector from among the components in the base coordinate system that indicate the external forces of each external wrench F.sub.ext, and from the magnitude of the gravity vector;

    [0087] c) determine a weight of the load 11 by averaging the respective estimations of the weight of the load 11;

    [0088] d) determine estimations of coordinates of the center of gravity of the load 11 for each of the n static poses on the basis of the weight of the load 11 or the particular estimation of the weight of the load 11 determined for the particular static pose and on the basis of the components of the external wrench F.sub.ext that indicate the externally acting torques; and

    [0089] e) determine the center of gravity of the load 11 by averaging the respective estimations of coordinates of the center of gravity.

    [0090] FIGS. 3A-3D show, in addition to FIG. 1, the different static poses of the load 11 in more detail, but symbolically. The method is used for determining a weight and a center of gravity of a load 11 for a robot manipulator 1, wherein the robot manipulator 1 is arranged on a base 3 and has a plurality of links 5, and the links 5 are connected to one another by joints 7 and rotatable relative to one another by actuators 6 on the joints 5, and wherein the robot manipulator 1 has an end effector 9 for gripping the load 11. After gripping S1 the load 11 with the end effector 9, the load 11 is moved S2 into a number n of distinct static poses. These different static poses, denoted q.sub.1, q.sub.2, q.sub.3, and q.sub.4, are respectively shown in FIGS. 3A-3D. The load 11 is moved into a number m of the n static poses, with m≤n, several times from distinct directions, wherein, in this case, the following applies: m=n=4. Accordingly, the static poses are denoted with q.sub.1, q.sub.2, q.sub.3, and q.sub.4. An external wrench F.sub.ext is determined S3 for each of these static poses, wherein the respective external wrench F.sub.ext indicates external forces and torques acting on the robot manipulator 1 in an end effector coordinate system K. In this case, the external wrench F.sub.ext has six components. In this case, the first three components of the external wrench F.sub.ext describe forces, and the three adjoining components of the external wrench F.sub.ext describe detected torques. An external wrench F.sub.ext is determined for each of the n static poses in the end effector coordinate system K that is body-fixed to the end effector 9, and for determining S4 at least the components of each external wrench F.sub.ext that indicate the forces in a base coordinate system B, a system transformation between the end effector coordinate system K and the base coordinate system B is carried out. The base coordinate system B is a Cartesian coordinate system and imagined to be arranged in a body-fixed manner on the base 3 of the robot manipulator 1, and an axis of the base coordinate system B is parallel to the gravity vector given on site. Subsequently, a particular estimation of the weight of the load 11 is determined S5 from the particular component pointing in the direction of the gravity vector from among the components of each external wrench F.sub.ext that indicate the external forces in the base coordinate system B:


    {circumflex over (m)}.sub.q1g=−.sup.B{circumflex over (F)}.sub.ext,k,q1(3);{circumflex over (m)}.sub.q2g=−.sup.B{circumflex over (F)}.sub.ext,K,q2(3);


    {circumflex over (m)}.sub.q3g=−.sup.B{circumflex over (F)}.sub.ext,k,q3(3);{circumflex over (m)}.sub.q4g=−.sup.B{circumflex over (F)}.sub.ext,K,q4(3);

    [0091] In this case, the subscript index “K” denotes the reference of the respective variable in front of the index to the end effector coordinate system K, and the superscript “B” in front of the respective variable denotes the notation in the base coordinate system B. In addition, g denotes the magnitude of the locally prevailing gravity vector. Furthermore, the expression .sup.B{circumflex over (F)}.sub.ext,K,q1(3) by means of the indication “(3)” indicates the third component of the vectorially notated external wrench F.sub.ext, valid for the respective pose q.sub.1, or q.sub.2, or q.sub.3, or q.sub.4. Accordingly, the terms {circumflex over (m)}.sub.q1g . . . {circumflex over (m)}.sub.q4g describe the particular estimations of the weight of the mass of the load for each of the poses q.sub.1 to q.sub.4.

    [0092] The weight of the load 11 is determined S6 by arithmetic averaging of the respective estimations of the weight of the load 11:

    [00001] m g = m ^ q 1 + m ^ q 2 + m ^ q 3 + m ^ q 4 4 g

    [0093] Furthermore, estimations of coordinates of the center of gravity of the load 11 are determined S7 for each of the n static poses on the basis of the particular estimation of the weight of the load 11 determined for the particular static pose and on the basis of the components of the external wrench F.sub.ext that indicate the externally acting torques.

    [0094] The estimations of coordinates are indicated with an index from x, y, z for the particular estimation, wherein the indication “(4)” indicates the fourth component of the vectorially notated external wrench F.sub.ext, wherein the indication “(5)” indicates the fifth component of the vectorially notated external wrench F.sub.ext, etc.

    [00002] z 1 = F ^ ext , K , q 1 K ( 5 ) m ^ q 1 g ; z 2 = F ^ ext , K , q 2 K ( 4 ) m ^ q 2 g ; z 3 = - F ^ ext , K , q 3 K ( 5 ) m ^ q 3 g ; z 4 = - F ^ ext , K , q 4 K ( 5 ) m ^ q 4 g ; z 5 = - F ^ ext , K , q 5 K ( 4 ) m ^ q 5 g ; z 6 = - F ^ ext , K , q 6 K ( 5 ) m ^ q 6 g ; z 7 = - F ^ ext , K , q 7 K ( 4 ) m ^ q 7 g ; z 8 = - F ^ ext , K , q 8 K ( 5 ) m ^ q 8 g ; x 1 = - K F ^ ext , K , q 2 ( 6 ) m ^ q 2 g ; x 2 = F ^ ext , K , q 4 K ( 6 ) m ^ q 4 g ; x 3 = F ^ ext , K , q 5 K ( 6 ) m ^ q 5 g ; x 4 = F ^ ext , K , q 7 K ( 6 ) m ^ q 7 g ; y 1 = - F ^ ext , K , q 1 K ( 6 ) m ^ q 1 g ; y 2 = F ^ ext , K , q 3 K ( 6 ) m ^ q 3 g ; y 3 = F ^ ext , K , q 6 K ( 6 ) m ^ q 6 g ; y 4 = - K F ^ ext , K , q 8 ( 6 ) m ^ q 8 g

    [0095] In this case, the subscript index “K” denotes the reference of the respective variable in front of the index to the end effector coordinate system K, and the superscript “K” in front of the respective variable denotes the notation in the end effector coordinate system K. The center of gravity of the load 11 with the coordinates x, y, z is determined S8 by arithmetic averaging of the respective estimations for coordinates of the center of gravity of the load 11:

    [00003] x = x 1 + x 2 + x 3 + x 4 4 ; y = y 1 + y 2 + y 3 + y 4 4 ; z = z 1 + z 2 + z 3 + z 4 + z 5 + z 6 + z 7 + z 8 8 ;

    [0096] In this case, x, y, z denote the respective coordinates of the center of gravity of the load.

    [0097] Even though the invention has been illustrated and explained in greater detail using preferred embodiments, the invention is not limited by the disclosed examples, and other variations can be derived therefrom by a person skilled in the art without departing from the scope of protection of the invention. It is therefore clear that there is a plurality of possible variations. It is also clear that embodiments mentioned by way of example actually only constitute examples that are not to be interpreted in any way as a limitation of the scope of protection, of the potential applications, or of the configuration of the invention. Instead, the preceding description and the description of the figures enable a person skilled in the art to specifically implement the example embodiments, wherein a person skilled in the art, having knowledge of the disclosed inventive concept, is able to make numerous modifications, for example, with respect to the function or the arrangement of individual elements mentioned in an embodiment, without departing from the scope of protection, which is defined by the claims and their legal equivalents, such as a further explanation in the description.

    LIST OF REFERENCE NUMERALS

    [0098] 1 Robot manipulator

    [0099] 3 Base

    [0100] 5 Links

    [0101] 6 Actuators

    [0102] 7 Joints

    [0103] 9 End effector

    [0104] 11 Load

    [0105] 13 Torque sensors

    [0106] 15 Strain gauges

    [0107] 100 System

    [0108] 101 Control unit

    [0109] 103 Estimation unit

    [0110] 105 Processing unit

    [0111] S1 Gripping

    [0112] S2 Moving

    [0113] S3 Determining

    [0114] S4 Determining

    [0115] S5 Determining

    [0116] S6 Determining

    [0117] S7 Determining

    [0118] S8 Determining