Controlling a compliant-controlled robot

10576629 ยท 2020-03-03

Assignee

Inventors

Cpc classification

International classification

Abstract

In one aspect, a method for controlling a compliant-controlled robot includes performing a boundary monitoring of the robot and controlling movement of the robot with a return force that is predetermined by control technology. If the robot is already in a blocked area upon activation of the boundary monitoring, then a first return force operates to return the robot from a current position in the blocked area toward a boundary of the blocked area. If the robot arrived at the current position in the blocked area after activation of the boundary monitoring, then a second return force operates to return the robot from the current position toward the boundary. The first return force is at least temporarily less than the second return force.

Claims

1. A method for controlling a robot, the method comprising: determining with a robot controller whether or not a boundary monitoring of the robot has been activated; controlling by the robot controller movement of at least one axis of the robot with a first return force if the robot, upon activation of the boundary monitoring, is already in a blocked area, wherein the first return force operates to return the robot from a current position in the blocked area toward a boundary of the blocked area and the first return force is predetermined independent of a distance of the current position from the boundary; and controlling by the robot controller movement of at least one axis of the robot with a second return force if the robot arrived at the current position in the blocked area after activation of the boundary monitoring, wherein the second return force operates to return the robot from the current position toward the boundary and the second return force is predetermined; wherein the first return force is at least temporarily less than the second return force.

2. The method of claim 1, wherein the first return force is at least temporarily zero.

3. The method according to claim 1, further comprising: predetermining a stiffness of a virtual spring that ties the robot to an anchor position; wherein a first stiffness is predetermined if the robot, upon activation of the boundary monitoring, is already in a position in the blocked area; wherein a second stiffness is predetermined if the robot arrived at the current position in the blocked area after activation of the boundary monitoring; and wherein the first stiffness is less than the second stiffness, at least upon activation of the boundary monitoring.

4. The method of claim 3, wherein the virtual spring ties the robot to an anchor position on the boundary.

5. The method of claim 1, further comprising: predetermining a stiffness of a virtual spring that ties the robot to an anchor position; wherein the stiffness is predetermined based on a time lag from the activation of the boundary monitoring.

6. The method of claim 5, wherein the virtual spring ties the robot to an anchor position on the boundary.

7. The method of claim 5, wherein the stiffness is predetermined based on a time lag if the robot is already in the blocked area upon activation of the boundary monitoring.

8. The method of claim 5, wherein the stiffness is predetermined based on a time lag only if the robot is already in the blocked area upon activation of the boundary monitoring.

9. The method of claim 1, further comprising: predetermining a stiffness of a virtual spring that ties the robot to an anchor position; wherein the stiffness is predetermined based on a motion of the robot relative to the boundary.

10. The method of claim 9, wherein the predetermined stiffness is greater when the motion is in a direction away from the boundary than when the motion is in a direction that is not away from the boundary.

11. The method of claim 10, wherein the predetermined stiffness is greater in a direction away from the boundary when the robot is already in the blocked area upon activation of the boundary monitoring.

12. The method of claim 10, wherein the predetermined stiffness is greater in a direction away from the boundary only when the robot is already in the blocked area upon activation of the boundary monitoring.

13. A method for controlling a robot, the method comprising: performing by a robot controller a boundary monitoring of the robot; controlling by the robot controller movement of at least one axis of the robot with a first return force, wherein the first return force operates to return the robot from a current position in a blocked area to a boundary of the blocked area and the first return force is predetermined independent of a distance of the current position from the boundary, if the robot is moved a specified distance toward the boundary or parallel to the boundary; and controlling by the robot controller movement of at least one axis of the robot with a second return force, which is greater than the first return force, the second return force being predetermined, if the robot is moved by the specified distance away from the boundary.

14. The method of claim 13, wherein the first return force is equivalent to zero.

15. The method of claim 13, wherein the robot is moved with the second return force if the current position of the robot is already in the blocked area when the boundary monitoring begins.

16. The method of claim 13, wherein the robot is moved with the second return force only if the current position of the robot is already in the blocked area upon activation of the boundary monitoring.

17. The method of claim 13, further comprising: controlling movement of at least one axis of the robot with a third return force if the robot, upon activation of the boundary monitoring, is already in a blocked area, wherein the third return force operates to return the robot from a current position in the blocked area toward a boundary of the blocked area and is predetermined; and controlling movement of at least one axis of the robot with a fourth return force if the robot arrived at the current position in the blocked area after activation of the boundary monitoring, wherein the fourth return force operates to return the robot from the current position toward the boundary and is predetermined; wherein the third return force is at least temporarily less than the fourth return force.

18. The method of claim 13, wherein an anchor position of a virtual spring to which the robot is tied cannot be displaced away from the boundary by an external impingement of force.

