Robot control device

By recording position and posture information, the multi-joint robot is controlled to move along a straight track while avoiding singularities, thus solving the control error problem caused by the robot's posture approaching singularities and improving work efficiency and accuracy.

CN115943019BActive Publication Date: 2025-10-31FANUC LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202180050474.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-08-21
Filing Date
2021-08-20
Publication Date
2025-10-31
Estimated Expiration
2041-08-20

AI Technical Summary

Technical Problem

When a robot moves along a continuous track, the wrist posture may approach a singularity, causing abrupt joint movements and control errors, requiring frequent re-teaching of the track to avoid these errors.

Method used

By recording position and posture information, the system controls the coordinated or independent movements of multiple joints and wrist joints, avoiding singularities and ensuring that the control point moves along a straight track.

Benefits of technology

This effectively prevents the robot's wrist posture from approaching singularities, reduces the frequency of re-teaching, and improves work efficiency and the linear movement accuracy of control points.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115943019B_ABST
    Figure CN115943019B_ABST
Patent Text Reader

Abstract

The robot control device (1) includes: a control unit that moves a control point (Pc) from a first position (P1) to a second position (P2) by controlling multiple basic joints and multiple wrist joints; and a position information recording unit that records position information, including the position of the second position (P2) and the rotation angle of each of the multiple wrist joints when the control point (Pc) is in the second position (P2). When the posture of the wrist (3) when the control point (Pc) is in the second position (P2) is not a singularity, the control unit moves the control point (Pc) to the second position (P2) in a straight line by having the multiple basic joints and multiple wrist joints cooperate to perform linear movements. When the posture of the wrist (3) when the control point (Pc) is in the second position (P2) is a singularity, the control unit moves the control point (Pc) to the second position (P2) by having the multiple wrist joints perform movements on their respective axes without cooperating with each other.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to robot control devices. Background Technology

[0002] Previously, a method for controlling a multi-joint robot was known: by coordinating the actions of multiple joints, a predetermined part of the robot was moved along a predetermined continuous trajectory (see, for example, Patent Documents 1-4). For example, a first position and a second position were taught, and multiple joints were controlled so that a control point, such as a TCP (tool center point), moved linearly along a straight track from the first position to the second position.

[0003] Existing technical documents

[0004] Patent documents

[0005] Patent Document 1: Japanese Patent Application Publication No. 2018-111155

[0006] Patent Document 2: International Publication No. 2016 / 135861

[0007] Patent Document 3: International Publication No. 2017 / 002208

[0008] Patent Document 4: Japanese Patent Application Publication No. 2015-066668 Summary of the Invention

[0009] The problem the invention aims to solve

[0010] When moving along a continuous track, the robot sometimes approaches a singularity, and at least one joint moves abruptly. In this situation, the robot control unit determines that an error has occurred and takes measures such as stopping the robot's movement. Therefore, each time an error occurs, additional tasks such as re-teaching other tracks to make the robot perform the movement again are required.

[0011] Solution for solving the problem

[0012] One aspect of the present invention is a robot control device that controls a multi-joint robot, the robot having: multiple basic joints that change the position of a wrist; and multiple wrist joints that change the position and orientation of a control point of an end effector located at or connected to the wrist. The robot control device includes: a control unit that moves the control point from a first position to a second position by controlling the multiple basic joints and the multiple wrist joints; and a position information recording unit that records position information, including the position of the second position and the respective rotation angles of the multiple wrist joints when the control point is in the second position. If the orientation of the wrist when the control point is in the second position is not a singularity, the control unit moves the control point linearly to the second position by having the multiple basic joints and the multiple wrist joints cooperate in linear motion; if the orientation of the wrist when the control point is in the second position is a singularity, the control unit moves the control point to the second position by having the multiple wrist joints perform individual axis movements without cooperation. Attached Figure Description

[0013] Figure 1 This is a structural diagram of a robot controlled by a robot control device.

[0014] Figure 2 This is a block diagram of the robot control device.

[0015] Figure 3 This is another example diagram showing the track from the first position to the second position. Detailed Implementation

[0016] Hereinafter, a robot control device according to one embodiment will be described with reference to the accompanying drawings.

[0017] like Figure 1 as well as Figure 2 As shown, robot control device 1 is connected to robot 2, which has a multi-joint wrist 3, and is used to control robot 2.

