Method and system for identifying dangers in robotic applications

By creating a model of the robot application environment and identifying points suitable for supporting people, and combining the concept of safe space to automatically identify dangerous areas, the problem of difficult to effectively identify and prevent dangerous areas caused by robot movement in the prior art is solved, and the effect of improving human safety is achieved.

CN119968248APending Publication Date: 2025-05-09ABB (SCHWEIZ) AG
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202280100692.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2022-10-02
Publication Date
2025-05-09

AI Technical Summary

Technical Problem

In application environments where human employees and robots share the same workspace, prior art is difficult to effectively identify and prevent dangerous areas caused by robot movement, and depends on the developer's experience and meticulousness.

Method used

By creating models of the robot application environment, identifying points that are suitable for supporting people and limiting the safe space above them. If the safe space overlaps the robot's movement range, the point is identified as a dangerous point. This method uses the concept of grid models and safe space to automate the identification process of hazardous areas.

Benefits of technology

Automated hazardous area identification is achieved, reducing dependence on developer experience, improving the protection of human safety, and able to provide suggestions to reduce or eliminate hazardous areas.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119968248A_ABST
    Figure CN119968248A_ABST
Patent Text Reader

Abstract

A method for identifying a hazard in a robotic application, the method comprising the steps of: a) providing a model of an application environment of a robot (1), the application environment extending beyond the boundaries of a range of movement (22) of the robot (1), the range of movement (22) comprising all points that the robot (1) can occupy in any pose it can take; b) identifying at least one point (17a, 17b,...) in the environment suitable for supporting a person; c) for each point identified in step b), defining a safety space (21) above said point (17a, 17b,...), the safety space (21) comprising a volume intended to be occupied by the person (11) supported by said point (17a, 17b,...) and a safety range surrounding said volume; d) if the safety space (21) associated with the point (17f) overlaps the movement range (22) of the robot (1), identifying one point (17f) of the at least one point (17a, 17b,...) identified in step b) as dangerous.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a method for identifying hazards in robotic applications and to an application development system capable of executing the method. Background Art

[0002] In application environments where human workers and robots share the same workspace, ensuring that workers are not injured by the movement of the robot is a key issue, which accounts for a large part of the application development costs. To facilitate this task, US9430589B2 proposes a development system in which images of the environment and the robot moving in the environment are displayed. Based on the image displayed to the person, the developer can determine whether a given type of hazard is associated with a given approach point, and when a hazard is identified, the system helps the developer select appropriate safety equipment. The identification of potentially dangerous situations still relies on the developer's experience and meticulousness. Summary of the invention

[0003] It is an object of the present invention to help identify critical situations.

[0004] According to a first aspect of the present invention, the object is achieved by a method for identifying hazards in a robotic application, the method comprising the following steps:

[0005] a) providing a model of the robot's application environment that extends beyond the limits of the robot's range of motion, the range of motion including all points that the robot can occupy in any posture it can adopt;

[0006] b) identifying at least one point in the environment suitable for supporting a person;

[0007] c) for each point identified in step b), defining a safe space above the point, the safe space comprising a volume expected to be occupied by a person supported by the point and a safe range around the volume;

[0008] d) identifying one of the points identified in step b) as dangerous if the safety space associated with said point overlaps with the range of movement of the robot.

[0009] The model of the application environment will typically include at least data describing the size and movement characteristics of the robot, i.e., for any point in the application environment, based on which it can be decided whether the robot can occupy this point, as well as data about the shape of immovable objects such as a tabletop, a partition wall, or about the shape of objects that, although mobile, occupy a fixed area in space, such as a conveyor belt. The model of the application environment may also include data about one or more mobile objects (such as further robots) and data about how these mobile objects cooperate with the first-mentioned robot.

[0010] In order to limit the number of points to be checked to a practical value, it is useful to define a grid extending over the application environment, where each unit cell of the grid can be assigned a reference point indicating its position, and only the reference points are checked. The size of the cell should not be larger than a human foot.

