Master-slave robot system

The master-slave robot system addresses posture discrepancies by limiting acceleration and speed, using judgment units and fine-tuning, ensuring smooth posture alignment and user comfort.

JP7755154B2Active Publication Date: 2025-10-16DENSO WAVE INC
View PDF 13 Cites 0 Cited by

Patent Information

Application Number
JP2022006679
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-01-19
Publication Date
2025-10-16
Estimated Expiration
2042-01-19

AI Technical Summary

Technical Problem

In conventional master-slave robot systems, the sudden change in posture of the master robot to a posture different from the user's intention can cause discomfort due to discrepancies between the master and slave robots' postures.

Method used

A master-slave robot system with a control unit that limits the acceleration and speed of the master robot's operation to match the slave robot's posture, includes judgment units to detect user input, and allows fine-tuning operations to align the postures gradually, preventing abrupt changes.

Benefits of technology

Prevents user discomfort by ensuring the master robot's posture matches the slave robot's smoothly and intentionally, maintaining user control over the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007755154000001
    Figure 0007755154000001
  • Figure 0007755154000002
    Figure 0007755154000002
  • Figure 0007755154000003
    Figure 0007755154000003
Patent Text Reader

Abstract

To inhibit giving a sense of incongruity to a user when a posture of a master robot is matched to a posture of a servant robot in a master-servant robot system.SOLUTION: A master-servant robot system (10) comprises: a master robot (20) whose posture changes according to external force applied by a user; a servant robot (30) whose posture is controlled so as to match the posture of the master robot; and control units (26, 36) for controlling the master robot and the servant robot. When cancelling misalignment between a posture of the master robot and a posture of the servant robot, the control units restrict acceleration that causes the master robot to operate to limited acceleration or lower, in order to match the posture of the master robot to the posture of the servant robot.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a master-slave robot system that includes a master robot whose posture is changed by an external force applied by a user, and a slave robot whose posture is controlled to match the posture of the master robot. [Background technology]

[0002] Conventionally, there is a robot teaching system that switches between a direct control mode in which the posture of a target robot is controlled to match the posture of a control robot operated by a worker, and a detailed control mode in which, when the magnitude of an external force detected by a detection unit exceeds a preset threshold, the posture of the target robot is controlled in preset operation units in the direction of the detected external force (see Patent Document 1). In the teaching system described in Patent Document 1, in the detailed control mode, when the posture of the control robot and the posture of the target robot deviate from each other, the posture of the control robot is made to match the posture of the target robot. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2019-55458 A Summary of the Invention [Problem to be solved by the invention]

[0004] However, in the teaching system described in Patent Document 1, when the posture of the operating robot (master robot) is matched with the posture of the target robot (slave robot), the posture of the operating robot may suddenly change to a posture different from that intended by the worker (user), which may cause the worker to feel uncomfortable.

[0005] The present invention has been made to solve these problems, and its main purpose is to prevent the user from feeling uncomfortable when matching the posture of the master robot to the posture of the slave robot in a master-slave robot system. [Means for solving the problem]

[0006] The first means for solving the above problem is: A master-slave robot system comprising: a master robot whose posture is changed by an external force applied by a user; a slave robot whose posture is controlled to match the posture of the master robot; and a control unit that controls the master robot and the slave robot, When eliminating the discrepancy between the posture of the main robot and the posture of the slave robot, the control unit limits the acceleration at which the main robot operates to a limited acceleration or less, thereby causing the posture of the main robot to match the posture of the slave robot.

[0007] According to the above configuration, the master-slave robot system includes a master robot whose posture is changed by an external force applied by a user, a slave robot whose posture is controlled to match the posture of the master robot, and a control unit that controls the master robot and the slave robot. Therefore, by applying an external force to the master robot to perform an operation to change the posture of the master robot, the user can control the posture of the slave robot to match the posture of the master robot (hereinafter referred to as "master-slave robot operation"). The control unit may include a first control unit provided in the master robot to control the master robot, and a second control unit provided in the slave robot to control the slave robot. Alternatively, the control unit may be a single control unit provided in the master robot or the slave robot to control the master robot and the slave robot.

[0008] Here, if the posture of the slave robot is fine-tuned (changed) without matching the posture of the master robot, a deviation will occur between the posture of the master robot and the posture of the slave robot. Also, if the model (shape) of the master robot and the model (shape) of the slave robot are different, a deviation may occur between the posture of the master robot and the posture of the slave robot while master-slave robot operation is being performed. In these cases, if control is simply executed to match the posture of the master robot to the posture of the slave robot, the posture of the master robot may be suddenly changed to a posture different from the user's intention, which may cause the user to feel uncomfortable.

[0009] In this regard, when eliminating the deviation between the posture of the main robot and the posture of the slave robot, the control unit limits the acceleration at which the main robot is operated to a value equal to or less than the limited acceleration, thereby causing the posture of the main robot to match the posture of the slave robot. This makes it possible to prevent abrupt changes in the speed at which the main robot is operated, and ultimately to prevent abrupt changes in the posture of the main robot. Therefore, even if the posture of the main robot is changed to a posture different from the user's intention when the posture of the main robot is matched to the posture of the slave robot, it is possible to prevent the user from feeling uncomfortable.

[0010] In the second means, when the control unit of the master-slave robot system eliminates the discrepancy between the posture of the master robot and the posture of the slave robot, it further limits the speed at which the master robot is operated to a speed limit or less, thereby causing the posture of the master robot to match that of the slave robot. With this configuration, it is possible to prevent the posture of the master robot from being changed to a posture different from that intended by the user when the speed of the master robot exceeds the speed limit, and it is further possible to prevent the user from feeling uncomfortable.