19. The method of claim 18, wherein the external impingement force is an external manual guidance force applied to the robot.

20. The method of claim 13, further comprising: setting an anchor position of a virtual spring to which the robot is tied as a current position of the robot or as a position within a connection between the current position and the boundary that is spaced apart from the current position toward the boundary by a distance.

21. The method of claim 20, wherein the connection is the shortest connection between the current position and the boundary.

22. The method of claim 1, further comprising: controlling the robot with a damping force counteracting a motion of the robot, the damping force based on a current speed of the robot; wherein the damping force increases more strongly in a second speed range above a predetermined minimum speed than in a first speed range below the minimum speed.

23. A controller for controlling a robot, the controller having program code stored on a non-transitory computer-readable storage medium and that, when executed by the controller, causes the controller to: determine whether or not a boundary monitoring of the robot has been activated; control movement of at least one axis of the robot with a first return force if the robot, upon activation of the boundary monitoring, is already in a blocked area, wherein the first return force operates to return the robot from a current position in the blocked area to a boundary of the blocked area and is predetermined independent of a distance of the current position from the boundary; and control movement of at least one axis of the robot with a second return force if the robot arrived at the current position in the blocked area after activation of the boundary monitoring, wherein the second return force operates to return the robot from the current position toward the boundary and is predetermined; wherein the first return force is at least temporarily less than the second return force.

24. A robot arrangement comprising: a multi-axis robot; and the controller of claim 23 communicating with the robot and controlling operation the robot.

25. A computer programming product having program code stored on a non-transitory computer-readable storage medium, the program code, when executed by a controller associated with a multi-axis robot, causing the controller to: determine whether or not a boundary monitoring of the robot has been activated; control movement of at least one axis of the robot with a first return force if the robot, upon activation of the boundary monitoring, is already in a blocked area, wherein the first return force operates to return the robot from a current position in the blocked area to a boundary of the blocked area and is predetermined independent of a distance of the current position from the boundary; and control movement of at least one axis of the robot with a second return force if the robot arrived at the current position in the blocked area after activation of the boundary monitoring, wherein the second return force operates to return the robot from the current position toward the boundary and is predetermined; wherein the first return force is at least temporarily less than the second return force.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) Additional advantages and features are found in the dependent claims and the exemplary implementations, wherein, in partially schematic views:

(2) FIG. 1: shows a method for controlling a compliant-controlled robot according to one embodiment of the present invention;

(3) FIG. 2: shows an application of a return force in a blocked area according to one embodiment of the present invention;

(4) FIG. 3: shows an application of a return force in a blocked area according to another embodiment of the present invention; and

(5) FIG. 4: shows a robot arrangement with the robot and a control according to the present invention.

DETAILED DESCRIPTION

(6) FIG. 4 shows a robot arrangement with a control 2 and a multi-axis robot 1 flexibly controlled thereby according to one embodiment of the present invention. The control 2 shows in the following with reference to FIG. 1-3 a method explained for controlling the robot 1 and/or is implemented therefore by hardware and/or software.

(7) In a first step S10 the control 2 determines if a boundary monitoring of the robot has been activated. If this is not the case (S10: N), step S10 is repeated.

(8) If the control 2 determines that the boundary monitoring of the robot has been activated (S10: Y), in step S20 a timer t is initialized and in step S30 it is checked if a present position x.sub.0 of the robot 1 is already in a blocked area S upon activation of the boundary monitoring.

(9) The position x may represent a one- or multi-dimensional position and for example describe the position of one or more axes of the robot 1 or the position and orientation and/or the position of its TCP in the work space. In FIGS. 2, 3 it is shown in one dimension for better clarity, with s representing the boundary and x>s the blocked area S.

(10) If the control 2 detects in step S30 that the present position x.sub.0 of the robot 1 already upon activation of the boundary monitoring is located in the area S (S30: Y), it continues with step S40, otherwise it skips it and continues with step S50.

(11) In step S40 the control 2 specifies a first return force T.sub.1 by control technology, which returns the robot 1 from its present position x.sub.0 in the blocked area S to the boundary s of this area.

(12) Additionally, in step S40 the timer t is incremented, subsequently the control and/or the method return to step S30. This way, the control 2 predetermines by control technology the first return force T.sub.1 until the present position x.sub.0 is no longer located in the blocked area S (S30: N), and then continues with step S50.

(13) In step S50 the timer t is incremented and in the following step S60 it is checked if the present position x.sub.0 of the robot 1 is (now) in the blocked area S. This way, indicated in the exemplary embodiment by the incrementation S50, it is determined in step S50 if the robot 1 assumes a present position x.sub.0 in the blocked area S only after activation of the boundary monitoring.

