Method and device for open-loop/closed-loop control of a robot manipulator

10464210 · 2019-11-05

Assignee

Inventors

Cpc classification

International classification

Abstract

The invention relates to a device and a method of controlling a robot manipulator, which includes a sensor for detecting an external force during an interaction of the robot manipulator with an environment. The proposed method is characterized in that a force-time curve is determined for the external force acting on the robot manipulator detected by the sensor, and, if the value of the detected external force is higher than a defined threshold value, a safety mode of the robot manipulator is activated, which controls a movement speed and/or a movement direction depending on the detected external force, wherein the movement speed and/or the movement direction of the robot manipulator is/are controlled depending on predetermined medical injury parameters before the safety mode is activated.

Claims

1. A method of controlling a robot manipulator, the robot manipulator comprising a sensor to detect an external force {right arrow over (F)}(t) acting on the robot manipulator during mechanical interaction of the robot manipulator with an environment, wherein the method comprises: controlling a movement speed |{right arrow over (V)}(t)| or a movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator based on speed or torque control, or speed and torque control, depending on predetermined medical parameters; determining a force-time curve of the external force {right arrow over (F)}(t) acting on the robot manipulator detected by the sensor; determining a time span t.sub.1 extending from a time t.sub.0 when a value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than a defined threshold value G1 to a subsequent time t.sub.1 when a first maximum Max1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is reached in the force-time curve, wherein the defined threshold value G1<the first maximum Max1(|{right arrow over (F)}(t)|); determining a time span t.sub.2 extending from the time t.sub.1 to a subsequent time t.sub.2 when a first minimum Min1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is reached in the force-time curve, wherein an overall time span t.sub.G=t.sub.1+t.sub.2, and wherein the first minimum Min1(|{right arrow over (F)}(t)|)<the first maximum Max1(|{right arrow over (F)}(t)|); and activating a safety mode of the robot manipulator when the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) in the force-time curve is greater than the defined threshold value G1: |{right arrow over (F)}(t)|>G1, and the overall time span t.sub.G is less than a defined threshold value G2: t.sub.G<G2 or the first maximum Max1(|{right arrow over (F)}(t)|) is greater than a defined threshold G3: Max1(|{right arrow over (F)}(t)|)>G3, wherein in the safety mode the movement speed |{right arrow over (V)}(t)| or the movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator is controlled based on the external force {right arrow over (F)}(t).

2. The method according to claim 1, wherein in the safety mode, an actuator of the robot manipulator is controlled based on the external force {right arrow over (F)}(t).

3. The method according to claim 2, wherein a torque generated by the actuator, a position of the actuator, or a speed of the actuator is individually limited based on the external force {right arrow over (F)}(t).

4. The method according to claim 1, wherein for G1=0.

5. The method according to claim 1, wherein the method further comprises stopping a current movement of the robot manipulator when for a time t>t.sub.2, the value |{right arrow over (F)}(t)| of the force {right arrow over (F)}(t) exceeds a defined threshold value G4:|{right arrow over (F)}(t)|>G4.

6. The method according to claim 5, wherein after stopping the current movement of the robot manipulator, the method further comprises: carrying out previous movement of the robot manipulator in a reverse direction until the value |{right arrow over (F)}(t)| of the force {right arrow over (F)}(t) is less than a defined threshold value G5: |{right arrow over (F)}(t)|<G5; and stopping the robot manipulator again after carrying out the previous movement of the robot manipulator.

7. The method according to claim 6, wherein G5=0.

8. The method according to claim 1, wherein the method further comprises: carrying out gravitation compensation of the robot manipulator when for a time t>t.sub.2, the value |{right arrow over (F)}(t)| of the force {right arrow over (F)}(t) exceeds a defined threshold value G4:|{right arrow over (F)}(t)|>G4, wherein in the gravitation compensation the robot manipulator is controlled in such a manner that only a gravitation force is compensated; and moving the robot manipulator away from at least one additional externally applied force in a compliant manner.