[0011] The third means includes a judgment unit that judges whether the user is applying the external force to the main robot, and when eliminating the discrepancy between the posture of the main robot and the posture of the slave robot, the control unit aligns the posture of the main robot with the posture of the slave robot, on the condition that the judgment unit judges that the external force is not being applied.

[0012] The fourth method is A master-slave robot system comprising: a master robot whose posture is changed by an external force applied by a user; a slave robot whose posture is controlled to match the posture of the master robot; and a control unit that controls the master robot and the slave robot, a determination unit that determines whether the user is applying the external force to the main robot, When eliminating the discrepancy between the posture of the main robot and the posture of the slave robot, the control unit causes the posture of the main robot to match the posture of the slave robot, on the condition that the judgment unit determines that the external force is not being applied.

[0013] According to the above configuration, when eliminating the deviation between the attitude of the main robot and the attitude of the slave robot, if the user is not applying an external force to the main robot, the attitude of the main robot is made to match the attitude of the slave robot. On the other hand, if the user is applying an external force to the main robot when eliminating the deviation between the attitude of the main robot and the attitude of the slave robot, control to make the attitude of the main robot match the attitude of the slave robot is not executed. Therefore, when the user is applying an external force to the main robot, it is possible to prevent the attitude of the main robot from being changed to a posture different from the user's intention, and to prevent the user from feeling uncomfortable.

[0014] The fifth means includes a judgment unit that judges whether the user is touching the main robot, and when eliminating the discrepancy between the posture of the main robot and the posture of the slave robot, the control unit causes the posture of the main robot to match the posture of the slave robot, on the condition that the judgment unit judges that the user is not touching the main robot.

[0015] The sixth measure is A master-slave robot system comprising: a master robot whose posture is changed by an external force applied by a user; a slave robot whose posture is controlled to match the posture of the master robot; and a control unit that controls the master robot and the slave robot, a determination unit that determines whether the user is touching the main robot, When eliminating the discrepancy between the posture of the main robot and the posture of the slave robot, the control unit causes the posture of the main robot to match the posture of the slave robot, on the condition that the judgment unit determines that the main robot is not being touched.

[0016] According to the above configuration, when eliminating the deviation between the posture of the main robot and the posture of the slave robot, if the user is not touching the main robot, the posture of the main robot is made to match the posture of the slave robot. On the other hand, when eliminating the deviation between the posture of the main robot and the posture of the slave robot, if the user is touching the main robot, control to make the posture of the main robot match the posture of the slave robot is not executed. Therefore, when the user is touching the main robot, it is possible to prevent the posture of the main robot from being changed to a posture different from the user's intention, and to prevent the user from feeling uncomfortable.

[0017] The seventh means allows the user to perform a fine-tuning operation to fine-tune the posture of the slave robot without causing the posture of the slave robot to match the posture of the master robot, and includes a fine-tuning unit that stores a history of the fine-tuning operations. When eliminating the discrepancy between the posture of the master robot and the posture of the slave robot, the control unit executes operation order control to cause the posture of the master robot to match the posture of the slave robot in accordance with the order of the fine-tuning operations in the history stored by the fine-tuning unit.

[0018] The eighth measure is: A master-slave robot system comprising: a master robot whose posture is changed by an external force applied by a user; a slave robot whose posture is controlled to match the posture of the master robot; and a control unit that controls the master robot and the slave robot, a fine adjustment unit that enables the user to perform a fine adjustment operation for finely adjusting the posture of the slave robot in a state where the posture of the slave robot does not coincide with the posture of the master robot, and that stores a history of the fine adjustment operation; When eliminating the discrepancy between the posture of the main robot and the posture of the slave robot, the control unit performs operation order control to align the posture of the main robot with the posture of the slave robot in accordance with the order of the fine-tuning operations in the history stored by the fine-tuning unit.

[0019] According to the above configuration, the fine-tuning unit enables the user to perform a fine-tuning operation to fine-tune the posture of the slave robot without causing the posture of the slave robot to coincide with the posture of the master robot, and stores a history of the fine-tuning operation. Therefore, the user can fine-tune the posture of the slave robot by performing the fine-tuning operation. In this case, since the posture of the slave robot cannot be caused to coincide with the posture of the master robot, a deviation occurs between the postures of the master robot and the slave robot.

[0020] When eliminating the discrepancy between the posture of the main robot and the posture of the slave robot, the control unit executes operation order control to make the posture of the main robot match that of the slave robot in accordance with the order of the fine-tuning operations in the history stored by the fine-tuning unit. This makes it possible to prevent the posture of the main robot from being linearly matched with that of the slave robot with a minimum of operations, and ultimately to prevent the posture of the main robot from changing suddenly. Therefore, even if the posture of the main robot is changed to a posture different from the user's intention when matching the posture of the main robot with that of the slave robot, it is possible to prevent the user from feeling uncomfortable.

[0021] The ninth means includes a judgment unit that judges whether the user is applying the external force to the main robot, and the control unit interrupts the operation sequence control if the judgment unit judges that the external force is being applied while the operation sequence control is being executed, and resumes the operation sequence control from the point at which it was interrupted if the judgment unit judges that the external force is not being applied after the interruption.

[0022] According to the above configuration, the control unit suspends the operation sequence control when the determination unit determines that the external force is being applied during execution of the operation sequence control. Therefore, even if the operation sequence control has started, the operation sequence control can be suspended if the user applies an external force to the main robot. Therefore, when the user applies an external force to the main robot, it is possible to prevent the main robot from changing its posture to a posture different from the user's intention, and to prevent the user from feeling uncomfortable.

