Control methods for a robot and robot system

DE112022006556T5Pending Publication Date: 2025-02-20YAMAHA MOTOR CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
DE112022006556
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-06-08
Publication Date
2025-02-20

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A control method for a vertical multi-joint robot with a redundant axis is provided. Based on information about the robot's position and orientation, the system monitors whether the robot is approaching a singularity. If the robot is approaching a singularity, the angle of the redundant axis is computationally changed while maintaining the position and orientation of one of the robot's control points (TCPs). By calculating the angles of the other robot joints at the changed angle of the redundant axis, the system determines the angle of the redundant axis that avoids the singularity. The robot's operation is then controlled using this determined angle as the new angle of the redundant axis.
Need to check novelty before this filing date? Find Prior Art

Description

Technical area

[0001] The present invention relates to a control method for a vertical multi-joint robot with redundant axis and a robot system to which the control method is applied. General state of the art

[0002] In a vertical multi-joint robot, singularities exist. These are a specific orientation in which computational control of the robot is no longer possible and cannot be achieved even by actual control. An orientation with a singularity includes, among other things, an orientation in which, for example, the individual arm elements of the robot extend in a straight line and two or more actuation axes lie adjacent to one another on a straight line. When controlling a robot, the state of uncontrollability must be avoided at all costs. Patent Document 1 discloses a control technique that circumvents uncontrollability when controlling a 6-axis robot by providing a reverse kinematic solution for the singularity in the event that a teaching position encounters a singularity.

[0003] Typically, a vertical multi-joint robot has six actuation axes, known as the S-axis, L-axis, U-axis, R-axis, B-axis, and T-axis. As long as the robot arm is equipped with six degrees of freedom, the required tasks can be performed, but there are also robots that additionally have one or more redundant axes. Equipping a robot with a redundant axis has the advantage that the position of the robot arm's articulation points can be changed while maintaining the position and orientation of a tool center point (TCP). Even when controlling a vertical multi-joint robot with a redundant axis, the uncontrollability state due to singularity must be avoided. Prior art documentsPatent documents

[0004] Patent Document 1: JP 2020-505244 A Brief description of the invention

[0005] The present invention has for its object to provide a control method for a vertical multi-joint robot with redundant axis, with which an uncontrollable state can be avoided while maintaining the position and orientation of the taught TCP, and a robot system to which the control method is applied.

[0006] A control method for a robot according to one aspect of the present invention is a control method for a vertical multi-joint robot with a redundant axis, wherein, based on information on the position and orientation of the robot, it is monitored whether the robot reaches an area near a singularity, when the robot reaches an area near a singularity, the angle of the redundant axis is calculated to be changed while maintaining the position and orientation of a TCP of the robot, the angle of the redundant axis that can avoid the singularity is determined by calculating the angle of the other joints of the robot at the changed angle of the redundant axis, and the operation of the robot is controlled with the calculated angle as the new angle of the redundant axis.

[0007] A robot system according to another aspect of the present invention comprises a vertical multi-joint robot with a redundant axis and a control unit that controls the operation of the robot, wherein the control unit includes a monitoring unit that digitizes the position and orientation of the robot using a Jacobian matrix formula; a judging unit that judges whether the robot reaches a region near a singularity based on whether an absolute value of the numerical value of the Jacobian matrix formula falls below a predetermined threshold; a joint angle calculation unit that performs a reverse kinematics calculation when the robot reaches a region near a singularity, computationally changing the angle of the joint of the redundant axis slightly in the plus and minus directions while maintaining the position and orientation of a TCP of the robot;and thus calculates the angle of the individual joints of the robot, and includes a determination unit that applies the position and orientation of the robot, determined from the changed angle of the redundant axis and the angles of the individual joints of the robot obtained by the reverse kinematics calculation, to the Jacobian matrix formula and digitizes them, and determines an angle of the redundant axis that is above the threshold value, wherein the control unit controls the operation of the robot with the determined angle as the new angle of the redundant axis. Short description of the characters

