METHOD AND COMPUTER PROGRAM PRODUCT FOR CONTROLLING A ROBOT
20240261964 ยท 2024-08-08
Inventors
- Johannes ENGLSBERGER (Wessling, EC)
- Gianluca GAROFALO (Wessling, DE)
- George Adrian MESESAN (Wessling, DE)
Cpc classification
B25J9/1633
PERFORMING OPERATIONS; TRANSPORTING
B25J9/1607
PERFORMING OPERATIONS; TRANSPORTING
G05B2219/39197
PHYSICS
International classification
Abstract
A method for controlling a kinematically redundant robot (100) in order to fulfill multiple tasks. At least one passivity-based first controller module (102) is used, at least one task target description and at least one associated task mapping are computed for the at least one first controller module (102), at least one weighting is computed for the tasks, and the at least one first controller module (102) is integrated into an overall controller (104), using the at least one weighting. Moreover, the invention relates to a computer program product that includes commands which, when the program is executed with the aid of at least one processor, prompt the processor to carry out such a method.
Claims
1-30. (canceled)
31. A method for controlling a kinematically redundant robot in order to fulfill multiple tasks, comprising the steps of using at least one passivity-based first controller module, computing at least one task target description and at least one associated task mapping for the at least one first controller module, computing at least one weighting the tasks weighting in the form of a task-specific symmetrical matrix W.sub.k=?.sub.kM.sub.k.sup.?1, wherein the matrix W.sub.k from the inverse of the task inertia matrix M.sub.k, where M.sub.k=(J.sub.kM.sup.?1J.sub.kT).sup.?1, J.sub.k is the task Jacobian and M is the inertia matrix of the dynamic model of the robot, and a weighting scalar ?.sub.k for independently weighting different tasks with respect to each other, and integrating the at least one first controller module into an overall controller, using the at least one task weighting matrix W.sub.k which is combined in the form of sub-matrices into a symmetrical and block-diagonal overall weighting matrix W.
32. The method as recited in claim 30, wherein the at least one task target description and the at least one associated task mapping are computed in such a way that a nominal behavior of the at least one first controller module corresponds to the behavior of a mass-spring-damper system.
33. The method as recited in claim 30, wherein the at least one task target description and the at least one associated task mapping are computed based on a natural robot inertia.
34. The method as recited in claim 30, wherein the at least one task target description and the at least one associated task mapping are computed in such a way that task-specific Coriolis and centrifugal effects remain unchanged, while all other Coriolis and centrifugal effects are compensated for.
35. The method as recited in claim 30, wherein the at least one task target description is computed as a task vector, or the at least one associated task mapping is computed as a task mapping matrix.
36. The method as recited in claim 30, wherein at least one further controller module is integrated into the overall controller.
37. The method as recited in claim 30, wherein at least one further controller module formulated as a constraint is integrated into the overall controller.
38. The method as recited in claim 36, wherein the at least one further controller module is weighted.
39. The method as recited in claim 30, wherein the at least one first controller module or the at least one further controller module is weighted in such a way that the overall controller has an at least approximately passive behavior, even for an overdetermined control problem.
40. The method as recited in claim 30, wherein the at least one first controller module or the at least one further controller module is optimized with the aid of at least one pseudoinverse and/or at least one inverse.
41. The method as recited in claim 30, wherein the at least one first controller module and/or the at least one further controller module are/is quadratically optimized.
42. The method as recited in claim 30, wherein the first controller module is designed as a tracking controller.
43. The method as recited in claim 30, wherein the first controller module is designed as a regulation controller.
44. The method as recited in claim 30, wherein a separate controller module is assigned to each controllable degree of freedom.
45. A computer program product that includes commands which, when the program is executed with the aid of at least one processor, prompt the processor to carry out the method as recited in claim 30.
Description
[0048] Exemplary embodiments of the present invention are described in greater detail below with reference to figures, which schematically show the following by way of example:
[0049]
[0050]
[0051]
[0052]
[0053]
[0054]
[0055] One embodiment of a modular passive tracking controller (MPTC) for stack of tasks-based controller-frameworks is described.
[0056]
[0057] The word may may refer in particular to optional features of the present invention. Consequently, there are also refinements and/or exemplary embodiments of the present invention which additionally or alternatively have the particular feature or the particular features.
[0058] If necessary, individual features may also be selected from the feature combinations disclosed above and used in combination with other features, with resolution of a structural and/or functional relationship possibly existing between the features, for delimiting the subject matter of the claims.
LIST OF REFERENCE NUMERALS
[0059] 100 robot [0060] 102 controller module [0061] 104 overall controller [0062] 106 task mapping matrix [0063] 108 optimization variables [0064] 110 task vector