[0023] Then, when the determination unit determines that the external force has not been applied after the interruption, the control unit resumes the operation sequence control from the point of interruption. Therefore, if the user stops applying an external force to the master robot after the operation sequence control is interrupted, the operation sequence control can be resumed from the point of interruption. Therefore, the posture of the master robot can be made to match the posture of the slave robot more quickly than if the operation sequence control were restarted from the beginning.

[0024] The tenth means includes an operating device that enables the user to perform fine adjustment operations to fine-tune the posture of the slave robot without causing the posture of the slave robot to match the posture of the master robot, and the control unit issues a notification when the deviation between the posture of the master robot and the posture of the slave robot exceeds a predetermined amount, and the operating device can instruct the control unit to match the posture of the master robot to the posture of the slave robot.

[0025] According to the above configuration, the controller enables the user to perform a fine adjustment operation to finely adjust the posture of the slave robot in a state where the posture of the slave robot does not coincide with the posture of the master robot. Therefore, the user can finely adjust the posture of the slave robot by performing the fine adjustment operation using the controller.

[0026] The control unit notifies the user when the deviation between the posture of the main robot and the posture of the slave robot exceeds a predetermined amount. This allows the user to know that the deviation between the posture of the main robot and the posture of the slave robot has exceeded the predetermined amount. When the user knows that the deviation between the posture of the main robot and the posture of the slave robot has exceeded the predetermined amount, the user can instruct the control unit via an operating device or the like to make the posture of the main robot match the posture of the slave robot. In this case, since the user is instructing the posture of the main robot to match the posture of the slave robot, it is possible to prevent the user from feeling uncomfortable.

[0027] In an eleventh means, the control unit prohibits the posture of the main robot from being changed by an external force applied by the user when the user is performing the fine-tuning operation using the controller.

[0028] According to the above configuration, when the user is performing the fine adjustment operation using the controller, the control unit prohibits the posture of the master robot from being changed by an external force applied by the user. This allows the fine adjustment operation using the controller to have priority over the master-slave robot operation, and prevents interference between the control of the slave robot by the master-slave robot operation and the control of the slave robot by the fine adjustment operation using the controller. [Brief explanation of the drawings]

[0029] [Figure 1] Schematic diagram of a master-slave robot system. [Figure 2] FIG. 10 is a diagram showing the angles of each axis when master-slave robot operation is performed. [Figure 3] FIG. 10 is a diagram showing the angles of each shaft after an inching operation. [Figure 4] 10A and 10B are diagrams showing angles of each axis after a deviation eliminating operation. [Figure 5] 10 is a flowchart showing a main control procedure. [Figure 6] 10 is a flowchart showing a procedure of slave control. [Figure 7]10 is a flowchart showing a procedure of an inching mode. [Figure 8] 10 is a flowchart showing the procedure of a misalignment eliminating operation. [Figure 9] 10 is a flowchart showing the procedure of a modified example of main control. DETAILED DESCRIPTION OF THE INVENTION

[0030] Hereinafter, an embodiment of a master-slave robot system including a master robot, a slave robot, and a control unit will be described with reference to the drawings.

[0031] As shown in FIG. 1, the master-slave robot system 10 includes a master robot 20 and a slave robot 30.

[0032] The master robot 20 (main robot) is, for example, a six-axis vertical articulated robot, and includes a base 21 and an arm 22. Adjacent links of the arm 22 are connected via joints so as to be able to rotate relative to each other. Each joint (each axis) is driven by a corresponding motor.

[0033] A hand 23 is attached to the tip of the arm 22. The hand 23 has, for example, a pair of claws, and performs an opening and closing operation by expanding and contracting the distance between the pair of claws.

[0034] Inside the base 21, there are provided a memory unit 25 that stores the history of fine adjustment operations, which will be described later, and a control unit 26 that controls the operations of the master robot 20 and the hand 23. The control unit 26 is configured as a computer that includes a CPU, ROM, RAM, a drive circuit, an input / output interface, etc.

[0035] An encoder (not shown) that detects the rotation angle of each joint (each axis) of the master robot 20 is provided. That is, the encoder detects the position and direction of the control point of the arm 22 (hereinafter referred to as the "posture of the arm 22"). The control point can be selected from the center of the tip of the arm 22 and the middle of the pair of claws (TCP: Tool Center Position).

[0036] A brake (not shown) is provided at each joint of the master robot 20. The brake applies brakes to each joint to restrict changes in the angle of each joint.

[0037] The control unit 26 controls the posture of the arm 22 in accordance with an external force acting on the arm 22. Specifically, the control unit 26 generates torque by the motors of each joint that compensates only for gravity and frictional forces acting on the arm 22, thereby performing flexible control to move the arm 22 in accordance with the external force. The control unit 26 then maintains the posture of the arm 22 when the external force acting on the arm 22 is removed. In other words, the master robot 20 can change and maintain the posture of the arm 22 in accordance with an external force applied by the user. In this embodiment, the user can directly grasp and move the arm 22 by direct teach, and can maintain the posture of the arm 22 (direct teach mode). The control unit 26 transmits the detection results of the encoders of each joint of the master robot 20 to the control unit 36 ​​of the slave robot 30.

[0038] A slave robot 30 is connected to the master robot 20 via a cable 29. The slave robot 30 (subordinate robot) is, for example, of the same type as the master robot 20 (for example, a six-axis vertical articulated type) but larger than the master robot 20. The slave robot 30 is installed within a safety fence G. The slave robot 30 has the same configuration as the master robot 20, except that it is larger than the master robot 20 and has a slightly different shape from the master robot 20. The slave robot 30 has a base 31 and an arm 32. A hand (not shown) is attached to the tip of the arm 32. Each joint (corresponding joint) of the slave robot 30 corresponds to each joint of the master robot 20.