[0008] They show: Fig. 1 is a configuration view of a robot system according to an embodiment of the present invention; Fig. 2 is a block diagram illustrating the electrical configuration of the robot system; Fig. 3 is a perspective view of a robot arm illustrating a situation of determining a joint angle of a redundant axis to avoid a singularity; and Fig. 4 is a flowchart illustrating an example of controlling the operation of the robot. Embodiments of the invention

[0009] An embodiment of the present invention will be described in detail below with reference to the figures. A robot system for implementing the control method for a robot according to the invention comprises a vertical multi-joint robot arm as a robot for performing specified work. A preferred application of the robot system according to the invention is a collaborative robot arranged in an area where workers perform specified work. Manual teaching is often used in a collaborative robot, in which operation sequences of the robot arm are manually taught. In the following embodiment, a 7-axis robot arm is shown as an example of the robot arm, which includes a redundant axis in addition to the usual six operation axes. The present invention is also applicable to a robot with two or more redundant axes. Overall configuration of the robot system

[0010] Fig. Figure 1 shows a configuration view of a robot system according to an embodiment of the present invention. The robot system 1 includes a robot arm 10, which is a 7-axis vertical multi-joint robot, and a controller 30 that controls the operation of the robot arm 10. The robot arm 10 has seven rotation axes, namely a first axis 2A, a second axis 2B, a third axis 2C, a fourth axis 2D, a fifth axis 2E, a sixth axis 2F, and a seventh axis 2G.

[0011] The seven rotation axes each form one of seven joints 21-27 of the robot arm 10. The first axis 2A, the third axis 2C, the fifth axis 2E, and the seventh axis 2G are each rotation axes extending in an arm axis direction and form a first twist joint 21, a second twist joint 23, a third twist joint 25, and a fourth twist joint 27, each of which rotates the arm in a twisting manner. The remaining axes, i.e., the second axis 2B, the fourth axis 2D, and the sixth axis 2F, are rotation axes extending in a horizontal direction and form a first articulated joint 22, a second articulated joint 24, and a third articulated joint 26, each of which rotates the arm in a twisting manner.

[0012] The robot arm 10 includes a base section 11, a torso section 12, a first arm 13, a second arm 14, a third arm 15, and a head section 16. The base section 11 is a housing body that is fixedly installed on a floor surface, a pedestal, or the like. The torso section 12 is connected to the upper surface of the base section 11 via the first pivot joint 21. The torso section 12 is rotatable in the forward and backward directions about the first axis 2A at the first pivot joint 21.

[0013] The first arm 13 is connected at its base end portion to the body portion 12 via the first articulated joint 22. The first arm 13 is pivotable about the second axis 2B at the first articulated joint 22. The first arm 13 is formed by an upper hand arm 131 located at the body portion 12 and a lower hand arm 132 located at the second arm 14. The upper hand arm 131 and the lower hand arm 132 are coupled to each other by the third axis 2C. The lower hand arm 132 is rotatable about the third axis 2C at the second pivot joint 23. A third axis J3 of the first arm 13 is a so-called redundant axis and an actuation axis with which the robot arm 10 is equipped in addition to the regular six axes.

[0014] The second arm 14 is an arm provided in line with the lower hand of the first arm 13, the base end portion of which is connected to the front end portion of the first arm 13 via the second pivot joint 24. The second arm 14 is pivotable about the fourth axis 2D at the second pivot joint 24. The second arm 14 is formed by an upper hand arm 141 located at the first arm 13 and a lower hand arm 142 located at the third arm 15. The lower hand arm 142 is rotatable about the fifth axis 2E at the third pivot joint 25.

[0015] The third arm 15 is an arm provided in line with the lower hand of the second arm 14, the base end portion of which is connected to the front end portion of the second arm 14 via the third articulated joint 26. The third arm 15 is pivotable about the sixth axis 2F at the third articulated joint 26. The head portion 16 is connected to the front end side of the third arm 15 via the fourth pivot joint 27. The head portion 16 is rotatable about the seventh axis 2G at the fourth pivot joint 27. An unillustrated end effector is attached to the head portion 16 and performs required work on a workpiece serving as a work object. The end effector is a structural body that performs work on the workpiece, such as gripping, suction, welding, grinding, and the like.