(14) If the control 2 determines in step S60 that the robot 1, only after activation of the boundary monitoring (cf. S50), assumes a present position x.sub.0 in the blocked area S (S60): Y), it continues with step S70, otherwise i.e. when the present position x.sub.0 is not located in the blocked area S (S60: N), it continues with step S80.

(15) In step S70 the control 2 stipulates the second return force T.sub.2 by way of control technology, which also returns the robot 1 from its present position x.sub.0 in the blocked area S to the boundary s of this area.

(16) In step S80 the robot 1 is, however, flexibly controlled as described for example in US 2004/0128026 A1, in which a (multi-dimensional) driving force T.sub.3 is commanded depending on a manually applied external force for the manual guidance of the robot and a (positive) distance from the boundary s.

(17) Subsequently to step S70 and S80, in step S90 it is respectively checked if the boundary monitoring is still activated and in this case (S90: Y) it is continued with step S50, otherwise, i.e. in case of deactivation of the boundary monitoring (S90: N), with step S10.

(18) FIG. 2 illustrates an impedance and/or admittance control of the compliant-controlled robot 1 in the blocked area x>s. Here, the robot 1 and/or its present position x.sub.0 by a virtual spring using control technology to an anchor position x.sub.s on the boundary s and by a virtual damper using control technology is tied inertially and/or to the environment.

(19) If the robot upon activation of the boundary monitoring is already located in the present position x.sub.0 in the blocked area x>s (S30: Y) here a first stiffness c.sub.1 of the spring is predetermined.

(20) If the robot, however, assumes only after activation of the boundary monitoring (cf. S50: t+t) the same position x.sub.0 in the blocked area x>s (S60: Y), a second stiffness c.sub.2 of the spring is predetermined.

(21) The first stiffness c.sub.1 is initially equivalent to zero in the exemplary embodiment and then increases depending on a time lag t from the activation t=0 of the boundary monitoring (cf. S20) until it reaches the value of the second stiffness c.sub.2.

(22) This way, the first stiffness c.sub.1 upon activation of the boundary monitoring and thereafter is initially smaller than the second stiffness c.sub.2. In a deviation, the first stiffness c.sub.1 may also be permanently smaller than the second stiffness c.sub.2.

(23) Accordingly, in the same present position x.sub.0 in the blocked area the first return force T.sub.1=c.sub.1.Math.(x.sub.0s), which is applied by the virtual spring using control technology, is at least temporarily smaller than the second return force T.sub.2=C.sub.2.Math.(x.sub.0s), at least initially equivalent to zero.

(24) This way, advantageously a surprisingly massive return motion of the robot 1 is prevented due to an activation of the boundary monitoring in a present position in the blocked area.