[0039] A control unit 36 ​​that controls the operation of the slave robot 30 and the hand is provided inside the base 31. The control unit 36 ​​is configured as a computer equipped with a CPU, ROM, RAM, a drive circuit, an input / output interface, etc. The control units 26 and 36 can communicate with each other via a cable 29, and send and receive information to and from each other.

[0040] An encoder (not shown) that detects the rotation angle of each joint (each axis) of the slave robot 30 is provided. That is, the encoder detects the position and direction of the control point of the arm 32 (hereinafter referred to as the "posture of the arm 32"). The control point can be selected from the center of the tip of the arm 32 and, for example, the middle of a pair of claws (TCP: Tool Center Position).

[0041] A brake (not shown) is provided at each joint of the slave robot 30. The brake applies a brake to each joint to restrict changes in the angle of each joint.

[0042] The control unit 36 ​​controls the motors of each joint of the slave robot 30 so that the angle of each joint (each axis) of the slave robot 30 matches the angle of the corresponding joint (each axis) of the master robot 20. In other words, the control unit 36 ​​controls the posture of the slave robot 30 to match the posture of the master robot 20 by the user applying an external force to the master robot 20 to change the posture of the master robot 20 (hereinafter referred to as "master-slave robot operation").

[0043] Specifically, the control unit 36 ​​performs feedback control of the motors of each joint of the slave robot 30 based on the detection results of the encoders of each joint of the master robot 20 and the encoders of each joint of the slave robot 30. That is, each joint of the slave robot 30 follows the movement of each joint of the master robot 20. The control unit 36 ​​transmits the detection results of the encoders of each joint of the slave robot 30 to the control unit 26 of the master robot 20. The control unit 26 of the master robot 20 and the control unit 36 ​​of the slave robot 30 constitute a control unit.

[0044] As shown in FIG. 2, by performing master-slave robot operation, the angles θ1 to θ6 of the axes of the master robot 20 are made to coincide with the angles θ1 to θ6 of the axes of the slave robot 30.

[0045] 3, a controller 40 is connected to the master robot 20. The controller 40 may be a teaching pendant, a tablet terminal, a smartphone, a laptop computer, a PC, etc. It is desirable that the controller 40 is equipped with a deadman's switch, and that the slave robot 30 is stopped when the user presses the deadman's switch hard or removes their hand from the deadman's switch.

[0046] The controller 40 allows the user to perform an inching operation, which moves the arm 32 of the slave robot 30 in the smallest or smallest increments. The user can operate the controller 40 to set the unit for changing the posture of the arm 32 to, for example, 0.1 to 1.0 mm. By operating the controller 40, the user increments the posture of the arm 32 in the set increments via the control units 26 and 36 (hereinafter referred to as a "fine-adjustment operation"). At this time, the control unit 26 stores a history of the fine-adjustment operation in the memory unit 25. The controller 40, the memory unit 25, the control unit 26, and the control unit 36 ​​constitute a fine-adjustment unit. In other words, the fine-adjustment unit allows the user to perform a fine-adjustment operation to fine-adjust the posture of the slave robot 30 in a state where the posture of the slave robot 30 does not match the posture of the master robot 20, and stores a history of the fine-adjustment operation.

[0047] When the user is performing a fine adjustment operation using the controller 40, the controller 26 prohibits the posture of the master robot 20 from being changed by an external force applied by the user. Specifically, when the user is performing a fine adjustment operation using the controller 40, the controller 26 activates the brakes of each joint of the master robot 20 to make the angle of each joint unchangeable. Note that when the user is performing a fine adjustment operation using the controller 40, the controller 26 can also make the angle of each joint unchangeable by performing control to maintain the angle of each joint of the master robot 20 at the current angle.

[0048] When the angles of the axes J1 to J6 of the slave robot 30 are θ1 to θ6, the coordinates (X, Y, Z, Rx, Ry, Rz) of the control point are (X1, Y1, Z1, Rx1, Ry1, Rz1). X, Y, and Z are the coordinates of the X-axis, Y-axis, and Z-axis, respectively. Rx, Ry, and Rz are the angles of rotation around the X-axis, Y-axis, and Z-axis, respectively.

[0049] Here, it is assumed that the coordinates (X, Y, Z, Rx, Ry, Rz) of the control point of the slave robot 30 are changed by (a1, a2, a3, a4, a5, a6) due to a fine adjustment operation by the user. At this time, the angles of the axes J1 to J6 of the master robot 20 are not changeable. The fine adjustment operation may be a single operation, or may be a combination of multiple operations.

[0050] As a result, the coordinates of the control point of the slave robot 30 become (X1+a1, Y1+a2, Z1+a3, Rx1+a4, Ry1+a5, Rz1+a6). When the coordinates of the control point of the slave robot 30 are (X1+a1, Y1+a2, Z1+a3, Rx1+a4, Ry1+a5, Rz1+a6), the angles of the axes J1 to J6 of the slave robot 30 are θ1+b1, θ2+b2, θ3+b3, θ4+b4, θ5+b5, and θ6+b6, respectively. Therefore, a discrepancy occurs between the angles of the axes J1 to J6 of the master robot 20 and the angles of the axes J1 to J6 of the slave robot 30.