[0018] Robot 2 possesses: multiple basic joints J1, J2, and J3, which enable three-dimensional changes in the position of wrist 3; and multiple wrist joints J4, J5, and J6, which enable three-dimensional changes in the position (X, Y, Z) and orientation (W, P, R) of control point Pc. Control point Pc is a point set at a predetermined position on wrist 3, or at a predetermined position on end effector 8 connected to wrist 3. For example, control point Pc is the center point of the front end face 3a of wrist 3, or TCP (tool centerpoint).

[0019] In this embodiment, robot 2 is a six-axis vertical articulated robot with six joints J1 to J6. Robot 2 includes: a base 4 fixed to the ground; a rotating body 5 disposed on the base 4; a first arm 6 connected to the rotating body 5; and a second arm 7 connected to the front end of the first arm 6. A wrist 3 is connected to the front end of the second arm 7 and has a front end face 3a for mounting an end effector 8 such as a hand or tool.

[0020] Each joint J1 to J6 is equipped with a servo motor that drives each joint J1 to J6 according to the control instructions from the robot control device 1, and an encoder that detects the rotation angle of each joint J1 to J6.

[0021] The basic joints are the first joint J1, the second joint J2, and the third joint J3. The first joint J1 causes the rotating body 5 to rotate relative to the base 4 about a vertical first axis A1. The second joint J2 causes the first arm 6 to rotate relative to the rotating body 5 about a horizontal second axis A2. The third joint J3 causes the second arm 7 to rotate relative to the first arm 6 about a horizontal third axis A3.

[0022] The wrist joints are the fourth joint J4, the fifth joint J5, and the sixth joint J6. The fourth joint J4 causes the second arm 7 to rotate relative to the first arm 6 about the fourth axis A4. The fifth joint J5 causes the wrist portion 3 to rotate relative to the second arm 7 about the fifth axis A5. The sixth joint J6 causes the anterior surface 3a of the wrist portion 3 to rotate about the sixth axis A6. The fourth axis A4 extends along the major axis of the second arm 7, the fifth axis A5 is orthogonal to the fourth axis A4, and the sixth axis A6 is orthogonal to the fifth axis A5.

[0023] like Figure 2 As shown, the robot control device 1 includes a storage unit 11 and a control unit 12.

[0024] The storage unit 11 includes storage devices such as RAM (random access memory), ROM (read-only memory), and HDD (hard disc drive). The robot control unit 1 is equipped with at least one processor, similar to a central processing unit. The storage unit 11 stores a control program for causing the processor to execute the following processes of the control unit 12. That is, the control unit 12 is implemented by at least one processor.

[0025] The control unit 12 calculates a straight track T extending directly from the first position P1 to the second position P2 by linear interpolation between the first position P1 and the second position P2. The first position P1 and the second position P2 are arbitrary three-dimensional positions set by the operator, such as teaching points in teaching operations such as linear teaching.

[0026] The control unit 12 moves the control point Pc from the first position P1 to the second position P2 by controlling joints J1 to J6.

[0027] Before the control point Pc moves, the control unit 12 calculates the rotation angles of the wrist joints J4, J5, and J6 when the control point Pc is in the second position P2 with a set posture using inverse kinematics. The posture of the control point Pc (the posture of the front end face 3a) is the same as that of the first position P1 and the second position P2, and is set by the operator. The position information is stored (recorded) in the storage unit (position information recording unit) 11, including the calculated rotation angles of the wrist joints J4, J5, and J6, and the three-dimensional position (X2, Y2, Z2) of the second position P2.

[0028] The control unit 12 determines whether the wrist 3's posture when the control point Pc is in the second position P2 is a singularity or near a singularity. Then, based on the determination result, the control unit 12 causes joints J1 to J6 to perform linear or axial movements, thereby moving the control point Pc from the first position P1 to the second position. The control method for controlling joints J1 to J6 using the control unit 12 will be described in detail later.

[0029] In the accompanying drawings, region S represents a singularity region where the wrist 3 is positioned at or near a singularity. In this embodiment, a singularity is a position where the fourth axis A4 and the sixth axis A6 are aligned on a straight line. When the wrist 3 is in a singular position, the movement of the wrist 3 cannot be controlled.

[0030] For example, the control unit 12 calculates the rotation angle θ between the fourth axis A4 and the sixth axis A6 when the control point Pc is located at the second position P2 based on the position information stored in the storage unit 11. Then, when the rotation angle θ is below a predetermined threshold, for example, below 5°, the control unit 12 determines that the posture of the wrist 3 when the control point Pc is located at the second position P2 is a singularity or near a singularity.

[0031] The function of robot control device 1 will be explained below.

