Robot system and robot system control method
Patent Information
- Application Number
- TW114131581
- Authority / Receiving Office
- TW · TW
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2024-09-06
- Filing Date
- 2025-08-19
- Publication Date
- 2026-10-11
- Estimated Expiration
- 2045-08-18
AI Technical Summary
Existing robot systems, such as described in Japanese Patent No. 7290472, fail to accurately account for both tangential and radial forces when calculating external forces acting on a robot, leading to an underestimation of the total external force due to the neglect of radial forces.
A robot system and control method that calculates external forces by dividing the difference between detected torque and a reference torque by the radius from the joint's rotation axis to a monitoring point on the robot's surface, then converts this value into a normal direction based on the angle formed by the tangent direction of the circle at the monitoring point and the robot's surface normal, incorporating both tangential and radial forces.
This approach allows for a more accurate estimation of the combined external force, preventing underestimation and enabling appropriate control measures, such as warnings or avoidance maneuvers, when external forces exceed predefined thresholds.
Smart Images

Figure TWG2TB001915623_001 
Figure TWG2TB001915623_002 
Figure TWG2TB001915623_003
Abstract
Description
[Technical Field]
[0001] This invention relates to a robot system and a control method for the robot system. [Previous Technology]
[0002] A robot system is known in the past. Such a robot system is disclosed, for example, in Japanese Patent No. 7290472.
[0003] Japanese Patent No. 7290472 discloses a robot system comprising a robot and a control device for controlling the robot. The robot is a vertical jointed robot, and a torque sensor is provided at the first to third joints, counting from the base, to detect the torque about the axis of rotation of the joint. The control device is configured to obtain the external force value as the value obtained by dividing the difference torque between the torque detected by the torque sensor and the calculated torque calculated based on the robot's posture and motion by the minimum radius of the axis of rotation of the joint at the physically possible contact position.
[0004] However, in the robot system described in Japanese Patent No. 7290472, since the external force value is obtained by dividing the differential torque by the minimum radius, only the force in the tangential direction of the circle with the minimum radius is considered, while the force in the radial direction is ignored. In this case, there is a problem that the external force value is obtained too little. [Summary of the Invention]
[0005] [Problem to be Solved by the Invention] This invention was developed to solve the above-mentioned problem, and its object is to provide a robot system and a control method for the robot system that can avoid the underestimation of external force values. [Means for Solving the Problem]
[0006] The robot system of the first aspect of the present invention comprises: a robot including a plurality of joints; a torque detection unit disposed on a predetermined joint among the plurality of joints, and detecting a detected torque value about a rotation axis around the predetermined joint; and a control unit that performs the following control: dividing the difference between the detected torque value and a reference torque value by the radius from the rotation axis of the predetermined joint to a monitoring point set on the surface of the robot to obtain a first value, and obtaining a second value obtained by converting the aforementioned first value into a normal direction value based on the angle formed by the tangent direction of the circle having the aforementioned radius at the monitoring point and the normal direction relative to the surface of the robot on which the monitoring point is set, and using this as an external force value acting on the robot. Furthermore, in this specification, the robot surface, when the robot includes a hand for holding a workpiece, also includes the surface of the robot hand and the surface of the workpiece held by the robot hand, etc., in a broad sense.
[0007] In the robot system of the first embodiment of the present invention, as described above, a control unit is provided. This control unit performs the following control: dividing the difference between the detected torque value and the reference torque value by the radius from the rotation axis of a predetermined joint to a monitoring point set on the surface of the robot to obtain a first value, and obtaining a second value obtained by converting the aforementioned first value into a normal direction value based on the angle formed by the tangent direction of the circle having the aforementioned radius at the monitoring point and the normal direction relative to the surface of the robot on which the monitoring point is set, and using this value as the control of the external force value acting on the robot. In this way, the combined external force value of the tangential force and the radial force at the monitoring point can be obtained, thus avoiding a situation where only the tangential force at the monitoring point is considered while the radial force at the monitoring point is ignored. As a result, the situation where the external force value is obtained too low can be avoided.
[0008] In the control method of the robot system of the second aspect of the present invention, the robot system includes a robot comprising a plurality of joints, and the control method of the robot system includes: detecting a detected torque value of a rotation axis about a predetermined joint among the plurality of joints; dividing the difference between the detected torque value and a reference torque value by the radius from the rotation axis of the predetermined joint to a monitoring point set on the surface of the robot to obtain a first value; and obtaining a second value obtained by converting the aforementioned first value into a normal direction value based on the angle formed by the tangent direction of the circle having the aforementioned radius at the monitoring point and the normal direction relative to the surface of the robot on which the monitoring point is set, and using the second value as an external force value acting on the robot.
[0009] In the control method of the robot system of the second aspect of the present invention, as described above, a first value is obtained by dividing the difference between the detected torque value and the reference torque value by the radius from the rotation axis of a predetermined joint to a monitoring point set on the surface of the robot. A second value is obtained by converting the aforementioned first value into a normal direction value based on the angle formed by the tangent direction of the circle having the aforementioned radius at the monitoring point and the normal direction relative to the surface of the robot on which the monitoring point is set. This second value is then used as the external force value acting on the robot. In this way, the combined external force value of the tangential force and the radial force at the monitoring point can be obtained, thus avoiding the situation where only the tangential force at the monitoring point is considered while the radial force at the monitoring point is ignored. As a result, a control method for a robot system that avoids the situation where the external force value is obtained too little can be provided. [Effects of the Invention]
[0010] According to the present invention, as described above, the situation in which the external force value is obtained is avoided.
Implementation Method
[0012] Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0013] (Composition of the robot system) The composition of an embodiment of the robot system 100 will be described with reference to Figures 1 to 4. As shown in Figure 1, the robot system 100 is a system in which the robot 10 performs operations. The robot system 100 includes: robot 10, control unit 20, and instruction unit 30.
[0014] Robot 10 is a robot that works in the same space as humans. For example, Robot 10 is a collaborative robot or a service robot. Robot 10 does not use safety barriers, etc. In addition, Robot 10 is a six-axis vertical multi-joint robot. As shown in Figures 1 and 2, Robot 10 includes a base 11, a plurality of links 12, a plurality of joints 13, a plurality of torque detection units 14, and a hand 15.
[0015] The base 11 is fixed to the ground or other installation surface by means of fastening components such as bolts.
[0016] A plurality of links 12 include links 12a, 12b, 12c, 12d, 12e, and 12f. Links 12a, 12b, 12c, 12d, 12e, and 12f are arranged sequentially from the base end side toward the front end side. A plurality of joints 13 include joints 13a, 13b, 13c, 13d, 13e, and 13f. Joints 13a, 13b, 13c, 13d, 13e, and 13f are arranged sequentially from the base end side toward the front end side.
[0017] Joint 13a is disposed at the connection between base 11 and connecting rod 12a. Joint 13a is configured to allow connecting rod 12a to rotate relative to base 11 about a rotation axis A1 in the vertical direction. Joint 13b is disposed at the connection between connecting rod 12a and connecting rod 12b. Joint 13b is configured to allow connecting rod 12b to rotate relative to connecting rod 12a about a rotation axis A2 in a direction orthogonal to rotation axis A1. Joint 13c is disposed at the connection between connecting rod 12b and connecting rod 12c. Joint 13c is configured to allow connecting rod 12c to rotate relative to connecting rod 12b about a rotation axis A3 in a direction parallel to rotation axis A2.
[0018] Joint 13d is disposed at the connection between link 12c and link 12d. Joint 13d is configured to allow link 12d to rotate relative to link 12c about a rotation axis A4 orthogonal to the rotation axis A3. Joint 13e is disposed at the connection between link 12d and link 12e. Joint 13e is configured to allow link 12e to rotate relative to link 12d about a rotation axis A5 orthogonal to the rotation axis A4. Joint 13f is disposed at the connection between link 12e and link 12f. Joint 13f is configured to allow link 12f to rotate relative to link 12e about a rotation axis A6 orthogonal to the rotation axis A5. Therefore, joint 13f is configured to allow the hand 15 mounted on link 12f to rotate relative to link 12f about the rotation axis A6.
[0019] Each of joints 13a, 13b, 13c, 13d, 13e, and 13f is equipped with a motor 131, a reducer 132, and an encoder 133. The motor 131 is the drive source for driving joint 13 and is configured as a servo motor. The reducer 132 is configured to reduce the rotational speed of the motor 131 while transmitting the driving force of the motor 131 to the connecting rod 12. The encoder 133 is configured to output information on the rotational position of the motor 131.
[0020] The torque detection unit 14 is a torque sensor. The torque detection unit 14 is disposed on all of the plurality of joints 13. Specifically, the plurality of torque detection units 14 includes torque detection units 14a, 14b, 14c, 13d, 13e and 14f respectively disposed on joints 13a, 13b, 13c, 13d, 13e and 13f.
[0021] Torque detection unit 14a is configured to detect the torque value about the rotation axis A1 of joint 13a. Torque detection unit 14b is configured to detect the torque value about the rotation axis A2 of joint 13b. Torque detection unit 14c is configured to detect the torque value about the rotation axis A3 of joint 13c. Torque detection unit 14d is configured to detect the torque value about the rotation axis A4 of joint 13d. Torque detection unit 14e is configured to detect the torque value about the rotation axis A5 of joint 13e. Torque detection unit 14f is configured to detect the torque value about the rotation axis A6 of joint 13f.
[0022] The hand 15 is configured to perform operations on a workpiece that is the object of the operation. For example, the hand 15 is a hand that holds the workpiece or a hand that absorbs the workpiece. The hand 15 may also be referred to as a tool or an end effector. In addition, the surface of the robot 10 includes the surface of the hand 15 and the surface of the workpiece held by the hand 15.
[0023] The control unit 20 is a robot controller. The control unit 20 is configured to control the actions of the robot 10. Specifically, the control unit 20 acquires the instruction on the actions of the robot 10 given by the user using the instruction unit 30, and causes the robot 10 to move according to the acquired instruction. In addition, since there may be situations where objects such as humans, other robots, or workpieces other than the workpiece being worked on come into contact with the robot 10 while the robot 10 is performing its work, causing external forces to act on the robot 10, as described below, the control unit 20 is configured to acquire the value of the external force acting on the robot 10.
[0024] The teaching pendant of the teaching department 30 is configured to receive actions from the teaching robot 10. The teaching pendant 30 includes: a display unit 31, which displays teaching-related information; and an operation unit 32, which receives teaching-related operations.
[0025] (Obtaining External Force Value) In this embodiment, as shown in FIG3, the control unit 20 is configured to perform the following control: The difference between the detected torque value and the reference torque value is divided by the radius R from the rotation axis of joint 13 to the monitoring point 40 set on the surface of robot 10 to obtain the value Pi. The value Pai is obtained by converting the value Pi into a normal direction value based on the angle θ formed by the tangent direction of the circle with radius R at monitoring point 40 and the normal direction relative to the surface of robot 10 on which monitoring point 40 is set. This value is used as the control of the external force value acting on robot 10. Specifically, the control unit 20 is configured to obtain the value Pai using the formula Pai = Pi / cosθ. Furthermore, in this embodiment, the reference torque value is a theoretical torque value. The theoretical torque value is a theoretical torque value calculated based on the position and posture of the taught robot 10, the value of encoder 133, the link length of robot 10, and the weight of the components of robot 10. Furthermore, the value Pi is one example of the first value. Additionally, the value Pai is one example of the second value.
[0026] Figure 3 shows an example of obtaining an external force value for joint 13b. In this case, the control unit 20 obtains the detected torque value detected by the torque detection unit 14b, and simultaneously obtains a reference torque value for joint 13b calculated based on the position and posture of the taught robot 10 and the value of the encoder 133. Furthermore, the control unit 20 obtains the difference between the obtained detected torque value and the reference torque value. Furthermore, the control unit 20 obtains the value Pi by dividing the obtained difference by the radius R from the rotation axis A2 of joint 13b to the monitoring point 40 set on the surface of the link 12b that rotates and moves by means of joint 13b. Furthermore, the control unit 20 performs control by converting the value Pi into the value Pai based on the angle θ formed by the tangent direction of the circle centered on the rotation axis A2 of joint 13b at monitoring point 40 and the normal direction relative to the surface of the connecting rod 12b on which monitoring point 40 is set. That is, the control unit 20 performs control by obtaining the value Pai using the formula Pai = Pi / cosθ. Since 0 < cosθ < 1, the value Pai is larger than the value Pi. Thus, the control unit 20 performs control by obtaining the value Pai as the external force value. Since the value Pi, which represents the force in the tangential direction at monitoring point 40, is converted based on the angle θ, the value Pai as the external force value is obtained as the force resulting from the combination of the force in the tangential direction and the force in the radial direction at monitoring point 40.
[0027] Furthermore, although the example of obtaining the external force value for joint 13b has been described, the same applies to joints 13a, 13c, 13d, 13e, and 13f. In addition, regarding joint 13f, a monitoring point 40 is provided on the surface of the hand 15 that rotates and moves via joint 13b. For example, when the hand 15 has an adhesive pad, the monitoring point 40 is provided on the surface of the adhesive pad.
[0028] Furthermore, in this embodiment, the monitoring point 40 is set at an arbitrary position on the surface of the robot 10, which is not a fixed position. For example, the monitoring point 40 is set at an arbitrary position specified by the user. Alternatively, for example, the monitoring point 40 is set at an arbitrary position before the robot 10 is shipped. Furthermore, for example, the monitoring point 40 is set based on a risk assessment that estimates the risk to the robot 10. For example, the monitoring point 40 is set based on the risk assessment at a position where the radius R of the position on the surface of the robot 10 that can be contacted by an object exerting an external force on the robot 10 is minimized. The smaller the radius R, the greater the value of the external force obtained; therefore, by setting the monitoring point 40 in a way that minimizes the radius R, it is possible to avoid obtaining an excessively small value of the external force.
[0029] Furthermore, in this embodiment, as shown in Figures 3 and 4, the monitoring points 40 are set at multiple positions on the surface of the robot 10. Specifically, the monitoring points 40 are set according to each movement direction of the robot 10. The control unit 20 performs control by using the monitoring points 40 that correspond to the movement direction of the robot 10 among the plurality of monitoring points 40 to obtain the external force value.
[0030] Figure 3 shows an example of link 12b rotating in the direction of motion D1 via joint 13b. Figure 4 shows an example of link 12b rotating in the direction of motion D2 via joint 13b. The directions of motion D1 and D2 are the positive and negative directions of rotation about the axis of rotation A2 of joint 13b, respectively. The monitoring point 40 is set at two positions: one on the surface 12ba of link 12b on the side of link 12b that is rotating in the direction of motion D1, and the other on the surface 12bb of link 12b on the side of link 12b that is rotating in the direction of motion D2. The control unit 20 controls the external force value obtained by using the monitoring point 40 set on surface 12ba when link 12b rotates in the direction of motion D1. In addition, the control unit 20 controls the external force value by using the monitoring point 40 set on the surface 12bb when the link 12b rotates in the direction of action D2.
[0031] Furthermore, although the example of the monitoring point 40 on the surface of link 12b has been described, the monitoring point 40 on the surfaces of links 12a, 12c, 12d, 12e, and hand 15 is the same. That is, the monitoring point 40 on the surfaces of links 12a, 12c, 12d, 12e, and hand 15 is set at two positions corresponding to the two rotational directions, positive and negative. A total of 12 monitoring points 40 are set.
[0032] Furthermore, in this embodiment, the control unit 20 is configured to issue a warning that the external force value Pai exceeds the first threshold T1 when the external force value Pai exceeds the first threshold T1, while simultaneously controlling the robot 10 to continue its operation. Additionally, when the external force value Pai exceeds a second threshold T2, which is larger than the first threshold T1, the control unit 20 issues an abnormality warning that the external force value Pai exceeds the second threshold T2, while simultaneously controlling the robot 10 to stop or to perform an avoidance maneuver. Stopping the robot 10 means stopping the movement of each joint 13 of the robot 10. Performing an avoidance maneuver means controlling the movement of the robot 10 by driving each joint 13 to avoid an increase in the external force acting on the robot 10, for example, moving the robot 10 in a direction where the external force acting on the robot 10 would decrease. Furthermore, the threshold T2 is specified, for example, according to ISO / TS15066. Additionally, the threshold T1 is an example of the first threshold. Furthermore, threshold T2 is an example of a predetermined threshold and a second threshold.
[0033] The control unit 20 is configured to, when a warning is issued that the notification value Pai exceeds the first threshold T1, at least one of the following actions is taken: illuminating the LEDs or other light-emitting components disposed on the robot 10, and displaying a notification warning message on the display unit 31 of the teaching unit 30. Similarly, the control unit 20 is configured to, when an anomaly is issued that the notification value Pai exceeds the second threshold T2, at least one of the following actions is taken: illuminating the LEDs or other light-emitting components disposed on the robot 10, and displaying an anomaly notification message on the display unit 31 of the teaching unit 30.
[0034] (Control processing of external force values) Referring to FIG5, the control processing of external force values of the robot system 100 of this embodiment will be explained according to the flowchart. In addition, each process in the flowchart is executed by the control unit 20.
[0035] In step S1, the difference between the detected torque value and the reference torque value is divided by the radius R from the rotation axis of the joint 13 to the monitoring point 40 set on the surface of the robot 10 to obtain the value Pi. The value Pai is obtained by converting the value Pi into a normal direction value based on the angle θ formed by the tangent direction of the circle with radius R at the monitoring point 40 and the normal direction relative to the surface of the robot 10 on which the monitoring point 40 is set. This value is used as the external force value acting on the robot 10. Specifically, the value Pai is obtained using the formula Pai = Pi / cosθ. In step S1, the value Pai is obtained for each of the plurality of joints 13.
[0036] Furthermore, in step S2, it is determined whether the value Pai exceeds the first threshold T1. In step S2, the value Pai is determined for each of the plurality of joints 13. When the value Pai for all joints 13 does not exceed the threshold T1, the control process ends. Alternatively, when the value Pai for at least one of the plurality of joints 13 exceeds the threshold T1, the process proceeds to step S3.
[0037] Furthermore, in step S3, it is determined whether the value Pai exceeds the threshold T2. In step S3, the value Pai is determined for each of the plurality of joints 13. When the value Pai does not exceed the threshold T2 for all joints 13, the process proceeds to step S4.
[0038] Furthermore, in step S4, a warning is issued when the notification value Pai exceeds the threshold T1. For example, at least one of the following actions is performed: illuminating the light-emitting parts such as LEDs configured on the robot 10, and displaying the notification warning message on the display unit 31 of the teaching unit 30. The robot 10 continues to operate without stopping or performing an avoidance action.
[0039] Furthermore, in step S3, when the judgment value Pai exceeds the threshold T2 for at least one of the plurality of joints 13, the process proceeds to step S5.
[0040] Furthermore, in step S5, an anomaly is detected when the reported value Pai exceeds the threshold T2. For example, at least one of the following actions is performed: illuminating the light-emitting parts such as LEDs configured on the robot 10, and displaying the anomaly report on the display unit 31 of the teaching unit 30. Alternatively, the robot 10 may be stopped or perform an avoidance maneuver.
[0041] (Effects of this embodiment) In this embodiment, a control unit 20 is provided. This control unit 20 performs the following control: dividing the difference between the detected torque value and the reference torque value by the radius R from the rotation axis of the joint 13 to the monitoring point 40 set on the surface of the robot 10 to obtain a value Pi, and obtaining a value Pai obtained by converting the value Pi into a normal direction value based on the angle θ formed by the tangent direction of the circle with radius R at the monitoring point 40 and the normal direction relative to the surface of the robot 10 on which the monitoring point 40 is set, and using this value as the external force value acting on the robot 10. In this way, the external force value after the combination of the force in the tangential direction and the force in the radial direction at the monitoring point 40 can be obtained, so there is no situation where only the force in the tangential direction of the monitoring point 40 is considered and the force in the radial direction of the monitoring point 40 is ignored. As a result, the situation where the external force value is obtained too little can be avoided.
[0042] Furthermore, in this embodiment, as described above, the control unit 20 performs control by obtaining the value Pai using the formula Pai=Pi / cosθ. In this way, by using the formula Pai=Pi / cosθ, the external force value resulting from the combination of the tangential force and the radial force at the monitoring point 40 can be easily obtained.
[0043] Furthermore, in this embodiment, as described above, the monitoring point 40 is set at any position on the surface of the robot 10, which is not a fixed position. Therefore, the monitoring point 40 can be set at any position on the surface of the robot 10, making it easy to set the monitoring point 40 corresponding to the robot 10.
[0044] Furthermore, in this embodiment, as described above, the monitoring point 40 is set at multiple locations on the surface of the robot 10. Therefore, since the monitoring point 40 can be set at multiple locations on the surface of the robot 10, the external force value can be obtained more appropriately compared to the case where the monitoring point 40 is set at only one location on the surface of the robot 10.
[0045] Furthermore, in this embodiment, as described above, the monitoring point 40 is set according to each movement direction of the robot 10, and the control unit 20 performs control by using the monitoring point 40 among the plurality of monitoring points 40 corresponding to the movement direction of the robot 10 to obtain the external force value. Therefore, although the position where external force is easily applied to the robot 10 varies depending on each movement direction of the robot 10, when the shape of the robot 10 is different according to each movement direction of the robot 10, by using the monitoring point 40 among the plurality of monitoring points 40 corresponding to the movement direction of the robot 10 to obtain the external force value, the external force value can be obtained appropriately and effectively.
[0046] Furthermore, in this embodiment, as described above, the torque detection unit 14 is disposed on all of the plurality of joints 13. This allows for the detection of external forces that cannot be detected by simply disposing of the torque detection unit 14 on the base-side joint 13, and external forces that cannot be detected by simply disposing of the torque detection unit 14 on the front-side joint 13. Therefore, when an external force is applied to the robot 10, the external force acting on the robot 10 can be reliably detected. Furthermore, when the torque detection unit 14 is disposed on the front-side joint 13, not only can the external force value be obtained, but the movement of the hand 15 can also be controlled using the torque detection unit 14. For example, when the robot 10 performs operations requiring precise force control, such as fitting screws as workpieces or grinding workpieces, the movement of the hand 15 can be precisely controlled based on the detected torque value of the torque detection unit 14 disposed on the front-side joint 13.
[0047] Furthermore, in this embodiment, as described above, the control unit 20 controls the robot 10 to stop or perform an avoidance action when the value Pai, which is the external force value, exceeds the threshold T2. Therefore, when a large external force is applied to the robot 10, the robot 10 can be stopped or an avoidance action can be performed. As a result, it is possible to avoid applying a large load to the object that is the cause of the external force contacting the robot 10.
[0048] Furthermore, in this embodiment, as described above, the control unit 20 controls the notification that the value Pai exceeds the threshold T2 when the value Pai, which is the external force value, exceeds the threshold T2. This allows the operator to know that a large external force is acting on the robot 10, and thus allows for handling of situations where a large external force is acting on the robot 10.
[0049] Furthermore, in this embodiment, as described above, the control unit 20 controls the robot 10 to continue operating when the external force value Pai exceeds the threshold T1, and simultaneously reports an anomaly when the external force value Pai exceeds the threshold T2, which is larger than the threshold T1, and simultaneously stops the robot 10 or causes it to perform an avoidance maneuver. In this way, when a warning is issued, the operator can be notified of a situation that may lead to an anomaly. Furthermore, when a warning is issued, the robot 10 can continue operating, thus suppressing a decrease in the robot 10's operating rate. Furthermore, when an anomaly occurs, the operator can be notified that an anomaly has occurred, allowing the operator to handle the anomaly. Furthermore, when an anomaly occurs, the robot 10 can be stopped or caused to perform an avoidance maneuver, thus preventing the application of a large load to the object that is causing the external force to the robot 10.
[0050] Furthermore, in this embodiment, as described above, robot 10 operates in the same space as humans. When robot 10 operates in the same space as humans, there is a possibility that external forces may act on robot 10 due to contact with humans. Therefore, it is highly effective to minimize the amount of external force applied when robot 10 operates in the same space as humans.
[0051] The robot 10 includes a hand 15 for holding a workpiece, and the surface of the robot 10 includes the surface of the hand 15 and the surface of the workpiece held by the hand 15. In this way, when an external force is applied to the surface of the hand 15 or the surface of the workpiece held by the hand 15, the external force value can be appropriately obtained.
[0052] (Modifications) Furthermore, the embodiments disclosed herein should be considered as illustrative rather than limiting in all respects. The scope of this disclosure is as indicated by the claims and not by the description of the embodiments described above, and includes all modifications (modifications) in a meaning and scope equivalent to the claims.
[0053] For example, although the above embodiments show an example of a six-axis vertical joint robot, the present invention is not limited to this. In the present invention, the robot can be a vertical joint robot with seven or eight axes, etc., other than six axes. Furthermore, the robot can also be a robot other than a vertical joint robot. For example, the robot is a horizontal joint robot.
[0054] Furthermore, although the above embodiments show an example of a robot that operates in the same space as humans, the present invention is not limited to this. In the present invention, the robot may also be a robot other than a robot that operates in the same space as humans.
[0055] Furthermore, although the above embodiments show an example of obtaining external force values through a control unit that functions as a robot controller, the present invention is not limited thereto. In the present invention, the obtaining of external force values can also be performed by a control unit other than a robot controller.
[0056] Furthermore, although the above embodiments show examples where the reference torque value is the theoretical torque value, the present invention is not limited thereto. In the present invention, the reference torque value may also be a torque value other than the theoretical torque value. For example, the reference torque value may also be a calculated torque value calculated based on the current value of the motor of the joint.
[0057] Furthermore, although the above embodiments show an example of obtaining the external force value using the formula Pai=Pi / cosθ, the present invention is not limited thereto. In the present invention, formulas other than Pai=Pi / cosθ can also be used to obtain the external force value.
[0058] Furthermore, although the above embodiments show an example where the monitoring point is set at an arbitrary position on the surface of the robot, the present invention is not limited thereto. In the present invention, the monitoring point can also be set at a fixed position on the surface of the robot.
[0059] Furthermore, although the above embodiments show an example of setting the monitoring point at two positions on the surface of the robot for a single joint, the present invention is not limited thereto. In the present invention, the monitoring point may also be set at one or more positions on the surface of the robot for a single joint.
[0060] Furthermore, although the above embodiments show an example of monitoring points being set according to each movement direction of the robot, the present invention is not limited to this. In the present invention, monitoring points may not be set according to each movement direction of the robot. In addition, joints with monitoring points set according to each movement direction of the robot and joints with monitoring points not set according to each movement direction of the robot may coexist.
[0061] Furthermore, although the above embodiments show an example where the torque detection unit is disposed in all of a plurality of joints, the present invention is not limited thereto. In the present invention, the torque detection unit may also be disposed in at least one of a plurality of joints.
[0062] Furthermore, although the above embodiments show examples of setting two thresholds—a threshold for issuing a warning and allowing the robot to continue its operation, and a threshold for issuing an anomaly and causing the robot to stop or perform an avoidance maneuver—the present invention is not limited to this. In the present invention, only the threshold for issuing an anomaly and causing the robot to stop or perform an avoidance maneuver may be set. Thresholds other than the threshold for issuing a warning and allowing the robot to continue its operation, and the threshold for issuing an anomaly and causing the robot to stop or perform an avoidance maneuver, may also be set.
[0063] Furthermore, in the above embodiment, the external force values of the two joints can be combined to obtain the combined external force value. In this case, according to the method of the above embodiment, the first external force value of the first joint and the second external force value of the second joint can be obtained, and the square root of the sum of the squares of the first and second external force values can be calculated to obtain the combined external force value. Furthermore, the combined external force value can also be compared with a threshold.
[0064] Furthermore, in the above embodiments, for example, as shown in joints 13b and 13c, for joints with parallel axes of rotation, the values of each external force can be compared, and the smaller one can be taken as the external force value. Alternatively, the obtained external force value can be compared with a threshold value.
[0065] The functions of the elements disclosed in this specification can be performed using a general-purpose processor, a special-purpose processor, integrated circuit, ASIC (Application Specific Integrated Circuits), conventional circuits, and / or combinations thereof that are configured or programmed to perform the disclosed functions. Since a processor contains transistors or other circuitry, it is considered a processing circuit or circuit. In this invention, a circuit, unit, or means is hardware that performs the listed functions, or hardware programmed to perform the listed functions. The hardware may be the hardware disclosed in this specification, or it may be other known hardware programmed or configured to perform the listed functions. When the hardware is a processor considered a type of circuit, the circuit, means, or unit is a combination of hardware and software, with the software used in the configuration of the hardware and / or processor.
[0066] [Example] Those skilled in the art to which this invention pertains will understand that the above-described exemplary embodiments are specific examples of the following examples.
[0067] (Example 1) A robot system comprising: a robot including a plurality of joints; a torque detection unit disposed on a predetermined joint among the plurality of joints, and detecting a detected torque value about a rotation axis of the predetermined joint; and a control unit performing the following control: dividing the difference between the detected torque value and a reference torque value by the radius from the aforementioned rotation axis of the predetermined joint to a monitoring point set on the surface of the robot to obtain a first value, and obtaining a second value obtained by converting the first value into the value of the normal direction based on the angle formed by the tangent direction of the circle having the aforementioned radius at the aforementioned monitoring point and the normal direction relative to the surface of the aforementioned robot on which the aforementioned monitoring point is set, and using the second value as an external force value acting on the robot.
[0068] (State 2) The robot system as described in State 1, wherein the aforementioned control unit performs the following control: setting the aforementioned first value as Pi, setting the aforementioned angle as θ, setting the aforementioned second value as Pai, and obtaining the aforementioned second value by the formula Pai=Pi / cosθ.
[0069] (State 3) The robot system as described in State 1 or 2, wherein the aforementioned monitoring point is set at an arbitrary position on the surface of the robot, which is not a fixed position.
[0070] (State 4) A robot system as described in any of the states 1 to 3, wherein the aforementioned monitoring points are set at a plurality of locations on the surface of the aforementioned robot.
[0071] (State 5) The robot system as described in State 4, wherein the aforementioned monitoring point is set according to each movement direction of the aforementioned robot; the aforementioned control unit performs the following control: using the monitoring point corresponding to the movement direction of the aforementioned robot among a plurality of the aforementioned monitoring points to obtain the aforementioned external force value.
[0072] (State 6) The robot system described in any of the states 1 to 5, wherein the aforementioned torque detection unit is disposed in all of the aforementioned plurality of joints.
[0073] (State 7) The robot system described in any of the states 1 to 6, wherein the aforementioned control unit performs control as follows: when the aforementioned second value, which is the aforementioned external force value, exceeds a predetermined threshold, the robot is stopped or the robot performs an avoidance action.
[0074] (State 8) The robot system as described in State 7, wherein the aforementioned control unit performs the following control: when the aforementioned second value, which is the aforementioned external force value, exceeds the aforementioned predetermined threshold, it notifies that the aforementioned second value has exceeded the aforementioned predetermined threshold.
[0075] (State 9) The robot system described in any of States 1 to 8, wherein the aforementioned control unit performs the following control: when the aforementioned second value, which is the aforementioned external force value, exceeds the first threshold, a warning is issued that the aforementioned second value exceeds the aforementioned first threshold, and at the same time, the robot continues to operate; when the aforementioned second value, which is the aforementioned external force value, exceeds a second threshold that is greater than the aforementioned first threshold, an abnormality is issued that the aforementioned second value exceeds the aforementioned second threshold, and at the same time, the robot stops or the robot performs an avoidance action.
[0076] (State 10) A robot system as described in any of the states 1 to 9, wherein the robot is a robot that operates in the same space as humans.
[0077] (State 11) A robot system as described in any of the states 1 to 10, wherein the robot includes a hand for holding a workpiece; the surface of the robot includes the surface of the hand and the surface of the workpiece held by the hand.
[0078] (Sample 12) A control method for a robot system, the robot system comprising a robot including a plurality of joints, the control method comprising: detecting a detected torque value of a rotation axis about a predetermined joint among the plurality of joints; and dividing the difference between the detected torque value and a reference torque value by the radius from the aforementioned rotation axis of the predetermined joint to a monitoring point set on the surface of the robot to obtain a first value, and obtaining a second value obtained by converting the first value into the value of the normal direction based on the angle formed by the tangent direction of the circle having the aforementioned radius at the aforementioned monitoring point and the normal direction relative to the surface of the aforementioned robot on which the aforementioned monitoring point is set, and using the second value as an external force value acting on the robot. [Simplified Explanation of the Diagram]
[0011] Figure 1 is a diagram showing an embodiment of the robot system. Figure 2 is a block diagram showing an embodiment of the robot. Figure 3 is a diagram (1) illustrating the acquisition of external force values in an embodiment of the robot system. Figure 4 is a diagram (2) illustrating the acquisition of external force values in an embodiment of the robot system. Figure 5 is a flowchart illustrating the control processing related to external force values in an embodiment of the robot system.
Claims
1. A robot system comprising: a robot including a plurality of joints; a torque detection unit disposed on a predetermined joint among the plurality of joints, and detecting a detected torque value about a rotation axis about the predetermined joint; and a control unit performing the following control: dividing the difference between the detected torque value and a reference torque value by the radius from the aforementioned rotation axis of the predetermined joint to a monitoring point set on the surface of the robot to obtain a first value, and obtaining a second value obtained by converting the first value into a value of the normal direction based on the angle formed by the tangent direction of the circle having the aforementioned radius at the aforementioned monitoring point and the normal direction relative to the surface of the robot on which the aforementioned monitoring point is set, and using the second value as an external force value acting on the robot.
2. The robot system as described in claim 1, wherein, The aforementioned control unit performs the following control: sets the aforementioned first value as Pi, sets the aforementioned angle as θ, sets the aforementioned second value as Pai, and obtains the aforementioned second value by the formula Pai=Pi / cosθ.
3. The robot system as described in claim 1, wherein, The aforementioned monitoring points are set at arbitrary locations on the surface of the robot, which are not fixed locations.
4. The robot system as described in claim 1, wherein, The aforementioned monitoring points are set at multiple locations on the surface of the aforementioned robot.
5. The robot system as described in claim 4, wherein, The aforementioned monitoring points are set according to each movement direction of the aforementioned robot; the aforementioned control unit performs the following control: using the monitoring point corresponding to the movement direction of the aforementioned robot among the plurality of the aforementioned monitoring points to obtain the aforementioned external force value.
6. The robot system as described in claim 1, wherein, The aforementioned torque detection unit is disposed in all of the aforementioned plurality of joints.
7. The robot system as described in claim 1, wherein, The aforementioned control unit performs the following control: when the aforementioned second value, which is the aforementioned external force value, exceeds a predetermined threshold, it stops the aforementioned robot or causes the aforementioned robot to perform an avoidance action.
8. The robot system as described in claim 7, wherein, The aforementioned control unit performs the following control: when the aforementioned second value, which is the aforementioned external force value, exceeds the aforementioned predetermined threshold, it notifies that the aforementioned second value has exceeded the aforementioned predetermined threshold.
9. The robot system as described in claim 1, wherein, The aforementioned control unit performs the following control: when the aforementioned second value, which is the aforementioned external force value, exceeds the first threshold, it issues a warning that the aforementioned second value has exceeded the aforementioned first threshold, and at the same time causes the aforementioned robot to continue operating; when the aforementioned second value, which is the aforementioned external force value, exceeds a second threshold that is greater than the aforementioned first threshold, it issues an abnormality that the aforementioned second value has exceeded the aforementioned second threshold, and at the same time causes the aforementioned robot to stop or causes the aforementioned robot to perform an avoidance action.
10. The robot system as described in claim 1, wherein, The aforementioned robot is one that operates in the same space as humans.
11. The robot system as described in claim 1, wherein, The aforementioned robot includes a hand that holds a workpiece; the surface of the aforementioned robot includes the surface of the aforementioned hand and the surface of the aforementioned workpiece held by the aforementioned hand.
12. A control method for a robot system, the robot system comprising a robot including a plurality of joints, the control method comprising: detecting a detected torque value of one of the plurality of joints about a predetermined joint axis of rotation; and dividing the difference between the detected torque value and a reference torque value by the radius from the predetermined joint axis of rotation to a monitoring point set on the surface of the robot to obtain a first value, and obtaining a second value obtained by converting the first value into a normal direction value based on the angle formed by the tangent direction of the circle having the radius at the monitoring point and the normal direction relative to the surface of the robot on which the monitoring point is set, and using the second value as an external force value acting on the robot.
Citation Information
Patent Citations
Abnormality-determining device of speed reducer and abnormality-determining method of speed reducer
JP2006102889A
Robot system
JP2020192652A
Robot system
JP2021137898A