[0011] The mesh may be two-dimensional or three-dimensional. In the case of a three-dimensional mesh, the reference point is three-dimensional, i.e. its position in space is well-determined and based on this position it can be decided whether it is suitable for supporting a person. In the case of a two-dimensional mesh, the reference points are defined only in two dimensions and the reference points in three dimensions are obtained by associating each reference point in two dimensions with a third coordinate of a surface point above or below the reference point in two dimensions. The third coordinate can be obtained using information from the model.

[0012] In the three-dimensional case, such reference points may be close to a surface on which a person may step, but the probability that the reference point is actually on that surface is infinitesimal. Therefore, a reference point may be considered suitable for supporting a person when a surface for stepping on exists within the cell associated with the reference point. A necessary condition for the existence of such a surface is that the cell is part of or overlaps with an immovable object, since without an immovable object there is nothing in the cell that can carry a person. A more stringent condition is that the cell includes part of the surface of an immovable object, since if the cell is part of an immovable object, but the surface of that object is not present within the cell, a person's foot will not be able to reach it, but will find support in some other cell above. Furthermore, the surface should be part of the upper surface of an immovable object, or, as a narrower criterion, the upper surface of an immovable object should be substantially horizontal, i.e. the slope of the surface (if any) should be small enough to prevent a person's foot from sliding.

[0013] As mentioned above, when selecting reference points only on the floor surface, the above criteria will be automatically met. However, it is meaningful to check whether the surface in question is already occupied by another object and therefore inaccessible to a person's feet, or whether the surface is large enough to accommodate a person's feet, in both cases.

[0014] Furthermore, in both cases, a point can be considered suitable for supporting a person only if there is a way for a person to reach that point, that is, if the environment has at least one approach point through which a person can enter the environment, and if there is a path from the approach point to the reference point (or, which is equivalent to the same thing, to the cell associated with the reference point).

[0015] If the distance between the reference point (or its cell) and another reference point suitable for supporting the person is greater than the person's step length, it can be considered that such a path does not exist.

[0016] In the simplest case, the cell is a square (in the case of a two-dimensional grid), a cube, or a cuboid (in the case of a three-dimensional grid).

[0017] In order to facilitate the evaluation of the results of the method of the present invention by the developer, the method should include the further steps of:

[0018] e) an image showing a model of the application environment, and

[0019] f) highlighting in the display image all points identified as dangerous in step d).

[0020] If a point is identified as a hazardous point in step d), possible measures include:

[0021] g) making changes to the model by which the identified points become unsuitable for supporting a person

[0022] and / or

[0023] h) Reduce the robot's range of motion to eliminate or reduce overlap.

[0024] The identified point may be made unsuitable for supporting a person by eliminating the immovable object, or changing its shape so that it no longer provides a foothold. Alternatively, the path between the identified point and the approach point may be blocked, for example, by eliminating the approach point in question or by introducing a wall or some other type of insurmountable obstacle between the approach point and the identified point.

[0025] While the geometric considerations necessary to make a point unsuitable for supporting a person or to reduce the range of motion of the robot are easy to implement in software, it is not easy to check the compatibility of these measures with the overall goals of a particular application. Therefore, the above step g) of making the change preferably includes proposing the change to the developer or some other human supervisor, and only executing the change to the model after approval by the supervisor. Similarly, step h) preferably includes proposing a reduction in the range of motion to the supervisor, and executing the reduction after approval by the supervisor.

[0026] Proposing a change of the model may be performed by displaying an image of the model to which the change is applied. Similarly, proposing a reduction in the range of movement may be performed by displaying an image of the reduced range of movement.

[0027] The object of the present invention is also achieved by a robot application development system, which includes a storage device for storing a model of a robot application environment, a processor for applying the above method to the model, and a user interface for outputting at least each point identified as dangerous.

[0028] It will be apparent from the above that the user interface should be adapted to display an image of the model, and / or output changes to the model proposed by the processor, and to accept approval or disapproval of the proposed changes by the supervisor.

[0029] The object of the present invention is also achieved by a computer program product comprising instructions and by a computer-readable storage medium having such instructions stored thereon, which instructions, when executed by a processor, cause the processor to carry out the above-mentioned method. BRIEF DESCRIPTION OF THE DRAWINGS