[0032] For example, when teaching the trajectory of control point Pc to the robot control device 1, the operator sets the first position P1 (X1, Y1, Z1) and the second position P2 (X2, Y2, Z2) as the teaching positions, and sets the attitude (W1, P1, R1) of control point Pc as the teaching attitude. The first position P1 (X1, Y1, Z1), the second position P2 (X2, Y2, Z2), and the attitude (W1, P1, R1) are stored in the storage unit 11.

[0033] Next, the control unit 12 determines whether the wrist 3's posture is a singularity when the control point Pc is in the second position P2 with the set posture (W1, P1, R1). Then, the control unit 12 controls joints J1 to J6, and through the linear movement or axis movement of joints J1 to J6, the control point Pc moves from the first position P1 to the second position P2.

[0034] When the wrist 3 is not in a singular position when the control point Pc is in the second position P2, the control unit 12 causes joints J1 to J6 to cooperate in linear motion, thereby enabling the control point Pc to move linearly from the first position P1 (X1, Y1, Z1) to the second position P2 (X2, Y2, Z2) along the linear track T while maintaining the posture (W1, P1, R1). Specifically, the control unit 12 calculates the rotation angles of each joint J1 to J6 when the control point Pc is in each position on the linear track T with the set posture (W1, P1, R1) using inverse kinematics, and obtains timing data of the rotation angles used to enable the control point Pc to maintain the posture (W1, P1, R1) while moving linearly from the first position P1 to the second position P2. Then, the control unit 12 controls joints J1 to J6 according to the timing data of the calculated angles.

[0035] On the other hand, when the wrist 3 is in a singular position at the second position P2, the control unit 12 moves the control point Pc from the first position P1 to the second position P2 by simultaneously moving the basic joints J1, J2, and J3 in a linear motion and moving the wrist joints J4, J5, and J6 along their respective axes. The linear motion of the basic joints J1, J2, and J3 is then controlled by the joints J1, J2, and J3 based on the timing data of the rotation angles of each joint J1, J2, and J3 obtained using the above method.

[0036] In each axis movement, the control unit 12 calculates the difference between the rotation angles of each wrist joint J4, J5, and J6 when the control point Pc is in the first position P1 with the set posture (W1, P1, R1) and the rotation angles of each wrist joint J4, J5, and J6 when the control point Pc is in the second position P2 with the set posture (W1, P1, R1). Then, the control unit 12 causes each wrist joint J4, J5, and J6 to move independently, i.e., without coordination. In each axis movement, the control unit 12 can cause the wrist joints J4, J5, and J6 to move sequentially or simultaneously.

[0037] Through the linear movements of basic joints J1, J2, and J3, the wrist center point (WCP) moves linearly along track T', which is parallel to the linear track T. WCP is the point where the axes A4, A5, and A6 of wrist joints J4, J5, and J6 intersect. Furthermore, through the movements of each axis of wrist joints J4, J5, and J6, the control point Pc moves from the first position P1 to the second position P2 while changing the posture (W, P, R), and is positioned in the second position P2 with the set posture (W1, P1, R1).

[0038] Thus, according to this embodiment, when the wrist 3 is positioned at or near the singularity at the second position P2, the control point Pc moves to the second position P2 through the movement of each axis of the wrist joints J4, J5, and J6. Since the wrist joints J4, J5, and J6 do not cooperate in their movements along each axis, the control point Pc moves while its posture changes. In other words, during the movement of the control point Pc from the first position P1 to the second position P2, the wrist 3 is positioned in a posture different from that at the singularity. Therefore, it is possible to move the control point Pc from the first position P1 to the second position P2 while preventing the wrist 3 from being positioned at or near the singularity.

[0039] For operators, it is difficult to identify the singularity of the moving robot 2, which sometimes positions itself at the singularity. When robot 2 is positioned at a singularity, errors can occur due to abrupt movements of specific joints, causing robot 2 to stop. In this case, the operator must reset the second position P2 to prevent robot 2 from passing through the singularity. This operation is tedious and inefficient for the operator. According to this embodiment, the system automatically determines whether the wrist 3 is positioned at a singularity, and while automatically avoiding positioning the wrist 3 at or near a singularity, the control point Pc moves from the first position P1 to the second position P2. Therefore, errors can be prevented, and the teaching of robot 2 can be performed smoothly.