[0016] In Fig. 1 shows a TPC 17 of the robot arm 10. The TCP 17 is the position of the control reference point of the robot arm 10. The TCP 17 can be set, for example, at the front end of the robot arm 10 or at the center of gravity position of the workpiece gripped by the end effector. Furthermore, the TCP 17 can be set at the center of gravity position of the end effector or any position related to the end effector.

[0017] The control device 30 controls the operation of the robot arm 10 according to teaching data provided to it in advance. To generate the teaching data, the control device 30 undergoes direct teaching, in which a user manually teaches the movement paths of the robot arm 10. The teaching data can be created through online teaching or offline teaching. The control device 30 of the present embodiment also performs control so that the robot arm 10 avoids singularities. The control device 30 will be described below with reference to Fig. 2 described in detail. Electrical configuration of the robot device

[0018] Fig. Figure 2 is a block diagram illustrating the electrical configuration of the robot system 1. The robot system 1 includes, in addition to the robot arm 10 and the controller 30, a force sensor 18 and a control panel 19.

[0019] The force sensor 18 is mounted near the head section 16 of the robot arm 10 and is a force detection device for the six axes. Specifically, the force sensor 18 is a sensor that can simultaneously detect a force component from three translational axes—namely, an X-axis, a Y-axis, and a Z-axis—which are orthogonal to each other, as well as a moment component about the X-axis, the Y-axis, and the Z-axis. Instead of the force sensor 18, the joint sections of the robot arm 10 can also be equipped with torque sensors.

[0020] The control panel 19 fulfills, among other things, various display functions related to the robot system 1, an input function for operating inputs and data inputs to the control device 30, and a warning function for reporting alarms in the event of a malfunction or for error display, etc. The control panel 19 can be implemented, for example, by a display and input panel specific to the robot system 1, a PC, a tablet device, a smartphone, or the like.

[0021] The control device 30 is a processor that executes various processing according to an applied program, and functionally provides a robot control unit 31 (control unit), a teaching control unit 32, and a storage unit 33 by executing the program.

[0022] During operation of the robot system 1 in the factory, the robot control unit 31 operates the robot arm 10 based on pre-provided teaching data indicating the movement paths, and causes the end effector to perform specified work on the workpiece. Also, the robot control unit 31 of the present embodiment continuously executes avoidance control described below during the operation of the robot arm 10 to control the robot arm 10 so that it does not reach a singularity.

[0023] The teaching control unit 32 performs direct teaching. Specifically, in response to a movement force applied to the robot arm 10 by a user, the teaching control unit 32 rotates the joints 21-27 of the robot arm 10, thus moving the individual arms. The movement force applied to the robot arm 10 is detected by the force sensor 18. The teaching control unit 32 acquires these detection results and estimates the magnitude and direction of the movement force. Based on this estimation result, the teaching control unit 32 appropriately actuates motors 51 of a first drive unit 41 to a seventh drive unit 47, moving the robot arm 10 in the direction in which the user wishes to move the robot arm 10. The teaching control unit 32 stores the movement trajectory of the robot arm 10 set during the direct teaching as teaching data in the storage unit 33.

[0024] The storage unit 33 stores the program and teaching data. Parameters that determine the operating feel during direct teaching are also stored in the storage unit 33. In addition, the storage unit 33 of the present embodiment stores a threshold value that serves as a judgment standard when judging whether the robot arm 10 reaches a region near a singularity using a Jacobian matrix. Configuration related to singularity avoidance control

[0025] The robot control unit 31 executes avoidance control, in which, when the robot arm 10 reaches a singularity while operating the robot arm 10 according to the teaching data, the robot control unit 31 rotates the third axis 2C, which is a redundant axis, and thus the second twist joint 23, away from the singularity. According to this avoidance control, it is possible to prevent uncontrollability of the robot arm 10 while maintaining the position and orientation of the TCP 17.

[0026] For a user with specialized knowledge, it is possible to create teaching data so that the robot arm 10 does not reach a singularity. However, by using the direct teaching method, even a user without specialized knowledge can easily create teaching data, so it may happen that teaching data is created in which the teaching point is a singularity or passes through a singularity during operation. The robot control unit 31 avoids the uncontrollable state of the robot arm 10 by executing avoidance control in the event that such teaching data is provided to it by a user.

