Controlling a Group of Robots
20190047148 ยท 2019-02-14
Assignee
Inventors
Cpc classification
B25J9/1682
PERFORMING OPERATIONS; TRANSPORTING
G05B19/416
PHYSICS
G05B2219/39144
PHYSICS
B25J9/1669
PERFORMING OPERATIONS; TRANSPORTING
International classification
Abstract
The invention relates to a method for controlling a group of robots, comprising a leading robot (10) and at least one following robot (20, 30), which cooperates with the leading robot and moves in accordance with the leading robot, wherein the absolute velocity (v.sub.10) of the leading robot and/or the absolute velocity (v.sub.20abs) of the following robot is reduced on the basis of a specified limit (v.sub.max) such that a mutual relative velocity (V.sub.20rel) is not exceeded and therefore a safety function is not triggered.
Claims
1. A method for controlling a group of robots comprising a guide robot (10) and at least one following robot (20, 30) that moves in a manner dependent on the guide robot, wherein a speed of the guide robot and/or following robot is reduced (S40, S130) on the basis of a prescribed limit (v.sub.max) of a speed of the following robot.
2. The method as claimed in claim 1, characterized in that the group of robots comprises at least two following robots (20, 30) whose setpoint movements are in each case prescribed relative to a reference system, fixed to a robot, of the guide robot, wherein the speed of the guide robot is reduced on the basis of prescribed limits (v.sub.max) of speeds of these following robots.
3. The method as claimed in claim 1, characterized in that the limit (v.sub.max) of a speed of at least one following robot is able to be prescribed in a manner dependent on a monitored speed limit (v.sub.max, 0) of this following robot, in particular such that it is lower than the monitored speed limit.
4. The method as claimed in claim 1, characterized in that the speed of the guide robot and/or of at least one following robot is reduced on the basis of a prediction (v.sub.P,n), which is based in particular on at least one previous speed (v.sub.n1, v.sub.n2) of the following robot, of a speed of the at least one following robot.
5. The method as claimed in claim 1, characterized in that the speed of the guide robot and/or of at least one following robot is additionally reduced on the basis of a speed reduction (Ov.sub.reg) that is prescribed by a user.
6. The method as claimed in claim 1, characterized in that the speed of the guide robot and/or of at least one following robot is reduced in a filtered manner.
7. The method as claimed in claim 1, characterized by at least one of the steps: predicting (S10) a speed (v.sub.P,n) of at least one following robot, in particular on the basis of at least one previous speed (v.sub.n1, v.sub.n2) of this following robot; determining (S20) an adjustment factor (fak.sub.n) of at least one following robot on the basis of an in particular predicted speed (v.sub.P,n) and/or of a prescribed limit (v.sub.max) of a speed of the following robot; determining (S30, S120), in particular filtering, a reduction factor (Ov.sub.n) of the guide robot and/or of at least one following robot on the basis of at least one determined adjustment factor (fak.sub.n), of a previous reduction factor (Ov.sub.n1, Ov.sub.n2) and/or of a speed reduction (Ov.sub.reg) prescribed by a user; and/or transmitting (S40) an adjustment factor (fak.sub.n) of at least one following robot to a controller (11) of the guide robot.
8. An arrangement containing at least two controllers (11, 21, 31) for controlling a group of robots comprising a guide robot (10) and at least one following robot (20, 30) that moves in a manner dependent on the guide robot, wherein the arrangement is configured to perform a method as claimed in one of the preceding claims and/or comprises: means for reducing a speed of the guide robot and/or following robot on the basis of a prescribed limit (v.sub.max) of a speed of the following robot, in particular for reducing the speed of the guide robot on the basis of prescribed limits (v.sub.max) of speeds of at least two following robots, and/or means for prescribing the limit (v.sub.max) of a speed of at least one following robot in a manner dependent on a monitored speed limit (v.sub.max, 0) of this following robot, in particular such that it is lower than the monitored speed limit; and/or means for reducing the speed of the guide robot and/or of at least one following robot on the basis of a prediction (v.sub.P,n), which is based in particular on at least one previous speed (v.sub.n1, v.sub.n2) of the following robot, of a speed of the at least one following robot; and/or means for reducing the speed of the guide robot and/or of at least one following robot additionally on the basis of a speed reduction (Ov.sub.reg) prescribed by a user; and/or means for the filtered reduction of the setpoint speed of the guide robot and/or of at least one following robot; and/or means for predicting a speed (v.sub.P,n) of at least one following robot, in particular on the basis of at least one previous speed (v.sub.n1, v.sub.n2) of this following robot; and/or means for determining an adjustment factor (fak.sub.n) of at least one following robot on the basis of an in particular predicted speed (v.sub.P,n) and/or of a prescribed limit (v.sub.max) of a speed of the following robot; and/or means for determining, in particular filtering, a reduction factor (Ov.sub.n) of the guide robot and/or of at least one following robot on the basis of at least one determined adjustment factor (fak.sub.n), of a previous reduction factor (Ov.sub.n1, Ov.sub.n2) and/or of a speed reduction (Ov.sub.reg) prescribed by a user; and/or means for transmitting an adjustment factor (fak.sub.n) of at least one following robot to a controller (11) of the guide robot.
9. A computer program that, when it is loaded onto and executed on at least one controller (11, 12, 13) for controlling a group of robots, is designed to perform a method as claimed in claim 1.
10. A computer program product comprising a program code stored on a computer-readable medium for performing a method as claimed in claim 1.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0055] Further advantages and features become apparent from the dependent claims and the exemplary embodiments. To this end, and partially schematically:
[0056]
[0057]
DETAILED DESCRIPTION
[0058]
[0059] The guide robot 10 guides a tool vertically upward, as indicated in
[0060] For the following robot 20, as indicated in
[0061] The absolute speed of the following robot 20, as indicated in
[0062] A system for controlling this group of robots, according to one embodiment of the present invention, comprises robot controllers 11, 21 and 31 for the robots 10, 20 and 30, respectively, which controllers communicate with one another for example via a bus. Said system performs a method, explained below with reference to
[0063] In a first step S10, the controllers 21, 31 predict, for the associated following robot 20 or 30, in each case a current setpoint speed v.sub.P,n for the current control cycle n on the basis of the directly previous actual speed v.sub.n1 and of the setpoint speed v.sub.n2 preceding this one of the two preceding control cycles n1 and n2 by linear extrapolation
v.sub.P,n=2v.sub.n1v.sub.n2(1)
[0064] Instead of the setpoint speed, the actual speed of the last control cycle may also be used as an alternative. In this case, the speeds may in each case be in particular absolute Cartesian speeds of the TCP or else joint (angle) speeds of the corresponding robot.
[0065] Next, in a step S20, the controllers 21, 31 in each case determine, for the associated robot 20 or 30, an adjustment factor fak.sub.n on the basis of this predicted current setpoint speed v.sub.P,n and of a prescribed limit v.sub.max of a setpoint speed or actual speed of the following robot, which is obtained by multiplying a monitored speed limit v.sub.max, 0 by a safety factor of for example 0.8, in accordance with:
fak.sub.n=v.sub.max/v.sub.P,n=(0.8v.sub.max,0)/v.sub.P,n(2)
[0066] A factor of less than one may alternatively be selected as safety factor, typically a factor between about 0.7 and about 0.95. In this case, the (prescribed limits of the) setpoint speeds or actual speeds may correspondingly each in turn in particular be (prescribed limits of the) absolute Cartesian speeds of the TCP or else joint (angle) speeds of the corresponding robot.
[0067] In a step S30, the controllers 21, 31 then determine, respectively for the associated robot 20 or 30, a current reduction factor in the form of a so-called override (factor) Ov.sub.n for the current control cycle on the basis of this adjustment factor fak.sub.n, of a previous reduction or override (factor) Ov.sub.n1 for the preceding control cycle n1 and of a speed reduction prescribed by a user in the form of an override (factor) Ov.sub.reg prescribed by a user in accordance with:
Ov.sub.n=min{Ov.sub.reg,fak.sub.nOv.sub.n1}(3)
[0068] The override factor Ov.sub.reg prescribed by a user may be prescribed to be between 0 and 1 or 0 and 100%.
[0069] Through the minimum rule min{ } that delivers the smallest value, an override factor of at most Ov.sub.n=1 or 100% is thus determined in each case. Correspondingly, undershooting of the prescribed limit v.sub.max by the predicted setpoint speed v.sub.P,n also does not lead to an increase in the override (factor) Ov.sub.n.
[0070] By multiplying the previous reduction or override (factor) Ov.sub.n1 by the current adjustment factor fak.sub.n, the present override (factor), corresponding to the prediction of the setpoint speed and the comparison thereof with the monitored speed limit v.sub.max, 0 or prescribed limit v.sub.max, is updated or adjusted so as to obtain adaptive adjustment of the override factors of the following robots 20, 30.
[0071] In a step S40, the controllers 21, 31 transmit the respective adjustment factor fak.sub.n to the controller 11 of the guide robot 10, reduce the setpoint speed of the relative movement of the respective following robot 20, 30, in particular a corresponding joint (angle) or relative Cartesian setpoint speed, with the or by the corresponding current override (factor) Ov.sub.n, and then return to step S10 in order to perform the sequence S10-S40 described above again for the next control cycle.
[0072] In a step S100, the controller 11 acquires the adjustment factors fak.sub.n of the following robots 20, 30 for the current control cycle.
[0073] In a step S110, the controller 11 determines a reduction or override (factor) Ov.sub.M,n, in a manner known per se that is therefore not described in more detail here, such that the absolute setpoint speed of the guide robot 10 remains below a monitored speed limit v.sub.max, 0.
[0074] In addition, a user is in turn also able to prescribe a reduction or override (factor) Ov.sub.reg for the guide robot 10.
[0075] In a step S120, the controller 11 determines, on the basis of the adjustment factors fak.sub.n1 of the following robots 20, 30 for the previous control cycle n1, of the previous reduction or override (factor) Ov.sub.n2 of the guide robot 10 for the cycle before the previous control cycle n2, of the reduction or override (factor) Ov.sub.reg prescribed by a user and of the reduction or override (factor) Ov.sub.M,n for the guide robot 10, the reduction or override (factor) Ov.sub.n of the guide robot 10 for the current control cycle in accordance with:
Ov.sub.n=min{Ov.sub.reg,Ov.sub.M,n,fak.sub.n1Ov.sub.n2}(4)
[0076] In this case, the term fak.sub.n1Ov.sub.n2 collectively denotes both products of the reduction factor Ov.sub.n2 and the respective adjustment factor fak.sub.n1 of the following robots 20 and 30.
[0077] The current reduction or override (factor) Ov.sub.n for the guide robot 10 is thus obtained as the smallest value of the reduction or override (factor) Ov.sub.reg prescribed by a user for the guide robot 10, the reduction or override (factor) Ov.sub.M,n for complying with the monitored speed limit for the guide robot 10 and its previous reduction or override (factor) Ov.sub.n2 adjusted according to the adjustment factors fak.sub.n1 of the following robots 20, 30.
[0078] In a step S130, the controller 11 reduces the current absolute setpoint speed of the guide robot 10, in particular its joint (angle) or absolute Cartesian setpoint speed, by this current override factor Ov.sub.n and then returns to step S100 in order to perform the sequence S100-S130 described above again for the next control cycle.
[0079] By way of the reduction as necessary of the setpoint speeds of both the following robot and the guide robot, the likelihood of the following robot 20, 30 triggering monitoring of its Cartesian or joint (angle) actual speeds is thus advantageously able to be reduced.
[0080] In this case, by way of the adjustment factor fak.sub.n, in each case the speed of the relative movement of the corresponding following robot, on the one hand, andwith delaying of a control cycle (cf. fak.sub.n1), also the speed of the guiding movement of the guide robot 10, on the other hand, is reduced.
[0081] Although exemplary embodiments have been given in the above description, it is pointed out that numerous modifications are possible.
[0082] The guide robot 10 in the exemplary embodiment is thus a master robot of the group of robots 10, 20, 30. As explained above, in one modification, it may likewise be a following robot or slave of an (even) higher-ranking guide robot, its speed then being able to be reduced as explained above for the following robots 20, 30. The prescribed limits v.sub.max of the following robots 20, 30 then possibly also have an effect, through the corresponding reduction in the speed of the robot 10, on the movement of such an even higher-ranking guide robot.
[0083] It is furthermore pointed out that the exemplary embodiments are merely examples that are not intended to restrict the scope of protection, the applications and the structure in any way. On the contrary, the preceding description gives a person skilled in the art a guideline for implementing at least one exemplary embodiment, with diverse amendments, in particular with regard to the function and arrangement of the components that are described, being able to be made without departing from the scope of protection as results from the claims and these equivalent combinations of features.
LIST OF REFERENCE SIGNS
[0084] 10 guide robot [0085] 20, 30 following robot [0086] 11, 21, 31 (robot) controller (system, means) [0087] v.sub.10 prescribed absolute guide movement/speed of the guide robot [0088] v.sub.20, rel prescribed relative movement/speed of the following robot 20 [0089] v.sub.20, abs absolute movement/speed of the following robot 20 [0090] fak.sub.n adjustment factor