[0051] 4, the control unit 26 eliminates the deviation between the angles of the axes J1 to J6 of the master robot 20 (posture of the master robot 20) and the angles of the axes J1 to J6 of the slave robot 30 (posture of the slave robot 30). Specifically, the control unit 26 causes the master robot 20 to execute a deviation-eliminating operation to eliminate the deviation in posture. As a result, the angles of the axes J1 to J6 of the master robot 20 are made to match the angles of the axes J1 to J6 of the slave robot 30. At this time, if control is simply executed to match the angles of the axes J1 to J6 of the master robot 20 to the angles of the axes J1 to J6 of the slave robot 30, the angles of the axes J1 to J6 of the master robot 20 may be suddenly changed to angles different from the user's intention, which may cause the user to feel uncomfortable.

[0052] In this regard, when the amount of deviation between the posture of the master robot 20 and the posture of the slave robot 30 exceeds a predetermined deviation amount, the control unit 26 notifies the user to that effect. The operating device 40 can instruct the control unit 26 to make the posture of the master robot 20 coincide with that of the slave robot 30. Then, on the condition that the user has performed a deviation-resolving operation to resolve the amount of deviation between the posture of the master robot 20 and the posture of the slave robot 30 (an instruction to make the posture of the master robot 20 coincide with that of the slave robot 30), the control unit 26 executes a deviation-resolving operation. Furthermore, when resolving the deviation between the posture of the master robot 20 and the posture of the slave robot 30, the control unit 26 limits the acceleration at which the master robot 20 operates to be equal to or less than the limited acceleration Au.

[0053] FIG. 5 is a flowchart showing the main control procedure executed by the control unit 26 of the master robot 20.

[0054] First, the mode of the master robot 20 is set to direct teach mode (S10). The user moves the master robot 20 to a target posture by direct teach (S11). Here, the target posture refers to the posture of the master robot 20 when the control point of the slave robot 30 has reached a teaching point to be set or has reached the vicinity of the teaching point to be set.

[0055] At this time, if the posture of the master robot 20 is changed by the user's hand, the control unit 26 appropriately transmits information such as the rotation angle of each motor that can identify the posture of the master robot 20 as teaching information to the control unit 36. The teaching information transmitted at this time also includes information indicating that teaching is being performed in direct teach mode.

[0056] On the other hand, when teaching is started by the master robot 20, the control unit 36 ​​of the slave robot 30 determines whether or not teaching information has been received from the control unit 26 (S20), as shown in Fig. 6. If the control unit 36 ​​determines that teaching information has not been received (S20: NO), it determines whether or not teaching has been completed (S22). If it determines that teaching has not been completed (S22: NO), it executes the process again from step S20. On the other hand, if it determines that teaching has been completed (S22: YES), it ends this series of processes for the time being (END).

[0057] On the other hand, when the control unit 36 ​​determines that teaching information has been received from the control unit 26 (S20: YES), it changes the posture of the slave robot 30 based on the teaching information (S21). At this time, if the master robot 20 is operating in the direct teach mode, the control unit 36 ​​receives teaching information every time the posture of the master robot 20 is changed by the user, and therefore changes the posture of the slave robot 30 to follow the change in posture of the master robot 20.

[0058] Returning to FIG. 5, once the user has moved the master robot 20 to the target posture or its vicinity, the user determines whether the current posture of the master robot 20 is sufficient or whether fine adjustment, i.e., detailed positioning, is necessary (S12). If the user determines that fine adjustment is not necessary (S12: NO), the user sets the current posture of the master robot 20 as a teaching point (S14). Hereinafter, the current posture of the master robot 20 will be referred to as the current posture for convenience. Specifically, the position and direction of the control point in the current posture of the master robot 20 are set as teaching points. At this time, the control unit 26 transmits the current posture of the master robot 20 and information indicating that the current posture is to be a teaching point to the control unit 36 ​​as teaching information.

[0059] On the other hand, if fine adjustment is required (S12: YES), such as when the user inputs an operation to switch to the inching mode using the operation device 40, the control unit 26 executes the inching mode (S13).

[0060] 7 is a flowchart showing the procedure of the inching mode. This series of processes is executed by the control unit 26.

[0061] The brakes of each of the axes J1 to J6 of the master robot 20 are activated (S130). It is determined whether a fine adjustment operation has been input (S131). If it is determined that a fine adjustment operation has not been input (S131: NO), it is determined whether the fine adjustment operation has ended (S134). Specifically, if the user has performed an operation to end the inching mode on the controller 40, it is determined that the fine adjustment operation has ended. If it is determined that the fine adjustment operation has not ended (S134: NO), the process is executed again from S131.

[0062] On the other hand, if it is determined in the determination of S131 that a fine adjustment operation has been input (S131: YES), an inching operation is executed (S132). Specifically, in accordance with the input fine adjustment operation, the posture of the arm 32 is inched in set units via the control unit 36. In the fine adjustment operation, the slave robot 30 is moved by the set unit each time the user presses a button on the controller 40, and even if the button is pressed and held down, it is treated as a single button press.

[0063] Next, the input fine adjustment operation is stored in the storage unit 25 (S133). Specifically, the fine adjustment operations (executed inching operations) input after switching to the inching mode are stored in the storage unit 25 in chronological order.

[0064] If it is determined in S134 that the fine adjustment operation has ended (S134: YES), the brakes on the axes J1 to J6 of the master robot 20 are released (S135). After that, the process returns to the process next to S13 in FIG. 5 (RET).

[0065] Returning to Figure 5, after the processing of S14, it is determined whether the amount of deviation between the posture of the master robot 20 and the posture of the slave robot 30 exceeds a predetermined amount (S15). Specifically, during master-slave robot operation, the posture of the master robot 20 and the posture of the slave robot 30 are considered to be the same, and if the slave robot 30 is moved by an inching operation by more than 1.0 cm, it is determined that the amount of deviation exceeds the predetermined amount. It is also possible to determine that the amount of deviation exceeds the predetermined amount based on the difference between the angle of each axis of the master robot 20 and the angle of the corresponding axis of the slave robot 30.