[0027] The robot control unit 31 executes the control specified in the following steps (A) to (D) as the avoidance controller. During the operation of the robot arm 10, it continuously monitors whether the robot arm 10 reaches a region near a singularity based on information about the position and orientation of the robot arm 10. When the robot arm 10 reaches a region near a singularity, it computationally changes the joint angle of the second twist joint 23 of the third axis 2C, which is the redundant axis, while maintaining the position and orientation of the TCP 17. By calculating the joint angle of the other joints 21, 22, 24-27 of the robot arm 10 at the changed joint angle of the second twist joint 23 of the third axis 2C, it determines a joint angle of the second twist joint 23 at which the singularity can be avoided.It continues the operational control of the robot arm 10 with the determined angle as the new joint angle of the second torsion joint 23.

[0028] To execute this avoidance control, the robot control unit 31 functionally includes a monitoring unit 34, a judgment unit 35, a joint angle calculation unit 36, and a determination unit 37. The monitoring unit 34 is a functional unit responsible for a part of step (A) and monitors the position and orientation of the robot arm 10 using a Jacobian matrix. The Jacobian matrix converts the joint angular velocity of the robot arm 10 into the tip end velocity of the robot arm 10 and thus into the velocity of the TCP 17. When a pose P of the TCP 17 of the robot arm 10 is p=[x, y, Z, U, V, W], the Jacobian matrix between the change in the joint angle and the change in the pose P is expressed by the Jacobian matrix formula det|J| shown in formula (1) below. In formula (1), θ1-θ7 are joint angle vectors of the first axis 2A to seventh axis 2G of the joints 21-27, respectively. [Expression 1] J=[∂x∂θ1∂x∂θ2∂x∂θ3∂x∂θ4∂x∂θ5∂x∂θ6∂x∂θ7∂y∂θ1∂y∂θ2∂y∂θ3 ∂y∂θ4∂y∂θ5∂y∂θ6∂y∂θ7∂z∂θ1∂z∂θ2∂z∂θ3∂z∂θ4∂z∂θ5∂z∂θ6∂z∂θ 7∂u∂θ1∂u∂θ2∂u∂θ3∂u∂θ4∂u∂θ5∂u∂θ6∂u∂θ7∂v∂θ1∂v∂θ2∂v∂θ3∂v∂θ4∂v∂θ5∂v∂θ6∂v∂θ7∂w∂θ1∂w∂θ2∂w∂θ3∂w∂θ4∂w∂θ5∂w∂θ6∂w∂θ7]

[0029] The monitoring unit 34 solves the Jacobian matrix formula det|J| based on the length information of the individual arm elements of the robot arm 10 and the rotation angle information obtained from the respective encoders 53 of the first drive unit 41 to the seventh drive unit 47, digitizes the pose P of the TCP 17, and monitors it. At the singularity, the Jacobian matrix formula det|J| = 0.

[0030] The judgment unit 35 is also a functional unit responsible for a part of step (A). The judgment unit 35 judges whether the robot arm 10 reaches a region near a singularity based on whether an absolute value of the numerical value of the Jacobian matrix formula det|J| falls below a predetermined threshold. This threshold is set taking into account a tolerance that prevents the robot arm 10 from reaching a singularity and is stored in the storage unit 33 in advance. If the absolute value of det|J| falls below the threshold, the judgment unit 35 judges that the robot arm 10 reaches the region near.

[0031] The joint angle calculation unit 36 ​​is a functional unit responsible for step (B). When the judgment unit 35 judges that a region near a singularity is reached, the joint angle calculation unit 36 ​​performs processing to calculate a joint angle that can avoid the singularity while maintaining the pose P of the TCP 17. Specifically, the joint angle calculation unit 36 ​​slightly changes the angle of the joint of the redundant axis in the plus and minus directions. Fig. Figure 3 is a perspective view of the robot arm 10, illustrating a situation where the joint angle of the redundant axis is determined to avoid the singularity. As mentioned above, in the present embodiment, the third axis 2C is the redundant axis. The joint angle calculation unit 36 ​​simulates slightly changing the rotation angle of the third axis 2C, i.e., the joint angle of the second twist joint 23, in the plus and minus directions.

