FORCE MEASUREMENT AND FORCE GENERATION IN REDUNDANT ROBOT MANIPULATORS

20220388161 · 2022-12-08

    Inventors

    Cpc classification

    International classification

    Abstract

    A robot system including: a robot manipulator that includes links interconnected by joints with degrees of freedom that are at least partially redundant to one another; an operating unit configured to detect an input from a user with respect to at least one selected direction of a force; and a control unit configured to receive the input from the operating unit, determine components of a transpose of a Jacobian matrix associated with a respective selected direction for a predetermined position and/or orientation of a distal end of the robot manipulator in a null space such that a first metric based on the components satisfies one of following criteria: unequal to zero, greater than a specified limit, or a maximum, and control the robot manipulator to move a subset of the links in the null space so as to assume a pose according to the components as determined.

    Claims

    1. A robot system comprising: a robot manipulator that comprises a plurality of links interconnected by joints with at least partially redundant degrees of freedom with respect to each other, such that at least a subset of the links of the robot manipulator is movable in a null space without changing a position and/or orientation of a distal end of the robot manipulator; an operating unit configured to detect an input of a user with respect to at least one selected direction of a force and/or a torque at the distal end of the robot manipulator and to transmit the input as detected; and a control unit configured to: receive the input from the operating unit; determine components of a transpose of a Jacobian matrix associated with a respective selected direction for a predetermined position and/or orientation of the distal end of the robot manipulator in the null space such that a first metric based on the components satisfies one of a following criteria: unequal to zero, greater than a specified limit, or a maximum; and control the robot manipulator to move the subset of the links in the null space so as to assume a pose according to the components of the transpose of the Jacobian matrix as determined.

    2. The robot system according to claim 1, wherein the components of the transpose of the Jacobian matrix associated with the respective selected direction are listed in a respective column of the transpose of the Jacobian matrix, wherein the first metric is a vector norm of the respective column.

    3. The robot system according to claim 2, wherein the control unit is configured to determine respective components of the transpose of the Jacobian matrix based on a gradient-based search using a respective vector norm as an inverse cost function.

    4. The robot system according to claim 1, wherein the control unit is configured to: determine whether a selection has been made by the user at the operating unit; and in absence of the selection by the user, determine all components of the transpose of the Jacobian matrix in the null space such that a second metric based on all components of the transpose of the Jacobian matrix satisfies one of the following criteria: unequal to zero, greater than the specified limit, the maximum.

    5. The robot system according to claim 4, wherein the control unit is configured to determine respective components of the transpose of the Jacobian matrix based on a gradient-based search with the determinants of a matrix product of the Jacobian matrix and the transpose of the Jacobian matrix as an inverse cost function.

    6. The robot system according to claim 1, wherein the control unit is configured to control the robot manipulator to move the subset of the links in the null space so as to assume the pose according to the components of the transpose of the Jacobian matrix as determined, upon or after reaching the distal end of the robot manipulator of the predetermined position and/or orientation.

    7. The robot system according to claim 1, wherein the control unit is configured to control the robot manipulator to move the subset of the links in the null space so as to assume the pose according to the components of the transpose of the Jacobian matrix as determined, during an approach of the distal end of the robot manipulator to the predetermined position and/or orientation.

    8. The robot system according to claim 4, wherein in order to determine the components of the transpose of the Jacobian matrix associated with the respective selected direction, the control unit is configured to: traverse a plurality of poses through the subset of the links in the null space; determine a respective transpose of the Jacobian matrix current for a respective pose; compare transposes of the Jacobian matrices for the plurality of poses with each other; and select one of the transposes of the Jacobian matrices according to the first metric or the second metric.

    9. The robot system according to claim 4, wherein in order to determine the components of the transpose of the Jacobian matrix associated with the respective selected direction, the control unit is configured to: simulate a plurality of poses of the subset of the links in the null space; determine a respective transpose of the Jacobian matrix current for a respective pose; compare the transposes of the Jacobian matrices for the plurality of poses with each other; and select one of the transposes of the Jacobian matrices according to the first metric or the second metric.

    10. A method of operating a robot manipulator having a plurality of links interconnected by joints with at least partially redundant degrees of freedom with respect to each other, such that at least a subset of the links of the robot manipulator is movable in a null space without changing a position and/or orientation of a distal end of the robot manipulator, the method comprising: detecting, using an operating unit, an input from a user with respect to at least one selected direction of a force and/or a torque at the distal end of the robot manipulator, and transmitting the input as detected; receiving, using a control unit, the input from the operating unit; determining, using the control unit, components of a transpose of a Jacobian matrix associated with a respective selected direction for a predetermined position and/or orientation of the distal end of the robot manipulator in the null space such that a first metric based on the components satisfies one of a following criteria: unequal to zero, greater than a specified limit, or a maximum; and controlling, using the control unit, the robot manipulator to move the subset of the links in the null space so as to assume a pose according to the components of the transpose of the Jacobian matrix as determined.

    11. The method according to claim 10, wherein the components of the transpose of the Jacobian matrix associated with the respective selected direction are listed in a respective column of the transpose of the Jacobian matrix, wherein the first metric is a vector norm of the respective column.

    12. The method according to claim 11, wherein the method comprises determining respective components of the transpose of the Jacobian matrix based on a gradient-based search using a respective vector norm as an inverse cost function.

    13. The method according to claim 10, wherein the method comprises: determining whether a selection has been made by the user at the operating unit; and in absence of the selection by the user, determining all components of the transpose of the Jacobian matrix in the null space such that a second metric based on all components of the transpose of the Jacobian matrix satisfies one of the following criteria: unequal to zero, greater than the specified limit, the maximum.

    14. The method according to claim 13, wherein the method comprises determining respective components of the transpose of the Jacobian matrix based on a gradient-based search with the determinants of a matrix product of the Jacobian matrix and the transpose of the Jacobian matrix as an inverse cost function.

    15. The method according to claim 10, wherein the method comprises controlling the robot manipulator to move the subset of the links in the null space so as to assume the pose according to the components of the transpose of the Jacobian matrix as determined, upon or after reaching the distal end of the robot manipulator of the predetermined position and/or orientation.

    16. The method according to claim 10, wherein the method comprises controlling the robot manipulator to move the subset of the links in the null space so as to assume the pose according to the components of the transpose of the Jacobian matrix as determined, during an approach of the distal end of the robot manipulator to the predetermined position and/or orientation.

    17. The method according to claim 13, wherein in order to determine the components of the transpose of the Jacobian matrix associated with the respective selected direction, the method comprises: traversing a plurality of poses through the subset of the links in the null space; determining a respective transpose of the Jacobian matrix current for a respective pose; comparing transposes of the Jacobian matrices for the plurality of poses with each other; and selecting one of the transposes of the Jacobian matrices according to the first metric or the second metric.

    18. The method according to claim 13, wherein in order to determine the components of the transpose of the Jacobian matrix associated with the respective selected direction, the method comprises: simulating a plurality of poses of the subset of the links in the null space; determining a respective transpose of the Jacobian matrix current for a respective pose; comparing the transposes of the Jacobian matrices for the plurality of poses with each other; and selecting one of the transposes of the Jacobian matrices according to the first metric or the second metric.

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0032] In the drawings:

    [0033] FIG. 1 shows a robot system according to an embodiment of the invention, and

    [0034] FIG. 2 shows a method according to a further embodiment of the invention.

    [0035] The representations in the figures are schematic and not to scale.

    DETAILED DESCRIPTION

    [0036] FIG. 1 shows a robot system 1 with a robot manipulator 3 and with an operating unit 7, wherein the robot manipulator 3 has a control unit 5. The robot manipulator 3 has a plurality of links 9 interconnected by joints, some of which have redundant degrees of freedom with respect to each other. Thus, a subset of the links 9 of the robot manipulator 3 is movable in a null space, that is, without changing a position of a distal end 11 of the robot manipulator 3. The operating unit 7 is a user computer connected to the control unit 5 of the robot manipulator 3, and serves for detecting an input from a user with respect to at least a selected direction of a force or torque applied at the distal end 11 of the robot manipulator 3, and for transmitting the detected input to the control unit 5. The control unit 5 determines components of a transpose of a Jacobian matrix associated with the respective selected direction for a predetermined position of the distal end 11 of the robot manipulator 3 in the null space such that a first metric based on the components satisfies the criterion of “greater than a specified limit”. Torque sensors are arranged at the joints of the robot manipulator 3, which in their entirety detect a vector of joint torques at the robot manipulator 3. From the components of this vector, those parts that belong to a vector of external torques are determined; this is done by subtracting the expected torques, in particular, those generated by gravity or dynamic torques from accelerations on the robot manipulator 3. The external torques can come from an external force at the distal end of the manipulator 3 or from an external torque at the distal end of the robot manipulator 3. In order for a corresponding torque to be detected at the torque sensors, such a torque must also be present at the respective joint of the robot manipulator 3. Here, the following relationship shows how the components of the external force winder F.sub.ext are mapped on the vector of external torques τ.sub.ext by the transpose of the Jacobian matrix J.sup.T:


    τ.sub.ext=J.sup.TF.sub.ext.

    [0037] If the user now selects the y-direction with respect to a force corresponding to the fifth component of the vector of the external force winder, the fifth column of the transpose of the Jacobian matrix is to be optimized accordingly and a norm of the fifth column as the first metric for this fifth column is to be kept as far as possible from zero, i.e., maximized. Here it is adjustable by the user whether a two-norm or an infinity-norm is used as norm. The above equation thus results in:

    [00002] τ e x t = J 1 1 T J 1 2 T J 1 3 T J 1 4 T J 1 5 T J 1 6 T J 2 1 T J 2 2 T J 2 3 T J 2 4 T J 2 5 T J 2 6 T . J 3 1 T J 3 2 T J 3 3 T J 3 4 T J 3 5 T J 3 6 T . J 4 1 T J 4 2 T J 4 3 T J 4 4 T [ J 45 T ] J 4 6 T .Math. ( . ) . J 5 1 T J 5 2 T J 5 3 T J 5 4 T J 5 5 T J 5 6 T F y J 6 1 T J 6 2 T J 6 3 T J 6 4 T J 6 5 T J 6 6 T . J 7 1 T J 7 2 T J 7 3 T J 7 4 T J 7 5 T J 7 6 T

    [0038] Furthermore, if the x-direction and the z-direction are selected by the user as the respective directions of interest for forces, with the x-direction and the z-direction of a force at the distal end of the robot manipulator 3 occupying the fourth and the sixth component vectors of the external force winders, the fourth and the sixth columns of the transpose of the Jacobian matrix are to be maximized accordingly:

    [00003] τ e x t = J 1 1 T J 1 2 T J 1 3 T J 1 4 T J 1 5 T J 1 6 T . J 2 1 T J 2 2 T J 2 3 T J 2 4 T J 2 5 T J 2 6 T . J 3 1 T J 3 2 T J 3 3 T J 3 4 T J 3 5 T J 3 6 T . J 4 1 T J 4 2 T J 4 3 T [ J 4 4 T ] J 45 T [ J 4 6 T ] .Math. ( F X ) . J 5 1 T J 5 2 T J 5 3 T J 5 4 T J 5 5 T J 5 6 T . J 6 1 T J 6 2 T J 6 3 T J 6 4 T J 6 5 T J 6 6 T F Z J 7 1 T J 7 2 T J 7 3 T J 7 4 T J 7 5 T J 7 6 T

    [0039] The control unit 5 thereby determines the respective components of the transpose of the Jacobian matrix on the basis of a gradient-based search using the respective vector norm as the inverse cost function.

    [0040] FIG. 2 shows a method of operating a robot manipulator 3 having a plurality of links 9 interconnected by joints with at least partially redundant degrees of freedom with respect to each other, such that at least a subset of the links 9 of the robot manipulator 3 is movable in a null space without changing a position and/or orientation of a distal end 11 of the robot manipulator 3, the method including: [0041] Detecting S1 an input from a user with respect to at least one selected direction of a force and/or a torque at the distal end 11 of the robot manipulator 3 by an operating unit 7 connected to the control unit 5 and transmitting the detected input to the control unit 5, [0042] Determining S2 of components of a transpose of a Jacobian matrix associated with the respective selected direction for a predetermined position and/or orientation of the distal end 11 of the robot manipulator 3 in the null space such that a first metric based on the components satisfies one of the following criteria: unequal to zero, greater than a specified limit, maximum; and [0043] Controlling S3 the robot manipulator 3 to move the subset of links 9 in the null space to assume a pose according to the determined components of the transpose of the Jacobian matrix by the control unit 5.

    [0044] Although the invention has been further illustrated and explained in detail by example embodiments, the invention is not limited by the disclosed examples and other variations may 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 a wide range of variations exists. It is also clear that example embodiments are really only examples which are not to be understood in any way as limiting, for example, the scope of protection, the possibilities of use or the configuration of the invention. Rather, the preceding specification and the figure description enable the person skilled in the art to implement the example embodiments in a concrete manner, wherein the person skilled in the art, being aware of the disclosed inventive idea, can make a variety of changes, for example, with respect to the function or the arrangement of individual elements mentioned in an example embodiment, without leaving the scope of protection defined by the claims and their legal equivalents, such as further explanations in the specification.

    LIST OF REFERENCE NUMERALS

    [0045] 1 Robot system [0046] 3 Robot manipulator [0047] 5 Control unit [0048] 7 Operating unit [0049] 9 Links [0050] 11 Distal end the robot manipulator [0051] S1 Detecting [0052] S2 Determining [0053] S3 Controlling