The present invention relates to a robot controller and a control method.
Cooperative robot systems in which a robot shares workspace with humans without a safety fence has been known. In such a cooperative robot system, human safety is generally ensured by stopping the robot automatically when contact between the robot and a human is detected by the robot.
PTL 1 relates to direct teaching, and describes as follows: “In a robot system 11, when an operator 60 applies a force (external force) to a tip portion 58 of a robot 50, a robot controller 10 controls an actuator for moving each axis of the robot 50 based on the force applied to the tip portion 58 of the robot 50 measured by a force measurement unit 21, data which has been set, and position data of the robot 50, etc., whereby the position of the axes constituting the robot 50 is changed and the robot 50 is moved.” (paragraph 0019).
PTL 2 relates to a simulation device of a cooperative robot, and describes as follows: “A simulation device 50 for a simulation of cooperative task carried out cooperatively by a cooperative robot and a person, the simulation device includes a head-mounting display device 80 to be mounted on an operator to simulatively carry out the cooperative task, a detection unit 70 configured to detect a position of the operator in a real space, a three-dimensional model display unit 502 configured to display, on the head-mounting display device, an image in which a robot system model including a cooperative robot model is arranged in a three-dimensional virtual space, and a simulation execution unit 503 configured to simulatively operate the cooperative robot model in the three-dimensional virtual space based on a motion program of the cooperative robot to carry out the cooperative task and the detected position of the operator.” (abstract).
PTL 3 relates to direct teaching of a robot, and describes as follows: “A robot arm (100) includes a grip part (103) which is structured to be separated from an end effector (102) attached to the robot arm (100). When the grip part (103) is gripped by a user and shifted, the robot arm (100) shifts tracking the grip part (103). Further, the grip part (103) includes a contact sensor (105), and the tracking control method is switched according to the value of the contact sensor (105).” (abstract).
PTL 4 relates to a cooperative robot, and describes as follows: “A human cooperative robot system (1) includes a first detection unit (S1) that detects an external force acting on a robot, a second detection unit (S2) that detects only an operating force acting on the robot when a person manually operates the robot, and a safety assurance operation command unit (21) that when the external force detected by the first detection unit exceeds a predetermined threshold value, outputs a safety assurance operation command for causing the robot to move in a direction that reduces the external force or causing the robot to stop.” (abstract).
Herein, instead of the teaching stage of a cooperative robot, the actual operation stage where the cooperative robot executes a control program and cooperatively performs a predetermined task with a worker, will be considered. During the actual operation of a robot system including such a cooperative robot, when a worker who cooperatively performs the task with the cooperative robot wishes to temporarily reduce a speed of the robot, the worker generally needs to stop the task and operate a teach pendant so as to set the motion speed of the robot. Further, the worker needs to operate the teach pendant again in order to return the reduced speed of the robot to the original speed. Such an operation is a troublesome operation for the worker, and also reduces the work efficiency. There is a demand for a robot controller and a control method which can change a speed of a cooperative robot in actual operation to a speed intended by a worker without the need to stop the task and operate the teach pendant.
One aspect of the present disclosure is a robot controller that controls a robot, and the robot controller includes a speed control unit configured to change a motion speed of the robot in response to detection of a predetermined external force being applied to the robot when the robot is operating according to a control program.
Another aspect of the present disclosure is a control method for controlling a robot by a robot controller, and the control method includes changing a motion speed of the robot in response to detection of a predetermined external force being applied to the robot when the robot is operating according to a control program.
According to the configuration described above, the motion speed of the robot operating according to the control program can be changed by an operation of applying a force to the robot that is an intuitive and convenient operation for a worker.
The objects, the features, and the advantages, and other objects, features, and advantages will become more apparent from the detailed description of typical embodiments of the present invention illustrated in accompanying drawings.
Next, embodiments of the present disclosure will be described with reference to drawings. A similar configuration portion or a similar functional portion is denoted by the same reference sign in the referred drawings. A scale is appropriately changed in the drawings in order to facilitate understanding. An aspect illustrated in the drawing is one example for implementing the present invention, and the present invention is not limited to the illustrated aspect.
A worker who performs work in cooperation with a robot in a cooperative robot system may desire to temporarily change a speed of the robot operating according to a control program due to various factors in terms of the work. The robot controller 50 according to the present embodiment provides a function of changing a speed of the robot 10 operating according to the control program by an intuitive and convenient operation of applying a force to the robot 10.
The robot 10 includes a base 11 fixed to an installation floor. The robot 10 can perform desired work by using an end effector attached to a wrist portion of an arm tip of the robot. The end effector is an exchangeable external device according to use, and is, for example, a hand, a welding gun, a tool, and the like.
The robot controller 50 controls a motion of the robot 10 according to a control program or a command from the teach pendant 30.
A force sensor 71 is disposed below the base 11 of the robot 10. The force sensor 71 is, for example, a 6-axis force sensor. The robot controller 50 can obtain an external force (contact force) acting on the robot 10 based on a detected value of the force sensor 71, and can detect that a person or an object contacts the robot 10. It should be noted that the robot controller 50 may also be configured to detect an external force (contact force) acting on the robot 10 by using a torque sensor disposed on each joint axis (or at least one of the joint axes) of the robot 10.
The teach pendant 30 is used for performing various settings related to teaching of the robot 10, program creation, and various operations for teaching such as a jog operation of the robot 10. It should be noted that an information processing device such as a tablet terminal and a personal computer (PC) including a teaching function may be used instead of the teach pendant.
The motion control unit 151 generates a trajectory plan of a predetermined movable portion (such as a tool center point (TCP)) of the robot 10 according to a control program 150 loaded into the robot controller 50, and generates a command of each axis of the robot 10 by kinematic calculation. Then, the robot controller 50 can move a predetermined control portion of the robot 10 according to the planned trajectory by executing servo control on each axis according to the command of each axis. Further, the motion control unit 151 performs control of the hand 60 according to the control program 150.
The external force detection unit 152 can detect an external force (contact force) acting on the robot 10 by subtracting a weight of a workpiece held by the robot 10 and an inertial force generated by a motion of the robot 10 from a detected value output from the force sensor 71. It should be noted that the external force detection unit 152 may also be represented as an external force acquisition unit that acquires an external force based on a detected value of an external force detector such as the force sensor 71.
The stop control unit 153 stops the robot 10 for ensuring human safety when the external force (contact force) detected by the external force detection unit 152 exceeds a reference value. The reference value is set as a threshold value TH1. This configuration ensures human safety in a situation where a person and the robot 10 cooperatively perform the work.
When the robot 10 operates according to the control program, the speed control unit 154 changes a motion speed of the robot 10 in response to detecting that a predetermined external force is applied to the robot 10. In the present embodiment, as an exemplification, when the external force (contact force) detected by the external force detection unit 152 is equal to or less than the threshold value TH1, the speed control unit 154 determines that a worker is operating an arm of the robot 10 with the intention of changing a speed of the robot 10, and changes the speed of the robot 10.
According to the configuration described above, a worker who desires to change a speed of the robot 10 operating at a speed specified by the control program 150 may operate the arm of the robot 10 with a relatively weak force, i.e., a light force equal to or less than the threshold value TH1 of an external force used for determining whether to stop the robot 10. The worker can change the speed of the robot 10 by operating the arm with the light force, and thus the beneficial function for the worker can be used by a simple and convenient operation for the worker. Thus, according to the configuration for changing a speed of the robot 10 when an external force equal to or less than the threshold value TH1 is detected, it is possible to reliably grasp the intention of a worker who desires to temporarily change the speed of the robot 10.
Hereinafter, two specific examples of speed control by the speed control unit 154 when an external force equal to or less than the threshold value TH1 is detected will be described. The two examples described below correspond to a motion of changing a speed of the robot 10 according to a direction of an external force with respect to a motion direction of the robot 10 when application of the external force equal to or less than the threshold value TH1 to the robot 10 is detected.
A first example is a motion example of reducing a speed of the robot 10 when a worker applies a force equal to or less than a certain value (threshold value TH1) to the robot 10 in a direction considered to be an opposite direction to a motion direction of the robot 10 operating according to the control program 150. In other words, the speed control unit 154 performs control in such a way as to reduce a speed of the robot 10 when the following conditions (A1) and (A2) are satisfied.
A motion of the present first example will be described with reference to
For example, the following criterion (B1) or (B2) may be used for determining that the condition (A2) described above is satisfied.
The speed control unit 154 reduces a speed of the robot 10 on a condition that application of a force equal to or less than the threshold value TH1 to the robot 10 by the worker is detected in a direction considered to be an opposite direction to a motion direction of the robot 10. Examples of control for reducing a speed may include a motion (C1) or (C2) as follows.
As described above, according to the first example, the worker can reduce a motion speed of the robot by performing an intuitive and convenient operation of applying, in a direction considered to be an opposite direction to a motion direction of the robot, a force having a magnitude equal to or less than the threshold value TH1 to the robot operating according to the control program. Therefore, the worker can more efficiently perform the cooperative work with the robot according to the situation.
A second example is a motion example of increasing a motion speed of the robot 10 when a worker applies a force equal to or less than a certain value (threshold value TH1) to the robot 10 in a direction considered to be the same direction as a motion direction of the robot 10 in a case where the motion speed of the robot 10 temporarily decreases further than a speed specified by the control program 150. In other words, the speed control unit 154 increases a speed of the robot 10 when the following conditions (A11) and (A12) are satisfied.
A motion of the present second example will be described with reference to
For example, the following criterion (B11) or (B12) may be used for determining that the condition (A12) described above is satisfied.
The speed control unit 154 increases a speed of the robot 10 on a condition that application of a force equal to or less than the threshold value TH1 to the robot 10 by the worker is detected in a direction considered to be the same as a motion direction of the robot 10. Examples of control for increasing a speed may include a motion (C11) or (C12) as follows.
As described above, according to the second example, the worker can increase or restore a motion speed of the robot by performing an intuitive and convenient operation of applying, in a direction considered to be the same direction as a motion direction, a force having a magnitude equal to or less than the threshold value TH1 to the robot having a temporarily reduced speed. Therefore, the worker can more efficiently perform the cooperative work with the robot according to the situation.
It should be noted that the motion described above according to the second example can also be applied as a motion for temporarily increasing a motion speed of the robot 10 further than a speed specified by the control program.
As illustrated in
When the external force (contact force) acting on the robot 10 is detected (S1: YES), the magnitude of the external force (F) is determined (step S2). When the magnitude of the external force (F) exceeds a predetermined reference value (threshold value TH1) (S2: F>TH1), the robot 10 is stopped by the stop control unit 153 for ensuring human safety (step S3).
When the magnitude of the external force (F) is equal to or less than the predetermined reference value (threshold value TH1) (S2: F≤TH1), the speed control unit 154 changes a motion speed of the robot 10 (step S4). In step S4, as described in the first example or the second example described above, the speed control unit 154 can change the motion speed of the robot 10 according to a direction of the external force with respect to a motion direction of the robot 10.
As described above, according to the present embodiment, a motion speed of the robot operating according to the control program can be changed by an operation of applying a force to the robot that is an intuitive and convenient operation for a worker.
The present invention has been described above by using the typical embodiments, but it will be understood by those of ordinary skill in the art that changes, other various changes, omission, and addition may be made in each of the embodiments described above without departing from the scope of the present invention.
For example, in the embodiments described above, the threshold value (first threshold value) for detecting an external force applied in an opposite direction to a motion direction of the robot in the first example, and the threshold value (second threshold value) for detecting an external force applied in the same direction as a motion direction of the robot in the second example are set to be the same value (threshold value TH1), but the first threshold value and the second threshold value may be different values.
The functional block diagram of the robot controller 50 illustrated in
The program for executing various types of processing such as the speed control processing (
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2022/017421 | 4/8/2022 | WO |