WO2021186068A1 - Ermittlung von sicherheitsbereichen um eine automatisiert arbeitende maschine - Google Patents
Ermittlung von sicherheitsbereichen um eine automatisiert arbeitende maschine Download PDFInfo
- Publication number
- WO2021186068A1 WO2021186068A1 PCT/EP2021/057151 EP2021057151W WO2021186068A1 WO 2021186068 A1 WO2021186068 A1 WO 2021186068A1 EP 2021057151 W EP2021057151 W EP 2021057151W WO 2021186068 A1 WO2021186068 A1 WO 2021186068A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- robot
- safety
- time
- contour
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Program-controlled manipulators
- B25J9/16—Program controls
- B25J9/1656—Program controls characterised by programming, planning systems for manipulators
- B25J9/1664—Program controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
- B25J9/1666—Avoiding collision or forbidden zones
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40475—In presence of moving obstacles, dynamic environment
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40492—Model manipulator by spheres for collision avoidance
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/49—Nc machine tool, till multiple
- G05B2219/49141—Detect near collision and slow, stop, inhibit movement tool
Definitions
- Standards DIN EN ISO 13855 and ISO / TS 15066 contain general specifications that a safety area around an automatically operating machine should meet, but do not prescribe an exact calculation.
- the distance equation known from the ISO / TS 15066 standard covers every application in its general integral form, but is unsuitable for direct practical application, as the data required for the calculation are typically not available and the calculation is very time-consuming.
- Robot axis monitoring should be provided as a safety function.
- the present invention is based on the object of providing a method for the automated and efficient calculation of safety areas around industrial robots.
- the efficiency here relates to the computational effort and / or the resulting shape and size of the ascertained safety area.
- the object is achieved according to the invention with the features of the independent claims.
- the particular approach of the present invention is the determination of a safety area by calculating individual safety segments, in particular safety balls. These are scaled in their size, taking into account the speed of an object which caused a security area violation.
- time-local and time-global security areas can be determined relatively easily (possibly in real time) and precisely. This determination can lead to a more efficient use of the production area through an appropriate positioning of the robot systems.
- a method for the automatic determination of a safety area in relation to a robot comprising the following steps: modeling a danger area of the robot by a set of contour balls which contains the robot contour; Determination of a safety area of the robot at a point in time to comprising a set of safety balls at a point in time t, where: the point in time t is later than the point in time to at which a safety area violation by an object occurred, for a contour ball: the position of the contour ball closed corresponds to the time t of the position of a safety ball, the radius of the safety ball is greater than the radius of the corresponding contour ball by an amount, and the amount depends on the time t and a predetermined speed of the object.
- an apparatus for controlling a robot has the following features: an input for receiving a signal from a sensor for detecting a violation of a safety area by an object, a control device for controlling a robot path based on the received signal, a safety area calculating device for calculating the safety area comprising: modeling a danger area of the robot by a set of contour balls, which contains the robot contour; Determination of a safety area of the robot at a point in time to comprehensively a set of safety balls at a point in time t, where: the point in time t is later than the point in time to at which a safety area violation by the object was detected as having occurred, for a contour sphere: the position of the contour sphere at the point in time t corresponds to the position of a safety sphere, the radius of the safety ball is larger by an amount than the radius of the corresponding contour ball, and the amount depends on the point in time t and a predetermined speed of the object.
- the method can also detect determining a robot path, the determined safety area of the robot at point in time 4 being a time-local safety area, which is calculated as a combination of individual safety balls, including all safety balls corresponding to the respective contour balls of the set M at each of the successive times t i , with an integer i> 0, the determined robot path.
- the method further includes, for example, the step of calculating a global time safety area by determining the robot path as a combination of a set of local time safety areas of the robot which are calculated at all respective times 4 of a robot path or a robot path section.
- the step of determining a safety area of the robot at a point in time to. determining a robot path which contains the paths of the individual contour balls, the robot path following a reaction movement and / or a stopping movement, and determining the positions of the individual contour balls at time t on the basis of the determined robot path.
- the robot path can follow the reaction movement and / or the stopping movement if the safety area violation was detected by actuating a safety switch, and the robot path can follow a movement intended for normal operation of the robot if the safety area infringement was not detected by actuating the safety switch.
- the object can be human.
- the method then further includes the detection of a head and / or one or both hands of the human being as respective separate human segments, and determining, for each human segment, whether the human segment violates the safety area in one of the safety spheres.
- a device for controlling a robot comprising: an input for receiving a signal from a sensor for detecting a violation of a safety area by an object, a control device for controlling a robot path on the basis of the received signal, a safety area calculating device for calculating the safety area, comprising: modeling a danger area of the robot by a set of contour balls which the robot contour includes; Determination of a safety area of the robot at a point in time to comprising a quantity of safety balls at a point in time t, where: (a) the point in time t is later than the point in time to at which a safety area violation by the object was detected as having occurred, (b) for a contour sphere: the position of the contour sphere at time t corresponds to the position of a safety sphere, the radius of the safety sphere is greater by an amount than the radius of the corresponding contour sphere, and the amount depends on the point in time t and a predetermined speed of the object.
- Fig. 1 is a schematic representation of a robot and the corresponding
- FIG. 3 shows a schematic representation of a robot and the corresponding one
- FIG. 4 shows a schematic representation of a robot path corresponding to a normal movement, a reaction movement and a stopping movement.
- FIG. 5 shows a schematic representation of a robot path for a contour ball.
- FIG. 6 shows a schematic representation of an expansion from the radius of a contour sphere for calculating a safety sphere.
- Figure 8 is a graph obtained by an embodiment of the invention.
- FIG. 9 shows four exemplary comparisons of safety areas, which were calculated according to an embodiment of the invention and according to the prior art, for different speeds of a robot.
- Fig. 10 shows the determined safety areas and the corresponding contour ball tracks.
- 11 depicts a 3-D boundary point group as a representation of a determined
- FIG. 12 shows segment shapes which can be used as an alternative to or in addition to the balls.
- FIG. 13 is a schematic illustration of the determination of a number of the contour balls which are to enclose a robot.
- FIG. 14 is a schematic illustration of the determination of a number of the contour balls on the basis of the robot arm width.
- 15 is a block diagram which functionally describes the safety calculation.
- Fig. 17 is a schematic representation for individual trajectories of the respective contour balls.
- Fig. 18 is an example of global and universal computation
- Fig. 19 is a table showing various operating modes and their pertinent
- Fig. 20 is a schematic diagram showing the modeling of the human segment by a circle or sphere.
- Fig. 21 is a schematic diagram representing the modeling of the human segment by separating the head and hands.
- 22 is an exemplary illustration of a global cooperation segment.
- Figure 24 is a flow diagram of a method for determining the safety area.
- robot encompasses any mobile, automated machine.
- Robot can have one or more arms, with one arm having one or more joints and each can contain one or more arm sections movable by the joints.
- a robot can contain a base (e.g. a pedestal) which supports one arm or also several arms that work independently or independently of one another. Each arm follows a movement which is composed of the movement of the arm sections. The arm sections, in turn, move by changing joint angles.
- the base and thus the robot
- the base can be static during operation or even follow a trajectory.
- One arm (or more) of the robot can also have an attachment, for example a handle or a tool or the like, with which objects can be picked up or processed.
- the base and / or the attachment are parts of the robot and can therefore also be taken into account when calculating the safety areas.
- the present invention is not limited to any specific embodiment of the automated machine and can have any desired forms and functions.
- arms do not have to be present either, robot parts can move on rails or other supports.
- the movement (positions and orientations over time) of the robot parts of the robot is called robot kinematics. In the case of robot arms, this essentially corresponds to the joint angles.
- the contour of a robot is modeled in sections by a set of basic segments.
- the basic segments can be of different sizes.
- the safety area is then determined by expanding the basic segments in accordance with the robot path and taking into account the speed of the object violating the safety area.
- the safety area itself is determined as a union of safety segments (as opposed to determining directly on the basis of a modeled hazard area).
- a time-local safety area is a safety area which is calculated at a specific point in time to at which the safety area violation occurs.
- a global time security area is calculated as the union of all possible local time security areas. These are time-local safety areas that are calculated for a robot path at each point in time to. A global security area therefore takes into account (models) security breaches at any point in time along the robot path.
- a robot is initially represented by a plurality of balls. Such a representation is shown in FIG. Accordingly, the robot contour 8 is represented as a set of contour balls 8a, 8b, 8c, 8d, ... which contain (envelop) the entire modeled robot contour 8. Each contour sphere can have a different radius r contour sphere .
- the set of spheres is referred to here as the set M of contour spheres.
- Each contour ball thus represents a part of the danger area.
- the complete set M of contour balls at one point in time is the total danger area of the pose of the robot at that point in time.
- the pose of a robot is defined here by the joint angles of the respective joints 130 of the robot. In operation, the robot's pose typically changes over time.
- the danger area ie the union of the contour balls) does not have to be calculated for the purpose of determining the safety area.
- FIG. 4 is a schematic representation of a robot path accordingly a normal movement 1, a reaction movement 2 and a stopping movement 3 of a robot segment, or a contour ball modeling the robot segment.
- a safety area violation occurs at any point in time t 0 during the robot path. From this point in time t 0 , the remaining robot movement is determined (calculated), for example on the basis of the robot and system data sheets.
- a security area violation occurs when an object (e.g. a person) enters (violates) the current security area.
- the current safety area in relation to the robot path intended for operation can be determined in any way - according to the invention or by another method.
- the safety area violation can be detected by one or more sensors, for example by pressing a safety button or by a motion or image sensor.
- the calculation of the reaction movement 2 and / or the stopping movement 3 can be preprogrammed and can depend on various parameters, e.g. on the relative position of the robot in relation to the object and / or the speed of the robot and / or the object.
- the reaction movement 2 and the stopping movement 3 are calculated for each contour ball on the basis of the respective specific path 1 of the ball.
- the path (2, 3) of a contour ball 4 after the safety area violation is represented, for example, by the position of the contour ball (4a to 4h) at the respective times t a to t h .
- the original contour sphere 4 (which belongs to time t 0 and has a known radius 5) is copied to points 4a to 4h on the path points that result from the (step-by-step) calculated reaction and stop paths 2 and 3, as in FIG shown in FIG.
- the danger area for a single contour ball 4 with radius 5, which represents a corresponding robot segment is shown in FIG. 5 at the respective reaction or stopping track times t a to t h (corresponding to the position of the contour balls 4a-4h).
- the time resolution of the robot path (distance between adjacent points in time) for the contour balls 4a to 4h and the corresponding subsequent calculation of the safety areas can be configured.
- the safety area calculated for the discrete points in time of the robot path approximates a safety area that results from a continuous movement path.
- the illustration in FIG. 5 serves to explain the safety area model to be calculated.
- the contour balls do not necessarily have to be copied by calculation. Rather, the position of the contour balls 4a to 4h determines the position of the safety balls to be calculated, which are then combined to form a safety area.
- FIG. 6 shows the contour ball 4 at a point in time t d on the movement path 3 as the contour ball 4d.
- the contour ball 4d is expanded by the amount 7d to form a safety ball 6d.
- the symbol r contour sphere denotes the radius 5 of the contour sphere.
- the speed v M is the speed of the object violating the safety area.
- the speed can practically be, for example, the speed of a person.
- the speed of a person or, in general, the speed of an object can be a constant given by a standard, for example with the amount of.
- the present invention is not directed to any particular determination of the
- Speed v m restricted This speed can be specified (for example by a standard), estimated (for example on the basis of the object, which can be a person, a robot, a vehicle or the like) and / or measured (for example at the point in time to).
- a safety ball 6d is calculated at the time t (in this example t d ) by expanding the contoured ball 4d, in that for the contoured ball 4 the position 4d of the contoured ball at the time t corresponds to the position of a safety ball 6d, the radius 7d of Safety ball, however, is greater than the radius 5 of the corresponding contour ball 4d by an amount r exp , and the amount r exp depends on the point in time t (relative to the point in time to) and a predetermined speed v m of the object.
- a safety area 9 of a robot segment (modeled by the contour ball 4) is then modeled by combining the set of safety balls 6a-6h at the respective times (f, ⁇ ⁇ t a , t b , t h ⁇ ) of the trajectory of the corresponding contour ball 4 . This is shown in FIG. This results in a number of associated respective safety balls 6a-6h for the positions (times of the movement path) of the contour ball 4.
- a safety sphere is calculated for each approximated point in time t i of the reaction and stopping path.
- the entire safety area of the robot 8 at any point in time to the robot path 1 then results from the combination of the safety areas which were calculated for each robot segment (modeled by respective contour balls 8a, 8b, 8c, 8d, ... of the set M).
- the safety area 9 of the contoured ball 4 is only part of the safety area of the robot.
- This safety area of the robot is referred to in the technical world as a "dynamic" or "time-local" safety area because it relates to the point in time at which the safety area is violated. In the practical implementation, it does not matter whether you first combine the safety balls using the points in time of the contour ball movement path in corresponding safety areas of the contour balls, which are then combined for all contour balls in the local safety area or vice versa.
- the calculation can take place in any order as long as the time-local safety area is calculated as a union of individual safety balls, including all of the safety balls corresponding to the respective contour balls 8a, 8b, 8c, 8d of the set M at each of the successive points in time 4 integer i> 0, a robot path or a robot path section.
- the robot path here is, for example, the reaction and / or stopping path until the robot comes to a standstill or another robot path after time t 0 .
- the safety area calculation can also only be carried out for a part (section) of the robot path.
- the robot path corresponds to a sequence of joint angles of the robot at the successive points in time t i with an integer i> 0.
- the step of determining a safety area of the robot at a point in time t includes, for example, determining a robot path that contains the paths of the individual contour balls, the robot path following a reaction movement and / or a stopping movement, and determining the positions of the individual contour balls at time t based on the determined robot path.
- the combination of all dynamic safety areas results in the "static" or "global time" safety area, ie a safety area that covers the entire robot path.
- a step of calculating the time-global safety area includes determining the robot path as a combination of a set of time-local safety areas of the robot 8, which is calculated at all respective points in time to a complete robot path or a robot path section.
- the complete robot path corresponds to a robot path before and after the point in time to.
- the present invention also allows the global safety area to be calculated only for a section of the complete robot path.
- the local safety area is related to the time of the safety area violation (and to the subsequent robot path).
- the global safety area is related to the robot path of the robot in operation.
- the global security area can be monitored by light barriers, for example.
- a light barrier usually does not have the ability to monitor a different area at any point in time along the path.
- Other monitoring means motion sensors, cameras, light scanners or the like
- a contour ball is at a standstill from a point in time t j until the end of the determination of the time-local safety area (ie until the end of the robot path or the section), the amount remains constant for the time from t j.
- Feature (d) alone offers an advantage because it allows the calculation of safety distances to fast-moving contour spheres that are clearly dependent on direction and speed.
- the safety area is usually simply given the same size in all directions.
- the feature (b) is advantageous because the robots can move very quickly. Further simplifications could lead to partially unsafe safety areas if the movement of the danger areas after the safety area violation is not considered or is only considered in a simplified manner.
- FIGS. 8, 9 and 10 show area savings in time-local safety areas, calculated according to the embodiment of the invention (referred to as NeuA) compared to the safety areas calculated according to the prior art and as a function of the speed of the robot.
- FIG. 9 shows comparisons of the time-local safety areas according to NeuA and according to the prior art for four exemplary robot speeds A1.
- FIG. 10 shows an intermediate result of a simulation of the safety area according to the embodiment of the invention (NeuA) and the safety area simulated according to the prior art. The trajectories of the individual collision balls (contour balls) are visible within the NeuA safety area.
- the safety area is present as a set of balls.
- One such data format is in terms of the ratio of amount of data to accuracy of results attractively priced.
- the result can also be converted into other formats, such as, for example, a 2D boundary point set (see FIG. 9) or a 3D boundary point set as shown in FIG. In FIG. 11, a robot 1110 moves on the robot path 1120.
- the global-time 3D safety area that is calculated in relation to this robot path 1120 has a limit which is defined by the 3D boundary point set 1130.
- a data format (a data structure) is provided.
- Safety areas local and / or global) around a robot are electronically stored in the data format.
- a safety area is defined by a number of balls, each ball is identified by its position (e.g. center point) and size (e.g. radius or diameter).
- the position can be defined within any coordinate system, e.g. relative to the robot segments and / or contour balls. Saving a safety area using individual balls has the advantage of efficiency - saving as points on the 3D envelope is usually more complex than saving the individual balls.
- the method for determining the safety areas can accordingly include a step of storing the position and the size of the safety balls, which represent a determined safety area.
- the method can further include a reduction in the number of stored (to be stored) safety balls of a safety area, in which a ball that is completely contained in another ball is not saved. This step further helps reduce the amount of data to be stored.
- the method can also contain a further reduction in the number of stored (to be stored) safety balls, in the case of which a ball that is completely contained in the envelope of a plurality of balls is not saved. This plurality can be limited to two, or a maximum of three or four, or more.
- the present invention can advantageously be used in industrial robotics without protective fences or lightweight construction robotics, for example for industrial production. Further areas of application are in human-robot collaboration environments, in driverless transport systems (AGVs), or even in the field of autonomous driving (autonomous automobiles).
- AGVs driverless transport systems
- autonomous driving autonomous automobiles.
- the determination of the safety area according to the invention can be replaced for any kinematics (a car is also a kinematics, only with different joint binding equations than the exemplary robot 8 described above).
- the invention relates to the determination of a safety area around a robot, this being modeled by a set of safety balls.
- a safety ball corresponds in position to a contour ball which envelops a robot segment at a point on the robot path.
- This representation is modular and thus allows the dynamic safety areas to be determined after a safety area violation.
- the safety area determination according to the invention can be used for any safety areas, e.g. local or global, but also for sub-areas based on a subset of the robot contour balls and / or a subset of the robot path from the safety area violation.
- the present invention can also be used to determine a safety area around a plurality of robots.
- FIG. 12 shows the ball as a basic segment.
- a robot segment for example a part of a robot arm, is shown here as a cylinder with radius r and height 2h, which is modeled (filled) by the contour sphere with a radius R.
- the term collision segment (KS) is used for the contour ball.
- the same cylindrical robot segment is modeled in section (b) by a CS in the shape of a cuboid and in section (a) by a CS in the shape of a cylinder.
- a cuboid has 3 parameters (a, b, c) and a cylinder 2 parameters (r, h), which makes these basic shapes more complex to calculate and store.
- collision segments with shapes other than a sphere ie with shapes different from the sphere, could better follow the shape of the robot and thereby represent the robot contour more precisely, as can be seen, for example, from section (a), in which a substantially cylindrical Robot segment is modeled by a cylindrical CS.
- embodiments are possible in which a subset of robot segments are modeled by balls and another subset of robot segments are modeled by cylinders or other shaped KS.
- alternative Guide shapes are based entirely on a KS shape, which, however, is different from the sphere, for example a cylinder or cuboid.
- a KS completely envelops a robot segment.
- embodiments are also possible in which a KS only partially, i.e. essentially, envelops a robot segment.
- V cylinder ⁇ r 2 .2h.
- r 2 R 2 - h 2 .
- the volume of the cylinder can be represented in relation to the KS as follows:
- V cylinder ⁇ . (R 2 - h 2 ).
- 2h 2 ⁇ R 2 h - 2 ⁇ h 3
- V cylinder 2 ⁇ R 2 - 6 ⁇ h 3
- FIG. 13 shows a robot arm modeled by a set of contour balls (collision segments).
- the robot arm contains two joints Ga and Gb which are modeled by respective KS, namely KSO and KSn. Between these joints there are further (in this example 3) KS.
- the present invention is not limited to any particular division of the robot into robot and collision segments. In general, it is desirable for the KS to enclose the robot as closely as possible. For some applications, however, one could also be interested in keeping the amount of KS smaller.
- the spherical CS are very flexible and support any optimization conditions in this regard, which take into account both the amount of CS required and the spatial extent of the CS.
- the modeling of a danger area of the robot includes the step of calculating a number (n + 1) of the contour balls between two joints Ga and Gb des Robot, with the diameter of a circle corresponding to the intersection between two contour spheres essentially corresponding to the width of the robot arm (or including the section of the robot arm completely), ie within KS1KS2 robot arm width.
- the present invention is particularly advantageous for calculating the safety area after a safety area violation has occurred.
- the calculation can depend on the robot path after the safety area violation.
- the robot trajectory after the safety area violation can in turn depend on what type of safety area violation took place.
- the inventive concept is based on the modeling of a robot contour using basic segments which form the basis for the respective individual collision segments.
- the collision segments have a size that changes depending on the estimated or measured speed of the object that caused the safety area violation. This concept is very flexible and can be further adapted to specific areas of application.
- Figure 15 shows how security areas can be calculated in three functional modules.
- a first module 810 robot-related collision segments are calculated.
- the entire robot kinematics is divided into collision segments and modeled.
- a basic shape of the CS is selected first (e.g. sphere).
- the selection of the basic shape does not have to take place and all CS can simply be spherical, since the sphere is particularly advantageous for the real-time calculation.
- This selection can be made for modeling all CS of the robot (i.e. one selection for all CS), or by robot segment, depending on the shape of the robot segment. For example, the difference between the volume of the robot segment and the KS can be minimized or a cost function can be optimized with several parameters.
- an enveloping body consists not only of one contour point, but theoretically an infinite number of contour points, at least an appropriately distributed number of contour points (adequate resolution) must be considered so that the safety areas can be reliably determined.
- spherical KS are particularly advantageous for the further processing of the ball collection, which is composed of the individual expanded safety balls.
- the set of edge points for example as shown in FIG. 9 or 11
- the set of boundary points safety area
- the spheres that represent a subspace of one (or more) larger spheres do not need to be used in the following calculation of the set of boundary points to be considered more. You can discard these, ie you no longer need to save them and / or no longer take them into account in the further calculation.
- Such a step of the safety ball reduction allows further acceleration of the calculation and reduction of the storage capacity required for the storage.
- the number of collision segments is calculated (see FIGS. 13 and 14).
- This number of collision segments can also be called “optimal” if it is calculated on the basis of an optimization, e.g. on the basis of a cost function.
- the module 1 thus provides a model of this robot for a robot through a number of collision segments which essentially or completely contain the contour of the robot, i.e. envelop the robot.
- a second module with the reference number 820 is responsible for the calculation of path-related safety segments. As already mentioned above, these can contain individual security balls (security segments), time-local and time-global security segments.
- Sub-module 822 computes Local Safety Segments, LSS, which correspond to the safety spheres mentioned above.
- Sub-module 824 calculates global safety segments, GSS, which correspond to the above-mentioned time-local safety areas (for a safety sphere).
- Sub-module 826 calculates universal security segments, USS, which correspond to the global security areas.
- a robot consists of collision segments KS 0 ⁇ KS n . These (each such KS) KS move on the robot path from Gt 0 ⁇ Gt k .
- a local security segment LSS KSn (Lt 0 ) at time Lt 0 is equal to a collision segment 910 KS n ((Gt x )).
- R Lssksn (Lt 0 ) R KSn (Gt x ) applies.
- An LSS 940 is represented by a dashed line.
- the center of each LSS lies on the robot path 900.
- Sr corresponds to the start of the reaction path and Ss corresponds to the start of the stop path.
- the area 990 represented by the thick dash-dot line corresponds to a global safety segment GSS KSn (Gt x ) at a global point in time Gt x at which the safety area violation took place.
- Each collision segment KS n has a global safety segment GSS KSn (Gt x ) at a global point in time Gt x .
- a global security segment here corresponds to the above-described time-local security area for a security sphere and contains several local security segments LSS KSn (Lt 0 ) ⁇ LSS KSn (Lt m ) for the local time from Lt 0 ⁇ Lt m .
- the robot safety segment RSS (Gt x ) at a global point in time Gt x contains all global safety segments of the collision segments KS 0 ⁇ KS n ; ie GSS KS0 (Gt x ) ⁇ GSS KSn (Gt x ).
- FIG. 17 shows a plurality of KS of a robot arm. Each of these segments moves on its own path, the paths of individual CS form the robot path.
- FIG. 18 shows that each collision segment KS n has a universal safety segment USS KSn, which consists of global safety segments GSS KSn (Gt 0 ) ⁇ GSS KSn (Gt k ) at the global time of Gt 0 ⁇ Gt k .
- GSS KSn global safety segments
- Gt k global safety segments
- the corresponding robot universal safety segment RUSS can be described as including:
- the area violation safety function and robot universal safety segments RUSS assume that the robot is a blind system and that a human can enter from anywhere, that is, the robot universal safety segment RUSS can be used as a static safety area.
- a third module 830 calculates operating mode safety segments, ie takes the operating mode and in particular the safety functions into account when calculating the safety segments.
- SSM Speed and separation monitoring
- HG Hand guiding
- PFL Power and force limiting
- the security area violation described above can, for example, relate to the security function of the SRMS and SSM operating modes, as shown in the table. If such a safety area violation occurs as a result of a human having entered the hazardous area, the robot must be stopped. This can be done through the reaction and stopping motion. In general (e.g. in an alternative operating mode), however, following a security breach, the robot can alternatively follow its usual path, but thereby reduce its speed, or power and / or force.
- the human position relative to the robot is such that the robot cannot stop before it can collide with the human. This can be detected by the monitoring from the security area. In such a case, the speed of the robot can be reduced until it stops and the path can be changed.
- contact collision
- the robot safety segments RSS correspond to the dynamic safety areas. These areas are linked to the robot path from Gt 0 to Gt k and are updated regularly (within a cycle time). Of the Human can work near the robot path, but only outside the robot safety segments. In the discrete case, several areas of cooperation can be defined. The robot will adjust its speed based on the human position in (relative to) these areas. Robot cooperation segment ROS (Gt x ) can then be calculated using the GSS. For example, a robot cooperation segment can be determined by spatial expansion of the corresponding robot safety segment.
- FIG. 20 shows an example in which all points of the human segment MS (Gt x ) are checked against RSS (Gt x ) at the point in time Gt x.
- the human segment MS (Gt x ) can then be divided into three segments HS1 (Gt x ), HS2 (Gt x ), HS3 (Gt x ), as in the Figure 21 shown.
- this calculation method all points of HSl (Gt x), HS2 (Gt x), HS3 (Gt x) x at time Gt against RSS (Gt x) tested.
- this module 830 is the further adaptation of the safety segments with regard to the required safety functions in all different operating modes.
- FIG. 22 is a schematic illustration which shows the operating mode (PFL) with contact detection and force monitoring.
- PFL operating mode
- the PFL operating mode and restricted framework conditions such as maximum forces and / or torques, which are predefined in the ISO 15066 standard, contact with certain parts of the body is permitted.
- the calculated safety areas e.g. GSS ksn (Gt x )
- GSS ksn (Gt x ) can be reduced and converted to the permitted forces.
- contact is allowed as long as a limit force is not exceeded.
- the maximum permitted force Fmax is assumed, which is less than or equal to a limit force.
- the limit force can be specified by a standard and / or determined on the basis of empirical tests with a large number of test persons.
- the human body can be modeled as a feather.
- the spring constant k is empirically predetermined (i.e. predetermined) for a person.
- the robot's kinetic energy AEkin is equal to the potential energy Epot and the following applies: .
- m H represents the human mass
- m R the robot mass
- V H the speed of the human
- V R the speed of the robot.
- V H ZB can be predetermined or measured. From the maximum force Fmax (less than or equal to the limit force) the permitted speed V R can be determined as follows:
- the method for determining a safety area includes a step in which the robot path is determined.
- the robot path ends at a point in time t x at which the robot has a speed VR (V R > 0) and the speed V R is calculated on the basis of a predetermined maximum force which the robot can exert on the object.
- FIG. 22 shows a global cooperation segment GOS ksn of the collision segment KS n at a global point in time Gt x .
- the global cooperation segment is determined on the basis of the security area GSSksn. In this example (PFL) this is the safety area GSSksn (t x ) at time t x in which the robot reaches the permitted speed. In other examples (eg with SSM), GSSksn is determined at a point in time when the robot reaches zero speed.
- the determined security area can be used in different ways.
- the robot path follows the reaction movement and / or the stopping movement if the safety area violation was detected by actuating a safety switch.
- the robot path follows a movement intended for normal operation of the robot if the safety area violation was not detected by actuating the safety switch.
- This embodiment is only one of the possible implementations and corresponds to the different treatment of "Stop 0" and "Stop 1" named types of security breaches, defined in the standard DIN EN ISO 13850.
- the robot path can be used from time to according to the type of Safety area violation can be determined, and this specific path can then be used further to calculate the time-local or time-global safety area.
- a robot path determines a sequence of times tx, with an integer x> 0 and the associated positions of the contour balls.
- the safety area of the robot can be determined again at each of the times tx.
- the security area violation can then be detected in relation to the newly determined security area.
- the orientation of one or more sensors can be adjusted in accordance with the determined safety area. This adaptation preferably follows that of the position / extent of the newly calculated safety area.
- the term “sensor” is to be understood broadly here. It can be a light barrier, light curtain, motion sensor, camera (image sensor), or other types of sensor.
- a safety button is also a sensor.
- the sensor and the modeling of the safety area can be 2D or 3D.
- a 2D safety area is shown with the help of circles.
- a circle is a projection of a sphere onto a surface. By projecting the 3D balls (safety balls) determined as above onto a surface (e.g. floor area / hall floor), a 2D safety area can then be determined.
- the object can be a human being and the method can furthermore comprise the capturing of a head and / or one or both hands of the human being as separate human segments, as well as determining, for each human segment, whether the human segment violates the safety area in one of the safety spheres .
- the object can be an object other than a human.
- the object can be another robot, or a plurality of other robots.
- the method described above for determining the safety areas can be used accordingly, e.g. for calculating the interlocking areas.
- a safety area calculating device for calculating the safety area, comprising: modeling a danger area of the robot by a set of contour balls which includes the robot contour; Determination of a safety area of the robot at a point in time to comprising a quantity of safety balls at a point in time t, where: (a) the point in time t is later than the point in time t 0 at which a safety area violation by the object was detected as having occurred, (b) for a contour sphere: the position of the contour sphere at time t corresponds to the position of a safety sphere, the radius of the safety sphere is greater by an amount than the radius of the corresponding contour sphere, and the amount depends on the point in time t and a predetermined speed of the object.
- the device 2340 can be implemented by one or more processors.
- the device 2340 can furthermore comprise a sensor controller for controlling the alignment of the sensor, the sensor being able to detect the position and / or movement of the object.
- FIG. 24 summarizes the method according to the invention again.
- the robot segments are determined.
- corresponding collision segments are determined for the robot segments.
- a safety area is determined.
- step S2440 the robot path and / or in step S2450 the position and / or orientation of the sensors can be determined.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
Die vorliegende Erfindung betrifft Ermittlung von Sicherheitsbereichen um eine automatisch arbeitende Maschine (einen Roboter). Dabei werden Robotersegmente durch jeweilige Konturkugel modelliert. Sicherheitsbereiche um den Roboter werden dann durch Expansion der einzelnen Konturkugel in Sicherheitskugel berechnet, wobei die Expansion von der Geschwindigkeit des Objekts (z.B. Menschen) abhängt, welches den Sicherheitsbereich verletzt hat.
Description
Ermittlung von Sicherheitsbereichen um eine automatisiert arbeitende
Maschine
Die vorliegende Erfindung betrifft ein Verfahren und eine Vorrichtung zum Ermitteln von Sicherheitsbereichen einer automatisiert arbeitenden Maschine.
Figur 1 zeigt einen beispielhaften Roboter 140, welcher einen Sockel 120, drei Gelenke 130 sowie drei durch die jeweiligen drei Gelenke 130 bewegbaren Armabschnitte 135, und einen Aufsatz 125 umfasst. Der Aufsatz 125 kann Gegenstände aufnehmen. In der Figur 1 wird mit dem Bezugszeichen 110 die theoretisch maximale Roboterreichweite bezeichnet, die auch Gefahrenbereich oder Gefährdungsbereich des Roboters genannt wird. Der beispielhafte Gefahrenbereich 110 entspricht einer Kugel, welche den Roboter 140 in jeder Kombination von Gelenkwinkeln der drei Gelenke 130 einschließt. Ein Sicherheitsbereich ist ein einzuhaltender Abstand zum Gefahrenbereich einer Maschine (eines Roboters).
Normen DIN EN ISO 13855 und ISO/TS 15066 enthalten allgemeine Vorgaben die ein Sicherheitsbereich um eine automatisch arbeitende Maschine erfüllen soll, verschreiben jedoch keine genaue Berechnung. Die aus der Norm ISO/TS 15066 bekannte Abstandsgleichung deckt zwar in ihrer allgemeinen Integralform jedwede Anwendung ab, ist jedoch für eine direkte Praxisanwendung ungeeignet, da die zur Berechnung erforderlichen Daten teils typischerweise nicht vorliegen und die Berechnung sehr aufwendig ist.
In der Norm DIN EN ISO 13855 wird ein Sicherheitsabstand S nach der Formel
S = ( K x T ) + C berechnet, wobei K die genormte Geschwindigkeit des Menschen ist, T die Zeitdauer von Sicherheitsbereichsverletzung bis zum Maschinenstillstand und C eine hier zu vernachlässigende Konstante der Sensoren ist. Diese Norm wurde nur für statische Gefahrenbereiche (z. B. in Figur 1 das Bezugszeichen 115) entworfen, also für klassische Werkzeugmaschinen, welche ihren Ort nicht während des Betriebes ändern. Eine Bewegung des Gefahrenbereiches, was bei bewegten Industrierobotern zur regulären Funktion zählt, wird damit nicht unterstützt.
Ein beispielhafter statischer Sicherheitsbereich 115 in der Figur 1 entspricht einer Kugel, welche die Roboterreichweite- Kugel 110, d.h. den Gefahrenbereich, konzentrisch enthält. Der statische Sicherheitsbereich 115 hat den Vorteil, dass er eine hohe Sicherheit bietet. Ein Nachteil eines solchen, durch eine Kugel modellierten, Sicherheitsbereichs 115 ist jedoch seine Größe, d.h. Ausdehnung, welche hohe Anforderungen an Platz in Industrieanlagen stellt. Das Bezugszeichen 150 entspricht einer Lichtschranke / einem Lichtvorhang und 100 ist die Überwachungsfläche der Lichtschranke. Wird die Überwachungsfläche von einem Objekt durchdrungen, löst die Lichtschranke ein Signal aus. In der Praxis kann statt einer Lichtschranke auch ein anderer Überwachungsmechanismus verwendet werden, wie zum Beispiel ein Bodenscanner.
Zudem ist ein so großer Sicherheitsbereich kaum notwendig, da sich Roboter typischerweise auf bestimmten Bahnen bewegen und Teile des beispielhaften Gefahrenbereichs 110 nie erreichen. Durch die Berücksichtigung einer Roboterbahn 180 (von Punkt A zum Punkt B), wie in der Figur 2 dargestellt, kann der zu berücksichtigende Gefahrenbereich 110 zum Bereich 111, sowie der Sicherheitsbereich 115 zum Bereich 116 verkleinert werden. Dabei sollte eine Roboterachsenüberwachung als Sicherheitsfunktion bereitgestellt werden.
Mit der Zeit wurden einige weitere Möglichkeiten zum Modellieren eines genaueren Sicherheitsbereichs entworfen. Beispielsweise soll ein automatisches Berechnen eines zeitlokalen (auf einen Zeitpunkt des Roboterprogramms bezogenen) Gefahrenbereichs unter der Verwendung der Roboterkontur, der Roboterkinematik (manchmal als Pose genannt) und des Roboterprogramms (welcher die Roboterbahn bestimmt) durchgeführt werden. Auf diesen zeitlokalen Gefährdungsbereich soll nach Außen normal (d.h. in jedem Punkt des Gefährdungsbereichs in die Richtung der Normale) ein Sicherheitsabstand aufgetragen werden, welcher dem vom Menschen im zurückgelegten Weg entspricht, vom Zeitpunkt der Sicherheitsbereichsverletzung bis zum Maschinenstillstand. In der Praxis stellt sich aber die Umsetzung eines solchen Verfahrens sehr schwierig dar. Das 3D-Modellieren des Gefährdungsbereiches, sowie des Sicherheitsbereichs ist sehr rechenintensiv und damit nicht echtzeitfähig.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur automatisierten und effizienter Berechnung von Sicherheitsbereichen um Industrieroboter herum bereitzustellen. Die Effizienz hier bezieht sich auf den rechenaufwand und/oder auf die resultierende Form und Größe des ermittelten Sicherheitsbereichs.
Die Aufgabe wird erfindungsgemäß mit den Merkmalen der unabhängigen Ansprüche gelöst. Einige vorteilhafte Ausführungsformen sind Gegenstand der abhängigen Patentansprüche.
Der Erfindung liegt der Gedanke zugrunde, dass die Effizienz durch Modellieren der Roboterkontur sowie der Sicherheitsbereiche durch einfach parametrisch skalierbare Segmente gesteigert werden kann.
Der besondere Ansatz der vorliegenden Erfindung ist die Ermittlung eines Sicherheitsbereichs durch Berechnung einzelner Sicherheitssegmente, insbesondere Sicherheitskugeln. Diese werden in ihrer Größe skaliert, unter Berücksichtigung der Geschwindigkeit von einem Objekt welches eine Sicherheitsbereichsverletzung verursachte. Mit solchen skalierbaren Sicherheitskugeln lassen sich zeitlokale sowie zeitglobale Sicherheitsbereiche relativ einfach (möglicherweise in Echtzeit) und genau bestimmen. Diese Bestimmung kann durch eine entsprechende Positionierung der Roboteranlagen zu einer effizienteren Nutzung der Produktionsfläche führen.
Gemäß einem ersten Aspekt der vorliegenden Erfindung wird ein Verfahren zur automatischen Ermittlung von einem Sicherheitsbereich bezogen auf einen Roboter zur Verfügung gestellt, wobei das Verfahren die folgenden Schritte umfasst: Modellieren eines Gefahrenbereichs des Roboters durch eine Menge von Konturkugeln, welche die Roboterkontur beinhaltet; Ermitteln von einem Sicherheitsbereich des Roboters zu einem Zeitpunkt to umfassend eine Menge von Sicherheitskugeln zu einem Zeitpunkt t, wobei: der Zeitpunkt t später ist als der Zeitpunkt to zu welchem eine Sicherheitsbereichsverletzung durch ein Objekt aufgetreten ist, für eine Konturkugel: die Position der Konturkugel zu dem Zeitpunkt t der Position einer Sicherheitskugel entspricht, der Radius der Sicherheitskugel um einen Betrag größer ist als der Radius der entsprechenden Konturkugel, und der Betrag von dem Zeitpunkt t und einer vorbestimmten Geschwindigkeit des Objekts abhängt.
Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird eine Vorrichtung zum Steuern eines Roboters zur Verfügung gestellt. Die Vorrichtung weist die folgenden Merkmale auf: einen Eingang zum Empfangen von einem Signal aus einem Sensor zum Erfassen von einer Verletzung eines Sicherheitsbereichs durch ein Objekt, eine Steuerungseinrichtung zum Steuern einer Roboterbahn auf Basis von dem empfangenen Signal, eine Sicherheitsbereich- Berechnungseinrichtung zum Berechnen des Sicherheitsbereichs enthaltend: Modellieren eines Gefahrenbereichs des Roboters durch eine Menge von Konturkugeln, welche die Roboterkontur beinhaltet; Ermitteln von einem Sicherheitsbereich des Roboters zu einem Zeitpunkt to umfassend
eine Menge von Sicherheitskugeln zu einem Zeitpunkt t, wobei: der Zeitpunkt t später ist als der Zeitpunkt to zu welchem eine Sicherheitsbereichsverletzung durch das Objekt als aufgetreten erfasst wurde, für eine Konturkugel: die Position der Konturkugel zu dem Zeitpunkt t der Position einer Sicherheitskugel entspricht, der Radius der Sicherheitskugel um einen Betrag größer ist als der Radius der entsprechenden Konturkugel, und der Betrag von dem Zeitpunkt t und einer vorbestimmten Geschwindigkeit des Objekts abhängt.
Das Verfahren kann des Weiteren Ermitteln einer Roboterbahn erfassen, wobei der ermittelte Sicherheitsbereich des Roboters zu dem Zeitpunkt 4 ein zeitlokaler Sicherheitsbereich ist, welcher als Vereinigung von einzelnen Sicherheitskugeln berechnet wird, umfassend alle den jeweiligen Konturkugeln der Menge M entsprechende Sicherheitskugeln zu jedem der aufeinanderfolgenden Zeitpunkten ti, mit ganzzahligem i>0, der bestimmten Roboterbahn.
Das Verfahren enthält beispielsweise weiter den Schritt des Berechnens eines zeitglobalen Sicherheitsbereichs durch Ermitteln der Roboterbahn als eine Vereinigung von einer Menge von zeitlokalen Sicherheitsbereichen des Roboters ermittelt wird, welche zu allen jeweiligen Zeitpunkten 4 einer Roboterbahn oder eines Roboterbahnabschnittsberechnet werden.
Zum Beispiel, wenn sich eine Konturkugel ab einem Zeitpunkt tj bis zum Ende der Ermittlung des zeitlokalen Sicherheitsbereichs im Stillstand befindet, bleibt der Betrag für die Zeit ab tj konstant.
Nach einer vorteilhaften Ausführungsform enthält der Schritt des Ermittelns von einem Sicherheitsbereich des Roboters zu einem Zeitpunkt to. das Bestimmen von einer Roboterbahn, die die Bahnen der einzelnen Konturkugeln beinhaltet, wobei die Roboterbahn einer Reaktionsbewegung und/oder einer Anhaltebewegung folgt, und das Bestimmen der Positionen der einzelnen Konturkugeln zu dem Zeitpunkt t auf Basis von der bestimmten Roboterbahn.
Zudem kann die Roboterbahn der Reaktionsbewegung und/oder der Anhaltebewegung folgen, wenn die Sicherheitsbereichsverletzung durch ein Betätigen eines Sicherheitsschalters erfasst wurde, und die Roboterbahn kann einer für den Normalbetrieb des Roboters bestimmten Bewegung folgen, wenn die Sicherheitsbereichsverletzung nicht durch ein Betätigen des Sicherheitsschalters erfasst wurde.
In einer Implementierung enthält das Modellieren eines Gefahrenbereichs des Roboters den Schritt des Berechnens von einer optimalen Zahl der Konturkugeln zwischen zwei Gelenken des Roboters, bei der der Durchmesser eines, der Überschneidung zwischen zwei Konturkugeln entsprechenden Kreises, im Wesentlichen der Breite des Roboterarms entspricht.
Das Verfahren kann weiter das Erfassen der Sicherheitsbereichsverletzung durch Erfassen einer Position des Objekts durch einen Sicherheitssensor zum Zeitpunkt to beinhalten, sowie das Steuern der Roboterbahn unter Berücksichtigung der erfassten Position des Objekts.
Zum Beispiel bestimmt die Roboterbahn eine Folge von Zeitpunkten tx, mit ganzzahligem x>0 und den zugehörigen Positionen der Konturkugeln, wird der Sicherheitsbereich des Roboters zu jedem der Zeitpunkte tx erneut bestimmt, und die Sicherheitsbereichsverletzung in Bezug auf den erneut bestimmten Sicherheitsbereich erfasst wird.
Ein weiterer Schritt des Steuerns der Ausrichtung eines Sensors in Übereinstimmung mit dem ermittelten Sicherheitsbereich kann ebenfalls vorliegen.
Das Objekt kann Mensch sein. Dann enthält das Verfahren des Weiteren das Erfassen von einem Kopf und/oder einer oder beider Hände des Menschen als jeweilige separate Menschensegmente, und Ermitteln, für jedes Menschensegment, ob das Menschensegment den Sicherheitsbereich in einer der Sicherheitskugeln verletzt.
Ein weiterer Schritt des Speicherns des ermittelten Sicherheitsbereichs als Positionen und Größen der jeweiligen Sicherheitskugeln kann bereitgestellt werden, welche den ermittelten Sicherheitsbereich darstellen.
Nach einem Aspekt der Erfindung wird eine Vorrichtung zum Steuern eines Roboters bereitgestellt, umfassend: einen Eingang zum Empfangen von einem Signal aus einem Sensor zum Erfassen von einer Verletzung eines Sicherheitsbereichs durch ein Objekt, eine Steuerungseinrichtung zum Steuern einer Roboterbahn auf Basis von dem empfangenen Signal, eine Sicherheitsbereich-Berechnungseinrichtung zum Berechnen des Sicherheitsbereichs enthaltend: Modellieren eines Gefahrenbereichs des Roboters durch eine Menge von Konturkugeln, welche die Roboterkontur beinhaltet; Ermitteln von einem Sicherheitsbereich des Roboters zu einem Zeitpunkt to umfassend eine Menge von Sicherheitskugeln zu einem Zeitpunkt t, wobei: (a) der Zeitpunkt t später ist als der Zeitpunkt to zu welchem eine Sicherheitsbereichsverletzung durch das Objekt als aufgetreten erfasst wurde, (b) für eine Konturkugel: die Position der Konturkugel zu dem Zeitpunkt t der Position einer Sicherheitskugel entspricht, der Radius der Sicherheitskugel um einen Betrag größer ist als der Radius der entsprechenden Konturkugel, und der Betrag von dem Zeitpunkt t und einer vorbestimmten Geschwindigkeit des Objekts abhängt.
Zudem kann eine Sensorsteuerung zum Steuern der Ausrichtung des Sensors Teil der Vorrichtung sein, wobei der Sensor in der Lage ist, Position und/oder Bewegung des Objekts zu erfassen.
Weitere Einzelheiten, Vorteile und Merkmale der Erfindung ergeben sich aus der folgenden
Beschreibung und den Zeichnungen, auf die bezüglich der Offenbarung aller nicht im Text beschriebenen Einzelheiten ausdrücklich verwiesen wird. Es zeigen:
Fig. 1 eine schematische Darstellung eines Roboters und des entsprechenden
Gefährdungsbereichs sowie eines statischen Sicherheitsbereichs.
Fig. 2 eine schematische Darstellung eines Roboters und des entsprechenden
Gefährdungsbereichs sowie eines statischen, auf Basis von Roboterbahn reduzierten, Sicherheitsbereichs.
Fig. 3 eine schematische Darstellung eines Roboters und des entsprechenden
Gefährdungsbereichs des Roboters.
Fig. 4 eine schematische Darstellung einer Roboterbahn entsprechend einer normalen Bewegung, einer Reaktionsbewegung und einer Anhaltebewegung.
Fig. 5 eine schematische Darstellung einer Roboterbahn für eine Konturkugel.
Fig. 6 eine schematische Darstellung einer Expansion vom Radius einer Konturkugel zur Berechnung einer Sicherheitskugel.
Fig. 7 eine schematische Darstellung einer Sicherheitsbereichsberechnung für ein
Robotersegment.
Fig. 8 ist ein Graph, der die durch eine Ausführungsform der Erfindung erreichte
Flächeneinsparung in Abhängigkeit von der Geschwindigkeit des Roboters darstellt.
Fig. 9 zeigt vier beispielhafte Vergleiche von Sicherheitsbereichen, die nach einer Ausführungsform der Erfindung und nach Stand der Technik berechnet wurden, für unterschiedliche Geschwindigkeiten eines Roboters.
Fig. 10 zeigt die ermittelten Sicherheitsbereiche und die entsprechenden Konturkugelbahnen.
Fig. 11 stellt eine 3D-Randpunktgruppe als eine Darstellung eines ermittelten
Sicherheitsbereichs dar.
Fig. 12 zeigt Segmentformen, welche alternativ oder zusätzlich zu den Kugeln verwendet werden können.
Fig. 13 ist eine schematische Darstellung der Ermittlung von einer Anzahl der Konturkugeln, welche einen Roboter umhüllen sollen.
Fig. 14 ist eine schematische Darstellung der Ermittlung von einer Anzahl der Konturkugeln auf Basis der Roboterarmweite.
Fig. 15 ist ein Blockdiagram, welches die Sicherheitsberechnung funktional beschreibt.
Fig. 16 ist ein Beispiel für die Berechnung von lokalen Sicherheitssegmenten
(Sicherheitskugeln).
Fig. 17 ist eine schematische Darstellung für individuelle Bahnen der jeweiligen Konturgugeln.
Fig. 18 ist ein Beispiel für die Berechnung von globalen und universalen
Sicherheitssegmenten.
Fig. 19 ist eine Tabelle, welche verschiedene Betriebsmodi und die einschlägigen
Sicherheitsfunktionen zusammenfasst.
Fig. 20 ist eine schematische Darstellung, welche das Modellieren des Menschensegments durch einen Kreis oder Kugel darstellt.
Fig. 21 ist eine schematische Darstellung, welche das Modellieren des Menschensegments durch separates repräsentieren von dem Kopf und den Händen.
Fig. 22 ist eine beispielhafte Darstellung eines Globalkooperationssegment.
Fig. 23 ist ein Blockdiagramm eines Systems in welchem die erfindungsgemäße Ermittlung des Sicherheitsbereichs eingesetzt werden kann.
Fig. 24 ist ein Flußdiagramm eines Verfahrens zur Ermittlung des Sicherheitsbereichs.
Der Begriff „Roboter“ umfasst eine beliebige, bewegliche, automatisiert arbeitende Maschine. Ein
Roboter kann einen oder mehrere Arme haben, wobei ein Arm ein oder mehrere Gelenke und
jeweils ein oder mehrere durch die Gelenke beweglichen Armabschnitte enthalten kann. Zusätzlich kann ein Roboter eine Basis (z. B. einen Sockel) beinhalten, welche den einen Arm oder aber auch mehrere voneinander unabhängig oder abhängig arbeitenden Arme stützt. Jeder Arm folgt einer Bewegung, welche sich aus der Bewegung der Armabschnitte zusammensetzt. Die Armabschnitte wiederum bewegen sich durch die Änderung von Gelenkwinkeln. Die Basis (und dadurch der Roboter) kann im Betrieb statisch sein, oder selbst einer Bewegungsbahn folgen. Im Industriebereich kommen beispielsweise auf Schienen bewegliche Roboter oder frei bewegliche Roboter zum Einsatz. Ein Arm (oder mehrere) des Roboters kann des Weiteren einen Aufsatz haben, beispielsweise einen Griff oder ein Werkzeug oder Ähnliches, mit welchem Gegenstände aufgegriffen oder bearbeitet werden können. Die Basis und/oder der Aufsatz sind Teile des Roboters und können damit auch zur Berechnung der Sicherheitsbereiche mitberücksichtigt werden. Dasselbe gilt für Gegenstände, welche möglicherweise während der Roboterbahn von dem Roboter (z.B. durch den Aufsatz) bewegt werden. Die vorliegende Erfindung ist jedoch auf keine bestimmte Ausgestaltung der automatisiert arbeitenden Maschine eingeschränkt und kann beliebige Formen und Funktionen haben. Zum Beispiel müssen auch keine Arme vorhanden sein, Roboterteile können sich auf Schienen oder anderen Stützen bewegen. Die Bewegung (Positionen und Orientierungen überZeit) der Roboterteile des Roboters wird als Roboterkinematik genannt. Bei Roboterarmen entspricht diese im Wesentlichen den Gelenkwinkeln.
Erfindungsgemäß wird die Kontur eines Roboters abschnittsweise durch eine Menge von Grundsegmenten modelliert. Die Grundsegmente können verschiedene Größen haben. Der Sicherheitsbereich wird dann durch Expansion der Grundsegmente, in Übereinstimmung mit der Roboterbahn und unter Berücksichtigung der Geschwindigkeit des den Sicherheitsbereich verletzenden Objekts, ermittelt. In anderen Worten: der Sicherheitsbereich selbst wird als eine Vereinigung von Sicherheitssegmenten ermittelt (als Gegensatz zum Ermitteln direkt auf Basis eines modellierten Gefährdungsbereichs).
Auf diese Weise lassen sich zeitlokale sowie zeitglobale Sicherheitsbereiche effizient ermitteln. Ein zeitlokaler Sicherheitsbereich ist ein Sicherheitsbereich welcher zu einem bestimmten Zeitpunkt to, in dem die Sicherheitsbereichsverletzung auftritt, berechnet wird. Ein Zeitglobaler Sicherheitsbereich wird als Vereinigung aller möglichen zeitlokalen Sicherheitsbereiche berechnet. Diese sind zeitlokale Sicherheitsbereiche, welche für eine Roboterbahn zu jedem Zeitpunkt to berechnet werden. Ein globaler Sicherheitsbereich berücksichtigt (modelliert) also Sicherheitsverletzung zu jedem Zeitpunkt der Roboterbahn.
Eine vorteilhafte Ausführungsform der Erfindung wird nachfolgend als eine Kombination von Merkmalen (a), (b), (c), (d), (e) und (f) beschrieben. Diese Merkmale können als Schritte eines Verfahrens oder durch entsprechende Teile einer Vorrichtung umgesetzt werden.
(a) Modellieren eines Gefahrenbereichs des Roboters durch Konturkugeln
Ein Roboter wird zunächst durch eine Mehrzahl von Kugeln dargestellt. Eine solche Darstellung ist in Figur 3 gezeigt. Demnach wird die Roboterkontur 8 als eine Menge von Konturkugeln 8a, 8b, 8c, 8d, ... dargestellt, welche die gesamte modellierte Roboterkontur 8 beinhalten (umhüllen). Jede Konturkugel kann einen anderen Radius rKonturKugel haben. Die Menge an Kugeln wird hier als die Menge M von Konturkugeln bezeichnet. Jede Konturkugel repräsentiert damit einen Teil des Gefahrenbereiches. Die vollständige Menge M an Konturkugeln zu einem Zeitpunkt ist der gesamte Gefahrenbereich der Pose des Roboters zu diesem Zeitpunkt. Pose eines Roboters ist hier durch die Gelenkwinkel der jeweiligen Gelenke 130 des Roboters definiert. Im Betrieb ändert sich die Pose des Roboters typischerweise mit der Zeit. Der Gefahrenbereich (d.h. die Vereinigung der Konturkugeln) muss für den Zweck der Ermittlung des Sicherheitsbereichs nicht berechnet werden.
Die Darstellung einer Roboterkontur durch kugelförmige Segmente ist praktisch, da sie lediglich einfache Berechnungen erfordert. Dies ist unter anderem dadurch gegeben, dass eine Kugel nur durch ihre Position (z.B. Position des Mittelpunkts der Kugel) und ihr Radius darstellbar ist. Durch die unterschiedlichen Radiusgrößen der jeweiligen Kugeln ist eine flexible und effiziente Parametrisierung und Roboterkontur-Repräsentation möglich. Der durch die Vereinigung der Menge M von Kugeln definierte Gefahrenbereich (siehe Figur 3) ist deutlich kleiner als der Gefahrenbereich 110, was sich weiter auf die Form und Größe des ermittelten Sicherheitsbereichs auswirkt.
(b) Zeitpunkt to der Sicherheitsbereichsverletzung
Wie oben erwähnt, führt ein Roboter typischerweise vorprogrammierte Bewegungen aus. Im Normalbetrieb entspricht die Bewegung des Roboters einer ersten, „normalen“ (üblichen) Roboterbahn. Falls eine Sicherheitsbereichsverletzung auftritt, kann diese Roboterbahn geändert werden. Diese Roboterbewegung besteht aus einer Reaktionsbewegung und einer Anhaltebewegung. Figur 4 ist eine schematische Darstellung einer Roboterbahn entsprechend
einer normalen Bewegung 1 , einer Reaktionsbewegung 2 und einer Anhaltebewegung 3 eines Robotersegments, beziehungsweise einer das Robotersegment modellierenden Konturkugel.
Eine Sicherheitsbereichsverletzung tritt zu einem beliebigen Zeitpunkt t0 während der Roboterbahn auf. Ab diesem Zeitpunkt t0 wird die restliche Roboterbewegung z.B. auf Basis der Roboter- und Systemdatenblätter bestimmt (berechnet). Eine Sicherheitsbereichsverletzung tritt auf, wenn ein Objekt (z.B. eine Person) den aktuellen Sicherheitsbereich betritt (verletzt). Der aktuelle Sicherheitsbereich in Bezug auf die für den Betrieb bestimmte Roboterbahn kann in einer beliebigen Art und Weise ermittelt werden - erfindungsgemäß oder durch ein anderes Verfahren. Die Sicherheitsbereichsverletzung kann durch einen oder mehrere Sensoren erfasst werden, beispielsweise durch Betätigen eines Sicherheitsknopfes oder durch einen Bewegungs- oder Bildsensor.
Allgemein kann die Berechnung der Reaktionsbewegung 2 und/oder der Anhaltebewegung 3 vorprogrammiert werden und kann von verschiedenen Parametern abhängen, z.B. von der relativen Position des Roboters in Bezug auf das Objekt und/oder der Geschwindigkeit des Roboters und/oder des Objekts. Je Konturkugel wird die Reaktionsbewegung 2 und Anhaltebewegung 3 auf Basis der jeweiligen spezifischen Bahn 1 der Kugel berechnet.
(c) Bahn einer Konturkugel
Die Bahn (2, 3) einer Konturkugel 4 nach der Sicherheitsbereichsverletzung wird beispielsweise durch die Position der Konturkugel (4a bis 4h) zu den jeweiligen Zeitpunkten ta bis th dargestellt.
Auf die Bahnpunkte, welche sich aus der (schrittweise) berechneten Reaktions- und Anhaltebahn 2 und 3 ergeben, wird die ursprüngliche Konturkugel 4 (welche zum Zeitpunkt t0 gehört und einen bekannten Radius 5 hat) an die Stellen 4a bis 4h kopiert, wie in der Figur 5 gezeigt. In anderen Worten, der Gefahrenbereich für eine einzelne Konturkugel 4 mit Radius 5, welche ein entsprechendes Robotersegment darstellt, wird zu den jeweiligen Reaktions- oder Anhaltebahnzeitpunkten ta bis th (entsprechend der Position der Konturkugeln 4a-4h) in der Figur 5 gezeigt. Die Zeitauflösung der Roboterbahn (Entfernung zwischen benachbarten Zeitpunkten) für die Konturkugeln 4a bis 4h und die entsprechende anschließende Berechnung der Sicherheitsbereiche kann konfiguriert werden. Dabei approximiert der für die diskreten Zeitpunkte der Roboterbahn berechnete Sicherheitsbereich einen Sicherheitsbereich der sich aus einer kontinuierlicher Bewegungsbahn ergibt.
rie Darstellung in der Figur 5 dient der Erklärung des zu berechnenden Sicherheitsbereichsmodells. Das Kopieren der Konturkugeln muss nicht notwendigerweise rechnerisch erfolgen. Vielmehr bestimmt die Position der Konturkugeln 4a bis 4h der Position der zu berechnenden Sicherheitskugeln, welche dann zu einem Sicherheitsbereich zusammengefügt werden.
(d) Expansion einer Konturkugel
Zu jedem Zeitpunkt ta bis th der Bewegungsbahn der Konturkugel 4 ist nun eine Konturkugel mit einem Radius 5, wie in der Figur 5 gezeigt. Erfindungsgemäß wird dieser Radius 5 um den Betrag (Term) rexp = Δt * vM expandiert, wie in Figur 6 dargestellt, um die entsprechende Sicherheitskugel zu erhalten. Figur 6 zeigt die Konturkugel 4 zu einem Zeitpunkt td auf der Bewegungsbahn 3 als die Konturkugel 4d. Die Konturkugel 4d wird um den Betrag 7d zu einer Sicherheitskugel 6d expandiert. Die sich aus der Expansion ergebende Sicherheitskugel 6d hat den identischen Mittelpunkt wie die zugehörige Konturkugel 4d, aber den folgenden Radius: rSicherheitskugel = r KonturKugel + rexp = r KonturKugel + Δt * vM . Das Symbol rKonturKugel bezeichnet den Radius 5 der Konturkugel. Die Geschwindigkeit vM ist dabei die Geschwindigkeit des sicherheitsbereichsverletzenden Objekts. Die Geschwindigkeit kann praktisch beispielsweise die Menschgeschwindigkeit sein. Die Menschengeschwindigkeit oder im Allgemeinen die Objektgeschwindigkeit kann eine durch eine Norm vorgegebene Konstante sein, z.B. mit dem Betrag von . Die vorliegende Erfindung ist auf keine bestimmte Ermittlung der
Geschwindigkeit vm eingeschränkt. Diese Geschwindigkeit kann festgelegt (z.B. durch eine Norm), geschätzt (z.B. auf Basis des Objekts welches ein Mensch, ein Roboter, ein Fahrzeug oder Ähnliches sein kann) und/oder gemessen (z.B. in dem Zeitpunkt to) werden. Das Symbol At bezeichnet die Zeitdifferenz zwischen dem Zeitpunkt t der betrachteten Konturkugel 4d auf ihrer Reaktions- oder Anhaltebahn und t0 (dem Zeitpunkt der Sicherheitsbereichsverletzung), also Δt = t - t0.
In anderen Worten, eine Sicherheitskugel 6d wird zum Zeitpunkt t (in diesem Beispiel td) durch Expansion der Konturkugel 4d berechnet, indem für die Konturkugel 4 die Position 4d der Konturkugel zu dem Zeitpunkt t der Position einer Sicherheitskugel 6d entspricht, der Radius 7d der Sicherheitskugel jedoch um einen Betrag rexp größer ist als der Radius 5 der entsprechenden Konturkugel 4d, und der Betrag rexp von dem Zeitpunkt t (relativ zu dem Zeitpunkt to) und einer vorbestimmten Geschwindigkeit vm des Objekts abhängt.
(e) Sicherheitsbereich einer Konturkugel für eine vorbestimmte Bewegungsbahn
Ein Sicherheitsbereich 9 eines Robotersegments (modelliert durch die Konturkugel 4) wird dann durch eine Vereinigung der Menge von Sicherheitskugeln 6a-6h zu den jeweiligen Zeitpunkten (f, ∈ {ta, tb, th }) der Bewegungsbahn der entsprechenden Konturkugel 4 modelliert. Dies ist in der Figur 7 gezeigt. Es ergibt sich somit für die Positionen (Zeitpunkte der Bewegungsbahn) der Konturkugel 4 eine Menge an dazugehörigen jeweiligen Sicherheitskugeln 6a-6h. Für jeden approximierten Zeitpunkt ti der Reaktions- und Anhaltebahn wird eine Sicherheitskugel berechnet.
Der gesamte Sicherheitsbereich des Roboters 8 zu einem beliebigen Zeitpunkt to der Roboterbahn 1 ergibt sich dann aus der Vereinigung der Sicherheitsbereiche welche für jedes Robotersegment (modelliert durch jeweilige Konturkugeln 8a, 8b, 8c, 8d, ... der Menge M) berechnet wurden. Anders gesagt: der Sicherheitsbereich 9 der Konturkugel 4 ist nur ein T eil des Sicherheitsbereichs des Roboters. Dieser Sicherheitsbereich des Roboters wird in der Fachwelt als „dynamischer“ oder „zeitlokaler“ Sicherheitsbereich bezeichnet, weil er sich auf den Zeitpunkt to der Sicherheitsbereichsverletzung bezieht. Bei der praktischen Umsetzung kommt es nicht darauf an, ob man zuerst die Sicherheitskugeln über die Zeitpunkte der Konturkugel-Bewegungsbahn in entsprechende Sicherheitsbereiche der Konturkugeln zusammenfasst, welche dann für alle Konturkugeln in dem zeitlokalen Sicherheitsbereich zusammengefasst werden oder umgekehrt. Für die vorliegende Erfindung kann die Berechnung in einer beliebigen Reihenfolge erfolgen, solange der zeitlokale Sicherheitsbereich als eine Vereinigung von einzelnen Sicherheitskugeln berechnet wird, umfassend alle den jeweiligen Konturkugeln 8a, 8b, 8c, 8d der Menge M entsprechende Sicherheitskugeln zu jedem der aufeinanderfolgenden Zeitpunkte 4 mit ganzzahligem i>0, einer Roboterbahn oder eines Roboterbahnabschnitts. Die Roboterbahn hier ist beispielsweise die Reaktions- und/oder Anhaltebahn bis zum Stillstand des Roboters odereine andere Roboterbahn nach dem Zeitpunkt t0. Die Sicherheitsbereichsberechnung kann auch lediglich für einen Teil (Abschnitt) der Roboterbahn durchgeführt werden. Im Allgemeinen entspricht die Roboterbahn einer Folge von Gelenkwinkeln des Roboters zu den aufeinanderfolgenden Zeitpunkten ti mit ganzzahligem i>0. In anderen Worten, der Schritt des Ermittelns von einem Sicherheitsbereich des Roboters zu einem Zeitpunkt t enthält beispielsweise das Bestimmen von einer Roboterbahn, die die Bahnen der einzelnen Konturkugeln beinhaltet, wobei die Roboterbahn einer Reaktionsbewegung und/odereiner Anhaltebewegung folgt, und das Bestimmen der Positionen der einzelnen Konturkugeln zu dem Zeitpunkt t auf Basis von der bestimmten Roboterbahn.
Die Vereinigung aller dynamischen Sicherheitsbereiche ergibt den „statischen“ oder „zeitglobalen“ Sicherheitsbereich, also einen Sicherheitsbereich, welcher die gesamte Roboterbahn abdeckt. Ein Schritt des Berechnens des zeitglobalen Sicherheitsbereichs enthält das Ermitteln der Roboterbahn als eine Vereinigung von einer Menge von zeitlokalen Sicherheitsbereichen des Roboters 8, welche zu allen jeweiligen Zeitpunkten to einer vollständigen Roboterbahn oder eines Roboterbahnabschnitts berechnet wird. Hier entspricht die vollständige Roboterbahn einer Roboterbahn vor und nach dem Zeitpunkt to. Die vorliegende Erfindung erlaubt es aber den globalen Sicherheitsbereich auch lediglich für einen Abschnitt der vollständigen Roboterbahn zu berechnen.
In anderen Worten, der lokale Sicherheitsbereich ist auf den Zeitpunkt der Sicherheitsbereichsverletzung bezogen (und auf die darauffolgende Roboterbahn). Der globale Sicherheitsbereich ist auf die Roboterbahn des Roboters im Betrieb bezogen.
Der globale Sicherheitsbereich kann beispielsweise durch Lichtschranken überwacht werden. Die Fähigkeit, an jedem Zeitpunkt der Bahn einen anderen Bereich zu überwachen, hat eine Lichtschranke üblicherweise nicht. Andere Überwachungsmittel (Bewegungssensoren, Kameras, Lichtscanner oder Ähnliches) können auch gesteuert werden, zeitveränderliche Bereiche zu überwachen.
(f) Stillstand der Konturkugel
In einer vorteilhaften Umsetzung, wenn sich eine Konturkugel ab einem Zeitpunkt tj bis zum Ende der Ermittlung des zeitlokalen Sicherheitsbereichs (d.h. bis zum Ende der Roboterbahn oder des Abschnitts) im Stillstand befindet, bleibt der Betrag für die Zeit ab tj konstant.
Ab dem Zeitpunkt, ab dem sich eine Konturkugel nicht mehr bewegt, d.h. ihre Absolut- Geschwindigkeit (translatorisch und rotatorisch) bis zum vollständigen Maschinenstillstand Null beträgt, erhält die entsprechende Sicherheitskugel keine weitere Radiusexpansion. Die Gleichung aus dem Merkmal (d) gilt für diese Konturkugel nicht mehr. Das hat zur Folge, das Bauteile in Ruhe keinen Sicherheitsbereich weiter aufspannen und damit eine Kollision ermöglichen. Dieser Effekt ist sicherheitstechnisch mit den Normen konform. Auf einen Roboter bezogen kann dadurch der folgende Effekt erzeugt werden: der Robotersockel (die Basis) 8a, welcher das gesamte Roboterprogramm über im Ruhemodus ist, spannt keinen Sicherheitsbereich auf, hat also den Betrag rexp gleich Null. Sollte der Robotertorso (8b, 8c) vor dem Roboterarm in den Ruhemodus
kommen, so erweitert er ab diesem Zeitpunkt seinen Sicherheitsbereich nicht weiter, während der Roboterarm seinen Sicherheitsbereich weiterhin erweitert.
Anders gesagt: wenn sich eine Konturkugel im Stillstand befindet und bis zum Zeitpunkt des vollständigen Stillstandes des Roboters auch im Stillstand bleibt, bleibt ihr Betrag konstant.
Die Kombination aus den oben erwähnten Merkmalen (a) und (d) ermöglicht eine extreme Berechnung der Sicherheitsbereiche, da der gesamte Sicherheitsbereich einer Konturkugel eines Reaktions- oder Anhaltebahnpunktes über eine einfache Summation der Radien berechnet werden kann (vgl. Figur 7). Die Berechnung kann damit problemlos echtzeitfähig erfolgen.
Das Merkmal (d) allein bietet einen Vorteil, weil so Sicherheitsabstände zu schnell bewegenden Konturkugeln deutlich richtungs- und geschwindigkeitsabhängig berechnet werden. Im Stand der Technik wird der Sicherheitsbereich dagegen meistens einfach in alle Richtung gleich groß angetragen.
Das Merkmal (b) ist vorteilhaft, weil eine Bewegung der Roboter sehr schnell sein kann. Weitere Vereinfachungen könnten zu teilweise unsicheren Sicherheitsbereichen führen, wenn die Bewegung der Gefahrenbereiche nach der Sicherheitsbereichsverletzung nicht oder nur vereinfacht betrachtet wird.
In der Kombination aller Merkmale von (a)-(f) ergeben sich deutlich kleinere Sicherheitsbereiche, als sie bisher im Stand der Technik berechnet werden können. In einer ersten Analyse wurden Bereichseinsparungen im niedrigen Geschwindigkeitsbereich von 0-35%, im mittleren Geschwindigkeitsbereich von 45-65% und im Hochgeschwindigkeitsbereich von 65-75% berechnet. Diese sind in den Figuren 8, 9 und 10 gezeigt. Figur 8 zeigt Flächeneinsparungen bei zeitlokalen Sicherheitsbereichen, berechnet nach der Ausführungsform der Erfindung (bezeichnet als NeuA) gegenüber dem nach dem Stand der Technik berechneten Sicherheitsbereichen und in Abhängigkeit von der Geschwindigkeit des Roboters. Figur 9 zeigt Vergleiche der zeitlokalen Sicherheitsbereiche nach NeuA und nach dem Stand der Technik für vier beispielhafte Robotergeschwindigkeiten A1. Figur 10 stellt ein Zwischenergebnis einer Simulation des Sicherheitsbereiches nach der Ausführungsform der Erfindung (NeuA) und des nach dem Stand der Technik simulierten Sicherheitsbereichs dar. Innerhalb des NeuA-Sicherheitsbereiches sind die Trajektorien der einzelnen Kollisionskugeln (Konturkugeln) sichtbar.
Ein weiterer Vorteil ergibt sich daraus, dass der Sicherheitsbereich als Menge von Kugeln vorliegt. Ein solches Datenformat ist in Bezug auf das Verhältnis von Datenmenge zu Ergebnisgenauigkeit
sehr günstig. Weiterhin kann man darauf aufbauend das Ergebnis (den Sicherheitsbereich) auch in andere Formate umrechnen, wie z.B. in eine 2D-Randpunktmenge (siehe Figur 9) oder in eine 3D-Randpunktmenge wie in der Figur 11 dargestellt. In der Figur 11 bewegt sich ein Roboter 1110 auf der Roboterbahn 1120. Der zeitglobale 3D-Sicherheitsbereich der in Bezug auf diese Roboterbahn 1120 berechnet ist hat eine Grenze, die durch die 3D-Randpunktmenge 1130 definiert ist.
Nach einer Ausführungsform der Erfindung wird ein Datenformat (eine Datenstruktur) bereitgestellt. In dem Datenformat werden Sicherheitsbereiche (zeitlokale und/oder zeitglobale) um einen Roboter elektronisch gespeichert. Dabei wird ein Sicherheitsbereich durch eine Menge von Kugeln definiert, jede Kugel wird durch Position (z.B. Mittepunkt) und Größe (z.B. Radius oder Durchmesser) gekennzeichnet. Die Position kann innerhalb eines beliebigen Koordinatensystems definiert sein, z.B. relativ zu den Robotersegmenten und/oder Konturkugeln. Das Speichern eines Sicherheitsbereiches durch einzelne Kugeln hat den Vorteil der Effizienz - ein Speichern als Punkte der 3D-Hülle ist in der Regel aufwendiger als das Speichern der Einzelnen Kugeln. Zudem kann man bei Kollisionen die einzelnen kollidierenden Kugeln identifizieren und mit diesen weiterrechnen, anstatt die Berechnungen mit einer komplizierteren Hülle durchzuführen.
Das Verfahren zum Ermitteln der Sicherheitsbereiche kann entsprechend einen Schritt des Speicherns von der Position und der Größe der Sicherheitskugeln enthalten, welche einen ermittelten Sicherheitsbereich darstellen. Das Verfahren kann des Weiteren eine Reduktion der Anzahl der gespeicherten (zu speichernden) Sicherheitskugeln eines Sicherheitsbereichs enthalten, bei welcher eine Kugel, die komplett in einer anderen Kugel enthalten ist, nicht gespeichert wird. Dieser Schritt hilft weiter, die Menge der zu speichernden Daten zu reduzieren. Das Verfahren kann auch eine weitere Reduktion der Anzahl der gespeicherten (zu speichernden) Sicherheitskugeln enthalten, bei welcher eine Kugel, die komplett in Hülle einer Mehrzahl von Kugeln enthalten ist, nicht gespeichert wird. Diese Mehrzahl kann auf zwei eingeschränkt werden, oder auch maximal drei oder vier, oder mehr.
Die vorliegende Erfindung ist vorteilhafterweise in der schutzzaunlosen Industrierobotik oder Leichtbaurobotik anwendbar, z.B. für die industrielle Fertigung. Weitere Einsatzgebiete sind in Mensch-Roboter-Kollaborationsumgebungen, in fahrerlosen Transportsysteme (FTS), oder sogar auf dem Gebiet des autonomen Fahrens (autonome Automobile).
In Allgemeinem: die erfindungsgemäße Sicherheitsbereichsbestimmung ist für jegliche Kinematiken ersetzbar (auch ein Auto ist eine Kinematik, nur mit anderen Gelenkbindungsgleichungen als der oben-beschriebene beispielhafte Roboter 8).
Die oben beschriebene Ausführungsform stellt ein konkretes Beispiel dar. Die Erfindung kann auf unterschiedliche Weisen ausgeführt werden. Im Allgemeinen betrifft die Erfindung das Ermitteln von einem Sicherheitsbereich um einen Roboter, wobei dieser durch eine Menge von Sicherheitskugeln modelliert wird. Eine Sicherheitskugel entspricht in Position einer Konturkugel, welche ein Robotersegment in einem Punkt der Roboterbahn umhüllt. Diese Repräsentation ist modular und erlaubt damit das Bestimmen der dynamischen Sicherheitsbereiche nach einer Sicherheitsbereichsverletzung.
Die erfindungsgemäße Sicherheitsbereichsbestimmung kann für beliebige Sicherheitsbereiche angewendet werden, z.B. zeitlokal oder zeitglobal, aber auch für Teilbereiche bezogen auf eine Untermenge der Roboterkonturkugeln und/oder eine Untermenge der Roboterbahn ab Sicherheitsbereichsverletzung. Auch kann man die vorliegende Erfindung zum Bestimmen von einem Sicherheitsbereich um eine Mehrzahl von Robotern verwenden.
Das Modellieren der Roboterkontur durch Konturkugeln ist sehr effizient. Prinzipiell könnte man jedoch die Roboterkontur zusätzlich oder alternativ zu den Kugeln mit anderen Grundformen modellieren. Figur 12 zeigt in Abschnitt (c) oben die Kugel als Grundsegment. Ein Robotersegment, z.B. ein Teil eines Roboterarms, ist hier als ein Zylinder mit Radius r und Höhe 2h dargestellt, welche durch die Konturkugel mit einem Radius R modelliert (umgefüllt) wird. In dieser Figur wird für die Konturkugel der Begriff Kollisionssegment (KS) verwendet. Das gleiche zylindrische Robotersegment ist in Abschnitt (b) durch ein KS in der Form eines Quaders und in Abschnitt (a) durch ein KS in der Form eines Zylinders modelliert. Wie aus der Figur ersichtlich, hat ein Quader jedoch 3 Parameter (a, b, c) und ein Zylinder 2 Parameter (r, h), was diese Grundformen komplexer zum Berechnen und Speichern macht. Zudem bestimmt man deutlich aufwendiger die Randpunkte von einem Sicherheitsbereich, welcher durch solche komplizierteren Grundformen modelliert wurde. Auf der anderen Seite könnten Kollisionssegmente mit anderen Formen als einer Kugel, d.h. mit von der Kugel verschiedenen Formen, besser der Form des Roboters folgen und dadurch die Roboterkontur genauer darstellen, wie man beispielsweise dem Abschnitt (a) entnimmt, in welchem ein im Wesentlichen zylindrisches Robotersegment durch ein zylindrisches KS modelliert wird. Deshalb sind Ausführungsformen möglich, in welchen eine Untermenge von Robotersegmenten durch Kugeln und eine andere Untermenge von Robotersegmenten durch Zylinder oder andersförmige KS modelliert werden. Alternative
66sführungsformen basieren vollständig auf einer KS-Form, welche jedoch eine andere ist als die Kugel, beispielsweise Zylinder oder Quader. Diese Ausführungsformen könnten insbesondere mit der steigenden Rechenleistung der Verarbeitungssysteme und Computer in Zukunft interessant werden.
Zum sicheren Berechnen der Sicherheitsbereiche ist es von Interesse, dass ein KS ein Robotersegment vollständig umhüllt. Es sind jedoch auch Ausführungsformen möglich, bei welchen ein KS ein Robotersegment lediglich größerenteils, d.h. im Wesentlichen, umhüllt.
In dem Abschnitt (c) der Figur 12 hat die KS-Kugel Volumen Das Robotersegment
ist ein Zylinder mit Volumen VZylinder = πr2.2h. Es gilt r2 = R2 - h2. Das Volumen des Zylinders kann man damit in Bezug auf das KS wie folgt darstellen:
VZylinder = π. ( R 2 - h2). 2h = 2 πR2h — 2 πh3 VZylinder = 2 πR2 — 6 πh3
Daraus ergibt sich Robotersegment in Form eines Zylinders (mit der Höhe 2h und Kreiszylinderradius r), der in eine Kugel mit dem Radius R eingeschrieben ist.
Figur 13 zeigt einen Roboterarm modelliert durch eine Menge von Konturkugeln (Kollisionssegmenten). Der Roboterarm enthält zwei Gelenke Ga und Gb welche durch jeweilige KS, nämlich KSO und KSn, modelliert werden. Zwischen diesen Gelenken befinden sich weitere (in diesem Beispiel 3) KS. Die vorliegende Erfindung ist auf keine bestimmte Aufteilung des Roboters in Roboter- und Kollisionssegmente eingeschränkt. Allgemein ist es wünschenswert, wenn die KS den Roboter möglichst eng umhüllen. Für manche Anwendungen könnte man jedoch auch interessiert sein, die Menge der KS kleiner zu halten. Die kugelförmigen KS sind sehr flexibel und unterstützen diesbezüglich beliebige Optimierungsbedingungen, welche sowohl die Menge der benötigten KS als auch die räumliche Ausdehnung der KS berücksichtigen.
Fig. 14 zeigt eine beispielhafte Umsetzung der KS-Zuordnung zu einem Roboterarm. In dieser Umsetzung enthält das Modellieren eines Gefahrenbereichs des Roboters den Schritt des Berechnens von einer Zahl (n+1) der Konturkugeln zwischen zwei Gelenken Ga und Gb des
Roboters, wobei der Durchmesser eines der Überschneidung zwischen zwei Konturkugeln entsprechenden Kreises im Wesentlichen der Breite des Roboterarms entspricht (oder den Schnitt des Roboterarmes vollständig beinhaltet), d.h. lnterKS1KS2 Roboterarmbereite .
Die vorliegende Erfindung ist besonders vorteilhaft für das Berechnen des Sicherheitsbereichs nach Eintritt einer Sicherheitsbereichsverletzung. Das Berechnen kann von dem Roboterbahnverlauf nach der Sicherheitsbereichsverletzung abhängen. Die Roboterbahn nach der Sicherheitsbereichsverletzung kann wiederum davon abhängen, welche Art von Sicherheitsbereichsverletzung stattfand. Das erfindungsgemäße Konzept basiert auf dem Modellieren einer Roboterkontur durch Grundsegmente, welche Basis für die jeweiligen einzelnen Kollisionssegmente bilden. Die Kollisionssegmente haben eine Größe, die sich in Abhängigkeit von geschätzter oder gemessener Geschwindigkeit des Objekts ändert, welches die Sicherheitsbereichsverletzung verursacht hat. Dieses Konzept ist sehr flexibel und kann weiter an konkrete Einsatzbereiche angepasst werden.
Figur 15 zeigt, wie Sicherheitsbereiche in drei funktionalen Modulen berechnet werden können.
In einem ersten Modul 810 werden roboterbezogene Kollisionssegmente berechnet. In diesem Modul wird die gesamte Roboterkinematik in Kollisionssegmente aufgeteilt und modelliert. Wie oben bereits erwähnt, wird als erstes eine Grundform des KS gewählt (z.B. Kugel). Die Auswahl der Grundform muss nicht stattfinden und alle KS können einfach kugelförmig sein, da die Kugel besonders vorteilhaft für die Echtzeitberechnung ist. Andererseits könnte man, bei kleineren Anforderungen an Geschwindigkeit der Berechnung oder bei verbesserter Hardware, auch aus mehreren Grundformen auswählen (vgl. Fig. 12). Diese Auswahl kann für das Modellieren aller KS des Roboters erfolgen (d.h. eine Auswahl für alle KS), oder per Robotersegment, in Abhängigkeit von der Form des Robotersegments. Dabei kann z.B. der Unterschied zwischen den Volumen von dem Robotersegment und dem KS minimiert werden oder eine Kostenfunktion mit mehreren Parametern optimiert werden.
Für praktische Anwendungen jedoch, wie bereits erwähnt, sind kugelförmige Grundsegmente am günstigsten. Ab dem Zeitpunkt der Bereichsverletzung läuft eine Zeit, in der das Objekt / der Mensch einen möglichen Konturpunkt des Roboters erreichen und mit ihm kollidieren kann. Die Bewegung (Bahn, Geschwindigkeit) des Menschen ist dabei meistens unbekannt. Deshalb wird seine Geschwindigkeit z. B. laut einer Norm mit 1 ,6 m/s festgeschrieben. Für eine Situation, in der sich ein Mensch in der unmittelbaren Nähe des Roboters befindet, ist die in der Norm festgelegte
Geschwindigkeit für eine Handbewegung des Menschen 2 m/s. Diese sind jedoch lediglich Beispiele, die die vorliegende Erfindung in keiner Weise einschränken.
Es muss also angenommen werden, dass sich der Mensch aus allen erdenklichen Richtungen auf einen Konturpunkt zubewegen kann. Die Bewegung erfolgt geradlinig, weil dies sicherheitstechnisch der schlimmste Fall ist, d.h. der Mensch gelangt in dieser Weise am frühsten zu dem Roboter. Um einen Konturpunkt bildet sich also eine Kugel aus, deren Radius direkt von der seit Bereichsverletzung verstrichenen Zeit abhängig ist.
Da ein Hüllkörper aber nicht nur aus einem Konturpunkt, sondern theoretisch aus unendlich vielen Konturpunkten besteht, muss zumindest eine auf der Kontur angemessen verteilte Menge an Konturpunkten (angemessene Auflösung) betrachtet werden, damit die Sicherheitsbereiche zuverlässig ermittelt werden können. Das führt dazu, dass die Expansion eines Hüllkörpers (Konturkugel, allgemein Kollisionssegment) keine reine Skalierung dessen, sondern eine Skalierung mit gleichzeitiger Kantenabrundung ist, solange der Hüllkörper Kanten besitzt. Kugeln sind auch deshalb günstig, weil sie keine Kanten besitzen. Zylinder und Quader dagegen besitzen Kanten, welche dann beim Modellieren der Expansion abgerundet werden.
Selbst wenn man noch einen Quader oder einen Zylinder mit abgerundeten Kanten in einer Datenstruktur darstellen kann, wird ein Algorithmus, der mit diesen expandierten Hüllkörpern rechnet, komplex. Insbesondere kann die Ermittlung der aus individuellen expandierten KS zusammengesetzten Sicherheitsbereiche schwierig werden, bei denen man die Vereinigung (Hülle) des gesamten zeitlokalen oder zeitglobalen Sicherheitsbereichs ermittelt. Dabei ist es günstig, schnell feststellen zu können, ob ein KS Teil eines oder mehrerer anderer KS ist, um weitere Berechnungen/Speicherung durch das Auslassen eines solchen redundanten KS vereinfachen kann. Dagegen: Eine Kugel zu skalieren und dann ihre Kanten abzurunden ergibt wieder eine Kugel. Außerdem ist die Berechnung der Sicherheitssegmente eine einfache Radiussummation.
In anderen Worten, kugelförmige KS sind besonders vorteilhaft für die Weiterverarbeitung der Kugelansammlung, welche sich aus den einzelnen expandierten Sicherheitskugeln zusammensetzt. Für die Bestimmung der Randpunktmenge (z.B. wie in Figur 9 oder 11 dargestellt) braucht man nicht alle Sicherheitskugeln. Es liegen kleinere Kugeln innerhalb von größeren Kugeln. Für Randpunktmenge (Sicherheitsbereich) wird aber nur der maximal eingenommene Raum benötigt. Die Kugeln, die einen Unterraum einer (oder mehrerer) größeren Kugel darstellen, brauchen also in der nachfolgenden Berechnung der Randpunktmenge nicht
mehr betrachtet werden. Man kann diese also verwerfen, d.h. man braucht sie nicht mehr weiter speichern und/oder diese nicht mehr bei der weiteren Berechnung berücksichtigen. Ein solcher Schritt der Sicherheitskugel-Reduktion erlaubt weitere Beschleunigung der Berechnung und Reduktion der für die Speicherung benötigten Speicherkapazität.
Dasselbe Vorgehen ist sowohl bei dem zeitlokalen als auch bei dem zeitglobalen Sicherheitsbereich durchzuführen. Die Überprüfung, ob eine Kugel eine Untermenge einer anderen Kugel ist, ist einfach. Es muss nur der Abstand der Mittelpunkte beider Kugeln bestimmt werden (Betrag eines Vektors) und wenn die Bedingung Radius von Kugell + Mittelpunktsabstand < Radius von Kugel2 erfüllt ist, ist Kugell eine Untermenge von Kugel2. Eine solche einfache Berechnung ist bei anderen Grundformen der KS nicht möglich.
Als zweites wird die Anzahl von Kollisionssegmenten berechnet (vgl. Figuren 13 und 14). Diese Anzahl der Kollisionssegmente kann auch als „optimal“ bezeichnet werden, wenn Sie aufgrund einer Optimierung, z.B. auf Basis einer Kostenfunktion, berechnet wird.
Das Modul 1 liefert also für einen Roboter ein Modell dieses Roboters durch eine Anzahl von Kollisionssegmenten, welche die Kontur des Roboters im Wesentlichen oder vollständig beinhalten, d.h. den Roboter umhüllen.
Ein zweites Modul mit dem Bezugszeichen 820 ist für die Berechnung von bahnbezogenen Sicherheitssegmenten verantwortlich. Diese können, wie oben bereits erwähnt, einzelne Sicherheitskugeln (Sicherheitssegmente), zeitlokale und zeitglobale Sicherheitssegmente beinhalten.
Untermodul 822 berechnet lokale Sicherheitssegmente, LSS, welche den oben erwähnten Sicherheitskugeln entsprechen. Untermodul 824 berechnet globale Sicherheitssegmente, GSS, welche den oben erwähnten zeitlokalen Sicherheitsbereichen (für eine Sicherheitskugel) entsprechen. Untermodul 826 berechnet universale Sicherheitssegmente, USS, welche den zeitglobalen Sicherheitsbereichen entsprechen.
Ein Roboter besteht aus Kollisionssegmenten KS0 → KSn . Diese (jedes solches KS) KS bewegen sich auf der Roboterbahn von Gt0 → Gtk. Ein Lokalsicherheitssegment LSSKSn(Lt0) zum Zeitpunkt Lt0 ist gleich einem Kollisionssegment 910 KSn((Gtx )). Für den Radius R dieser Segmente gilt RLssksn(Lt0) = RKSn(Gtx ). Ein Lokalsicherheitssegment LSSKSn(Lt1) zum Zeitpunkt (Lt1) hat einen Radius RLssksn(Lt1) = RKsn(Gtx ) + Sm(Lt1) wobei Sm(Lt1) eine Distanz darstellt, die ein Mensch zwischen t0 und ^laufen kann. Ein Lokalsicherheitssegmen LSSKSn(Ltm ) zum Zeitpunkt Ltm hat
den Radius RLssksn(Ltm) = RKsn(Gtx ) + Sm(Ltm), wobei Sm(Ltm) einer Distanz entspricht, die ein Mensch zwischen t0 und tmlaufen kann. Ein LSS 940 ist, wie auch andere LSS in der Figur, durch eine gestrichelte Linie dargestellt. Mittelpunkt jedes LSS liegt auf der Roboterbahn 900. Sr entspricht dem Anfang der Reaktionsbahn und Ss entspricht der Anfang der Anhaltbahn. Der durch die dicke Strichpunkt-Linie dargestellte Bereich 990 entspricht einem Globalsicherheitssegment GSSKSn(Gtx ) zu einem globalen Zeitpunkt Gtx an dem die Sicherheitsbereichsverletzung stattfand.
Jedes Kollisionssegment KSn hat ein Globalsicherheitssegment GSSKSn(Gtx ) zu einem globalen Zeitpunkt Gtx . Ein Globalsicherheitssegment hier entspricht dem oben beschriebenen zeitlokalen Sicherheitsbereich für eine Sicherheitskugel und enthält mehrere Lokalsicherheitssegmente LSSKSn(Lt0 ) → LSSKSn(Ltm ) für die Lokalzeit von Lt0 → Ltm. Das Robotersicherheitssegment RSS(Gtx ) zu einem globalen Zeitpunkt Gtx beinhaltet alle Globalsicherheitssegmente der Kollisionssegmente KS0 → KSn; d. h. GSSKS0(Gtx ) → GSSKSn(Gtx).
Figur 17 zeigt eine Mehrzahl von KS eines Roboterarmes. Jedes dieser Segmente bewegt sich auf einer eigenen Bahn, die Bahnen einzelner KS bilden die Roboterbahn. Figur 18 stellt dar, dass jedes Kollisionssegment KSn ein Universalsicherheitssegment USSKSn hat, welches aus Globalsicherheitssegmenten GSSKSn(Gt0 ) → GSSKSn(Gtk ) zur Globalzeit von Gt0 → Gtk besteht. In der Figur 18 sind einfachheitshalber nur Globalsicherheitssegmente für zwei beispielhafte Globalzeitpunkte Gtk und Gtb.
Das entsprechende Roboteruniversalsicherheitssegment RUSS kann beschrieben werden als beinhaltend:
1. Entweder alle Universalsicherheitssegmente der Kollisionssegmente KS0 → KSn d.h.:
URRKSO ussKSn
2. Oder, äquivalent, alle Robotersicherheitssegmente zwischen Gt0 → Gtk; d. h : RSS(Gt0 ) → RSS(Gtk).
Die Bereichsverletzungssicherheitsfunktion und Roboteruniversalsicherheitssegmente RUSS nehmen an, dass der Roboter ein blindes System ist und dass ein Mensch von überall eintreten kann, d.h. man kann das Roboteruniversalsicherheitssegment RUSS als einen statischen Sicherheitsbereich verwenden (einsetzen).
Ein drittes Modul 830 berechnet Betriebsmodus-Sicherheitssegmente, d.h. nimmt Betriebsmodus und insbesondere die Sicherheitsfunktionen beim Berechnen der Sicherheitssegmente in Betracht.
Fig. 19 zeigt eine Übersicht von Sicherheitsfunktionen, die in verschiedenen Betriebsmodi verfügbar sind, sowie die jeweiligen Ereignisse, welche die Sicherheitsfunktionen auslösen, die Konsequenzen der Sicherheitsfunktionen, und ob die Sicherheitsfunktionen erforderlich oder optional sind. Die Tabelle in der Figur 19 unterscheidet zwischen 4 Betriebsmodi:
1. Sicherheitsbewerteter überwachter Halt (Safety-rated monitored stop, SRMS),
2. Geschwindigkeits- und Abstandsüberwachung (Speed and Separation monitoring, SSM), 3. Handführung (Hand Guiding, HG) und 4. Leistungs- und Krafteinschrenkung (Power and force limiting, PFL). Diese Modi sind in der Norm ISO/TS 15066 definiert. Die vorliegende Erfindung kann in einem oder in mehreren dieser Modi angewendet werden. Wie bereits oben beschrieben, ist die Erfindung jenseits von Normen und/oder der darin definierten Modi anwendbar. Sie kann für einen oder mehrere Roboter und/oder Objekte eingesetzt werden. Im folgenden werden lediglich Beispielszenarien gezeigt, in denen die Erfindung auch eingesetzt werden kann.
Die oben beschriebene Sicherheitsbereichsverletzung kann beispielsweise bezüglich der Sicherheitsfunktion der Betriebsmodi SRMS und SSM sein, wie in der Tabelle dargestellt. Wenn eine solche Sicherheitsbereichsverletzung auftritt, als Folge dessen, dass ein Mensch den Gefahrbereich betreten hat, muss der Roboter gestoppt werden. Dies kann durch die Reaktions und Anhaltebewegung durchgeführt werden. Im Allgemeinen (z.B. in einem alternativen Betriebsmodus) kann jedoch auf eine Sicherheitsverletzung alternativ der Roboter seiner üblichen Bahn folgen, aber dabei seine Geschwindigkeit reduzieren, oder Leistung und/oder Kraft.
In dem SSM-Modus kann ein Ereignis Vorkommen, dass die Menschposition zum Roboter so ist, dass der Roboter nicht anhalten kann, bevor er mit dem Menschen kollidieren kann. Dies kann durch das Überwachen von dem Sicherheitsbereich erfasst werden. In einem solchen Fall kann die Geschwindigkeit des Roboters bis zum Stop reduziert und die Bahn geändert werden. Im PFL- Modus wird Kontakt (Kollision) detektiert und darauf der Roboter gestoppt.
In der Sicherheitsfunktion mit Erkennung des Menschenschwerpunkts im SSM wird die Position des Menschen durch die Sicherheitssensoren erfasst. Man kann dabei zwei Fälle unterscheiden: kontinuierlich und diskret. Im kontinuierlichen Fall entsprechen die Robotersicherheitssegmente RSS(Gtx ) den dynamischen Sicherheitsbereichen. Diese Bereiche sind gekoppelt mit der Roboterbahn von Gt0 bis Gtk und werden regelmäßig (innerhalb einer Zykluszeit) aktualisiert. Der
Mensch kann in der Nähe der Roboterbahn arbeiten, aber nur außerhalb der Robotersicherheitssegmente. Im diskreten Fall können mehrere Kooperationsbereiche definiert werden. Anhand der Menschposition in (relativ zu) diesen Bereichen wird der Roboter seine Geschwindigkeit anpassen. Roboterkooperationssegment ROS(Gtx ) kann dann mit Hilfe der GSS berechnet werden. Zum Beispiel kann ein Roboterkooperationssegment durch räumliche Erweiterung des entsprechenden Robotersicherheitssegments ermittelt werden.
Manchmal, z. B. bei Nutzung von einem Bodenscanner (2D-Sensoren) ist es vorteilhaft, noch zusätzliche Sicherheitsbereiche für Armreichweite von allen Richtungen zu berechnen. Figur 20 zeigt ein Beispiel, bei welchem alle Punkten von Menschsegment MS(Gtx ) zum Zeitpunkt Gtx gegen RSS(Gtx ) geprüft werden. Das Menschsegment ist hier mithilfe eines Kreises mit dem Radius RMS modelliert, wobei RMS = Schulterbereite + Armreichweite (mindestens).
Bei Nutzung von 3D Sensoren, die den Kopf und die Hände sicher erfassen können, kann man dann Menschsegment MS(Gtx) in drei Segmente HSl(Gtx ), HS2(Gtx ), HS3(Gtx ) aufteilen, wie in der Figur 21 dargestellt. Bei dieser Berechnungsmethode werden alle Punkte von HSl(Gtx), HS2(Gtx), HS3(Gtx ) zum Zeitpunkt Gtx gegen RSS(Gtx ) geprüft.
In anderen Worten, Ziel in diesem Modul 830 ist die weitere Anpassung der Sicherheitssegmente in Bezug auf den erforderlichen Sicherheitsfunktionen in allen unterschiedlichen Betriebsmodi.
Unterscheidung zwischen den Roboterbetriebsmodi „Sicherheitsbewerteter überwachter Halt“ (SRMS) und „Geschwindigkeits- und Abstandsüberwachung“ (SSM) hat keinen Einfluss auf die Berechnung eines zeitlokalen (und damit auch zeitglobalen) Sicherheitsbereiches. Vielmehr definieren diese Modi die Einbindung der Berechnung der (im Modul 820) berechneten Sicherheitsbereiche als Baustein in das übergeordnete Sicherheitssystem und gegebenenfalls die weitere mögliche Anpassung dieser Sicherheitsbereiche. Man kann die Menschposition mit Sensoren detektieren. Sollte die Menschposition einen Teil des Sicherheitsbereiches verletzen, kann die nachfolgende Roboterbahn so angepasst werden, dass sich der Sicherheitsbereich zurückzieht und der Mensch diesen nun nicht mehr verletzt. Ein Vorteil dieser Funktionalität ist die effektive Beeinflussung der Roboterbahn. Die vom Mensch verletzten Kugeln des betroffenen zeitlokalen Sicherheitsbereiches und damit auch die entsprechenden Bahnabschnitte können direkt ermittelt werden. In anderen Worten, der Roboter kann gesteuert werden, wobei die folgenden Schritte durchzuführen sind: das Erfassen der Sicherheitsbereichsverletzung durch Erfassen einer Position des Objekts durch einen Sicherheitssensor zum Zeitpunkt to und das Steuern der Roboterbahn unter Berücksichtigung der erfassten Position des Objekts.
Die Figur 22 ist eine schematische Darstellung, welche den Betriebsmodus (PFL) mit der Kontakterkennung und Kraftüberwachung zeigt. In den vorher erwähnten Sicherheitsfunktionen sowie Betriebsmodi ist es angenommen, dass keine Kollisionen zwischen Menschen und Robotern passieren dürfen oder sollten. In dem Betriebsmodus PFL und unter eingeschränkten Rahmenbedingungen wie z.B. maximale Kräfte und/oder Momente, die z.B. in der Norm ISO 15066 vordefiniert sind, wird Kontakt mit bestimmten Körperteilen erlaubt. Das bedeutet, dass man die berechneten Sicherheitsbereiche (z.B. GSSksn(Gtx )) verkleinern kann und auf die zugelassene Kräfte umrechnen kann. In anderen Worten, in dem PFL-Modus ist der Kontakt erlaubt, solange eine Grenzkraft nicht überschritten wird.
In einer beispielhaften Umsetzung wird die maximal erlaubte Kraft Fmax angenommen, welche kleiner oder gleich ist als eine Grenzkraft. Die Grenzkraft kann von einer Norm vorgegeben und/oder aufgrund von empirischen Tests mit einer Vielzahl von Testpersonen ermittelt werden. Der menschliche Körper kann als eine Feder modelliert werden. Nach dem Hookeschen Gesetz ist die Federkraft F einer Feder proportional zur Auslenkung (Verschiebung) x: F=kx. Die Federkonstante k wird für einen Menschen empirisch vorbestimmt (d.h. vorgegeben).
Während einer Kollision ist die kinetische Energie AEkin des Roboters gleich der potentiellen Energie Epot und es gilt:
.
Dabei stellt mH die Menschenmasse, mR die Robotermasse, VH die Geschwindigkeit des Menschen und VR die Geschwindigkeit des Roboters dar.
Wie bereits oben erwähnt, kann VH Z. B. vorbestimmt oder gemessen werden. Aus der maximalen Kraft Fmax (kleiner gleich der Grenzkraft) kann man die erlaubte Geschwindigkeit VR wie folgt bestimmen:
In anderen Worten, in dem PFL-Betriebsmodus ist eine Kollision mit einem Roboter erlaubt, aber nur mit einer Kraft von Fmax , welche nicht überschritten werden darf. Daraus kann man die erlaubte Geschwindigkeit VR berechnen, welche der Roboter zu einem Zeitpunkt tx der Kollision mit einem Menschen hat. Zum Unterschied von den anderen Betriebsmodi, in PFL ist diese erlaubte Geschwindigkeit größer als Null, und die Zeit von to bis tx ist kürzer als die Zeit von to bis zum Ruhestand. Der Sicherheitsbereich des Roboters wird entlang einer kürzeren Bahn berechnet und kann damit kleiner sein. Die Berechnung erfolgt wie bereits oben beschrieben.
Anders gesagt, nach einer beispielhaften Umsetzung enthält das Verfahren zum Ermitteln eines Sicherheitsbereichs einen Schritt in welchem die Roboterbahn bestimmt wird. Dabei endet die Roboterbahn an einem Zeitpunkt tx, zu dem der Roboter eine Geschwindigkeit VR hat (VR>0) und die Geschwindigkeit VR wird auf Basis von einer vorgegebenen maximalen Kraft berechnet, welche der Roboter auf das Objekt ausüben kann. In einer anderen beispielhaften Umsetzung endet die Roboterbahn (Anhaltebahn) mit dem Eintritt des Roboters in Ruhemodus (in welchem vR=0).
Die Figur 22 zeigt ein Globalkooperationssegment GOSksn des Kollisionssegments KSn zu einem globalen Zeitpunkt Gtx. Das Globalkooperationssegment wird auf Basis von dem Sicherheitsbereich GSSksn ermittelt. In diesem Beispiel (PFL) ist das der Sicherheitsbereich GSSksn(tx) zum Zeitpunkt tx in dem der Roboter die erlaubte Geschwindigkeit erreicht. In anderen Beispielen (z.B. bei SSM) wird GSSksn zu einem Zeitpunkt ermittelt in dem der Roboter die Geschwindigkeit Null erreicht.
Der ermittelte Sicherheitsbereich kann in unterschiedlichen Weisen verwendet werden.
In einer Ausführungsform folgt die Roboterbahn der Reaktionsbewegung und/oder der Anhaltebewegung, wenn die Sicherheitsbereichsverletzung durch ein Betätigen eines Sicherheitsschalters erfasst wurde. Die Roboterbahn folgt jedoch einer für den Normalbetrieb des Roboters bestimmten Bewegung folgt, wenn die Sicherheitsbereichsverletzung nicht durch ein Betätigen des Sicherheitsschalters erfasst wurde. Diese Ausführungsform ist nur eine der möglichen Umsetzungen und entspricht der unterschiedlichen Behandlung von „Stop 0“ und „Stop 1„ genannten Arten von Sicherheitsverletzung, definiert in der Norm DIN EN ISO 13850. Im Allgemeinen kann die Roboterbahn ab dem Zeitpunkt to gemäß der Art von
Sicherheitsbereichsverletzung bestimmt werden, und diese bestimmte Bahn dann weiter zum Berechnen des zeitlokalen oder des zeitglobalen Sicherheitsbereichs verwendet werden.
Eine Roboterbahn bestimmt eine Folge von Zeitpunkten tx, mit ganzzahligem x>0 und den zugehörigen Positionen der Konturkugeln. Der Sicherheitsbereich des Roboters kann zu jedem der Zeitpunkte tx erneut bestimmt werden. Die Sicherheitsbereichsverletzung kann dann in Bezug auf den erneut bestimmten Sicherheitsbereich erfasst werden.
Wenn ein Sicherheitsbereich des Roboters bestimmt ist, kann die Ausrichtung eines Sensors oder mehrerer Sensoren in Übereinstimmung mit dem ermittelten Sicherheitsbereich angepasst werden. Diese Anpassung folgt bevorzugterweise der der Position / Ausdehnung des neu berechneten Sicherheitsbereichs. Der Begriff „Sensor“ hier ist breit zu verstehen. Es kann eine Lichtschranke sein, Lichtvorhang, Bewegungssensor, Kamera (Bildsensor), oder andere Arten von Sensor. Auch ein Sicherheitsknopf ist ein Sensor. Der Sensor, sowie die Modellierung des Sicherheitsbereichs kann 2D oder 3D sein. In einer beispielhaften Umsetzung wird ein 2D- Sicherheitsbereich mit Hilfe von Kreisen darstellen. Ein Kreis ist eine Projektion einer Kugel auf eine Fläche. Durch die Projektion der wie oben ermittelten 3D-Kugeln (Sicherheitskugeln) auf eine Fläche (z.B. Bodenfläche / Hallenboden) kann man dann einen 2D-Sicherheitsbereich ermitteln.
Das Objekt kann ein Mensch sein und das Verfahren kann des Weiteren das Erfassen von einem Kopf und/oder einer oder beider Hände des Menschen als jeweilige separate Menschensegmente umfassen, sowie das Ermitteln, für jedes Menschensegment, ob das Menschensegment den Sicherheitsbereich in einer der Sicherheitskugeln verletzt.
Das Objekt kann ein anderes Objekt sein als ein Mensch. Zum Beispiel kann das Objekt ein anderer Roboter sein, oder eine Mehrzahl anderer Roboter. Das oben beschriebene Verfahren zum Ermitteln der Sicherheitsbereiche kann entsprechend z.B. für die Berechnung der Verriegelungsbereiche eingesetzt werden.
Das Objekt kann aber auch ein Fahrzeugsein, beispielsweise ein automatisch fahrendes Fahrzeug. Die vorliegende Erfindung ist jedoch nicht eingeschränkt auf Modellieren eines Menschen durch Menschensegmente entsprechend dem Kopf und den Händen. Der ganze Mensch kann als ein Menschensegment modelliert werde, oder als eine Mehrzahl von unterschiedlichen oder gleichen Menschensegmenten. Menschensegmente können auch kugelförmig ausgebildet sein.
Figur 23 stellt ein System dar, in dem die Ermittlung eines Sicherheitsbereichs um einen Roboter 2310 verwendet wird. Eine Vorrichtung 2340, die diese Ermittlung durchführt enthält beispielsweise einen Eingang zum Empfangen von einem Signal aus einem Sensor 2330 zum Erfassen von einer Verletzung eines Sicherheitsbereichs durch ein Objekt, eine Steuerungseinrichtung zum Steuern einer Roboterbahn auf Basis von dem empfangenen Signal (z.B. Signal an eine Robotersteuerung 2320), eine Sicherheitsbereich-Berechnungseinrichtung zum Berechnen des Sicherheitsbereichs enthaltend: Modellieren eines Gefahrenbereichs des Roboters durch eine Menge von Konturkugeln, welche die Roboterkontur beinhaltet; Ermitteln von einem Sicherheitsbereich des Roboters zu einem Zeitpunkt to umfassend eine Menge von Sicherheitskugeln zu einem Zeitpunkt t, wobei: (a) der Zeitpunkt t später ist als der Zeitpunkt t0 zu welchem eine Sicherheitsbereichsverletzung durch das Objekt als aufgetreten erfasst wurde, (b) für eine Konturkugel: die Position der Konturkugel zu dem Zeitpunkt t der Position einer Sicherheitskugel entspricht, der Radius der Sicherheitskugel um einen Betrag größer ist als der Radius der entsprechenden Konturkugel, und der Betrag von dem Zeitpunkt t und einer vorbestimmten Geschwindigkeit des Objekts abhängt.
Die Vorrichtung 2340 kann durch einen oder mehrere Prozessoren implementiert werden.
Die Vorrichtung 2340 kann des Weiteren eine Sensorsteuerung umfassen zum Steuern der Ausrichtung des Sensors, wobei der Sensor in der Lage ist, Position und/oder Bewegung des Objekts zu erfassen.
Figur 24 fasst das erfindungsgemäße Verfahren noch einmal zu. Im Schritt S2410 werden die Robotersegmente bestimmt. Im Schritt S2420 werden für die Robotersegmente entsprechende Kollisionssegmente ermittelt. Im Schritt S2430 wird ein Sicherheitsbereich bestimmt. Im Schritt S2440 kann die Roboterbahn und/oder im Schritt S2450 die Position und/oder Ausrichtung der Sensoren bestimmt.
Claims
1. Verfahren zur automatischen Ermittlung von einem Sicherheitsbereich bezogen auf einen Roboter, wobei das Verfahren die folgenden Schritte enthält:
Modellieren eines Gefahrenbereichs des Roboters (8) durch eine Menge (M) von Konturkugeln (8a, 8b, 8c, 8d), welche die Roboterkontur beinhaltet;
Ermitteln von einem Sicherheitsbereich des Roboters (8) zu einem Zeitpunkt to, zu welchem eine Sicherheitsbereichsverletzung durch ein Objekt auftritt, umfassend eine Menge von Sicherheitskugeln (6d) zu einem Zeitpunkt t, wobei:
- der Zeitpunkt t später ist als der Zeitpunkt to,
- für eine Konturkugel (4): die Position der Konturkugel (4d) zu dem Zeitpunkt t der Position einer Sicherheitskugel (6d) entspricht, der Radius (7d) der Sicherheitskugel (6d) um einen Betrag größer ist als der Radius (5) der entsprechenden Konturkugel (4d), und der Betrag von dem Zeitpunkt t und einer vorbestimmten Geschwindigkeit des Objekts abhängt.
2. Das Verfahren gemäß Anspruch 1, des Weiteren umfassend Ermitteln einer Roboterbahn, wobei der ermittelte Sicherheitsbereich des Roboters (8) zu dem Zeitpunkt t0 ein zeitlokaler Sicherheitsbereich ist, welcher als Vereinigung von einzelnen Sicherheitskugeln berechnet wird, umfassend alle den jeweiligen Konturkugeln (8a, 8b, 8c, 8d) der Menge M entsprechende Sicherheitskugeln zu jedem der aufeinanderfolgenden Zeitpunkten ti, mit ganzzahligem i>0, der bestimmten Roboterbahn.
3. Das Verfahren gemäß Anspruch 2, des Weiteren umfassend den Schritt des Berechnens eines zeitglobalen Sicherheitsbereichs durch Ermitteln der Roboterbahn als eine Vereinigung von einer Menge von zeitlokalen Sicherheitsbereichen des Roboters (8)
ermittelt wird, welche zu allen jeweiligen Zeitpunkten t0 einer Roboterbahn oder eines Roboterbahnabschnittsberechnet werden.
4. Das Verfahren gemäß Anspruch 2 oder 3, wobei, wenn sich eine Konturkugel ab einem Zeitpunkt tj bis zum Ende der Ermittlung des zeitlokalen Sicherheitsbereichs im Stillstand befindet, der Betrag für die Zeit ab tj konstant bleibt.
5. Das Verfahren gemäß einem der Ansprüche 1 bis 4, wobei der Schritt des Ermittelns von einem Sicherheitsbereich des Roboters zu einem Zeitpunkt t0 enthält:
Bestimmen von einer Roboterbahn, die die Bahnen der einzelnen Konturkugeln beinhaltet, wobei die Roboterbahn einer Reaktionsbewegung und/oder einer Anhaltebewegung folgt,
Bestimmen der Positionen der einzelnen Konturkugeln zu dem Zeitpunkt t auf Basis von der bestimmten Roboterbahn.
6. Das Verfahren gemäß dem Anspruch 5, wobei die Roboterbahn der Reaktionsbewegung und/oder der Anhaltebewegung folgt, wenn die Sicherheitsbereichsverletzung durch ein Betätigen eines Sicherheitsschalters erfasst wurde, und die Roboterbahn einer für den Normalbetrieb des Roboters bestimmten Bewegung folgt, wenn die Sicherheitsbereichsverletzung nicht durch ein Betätigen des Sicherheitsschalters erfasst wurde.
7. Das Verfahren gemäß einem der Ansprüche 1 bis 6, wobei das Modellieren eines Gefahrenbereichs des Roboters den Schritt des Berechnens von einer optimalen Zahl der Konturkugeln zwischen zwei Gelenken des Roboters enthält, bei der der
Durchmesser eines, der Überschneidung zwischen zwei Konturkugeln entsprechenden Kreises, im Wesentlichen der Breite des Roboterarms entspricht.
8. Das Verfahren gemäß einem der Ansprüche 1 bis 6, des Weiteren umfassend:
Erfassen der Sicherheitsbereichsverletzung durch Erfassen einer Position des Objekts durch einen Sicherheitssensor zum Zeitpunkt t0 ,
Steuern der Roboterbahn unter Berücksichtigung der erfassten Position des Objekts.
9. Das Verfahren gemäß Anspruch 8, wobei die Roboterbahn eine Folge von Zeitpunkten tx, mit ganzzahligem x>0 und den zugehörigen Positionen der Konturkugeln bestimmt, der Sicherheitsbereich des Roboters zu jedem der Zeitpunkte tx erneut bestimmt wird, die Sicherheitsbereichsverletzung in Bezug auf den erneut bestimmten Sicherheitsbereich erfasst wird.
10. Das Verfahren gemäß Anspruch 9, des Weiteren umfassend:
Steuern der Ausrichtung eines Sensors in Übereinstimmung mit dem ermittelten Sicherheitsbereich.
11. Das Verfahren gemäß einem der Ansprüche 1 bis 10, wobei das Objekt ein Mensch ist, das Verfahren des Weiteren umfassend:
Erfassen von einem Kopf und/oder einer oder beider Hände des Menschen als jeweilige separate Menschensegmente,
Ermitteln, für jedes Menschensegment, ob das Menschensegment den Sicherheitsbereich in einer der Sicherheitskugeln verletzt.
12. Das Verfahren gemäß einem der Ansprüche 1 bis 11 , des Weiteren umfassend:
Speichern des ermittelten Sicherheitsbereichs als Positionen und Größen der jeweiligen Sicherheitskugeln, welche den ermittelten Sicherheitsbereich darstellen.
13. Vorrichtung zum Steuern eines Roboters, umfassend: einen Eingang zum Empfangen von einem Signal aus einem Sensor zum Erfassen von einer Verletzung eines Sicherheitsbereichs durch ein Objekt, eine Steuerungseinrichtung zum Steuern einer Roboterbahn auf Basis von dem empfangenen Signal, eine Sicherheitsbereich-Berechnungseinrichtung zum Berechnen des Sicherheitsbereichs enthaltend:
Modellieren eines Gefahrenbereichs des Roboters durch eine Menge von Konturkugeln, welche die Roboterkontur beinhaltet;
Ermitteln von einem Sicherheitsbereich des Roboters zu einem Zeitpunkt t0 umfassend eine Menge von Sicherheitskugeln zu einem Zeitpunkt t, wobei:
- der Zeitpunkt t später ist als der Zeitpunkt t0 zu welchem eine Sicherheitsbereichsverletzung durch das Objekt als aufgetreten erfasst wurde,
- für eine Konturkugel: die Position der Konturkugel zu dem Zeitpunkt t der Position einer Sicherheitskugel entspricht, der Radius der Sicherheitskugel um einen Betrag größer ist als der Radius der entsprechenden Konturkugel, und der Betrag von dem Zeitpunkt t und einer vorbestimmten Geschwindigkeit des Objekts abhängt.
14. Die Vorrichtung nach Anspruch 13, des Weiteren umfassend: eine Sensorsteuerung zum Steuern der Ausrichtung des Sensors, wobei der Sensor in der Lage ist, Position und/oder Bewegung des Objekts zu erfassen.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102020203636.5A DE102020203636A1 (de) | 2020-03-20 | 2020-03-20 | Ermittlung von Sicherheitsbereichen um eine automatisiert arbeitende Maschine |
| DE102020203636.5 | 2020-03-20 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2021186068A1 true WO2021186068A1 (de) | 2021-09-23 |
Family
ID=75203281
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2021/057151 Ceased WO2021186068A1 (de) | 2020-03-20 | 2021-03-19 | Ermittlung von sicherheitsbereichen um eine automatisiert arbeitende maschine |
Country Status (3)
| Country | Link |
|---|---|
| DE (1) | DE102020203636A1 (de) |
| TW (1) | TWI769747B (de) |
| WO (1) | WO2021186068A1 (de) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115047390A (zh) * | 2022-06-23 | 2022-09-13 | 中科微影(泰州)医疗科技有限公司 | 一种基于雷达测距的磁共振成像组件的磁场安全区确定装置 |
| WO2024033472A1 (de) * | 2022-08-10 | 2024-02-15 | Pilz Gmbh & Co. Kg | Computerimplementiertes verfahren, verfahren, computerprogrammprodukt |
| EP3885854B1 (de) * | 2018-12-28 | 2024-03-27 | Siemens Aktiengesellschaft | Datenanalyseverfahren, -vorrichtung und -system |
| WO2024245518A1 (en) * | 2023-05-26 | 2024-12-05 | Abb Schweiz Ag | Method for evaluating operational safety of a workstation |
| CN121083629A (zh) * | 2025-09-09 | 2025-12-09 | 北京智元成科技有限公司 | 一种无人咖啡机机械臂安全区多工位动态调度方法 |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102022110645B3 (de) | 2022-05-02 | 2023-05-17 | Sick Ag | Verfahren zur Verbesserung eines vorgeplanten Bewegungsablaufs für die Ansteuerung eines Roboters |
| DE102022212272A1 (de) * | 2022-11-17 | 2024-05-23 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren und Vorrichtung zur Steuerung eines Roboters |
| DE102023200928A1 (de) * | 2023-02-06 | 2024-08-08 | Kuka Deutschland Gmbh | Ermittlung eines von einem Roboter nutzbaren oder für einen Roboter gesperrten Raums |
| TWI829561B (zh) | 2023-03-20 | 2024-01-11 | 國立陽明交通大學 | 機械臂動態環境路徑規劃之方法與系統 |
| EP4450235B1 (de) * | 2023-04-17 | 2025-10-29 | Sick Ag | Verfahren zur überwachung des betriebs eines roboters |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5347459A (en) | 1993-03-17 | 1994-09-13 | National Research Council Of Canada | Real time collision detection |
| DE10226140A1 (de) | 2002-06-13 | 2004-01-08 | Kuka Roboter Gmbh | Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten |
| JP3975959B2 (ja) | 2003-04-23 | 2007-09-12 | トヨタ自動車株式会社 | ロボット動作規制方法とその装置およびそれを備えたロボット |
| DE102007037078B4 (de) | 2007-08-06 | 2022-01-27 | Kuka Roboter Gmbh | Verfahren zur Einhaltung von Arbeitsraumgrenzen eines Arbeitsmittels eines Roboters |
| EP2230054A4 (de) * | 2007-12-07 | 2011-11-09 | Yaskawa Denki Seisakusho Kk | Roboterbewegungsregulierverfahren, robotersystem und roboterbewegungsreguliervorrichtung |
| JP5218524B2 (ja) | 2010-03-15 | 2013-06-26 | 株式会社安川電機 | ロボットシステムおよびロボット動作規制方法 |
| DE102012103830B4 (de) | 2011-05-05 | 2022-05-25 | Fanuc Robotics America Corp. | Verfahren und computerlesbare Medien zur automatischen Verbindung von gegenseitiger Blockierung in Mehrfachrobotersytemen |
| JP2012236244A (ja) | 2011-05-10 | 2012-12-06 | Sony Corp | ロボット装置、ロボット装置の制御方法、並びにロボット装置制御用プログラム |
| JP5668770B2 (ja) | 2013-03-15 | 2015-02-12 | 株式会社安川電機 | ロボットシステム、及び、ロボットシステムの制御方法 |
| US9283678B2 (en) | 2014-07-16 | 2016-03-15 | Google Inc. | Virtual safety cages for robotic devices |
| DE102016200455A1 (de) | 2016-01-15 | 2017-07-20 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Sicherheitsvorrichtung und -verfahren zum sicheren Betrieb eines Roboters |
| JP6309990B2 (ja) | 2016-03-24 | 2018-04-11 | ファナック株式会社 | 複数の機構ユニットにより構成されたロボットを制御するロボットシステム、該機構ユニット、およびロボット制御装置 |
| CN112313046B (zh) | 2018-06-26 | 2024-08-27 | 发纳科美国公司 | 使用增强现实可视化和修改操作界定区域 |
-
2020
- 2020-03-20 DE DE102020203636.5A patent/DE102020203636A1/de active Pending
-
2021
- 2021-03-19 WO PCT/EP2021/057151 patent/WO2021186068A1/de not_active Ceased
- 2021-03-20 TW TW110110121A patent/TWI769747B/zh active
Non-Patent Citations (3)
| Title |
|---|
| ALTHOFF M ET AL: "Effortless creation of safe robots from modules through self-programming and self-verification", SCIENCE ROBOTICS, AMERICAN ASSOCIATION FOR THE ADVANCEMENT OF SCIENCE (A A A S), US, vol. 4, no. 31, 19 June 2019 (2019-06-19), pages eaaw1924, XP009514761, ISSN: 2470-9476, DOI: 10.1126/SCIROBOTICS.AAW1924 * |
| SANDOR SZABO ET AL: "A Testbed for Evaluation of Speed and Separation Monitoring in a Human Robot Collaborative Environment", NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY, 1 March 2012 (2012-03-01), Gaithersburg, MD, XP055472373, Retrieved from the Internet <URL:https://ws680.nist.gov/publication/get_pdf.cfm?pub_id=910293> [retrieved on 20180503], DOI: 10.6028/NIST.IR.7851 * |
| SVARNY PETR ET AL: "Safe physical HRI: Toward a unified treatment of speed and separation monitoring together with power and force limiting", 2019 IEEE/RSJ INTERNATIONAL CONFERENCE ON INTELLIGENT ROBOTS AND SYSTEMS (IROS), IEEE, 3 November 2019 (2019-11-03), pages 7580 - 7587, XP033695902, DOI: 10.1109/IROS40897.2019.8968463 * |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3885854B1 (de) * | 2018-12-28 | 2024-03-27 | Siemens Aktiengesellschaft | Datenanalyseverfahren, -vorrichtung und -system |
| CN115047390A (zh) * | 2022-06-23 | 2022-09-13 | 中科微影(泰州)医疗科技有限公司 | 一种基于雷达测距的磁共振成像组件的磁场安全区确定装置 |
| CN115047390B (zh) * | 2022-06-23 | 2024-05-24 | 中科微影(泰州)医疗科技有限公司 | 一种基于雷达测距的磁共振成像组件的磁场安全区确定装置 |
| WO2024033472A1 (de) * | 2022-08-10 | 2024-02-15 | Pilz Gmbh & Co. Kg | Computerimplementiertes verfahren, verfahren, computerprogrammprodukt |
| WO2024245518A1 (en) * | 2023-05-26 | 2024-12-05 | Abb Schweiz Ag | Method for evaluating operational safety of a workstation |
| CN121083629A (zh) * | 2025-09-09 | 2025-12-09 | 北京智元成科技有限公司 | 一种无人咖啡机机械臂安全区多工位动态调度方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| TWI769747B (zh) | 2022-07-01 |
| TW202200332A (zh) | 2022-01-01 |
| DE102020203636A1 (de) | 2021-09-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE102020203636A1 (de) | Ermittlung von Sicherheitsbereichen um eine automatisiert arbeitende Maschine | |
| DE112017002498B4 (de) | Robotervorgang-auswertungseinrichtung, robotervorgang-auswertungsverfahren und robotersystem | |
| DE112016002013B4 (de) | Systeme und Verfahren zur Steuerung einer Robotermanipulation | |
| EP1366867B1 (de) | Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten | |
| DE102004019888B4 (de) | Verfahren und Vorrichtung zur Begrenzung der Bewegung eines Roboters, sowie ein mit der Vorrichtung versehener Roboter | |
| EP2563553B1 (de) | Verfahren und steuermittel zum steuern eines roboters | |
| DE102015106227B3 (de) | Steuern und/oder Regeln von Motoren eines Roboters | |
| DE102017001298B4 (de) | Robotersimulationsvorrichtung, die einen überstrichenen Raum berechnet | |
| DE102007059480B4 (de) | Verfahren und Vorrichtung zur Posenüberwachung eines Manipulators | |
| EP3271231B1 (de) | Verfahren und vorrichtung zum überwachen einer von einem fahrzeug abzufahrenden soll-trajektorie auf kollisionsfreiheit | |
| EP1906281B1 (de) | Verfahren und System zur Auslegung und Überprüfung von Sicherheitsbereichen eines Roboters | |
| WO2018078107A1 (de) | Verfahren zur kollisionsfreien bewegungsplanung | |
| DE102011005513A1 (de) | Roboter und Verfahren zum Betreiben eines Roboters | |
| DE10226140A1 (de) | Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten | |
| DE102015223258A1 (de) | Verfahren zum Bearbeiten der Oberfläche eines dreidimensionalen Objekts | |
| EP2977148A1 (de) | Verfahren und vorrichtung zum steuern eines roboters | |
| DE102015103451A1 (de) | Verfahren zum zeitdiskreten Kontrollieren antreibbarer Achsen, Computerprogrammprodukt und Vorrichtung zur Durchführung eines derartigen Verfahrens | |
| EP3328595A2 (de) | Verfahren und system zum steuern eines roboters | |
| DE102017005194B3 (de) | Steuern einer Roboteranordnung | |
| EP3225366B1 (de) | Positionsüberwachung einer kinematik | |
| DE102014210752A1 (de) | Verfahren und Vorrichtung zum Überwachen einer Solltrajektorie eines Fahrzeugs | |
| DE102019125326B3 (de) | Prognostizierter Bremsbereich eines Robotermanipulators | |
| DE102018212944A1 (de) | Verfahren zur Unterstützung der Kollaboration zwischen Mensch und Roboter mittels einer Datenbrille | |
| DE102022104586B3 (de) | Vorrichtung für das Steuern einer Rückführung eines Roboters zu seinem Ursprung und Verfahren zum Suchen eines Rückführungspfads des Roboters zu seinem Ursprung | |
| EP4450235B1 (de) | Verfahren zur überwachung des betriebs eines roboters |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21714134 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 21714134 Country of ref document: EP Kind code of ref document: A1 |