[0030] Other features and advantages of the present invention will become apparent from the following description of embodiments with reference to the accompanying drawings.

[0031] Figure 1 A plan view of an application environment of a robot to which the method of the present invention is applied is shown.

[0032] Figure 2 Shown along Figure 1 Line ll-ll intercepts a segment of the application environment.

[0033] Figure 3 The result of risk judgment of the application development system of the present invention is shown in a plan view of the application environment.

[0034] Figure 4 A proposal on how the application development system can improve human safety is shown with a plan view of the application environment;

[0035] Figure 5 A further proposal for an application development system is shown in a plan view of an application environment; and

[0036] Figure 6 A plan view of a revised version of an application environment is shown. DETAILED DESCRIPTION

[0037] Figure 1 is a schematic plan view of an industrial robot 1 and its working environment. In the embodiment shown herein, the robot 1 has a fixed base 2, at least one articulated arm 3 and an end effector 4 at the free end of the arm 3, but it should be remembered that the method to be described subsequently is also applicable to other types of robots, such as gantry robots, mobile robots, etc.

[0038] The movement of the robot 1 is controlled by an operation controller 5, typically a microcomputer, so as to perform a manufacturing task, such as combining each first workpiece of a series of first workpieces 6 supplied by a conveyor belt 7 with a second workpiece 8 taken from a crate 9 on a workbench 10. While the robot 1 performs this task, the safety of a person 11 must be ensured, who may replace the crate 9 when empty, or may simply pass by, unanticipated by the operation controller 5, to perform some other work.

[0039] The application development system may be implemented on the same computer hardware as the operation controller 5, or may be physically separate from the operation controller 5 and the robot 1. Figure 1 In the example of FIG. 1 , it is assumed that the operation controller 5 and the application development system are implemented on the same microcomputer 12, and the microcomputer 12 is connected to a storage device 13 storing a model of the working environment and a user interface 14. The user interface 14 includes a screen 15 for outputting an image of the working environment derived from the stored model, so that the screen 15 can be displayed. Figure 1 .

[0040] The working environment shown on the screen 15 comprises a workshop floor 24 extending upward in the x and y directions, on which the robot 1 and other equipment are mounted, and which is subdivided by the application development system into two-dimensional cells 16 covering the entire floor surface. In the simplest case, as Figure 1 As shown, all cells 16 are identical in shape and size, preferably rectangular or square, and form a regular grid of lines and columns, but a polar arrangement may also be used, with cells defined, for example, by clockwise and counterclockwise spirals having, for example, the base 2 as origin. Each cell 16 is assigned a reference point 17, which may be the centroid of said reference point or some other conveniently defined point of the cell 16. Figure 1 In the example of , the reference point 17 is located at the lower right corner of each cell 16 for convenience.

[0041] For each reference point 17, the application development system determines whether it is suitable for supporting the foot of person 11. As a first example, consider reference point 17 a , in the upper left corner of the working environment, close to a door or passage 18 formed between walls 19, 20 delimiting the working environment and through which a person 11 can approach the working environment. a The associated unit obviously includes the part of the upper surface of the immovable object, that is, the part of the upper surface of the workshop floor 24 itself, so the height of the workshop can be used as the z coordinate and the point 17 a Although the x and y coordinates of the reference point 17 are associated with aThe associated cell is too small to accommodate a foot, but inspection of adjacent cells will show that it can be combined with adjacent cells to provide a flat surface large enough to place a foot. a The unit 16 is further directly adjacent to the passage 18, so the person 10 can also physically touch the unit 16. Therefore, it is considered that the reference point 17 a (or its associated cell 16 ) is suitable for supporting a person 10 .

[0042] Now consider the adjacent reference point 17 b Because this reference point belongs to the reference point 17 above a The reference point must also be a flat surface that is large enough for the foot and that is close to the accessible point 17. a adjacent, so it can be concluded that the reference point is also accessible. Therefore, it is obvious that the procedure touches point 17 c Before, with point 17 a and 17 b Reference points on the same horizontal line will be considered suitable. Here, the application development system considers the surface at this point to be part of the conveyor belt 7 and to have a higher z-coordinate than the workshop floor 24. For obvious reasons, this surface should not be stepped on. This is ensured by identifying the conveyor belt 7 as a moving object in the model. Reference point 17 c It is therefore marked as unsuitable for supporting a person, since the object 7 to which its surface belongs is not immobile.