9. A device to control a robot manipulator, the device comprising: a sensor to detect an external force {right arrow over (F)}(t) acting on the robot manipulator during mechanical interaction of the robot manipulator with an environment; and a control unit configured to: control a movement speed |{right arrow over (V)}(t)| or a movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator based on speed or torque control, or speed and torque control, depending on predetermined medical parameters; determine a force-time curve of the external force {right arrow over (F)}(t) acting on the robot manipulator detected by the sensor; determine a time span t.sub.1 extending from a time t.sub.0 when a value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than a defined threshold value G1 to a subsequent time t.sub.1 when a first maximum Max1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is reached in the force-time curve, wherein the defined threshold value G1<the first maximum Max1(|{right arrow over (F)}(t)|); determine a time span t.sub.2 extending from the time t.sub.1 to a subsequent time t.sub.2 when a first minimum Min1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is reached in the force-time curve, wherein an overall time span t.sub.G=t.sub.1+t.sub.2, and wherein the first minimum Min1(|{right arrow over (F)}(t)|)<the first maximum Max1(|{right arrow over (F)}(t)|); and activate a safety mode of the robot manipulator when the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than the defined threshold value G1: |{right arrow over (F)}(t)|>G1, and the overall time span t.sub.G is less than a defined threshold value G2: t.sub.G<G2 or the first maximum Max1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than a defined threshold G3: Max1(|{right arrow over (F)}(t)|)>G3, wherein in the safety mode the movement speed |{right arrow over (V)}(t)| or the movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator is controlled based on the external force {right arrow over (F)}(t).

10. The device according to claim 9, wherein the robot manipulator comprises an actuator, and the control unit is configured to control the actuator based on the external force {right arrow over (F)}(t).

11. The device according to claim 10, wherein the control unit is configured to individually limit a torque generated by the actuator, a position of the actuator, or a speed of the actuator based on the external force {right arrow over (F)}(t).

12. The device according to claim 9, wherein G1=0.

13. The device according to claim 9, wherein the control unit is configured to stop a current movement of the robot manipulator when for a time t>t.sub.2, the value |{right arrow over (F)}(t)| of the force {right arrow over (F)}(t) exceeds a defined threshold value G4: |{right arrow over (F)}(t)|>G4.

14. The device according to claim 13, wherein after stopping the current movement of the robot manipulator, the control unit is configured to: carry out previous movement of the robot manipulator in a reverse direction until the value |{right arrow over (F)}(t)| of the force |{right arrow over (F)}(t)| is less than a defined threshold value G5: |{right arrow over (F)}(t)|<G5; and stop the robot manipulator again after carrying out the previous movement of the robot manipulator.

15. The device according to claim 14, wherein G5=0.

16. The device according to claim 9, wherein the control unit is configured to: carry out gravitation compensation of the robot manipulator when for a time t>t.sub.2, the value |{right arrow over (F)}(t)| of the force {right arrow over (F)}(t) exceeds a defined threshold value G4: |{right arrow over (F)}(t)|>G4, wherein in the gravitation compensation the robot manipulator is controlled in such a manner that only a gravitation force is compensated; and move the robot manipulator away from at least one additional externally applied force in a compliant manner.

17. A robot comprising: a robot manipulator; and a device to control the robot manipulator, the device comprising: a sensor to detect an external force {right arrow over (F)}(t) acting on the robot manipulator during mechanical interaction of the robot manipulator with an environment; and a control unit configured to: control a movement speed |{right arrow over (V)}(t)| or a movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator based on speed or torque control, or speed and torque control, depending on predetermined medical parameters; determine a force-time curve of the external force {right arrow over (F)}(t) acting on the robot manipulator detected by the sensor; determine a time span t.sub.1 extending from a time t.sub.0 when a value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than a defined threshold value G1 to a subsequent time t.sub.1 when a first maximum Max1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is reached in the force-time curve, wherein the defined threshold value G1<the first maximum Max1(|{right arrow over (F)}(t)|); determine a time span t.sub.2 extending from the time t.sub.1 to a subsequent time t.sub.2 when a first minimum Min1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is reached in the force-time curve, wherein an overall time span t.sub.G=t.sub.1+t.sub.2, and wherein the first minimum Min1(|{right arrow over (F)}(t)|)<the first maximum Max1(|{right arrow over (F)}(t)|); and activate a safety mode of the robot manipulator when the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than the defined threshold value G1: |{right arrow over (F)}(t)|>G1, and the overall time span t.sub.G is less than a defined threshold value G2: t.sub.G<G2 or the first maximum Max1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than a defined threshold G3: Max1(|{right arrow over (F)}(t)|)>G3, wherein in the safety mode the movement speed |{right arrow over (V)}(t)| or the movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator is controlled based on the external force {right arrow over (F)}(t).

