Control device of robot, robot system, robot control method
By installing force sensors on the robot's joint axes to detect external forces and movement status, and determining the conditions to stop or continue the action, the problem of balancing robot safety and efficiency is solved, achieving a balance between safety and operational efficiency.
Patent Information
- Application Number
- CN202180020335.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-03-12
- Filing Date
- 2021-03-05
- Publication Date
- 2025-12-26
- Estimated Expiration
- 2041-03-05
AI Technical Summary
Existing technologies struggle to maintain operational efficiency while ensuring the safety of objects around the robot, particularly regarding how to reliably stop or continue operation when the robot comes into contact with surrounding objects.
By installing force sensors on the movable elements of the robot, the external force and movement state applied to the joint axis are detected in real time, and it is determined whether the first and second preset conditions are met. When both conditions are met, the action stops; otherwise, the action continues.
It reliably ensures safety when conditions are met, avoiding accidental collisions, while preventing a decrease in work efficiency when conditions are not met, thus achieving a balance between safety and efficiency.
Smart Images

Figure CN115243846B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to a robot control device, a robot system, and a robot control method. BACKGROUND
[0002] A robot control device that controls a robot in such a manner that the robot stops when coming into contact with an object around the robot is known (for example, Patent Literature 1).
[0003] PRIOR ART DOCUMENTS
[0004] PATENT LITERATURE
[0005] Patent Literature 1: Japanese Patent Application Publication No. 2015-199174 SUMMARY
[0006] PROBLEMS TO BE SOLVED BY THE INVENTION
[0007] In the past, a technology that reliably ensures safety of an object (for example, a worker) around a robot and maintains work efficiency of the robot has been demanded.
[0008] MEANS FOR SOLVING THE PROBLEMS
[0009] In one embodiment of the present disclosure, a robot control device having a movable element includes an external force acquisition unit that acquires an external force applied to the movable element when the robot is operating, a first condition determination unit that determines whether a first condition is satisfied, the first condition being that the external force exceeding a first threshold value decided in advance is applied to the movable element, a second condition determination unit that determines whether a second condition is satisfied, the second condition being that the movable element is moving, and an operation control unit that stops operation of the robot when both the first condition and the second condition are satisfied, and on the other hand, continues operation of the robot when at least one of the first condition and the second condition is not satisfied.
[0010] In another embodiment of the present disclosure, a robot control method having a movable element includes acquiring an external force applied to the movable element when the robot is operating, determining whether a first condition is satisfied, the first condition being that the external force exceeding a first threshold value decided in advance is applied to the movable element, determining whether a second condition is satisfied, the second condition being that the movable element is moving, and stopping operation of the robot when both the first condition and the second condition are satisfied, and on the other hand, continuing operation of the robot when at least one of the first condition and the second condition is not satisfied.
[0011] EFFECTS OF THE INVENTION
[0012] According to this disclosure, if both the first and second conditions are met, the robot's movement can be stopped to reliably ensure the safety of the operation. On the other hand, if at least one of the first and second conditions is not met, the robot's movement can be continued to prevent a decrease in the efficiency of the operation. Attached Figure Description
[0013] Figure 1 This is a diagram of a robot system according to one implementation method.
[0014] Figure 2 yes Figure 1 The diagram shows a block diagram of the robot system.
[0015] Figure 3 This is a flowchart illustrating an example of a robot control method.
[0016] Figure 4 This is a flowchart illustrating other examples of robot control methods.
[0017] Figure 5 This is a diagram of a robot system with other implementation methods.
[0018] Figure 6 yes Figure 5 The diagram shows a block diagram of the robot system.
[0019] Figure 7 This is a diagram of a robot system according to another implementation.
[0020] Figure 8 yes Figure 7 The diagram shows a block diagram of the robot system.
[0021] Figure 9 This is a flowchart illustrating another example of a robot control method.
[0022] Figure 10 It means Figure 9 A flowchart of an example of step S32 in the process.
[0023] Figure 11 It means Figure 9 A flowchart of an example of step S34 in the process. Detailed Implementation
[0024] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. Furthermore, in the various embodiments described below, the same elements are labeled with the same reference numerals, and repeated descriptions are omitted. First, refer to... Figure 1 as well as Figure 2 The robot system 10 according to one embodiment will be described. The robot system 10 includes a robot 12 and a control device 50 for controlling the robot 12.
[0025] In the present embodiment, the robot 12 is a vertical multi-joint robot having a robot base 14, a swing body 16, a lower arm section 18, an upper arm section 20, a wrist section 22, and an end effector 24. The robot base 14 is fixed to a floor A of a workpiece unit. The swing body 16 is provided to the robot base 14 so as to be able to swing about a vertical axis. The lower arm section 18 is provided to the swing body 16 so as to be able to turn about a horizontal axis. The upper arm section 20 is provided to a top end portion of the lower arm section 18 so as to be able to turn.
[0026] The wrist section 22 is provided to a top end portion of the upper arm section 20 so as to be able to turn, and the end effector 24 is attached to a top end portion of the wrist section 22 so as to be able to be attached and detached. The wrist section 22 can also be configured to turn the end effector 24 about a plurality of axes orthogonal to each other. The end effector 24 is, for example, a robot hand, a welding torch, a cutting tool, a laser processing head, or a paint applicator, and performs a prescribed work (workpiece processing, welding, cutting processing, laser processing, painting, etc.) on a workpiece (not shown).
[0027] The robot 12 also has a first servo motor 26, a first joint shaft 28, a second servo motor 30, a second joint shaft 32, a third servo motor 34, a third joint shaft 36, a fourth servo motor 38, and a fourth joint shaft 40. The first servo motor 26 is built into the robot base 14 to turn the first joint shaft 28 about a vertical axis. The first joint shaft 28 is coupled to the swing body 16 to transmit the rotational force of the first servo motor 26 to the swing body 16.
[0028] The second servo motor 30 is provided to the swing body 16 to turn the second joint shaft 32 about a horizontal axis. The second joint shaft 32 is coupled to the lower arm section 18 to transmit the rotational force of the second servo motor 30 to the lower arm section 18. The third servo motor 34 is provided to the lower arm section 18 to turn the third joint shaft 36. The third joint shaft 36 is coupled to the upper arm section 20 to transmit the rotational force of the third servo motor 34 to the upper arm section 20. The fourth servo motor 38 is provided to the upper arm section 20 to turn the fourth joint shaft 40. The fourth joint shaft 40 is coupled to the wrist section 22 to transmit the rotational force of the fourth servo motor 38 to the wrist section 22.
[0029] These plurality of servo motors 26, 30, 34, and 38 turn the joint shafts 28, 32, 36, and 40, respectively, under the command from a control device 50, whereby the swing body 16, the lower arm section 18, the upper arm section 20, and the wrist section 22 and the end effector 24 are turned, respectively. Therefore, the joint shafts 28, 32, 36, and 40 and the swing body 16, the lower arm section 18, the upper arm section 20, the wrist section 22, and the end effector 24 constitute movable elements of the robot 12.
[0030] In the present embodiment, a plurality of force sensors 42, 44, 46, and 48 are provided to the joint shafts 28, 32, 36, and 40, respectively. The force sensors 42, 44, 46, and 48 are torque sensors, respectively. Specifically, the first force sensor 42 detects a force (specifically, a torque) applied to the first joint shaft 28, and the second force sensor 44 detects a force (specifically, a torque) applied to the second joint shaft 32.
[0031] In addition, the third force sensor 46 detects a force (specifically, a torque) applied to the third joint shaft 36, and the fourth force sensor 48 detects a force (specifically, a torque) applied to the fourth joint shaft 40. The first force sensor 42, the second force sensor 44, the third force sensor 46, and the fourth force sensor 48 transmit detection data of the detected forces (torques) to the control device 50, respectively.
[0032] The control device 50 is a computer having a processor 52, a memory 54, and an I / O interface 56. The processor 52 has a CPU or a GPU or the like, and is connected to the memory 54 and the I / O interface 56 in a communicable manner via a bus 58. The processor 52 communicates with the memory 54 and the I / O interface 56, and performs an operation for realizing various functions of the control device 50 described later.
[0033] The memory 54 has a RAM or a ROM or the like, and temporarily or permanently stores various data. The memory 54 stores, in advance, a work program WP for causing the robot 12 to perform a prescribed work. The work program WP is a computer program including position data of teaching points at which the end effector 24 should be positioned for a work, command statements for positioning the end effector 24 to the teaching points, and information of movement trajectories and movement speeds between two teaching points. This work program WP can be constructed, for example, by teaching the robot 12 an action of sequentially positioning the end effector 24 to the teaching points.
[0034] The I / O interface 56 has, for example, an Ethernet (registered trademark) port, a USB port, an optical fiber connector, or an HDMI (registered trademark) terminal or the like, and performs data communication with an external device in a wireless or wired manner under the instruction of the processor 52. In the present embodiment, the servo motors 26, 30, 34, and 38 and the force sensors 42, 44, 46, and 48 are connected to the I / O interface 56 in a communicable manner.
[0035] The processor 52 sends commands to the respective servo motors 26, 30, 34, and 38 via the I / O interface 56 in accordance with a work program WP stored in the memory 54, and causes the robot 12 (specifically, the movable elements) to act in order to cause the robot 12 to perform a prescribed work. In addition, the processor 52 acquires detection data detected by the force sensors 42, 44, 46, and 48 when the robot 12 is acting, via the I / O interface 56, and stores the detection data in the memory 54.
[0036] Next, an example of a robot control flow performed by the control device 50 will be described with reference to the flowchart shown in FIG. 6. Figure 3 The robot control flow shown in FIG. 6 is started when the processor 52 receives an automatic work start instruction from an operator, a higher-level controller, or a computer program (for example, the work program WP described above). Figure 3
[0037] In step S1, the processor 52 starts the action of the robot 12. Specifically, the processor 52 sends commands to the respective servo motors 26, 30, 34, and 38 in accordance with the work program WP, and starts a series of actions of moving the end effector 24 to each of the teaching points by the movable elements of the robot 12, and performing a work on the workpiece by the end effector 24.
[0038] In step S2, the processor 52 starts to acquire the external force applied to the movable elements of the robot 12. Specifically, the processor 52 continuously (for example, periodically) acquires detection data from the first force sensor 42, the second force sensor 44, the third force sensor 46, and the fourth force sensor 48.
[0039] On the other hand, the processor 52 calculates the force (referred to as "internal force" in the present specification) acting on the first force sensor 42, the second force sensor 44, the third force sensor 46, and the fourth force sensor 48 due to the mass of the robot 12 and the inertial force generated by the action of the robot 12 each time detection data is acquired. These internal forces can be calculated by substituting the mass of each of the movable elements of the robot 12, the posture of the robot 12, and the moving speed of each of the movable elements of the robot 12 into a known equation of motion.
[0040] Moreover, the processor 52 subtracts the component of the internal force acting on the first force sensor 42 from the detection data of the first force sensor 42 (i.e., the torque applied to the first joint axis 28), thereby calculating the external force torque ET1 applied to the first joint axis 28. Likewise, the processor 52 subtracts the component of the corresponding internal force from the detection data of the second force sensor 44, the third force sensor 46, and the fourth force sensor 48 (i.e., the torque applied to the second joint axis 32, the third joint axis 36, and the fourth joint axis 40), respectively, thereby calculating the external force torques ET2, ET3, and ET4 applied to the second joint axis 32, the third joint axis 36, and the fourth joint axis 40, respectively.
[0041] In this way, the processor 52 obtains the external force torques ET n (n = 1, 2, 3, 4) from the detection data of the force sensors 42, 44, 46, and 48. Therefore, in the present embodiment, the processor 52 functions as an external force obtaining section 60 Figure 2 that obtains the external force (external force torque) ET n applied to the movable elements (joint axes 28, 32, 36, 40) of the robot 12 when the robot 12 is in motion.
[0042] In step S3, the processor 52 starts obtaining the movement information of the movable elements of the robot 12. Specifically, the processor 52 obtains the movement direction MD1 and the movement velocity MV1 of the first joint axis 28, the movement direction MD2 and the movement velocity MV2 of the second joint axis 32, the movement direction MD3 and the movement velocity MV3 of the third joint axis 36, and the movement direction MD4 and the movement velocity MV4 of the fourth joint axis 40 as the movement information.
[0043] As an example, a rotation detector (encoder, or Hall element, etc.) is provided to each of the servo motors 26, 30, 34, and 38 (or the joint axes 28, 32, 36, and 40). These rotation detectors detect the rotational position (or the rotational angle) of the servo motors 26, 30, 34, and 38 (or the joint axes 28, 32, 36, and 40), respectively, as the position feedback FB to the control device 50. The processor 52 can obtain the movement direction MD n and the movement velocity MV n (n = 1, 2, 3, 4) from the position feedback FB from the rotation detectors.
[0044] As another example, the processor 52 can obtain the movement direction MD n and the movement velocity MV nAs another example, processor 52 can also parse job program WP and obtain the movement direction MD based on the position data of the teaching points, command statements, movement trajectory or movement speed contained in job program WP. n and movement speed MV n Thus, in this embodiment, the processor 52 obtains the movement direction MD of the movable elements (joint axes 28, 32, 36, 40). n The direction of movement is obtained by part 62 ( Figure 2 And the movement speed MV of the movable element. n The speed of the 64-unit function is achieved.
[0045] Furthermore, in this embodiment, the movement direction MD n Indicates the rotational direction of the nth joint axes 28, 32, 36, and 40, and the movement speed MV. n This represents the rotational speed (rotational speed) of the nth joint axes 28, 32, 36, and 40. The processor 52 can also, after the start of step S3, obtain the external torque ET obtained in step S2 above. n Simultaneously (specifically, at the same time) acquire movement information (movement direction MD) n and movement speed MV n ).
[0046] In step S4, processor 52 sets the number "n" of the nth joint axes 28, 32, 36, and 40 to "1". In step S5, processor 52 determines whether a first condition is met, which is exceeding a predetermined threshold α. n (First threshold) External torque ET n It is applied to the nth joint axis 28, 32, 36 or 40.
[0047] In this embodiment, the processor 52 moves in the direction MD of the nth joint axis 28, 32, 36 or 40. n External torque ET in the opposite direction n Exceeding the threshold α n When the time is set to n=3, it is determined that the first condition is met. The following explanation addresses the case where the start time of step S4 is set to n=3.
[0048] In this case, the processor 52 determines whether the direction of the recently acquired external torque ET3 applied to the third joint axis 36 is opposite to the movement direction MD3 of the third joint axis 36 acquired synchronously with the external torque ET3, and whether the magnitude of the external torque ET3 exceeds the threshold α3. If the direction of the external torque ET3 is opposite to the movement direction MD3 and its magnitude exceeds the threshold α3, the processor 52 determines that the first condition (i.e., yes) is met for the third joint axis 36, and proceeds to step S6.
[0049] On the other hand, in a case where the magnitude of the external force torque ET3 is smaller than the threshold value a3, or in a case where the external force torque ET3 acts in the moving direction MD3, the processor 52 determines that the first condition is not satisfied (i.e., No) with respect to the third joint axis 36, and proceeds to Step S7. Thus, in the present embodiment, the processor 52 functions as a first condition determination section 66 (refer to FIG. 2) that determines whether or not the first condition is satisfied, the first condition being that the external force ET Figure 2 exceeds the threshold value a n . n The external force ET is applied to the movable element (the nth joint axis 28, 32, 36, or 40).
[0050] In Step S6, the processor 52 determines whether or not a second condition is satisfied, the second condition being that the nth joint axis 28, 32, 36, or 40 is moving. Specifically, the processor 52 determines that the second condition is satisfied when the moving speed MV n of the nth joint axis 28, 32, 36, or 40, which is acquired synchronously with the external force torque ET n when the first condition was determined in the immediately preceding Step S5, exceeds a threshold value b n (the second threshold value) that is decided in advance.
[0051] Assuming that n = 3 is set at the start time point of this Step S6, the processor 52 determines that the second condition is satisfied (i.e., Yes) with respect to the third joint axis 36 when the moving speed MV3 of the third joint axis 36, which is acquired synchronously with the external force torque ET3 when the first condition was determined in the immediately preceding Step S5, exceeds the threshold value b3. The processor 52 proceeds to Step S10 in a case where Yes is determined.
[0052] On the other hand, in a case where the moving speed MV3 is smaller than the threshold value b3, the processor 52 determines that the second condition is not satisfied (i.e., No) with respect to the third joint axis 36, and proceeds to Step S7. Thus, in the present embodiment, the processor 52 functions as a second condition determination section 68 (refer to FIG. 2) that determines whether or not the second condition is satisfied, the second condition being that the movable element (the nth joint axis 28, 32, 36, or 40) is moving. Figure 2
[0053] Further, the processor 52 can also determine that the second condition is satisfied in a case where the acceleration a n of the nth joint axis 28, 32, 36, or 40 exceeds a threshold value g n that is decided in advance, in this Step S6. For example, the acceleration a can be calculated by performing time differentiation on the moving speed MV n that is acquired synchronously with the external force torque ET n when the first condition was determined in the immediately preceding Step S5.n .
[0054] In step S7, the processor 52 increments the number "n" of the nth joint axis 28, 32, 36, 40 by "1" (n = n + 1). In step S8, the processor 52 determines whether the number "n" of the nth joint axis 28, 32, 36, 40 is "5" or more. The number "5" is a number of the total number of the joint axes 28, 32, 36, 40 of the robot 12 + 1.
[0055] The processor 52 determines YES in the case of n = 5, and proceeds to step S9, whereas determines NO in the case of n < 4, and returns to step S5. In this way, the processor 52 repeatedly performs steps S5 to S8 until it determines YES in step S6 or S8, and determines whether the first condition and the second condition are satisfied for each joint axis 28, 32, 36, and 40.
[0056] In step S9, the processor 52 determines whether the series of actions of the robot 12 is finished. For example, the processor 52 can determine whether the action of the robot 12 is finished on the basis of the information of the work program WP and the position feedback FB. The processor 52 stops the robot 12 in the case where it determines that the action of the robot 12 is finished (i.e., YES), and ends the flowchart shown in Fig. 6. On the other hand, the processor 52 returns to step S4 in the case where it determines that the action of the robot 12 is not finished (i.e., NO). Then, the processor 52 repeatedly performs steps S4 to S9 until it determines YES in step S6 or S9. Figure 3
[0057] On the other hand, in the case where it determines YES in step S6, the processor 52 stops the action of the robot 12 in step S10. As an example, the processor 52 sends a stop command to all of the servo motors 26, 30, 34, and 38, and stops the actions of these servo motors 26, 30, 34, and 38 at the same time, thereby stopping the action of the robot 12.
[0058] As another example, a brake mechanism that brakes the output shaft (or the joint axis 28, 32, 36, and 40) of each servo motor 26, 30, 34, and 38 is provided to each servo motor 26, 30, 34, and 38. Also, the processor 52 can stop the rotational action of the output shaft (or the joint axis 28, 32, 36, and 40) of the servo motor 26, 30, 34, and 38 by operating these brake mechanisms, thereby stopping the robot 12 in an emergency.
[0059] In step Sll, the processor 52 causes the robot 12 to perform a retreat action. As an example, the processor 52 can cause the nth joint axis 28, 32, 36, and 40 to move in the direction opposite to the most recently acquired moving direction MD.n the opposite direction MD n ' rotates (i.e., reverses the n-th joint axis), thereby causing the robot 12 to retreat.
[0060] Alternatively, the processor 52 can also determine the position at which the external force is applied to the robot 12 and the direction of the external force based on the most recently acquired external force torques ET1, ET2, ET3, and ET4, cause the movable element corresponding to the position (e.g., the lower arm portion 18, the upper arm portion 20, the wrist portion 22, the end effector 24) to move in the opposite direction of the direction of the external force, thereby causing the robot 12 to retreat.
[0061] As described above, the processor 52 stops the operation of the robot 12 in step S10 when both the first condition and the second condition are satisfied with respect to the 1st joint axis 28, 32, 36, or 40 (i.e., when YES is determined in steps S5 and S6), and on the other hand, continues the operation of the robot 12 until YES is determined in step S9 when at least one of the first condition and the second condition is not satisfied. Thus, the processor 52 functions as an operation control portion 70 that controls the operation of the robot 12 as such. Figure 2 ).
[0062] Thus, in the present embodiment, the robot 12 is caused to continue the operation without being stopped as long as excessive external force is not applied to the movable element (joint axis 28, 32, 36, 40) that is moving. Here, when the robot 12 is operating, in the case where the movable element (the turnable body 16, the lower arm portion 18, the upper arm portion 20, the wrist portion 22, the end effector 24) that is moving collides with the surrounding object (obstacle, operator, etc.) by chance, a large collision force can act on the object. In such a case, the external force applied to the robot 12 from the object acts strongly on the movable element that is moving.
[0063] On the other hand, it is assumed that, when the robot 12 is operating, a part of the movable elements (e.g., the upper arm portion 20) is moving while the other movable elements (e.g., the turnable body 16) are stopped, even if external force is applied to the movable element that is stopped, the movable element that is stopped does not further collide with the surrounding object, and thus, the safety can sometimes be ensured.
[0064] According to the present embodiment, in the case where both the first condition and the second condition are satisfied, the possibility that a large force is imparted to the surrounding object is high, and thus, the safety of the work is reliably ensured by stopping the operation of the robot 12, and on the other hand, in the case where at least one of the first condition and the second condition is not satisfied, the efficiency of the work can be prevented from decreasing by continuing the operation of the robot 12.
[0065] Regarding this effect, in a more detailed description using this embodiment as an example, it is assumed that during the robot 12's movement starting in step S1, the processor 52 rotates the first joint axis 28 while stopping the second joint axis 32, the third joint axis 36, and the fourth joint axis 40. In this case, the rotary body 16, lower arm 18, upper arm 20, wrist 22, and end effector 24 located at the top end of the first joint axis 28 rotate around the first joint axis 28.
[0066] At this time, if the rotating movable element (rotor 16, lower arm 18, upper arm 20, wrist 22 or end effector 24) accidentally collides with the surrounding objects (obstacles, operators, etc.) and the external torque ET1 applied to the first joint axis 28 exceeds the threshold α1, the processor 52 determines that it is true in steps S5 and S6, and stops the movement of the robot 12 in step S10.
[0067] On the other hand, assuming that the external torque ET1 applied to the first joint axis 28 does not exceed the threshold α1, even if the external torque ET2, ET3 or ET4 applied to the second joint axis 32, the third joint axis 36 or the fourth joint axis 40 exceeds the threshold α2, α3 or α4, since the second joint axis 32, the third joint axis 36 or the fourth joint axis 40 does not rotate, the processor 52 determines no in step S6 and continues the action of the robot 12.
[0068] When the movable elements (rotor 16, lower arm 18, upper arm 20, wrist 22, or end effector 24) collide with surrounding objects during the rotation of the first joint axis 28, a large external torque ET1 will inevitably be applied to the first joint axis 28. Therefore, if the external torque ET1 does not exceed the threshold α1, even if we assume that the external torques ET2, ET3, or ET4 at this time exceed the thresholds α2, α3, or α4, it can be considered that the external torques ET2, ET3, or ET4 are not caused by the action of the robot 12 (i.e., the rotation of the first joint axis 28), and thus it can be presumed that the possibility of applying a large force to the surrounding objects is low. In this way, the robot 12 continues to move even if at least one of the first and second conditions is not met, thereby preventing a decrease in the efficiency of the operation.
[0069] Furthermore, in this embodiment, the processor 52 moves in the direction MD. n The opposite direction of MD n 'External torque ET n Exceeding the threshold α n The condition is determined to be met at that time. Here, in the case where a moving movable element accidentally collides with a surrounding object, the external force exerted on the movable element by that object acts as a reaction force in the opposite direction MD.n strongly.
[0070] On the other hand, for example, in the case where the robot 12 cooperates with the operator, in the case where the operator intentionally applies an external force to a prescribed movable element (for example, the end effector 24) of the robot 12 to move the movable element, the direction of the external force substantially coincides with the moving direction of the movable element.
[0071] According to the present embodiment, the first condition is determined in accordance with the external force torque ET n in the opposite direction MD n of the moving direction, whereby in the case where the possibility that the movable element being moved accidentally collides with the surrounding object is high, the robot 12 can be stopped, on the other hand, in the case where the operator intentionally applies an external force to the robot 12 for cooperative work as described above, the robot 12 can continue to operate. Thus, the safety of the work can be reliably ensured, and the efficiency of the cooperative work or the like can be prevented from being reduced.
[0072] Further, in the present embodiment, the robot 12 is caused to perform a retreat operation after the robot 12 is stopped (step Sll). According to this configuration, the safety of the surrounding object can be more effectively ensured. However, step Sll can be omitted, and the processor 52 can stop the robot 12 only in step S10.
[0073] Further, in the above-described step S5, the processor 52 can determine whether the first condition is satisfied (that is, is) without determining whether the direction of the external force torque ET n is opposite to the moving direction MD n , but can determine that the first condition is satisfied (that is, is) in the case where the external force torque ET n is in any direction and the magnitude thereof exceeds the threshold value a n . In this case, the processor 52 does not need to acquire the moving direction MD n in the above-described step S3, and thus the moving direction acquisition section 62 can be omitted from the control device 50.
[0074] Further, in the above-described step S6, the processor 52 can determine whether the second condition is satisfied without comparing the moving speed MV n with the threshold value b n . For example, the processor 52 can determine that the nth joint axis 28, 32, 36, or 40 is being moved (that is, the second condition is satisfied) in the case where the value of the position feedback FB from the rotation detector has changed.
[0075] Instead, processor 52 can also determine whether the nth joint axis 28, 32, 36, or 40 is moving based on instructions to the nth servo motor 26, 30, 34, or 38, or command statements contained in the work program WP. In this case, processor 52 does not need to obtain the movement speed MV in step S3. n Therefore, the speed acquisition unit 64 can be omitted from the control device 50.
[0076] In addition, it can also be changed. Figure 3 The process flow shown is in sequence. As an example, processor 52 can also execute step S6 after step S4 to determine whether the second condition is met. If the second condition is met (yes), it executes step S5 to determine whether the first condition is met. If yes, it proceeds to step S10. That is, in this case, processor 52 determines the first condition (i.e., external torque ET) for the movable element (nth joint axis) that is determined to be moving. n Does it exceed the threshold α? n ).
[0077] As another example, processor 52 may execute step S4 after step S1, and then execute step S6 after step S4 to determine whether the second condition is met. Furthermore, if the second condition is determined to be met (yes), processor 52 may execute step S2 to obtain the external torque ET applied to the nth joint axis 28, 32, 36, or 40. n Then, step S3 is executed to obtain the movement information of the nth joint axis 28, 32, 36 or 40.
[0078] Then, step S5 can be executed after step S3 to determine whether the first condition is met. If the condition is met, the process proceeds to step S10. That is, in this case, the processor 52 applies an external torque ET to the movable element (nth joint axis) that is determined to be moving. n A series of solutions including obtaining the information, obtaining mobile information, and determining the first condition.
[0079] Next, refer to Figure 4 Other examples of robot control processes executed by control device 50 will be described. Furthermore, in Figure 4 In the process shown, for and Figure 3 The same process flow is labeled with the same step numbers, and repeated descriptions are omitted. The automatic job start command is received by processor 52 and begins. Figure 4 The process is shown below.
[0080] After the step S1, in a step S21, the processor 52 functions as the external force acquisition section 60 to acquire the external force EF applied to the movable element of the robot 12. Specifically, the processor 52 acquires the detection data from the first force sensor 42, the second force sensor 44, the third force sensor 46, and the fourth force sensor 48, subtracts the component of the corresponding internal force from the detection data, respectively, and thereby calculates the external force torques ET1, ET2, ET3, and ET4, respectively.
[0081] Further, the processor 52 acquires the external force EF applied to the robot 12 based on these external force torques ET1, ET2, ET3, and ET4. Here, the external force EF applied to the prescribed portion (e.g., the end effector 24) of the robot 12 acts on all the joint axes 28, 32, 36, 40 located on the base end side of the prescribed portion.
[0082] Here, the external force torque ET acting on the joint axes 28, 32, 36, 40 when the external force EF of a prescribed magnitude and direction is applied to the prescribed portion of the robot 12 can be made known based on the equation of motion, an experimental method, or simulation, etc. In other words, the portion of the robot 12 to which the external force EF is applied and the magnitude and direction of the external force EF can be estimated based on the external force torque acting on the joint axes 28, 32, 36, 40.
[0083] The processor 52 determines which movable element (the turnable body 16, the lower arm portion 18, the upper arm portion 20, the wrist portion 22, or the end effector 24) of the robot 12 the external force EF is applied to based on the calculated external force torques ET1, ET2, ET3, and ET4, and acquires the magnitude and direction of the external force EF.
[0084] In a step S22, the processor 52 acquires movement information of the movable element determined in the immediately preceding step S21 to which the external force EF is applied. Assume that, in the case where the upper arm portion 20 of the robot 12 is determined in the immediately preceding step S21 to which the external force EF is applied, the processor 52 functions as the above-mentioned velocity acquisition section 64 to acquire the movement velocity MV U (or acceleration) of the upper arm portion 20 as the movement information.
[0085] The movement velocity MV U of the upper arm portion 20 can be the movement velocity MV U of the upper arm portion 20 in a robot coordinate system (or a world coordinate system of a 3-dimensional space of a prescribed work cell) set for the robot 12 in order to control the robot 12, or can be the movement velocity (i.e., rotational velocity) MV U of the upper arm portion 20 relative to the lower arm portion 18 to which the base end side of the upper arm portion 20 is connected.
[0086] For example, the processor 52 can obtain the movement speed MV based on the position feedback FB from the rotation detectors of the servo motors 26, 30, and 34 configured on the base side of the upper arm 20, the instructions to the servo motors 26, 30, and 34, or the information (command statements, etc.) contained in the work program WP. U Furthermore, the processor 52 functions as the aforementioned movement direction acquisition unit 62, acquiring the movement direction MD of the upper arm 20 based on position feedback FB, instructions, or operating procedures WP. U The movement speed MD U The direction of movement MD of the upper arm 20 in the robot coordinate system (or world coordinate system) mentioned above can be... U Alternatively, it could be the direction of movement (i.e., the direction of rotation) of the upper arm portion 20 relative to the lower arm portion 18 connected to the base end of the upper arm portion 20. U .
[0087] In step S23, the processor 52 functions as a first condition determination unit 66, determining whether a first condition is met. This first condition is that an external force FT exceeding a predetermined threshold δ (first threshold) is applied to the movable element. For example, different thresholds δ1, δ2, δ3, δ4, and δ5 of the external force EF are set for the rotating body 16, lower arm 18, upper arm 20, wrist 22, and end effector 24, which are movable elements.
[0088] The following describes the case where an external force EF is determined to be applied to the upper arm 20 of the robot 12 in the most recent step S21. In this case, the processor 52 moves in the direction MD of the upper arm 20. U The opposite direction of MD U 'External force EF U When the threshold δ3 is exceeded, it is determined that the first condition is met (i.e., yes).
[0089] Specifically, processor 52 determines the external force EF obtained in the most recent step S21. U Is the direction the same as the movement direction MD of the upper arm 20 obtained in the most recent step S22? U Conversely, and the external force EF U Does the size exceed the threshold δ3? Processor 52 under external force EF U Direction and movement direction MD U Conversely, if its size exceeds the threshold δ3, it is determined that the first condition is met (i.e., yes).
[0090] At this time, processor 52 can also be subjected to external force EF. U Direction and movement direction MD UWhen the angle θ between them is within a specified range (e.g., θ > 90°), it is determined to be an external torque ET. n The direction is the direction of movement (MD) n The opposite direction. Alternatively, processor 52 can also be in the direction of external force EF. U The unit vector and the direction of movement MD U If the inner product IP of the unit vectors is within a specified range (e.g., the range where IP < 0), it is determined to be an external force torque ET. n The direction is the direction of movement (MD) n The opposite direction.
[0091] Instead, processor 52 can also calculate the external force EF. U MD of movement direction U The component EF in the opposite direction U ', determine the component EF U 'Whether it exceeds the threshold δ3 in the component EF?' U If the threshold δ3 is exceeded, it is determined as yes. If the processor 52 determines yes in step S23, it proceeds to step S24; otherwise, if it determines no, it proceeds to step S9.
[0092] Furthermore, in step S23, the processor 52 may also disregard the direction of the external force EF applied to the movable element and determine that the first condition (yes) is met if the magnitude of the external force EF exceeds the threshold δ. Alternatively, it may not set thresholds δ1, δ2, δ3, δ4, and δ5 for each of the multiple movable elements, but instead set a fixed threshold δ0 for all movable elements.
[0093] In step S24, the processor 52 functions as a second condition determination unit 68, determining whether a second condition is met, which is that the movable element under an applied external force EF is moving. For example, if it was determined in the most recent step S21 that an external force EF was applied to the upper arm 20, the processor 52 obtained the moving speed MV of the upper arm 20 in the most recent step S22. U When the acceleration exceeds a predetermined threshold ε (the second threshold), it is determined that the second condition is met (i.e., yes).
[0094] Furthermore, the processor 52 is also capable of not affecting the movement speed MV. U The value is compared with a threshold ε to determine whether the second condition is met. For example, the processor 52 may also determine that the upper arm 20 is moving (i.e., the second condition is met) if the value of the position feedback FB from the rotation detector provided on the third servo motor 34 changes.
[0095] Instead, the processor 52 can also determine whether the upper arm section 20 is moving based on the command to the third servo motor 34, or a command statement included in the work program WP, and the like. The processor 52 proceeds to step S10 to stop the operation of the robot 12 when the determination in step S24 is YES, and proceeds to step S9 when the determination is NO. In this way, the processor 52 repeats steps S21 to S24 and S9 until the determination in step S9 or S24 is YES.
[0096] As described above, in the present embodiment, the processor 52 acquires the external force EF applied to the movable element, which is the turnable body 16, the lower arm section 18, the upper arm section 20, the wrist section 22, or the end effector 24, and stops the robot 12 in step S10 when both the first condition that the external force EF exceeding the threshold value δ is applied to the movable element and the second condition that the movable element is moving are satisfied.
[0097] On the other hand, the processor 52 continues the operation of the robot 12 until the determination in step S9 is YES when at least one of the first condition and the second condition is not satisfied. According to this configuration, as in the above-described embodiment, the safety of the work can be reliably ensured, and the efficiency of the work can be prevented from decreasing.
[0098] Further, in the robot system 10, a plurality of force sensors 42, 44, 46, and 48 are provided, but the present embodiment is not limited thereto, and one force sensor capable of detecting forces in a plurality of directions can be provided. Figure 5 and Figure 6 such an embodiment is shown in Figure 5 and Figure 6 The robot system 80 shown in Figs. 8 and 9 is different from the above-described robot system 10 in the following configuration. That is, the robot system 80 has a force sensor 82 instead of the above-described force sensors 42, 44, 46, and 48.
[0099] The force sensor 82 is, for example, a 6-axis force sensor having a plurality of strain gauges (not shown) and is sandwiched between the robot base 14 and a fixed plate 84 fixed to the floor A of the work cell. When a force is applied to the force sensor 82, the strain gauges of the force sensor 82 transmit detection data corresponding to the applied force to the control device 50.
[0100] The processor 52 functions as the external force acquisition unit 60, and acquires the external force EF applied to the robot 12 from the detection data received from the force sensor 82 via the I / O interface 56. Specifically, the processor 52 calculates the forces in the x-axis, y-axis, and z-axis directions of the sensor coordinate system SC provided to the force sensor 82, and the torques around the x-axis, y-axis, and z-axis from the detection data from the force sensor 82. Next, the processor 52 subtracts the components of the internal force acting on the force sensor 82 due to the mass of the robot 12 and the inertial force generated by the movement of the robot 12 from the forces in the six-axis directions of the sensor coordinate system SC, and calculates the external force components in the six-axis directions.
[0101] Here, the external force components in the six-axis directions of the sensor coordinate system SC when the external force EF of a prescribed magnitude and direction is applied to a prescribed portion of the robot 12 can be made known from a kinematic equation, an experimental method, or simulation, or the like. In other words, the portion of the robot 12 to which the external force EF is applied and the magnitude and direction of the external force EF can be estimated from the external force components in the six-axis directions of the sensor coordinate system SC.
[0102] In this way, the processor 52 can determine which movable element (the turnable body 16, the lower arm portion 18, the upper arm portion 20, the wrist portion 22, or the end effector 24) of the robot 12 the external force EF is applied to from the external force components in the six-axis directions of the sensor coordinate system SC, and acquire the magnitude and direction of the external force EF.
[0103] In the robot system 80, the processor 52 of the control device 50 controls the robot 12 by executing the robot control flow shown in Figure 4 In this case, in step S2, the processor 52 acquires the external force EF from the detection data of the force sensor 82 as described above.
[0104] Furthermore, the structures of the robot systems 10 and 80 can also be combined. For example, the force sensor 82 of the robot system 80 can be applied to the robot system 10, and the processor 52 of the robot system 10 can execute the flow shown in Figure 3 in parallel with the flow shown in Figure 4 In this case, the control device 50 of the robot system 10 can also have a first processor 52A that executes the flow shown in Figure 3 and a second processor 52B that executes the flow shown in Figure 4
[0105] Next, the robot system 10 will be described with reference to Figure 7 and Figure 8 The robot system 90 in another embodiment will be described. The robot system 90 differs from the robot system 10 described above in the following structure. That is, the robot system 90 also includes a handle 92, a hand guidance sensor 94, and an operation mode switching switch 96.
[0106] The handle 92 is disposed on the base 24a of the end effector 24 and has an ergonomic shape that is easy for the operator to hold. The hand guidance sensor 94, for example a 6-axis force sensor, is inserted between the handle 92 and the base 24a. The hand guidance sensor 94 detects the operating force HF applied by the operator to the handle 92 and sends the detection data to the control device 50.
[0107] The operation mode switching switch 96, which includes a physical switch, button, touch sensor, etc., is located on the handle 92. The operation mode switching switch 96 switches the robot 12's operation mode between automatic operation mode and manually guided operation mode. The automatic operation mode, as described in step S1 above, is an operation mode in which the robot 12 automatically performs prescribed tasks according to the work program WP.
[0108] On the other hand, as described later, the manual operation mode is an operation mode in which the operator manually moves the robot 12 according to the operating force HF applied to the handle 92. When the operation mode switching switch 96 is turned on, the operation mode switching switch 96 sends a manual guidance signal "on" (or "1") to the control device 50.
[0109] Next, refer to Figure 9 The robot control flow executed by the control device 50 of the robot system 90 is described. For example, when the control device 50 of the robot system 90 is started... Figure 9 The process is shown below. In step S31, the processor 52 determines whether the hand guidance signal is set to "on".
[0110] Specifically, when the operator turns on the operation mode switch 96, the switch sends a manual guidance signal "on" (or "1") to the control device 50. The processor 52 determines "yes" upon receiving the manual guidance signal "on" and proceeds to step S32. Conversely, the processor 52 determines "no" upon receiving the manual guidance signal "off" (or "0") and proceeds to step S33. In step S32, the processor 52 switches the robot 12's operation mode to the manual guidance operation mode and executes the control flow of the manual guidance operation mode. Step S32 will be described later.
[0111] In step S33, the processor 52 determines whether or not the automatic operation start instruction described above is received from the operator, the upper-level controller, or the computer program (for example, the work program WP described above). The processor 52 determines YES in the case where the automatic operation start instruction is received, proceeds to step S34, and on the other hand, determines NO in the case where the automatic operation start instruction is not received, proceeds to step S35. In step S34, the processor 52 shifts the operation mode of the robot 12 to the automatic operation mode, and executes the control flow of the automatic operation mode. The step S34 will be described later.
[0112] In step S35, the processor 52 determines whether or not the shutdown instruction to end the operation of the control device 50 is accepted. The processor 52 determines YES in the case where the shutdown instruction is accepted, ends the operation of the control device 50, and thus, ends the control flow of the manual guidance operation mode. The step S35 will be described later. Figure 9 On the other hand, the processor 52 determines NO in the case where the shutdown instruction is not accepted, returns to step S31.
[0113] Reference will be made to Figure 10 The control flow of the step S32, the manual guidance operation mode, will be described. Further, in the control flow shown in FIG. 6, the same step number is attached to the same process as that of Figure 10 Figure 3 The same step number is attached to the same process as that of the step S2 and S3 described above, and the repeated description is omitted. After the start of the step S32, the processor 52 executes the steps S2 and S3 described above.
[0114] In step S41, the processor 52 acquires the operation force HF. Specifically, the processor 52 acquires the detection data of the operation force HF from the hand guidance sensor 94. Further, the processor 52 acquires the magnitude and the direction of the operation force HF applied to the handle 92 from the detection data of the hand guidance sensor 94 and the data of the position and the posture of the end effector 24 at that time.
[0115] In step S42, the processor 52 determines whether or not the magnitude of the operation force HF acquired in the latest step S41 exceeds the threshold value ζ (HF≥ζ) decided in advance. The processor 52 proceeds to step S43 in the case where the magnitude of the operation force HF is determined to exceed the threshold value ζ (that is, YES), and on the other hand, proceeds to step S44 in the case where the magnitude of the operation force HF is determined not to exceed the threshold value ζ (that is, NO).
[0116] In step S43, the processor 52 causes the robot 12 to operate in such a manner that the end effector 24 is moved in accordance with the operation force HF. Specifically, the processor 52 sends an instruction to each of the servo motors 26, 30, 34, and 38, and causes the end effector 24 to move only by a prescribed distance d (for example, 10 cm) in the direction of the operation force HF.
[0117] Further, the processor 52 can also vary the distance d moved in this step S43 in accordance with the magnitude of the operation force HF acquired in the most recent step S41 (for example, the greater the operation force HF, the greater the distance d is increased). After the step S43, the processor 52 successively executes the steps S4 to S8 and S10 as in the flow of Figure 3 . Here, the processor 52 will execute the step S5 in the flow of Figure 10 with reference to the threshold value a n whose value is set to a n_1 .
[0118] In the case where the determination in the step S8 is YES, in a step S44, the processor 52 determines whether or not the shutdown instruction is accepted as in the step S35 described above. The processor 52 ends the operation of the control device 50 in the case where the determination is YES, and thus ends the flow shown in Figure 9 . On the other hand, the processor 52 proceeds to a step S45 in the case where the determination is NO.
[0119] In the step S45, the processor 52 determines whether or not the hand guidance signal is set to "off" (or "0"). Specifically, when the operator sets the operation mode switching switch 96 to off, the operation mode switching switch 96 sends the hand guidance signal "off" (or "0") to the control device 50. The processor 52 determines YES in the case where the hand guidance signal is "off", and proceeds to the step S33 in Figure 9 . On the other hand, the processor 52 determines NO in the case where the hand guidance signal is "on", and returns to the step S41 in Figure 10 .
[0120] In this way, the processor 52 monitors whether or not the first condition and the second condition are satisfied with respect to each joint axis 28, 32, 36 and 40 in the course of executing the hand guidance operation in which the robot 12 is caused to operate in accordance with the operation force HF, and stops or continues the operation of the robot 12 in correspondence therewith. Further, in the flow shown in Figure 10 , the processor 52 does not execute the step S11 described above after the step S10, and ends the flow shown in Figure 10 .
[0121] Next, the control flow of the automatic operation mode of the step S34 will be described with reference to Figure 11 . Further, in the flow shown in Figure 11 , the same step numbers are attached to the same procedures as in Figure 3 and Figure 9 , and the repeated description is omitted. After the step S34 is started, the processor 52 successively executes the steps S1 to S11 described above as in the flow of Figure 3 .
[0122] Here, the value of the threshold value α n referenced by the processor 52 when executing step S5 in Figure 11 is set to α n_2 (<α n_1 ). Also, the processor 52, in the case of determining NO in step S9, executes the above-described step S31, in the case of determining YES, proceeds to step S32 in Figure 9 , and in the case of determining NO, returns to step S4 in Figure 11 .
[0123] As described above, in the present embodiment, the processor 52, in the hand-guided operation mode in which step S32 is executed, sets the threshold value α n used in step S5 to determine the first condition to the value α n_1 , and in the automatic operation mode in which step S34 is executed, sets the threshold value α n used in step S5 to determine the first condition to the value α n_2 (<α n_1 ). Thus, the processor 52 functions as a threshold value setting section 98 that changes the threshold value α n according to the operation mode of the robot 12. Figure 8
[0124] Here, in the hand-guided operation mode, as described above, the robot 12 is manually caused to act in accordance with the force intentionally applied to the handle 92 by the worker. By setting the threshold value α n_1 used in such a hand-guided operation mode to be larger than the threshold value α n_2 used in the automatic operation mode, it is possible to avoid stopping the robot 12 due to the force intentionally applied by the worker.
[0125] Further, in the robot system 90, it is also possible to apply the force sensor 82 instead of the force sensors 42, 44, 46, and 48. In this case, it is understood that steps S21 to S24 in Figure 4 can be applied to the flows shown in Figure 10 and Figure 11 . In addition, the above-described force sensors 42, 44, 46, and 48 can also be configured to detect the torque applied to the output shaft of the servo motors 26, 30, 34, and 38.
[0126] Further, the force sensor 82 described above can also be provided at any portion of the robot 12 (for example, the lower arm portion 18). Further, in the embodiment described above, a case where four joint axes 28, 32, 36, and 40, four servo motors 26, 30, 34, and 38, and four force sensors 42, 44, 46, and 48 are provided is described. However, the number of joint axes, servo motors, and force sensors is not limited to four, and can be any positive number other than four.
[0127] Further, the robot 12 is not limited to a vertical multi-joint robot, and can be any type of robot having a movable element, such as a horizontal multi-joint robot, a parallel link robot, and the like. The present disclosure has been described above through embodiments, but the embodiments described above do not limit the invention of the claims.
[0128] Legend of Reference Numerals
[0129] 10, 80, 90 Robot system
[0130] 12 Robot
[0131] 50 Control device
[0132] 52 Processor
[0133] 60 External force acquisition unit
[0134] 62 Movement direction acquisition unit
[0135] 64 Speed acquisition unit
[0136] 66 First condition determination unit
[0137] 68 Second condition determination unit
[0138] 70 Motion control unit
Claims
1. A control device of a robot having a plurality of movable elements, characterized by comprising: an external force acquisition section that acquires an external force applied to each of the movable elements when the robot is in motion; a first condition determination section that determines whether a first condition is satisfied, the first condition being that the external force exceeding a first threshold value predetermined in advance is applied to one of the movable elements; a second condition determination section that determines whether a second condition is satisfied, the second condition being that the one movable element is moving; and a motion control section that stops a motion of the robot by stopping the plurality of movable elements when both the first condition and the second condition are satisfied, and on the other hand, continues the motion of the robot caused by a movement of the movable element other than the one movable element when the first condition is satisfied and the second condition is not satisfied.
2. The control device according to claim 1, characterized in that the control device further comprises a speed acquisition section that acquires a moving speed of the one movable element, and the second condition determination section determines that the second condition is satisfied when the moving speed exceeds a second threshold value predetermined in advance.
3. The control device according to claim 1 or 2, characterized in that the control device further comprises a moving direction acquisition section that acquires a moving direction of the one movable element, and the first condition is determined to be satisfied when the external force in the opposite direction of the moving direction exceeds the first threshold value.
4. The control device according to claim 1 or 2, characterized in that the control device further comprises a threshold value setting section that changes the first threshold value in accordance with an operation mode of the robot.
5. The control device according to claim 1 or 2, characterized in that the motion control section causes the robot to perform a retreat motion after stopping the motion of the robot.
6. The control device according to claim 1 or 2, characterized in that the second condition determination section determines whether the second condition is satisfied with respect to the one movable element in a case where the first condition determination section determines that the first condition is satisfied with respect to the one movable element.
7. The control device according to claim 1 or 2, characterized in that the movable element is a joint axis of the robot, and the external force acquisition section acquires an external force torque applied to each of the joint axes as the external force.
8. A robot system comprising: a robot; and the control device according to any one of claims 1 to 7 that controls the robot.
9. The robot system according to claim 8, characterized in that the robot system further comprises a force sensor that detects a force applied to the movable element, and the external force acquisition section acquires the external force in accordance with detection data of the force sensor.
10. A control method of a robot having a plurality of movable elements, characterized by comprising: acquiring an external force applied to each of the movable elements when the robot is in motion; determining whether a first condition is satisfied, the first condition being that the external force exceeding a first threshold value predetermined in advance is applied to one of the movable elements; and stopping a motion of the robot by stopping the plurality of movable elements when both the first condition and a second condition are satisfied, and on the other hand, continuing the motion of the robot caused by a movement of the movable element other than the one movable element when the first condition is satisfied and the second condition is not satisfied. 8. A robot system, characterized by determining whether a second condition is satisfied, the second condition being that the one movable element is moving, when both the first condition and the second condition are satisfied, stopping the movement of the robot by stopping the plurality of movable elements, and on the other hand, when the first condition is satisfied and the second condition is not satisfied, continuing the movement of the robot caused by the movement of the movable elements other than the one movable element.
Citation Information
Patent Citations
Human-robot cooperative type industrial robot having lead-through function
JP2015199174A
Human-robot interactive system
CN102371586A
Robot arm, contact detection method for robot arm, and device equipped with robot arm
JP2010228028A
Control Device, Robot System, And Robot
US20200061817A1