[0040] Furthermore, during the movement of control point Pc to the second position P2, WCP moves linearly through the linear movements of basic joints J1, J2, and J3. Therefore, even if wrist joints J4, J5, and J6 perform movements along their respective axes, the position of control point Pc will not deviate significantly from the linear track T, and the track of control point Pc becomes a track close to the linear track T. Thus, control point Pc can be moved along a track approximately the same as the linear track T desired by the operator.

[0041] In this embodiment, the robot control device 1 may further include a notification unit 13, which notifies the operator when the distance from the straight track T to the control point Pc exceeds a predetermined threshold. The operator can then identify, based on the notification from the notification unit 13, that the position of the control point Pc has exceeded the threshold and deviated from the straight track T, and, as needed, reset the first position P1 and the second position P2 to other positions.

[0042] For example, during the movement of wrist joints J4, J5, and J6 along their respective axes, the control unit 12 calculates the three-dimensional position of control point Pc based on the rotation angles of each joint J1 to J6 detected by the encoder, and calculates the distance between control point Pc and the linear track T. If the calculated distance exceeds a threshold, the notification unit 13 notifies the operator, for example, by issuing a warning sound. The control unit 12 can also stop the robot 2's movement if the distance exceeds the threshold.

[0043] In this embodiment, when the wrist 3 is in a singular position when the control point Pc is in the second position P2, the control unit 12 can also move the control point Pc to the second position P2 on the straight track T by keeping the position of the control point Pc on the straight track T and making the wrist joints J4, J5, and J6 move along their respective axes, thereby changing the posture of the control point Pc.

[0044] According to this structure, the wrist part 3 can be prevented from being positioned at a singular point, and the control point Pc can be moved along the same straight track T as the straight track during linear motion.

[0045] In this embodiment, when the wrist 3 is in a singular position when the control point Pc is in the second position P2, the control unit 12 causes the basic joints J1, J2, and J3 to perform linear movements. However, even if the trajectory of the control point Pc from the first position P1 to the second position P2 deviates significantly from the linear trajectory T, the basic joints J1, J2, and J3 can also perform movements along their respective axes.

[0046] In this embodiment, robot 2 is defined as a six-axis vertical multi-joint robot, but robot 2 can also be a vertical multi-joint robot with other numbers of axes or a robot with other joint structures.

[0047] Explanation of reference numerals in the attached figures:

[0048] 1: Robot control device

[0049] 2: Robot

[0050] 3: Wrist

[0051] 8: End effector

[0052] 11: Storage Department (Location Information Recording Department)

[0053] 12: Control Department

[0054] 13: Notification Department

[0055] J1, J2, J3: Basic joints

[0056] J4, J5, J6: Wrist joints

[0057] P1: First position

[0058] P2: Second position

[0059] Pc: Control point

[0060] S: Singularity Region

[0061] T: Straight track

Claims

1. A robot control device for controlling a multi-joint robot, said robot having: a plurality of basic joints that change the position of a wrist; and a plurality of wrist joints that change the position and orientation of a control point of an end effector located at or connected to the wrist, wherein, The robot control device includes: The control unit, by controlling the plurality of basic joints and the plurality of wrist joints, moves the control point from a first position to a second position; and A position information recording unit records position information, including the position of the second position and the rotation angle of each of the plurality of wrist joints when the control point is located in the second position in a predetermined posture. The control unit moves the control point to the second position based on the position information, so that the control point is configured in the predetermined posture at the second position. If the wrist posture is not a singularity when the control point is in the second position, the control unit moves the control point linearly to the second position by coordinating the multiple basic joints and the multiple wrist joints to perform linear movements. When the wrist posture is a singular point when the control point is in the second position, the control unit moves the control point to the second position by causing the plurality of wrist joints to move along their respective axes without cooperating with each other.

2. The robot control device according to claim 1, wherein, When the wrist posture is a singular point when the control point is in the second position, the control unit moves the multiple wrist joints along their axes while keeping the control point on a straight track connecting the first position and the second position, thereby moving the control point to the second position on the straight track.

3. The robot control device according to claim 1 or 2, wherein, The robot control device includes a notification unit that notifies the user when the distance between the control point and the straight track connecting the first position and the second position exceeds a predetermined threshold.

Citation Information

Patent Citations

  • Method for adjusting teaching point of robot, method for calculating installation position of robot, robot system, program, and recording medium

    JP2015066668A

  • Robot control device, robot and robot system

    JP2018111155A

  • Manipulator, motion planning method for manipulator, and control system for manipulator

    WO2016135861A1

  • Robot system

    WO2017002208A1

  • Robot attitude correcting system

    JP1992169909A