[0066] If it is determined in S15 that the deviation between the posture of the master robot 20 and the posture of the slave robot 30 exceeds a predetermined deviation amount (S15: YES), the user is notified that the deviation between the posture of the master robot 20 and the posture of the slave robot 30 is large. For example, the display unit of the controller 40 may display a message indicating that the deviation is large, or the speaker of the controller 40 may provide an audio message indicating that the deviation is large. On the other hand, if it is determined in S15 that the deviation between the posture of the master robot 20 and the posture of the slave robot 30 does not exceed the predetermined deviation amount (S15: NO), the control unit 26 proceeds to processing in S17. That is, if it is determined that the deviation between the posture of the master robot 20 and the posture of the slave robot 30 does not exceed the predetermined deviation amount, the control unit 26 continues master-slave robot operation even if the posture of the master robot 20 and the posture of the slave robot 30 deviates.

[0067] It is determined whether or not the user has performed a deviation resolution operation using the operating device 40 (S17). If it is determined that the user has performed a deviation resolution operation using the operating device 40 (S17: YES), a deviation resolution operation is executed (S18).

[0068] 8 is a flowchart showing the procedure for the misalignment eliminating operation. This series of processes is executed by the control unit 26.

[0069] The history of fine-tuning operations is read from the storage unit 25 (S180). The master robot 20 is operated in the order of the fine-tuning operations (S181). Specifically, control is performed to make the posture of the master robot 20 match that of the slave robot 30 according to the order of the fine-tuning operations in the stored history of fine-tuning operations (hereinafter referred to as "operation order control"). That is, the master robot 20 is caused to perform operations corresponding to the inching operations in the same order as the order in which the inching operations were performed in the slave robot 30. At this time, the acceleration at which the master robot 20 is operated, specifically the acceleration when the control point is moved, is limited to an acceleration limit Au or less, so that the posture of the master robot 20 matches that of the slave robot 30. Furthermore, the speed at which the master robot 20 is operated, specifically the speed when the control point is moved, is limited to an acceleration limit Vu or less, so that the posture of the master robot 20 matches that of the slave robot 30.

[0070] During execution of the operation sequence control, it is determined whether or not the user is applying an external force to the master robot 20 (S182). If it is determined that the user is applying an external force to the master robot 20 during execution of the operation sequence control (S182: YES), the operation sequence control is interrupted (S184). Then, a fine adjustment operation corresponding to the behavior of the master robot 20 at the time of interruption in the operation sequence control is stored (S185).

[0071] Next, the direct teach mode is set (S186). It is determined whether or not the user is applying an external force to the master robot 20 (S187). If it is determined that the user is applying an external force to the master robot 20 (S187: YES), the process is repeated from S186.

[0072] On the other hand, if it is determined in S187 that the user has not applied an external force to the master robot 20 (S187: NO), the process is executed again from S181. In this case, in S181, the master robot 20 is operated in order from the fine adjustment operation corresponding to the operation of the master robot 20 at the time of interruption stored in S185. In other words, if it is determined that the user has not applied an external force to the master robot 20 after the operation sequence control is interrupted, the operation sequence control is resumed from the point where it was interrupted.

[0073] Furthermore, in the process of S182, if it is determined that the user has not applied an external force to the master robot 20 during execution of the operation sequence control (S182: NO), it is determined whether the operation of the master robot 20 has been completed up to the last fine-tuning operation in the fine-tuning operation history (S183). In this determination, if it is determined that the operation of the master robot 20 has not been completed up to the last fine-tuning operation (S183: NO), the process is executed again from S181. On the other hand, in this determination, if it is determined that the operation of the master robot 20 has been completed up to the last fine-tuning operation (S183: YES), the process returns to the process next to S18 in Fig. 5 (RET). The processes of S182 and S187 correspond to the process of the determination unit.

[0074] In the process of S19 in Fig. 5, it is determined whether all teaching has been completed (S19). For example, when the user performs an operation to end teaching using the operating device 40, the control unit 26 determines that all teaching has been completed. In this determination, if it is determined that all teaching has not been completed (S19: NO), the process is executed again from S11. On the other hand, in this determination, if it is determined that all teaching has been completed (S19: YES), this series of processes is ended (END).

[0075] The present embodiment described above in detail has the following advantages.

[0076] When correcting the discrepancy between the posture of the master robot 20 and the posture of the slave robot 30, the control unit 26 limits the acceleration at which the master robot 20 operates to equal to or less than the limited acceleration Au, thereby causing the posture of the master robot 20 to match the posture of the slave robot 30. This makes it possible to prevent abrupt changes in the speed at which the master robot 20 operates, and ultimately to prevent abrupt changes in the posture of the master robot 20. Therefore, even if the posture of the master robot 20 is changed to a posture different from the user's intention when the posture of the master robot 20 is made to match the posture of the slave robot 30, it is possible to prevent the user from feeling uncomfortable.

[0077] When eliminating the discrepancy between the posture of the master robot 20 and the posture of the slave robot 30, the control unit 26 further limits the speed at which the master robot 20 operates to a speed limit Vu or less, so that the posture of the master robot 20 matches the posture of the slave robot 30. With this configuration, when the speed of the master robot 20 exceeds the speed limit Vu, it is possible to prevent the posture of the master robot 20 from being changed to a posture different from that intended by the user, and it is further possible to prevent the user from feeling uncomfortable.