18. A system to control a robot manipulator, wherein the system comprises: a processing device; and a memory device to store a plurality of instructions that, when executed by the processing device, cause the processing device to perform operations comprising: controlling a movement speed |{right arrow over (V)}(t)| or a movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator based on speed or torque control, or speed and torque control, depending on predetermined medical parameters; determining a force-time curve of an external force {right arrow over (F)}(t) acting on the robot manipulator detected by a sensor, the sensor configured to detect the external force {right arrow over (F)}(t) acting on the robot manipulator during mechanical interaction of the robot manipulator with an environment; determining a time span t.sub.1 extending from a time t.sub.0 when a value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than a defined threshold value G1 to a subsequent time t.sub.1 when a first maximum Max1(|{right arrow over (F)}(t)|) of the value |{right arrow over (V)}(t)| of the external force {right arrow over (F)}(t) is reached in the force-time curve, wherein the defined threshold value G1<the first maximum Max1(|{right arrow over (F)}(t)|); determining a time span t.sub.2 extending from the time t.sub.1 to a subsequent time t.sub.2 when a first minimum Min1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is reached in the force-time curve, wherein an overall time span t.sub.G=t.sub.1+t.sub.2, and wherein the first minimum Min1(|{right arrow over (F)}(t)|)<the first maximum Max1(|{right arrow over (F)}(t)|); and activating a safety mode of the robot manipulator when the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than the defined threshold value G1: |{right arrow over (F)}(t)|>G1, and the overall time span t.sub.G is less than a defined threshold value G2: t.sub.G<G2 or the first maximum Max1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than a defined threshold G3: Max1(|{right arrow over (F)}(t)|)>G3, wherein in the safety mode the movement speed |{right arrow over (V)}(t)| or the movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator is controlled based on the external force {right arrow over (F)}(t).

19. A non-transitory storage medium storing instructions that, when executed by a processing device, cause the processing device to perform operations for controlling a robot manipulator, the operations comprising: controlling a movement speed |{right arrow over (V)}(t)| or a movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator based on speed or torque control, or speed and torque control, depending on predetermined medical parameters; determining a force-time curve of an external force {right arrow over (F)}(t) acting on the robot manipulator detected by a sensor, the sensor configured to detect the external force {right arrow over (F)}(t) acting on the robot manipulator during mechanical interaction of the robot manipulator with an environment; determining a time span t.sub.1 extending from a time t.sub.0 when a value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than a defined threshold value G1 to a subsequent time t.sub.1 when a first maximum Max1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is reached in the force-time curve, wherein the defined threshold value G1<the first maximum Max1(|{right arrow over (F)}(t)|); determining a time span t.sub.2 extending from the time t.sub.1 to a subsequent time t.sub.2 when a first minimum Min1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is reached in the force-time curve, wherein an overall time span t.sub.G=t.sub.1+t.sub.2, and wherein the first minimum Min1(|{right arrow over (F)}(t)|)<the first maximum Max1(|{right arrow over (F)}(t)|); and activating a safety mode of the robot manipulator when the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than the defined threshold value G1: |{right arrow over (F)}(t)|>G1, and the overall time span t.sub.G is less than a defined threshold value G2: t.sub.G<G2 or the first maximum Max1(|{right arrow over (F)}(t)|) of the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than a defined threshold G3: Max1(|{right arrow over (F)}(t)|)>G3, wherein in the safety mode the movement speed |{right arrow over (V)}(t)| or the movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator is controlled based on the external force {right arrow over (F)}(t).

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) In the drawings:

