JP5218524B2 - Robot system and robot operation restriction method - Google Patents

Robot system and robot operation restriction method Download PDF

Info

Publication number
JP5218524B2
JP5218524B2 JP2010247097A JP2010247097A JP5218524B2 JP 5218524 B2 JP5218524 B2 JP 5218524B2 JP 2010247097 A JP2010247097 A JP 2010247097A JP 2010247097 A JP2010247097 A JP 2010247097A JP 5218524 B2 JP5218524 B2 JP 5218524B2
Authority
JP
Japan
Prior art keywords
axis
robot
coasting
angle
operation
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.)
Active
Application number
JP2010247097A
Other languages
Japanese (ja)
Other versions
JP2011212831A (en
Inventor
伸一 前原
洋和 仮屋崎
貴宏 前田
Original Assignee
株式会社安川電機
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority to JP2010057415 priority Critical
Priority to JP2010057415 priority
Application filed by 株式会社安川電機 filed Critical 株式会社安川電機
Priority to JP2010247097A priority patent/JP5218524B2/en
Publication of JP2011212831A publication Critical patent/JP2011212831A/en
Application granted granted Critical
Publication of JP5218524B2 publication Critical patent/JP5218524B2/en
Application status is Active legal-status Critical
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39098Estimate stop, brake distance in predef time, then verify if in safe distance

Description

The present invention relates to a robot system and a robot movement limiting method.

Robots, particularly industrial robots, are widely used in automobile assembly factories and the like.
In operation, the robot arm and its wrist (and the work and tools provided on the wrist) are recorded in the work program recorded in the memory of the control device (describes the procedure for operating the robot and executing the work). Thus, the robot moves along a desired movement trajectory so as not to interfere with peripheral devices and avoid unnecessary movement.
In addition, a safeguard fence is placed outside the movement trajectory of the robot with a predetermined margin so as not to cause an unexpected situation that may endanger the operator or the like due to the movement of the robot arm or wrist. Is normal.
This safeguard fence is provided outside the maximum operating range of the robot.For example, in applications such as transporting small parts, the maximum operation of the robot is limited even though the operating range for robot operations is narrow. Providing a safeguard fence outside the area secures a large area occupied by the robot. Therefore, the operation range of the robot is also limited by computer control.
Therefore, the area for restricting robot movement is defined as “virtual safety fence” on the memory, and at least two or more three-dimensional space areas containing a part of the robot including workpieces and tools are defined. Control is performed to stop the robot when the predicted position on the trajectory calculation of the spatial region is compared with the virtual safety fence and even a part of the virtual position is in contact with the virtual safety fence (for example, see Patent Document 1).

JP 2004-322244 A

However, in the prior art, the robot is stopped when the predicted position on the trajectory calculation exceeds the virtual safety fence, and even if the predicted position on the trajectory calculation does not exceed the predicted position, the emergency stop etc. When the robot stops, the robot flies a little, so the actual position where the robot stops is different from the position calculated by the trajectory. Therefore, there is a problem that the robot exceeds the virtual safety fence even if the virtual safety fence is not exceeded in the trajectory calculation.
Further, the range limit of each axis of the conventional robot is limited with respect to the command value and the current motor position, and the robot exceeds the limit range due to an emergency stop or the like. Therefore, the range is limited by a mechanical device such as a mechanical stopper, and there is a problem that the equipment cost increases.
The present invention has been made in view of such problems, and when the robot is urgently stopped, the position where each axis coasts may come into contact with the virtual safety fence. To stop the robot so that it never touches the virtual safety fence in any case. Further, by monitoring each axis range of each axis position where the coasting is predicted, the robot axis angle does not exceed the limit range even in the case of an emergency stop of the robot.
Accordingly, it is an object of the present invention to provide a robot operation regulating method and apparatus, and a robot system equipped with such an apparatus, which can effectively use a floor area and a space of a factory or the like in a lean state.

In order to solve the above problem, the present invention is as follows.
In the inventions of claims 1 and 3 , the arm occupation area of the robot and the virtual safeguard fence that the arm occupation area should not contact are defined , and at least the maximum load is obtained using an actual robot system in advance. The actual machine coasting amount when the robot is urgently stopped at each axis maximum speed with the maximum load posture is measured and stored, and the target position of the tip of the robot is calculated for each calculation cycle to calculate the target position. When generating an operation command for each axis of the robot, check if the arm occupation area based on the target position at the tip of the robot in the next calculation cycle does not contact the virtual safety fence, and contact is confirmed to performs control for stopping the operation of said robot, when the contact is not confirmed, it calculates a difference between the angle of each axis at an angle and the next target position of each axis at the current position periphery The speed of each axis is calculated by dividing by the time, and the variable coasting angle at the speed of each axis is obtained by multiplying the value obtained by dividing the speed of each axis by the maximum speed of each axis by the actual coasting amount. A fixed delay coasting angle is calculated by multiplying the speed of each axis by a fixed delay time preset as a mechanical delay time, and the variable coasting angle and the fixed delay coasting angle are calculated. by adding the next time the estimated coasting angle of each axis of the robot when the robot during operation of the robot based on the operation command to the target position of the tip of the robot operation cycle and emergency stop and, estimated axes of coasting angle and the next of the operation cycles of each axis of the robot on the basis of the operation command of each axis coasting predicted position determined Umate, in the post-coasting predicted position of each axis The arm occupation area When said estimated or not in contact with the virtual safety protection barrier contact is confirmed, it performs a control to stop the operation of the robot.
Further, the invention according to claim 2 finds the estimated coasting angle of each axis based on the estimated coasting angle of each axis and the operation command of each axis in the next calculation cycle, and the coasting of each axis. The said coasting predicted position is calculated | required by performing forward conversion using a prediction angle .

According to the present invention, when the robot is urgently stopped, if there is a possibility that the position where each axis coasts may contact the virtual safety fence, the robot is stopped at that point. There is no contact with the virtual safety fence.
In addition, by monitoring each axis range of each axis position where the coasting is predicted, even if the robot is urgently stopped, each robot axis angle does not exceed the limit range.
As a result, the floor area and space of factories and the like can be used effectively without waste.

The figure which shows the robot system provided with the robot operation | movement control method and apparatus of 1st Example. Block diagram showing the robot operation restriction method of the first embodiment The figure which shows operation | movement of the robot provided with the robot operation | movement control method and apparatus of 1st Example. Flowchart of the robot operation restriction method of the first embodiment The figure which shows the method of defining the operation possible area | region of 1st Example The block diagram which shows the robot operation | movement control method of 2nd Example. The flowchart which shows the robot operation | movement control method of 2nd Example. The figure which shows the robot system provided with the robot each axis | shaft motion control method and apparatus of 2nd Example. The block diagram which shows the robot each axis | shaft motion control method of 3rd Example. The flowchart which shows the robot axis | shaft movement control method of 3rd Example. The block diagram which shows the robot each axis | shaft motion control method of 4th Example. The flowchart which shows the robot each axis | shaft motion control method of 4th Example.

Hereinafter, specific embodiments of the present invention will be described with reference to the drawings.

A robot system equipped with a robot operation restriction method and apparatus according to a first embodiment of the present invention will be described with reference to FIG. A physical safeguard fence 10 is provided on the floor of the factory, and a robot is installed therein.
In this example, the robot 1 includes a base 2 and three arms 3, 4, and 5. The arm 5 is provided with a tool 7 via a gripping device 6. As the tool 7, a welding torch for arc welding, a welding gun for spot welding, a hand for conveyance use, and the like are attached. The arms 3, 4, 5 are connected by joints 8. The workpiece 9 is an object to be welded or a transported object. For example, in the safeguard fence 10, the work 9 is welded or the assembly work is performed using a conveyed product.
Necessary signals are sent from the control device 20 to the base 2, and according to a predetermined work program, the arms 3, 4, and 5 perform a predetermined operation, and the gripping device 6 or the tool 7 operates along a desired locus. Do.
A teaching tool 21 is connected to the control device 20, and teaches the robot 1 and rewrites a work program.
Prior to the introduction and operation of the robot, the virtual safeguard fence 50 of the robot 1 is set. The setting of the virtual safeguard fence 50 is performed at any time other than when it is installed and when a change is required. The virtual safeguard fence 50 is defined and set as a polygonal column space. The setting is performed by inputting the coordinate value of the vertex of the polygonal column with the teaching tool 21 or by operating the control point of the robot 1 by operating the teaching tool 21 and specifying the position of the vertex of the polygonal column. Define. Further, it is also possible to take in data that sets the virtual safeguard fence 50 with a personal computer or the like from the teaching tool 21 to the control device 20. The defined virtual safeguard fence 50 is stored in the memory of the control device 20. The virtual safeguard fence 50 can also be defined as a plurality of areas, and valid or invalid can be set for each virtual safeguard fence.
The areas occupied by the arms 3, 4, 5 and the tool 7 of the robot 1 in the space are defined as arm occupied areas A1, A2, A3, A4, A5, A6.
First, the arms 3, 4, and 5 are defined as cylindrical regions having a predetermined radius with the straight line connecting the joints as the axis, and are defined as A4, A5, and A6, respectively. Further, the regions A1 and A2 including each joint 8 of the robot 1 are defined as a sphere having a predetermined radius centered on one point on the joint 8 axis. One point on the axis of the joint 8 uses the intersection of the “straight line connecting the joint 8” and the axis of the joint 8 that is normally used when defining the areas A4, A5, and A6. Furthermore, a region including the gripping device 6 and the tool 7 at the tip of the arm 5 is defined as a sphere A3 having a predetermined radius. The definitions of these arm occupation areas A to A6 are also stored in the memory of the control device 20.
Any arm occupation area may be a sphere and a cylinder having an approximate radius. When the area is defined as a sphere and a cylinder having a larger radius, the detection range is increased accordingly. It is necessary to set a wider area, and space efficiency is reduced. Or, the movement of the arm is limited.
FIG. 2 is a block diagram showing an embodiment of robot control constituted by the control device 20. The teaching / operation unit 201 calls and executes a work program and performs a robot operation for teaching work by an operator's operation on the teaching tool 21. Also, teaching data (work program and other work-related information) to the teaching data storage area 202 and various parameter settings to the parameter storage area 203 are performed.
In the parameter storage area 203, the dimensions of the arm parts necessary for the interpolation calculation, the specifications of the joint axes such as the reduction ratio and the motor constant necessary for the robot axis operation, and the axis arm occupation areas A1 to A6 are stored. The radius and coordinate values for defining the virtual safeguard fence 50 are also stored.
When the operator calls and executes a work program or performs a robot operation for teaching work, the teaching / operation unit 201 sends a robot operation command request to the operation command generation unit 204. In response to the robot operation command request, the operation command generation unit 204 calculates the next target position calculation unit 206 for each interpolation cycle determined by the work program. For the next target position obtained here, the virtual safety / protection fence contact monitoring unit 208 checks whether the occupied areas A1 to A6 are in contact with the virtual safety / protection fence. In addition, when the emergency stop is applied while operating at the next target position, the position where the vehicle coasts and stops (predicted coasting position) is calculated by the coasting predicted position calculating unit 207, and the determined coasting is obtained. For the predicted running position, the virtual safety protection fence contact monitoring unit 208 checks whether the occupation areas A1 to A6 are in contact with the virtual safety protection fence. The next target position calculation unit 206 sends a command value for each axis of the robot to operate to the calculated position to the drive unit 205. However, when the virtual safety protection fence contact monitoring unit 208 detects contact with the virtual safety protection fence, a stop request is sent to the drive unit 205.
The drive unit 205 operates each axis of the robot 1 to the command value sent from the operation command generation unit 204, but stops the robot 1 without performing the operation when receiving a stop request.
Note that the coasting amount information necessary for calculating the amount of coasting of the robot is also stored in the teaching data storage area 203.
The basic operation of the embodiment of the present invention will be described with reference to FIG.
The robot 1 is about to move from the current position 301 to the next target position 302. Here, when an emergency stop is applied to the robot 1, each axis coasts and stops a little depending on the load state at that time. By predicting the coasting angle for each axis and adding it to the next target position, the coasting predicted position 303 can be obtained. 3B, θs1 represents the angle of the first axis 304 at the current position 301, θe1 represents the angle of the first axis 304 at the next target position 302, and θd1 represents the next target position 302. It represents the coasting angle when an emergency stop is performed according to the load status in the posture. Here, the predicted coasting position 303 can be obtained by calculating θe1 + θd1. If the arm occupation area is considered at the predicted coasting position 303 and this touches the virtual safeguard fence 50, the robot 1 is stopped before moving the robot 1 to the next target position 302, It is possible to avoid contact with the virtual safeguard fence 50 even if the vehicle is coasted.
A flowchart for realizing the movement of the robot restricted so as not to interfere with the virtual safeguard fence in the movement command generation unit 204 will be described with reference to FIG. The method of the present invention will be described step by step with reference to FIGS.
Here, a robot having n axes will be described. Basically, in each step, the same processing is repeated for the first axis to the nth axis. I is used as a subscript indicating the axis number of each axis.
[S01]
In step S01, the next target position calculation unit 206 calculates the next target position (302 in FIG. 3) for each calculation cycle. The next target position indicates a position obtained up to the angle of each axis of the robot. Then, it progresses to step S02
[S02]
In step S02, it is checked whether or not the arm occupation areas A1 to A6 are in contact with the virtual safeguard fence at the next target position obtained in step S01. This check is performed in the virtual safeguard fence contact monitoring unit 208.
There are various methods for the contact monitoring here, but here, the contact between the line segment forming the polygonal column of the virtual safeguard fence and the sphere or cylinder containing the robot or tool is measured. The monitoring method shall be used. The virtual safety fence 50 is assumed to have a height from a polygon 58 composed of the line segment 51 to the line segment 57 shown in FIG. A method of determining whether or not the state is present is used.
In addition, when the virtual safety protection fence 50 is defined in a plurality of areas, the same check is performed for all virtual safety protection fences for which monitoring is enabled, and even when one is in contact, It determines with "contacting".
Here, when it determines with "contacting", it progresses to step 09 and power is cut | disconnected. Otherwise, the process proceeds to step S03.
[S03]
In step S03, the speed ωi of each axis of the robot is obtained from the difference between the current position and the next target position and the calculation cycle time t. This speed calculation is performed by the coasting predicted position calculation unit 207. For example, the speed ω1 of the first axis in FIG.

Here, the values described in FIG. 3 are used for θs1 and θe1.
[S04]
In step S04, the coasting predicted position calculation unit 207 calculates the coasting amount of each axis of the robot at the next target position. The amount of coasting of the robot varies depending on the mass and operating speed of the arm, or the type of reducer and brake used. Therefore, using an actual robot system, measure the actual machine coasting amount θDiMAX when the robot is urgently stopped at each axis maximum speed ωiMAX with at least the maximum load and the maximum load posture. Is stored in the parameter storage area 203.
From the speed ωi of each axis and the actual machine coasting amount θDiMAX, the variable coasting angle θds1 at the speed ω1 of the first axis is calculated by the following formula.

Further, when there is a delay time of the relay or the like before the robot stops, the fixed delay coasting amount due to the fixed delay is calculated from the fixed delay time td and each axis speed ωi by the following formula.

Therefore, the estimated coasting amount θd1 is obtained by adding the variable coasting amount θds1 and the fixed delay coasting amount θdf1.

[S05]
In step S05, the coasting angle of each axis obtained in step 04 is added to the current position to calculate “each axis coasting prediction angle”.
[S06]
In step S06, the “predicted coasting position” is calculated by performing forward conversion using the “predicted angle of each axis coasting” calculated in step S05. That is, the estimated coasting position obtained here is a position where the robot 1 is expected to reach the next target position when the robot 1 is urgently stopped.
[S07]
In step S07, it is checked whether the coasting predicted position 303 is in contact with the virtual safeguard fence. The checking method is the same as in step S02, and this check is performed in the virtual safety / guarding fence contact monitoring unit 208.
If it is determined that the contact is made, the process proceeds to step S09 and the power is stopped. Otherwise, the process proceeds to step S08.
[S08]
In step S08, an operation command for operating to the next target position calculated by the next target position calculation unit 206 is output to the drive unit 205, and the robot 1 is operated.
[S09]
In step S09, the virtual safeguard fence contact monitoring unit 208 sends a stop request to the drive unit 205. In response to this stop request, the drive unit 205 stops the operation of the robot 1. Further, the reason for the stop is displayed on the display on the teaching tool 21 as a message.
By taking such a procedure, even if an emergency stop occurs and the robot 1 coasts, the robot 1 will not touch or exceed the virtual safeguard fence.

The robot operation restriction method according to the first embodiment includes a control program for controlling the robot. However, in order to improve safety and reliability, the contact with the virtual safeguard fence is monitored, and the robot is in contact with the robot. A device for performing control to stop the operation is provided independently.
With reference to FIG. 6 as a configuration of the second embodiment, an embodiment in which the devices that perform the monitoring and stop control are made independent will be described.
6 has a configuration in which an operation area monitoring device 601 is added to the system of FIG. The motion region monitoring device 601 obtains the current position (workpiece or tool position) of the robot from each axis motor position 605 from the driving unit 205 for each predetermined monitoring cycle, The safety / protection fence contact monitoring unit 504 checks contact with the virtual safety / protection fence. Further, based on the motor position 605 information read by the current position detection unit 602, the coasting predicted position calculation unit 603 calculates a position where the coasting stops when an emergency stop is applied at this time. The virtual safety / protection fence contact monitoring unit 604 checks contact with the virtual safety / protection fence with respect to the predicted coasting position.
When the virtual safety protection fence contact monitoring unit 604 detects contact with the virtual safety protection fence, the virtual safety protection fence contact monitoring unit 604 outputs an emergency stop command 606 such as a drive power cutoff signal to the drive unit 205.
FIG. 7 is a flowchart for realizing limiting the operation of the robot so as not to interfere with the virtual safeguard fence in the system configuration of FIG. The method of the second embodiment will be described in order with reference to FIGS. 6 and 7.
[S101]
In step S101, the current position detection unit 602 reads the motor position 605 of each axis of the robot, and then obtains the current position of the robot from each read motor position 605. For subsequent processing, the current position (current position) of each axis motor is stored together with the previous position read last time. Then, it progresses to step S102.
[S102]
In step S102, whether or not the arm occupation areas A1 to A6 shown in FIG. 1 are in contact with the virtual safeguard fence 50 at the current position of the robot obtained in step S101 by the virtual safeguard fence contact monitoring unit 604. Perform the check. As a specific contact monitoring method, a method similar to that performed in step S02 of the flowchart of FIG. Here, when it is determined that “contact”, the process proceeds to step S108 and the power is shut off.
[S103]
In step S103, each axis speed ωi of the robot is obtained from the difference between the previous position and the current position of the motor of each axis and the monitoring cycle time. i is a subscript representing the axis number of each axis. Then, it progresses to step S104
[S104]
In step S104, the axis coasting angle when the robot makes an emergency stop from the current position of each axis motor is calculated. These calculations are performed by the coasting predicted position calculation unit 603. The calculation method is the same as step S04 in FIG. Then, it progresses to step S105.
[S105]
In step S105, the coasting angle of each axis obtained in step S104 is added to the current position of each axis motor to calculate the “collision predicted angle”. These calculations are performed by the coasting predicted position calculation unit 603. The calculation method is the same as that in step S05 in FIG. Then, it progresses to step S106
[S106]
In step S106, a “collision predicted position” is calculated by performing forward conversion using “each axis coasting prediction angle” calculated in step S105. That is, the estimated coasting position obtained here is a position where the robot 1 is expected to reach the next target position when the robot 1 is urgently stopped.
[S107]
In step S107, it is checked whether or not the estimated coasting position enters the virtual safeguard fence. The checking method is the same as in step S102. If it is determined that the contact is made, the process proceeds to step 108 and the power is shut off. . Otherwise, the monitoring process in the current monitoring cycle ends.
[S108]
In step S108, the driving unit 205 is requested to make an emergency stop. By taking such a configuration and procedure, even if the operation command generation unit breaks down and the above command is transmitted to the robot, the robot is stopped before the coasting position enters the virtual safety protection fence. be able to.

The robot operation restriction method described in the first and second embodiments predicts the amount of coasting and prevents the robot from coming out of the virtual safeguard fence. This concept can also be applied to the range restriction of each axis of the robot.

A robot system provided with a robot operation restriction method and apparatus method according to a third embodiment of the present invention will be described with reference to FIG. A mechanical safety device such as a mechanical stopper is attached to each axis of a general robot to limit the operation of each axis of the robot. On the other hand, as an alternative to the mechanical stoppers, it is possible to reduce the mechanical stoppers by defining and monitoring each axis operable range 60.
FIG. 10 shows another embodiment of the third embodiment of the present invention, and is a diagram illustrating an embodiment in which the operation of each axis is restricted in the apparatus that performs the monitoring and stop control.
FIG. 9 shows a configuration in which each axis operation range restriction monitoring unit 901 is added to the system of FIG.
The next target position calculation unit 206 calculates the position. With respect to the next target position obtained here, each axis movement range restriction monitoring unit 901 checks whether or not the movement exceeds the axis movement allowable range 60. In addition, when an emergency stop is applied while operating at the next target position, each axis angle (collision prediction angle) to stop by coasting is calculated by the coasting prediction position calculation unit 207, With respect to the determined coasting predicted position, each axis movement range restriction monitoring unit 901 checks whether or not the movement exceeds the axis movement allowable range 60. The next target position calculation unit 206 sends a command value for each axis of the robot to move to the calculated position to the drive unit 205. However, each axis operation range restriction monitoring unit 901 exceeds each axis operation possible range 60. Is detected, a stop request is sent to the drive unit 205.
The drive unit 205 operates each axis of the robot 1 to the command value sent from the operation command generation unit 204. However, when receiving a stop request, the drive unit 205 does not perform the operation of the robot 1 and shuts off the drive power supply and stops it. .
Note that each axis operable range 60 of the robot is also stored in the teaching data storage area 203.
Each axis operable range 60 of the robot 1 is set prior to the introduction and operation of the robot. The setting of each axis operable range 60 is performed as needed in addition to installation. Each axis operable range 60 is defined and set as the maximum operation angle and the minimum operation angle of each axis. The setting is defined by inputting a numerical value for each axis operable range 60 using the teaching tool 21 or operating the teaching tool 21 to operate the control point of the robot 1 and specifying the current angle of each axis. . In addition, it is possible to fetch data in which each axis operation possible range 60 is set with a personal computer or the like from the teaching tool 21 to the control device 20. Each defined axis operable range 60 is stored in the memory of the control device 20. Note that it is possible to define a plurality of types of each axis operable range 60.
FIG. 10 is a flowchart for realizing the restriction of the operation of the robot so as not to exceed the operation range of each axis in the system configuration of FIG. The method of the third embodiment will be described in order with reference to FIGS. 9 and 10.

[S201]
In step S201, the next target position calculation unit 206 calculates the next target position (302 in FIG. 3) for each calculation cycle. The next target position indicates a position obtained up to the angle of each axis of the robot. Then, it progresses to step S202.
[S202]
In step S202, it is checked whether or not the current position of each axis is within the range of operation possible for each axis at the next target position obtained in step S201. This check is performed by each axis operation range restriction monitoring unit 901. If the current position is larger than the maximum value of each axis operable range or smaller than the minimum value, it is determined that the range is abnormal. If it is determined that the range is abnormal, the process proceeds to step 208 and the power is shut off. Otherwise, the process proceeds to step S203. If each axis operable range is defined by a plurality of areas, the same check is performed for each axis operable range that is valid for monitoring, and even one of them touches. If it is, it is determined as “range abnormality”.
Here, if it is determined that “range abnormality”, the process proceeds to step 208 to cut off the power. Otherwise, the process proceeds to step S203.
[S203]
In step S203, the speed ωi of each axis of the robot is obtained from the difference between the current position and the next target position and the calculation cycle time t. This speed calculation method is the same as step S03 of the first embodiment.
[S204]
In step S204, the estimated coasting position calculation unit 207 calculates the amount of coasting of each axis of the robot at the next target position. The calculation method is the same as step S04 in the first embodiment.
[S205]
In step S205, the “each axis coasting prediction angle” is calculated by adding the coasting angle of each axis obtained in step S204 to the current position.
[S206]
In step S <b> 206, it is checked whether “each axis coasting predicted angle” is within the range of operation possible for each axis. The check method is the same as in step S202, and this check is performed by each axis movement range restriction monitoring unit 901.
If it is determined that the range is abnormal, the process proceeds to step S208 to cut off the power. Otherwise, the process proceeds to step S207.
[S207]
In step S207, an operation command for operating to the next target position calculated by the next target position calculation unit 206 is output to the drive unit 205, and the robot 1 is operated.
[S208]
In step S <b> 208, each axis movement range restriction monitoring unit 901 sends a stop request to the drive unit 205. In response to this stop request, the drive unit 205 stops the operation of the robot 1. Further, the reason for the stop is displayed on the display on the teaching tool 21 as a message.
By taking such a procedure, even if an emergency stop occurs and the robot 1 coasts, the robot 1 will not exceed the operable range of each axis.

The robot operation restriction method according to the third embodiment is configured by a control program for controlling the robot. In order to improve safety and reliability, the contact with the virtual safeguard fence is monitored, and the robot operation is performed at the time of contact. A device for performing control to be stopped can be provided independently.
FIG. 11 shows the configuration of the fourth embodiment, and an embodiment in which the operation of each axis is regulated in the above-described monitoring and stop control apparatus will be described.
FIG. 11 shows a configuration in which each axis operation range restriction monitoring unit 1101 is added to the system of FIG.
The motion region monitoring device 601 obtains the current position (workpiece or tool position) of the robot from each axis motor position 605 from the driving unit 205 for each predetermined monitoring cycle, The axis operation range restriction monitoring unit 1101 checks whether or not the operation exceeds each axis operation possible range. Further, based on the motor position 605 information read by the current position detection unit 602, the coasting predicted position calculation unit 603 calculates each axis angle that coasts and stops when an emergency stop is applied at this time. . With respect to the predicted coasting angle, each axis motion range restriction monitoring unit 1101 checks whether or not to operate beyond each axis motion possible range.
When each axis operation range restriction monitoring unit 1101 detects an operation range abnormality of each axis, the axis operation range restriction monitoring unit 1101 outputs an emergency stop command 606 such as a drive power supply cutoff signal to the drive unit 205.
FIG. 12 is a flowchart for realizing limiting the movement of the robot so as not to exceed the operable range of each axis in the system configuration of FIG. 11. The method of the present invention will be described step by step with reference to this figure.

[S301]
In step S301, the current position detection unit 602 reads the motor position 605 of each axis of the robot, and then obtains the current position of the robot from each read motor position 605. For subsequent processing, the current position (current position) of each axis motor is stored together with the previous position read last time. Then, it progresses to step S302.


[S302]
In step S302, each axis movement range monitoring unit 1101 checks whether or not each axis current position is within the range of each axis movement possible range at the current position of the robot obtained in step S301. If the current position is larger than the maximum value of each axis operable range or smaller than the minimum value, it is determined as “range abnormality”. If it is determined that the range is abnormal, the process proceeds to step 307 and the power is shut off. Otherwise, the process proceeds to step S303.
[S303]
In step S303, each axis speed ωi of the robot is obtained from the difference between the previous position and the current position of the motor of each axis and the monitoring cycle time. i is a subscript representing the axis number of each axis. Then, it progresses to step S304.
[S304]
In step S304, the coasting angle of each axis when the emergency stop is changed from the current position of each axis motor to the robot is calculated. These calculations are performed by the coasting predicted position calculation unit 603. The calculation method is the same as step S04 in FIG. Then, it progresses to step S305.
[S305]
In step S305, “each axis coasting prediction angle” is calculated by adding the coasting angle of each axis obtained in step S304 to the current position of each axis motor. These calculations are performed by the coasting predicted position calculation unit 603. The calculation method is the same as step S05 in FIG. Then, it progresses to step S306.
[S306]
In step S306, it is checked whether or not “each axis coasting predicted angle” is within the range of operation possible for each axis. The checking method is the same as in step S302. If it is determined that the range is abnormal, the process proceeds to step 307 and the power is shut off. Otherwise, the monitoring process in the current monitoring cycle ends.
[S307]
In step S307, the drive unit 205 is requested to make an emergency stop. By adopting such a configuration and procedure, even if the motion command generation unit breaks down and an abnormal command is transmitted to the robot, the coasting position does not move beyond the operable range of each axis. Can be stopped.
In the present embodiment, the operation monitoring that changes the safety fence has been described, but it is only an example, and the idea of the embodiment can be applied even when the robot operates while moving to the living space, and is applicable to an industrial robot. It is not limited.

DESCRIPTION OF SYMBOLS 1 Robot 2 Main body 3, 4, 5 Arm 6 Gripping device 7 Tool 8 Joint 9 Work 10 Physical safety guard fence 20 Control device 21 Teaching tool 50 Virtual safety guard fence 51 Line which comprises virtual safety guard fence (1)
52 Lines that make up the virtual safety fence (2)
53 Lines that make up the virtual safety fence (3)
54 Lines constituting the virtual safeguard fence (4)
55 Lines constituting the virtual safeguard fence (5)
56 Lines constituting the virtual safeguard fence (6)
57 Lines constituting the virtual safety fence (7)
58 Lines constituting the virtual safeguard fence (8)
59 Polygons constituting virtual safety guard fence 60 Operating range for each axis 201 Teaching / operation unit 202 Teaching data storage area 203 Parameter storage area 204 Operation command generation unit 205 Driving unit 206 Next target position calculation units 207 and 603 Position calculation unit 208, 604 Virtual safety fence contact monitoring unit 301 Current position 302 Next target position 303 Estimated coasting position 304 First axis 601 Motion area monitoring device 602 Current position detection unit 604 Motion area monitoring device 605 Motor position 606 Emergency stop command 901, 1101 Each axis movement range regulation monitoring part A1, A2, A3, A4, A5, A6 Arm occupation area

Claims (3)

  1. A robot arm occupation area and a virtual safeguard fence that the arm occupation area should not contact are defined,
    Using an actual robot system in advance, measure and store the actual machine coasting amount when the robot is urgently stopped at the maximum speed of each axis with at least the maximum load and the maximum load posture,
    When calculating the target position of the tip of the robot for each calculation cycle and generating an operation command for each axis of the robot,
    Check whether the arm occupation area based on the target position of the tip of the robot in the next calculation cycle does not touch the virtual safety guard,
    If contact is confirmed, control to stop the operation of the robot,
    If contact is not confirmed,
    The speed of each axis is calculated by dividing the difference between the angle of each axis at the current position and the angle of each axis at the next target position by the calculation cycle time, and the speed of each axis is divided by the maximum speed of each axis. By calculating the variable coasting angle at the speed of each axis by multiplying the actual machine coasting amount by the value, and further multiplying the speed of each axis by a fixed delay time set in advance as a mechanical delay time. By calculating a fixed delay coasting angle and adding the variable coasting angle and the fixed delay coasting angle, the operation of the robot based on the operation command to the target position of the tip of the robot in the next calculation cycle the coasting angle of each axis of the robot in the case of an emergency stop the robot is estimated during the
    Estimated each axis coasting angle and the next of the operation cycles of each axis of the robot on the basis of the operation command of each axis coasting predicted position determined Umate, the arm in the post-coasting predicted position of each axis Estimate whether the occupied area does not touch the virtual safeguard fence,
    When the contact is confirmed, control is performed to stop the operation of the robot.
  2.   By determining the estimated coasting angle of each axis based on the estimated coasting angle of each axis and the operation command of each axis of the next calculation cycle, and performing forward conversion using the estimated coasting angle of each axis Obtaining the predicted coast position
      The robot system according to claim 1.
  3.   A robot arm occupation area and a virtual safeguard fence that the arm occupation area should not contact are defined,
      Using an actual robot system in advance, measure and store the actual machine coasting amount when the robot is urgently stopped at the maximum speed of each axis with at least the maximum load and the maximum load posture,
      When calculating the target position of the tip of the robot for each calculation cycle and generating an operation command for each axis of the robot,
      Check whether the arm occupation area based on the target position of the tip of the robot in the next calculation cycle does not touch the virtual safety guard,
      If contact is confirmed, control to stop the operation of the robot,
      If contact is not confirmed,
    The speed of each axis is calculated by dividing the difference between the angle of each axis at the current position and the angle of each axis at the next target position by the calculation cycle time, and the speed of each axis is divided by the maximum speed of each axis. By calculating the variable coasting angle at the speed of each axis by multiplying the actual machine coasting amount by the value, and further multiplying the speed of each axis by a fixed delay time set in advance as a mechanical delay time. By calculating a fixed delay coasting angle and adding the variable coasting angle and the fixed delay coasting angle, the operation of the robot based on the operation command to the target position of the tip of the robot in the next calculation cycle Estimating the coasting angle of each axis of the robot when the robot is urgently stopped during
      Based on the estimated coasting angle of each axis and the operation command of each axis of the next calculation cycle, the estimated coasting position of each axis of the robot is obtained, and the arm occupation at the estimated coasting position of each axis is obtained. Estimate whether the area does not touch the virtual safeguard fence,
      If contact is confirmed, control to stop the robot operation
      A robot operation limiting method characterized by the above.
JP2010247097A 2010-03-15 2010-11-04 Robot system and robot operation restriction method Active JP5218524B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010057415 2010-03-15
JP2010057415 2010-03-15
JP2010247097A JP5218524B2 (en) 2010-03-15 2010-11-04 Robot system and robot operation restriction method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2010247097A JP5218524B2 (en) 2010-03-15 2010-11-04 Robot system and robot operation restriction method
EP20110157739 EP2366504B1 (en) 2010-03-15 2011-03-10 Robot system
CN 201110061188 CN102189552B (en) 2010-03-15 2011-03-14 Robot system
US13/047,818 US8812159B2 (en) 2010-03-15 2011-03-15 Robot system

Publications (2)

Publication Number Publication Date
JP2011212831A JP2011212831A (en) 2011-10-27
JP5218524B2 true JP5218524B2 (en) 2013-06-26

Family

ID=44260164

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010247097A Active JP5218524B2 (en) 2010-03-15 2010-11-04 Robot system and robot operation restriction method

Country Status (4)

Country Link
US (1) US8812159B2 (en)
EP (1) EP2366504B1 (en)
JP (1) JP5218524B2 (en)
CN (1) CN102189552B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180067509A (en) * 2015-09-11 2018-06-20 쿠카 도이칠란트 게엠베하 Method and system for controlling a robot arrangement

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5878750B2 (en) * 2011-12-21 2016-03-08 川崎重工業株式会社 Robot operation control method and apparatus
EP2824522B1 (en) * 2013-05-06 2017-11-29 ABB Schweiz AG Human safety provision in mobile automation environments
JP2017505236A (en) * 2014-02-24 2017-02-16 ホウォン カンパニー リミテッド Hybrid welding machine
JP5845300B2 (en) * 2014-03-07 2016-01-20 ファナック株式会社 A numerical controller that checks for incorrect axis commands.
DE102014010638A1 (en) * 2014-07-17 2016-01-21 Kuka Roboter Gmbh Method and device for controlling a robot
CN106181963A (en) * 2014-12-19 2016-12-07 库卡罗伯特有限公司 Robot system
DE102014226914B4 (en) * 2014-12-23 2019-02-28 Kuka Deutschland Gmbh Override based predictive speed capping
CN106182040A (en) * 2014-12-23 2016-12-07 库卡罗伯特有限公司 Robot system
DE102015114463A1 (en) * 2015-08-31 2017-03-02 Kuka Systems Gmbh Safety device and safety procedures
CN108136602A (en) * 2015-10-07 2018-06-08 大库输送机株式会社 The method of controlling operation of the motion control device of movable device, motion control system and movable device
JP6444908B2 (en) * 2016-02-17 2018-12-26 ファナック株式会社 Robot simulation device for calculating sweep space
JP6309990B2 (en) 2016-03-24 2018-04-11 ファナック株式会社 Robot system for controlling a robot composed of a plurality of mechanism units, the mechanism unit, and a robot control apparatus
US10384347B2 (en) 2016-03-25 2019-08-20 Seiko Epson Corporation Robot control device, robot, and simulation device
JP6400751B2 (en) 2017-01-26 2018-10-03 ファナック株式会社 Robot program correction device, robot control device, robot simulation device, and robot program correction method
WO2018147359A1 (en) * 2017-02-13 2018-08-16 パナソニックIpマネジメント株式会社 Robot control method and robot
JP2019181604A (en) 2018-04-05 2019-10-24 ファナック株式会社 Robot and robot system with protective fence

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH023434Y2 (en) * 1983-10-07 1990-01-26
JPS6377692A (en) * 1986-09-19 1988-04-07 Omron Tateisi Electronics Co Industrial robot with working-range variable device
JPH0360993A (en) * 1989-07-28 1991-03-15 Meidensha Corp Position upper lower limit processing system for robot arm
JPH0371988A (en) * 1989-08-11 1991-03-27 Amada Co Ltd Machining head for heat cutting machine
JP2650464B2 (en) * 1990-04-26 1997-09-03 松下電器産業株式会社 Industrial robot
JPH0796481A (en) * 1993-08-03 1995-04-11 Nippondenso Co Ltd Method for setting robot operating range and its control device
JP2000190262A (en) * 1998-12-22 2000-07-11 Denso Corp Control device for robot
JP2002331478A (en) * 2001-05-02 2002-11-19 Yaskawa Electric Corp Operating speed determining method for robot
CN1305648C (en) * 2002-04-12 2007-03-21 三菱电机株式会社 Robot
JP3975959B2 (en) * 2003-04-23 2007-09-12 トヨタ自動車株式会社 Robot operation regulating method and apparatus, and robot equipped with the same
JP4472365B2 (en) * 2004-01-23 2010-06-02 オリンパス株式会社 Medical instrument holding device
JP3907649B2 (en) 2004-09-02 2007-04-18 ファナック株式会社 Interference prevention control device between robots
US7514893B2 (en) * 2006-05-03 2009-04-07 Jin Moen Method for using a wearable interactive movable device
DE102007037078A1 (en) * 2007-08-06 2009-02-12 Kuka Roboter Gmbh Work space border observing method for e.g. industrial robot, involves determining pose of working unit from robot movement course and stopping robot when point of space outline of unit penetrates into border zone
CN101888920B (en) * 2007-12-07 2012-10-03 株式会社安川电机 Robot movement regulating method, robot system, and robot movement regulating device
GB2489650A (en) * 2010-01-20 2012-10-03 Faro Tech Inc Embedded arm strain sensors
DE112011100290T5 (en) * 2010-01-20 2013-02-28 Faro Technologies Inc. Coordinate measuring machine with an illuminated probe end and operating method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180067509A (en) * 2015-09-11 2018-06-20 쿠카 도이칠란트 게엠베하 Method and system for controlling a robot arrangement
KR102024486B1 (en) 2015-09-11 2019-09-23 쿠카 도이칠란트 게엠베하 Method and system for controlling a robot arrangement

Also Published As

Publication number Publication date
EP2366504B1 (en) 2015-05-20
EP2366504A2 (en) 2011-09-21
JP2011212831A (en) 2011-10-27
CN102189552A (en) 2011-09-21
US8812159B2 (en) 2014-08-19
EP2366504A3 (en) 2012-11-21
US20110224826A1 (en) 2011-09-15
CN102189552B (en) 2014-07-23

Similar Documents

Publication Publication Date Title
EP1652634B1 (en) Robot arm control method and control device
JP4648486B2 (en) Production system with cooperative operation area between human and robot
CA1257365A (en) Programmed path for automatic tool retraction and return responsive to degradation threshold
Colgate et al. Intelligent assist devices in industrial applications: a review
Zanchettin et al. Safety in human-robot collaborative manufacturing environments: Metrics and control
US4489377A (en) Method for preventing machine component interference
JP4513568B2 (en) Robot controller
US20080231221A1 (en) Arm-equipped mobile robot and method for controlling the same
US8788093B2 (en) Human robot interactive system
JP5283622B2 (en) Monitoring method and apparatus using camera for preventing collision of machine
JP2013504447A (en) Robot apparatus for implementing collision avoidance scheme and related method
US8436570B2 (en) Motor driving system, motor controller, and safety function expander
JP2008238395A (en) Robot with collision avoidance functionality
DE69838934T2 (en) Robot control device
EP1366867B1 (en) Method and device for avoiding collisions between industrial robots and other objects
US9296106B2 (en) Method for operating a safety device for a handling device, safety device for a handling device, and handling device
EP2838698B1 (en) Robot arrangement and method for controlling a robot
US20110257785A1 (en) Robot system
US20090326711A1 (en) Multi-arm robot system interference check via three dimensional automatic zones
EP1894882B1 (en) Safety and steering method for cranes
JP2000190262A (en) Control device for robot
WO2009072383A1 (en) Robot movement regulating method, robot system, and robot movement regulating device
EP1477284B1 (en) Drive control method and drive controller
CN101512453B (en) A method and device for avoiding collisions between an industrial robot and an object
CN101274399B (en) Device for controlling workpiece positioning device

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20120307

Free format text: JAPANESE INTERMEDIATE CODE: A621

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20120316

A977 Report on retrieval

Effective date: 20120720

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120731

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120918

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Effective date: 20130205

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Effective date: 20130218

Free format text: JAPANESE INTERMEDIATE CODE: A61

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160315

Year of fee payment: 3

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150