[0043] On the other side of the conveyor belt 7, reference point 17 d It is also part of the shop floor 24 and has a shop floor surface around it that is flat enough to accommodate a person's feet. However, there is a gap between this reference point and the point 17 that meets the standard. c Between all other reference points on the left side, there is a conveyor belt 7. The application development system determines whether the person 11 can cross the conveyor belt 7 by the height and width of the conveyor belt 7, and if the conveyor belt 7 is too large, that is, if point 17 d If the distance between the point 17 and the nearest suitable reference point on the other side of the conveyor belt 7 exceeds a threshold value which may depend on the height of the conveyor belt, the point 17 is considered to be d Not suitable for supporting people.

[0044] Reference point 17e is identified as being located on table 10. Since the model identifies table 10 as a stationary object and point 17e is part of a horizontal surface, this reference point may be appropriate. However, since adjacent reference points such as 17e may be f is identified as being located within the crate 9, and since neither the crate 9 nor the workpiece 8 therein is stationary, the reference point 17 is considered fUnsuitable for supporting a person, point 17e is also unsuitable because it is part of a flat surface that is too small to support a foot. Alternatively, point 17e may be considered unsuitable because the difference in z-coordinate between it and an adjacent suitable point is too large for a person to climb.

[0045] Alternatively, there may be a workplace policy that prohibits stepping on or over conveyors or any other equipment on the shop floor; in this case, point 17 d will be judged as inaccessible from channel 18, and therefore, in the absence of other means of access, point 17 will be considered inaccessible due to the presence of conveyor belt 7, regardless of its height and width. d None are suitable for supporting a person, and point 17e would be excluded from being unsuitable because the policy states that people cannot climb the work platform.

[0046] According to another approach, reference points suitable for supporting a person may be determined by defining a three-dimensional grid of cells, each of which is identified by a reference point in three dimensions, for example having three Cartesian coordinates. Figure 2 shows the x and z directions along Figure 1 A section of the application environment intercepted by line 11-11 of FIG. In this section, reference points 17' and cells 16' of such a three-dimensional grid are shown. Based on the model of the application environment, the application development system determines for each reference point whether its cell 16' is part of an immovable object or overlaps with an immovable object. For reference point 17'a and some other points below it, the answer is obviously no; the cells for people contain only air. Cell 16'b of reference point 17'b is the first cell in this column of points that contains a portion of the surface of a rigid object (i.e., the workshop floor 24). It can also be determined that there is enough rigid surface around this portion to accommodate a foot, that the surface is horizontal, or at least its slope is small enough so that the foot does not slide, and that since the adjacent surface portion is accessible from channel 18, the surface portion associated with reference point 17'b must also be accessible. The application development system therefore concludes that reference point 17'b is suitable for supporting a person.

[0047] This procedure is repeated for the other reference points until a reference point 17'c is reached, whose cell is considered to include a surface portion of the conveyor belt. This surface portion is horizontal and can even be large enough to accommodate a foot, but it is considered unsuitable because it is not immobile. Below, there is another reference point 17'd, whose cell includes a portion of the workshop floor, but it can also be excluded as unsuitable because the distance to another surface portion above it, namely the upper surface of the conveyor belt 7, is less than the height of a person.

[0048] Of the reference points identified as suitable for supporting a person, in a next step the application development system identifies those points where a person present there can actually be hit by the robot 1. This obviously occurs not only when the robot 1 itself can reach the reference point, but also any body part of the person 11 standing on the reference point. Figure 3 As shown, the application development system defines a cylindrical safety space 21 in which the person 11 can be expected to fit when the person 11 is standing upright or walking normally, that is, the height of the person 11 is the height of the person 11 and the diameter of the person 11 is slightly larger than the width of the person's shoulders, and for each reference point 17 that is considered suitable for supporting the person, it is checked whether there is an overlap between the safety space 21 and the movement range 22 of the robot 1 when the base of the cylindrical volume 16 is centered on the reference point.