[0032] Then, while maintaining the pose P of the TCP 17, the joint angle calculation unit 36 ​​performs a reverse kinematics calculation for the robot arm 10 with the changed joint angle of the second twist joint 23 and calculates the angle of each joint 21-27 of the robot arm 10. For example, the joint angle calculation unit 36 ​​changes the third axis 2C of the redundant axis in several steps in the plus direction and minus direction and performs the reverse kinematics calculation for each rotation angle of the redundant axis.

[0033] The determination unit 37 is a functional unit responsible for step (C). The determination unit 37 determines an angle of the redundant axis at which the robot arm 10 can be moved away from the area near the singularity. The determination unit 37 thus determines a rotation angle of the third axis 2C, i.e., a joint angle of the second torsion joint 23, at which the absolute value of the numerical value of the Jacobian matrix formula det|J| exceeds the threshold value specified for the area near the singularity.

[0034] Specifically, the determination unit 37 applies the position and orientation of the TCP 17 of the robot arm 10, determined by the joint angle calculation unit 36 ​​using the reverse kinematics calculation from the angles of the individual joints 21-27, including the redundant axis, to the Jacobian matrix formula det|J| and digitizes them. This digitization is performed for each angle of the redundant axis changed in the plus and minus directions. The determination unit 37 accesses these numerical values ​​and selects a suitable angle of the redundant axis from the angles of the redundant axis with a numerical value that exceeds the threshold value. Furthermore, the determination unit 37 updates the existing teach-in data with the angle of the redundant axis and stores it in the storage unit 33. The robot control unit 31 then controls the robot arm 10 with the updated teach-in data.

[0035] According to the robot system 1 that performs the above-described monitoring control, the monitoring unit 34 first continuously monitors whether the robot arm 10 reaches a region near a singularity using the Jacobian matrix formula. When the judgment unit 35 judges that the robot arm 10 reaches a region near a singularity, the joint angle calculation unit 36 ​​next computationally changes the joint angle of the second twist joint 23, which is the redundant axis, while maintaining the position and orientation of the TCP. Furthermore, for each changed joint angle, the reverse kinematics calculation is performed, thereby calculating the joint angle of each joint 21-27. The changed joint angle is applied to the Jacobian matrix formula and digitized, thereby determining the joint angle of the second twist joint 23 that can avoid the singularity.Consequently, by using the redundant axis, while maintaining the position and orientation of the TCP 17, a control can be achieved with which the robot arm 10 does not reach a singularity, i.e. a control that prevents the robot arm 10 from becoming uncontrollable. Operational process

[0036] Fig. 4 is a flowchart illustrating an example of the operation control of the robot arm 10 by the control device 30. The robot control unit 31 controls the motors 51 of the first drive unit 41 to the seventh drive unit 47 of the robot arm 10 based on the teaching data stored in the storage unit 33, thereby operating the robot arm 10. During this operation, the monitoring unit 34 digitizes a Jacobian matrix for the current joint angles of the joints 21-27 using the Jacobian matrix formula det|J| (step S1).

[0037] Then, the judgment unit 35 judges whether the absolute value of the numerical value of det|J| obtained in step S1 is equal to or less than the predetermined threshold (step S2). If the absolute value does not exceed the threshold (NO in step S2), the judgment unit 35 judges that the robot arm 10 does not reach a region near a singularity. In this case, the robot control unit 31 continues to control the operation of the robot arm 10 without changing the joint angle of the second twist joint 23, which is the redundant axis (step S3).

[0038] Conversely, if the absolute value is below the threshold (YES in step S2), the joint angle calculation unit 36 ​​changes the joint angle of the second torsion joint 23 of the redundant axis by a specified pitch angle in the plus direction, for example, by software calculation in a state of fixed position and orientation of the TCP 17 (step S4). It then performs the reverse kinematics calculation with the robot arm 10 in the state after the redundant axis angle change and calculates the angle of each joint 21-27 at that time (step S5).

