Method, robot system and computer readable medium for determining a safety zone and for path planning for robots
11660751 · 2023-05-30
Assignee
Inventors
Cpc classification
B25J9/1682
PERFORMING OPERATIONS; TRANSPORTING
G05B2219/39099
PHYSICS
B25J9/1676
PERFORMING OPERATIONS; TRANSPORTING
B25J9/1666
PERFORMING OPERATIONS; TRANSPORTING
G05B2219/35182
PHYSICS
B25J9/1669
PERFORMING OPERATIONS; TRANSPORTING
International classification
Abstract
An automated method determines a safety zone for a robot. The robot carries out operations along a specified trajectory. For collision-free operation, a safety zone is determined by: dividing the specified trajectory into a plurality of subtrajectories; determining a plurality of fine-grained envelope cuboids around extreme points of each subtrajectory; and determining a number of optimized envelope cuboids from an enlargement of individual fine-grained envelope cuboids in relation to the volume occupied by the enlarged fine-grained envelope cuboids. The optimized envelope cuboids determined in this way form the safety zone for the trajectory. This automated method can be expanded to multiple trajectories of a robot, multiple robots, and replanning a trajectory for an occupied semaphore zone.
Claims
1. A method for determining a safety zone for a first robot carrying out operations along a specified trajectory, the safety zone for a collision-free operation being determined by the following method steps of: a) dividing the specified trajectory into a plurality of subtrajectories; b) determining a plurality of envelope cuboids, referred to as fine-grained envelope cuboids in the following, around extreme points of each subtrajectory; c) determining a number of optimized envelope cuboids from an enlargement of individual ones of the fine-grained envelope cuboids based on a volume occupied by enlarged fine-grained envelope cuboids, wherein the optimized envelope cuboids determined in this way form the safety zone for the trajectory; d) determining a further safety zone for a further robot, for which a further trajectory is specified, wherein the further robot interacts with the first robot, by performing the further steps of: carrying out the method steps a) to c) for the further trajectory, and the safety zone and the further safety zone determined for said specified trajectory and the further trajectory are overlaid, which produces an overlap zone; defining a cuboid-shaped semaphore zone contained in the overlap zone, the cuboid-shaped semaphore zone contains a crossing of the further trajectory and the specified trajectory and is minimized compared to the optimized envelope cuboids of the further safety zone and the safety zone; and e) recalculating a new trajectory based on the optimized envelope cuboids determined in step c), the first robot carrying out operations along the new trajectory when a blockage occurs along the specified trajectory in real time.
2. The method according to claim 1, wherein in the method step b), movement spaces of the first robot corresponding to the operations to be carried out are defined by envelope spheres, wherein each envelope sphere represents a maximum claimed movement space per extreme point and the fine-grained envelope cuboids are determined such that they surround the envelope spheres.
3. The method according to claim 1, wherein in the method step b), movement spaces of the first robot corresponding to the operations to be carried out are defined by envelope ellipsoids, wherein each envelope ellipsoid represents a maximum claimed movement space per extreme point and the fine-grained envelope cuboids are determined such that they surround the envelope ellipsoids.
4. The method according to claim 1, wherein in the method step b), movement spaces of the first robot corresponding to the operations to be carried out are defined by fixed, specified envelope spheres and the fine-grained envelope cuboids are determined such that they surround the fixed, specified envelope spheres.
5. The method according to claim 1, which further comprises: f) defining protective measures.
6. The method according to claim 5, wherein in the method step f) alternatively or cumulatively, the protective measures are defined by: positioning at least one light grid containing a plurality of light beams at edges of the safety zone, wherein a safety function is triggered when a light beam is interrupted; positioning at least one laser scanner at the edges of the safety zone, wherein the laser scanner measures a distance to an intruding object, so that a distance-dependent safety function is triggered; and positioning a safety switch at the edges of the safety zone, wherein the safety switch triggers a safety function when a mechanical limitation of the safety zone is opened.
7. The method according to claim 1, wherein the optimized envelope cuboids on which a determination of the safety zone and the further safety zone is based are used as a basis for redetermining the specified trajectory of the first robot in such a way that a redetermined trajectory avoids the cuboid-shaped semaphore zone.
8. The method according to claim 7, wherein the specified trajectory and the further trajectory of the first robot and the further robot and the redetermined trajectory of the first robot are stored in a trajectory library of a central fail-safe controller.
9. The method according to claim 1, wherein in real-time operation, the first robot and the further robot start a query to a fail-safe controller, in order to obtain a permission to pass through a semaphore zone.
10. The method according to claim 1, which further comprises carrying out the method steps for a plurality of further robots.
11. The method according to claim 1, which further comprises carrying out the method steps for a plurality of trajectories of at least one robot.
12. A robot system, comprising: at least one robot carrying out operations along a specified trajectory; a local controller situated on said at least one robot; and a central fail-safe controller determining a safety zone for a collision-free operation of said at least one robot by: a) dividing the specified trajectory into a plurality of subtrajectories; b) determining a plurality of envelope cuboids, referred to as fine-grained envelope cuboids in the following, around extreme points of each subtrajectory; c) determining a number of optimized envelope cuboids from an enlargement of individual ones of the fine-grained envelope cuboids based on a volume occupied by enlarged fine-grained envelope cuboids, wherein the optimized envelope cuboids determined in this way form the safety zone for the trajectory; d) determining a further safety zone for a further robot, for which a further trajectory is specified, wherein the further robot interacts with said at least one robot, by performing the further steps of: carrying out the steps a) to c) for the further trajectory, and the safety zone and the further safety zone determined for said specified trajectory and the further trajectory are overlaid, which produces an overlap zone; defining a cuboid-shaped semaphore zone contained in the overlap zone, the cuboid-shaped semaphore zone contains a crossing of the further trajectory and the specified trajectory and is minimized compared to the optimized envelope cuboids of the further safety zone and the safety zone; and e) recalculating a new trajectory based on the optimized envelope cuboids determined in step c), the first robot carrying out operations along the new trajectory when a blockage occurs along the specified trajectory in real time.
13. A non-transitory computer readable medium storing computer executable instructions to be executed on a computer system and/or on a central fail-safe controller of a robot system, the computer executable instructions carrying out a method for determining a safety zone for a first robot carrying out operations along a specified trajectory, the safety zone for a collision-free operation being determined by the following method steps of: a) dividing the specified trajectory into a plurality of subtrajectories; b) determining a plurality of envelope cuboids, referred to as fine-grained envelope cuboids in the following, around extreme points of each subtrajectory; and c) determining a number of optimized envelope cuboids from an enlargement of individual ones of the fine-grained envelope cuboids based on a volume occupied by enlarged fine-grained envelope cuboids, wherein the optimized envelope cuboids determined in this way form the safety zone for the trajectory; d) determining a further safety zone for a further robot, for which a further trajectory is specified, wherein the further robot interacts with the first robot, by performing the further steps of: carrying out the method steps a) to c) for the further trajectory, and the safety zone and the further safety zone determined for said specified trajectory and the further trajectory are overlaid, which produces an overlap zone; defining a cuboid-shaped semaphore zone contained in the overlap zone, the cuboid-shaped semaphore zone contains a crossing of the further trajectory and the specified trajectory and is minimized compared to the optimized envelope cuboids of the further safety zone and the safety zone; and e) recalculating a new trajectory based on the optimized envelope cuboids determined in step c), the first robot carrying out operations along the new trajectory when a blockage occurs along the specified trajectory in real time.
Description
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
DETAILED DESCRIPTION OF THE INVENTION
(13) In this context of this document, the following terminology and a corresponding hierarchy of terms are used: i) A zone is formed from at least one envelope cuboid. ii) Envelope cuboids have a varying granularity as a result of the method steps, meaning that a distinction is made, in descending order of granularity, between: b) fine-grained envelope cuboids 21; c) optimized envelope cuboids 22; d) global envelope cuboids 20.
(14) Depending on the perspective, a distinction is further made between the preceding terms as follows:
(15) Safety zone S and operating zone A.
(16) Contrary to the usual meaning of a safety zone S and an operating zone A, e.g. in a fire fighting service context, in which the safety zone (=area cordoned off for the public) is considerably larger than the operating zone of the fire fighters, the following applies in the context of this technology a) S.Math.A.
(17) The operating zone A of a robot 5 indicates the space which a robot 5 is potentially able to reach. The safety zone S of a robot 5 is the subspace of the operating zone A, namely: S.Math.A, in which the robot 5 is permitted to move without a risk of colliding with other objects.
(18) These relationships can be seen in
(19)
(20) An envelope cuboid 20 can be formed around a plurality of delimiting spheres 4 and/or envelope ellipsoids 4. Three such delimiting spheres 4.sub.1, 4.sub.2 and 4.sub.3 are shown in
(21) Let us say that a robot 5 moves along a trajectory 1—as shown in
(22)
(23) To determine an optimum safety zone S, method steps are provided which are explained in the following together with
(24) In
(25) In operation, this plurality/large number of such fine-grained envelope cuboids 21.sub.1, 21.sub.2, . . . are not suitable, as this causes the computing time for a “Cartesian safety” to rise exorbitantly, as too many envelope cuboids 21 would have to be checked against the spheres on a robot 5. Therefore, the combination of number of envelope cuboids and occupied volume is optimized via an optimization method by enlarging individual fine-grained envelope cuboids 21.sub.1, 21.sub.2, . . . . It is also possible to specify the number of optimized envelope cuboids in a fixed manner and, from this fixed, specified number, to minimize the volume occupied thereby. According to
(26) In addition to the specified trajectory 1 of the robot 5, simulation programs such as Process Simulate for example also make it possible to take into consideration static obstacles in the manufacturing cell 15, as these are accordingly present as available geometries in the 3D CAD model, which is not possible in the case of a global envelope cuboid 20.
(27) As a robot 5 has to travel through not only one, but a plurality of trajectories 1.sub.1, 1.sub.2, . . . in order to fulfil its mission in its robot cell 15, the method explained above is accordingly to be applied in multiple stages and takes into consideration all these trajectories 1.sub.1, 1.sub.2, . . . , as is shown in Table 1 in
(28) After determining the optimized envelope cuboids 22, 22′, . . . for each individual trajectory 1.sub.1, 1.sub.2, . . . , the optimized envelope cuboids 22 (not indicated here) are overlaid and the total number thereof is minimized by combining and changing the size of individual envelope cuboids. The determination of external protective measures may contain: Light grids or laser scanners are positioned at the outer edges of the safety zones S defined by the optimized envelope cuboids 22 and the range of the fields (laser scanners) are calculated. Safety light grids act in an area by way of opposing transmitters and receivers for light beams. If the light beams are interrupted, e.g. when the light beam is penetrated by an object, then a corresponding safety function is triggered, e.g. stopping a robot movement.
(29) Laser scanners are able to determine the distance to an object, i.e. a distance-dependent response can take place here on intrusion, e.g. decelerating a robot in the case of a greater distance and stopping in the case of a shorter distance.
(30) Furthermore, a safety switch is also to be considered as a protective measure, for example, which is actuated by the opening of a door and by means of the fail-safe controller triggers a stop which does not cause a hazardous situation. In general: the safety zone S may be distinguished by mechanical limitations, wherein a door is merely one example of such a limitation. Furthermore, the geometric data of the envelope cuboids 22 is stored in a form which can be read by the fail-safe controller 31, meaning that this can be transferred from the simulation/calculation into the fail-safe controller 31 without manual steps which are prone to errors as a result.
(31) In a manufacturing cell 15, at least a plurality of robots 5, 5′, . . . are present, meaning that the method explained above has to be expanded by a further method step. As the operating spaces A, A′, . . . of the robots 5, 5′, . . . overlap or have to overlap, it also has to be ensured that the robots 5, 5′, . . . do not collide with one another during operation. The method according to Table 1 of
(32) The situation for a first robot 5 with a trajectory 1 and the trajectory 1′ of a further participant 5′ or a further robot 5′ is shown in
(33) Subsequently, what is known as a semaphore zone 23 is defined first. This semaphore zone 23 is contained in the overlap zone 25, see
(34) After traversing the semaphore zone 23, this must be immediately released (“release semaphore”), in order for the other robot to be assigned to the semaphore zone 23 as quickly as possible.
(35) The method is not limited to two robots, but rather is configured for N robots. In this context, the principle of minimizing the necessary zones, including the semaphore zones 23, also applies.
(36) Likewise, the preceding method can also be used for other objects which may intrude into a collision zone with a robot, e.g. a manually steered forklift truck which delivers a pallet to the robot. The forklift truck or the driver thereof also has to request the semaphore zone and release it again after ending occupancy. This may also take place implicitly via a traffic light and a monitoring of the forklift truck zone (e.g. by means of laser scanners). This also makes it possible to collaborate between a person and a robot, as the movements thereof are also already taken into consideration in the simulation phase and are modelled as “N+1” robots. All further steps of this method subsequently proceed on an automated basis, as previously, and supply the appropriate safety zones on the basis of the optimized envelope cuboids, taking into consideration the necessary specifications (see Table 1 of
(37) As the blockage of a robot 5 due to a dynamically occupied semaphore zone 23 cannot be predicted, the robot 5 is stopped from carrying out its current task and is only able to continue once the previously occupied zone is released, as described above.
(38) In order to also solve this problem, the trajectories 1, 1′ of the robots 5, 5′ . . . must also be planned on a dynamic basis. The concept of dynamic trajectory planning is known in robots, but is generally based on the robot also having a correspondingly sized operating space A available beyond the extent necessary for the specified trajectories. Traditionally, the robot stands in a robot cell closed off by lattices or similar guards.
(39) On the basis of the concept for determining a safety zone S described earlier, which safety zone S is formed from a plurality of optimized envelope cuboids 22, the optimized envelope cuboids 22 defined in this way are used as a basis for a dynamic trajectory planning. For this reason, this calculation takes place in a fail-safe controller 31, so that the safety of the robot can also be guaranteed for a new trajectory, in a complete and certified manner at all times.
(40) In order to ensure that a new trajectory is carried out correctly within the permitted zones, the robot controller must possess the feature of “Cartesian safety”, so that the fail-safe controller 31 also knows where a robot 5′ is actually situated. The “Cartesian safety” is only ensured with interaction between robots with fail-safe encoders (joint angle sensors) and fail-safe controller. The result of the trajectory planning is in turn first given in the higher-level calculation of the optimized envelope cuboids 22, so that a recalculation may take place on the basis of a new, additional trajectory.
(41)
(42) For the new trajectory 1.sub.new, it is also implicitly guaranteed that the robot 5 does not collide with a static obstacle in the manufacturing cell 15 on this new trajectory 1.sub.new, as the safety zones S, S′ allowed on the basis of the optimized envelope cuboids 22 also map the geometry of a robot cell 15 with all its equipment. Of course, this property also applies for the determination of a safety zone S for a specified trajectory 1 of a robot 5 explained in the introduction.
(43)
(44) The dynamic trajectory planning with a trajectory library for a further robot 5′ is undertaken by the higher-level fail-safe controller 31. In this higher-level fail-safe controller 31, all data regarding all safety zones/optimized envelope cuboids 22 and regarding the semaphore zones 23 is available.fwdarw.management 33 of the semaphore zone. As a result, it is ensured that a new, dynamically generated trajectory does not lead to a semaphore zone. A new semaphore zone could lead to new blockages and severely increase the management effort in the higher-level fail-safe controller 31. Instead of the term “higher-level fail-safe controller”, the term “central fail-safe controller” is also used.
LIST OF REFERENCE CHARACTERS, GLOSSARY
(45) 1 Trajectory of a (first) robot, robot path 1.sub.1T, 1.sub.2T, . . . Subtrajectory of a (first) robot 1.sub.1, 1.sub.2, . . . Trajectories of a (first) robot 1′, 1″ . . . Trajectory of further robots, trajectory of further participants 4; 4.sub.1; 4.sub.2; . . . Envelope cuboid, delimiting sphere, envelope ellipsoid 5 Robot, first robot 5′, 5″, . . . Further robots, further participants 6 (Attempted) intrusion into a safety zone 7 Extreme points of a trajectory 15 Robot cell; manufacturing cell 20 Envelope cuboid, global envelope cuboid of a (first) robot 20′, 20″ Envelope cuboid, global envelope cuboid of the further robots, Envelope cuboid, global envelope cuboid of the further participants 21 Fine-grained envelope cuboid of a (first) robot 21′, 21″ Fine-grained envelope cuboids of the further robots, Fine-grained envelope cuboids of the further participants 21.sub.1T, 21.sub.2T, . . . Fine-grained envelope cuboid according to a subtrajectory 1.sub.1T, 1.sub.2T, . . . 22 Optimized envelope cuboids of a (first) robot 22′, 22″ Optimized envelope cuboids of the further robots Optimized envelope cuboids of the further participants 22.sub.1, 22.sub.2, . . .
(46) Optimized envelope cuboid according to a plurality of fine-grained envelope cuboids 21.sub.1T, 21.sub.2T, . . . , 24.sub.nO Example of an unoptimized envelope cuboid 23 Collision zone, semaphore zone 25 Overlaying/overlapping of two safety zones or two optimized envelope cuboids; overlay zone 30 Robot system, robot plant 31 Fail-safe controller 32 Local controller of first robots 32′, 32″, . . . , Local controller of further robots 33 Management of semaphore zones 34′, 34″, . . . , Querying/use/release of a semaphore zone by a robot 5′, 5″, . . . A, A′, . . . , Operating zone of a robot 5′, 5″, . . . S, S′, . . . , Safety zone of a robot 5′, 5″, . . . S.sub.1, S.sub.2, . . . Safety zone for the trajectories 1.sub.1, 1.sub.2, . . . of a robot 5 TCP Tool center point
LIST OF CITED DOCUMENTS
(47) [1] WO 2018/051151 A1 A METHOD AND A SYSTEM FOR SIMULATING AND CERTIFYING SAFETY MANAGEMENT FOR AN AREA OF A PRODUCTION PLANT SIEMENS INDUSTRY SOFTWARE LTD.; IL-7019900 Airport City Publication date 22 Mar. 2018 (22.03.2018) [2] WO 2015/176802 AI METHOD FOR PREVENTING COLLISIONS OF A ROBOT IN A WORKSTATION DAIMLER AG, DE-70327 Stuttgart Publication date 26 Nov. 2015 (26.11.2015)