[0049] The size of the safe space 21 may vary depending on what the person 11 is doing, such as when the person is carrying a change crate. Figure 3 As shown, it may be necessary to define a safety space 2T having a larger diameter in order to accommodate the arms of the person 11 extending away from the torso.

[0050] like Figure 3 As can be seen, the safe space 21 can be a is centered on the reference point 17 and does not overlap with the range 22; therefore, a There is no danger of being hit by robot 1. For point 17 b And the same is true for all other points along the same horizontal line, so that the person 11 can reach the conveyor belt 7 by moving in the cell 16 of this line without the risk of being hit by the robot 1. For the points of the next row, such as 17 g , there is overlap between their respective safe spaces 21 and ranges 22, causing the application development system to identify these points as dangerous to people. When such an assessment has been performed for all reference points that have been deemed suitable for supporting people, the application development system displays a map of the application environment on the screen 15, where Figure 3 As shown by the hatching in , those reference points or their corresponding cells that are suitable for supporting a person but dangerous are highlighted.

[0051] from Figure 3 It is obvious from the map that when walking through passage 18, person 11 is likely to enter the danger zone directly, which must be avoided. Depending on the information available at this stage, the application development system can propose countermeasures. If the application development system does not know why the presence of a person in the environment is necessary, an obvious remedy is to block passage 18 by widening wall 19. Figure 4 As shown, such a proposal may be presented to the regulator by displaying on the screen 15 an additional wall portion 23 blocking the passage 18. Figure 4 In the embodiment, there is no shadow line anymore, because the whole workshop floor 24 has become unsuitable for supporting people, because people are blocked from approaching the workshop floor. Supervisors who realize that they need to reach the workbench 10 and replace the crates 9 on it will reject such proposals.

[0052] When the application development system realizes that a crate needs to be replaced, it will not propose blocking the aisle, but may propose moving the aisle 18 and placing the workbench 10 directly behind it, such as Figure 5 As shown, the person 11 does not have to enter the environment, but can simply reach and replace the crate through the passage 18. The supervisor can accept this proposal or reject it because the robot must move a long distance between the crate 9 and the conveyor belt 7, which will reduce productivity.

[0053] Another proposal of the application development system could be to introduce another wall section 25 between the passage 18 and the robot 1, which would slightly reduce the range 22 available to the robot, but would provide a safe space behind it for the person 11 to move and reach the workbench 10. The supervisor may consider this proposal suitable and accept it.

[0054] The person can also modify the model, for example by pointing to the workbench 10 on the screen 15, for example using a mouse, and dragging it to a position next to the conveyor belt 7; realizing that this will allow the movement of the robot 1 to be shortened, thereby increasing productivity, and adapting the application development system to the length of the wall section 25, thereby obtaining Figure 6 Model shown.

[0055] The application development system may also be adapted to propose the introduction of safety equipment, such as a camera or some other type of sensor, suitable for detecting whether (and preferably where) a person is located in the application environment, and for causing the operating controller 5 to at least temporarily stop the movement of the robot 1 when the person's safety space overlaps with the robot's range 22.

[0056] Reference numerals

[0057] 1. Robot

[0058] 2 Base

[0059] 3 arms

[0060] 4 End effector

[0061] 5. Operating the controller

[0062] 6 First Workpiece

[0063] 7. Conveyor Belt

[0064] 8 Second Workpiece

[0065] 9 Crate

[0066] 10 workbench

[0067] 11 people

[0068] 12 Microcomputer

[0069] 13 Storage Components

[0070] 14 User Interface

[0071] 15 Screen

[0072] 16 tiles

[0073] 17 Reference Points

[0074] 18 channels

[0075] 19 walls

[0076] 20 walls

[0077] 21 Safe Space

[0078] 22 Scope

[0079] 23 Wall section

[0080] 24 Workshop Floor

[0081] 25 wall sections

Claims