[0039] Then, it is checked whether the redundant axis angle change is complete (step S6). For example, in a setting where the redundant axis angle is changed by five pitch angles in the plus direction and five pitch angles in the minus direction, it is checked whether the angle change for these ten pitch angles has been completed. If the redundant axis angle change has not been completed (NO in step S6), the process returns to step S4, changes the redundant axis angle to a different angle, and repeats the same processing.

[0040] Once the change in the angle of the redundant axis has been completed (YES in step S6), the joint angle calculation unit 36 ​​checks whether a solution exists for the reverse kinematics calculation performed in step S5 (step S7). A range exists for the robot arm 10 in which it can operate. It may happen that the robot arm 10 leaves the possible range of motion due to a change in the angle of the redundant axis. Outside the possible range of motion, the robot arm 10 cannot move. In this case, the result is that no solution exists despite the reverse kinematics calculation.

[0041] If a solution to the reverse kinematics calculation exists (YES in step S7), the determination unit 37 calculates the absolute value of det|J| of the Jacobian matrix formula for the joint angle obtained in step S5 (step S8). The resulting numerical value is a value different from the absolute value of det|J| calculated in step S1 because the redundant axis angle has been changed. Subsequently, the determination unit 37 selects the redundant axis angle at which the absolute value of det|J| is greater than the threshold used in the judgment in step S2 (step S9). When extracting redundant axis angles for which multiple solutions exist in the reverse kinematics calculation, the setting may be such that the redundant axis angle that exceeds the threshold and at which the absolute value of det|J| is largest is selected.In the subsequent operation control of the robot arm 10, teaching data is applied in which the joint angles of the joints 21-27 have been updated based on the selected angle of the redundant axis.

[0042] However, if no solution exists for the reverse kinematics calculation (NO in step S7), this means that no redundant axis angle exists that can prevent the robot arm 10 from reaching the singularity. In this case, the detection unit 37 generates an alarm on the control panel 19 or another display device and stops control of the robot arm 10 (step S10). Subsequently, measures such as regenerating the teaching data are taken. Invention contained in the above embodiment

[0043] In the embodiment described above, the invention specified below is included.

[0044] A control method for a robot according to one aspect of the present invention is a control method for a vertical multi-joint robot with a redundant axis, wherein, based on information on the position and orientation of the robot, it is monitored whether the robot reaches an area near a singularity, when the robot reaches the area near the singularity, the angle of the redundant axis is calculated to be changed while maintaining the position and orientation of a TCP of the robot, the angle of the redundant axis that can avoid the singularity is determined by calculating the angle of the other joints of the robot at the changed angle of the redundant axis, and the operation of the robot is controlled with the calculated angle as the new angle of the redundant axis.

[0045] According to this control method, it is continuously monitored whether the robot reaches an area near a singularity. When it reaches an area near a singularity, the angle of the joint of the redundant axis is mathematically changed, and an angle of the redundant axis is determined that can avoid the singularity while maintaining the position and orientation of the TCP. Thus, by using the redundant axis, while maintaining the position and orientation of the TCP, control can be achieved that prevents the robot from reaching a singularity, thus preventing the robot from becoming uncontrollable.

[0046] In the above control method for a robot, the position and orientation of the robot are judged based on a numerical value of a Jacobian matrix formula, and when an absolute value of the numerical value of the Jacobian matrix formula falls below a predetermined threshold, it is judged that the robot reaches an area near a singularity.

[0047] According to this aspect, whether the robot is approaching a singularity can be more objectively assessed based on the numerical value of the Jacobian matrix formula. Thus, the relationship between the robot's operating axes and the TCP position is continuously captured using the Jacobian matrix. If the numerical value of the Jacobian matrix falls below the threshold, it can be judged that a singularity is approaching, thus simplifying the robot's control logic.

[0048] In the above control method for a robot, an aspect is possible in which a reverse kinematics calculation is performed, in which the angle of the joint of the redundant axis is mathematically changed in the plus direction and in the minus direction while maintaining the position and orientation of a TCP of the robot, and thus the angle of each joint of the robot is calculated.

[0049] By performing the reverse kinematics calculation, the angle of the robot's joints can be calculated for a fixed position and orientation of the TCP. Based on the above considerations, by shifting the angle of the redundant axis in the plus and minus directions, the reverse kinematics calculation can quickly determine a joint angle that can be used to avoid the singularity.