[0078] When eliminating the discrepancy between the posture of the master robot 20 and the posture of the slave robot 30, the control unit 26 executes operation sequence control to make the posture of the master robot 20 match that of the slave robot 30 in accordance with the order of fine-tuning operations in the history stored in the memory unit 25. This makes it possible to prevent the posture of the master robot 20 from linearly matching that of the slave robot 30 with a minimum of operations, and ultimately to prevent the posture of the master robot 20 from changing suddenly. Therefore, even if the posture of the master robot 20 is changed to a posture different from the user's intention when matching the posture of the master robot 20 to that of the slave robot 30, it is possible to prevent the user from feeling uncomfortable.

[0079] The control unit 26 suspends the operation sequence control if it determines that the user is applying an external force to the master robot 20 while the operation sequence control is being executed. Therefore, even if the operation sequence control has started, if the user applies an external force to the master robot 20, the operation sequence control can be suspended. Therefore, when the user applies an external force to the master robot 20, it is possible to prevent the posture of the master robot 20 from being changed to a posture different from the user's intention, and to prevent the user from feeling uncomfortable.

[0080] If the control unit 26 determines that the user has not applied an external force to the master robot 20 after the interruption, the control unit 26 resumes the operation sequence control from the point where it was interrupted. Therefore, if the user has stopped applying an external force to the master robot 20 after the operation sequence control is interrupted, the operation sequence control can be resumed from the point where it was interrupted. Therefore, the posture of the master robot 20 can be quickly matched with the posture of the slave robot 30 compared to restarting the operation sequence control from the beginning.

[0081] The manipulator 40 and control units 26, 36 enable the user to perform a fine adjustment operation to finely adjust the posture of the slave robot 30 in a state where the posture of the slave robot 30 does not match the posture of the master robot 20. Therefore, the user can finely adjust the posture of the slave robot 30 by performing the fine adjustment operation using the manipulator 40.

[0082] The control unit 26 notifies the user when the deviation between the posture of the master robot 20 and the posture of the slave robot 30 exceeds a predetermined deviation amount (predetermined quantity). This allows the user to know that the deviation between the posture of the master robot 20 and the posture of the slave robot 30 has exceeded the predetermined deviation amount. When the user knows that the deviation between the posture of the master robot 20 and the posture of the slave robot 30 has exceeded the predetermined deviation amount, the user can instruct the control unit 26 to make the posture of the master robot 20 coincide with the posture of the slave robot 30. In this case, since the user is instructing the posture of the master robot 20 to coincide with the posture of the slave robot 30, it is possible to prevent the user from feeling uncomfortable.

[0083] The control unit 26 prohibits the posture of the master robot 20 from being changed by an external force applied by the user when the user is performing a fine adjustment operation using the operation device 40. This allows the fine adjustment operation using the operation device 40 to be given priority over the master-slave robot operation, and prevents interference between the control of the slave robot 30 by the master-slave robot operation and the control of the slave robot 30 by the fine adjustment operation using the operation device 40.

[0084] The above embodiment can be modified as follows: The same parts as those in the above embodiment are denoted by the same reference numerals and the description thereof will be omitted.

[0085] In FIG. 7, the processes of S130 and S135 may be omitted.

[0086] The slave robot 30 may include a storage unit 35 that stores the history of fine adjustment operations, and the control unit 26 may read the history of fine adjustment operations stored in the storage unit 35.

[0087] 8. When the operation sequence control is interrupted in the process of S184 in Fig. 8, if the amount of deviation between the posture of the master robot 20 and the posture of the slave robot 30 is equal to or less than a predetermined deviation amount, the series of processes for the deviation resolution operation in Fig. 8 can also be terminated. Also, if the operation sequence control is interrupted in the process of S184 in Fig. 8 and thereafter the input of external force ceases, the master robot 20 can be returned to the state at the start of the deviation resolution operation, and the operation sequence control can be restarted from the beginning of the history of fine adjustment operations stored in the memory unit 25.

[0088] The master robot 20 may be equipped with a determination unit that determines whether or not the user is applying an external force to the master robot 20. The determination unit determines the magnitude and direction of the external force (presence or absence of an external force) by, for example, measuring the current value of the motor of each joint and calculating a torque proportional to the current value. When eliminating the discrepancy between the posture of the master robot 20 and the posture of the slave robot 30, the control unit 26 may also employ a configuration in which, as shown in FIG. 9, the posture of the master robot 20 is matched with the posture of the slave robot 30 on the condition that the determination unit determines that the user is not applying an external force to the master robot 20 (S30). Note that a torque sensor may be provided in the motor, and the torque may be calculated from the detection result of the torque sensor.

[0089] According to the above configuration, when correcting the deviation between the posture of the master robot 20 and the posture of the slave robot 30, if the user is not applying an external force to the master robot 20 (S30: NO), the posture of the master robot 20 is made to match the posture of the slave robot 30. On the other hand, if the user is applying an external force to the master robot 20 (S30: YES) when correcting the deviation between the posture of the master robot 20 and the posture of the slave robot 30, control for correcting the posture of the master robot 20 to match the posture of the slave robot 30 is not executed. Therefore, when the user is applying an external force to the master robot 20, it is possible to prevent the posture of the master robot 20 from being changed to a posture different from the user's intention, and to prevent the user from feeling uncomfortable. Note that the process of S30 can be inserted between the processes of S17 and S18 in FIG. 5.

[0090] The master robot 20 may be equipped with a determination unit that determines whether the user is touching the master robot 20. The determination unit determines whether the user is touching the master robot 20 based on the detection results of, for example, a capacitance sensor or the like provided on the arm 22. The control unit 26 may then adjust the posture of the master robot 20 to match the posture of the slave robot 30 when eliminating the discrepancy between the posture of the master robot 20 and the posture of the slave robot 30, on the condition that the determination unit determines that the master robot 20 is not being touched. In this case, the process of S30 in FIG. 9 may be changed to a process that determines whether the user is touching the master robot 20, or a process that determines whether the user is touching the master robot 20 may be inserted between the processes of S17 and S18 in FIG. 5.