(25) The stiffness c.sub.1 of the virtual spring, which ties the robot by control technology to the anchor position x.sub.s on the boundary s, is predetermined greater in case of a motion away from the boundary s than a motion towards said boundary or parallel thereto: c.sub.1(d(x.sub.0s)/dt>0)>c.sub.1(d(x.sub.0s)/dt<0). In other words, a manual motion of the robot farther into the blocked area (d(x.sub.0s/dt>0) is opposed by a stronger resistance. In particular, the stiffness c.sub.1 for the movement towards the boundary or parallel thereto can initially be equivalent to zero, so that (initially) no automatic return motion is introduced, while the stiffness c.sub.1 for a motion away from the boundary may initially be greater than zero, so that it is faced right from the start with a resistance by control technology.

(26) FIG. 3 illustrates an impedance and/or admittance control of the compliant-controlled robot 1 in the blocked area x>s according to another embodiment of the present invention. Here, the robot 1 and/or its present position x.sub.0 are tied by a virtual spring using control technology to an anchor position x.sub.s, by which the present position x.sub.0 can be displaced towards the boundary s. Additionally, as explained with reference to FIG. 2, the robot may also be tied, by a virtual damper using control technology, inertially and/or to the environment, which is not shown in FIG. 3 for better clarity.

(27) As an anchor position x.sub.s, respectively a position is provided within the shortest connection between the present position x.sub.0 and the boundary s, which is distanced by a predetermined distance from the present position x.sub.0 from the boundary s. Hereby it is confirmed that an essentially constant return force is applied towards the boundary s. Similarly, the present position of the robot itself may be predetermined in order to prevent applying a return force towards the boundary, in particular at least at the onset upon activation of the boundary monitoring.

(28) As symbolically indicated in FIG. 3 by a uni-directionally blocking link, the anchor position x.sub.s can be displaced by impinging an external force, in particular manual guidance, of the robot 1 not away from the boundary s (towards the right in FIG. 3). A virtual spring counteracts a respective motion of the robot, which spring stresses the tied anchor position x.sub.s and the present position x.sub.0 distanced therefrom: T=c.Math.(x.sub.0x.sub.s).

(29) The anchor position x.sub.s can, however, be displaced by a motion of the robot 1 and/or its present position x.sub.0 towards the boundary (towards the left in FIG. 3), quasi with the present position x.sub.0.

(30) In other words, the anchor position x.sub.s is updated with and/or according to the present position x.sub.0 if it is displaced towards the boundary s, and is not updated if it is displaced away from the boundary s.

(31) This way, the return force T applied by the virtual spring via control technology, which returns the robot from its present position x.sub.0 in the blocked area S towards the boundary s of this area, depending on the distance of the position x.sub.0 from the anchor position x.sub.s that can be entrained, and thus on a distance of the position x.sub.0 from the boundary s itself, is predetermined either independently, if the robot moves towards the boundary or parallel in reference to the boundary, in particular equivalent to zero if the actual position itself is predetermined as the anchor position.

(32) On the other side, by retaining the anchor position x.sub.s another, greater retention force T is applied by the spring using control technology, if the robot is moved by the same distance away from the boundary.

(33) This embodiment can be combined, in particular instead of the explanation given with reference to FIG. 2 with the embodiment explained with reference to FIG. 1, i.e. the return force can respectively represent the first (perhaps another first) return force T.sub.1 (cf. S40), which is commanded and/or applied by control technology, if the robot is already, upon activation of the boundary monitoring, in the blocked area S (S30: Y). However, if the robot enters the blocked area S only after activation of the boundary monitoring, the second return force T.sub.2 can be predetermined, in particular as stipulated in US 2004/0128026 A1 mentioned at the outset. Similarly, the predetermined and/or applied return force explained with reference to FIG. 3 may also be applied independently therefrom always at the boundary monitoring, i.e. even when the robot enters the blocked area only after the activation of the boundary monitoring (cf. S70).

(34) This way, advantageously also a surprising massive return motion of the robot 1 is prevented, due to an activation of the boundary monitoring in a present position in the blocked area.

(35) As explained above, in one embodiment additionally a damping force F can be applied by control technology, which counteracts a motion of the robot and depends on a present speed of the robot, as indicated in FIG. 2 by an inertially tied damper symbol and which similarly may also apply to the application of FIG. 3.

(36) This damping force F may in a simple example be proportional to the present speed dx.sub.0/dt of the robot: F=d.Math.dx.sub.0/dt.

(37) In one embodiment, the proportionality and/or damping factor d is zero below a minimum speed, while it is greater than zero above the minimum speed, for example constant or varying with the distance from the boundary s. This way, in a second speed range above the predetermined minimum speed due to the proportionality and/or damping factor d>0 the damping force F is stronger with the present speed dx.sub.0/dt of the robot than in a first speed range below the minimum speed, in which the damping force F due to the proportionality and/or damping factor d=0 does not increase with the present speed.

(38) This way it is possible to manually guide the robot below the minimum speed with weaker control technology, in particular undamped, while it is disproportionally stronger damped above the minimum speed. This way, not only a penetration into the blocked area is reduced, but additionally also a massive return motion can be prevented or at least reduced upon activation of the boundary monitoring.

(39) Although exemplary implementations have been explained in the above description, it is hereby noted that a plurality of modifications is possible. In addition, it is hereby noted that the exemplary implementations are merely examples which are not intended to in any way restrict the scope of protection, the uses, and the construction. Rather, the preceding description gives a person skilled in the art a guideline for the implementation of at least one exemplary implementation, wherein various modifications, in particular with respect to the function and arrangement of the components described, can be undertaken without departing from the scope of protection as indicated by the claims and the equivalent combinations of features.

(40) Even though exemplary embodiments are explained in the description above, it should be pointed out that a plurality of modifications are possible. Moreover, it should be pointed out that the exemplary embodiments are merely examples that do not restrict the scope of protection, the applications and configuration in any way. Instead, the description above gives the person skilled in the art a guideline for implementing at least one exemplary embodiment. At the same time it is possible to make diverse modifications, in particular, with respect to the function and the arrangement of the components described without departing from the scope of protection that will become apparent from the claims and the combination of features equivalent thereto.

(41) While the present invention has been illustrated by a description of various embodiments, and while these embodiments have been described in considerable detail, it is not intended to restrict or in any way limit the scope of the appended claims to such detail. The various features shown and described herein may be used alone or in any combination. Additional advantages and modifications will readily appear to those skilled in the art. The invention in its broader aspects is therefore not limited to the specific details, representative apparatus and method, and illustrative example shown and described. Accordingly, departures may be made from such details without departing from the spirit and scope of the general inventive concept.

LIST OF REFERENCE NUMBERS

(42) 1 Robot 2 Control x.sub.(0) (present) Position x.sub.S Anchor position c.sub.1; 2 (virtual) Spring stiffness d Damping (factor) s Boundary S Blocked area x>s T.sub.(1, 2, 3) (Return) force F Damping force t Time Distance