Inverse kinematics solving method of collaborative robot
By establishing a link coordinate system for the collaborative robot and using the modified mathematical function Atan2, combined with the projection vector relationship and the triangle cosine theorem, the problem of multiple solutions in the inverse kinematics of the collaborative robot was solved, achieving efficient and accurate inverse kinematics solution and stable robot control.
Patent Information
- Application Number
- CN202210671190.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-15
- Publication Date
- 2026-02-24
- Estimated Expiration
- 2042-06-15
AI Technical Summary
Existing technologies struggle to effectively address the multiple solutions problem in the inverse kinematics of collaborative robots, especially since their structure differs from that of ordinary industrial robots, making inverse kinematics solutions difficult and confirming multiple solutions complex.
A method for solving the inverse kinematics of a collaborative robot is adopted. By establishing a link coordinate system, using the correction method of the mathematical function Atan2, and combining the projection vector relationship and the triangle cosine theorem, the joint angles are solved step by step to ensure the uniqueness of multiple solutions.
It achieves high efficiency, accuracy and stability in solving the inverse kinematics of collaborative robots, avoids inverse solution jumps, and improves the algorithm's solution efficiency and the stability of the control system.
Smart Images

Figure CN115008459B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the fields of collaborative robots and inverse kinematics, and specifically to a method for solving the inverse kinematics of a collaborative robot. Background Technology
[0002] Since the world's first collaborative robot, the UR5, was launched in 2008, collaborative robots have developed rapidly. The world's four major robot manufacturers have all launched their own collaborative robotic arms, and domestic robot manufacturers such as Aobo have also released related collaborative robots. Furthermore, the structural layout of the collaborative robots launched by various manufacturers is similar to that of the UR5.
[0003] Unlike typical industrial robots, collaborative robots have significantly different mechanical structures. Inverse kinematics is the foundation for other robotics analyses. However, because a robot is a complex, multivariable, strongly coupled, and highly nonlinear system, solving inverse kinematics involves nonlinear, high-dimensional equations, with the transcendental equations being extremely complex. Furthermore, the structural differences between collaborative robots and general industrial robots make the solution process and methods different, further complicating general solutions and handling multiple solutions.
[0004] While algorithms exist for determining the uniqueness of inverse kinematics solutions for traditional industrial robotic arms, collaborative robotic arms suffer from link offsets at the very first joint, making it difficult for currently available algorithms to provide convenient solutions and confirm the uniqueness of multiple solutions. Therefore, solving the problem of uniqueness of multiple solutions for collaborative robot inverse kinematics is crucial for the high-precision solution of such problems, and is of paramount importance for the development and application of collaborative robots. Summary of the Invention
[0005] The purpose of this invention is to address the challenges of solving inverse kinematics and ensuring the uniqueness of multiple solutions in collaborative robots, which have structures that differ from those of ordinary robots, by providing a method for solving the inverse kinematics of collaborative robots.
[0006] The objective of this invention can be achieved by adopting the following technical solutions:
[0007] A method for solving the inverse kinematics of a collaborative robot, characterized in that the method includes the following steps:
[0008] S1. Establish a linkage coordinate system and set the rotation angles of each joint axis of the collaborative robot as joint variables θ1, θ2, θ3, θ4, θ5, and θ6, where the number of joints is the number of drive motors from bottom to top of the collaborative robot mounting base.
[0009] S2. Obtain the forward kinematic equations through kinematic modeling analysis;
[0010] S3. Solve for the angle of joint 1 by mathematical analysis and transformation, using the modified mathematical function Atan2 to solve for the angle value of joint 1; solve for the angle value of joint 5 by using the mathematical relationship of the inverse kinematic equations, and then solve for the angle value of joint 6.
[0011] S4. In the process of solving the joint angles of other inverse kinematics, multiple variables are introduced through calculation and analysis. In the calculation process, based on the mathematical retention relationship, the introduced variables are retained and substituted into the solution process of the next relevant joint variable.
[0012] S5. Multiple solutions exist in the inverse kinematics solution process. By understanding the mathematical connections and dependencies in the solution process, the uniqueness of the desired inverse kinematics solution can be obtained.
[0013] Furthermore, in step S2, during the process of solving the angle of joint 1, the angle value of joint 1 is solved by mathematical analysis transformation, adopting the modified mathematical function Atan2, and combining the projection vector relationship.
[0014] Furthermore, in step S2, the angle value of joint 5 is solved by the mathematical relationship in the equation, then the angle value of joint 6 is solved, and then the angle values of joint 3, joint 2 and joint 4 are solved in sequence.
[0015] Furthermore, the inverse kinematics solution method includes the following steps: when the angle value of joint 5 is 0, the angle of joint 6 is set to 0 during the motion process, and then the angle values of other joints are calculated in sequence; during the robot motion control process, the motion of joint 5 is planned to deviate from the zero value.
[0016] Furthermore, in the process of solving the angle of joint 3, step S4 obtains the value of joint angle 1 through step S2, calculates the current position of joint 2, and calculates the current position of joint 4 based on the values of joint 5 and joint 6. Combining the position information of joint 2 and joint 4, the angle value of joint 3 is calculated using the cosine theorem of triangles.
[0017] Furthermore, in step S4, during the process of solving the angle of joint 2, the angle value of joint 2 is obtained by introducing joint variables of joint 1 and joint 3 and solving the mathematical equation system by leaving variables.
[0018] Furthermore, in step S4, the angle of joint 4 is solved by the mathematical relationship between the introduced joint variables and the inverse kinematic equation.
[0019] The present invention has the following advantages and effects compared with the prior art:
[0020] (1) This invention proposes a method for correcting the mathematical function atan2 and applies it to solving the problem of joint 1 of a collaborative robot. Compared with directly applying the end position information, it is more accurate and simpler to solve the problem of joint 1.
[0021] (2) Due to the difference in mechanical structure between collaborative robots and ordinary industrial robots, the problem of solving inverse kinematics and ensuring the uniqueness of multiple solutions has not been adequately addressed by currently available technologies. Compared to other existing technical solutions, this invention realizes the inverse kinematics for a special configuration of a collaborative robot, directly confirming the uniqueness of multiple solutions to the inverse kinematics without any additional screening and matching algorithms. The joint angle values obtained through the solution obtained in the embodiment can be sent to the robot motion control system without the need for other screening and matching algorithms, driving the robot to complete the corresponding work tasks. The technical solution of this invention greatly improves the solution efficiency of the algorithm and the stability of the control system, preventing the robot control system from experiencing risks such as "jumps" in the inverse solution. Attached Figure Description
[0022] The accompanying drawings, which are included to provide a further understanding of the invention and form part of this application, illustrate exemplary embodiments of the invention and, together with their description, serve to explain the invention and do not constitute an undue limitation thereof. In the drawings:
[0023] Figure 1 This is a flowchart of the inverse kinematics solution method for collaborative robots in this invention;
[0024] Figure 2 This is a simplified link coordinate system diagram of the collaborative robot in this invention;
[0025] Figure 3 This is a schematic diagram of the UR5 arm shape in this invention;
[0026] Figure 4 This is a schematic diagram of the complex pattern trajectory executed by the end effector of the UR5 robot in this invention;
[0027] Figure 5 This is a diagram showing the motion trajectory of the UR5 joint 1 motor rotation in this invention;
[0028] Figure 6 This is a diagram showing the motion trajectory of the UR5 joint 2 motor rotation in this invention;
[0029] Figure 7 This is a diagram showing the motion trajectory of the UR5 joint 3 motor rotation in this invention;
[0030] Figure 8 This is a diagram showing the motion trajectory of the UR5 joint 4 motor rotation in this invention;
[0031] Figure 9This is a diagram showing the motion trajectory of the UR5 joint 5 motor rotation in this invention;
[0032] Figure 10 This is a diagram showing the motion trajectory of the UR5 joint 6 motor rotation in this invention;
[0033] Figure 11 This is a schematic diagram of one projection of the XOY plane of joint variable 1 in this invention;
[0034] Figure 12 This is a second schematic diagram of the projection of the XOY plane of joint variable 1 in this invention. Detailed Implementation
[0035] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0036] Example 1
[0037] This embodiment discloses a method for solving the inverse kinematics of a collaborative robot, which includes the following steps:
[0038] T1. Establish a linkage coordinate system and set the rotation angle of each joint axis as joint variables θ1, θ2, θ3, θ4, θ5, θ6, where the number of joints is the number of drive motors on the self-cooperative robot mounting base from bottom to top.
[0039] T2. Obtain the forward kinematic equations through kinematic modeling analysis;
[0040] T3. In the process of solving inverse kinematics, multiple variables are introduced through analysis and retained in the calculation process, and then substituted into the solution process of the relevant next joint variables;
[0041] T4. Solve for the angle of joint 1 by mathematical analysis and transformation, using the modified mathematical function Atan2 to solve for the angle value of joint 1.
[0042] In step T4, during the process of solving the angle of joint 1, the angle value of joint 1 is solved by mathematical analysis transformation, adopting the modified mathematical function Atan2, and combining the projection vector relationship.
[0043] T5. Solve for the angle value of joint 5 by using the mathematical relationship of the inverse kinematic equations, then solve for the angle value of joint 6, and then solve for the angle values of joint 3, joint 2 and joint 4 in sequence.
[0044] In step T5, the angle value of joint 5 is solved by the mathematical relationship in the equation, then the angle value of joint 6 is solved, and then the angle values of joint 3, joint 2 and joint 4 are solved in sequence.
[0045] T6. Solve for the angle of joint 3. Obtain the value of joint angle 1 through 4, find the current position of joint 1, and find the current position of joint 4 based on the values of joint 5 and joint 6. Combine the position information of joint 2 and joint 4, and find the angle value of joint 3 through the cosine theorem of triangle.
[0046] In step T6, during the process of solving the angle of joint 3, the current position of joint 2 is obtained through the angle value of joint 1, and the current position of joint 4 is obtained based on the values of joint 5 and joint 6. Combining the position information of joint 2 and joint 4, the angle value of joint 3 is obtained through the cosine theorem of triangles.
[0047] T7. Solve for the angle of joint 2. Introduce joint variables of joint 1 and joint 3 through steps 4 and 6. Solve for the angle value of joint 2 by retaining variables and solving the system of mathematical equations.
[0048] In step T7, during the process of solving the angle of joint 2, the joint variables of joint 1 and joint 3 are introduced in steps S2 and S4, and the angle value of joint 2 is obtained by solving the mathematical equation system by leaving variables.
[0049] T8. Solve for the angle of joint 4 by using the mathematical relationship of the inverse kinematic equations to solve for the angle value of joint 4.
[0050] T9. For the multiple solutions in the inverse kinematics solution, obtain the relevant solutions through the mathematical correlations and dependencies in the solution process of steps T4, T6 and T7. Based on the multiple solutions of joint 5 in step T5, achieve the uniqueness of the expected inverse kinematics solution without other auxiliary matching algorithms, and then drive the robot to complete the corresponding work task.
[0051] In this embodiment, the inverse kinematics solution method further includes the following steps:
[0052] When the angle value of joint 5 is 0, the angle of joint 6 is set to 0 during the movement, and then the angle values of other joints are calculated in sequence; during the robot motion control process, the angle deviation of joint 5 from zero is planned.
[0053] Example 2
[0054] To clearly and simply illustrate this invention, the world's first commercially available collaborative robot, UR5, is used as an example, and a detailed description is provided based on the transformation matrix method using DH parameters. The UR5 collaborative robot is the world's first collaborative robot, developed and manufactured by Universal Robots of Denmark. Figure 2 As shown, the collaborative robot consists of joints 1 to 6 from bottom to top. The corresponding joint variables are the rotation angles of the robot's motor joint axes, θ1, θ2, θ3, θ4, θ5, and θ6, respectively. The base coordinate system 0 is located at the base, and coordinate systems i are established for each joint sequentially. Here, the vertical position is used as the initial analysis position, and the non-robot joint variables are at zero degrees.
[0055] Step T1: Establish the link coordinate system and obtain the link parameters of the UR5 robot according to the classic robot coordinate system establishment rule Denavit-Hartenberg parameter method (i.e., DH parameters); the DH parameters of the UR5 robot are shown in Table 1 below.
[0056] Table 1. DH Parameter Table for UR5 Robot
[0057] Link i <![CDATA[α i-1 ]]> <![CDATA[a i ]]> <![CDATA[d i ]]> <![CDATA[θ i ]]> i=1 0 0 <![CDATA[l0]]> <![CDATA[θ1]]> i=2 π / 2 <![CDATA[a1]]> <![CDATA[d1]]> <![CDATA[π / 2+θ2]]> i=3 0 <![CDATA[l2]]> 0 <![CDATA[θ3]]> i=4 0 <![CDATA[l3]]> 0 <![CDATA[-π / 2+θ4]]> i=5 -π / 2 0 <![CDATA[l 45 ]]> <![CDATA[θ5]]> i=6 π / 2 0 0 <![CDATA[π+θ6]]>
[0058] Step T2: Obtain the forward kinematic equations through kinematic modeling analysis;
[0059] By performing matrix transformations and appropriate substitutions, the forward kinematics of the UR5 robot can be obtained.
[0060]
[0061] Where, α i θ represents the torsion angle of the connecting rod. i Indicates joint angle; d i Indicates the link offset; a i-1 Indicates the length of the link; This represents the transformation from link coordinate system i-1 to link coordinate system i; in addition, for ease of representation, c represents the trigonometric function cos and s represents the trigonometric function sin; i represents the joint (motor) number of the robot from bottom to top, i = 1, 2, 3, 4, 5, 6.
[0062] The transformation of the coordinate system of joint 6 of the UR robot in coordinate system 0 is expressed as follows: By using forward kinematics and substituting the joint variables, the position and orientation information of the end effector of the UR5 robot can be obtained.
[0063]
[0064] Where, θ 234 =θ2 + θ3 + θ4, abbreviated as the sum of multiple angles, and similarly θ 23 =θ2+θ3; d1 represents the link offset of joint 1; a1 represents the link length between joint 1 and joint 2; l 45 This indicates the length of the link between joint 4 and joint 6.
[0065] Step T3: In the process of solving the inverse kinematics, multiple variables are introduced through analysis and retained in the calculation process, and then substituted into the solution process of the relevant next joint variables;
[0066] First, let the pose information input be OP. ee Currently, the UR5 robot's end flange position and attitude are in operation. tcp The pose information of other end effectors can be transformed into the robot end flange through relevant transformations.
[0067] make
[0068] n = [n x ;n y ;n z ]; o = [o x ;o y ;o z ];a=[a x ;a y ;a z ];P=[P x ;P y ;P z The elements in ], n, o, a, P correspond to respectively The elements in.
[0069] Then OP ee It can be simplified as
[0070] In terms of carrying out specific tasks and OP ee These are known or pre-planned input variables for inverse kinematics.
[0071] Step T4: Solve for the angle of joint 1. Through mathematical analysis and transformation, the angle value of joint 1 is obtained by adopting the modified mathematical function Atan2.
[0072] OP based on the position and attitude of the end flange tcp The end position information P can be obtained. tcp Then the position input information P6 for inverse kinematics can be obtained by translating the approximate vector, i.e.
[0073] P6 = P tcp -l6a6
[0074] The mathematical function Atan2 is represented as follows.
[0075]
[0076] The above function is denoted as At2+X, which is the variable for solving joint 1. Through certain mathematical analysis and transformation, the function Atan2 is modified so that it starts from the negative Y direction, denoted as At2-Y. The angle value of joint 1 is then solved by combining the projection vector on the XOY plane, as follows: Figure 11 As shown in "One of the projections of the XOY plane of joint variable 1".
[0077]
[0078] The above function is denoted as At2+X, which is the variable for solving joint 1. Through certain mathematical analysis and transformation, the function Atan2 is modified so that it starts from the negative Y direction, denoted as At2-Y. The angle value of joint 1 is then solved by combining the projection vector on the XOY plane, as follows: Figure 11 As shown in "One of the projections of joint variable 1 onto the XOY plane". Wherein, (P x P y ) is the coordinate of spatial position P6(x, y, z) on the XOY plane of the coordinate system.
[0079] in, Mathematical methods such as acos or atan can be used to solve this problem. According to... Figure 12 As shown in the second projection of the XOY plane of joint variable 1, another angle value can be obtained.
[0080]
[0081] Step T5: Solve for the angle value of joint 5, and then solve for the angle value of joint 6.
[0082] By separating the joint variable θ1 and applying the mathematical relationship of the inverse kinematic equations, we can obtain...
[0083]
[0084] Substituting the DH parameter values from Table 1, and using linear algebra matrix operations, both sides of the equation yield a 4x4 matrix. Making the elements (2, 3) equal on both sides, we obtain -sθ1a. x +cθ1a y =-c5.
[0085] Using the inverse cosine function, the angle value of joint 5, θ5 = acos(sθ1a), can be obtained. x -cθ1a y ).
[0086] By making the elements (2, 1) and (2, 2) equal on both sides of the equation, we can obtain
[0087] θ6=atan2(-sθ1o x +cθ1o y,sθ1n x -cθ1n y )
[0088] Then, the angle values of joints 3, 2 and 4 are solved in sequence.
[0089] Step T6: Solve for the angle of joint 3.
[0090] The current position of joint 2 is determined by the angle value of joint 1.
[0091] P2 = [a1sθ1, -a1cθ1, d1] T
[0092] The current position and orientation OP4 of joint 4 are obtained based on the angle values of joints 5 and 6.
[0093]
[0094] Substituting the DH parameter values from Table 1, and using linear algebra matrix operations, both sides of the equation yield a 4x4 matrix. By making the elements (1, 4), (2, 4), and (3, 4) equal on both sides, the three-dimensional spatial position information P of joint 4 can be obtained. 4x P 4y P 4z ,Right now
[0095] P 4x =n x l 45 sθ6+o x l 45 cθ6+P x
[0096] P 4y =n y l 45 sθ6+o y l 45 cθ6+P y
[0097] P 4z =n z l 45 sθ6+o z l 45 cθ6+P z
[0098] By combining the positional information of joints 2 and 4, a spatial triangle is formed.
[0099] Among them, the spatial vector P pointing from joint 2 to joint 4 24 That is, P 24 =P4-P2
[0100] The distance lp from joint 2 to joint 4 can be calculated from the vector magnitude. 24 , i.e., lp 24 =|P 24 |
[0101] Depend on Figure 3 The "UR5 arm shape" is used, and the supplementary angle of the rotation angle θ3 of joint 3 is first solved using the cosine theorem of triangles. Right now
[0102] Angle value of joint 3 Depend on Figure 3 The dashed line "UR5 arm" indicates that another solution can be obtained.
[0103]
[0104] Step S7: Solving the angle of joint 2. By introducing the joint variables of joint 1 and joint 3, the angle value of joint 2 is solved by using the method of retaining variables and solving the system of mathematical equations.
[0105]
[0106] The equation on the right is as follows
[0107]
[0108] Substituting the DH parameter values from Table 1, and using linear algebra matrix operations, both sides of the equation yield a 4x4 matrix. Making the elements (1, 3) and (3, 3) equal on both sides, we obtain...
[0109] sθ 234 =a z / sθ5
[0110] cθ 234 =(cθ1a x +sθ1a y ) / sθ5
[0111] By making the elements (1, 4) and (3, 4) on both sides of the equation equal, we can obtain
[0112] -(cθ1P x +sθ1P y +l 45 sθ 234 )=l3sθ 23 +l2sθ2
[0113] P z -l0-d1-l 45 cθ 234 =l3cθ 23 +l2cθ2
[0114] For ease of explanation, varx will be used. y varz refers to the left side of the above equation, that is
[0115] var xy =-(cθ1P x +sθ1P y +l 45 sθ 234 )
[0116] var z =P z -l0-d1-l 45 cθ 234
[0117] After the above variable substitutions and equation rearrangement, we can obtain
[0118] var xy = (l2+l3cθ3)sθ2+l3sθ3cθ2
[0119] var z = (l2+l3cθ3)cθ2-l3sθ3sθ2
[0120] At this point, the angle value of joint 2 is obtained by retaining variables and solving the two linear equations in two variables, instead of solving by elimination, such as θ2 = θ 23 -θ3, its solution range deviates from the actual range of angles.
[0121]
[0122]
[0123] The angle of joint 2 is θ2 = atan2(sθ2, cθ2).
[0124] Step T8, solving for the angle of joint 4: The angle value of joint 4 is solved by using the mathematical relationship of the inverse kinematic equations.
[0125]
[0126] Substituting the DH parameter values from Table 1, and using linear algebra matrix operations, both sides of the equation yield a 4x4 matrix. Making the elements (1, 4) and (2, 4) equal on both sides, we obtain...
[0127]
[0128] The angle of joint 4 is θ4 = atan2(sθ4, cθ4).
[0129] Step T9: Solving the multiple solutions in inverse kinematics. The relevant solutions are obtained through the mathematical correlations and dependencies in the solution process of T4, T6 and T7. Based on the multiple solutions of joint 5 in T5, the uniqueness of the desired inverse kinematic solution result is achieved without other auxiliary matching algorithms.
[0130] Adjust and adapt the angle values and ranges according to the robot's coordinate system to fit the actual UR5 robot:
[0131] Finally, the joint angle values obtained from the above solution are sent to the robot motion control system to drive the robot to complete the corresponding work tasks.
[0132] Example 3
[0133] Based on the implementation steps of the inverse kinematics solution method for a collaborative robot disclosed in Embodiment 2, where the joint variable θ5 can also be solved using other methods, as detailed below:
[0134] Step T5: Solve for the angle value of joint 5 using the mathematical relationship of the inverse kinematic equations, and then solve for the angle value of joint 6. Separating the joint variable θ1, we can obtain...
[0135]
[0136] Substituting the DH parameter values from Table 1, and using linear algebra matrix operations, both sides of the equation yield a 4x4 matrix. Making the elements (2, 3) equal on both sides, we obtain...
[0137] sθ1a x -cθ1a y =cθ5.
[0138] Using the inverse cosine function, the angle value of joint 5, θ5 = acos(sθ1a), can be obtained. x -cθ1a y ).
[0139] Furthermore, in addition to the solution steps shown in Example 1, in step T7, cθ 234 and sθ 234 There are other solutions.
[0140] Step T7, solving for the angle of joint 2: Using the angle values of joint 1 and joint 3 obtained from T3 and T4, and by introducing joint variables, the angle value of joint 2 is solved by retaining variables and solving mathematical equations.
[0141]
[0142] By making the elements (1, 3) and (2, 3) equal on both sides of the equation, we can obtain...
[0143]
[0144]
[0145] In addition to the solution steps shown in Example 1, variable substitution var2 x,y,z There are other solutions.
[0146]
[0147] Substituting the DH parameter values from Table 1, and using linear algebra matrix operations, both sides of the equation yield a 4x4 matrix. By making the elements (1,4), (2,4), and (3,4) equal on both sides, we obtain...
[0148] Example 4
[0149] Based on the implementation steps of the inverse kinematics solution method for a collaborative robot disclosed in Embodiment 1, the inverse kinematics solution method further includes:
[0150] Step T10: When the angle of joint 5 is 0, the angle of joint 6 can be set to 0 during the movement. After substituting the values of joint 5 and joint 6, the result can be simplified to obtain...
[0151]
[0152] Substituting the DH parameter values from Table 1, and using linear algebra matrix operations, both sides of the equation yield a 4x4 matrix. Making the elements (1,2) and (3,2) equal on both sides, we obtain...
[0153]
[0154] Substitute the values of joint 5 and joint 6 into the equation. Simplification yields
[0155]
[0156] By making the elements (3,1) and (3,2) equal on both sides of the equation, we can obtain...
[0157] cθ 234 =-o z
[0158] sθ 234 =-n z
[0159] Simultaneously, the position information of joint 4 can be obtained. P4 = P6 + l 45 O6
[0160] Other process steps can be performed as shown in Examples 2 and 3, sequentially calculating the angle values of other joints, and planning the angle deviation of joint 5 from zero during the robot motion control process.
[0161] Using the methods described above, corresponding simulation experiments were conducted. Figure 4 In the experiment "Complex Pattern Trajectory Executed by the End of the UR5 Robot", the corresponding motor motion trajectories of each joint axis are as follows: Figure 5 The motion trajectory of the UR5 joint 1 motor rotation is shown in the middle until... Figure 10 The motion trajectory of the UR5 joint and 6 motors shows a continuous trajectory without jumps. Therefore, the optimal solution for the inverse kinematics of the six-DOF collaborative robot arm can be directly obtained without the aid of any filtering or matching algorithms, thus solving the uniqueness problem. The above solution process is all performed using symbolic computation, eliminating the need for repeated iterations, and achieving high-precision motion calculation for multi-joint robots.
[0162] The above embodiments are preferred embodiments of the present invention, but the embodiments of the present invention are not limited to the above embodiments. Any changes, modifications, substitutions, combinations, or simplifications made without departing from the spirit and principle of the present invention shall be considered equivalent substitutions and shall be included within the protection scope of the present invention.
Claims
1. A method for solving the inverse kinematics of a collaborative robot, characterized in that, The inverse kinematics solution method includes the following steps: S1. Establish a linkage coordinate system and set the rotation angles of each joint axis of the collaborative robot as joint variables θ1, θ2, θ3, θ4, θ5, and θ6, where the number of joints is the number of drive motors from bottom to top of the collaborative robot mounting base. S2. Obtain the forward kinematic equations through kinematic modeling analysis; S3. Solve for the angle of joint 1. Through mathematical analysis and transformation, using the modified mathematical function Atan2, and combining the projection vector relationship, solve for the angle value of joint 1. Specifically: The mathematical function Atan2 is represented as follows: The above function is denoted as At2+X, which is the variable for solving joint 1. Through certain mathematical analysis and transformation, the function atan2 is modified so that it starts from the negative Y direction, denoted as At2-Y. The angle value of joint 1 is then solved by combining the projection vector on the XOY plane. , Where a1 represents the length of the link between joint 1 and joint 2, P x and P y These are the coordinates of the position input information (X, Y, Z) on the XOY plane of the coordinate system, where... acos or atan can be used as alternatives for solving the problem; The other angle value can be obtained by projecting the joint variable 1 onto the XOY plane: ; Then, by using the mathematical relationship of the inverse kinematic equations, the angle value of joint 5 is solved, and then the angle value of joint 6 is solved; S4. In the process of solving the joint angles of other inverse kinematics, multiple variables are introduced through calculation and analysis. In the calculation process, based on the mathematical retention relationship, the introduced variables are retained and substituted into the solution process of the next relevant joint variable. S5. Multiple solutions exist in the inverse kinematics solution process. By understanding the mathematical connections and dependencies in the solution process, the uniqueness of the desired inverse kinematics solution can be obtained.
2. The method for solving the inverse kinematics of a collaborative robot according to claim 1, characterized in that, In step S2, the angle value of joint 5 is solved by the mathematical relationship in the equation, then the angle value of joint 6 is solved, and then the angle values of joint 3, joint 2 and joint 4 are solved in sequence.
3. The method for solving the inverse kinematics of a collaborative robot according to claim 2, characterized in that, The inverse kinematics solution method includes the following steps: When the angle value of joint 5 is 0, the angle of joint 6 is set to 0 during the motion process, and then the angle values of other joints are calculated in sequence; during the robot motion control process, the motion of joint 5 is planned to deviate from the zero value.
4. The inverse kinematics solution method for a collaborative robot according to claim 1, characterized in that, In step S4, during the process of solving the angle of joint 3, the value of joint angle 1 is obtained through step S2, the current position of joint 2 is obtained, and the current position of joint 4 is obtained based on the values of joint 5 and joint 6. Combining the position information of joint 2 and joint 4, the angle value of joint 3 is obtained through the cosine theorem of triangle.
5. The method for solving the inverse kinematics of a collaborative robot according to claim 1, characterized in that, In step S4, during the process of solving the angle of joint 2, the angle value of joint 2 is obtained by introducing joint variables of joint 1 and joint 3 and solving the mathematical equation system by leaving variables.
6. The method for solving the inverse kinematics of a collaborative robot according to claim 1, characterized in that, In step S4, the angle of joint 4 is solved by the mathematical relationship between the introduced joint variables and the inverse kinematic equation.
Citation Information
Patent Citations
Inverse kinematics analytical solution control method for six-degree-of-freedom mechanical arm
CN113127989A
Numerical stabilization algorithm for inverse kinematics analytical solution of S-R-S structure seven-degree-of-freedom mechanical arm
CN113378349A