1. A method for identifying hazards in a robotic application, the method comprising the following steps: a) providing a model of the application environment of the robot (1), said application environment extending beyond the limits of the range of motion (22) of the robot (1), said range of motion (22) comprising all points that the robot (1) can occupy in any posture it can adopt; b) identifying at least one point in the environment suitable for supporting a person (17) a , 17 b , ...); c) for each point identified in step b), define said point (17 a , 17 b , ...) above a safety space (21), the safety space (21) including the expected a , 17 b , ...) and the volume occupied by the person (11) supported by the vehicle and the safety area surrounding the volume; d) If the point (17 f ) overlaps with the movement range (22) of the robot (1), then the at least one point (17) identified in step b) is a , 17 b , ...) a point (17 f ) is marked as dangerous.

2. The method according to claim 1, wherein step b) comprises the following sub-steps: b1) defining a three-dimensional grid extending over said environment, wherein each cell (16') of said grid contains a reference point (17') in three dimensions, or defining a two-dimensional grid extending above a floor surface (24) of the application environment, wherein each cell (16) of the grid contains a reference point in two dimensions, and obtaining a reference point (17) in three dimensions by associating each reference point in two dimensions with a third coordinate of a surface point above or below the reference point in two dimensions; b2) For each reference point in three dimensions, determine whether it is suitable for supporting a person.

3. The method of claim 2, wherein the reference point is considered suitable for supporting a person when the reference point meets one or more of the following criteria: The grid cell (16) of the reference point is part of the immovable object (24, 10) or overlaps with the immovable object; The grid cells of the reference points include portions of the surface of the immovable object (24, 10); The grid of reference points includes a portion of the upper surface of the immovable object (24, 10); The grid of reference points includes a portion of a substantially horizontal upper surface of the immovable object (24, 10); The grid cell of the reference point includes a portion of the surface large enough to accommodate a person's foot; The environment has at least one access point (18) at which a person can enter the environment, and there is a path from the access point (18) to the grid cell (16); The distance between the grid unit and another grid unit is equal to or less than the step length, and the reference point of the other grid unit is suitable for supporting a person.

4. The method according to claim 2 or 3, wherein the grid cells (16, 16') are squares, cubes or cuboids.

5. The method according to any one of the preceding claims, further comprising the steps of: e) displaying an image of said model of said application environment, and f) highlighting in said displayed image all points identified as dangerous in step d).

6. A method according to any one of the preceding claims, further comprising, if in step d) a point is identified as dangerous, a step g) of making a change to the model by which the identified point becomes unsuitable for supporting a person; and / or h) reducing the range of motion of the robot so as to eliminate or reduce the overlap.

7. A method according to claim 6, wherein the identified point is made unsuitable by eliminating or changing the shape of the immovable object, or by blocking a path between the identified point and an approach point.

8. A method according to claim 6 or 7, wherein step g) comprises proposing changes to a regulator and implementing said changes to said model after approval by said regulator, and / or Step h) comprises proposing to a regulator a reduction in said range of movement and performing said reduction after approval by said regulator.

9. A method according to claim 8, wherein proposing a change is performed by displaying an image of the model with the change applied to the model, and / or proposing a reduction in the range of movement is performed by displaying an image of the reduced range of movement.

10. A robot application development system comprising a storage device (13) for storing a model of an application environment of a robot (1), a processor (12) for applying a method according to any of the preceding claims to the model, and a user interface (15) for outputting at least each point identified as dangerous.

11. The robot application development system according to claim 10, wherein the user interface (15) is adapted to display an image of the model.

12. A robot application development system according to claim 10 or 11, wherein the user interface (15) is suitable for outputting changes to the model proposed by the processor (12), and is suitable for accepting approval or disapproval of the proposed changes by a supervisor.

13. A computer program product comprising instructions which, when executed by a processor, cause the processor to carry out the method according to any one of claims 1 to 10.

14. A computer-readable storage medium having instructions stored thereon, wherein when the instructions are executed by a processor, the processor is caused to perform the method according to any one of claims 1 to 10.

Citation Information

Patent Citations

  • Safety automation builder

    US9430589B2