(2) FIG. 1 shows a typical force-time curve when the robot manipulator collides with an object, in the case of a spatial blocking of the object;

(3) FIGS. 2A-2E show diagrammatic procedures of the proposed method for example embodiments;

(4) FIG. 3 shows a diagrammatic design of a robot according to the invention; and

(5) FIG. 4 shows the robot of FIG. 3 with example articulation and actuator.

DETAILED DESCRIPTION

(6) FIG. 1 shows a typical force-time curve 100 in a collision of the robot manipulator with an object, in the case of a spatial blocking of the object, i.e., in the case in which the object, after the collision with the robot manipulator, cannot move away and is thus spatially immobilized and hence squeezed.

(7) In FIG. 1, the x axis represents the time t, and the y axis represents the value |{right arrow over (F)}(t)| of an external force {right arrow over (F)}(t) detected by a sensor, wherein the external force {right arrow over (F)}(t) acts on the robot manipulator. As can be seen from the represented force-time curve 100 determined by the control unit, starting at time t.sub.0, an external force {right arrow over (F)}(t) is detected by the sensor (value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) being represented in the force-time curve 100), i.e., at time t.sub.0 a collision of the robot manipulator with an object occurs, for example, with an arm of a human. After a first maximum has been reached at time t.sub.1 after 5 ms, for example, the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) detected by the sensor decreases until at time t.sub.2 a first minimum is reached. The represented force-time curve is not true to scale and indicates only the qualitative force over time.

(8) Due to the spatial immobilization of the arm, for example, the arm is arranged between the robot manipulator and a wall, the arm is squeezed by the further movement of the robot manipulator, which manifests itself in the still rising force for a time greater than t.sub.2.

(9) FIGS. 2A-2E show several diagrammatic courses of action for example embodiments of the method for open-loop control of a robot manipulator 202, which, for the detection of a mechanical interaction with an environment, includes a sensor 203. The movement speed |{right arrow over (V)}(t)| and/or the movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator are open-loop controlled in this example depending on predetermined medical injury parameters. The medical injury parameters contain information representative of an effect of a collision between the robot manipulator and the human body. Further information on different injury parameters can be found in DE 102013212887 A1, to which reference is made in this regard. In the case at hand, the open-loop control of the robot manipulator occurs in principle by a speed open-loop control, which implicitly can ensure a speed, for example, by introducing a virtual (possibly variable) damping, which generates corresponding counter-torques, in order to ensure the speed in spite of the actuation in the form of a torque closed-loop control.

(10) In FIG. 2A, during the operation of the robot manipulator 202, a continuous detection of an external force {right arrow over (F)}(t) acting on the robot manipulator is carried out by the sensor 203, and a force-time curve 100 is determined by the control unit 201, at operation 101. This force-time curve is stored at least temporarily. If, in the process, a value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) greater than a defined threshold value G1 is determined: |{right arrow over (F)}(t)|>G1, then a safety mode of the robot manipulator 202 is activated at operation 102. The safety mode is characterized in that the movement speed |{right arrow over (V)}(t)| and/or the movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| are open-loop controlled depending on the external force {right arrow over (F)}(t). Thus, in this case of a speed open-loop control there is a switch from a speed open-loop control to a force open-loop control. However, in principle, the switch can be implemented by a torque closed-loop regulation.

(11) In FIG. 2B, after operation 101, a safety mode is activated at operation 103 when a value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is greater than the defined threshold value G1: |{right arrow over (F)}(t)|>G1, and overall time span t.sub.G(t.sub.G=t.sub.1+t.sub.2)<G2 and/or Max1(|{right arrow over (F)}(t)|)>G3, wherein G2 and G3 are defined threshold values.

(12) In FIG. 2C, after operation 103, when for a time t>t.sub.2, the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) exceeds a defined threshold value G4: |{right arrow over (F)}(t)|>G4, an actual movement of the robot manipulator 202 is stopped at operation 104.