[0050] A robot system according to another aspect of the present invention comprises a vertical multi-joint robot with a redundant axis and a control unit that controls the operation of the robot, wherein the control unit includes a monitoring unit that digitizes the position and orientation of the robot using a Jacobian matrix formula; a judging unit that judges whether the robot reaches a region near a singularity based on whether an absolute value of the numerical value of the Jacobian matrix formula falls below a predetermined threshold; a joint angle calculation unit that performs a reverse kinematics calculation when the robot reaches a region near a singularity, computationally changing the angle of the joint of the redundant axis slightly in the plus and minus directions while maintaining the position and orientation of a TCP of the robot;and thus calculates the angle of the individual joints of the robot, and includes a determination unit that applies the position and orientation of the robot, determined from the changed angle of the redundant axis and the angles of the individual joints of the robot obtained by the reverse kinematics calculation, to the Jacobian matrix formula and digitizes them, and determines an angle of the redundant axis that is above the threshold value, wherein the control unit controls the operation of the robot with the determined angle as the new angle of the redundant axis.

[0051] According to this robot system, the monitoring unit first continuously monitors whether the robot reaches a region near a singularity using the Jacobian matrix formula. When the calculation unit judges that it reaches a region near a singularity, the joint angle calculation unit and the determination unit computationally change the angle of the joint of the redundant axis and determine an angle of the redundant axis that can avoid the singularity while maintaining the position and orientation of the TCP. Thus, by using the redundant axis while maintaining the position and orientation of the TCP, control that prevents the robot from reaching a singularity can be achieved, thus preventing the robot from becoming uncontrollable. QUOTES CONTAINED IN THE DESCRIPTION

[0000] This list of documents submitted by the applicant was generated automatically and is included solely for the convenience of the reader. This list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions. Cited patent literature

[0000] JP 2020-505244 A

[0004]

Claims

[1] Control method for a vertical multi-joint robot with redundant axis, where based on information about the position and orientation of the robot, it is monitored whether the robot reaches an area near a singularity, when the robot reaches the area near the singularity, the angle of the redundant axis is mathematically changed while the position and orientation of a TCP of the robot are maintained, by calculating the angle of the other joints of the robot at the changed angle of the redundant axis, the angle of the redundant axis is determined with which the singularity can be avoided, and the operation of the robot is controlled with the determined angle as the new angle of the redundant axis. [2] A control method for a robot according to claim 1, wherein a position and an orientation of the robot are judged based on a numerical value of a Jacobian matrix formula, and in the case where an absolute value of the numerical value of the Jacobian matrix formula is less than a predetermined threshold value, it is judged that the robot reaches a region near a singularity. [3] A control method for a robot according to claim 1, wherein a reverse kinematics calculation is carried out, wherein the angle of the redundant axis is changed in the plus direction and in the minus direction while maintaining the position and orientation of the TCP, and thus the angle of each joint of the robot is calculated. [4] Robot system comprising: a vertical multi-joint robot with a redundant axis and a control unit that controls the operation of the robot, where the control unit includes: a monitoring unit that digitizes the position and orientation of the robot using a Jacobian matrix formula, a judgment unit that judges whether the robot reaches an area near a singularity based on whether an absolute value of the numerical value of the Jacobian matrix formula falls below a predetermined threshold, a joint angle calculation unit that, when the robot reaches an area near a singularity, performs a reverse kinematics calculation, computationally changing the angle of the joint of the redundant axis slightly in the plus and minus directions while maintaining the position and orientation of a TCP of the robot, and thus calculates the angle of each joint of the robot, and a determination unit that applies and digitizes the position and orientation of the robot, determined from the changed angle of the redundant axis and the angles of the individual joints of the robot obtained by the reverse kinematics calculation, to the Jacobian matrix formula and determines an angle of the redundant axis that is above the threshold value, wherein the control unit controls the operation of the robot with the determined angle as the new angle of the redundant axis.

Citation Information

Patent Citations

  • Method and system for teaching a robot to reach a predetermined target in robotic manufacturing - Patent Application 20070122999

    JP2020505244A