[0091] According to the above configuration, when the deviation between the posture of the master robot 20 and the posture of the slave robot 30 is eliminated, if the user is not touching the master robot 20, the posture of the master robot 20 is made to match the posture of the slave robot 30. On the other hand, when the deviation between the posture of the master robot 20 and the posture of the slave robot 30 is eliminated, if the user is touching the master robot 20, control to make the posture of the master robot 20 match the posture of the slave robot 30 is not executed. Therefore, when the user is touching the master robot 20, it is possible to prevent the posture of the master robot 20 from being changed to a posture different from the user's intention, and to prevent the user from feeling uncomfortable.

[0092] 8, it is possible to omit limiting the speed at which the master robot 20 is operated, specifically the speed at which the control point is moved, to a speed limit Vu or less. Also, it is possible to omit limiting the acceleration at which the master robot 20 is operated, specifically the acceleration at which the control point is moved, to a speed limit Au or less.

[0093] The inching mode is not limited to a configuration in which the user inputs fine adjustment operations using the operation device 40, but can also be realized by the configuration of the detailed control mode described in JP 2019-55458 A.

[0094] If the control unit 26 is configured to execute the deviation-removing operation on the condition that the user has performed a deviation-removing operation to remove the deviation between the posture of the master robot 20 and the posture of the slave robot 30, the deviation may be removed by moving the master robot 20 linearly with minimal movement. Even in this case, the user is instructing the posture of the master robot 20 to match the posture of the slave robot 30, so it is possible to prevent the user from feeling uncomfortable.

[0095] The control unit may be provided in the master robot 20 or the slave robot 30, and may be a single control unit that controls the master robot 20 and the slave robot 30.

[0096] The master robot 20 and the slave robot 30 may be robots with the same shape but different sizes. Also, the master robot 20 and the slave robot 30 may be robots with the same shape and size. [Explanation of symbols]

[0097] 10...master-slave robot system, 20...master robot (main robot), 26...control unit, 30...slave robot (subordinate robot), 36...control unit.

Claims

1. A master-slave robot system comprising: a master robot whose posture is changed by an external force applied by a user; a slave robot whose posture is controlled to match the posture of the master robot; and a control unit that controls the master robot and the slave robot, an operating device connected to the master robot, which allows the user to perform a fine adjustment operation to finely adjust the posture of the slave robot in a state where the posture of the slave robot does not coincide with the posture of the master robot; In a master-slave robot system, when eliminating the discrepancy between the posture of the master robot and the posture of the slave robot caused by the fine adjustment operation, the control unit limits the acceleration at which the master robot operates to a limited acceleration or less, thereby aligning the posture of the master robot with the posture of the slave robot.

2. 2. The master-slave robot system according to claim 1, wherein, when eliminating the deviation between the posture of the master robot and the posture of the slave robot, the control unit further limits the speed at which the master robot operates to a speed limit or less, thereby causing the posture of the master robot to match the posture of the slave robot.

3. a determination unit that determines whether the user is applying the external force to the main robot, 3. The master-slave robot system according to claim 1, wherein the control unit, when eliminating the deviation between the posture of the master robot and the posture of the slave robot, causes the posture of the master robot to match the posture of the slave robot on the condition that the determination unit determines that the external force is not being applied.

4. a determination unit that determines whether the user is touching the main robot, 3. The master-slave robot system according to claim 1, wherein the control unit, when eliminating the deviation between the posture of the master robot and the posture of the slave robot, causes the posture of the master robot to match the posture of the slave robot on the condition that the determination unit determines that the master robot is not being touched.

5. a fine adjustment unit that enables the user to perform a fine adjustment operation for finely adjusting the posture of the slave robot in a state where the posture of the slave robot does not coincide with the posture of the master robot, and that stores a history of the fine adjustment operation; The master-slave robot system according to any one of claims 1 to 4, wherein when eliminating a discrepancy between the posture of the master robot and the posture of the slave robot, the control unit performs operation order control to make the posture of the master robot coincide with the posture of the slave robot in accordance with the order of the fine-tuning operations in the history stored by the fine-tuning unit.

6. a determination unit that determines whether the user is applying the external force to the main robot, 6. The master-slave robot system according to claim 5, wherein the control unit suspends the operation order control when the determination unit determines that the external force is being applied during execution of the operation order control, and resumes the operation order control from the point at which it was suspended when the determination unit determines that the external force is not being applied after the suspension.

7. The control unit notifies the master robot when a deviation between the posture of the master robot and the posture of the slave robot exceeds a predetermined amount; 7. The master-slave robot system according to claim 1, wherein the controller is capable of instructing the control unit to make the posture of the master robot coincide with the posture of the slave robot.

8. 8. The master-slave robot system according to claim 7, wherein the control unit prohibits the posture of the master robot from being changed by an external force applied by the user when the user is performing the fine adjustment operation using the operation device.

Citation Information

Patent Citations

  • Information processing system, information processing method, program, recording medium and information processor

    JP2003150569A

  • Device and method for controlling robot

    JP2011206886A

  • Robot control parameter determining device and method, robot control device, robot device, robot control parameter determining program, integrated electronic circuit for determining robot control parameter

    JP2012055985A

  • Control device and control method for master slave type manipulator

    JP2012071406A

  • Master device for master slave device, control method therefor, and master slave robot

    JP2015006722A