(13) In FIG. 2D, after operation 103, when for a time t>t.sub.2, the value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) exceeds a defined threshold value G4: |{right arrow over (F)}(t)|>G4, a gravitation compensation or a compliance control of the robot manipulator 202 is carried out at operation 105, in which the robot manipulator is open-loop or closed-loop controlled in such a manner that only the force of gravity is compensated, and any additional externally applied force leads to the robot manipulator 202 moving away in a compliant manner.

(14) In FIG. 2E, after the above-described stopping of the actual movement of the robot manipulator 202 at operation 104 in FIG. 2C, the previous movement of the robot manipulator is advantageously carried out in a reverse direction until a value |{right arrow over (F)}(t)| of the external force {right arrow over (F)}(t) is less a threshold value G5: |{right arrow over (F)}(t)|>G5 at operation 106, wherein a stopping occurs again after carrying out the previous movement in the reverse direction. G5 here is a defined threshold value, which, in an advantageous method variant, is selected to be equal to zero, i.e., G5=0.

(15) FIG. 3 shows a diagrammatic structure of a robot 200 with a device 204 for open-loop control of a robot manipulator 202 of the robot. The device 204 of the robot 200 includes a sensor 203, which detects an external force {right arrow over (F)}(t) acting on the robot manipulator 202, and a control unit 201, which is designed and configured in such a manner that a force-time curve 100 is determined and movement speed |{right arrow over (V)}(t)| and/or a movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| of the robot manipulator 202 is/are controlled depending on predetermined medical injury parameters, and that, if the value |{right arrow over (F)}(t)| of the detected external force {right arrow over (F)}(t) is greater than a defined threshold value G1: |{right arrow over (F)}(t)|>G1, a safety mode of the robot manipulator 202 is activated, which open-loop controls the movement speed |{right arrow over (V)}(t)| and/or the movement direction {right arrow over (V)}(t)/|{right arrow over (V)}(t)| depending on the detected external force {right arrow over (F)}(t). The control unit 201 is also capable, based on the value |{right arrow over (F)}(t)| of the detected external force {right arrow over (F)}(t) in the force-time curve 100, of performing various operations directed to the robot manipulator 202, including safety mode activation, according to the description provided hereinabove in reference to FIGS. 2B-2E.

(16) FIG. 4 shows a diagrammatic design of the robot 200 shown in FIG. 3 with an example articulation 205 and actuator 206. In the safety mode, one or more actuators 206 of the robot manipulator 202 are open-looped controlled depending on the detected external force {right arrow over (F)}(t). Advantageously, the torques generated by the actuators 206 are limited depending on the detected external force {right arrow over (F)}(t). Advantageously, the robot manipulator 202 includes one or more articulations 205, wherein, at least one articulation angle of the articulations 205 is limited depending on the detected external force {right arrow over (F)}(t).

(17) Although the invention is illustrated and explained in greater detail by using preferred example embodiments, the invention is not limited to the disclosed examples and other variations can also be derived therefrom by the person skilled in the art, without leaving the scope of protection of the invention. Therefore, it is clear that there are numerous possible variations. It is also clear that embodiments mentioned as examples really represent only examples which in no way should be conceived of as a limitation of, for example, the scope of protection, of the possible applications, or of the configuration of the invention. Rather, the preceding description and the description of the figures enable the person skilled in the art to concretely implement the example embodiments, wherein the person skilled in the art, having learned the disclosed inventive thought, can make numerous changes, for example, with regard to the function of the arrangement, to an example embodiment of mentioned elements, without leaving the scope of protection which is defined by the claims and their legal equivalents such as, for example, a more detailed explanation in the description.

(18) List of Reference Numerals

(19) 100 Force-time curve

(20) 101-106 Method steps

(21) 200 Robot

(22) 201 Control unit for open-loop/closed-loop control

(23) 202 Robot manipulator

(24) 203 Sensor

(25) 204 Device

(26) 205 Articulation

(27) 206 Actuator