Method and apparatus for determining the attitude of parallel robots based on inverse kinematics
By splitting the closed-loop structure of a parallel robot into two open-loop structures and solving the inverse kinematics problem based on standard DH parameters, and selecting a unique solution using preset conditions, the problems of slow inverse kinematics calculation and large error of parallel robots are solved, and efficient and accurate attitude calculation is achieved.
Patent Information
- Application Number
- CN202211214223.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-30
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2042-09-30
AI Technical Summary
Existing technologies suffer from slow computation speed and large errors in solving inverse kinematics of parallel robots. In particular, analytical methods are not effective in high-degree-of-freedom parallel robots and redundant robots, and cannot accurately determine joint values.
The closed-chain structure of the parallel robot is divided into two open-chain structures. The inverse kinematics solution is performed based on the standard DH parameters of the flange end and each joint. The joint angles are determined by a series-parallel hybrid solution method, and a unique solution is selected using preset conditions.
It improves the speed and accuracy of attitude calculation for parallel robots, with fast calculation speed that does not depend on the rotation angle of the active axis, and improves the calculation accuracy of the rotation angle of the driven axis.
Smart Images

Figure CN115648177B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of industrial robot technology, and in particular relates to a method and apparatus for determining the posture of a parallel robot based on inverse kinematics. Background Technology
[0002] Kinematic analysis of serial or parallel robots includes forward kinematics problems and inverse kinematics problems. The inverse kinematics problem is defined as solving for several independent input motions given the position and orientation information of the moving platform. For serial or parallel robots, the expressions for these multiple input motions are independent, allowing for parallel computation and rapid solution. The forward kinematics problem, on the other hand, is solving for the position and orientation of the moving platform given multiple input motions.
[0003] There are two main methods for solving inverse kinematics problems for parallel robots: numerical methods and analytical methods. Numerical methods primarily utilize iterative algorithms, obtaining the robot's joint values through numerous iterative calculations. The advantage of numerical methods is their applicability to parallel robots of arbitrary configurations; however, they require a significant amount of time for iterative calculations and are subject to certain errors. While analytical methods are less effective for parallel robots with high degrees of freedom and cannot calculate solutions for singularities or redundant robots, for certain specific parallel robot structures, analytical methods are significantly faster than numerical methods and are theoretically error-free.
[0004] For parallel robots, inverse kinematics solutions are often relatively straightforward (e.g., the robot's joint values can be effectively determined based on the platform's shape); however, forward kinematics solutions can be quite complex, making it impossible to accurately determine the robot's joint values based on the platform's shape. Summary of the Invention
[0005] This invention provides a method and apparatus for determining the posture of a parallel robot based on inverse kinematics. This method can improve the speed and accuracy of posture calculation for parallel robots.
[0006] To achieve the above objectives, according to a first aspect of the present application, a method for determining the posture of a parallel robot based on inverse kinematics is provided. This method includes dividing the closed-loop structure of the parallel robot into a first open-loop structure and a second open-loop structure. The closed-loop structure is a closed structure formed by connecting a first joint, a second joint, a third joint, a fourth joint, a fifth joint, a sixth joint, and a seventh joint. Both the first open-loop structure and the second open-loop structure are structures formed by connecting several joints. Based on the flange end and the standard DH parameters corresponding to each joint of the closed-loop structure, inverse kinematics is solved to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the angle θ2 of the second joint, and the angle θ2 of the third joint. Angles θ3, θ4 (fourth joint angle), θ5 (fifth joint angle), θ6 (sixth joint angle), and θ7 (seventh joint angle); when the first open-chain structure is formed by connecting the first joint, second joint, third joint, fourth joint, and fifth joint, for any joint angle in the first open-chain structure: if there are two solutions for the joint angle, then the solution that satisfies the first preset condition is selected from the two solutions as the unique solution for that joint angle; when the first open-chain structure is formed by connecting the first joint, sixth joint, seventh joint, fourth joint, and fifth joint, for any joint angle in the second open-chain structure: if there are two solutions for the joint angle, then the solution that satisfies the second preset condition is selected from the two solutions as the unique solution for that joint angle.
[0007] Optionally, the inverse kinematics solution is performed based on the standard DH parameters corresponding to each joint of the flange end and the closed chain structure to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, the fifth joint angle θ5, the sixth joint angle θ6, and the seventh joint angle θ7, including:
[0008] Based on the flange end and the first standard DH parameters corresponding to each joint in the first open chain structure formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint, the inverse kinematics solution is performed to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, and the fifth joint angle θ5. Based on the flange end and the second standard DH parameters corresponding to each joint in the first open chain structure formed by connecting the first joint, the fourth joint, the fifth joint, the sixth joint, and the seventh joint, the inverse kinematics solution is performed to obtain the sixth joint angle θ6 and the seventh joint angle θ7.
[0009] Optionally, based on the flange end and the first standard DH parameters corresponding to each joint in the first open chain structure formed by connecting the first joint, second joint, third joint, fourth joint, and fifth joint, the inverse kinematics solution is performed to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, and the fifth joint angle θ5, including:
[0010] Determine the known transformation matrix from the fifth joint to the robot's base coordinate system. Based on the first standard DH parameters of the parallel robot, determine the transformation matrix containing the d1 variable. Transformation matrix containing θ2 variables Transformation matrix containing θ3 variables Transformation matrix containing θ4 variables and the transformation matrix containing θ5 variables. in, This represents the transformation matrix from the first joint to the robot's base coordinate system; This represents the transformation matrix from the second joint to the first joint. This represents the transformation matrix from the third joint to the second joint. This represents the transformation matrix from the fourth joint to the third joint. This represents the transformation matrix from the fifth joint to the fourth joint; based on the transformation matrix containing the d1 variable... The transformation matrix containing θ2 variables The transformation matrix containing θ3 variables The transformation matrix containing θ4 variables and the transformation matrix containing the θ5 variable Determine the transformation matrix containing joint variables. Based on the known transformation matrix and the transformation matrix containing joint variables An equation is established based on the element-to-element correspondence between them to obtain the fifth joint angle θ5; based on the known transformation matrix... The transformation matrix containing θ5 variables And the fifth joint angle θ5, determine the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, and the fourth joint angle θ4.
[0011] Optionally, the known transformation matrix for determining the fifth joint to the robot's base coordinate system is... Includes: obtaining the known transformation matrix from the flange end to the world coordinate system. and the known transformation matrix from the robot's base coordinate system to the world coordinate system. Based on the first standard DH parameters of the parallel robot, the known transformation matrix from the flange end to the fifth joint is determined. based on as well as Determine the known transformation matrix from the fifth joint to the robot's base coordinate system.
[0012] Optionally, based on a known transformation matrix Transformation matrix containing θ5 variables And the fifth joint angle θ5, determining the first joint's movement distance d1 along the robot's basic coordinate system Z-axis, the second joint angle θ2, the third joint angle θ3, and the fourth joint angle θ4, including: determining the known transformation matrix based on the fifth joint angle θ5. Based on the known transformation matrix and the known transformation matrix Determine the known transformation matrix Determine the transformation matrix containing variables Based on the known transformation matrix and transformation matrix containing variables The correspondence between elements is used to determine the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the joint angle θ2 of the second joint, the joint angle θ3 of the third joint, and the joint angle θ4 of the fourth joint.
[0013] Optionally, determine the transformation matrix containing the variables. Includes: based on the transformation matrix containing the d1 variable The transformation matrix containing θ2 variables The transformation matrix containing θ3 variables The transformation matrix containing θ4 variables Determine the transformation matrix containing variables
[0014] Optionally, the transformation based on the known transformation matrix and the transformation matrix containing variables Determining the element correspondence between the elements, and determining the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, and the fourth joint angle θ4, includes: from the known transformation matrix... Extract the position coordinates of the fourth joint in the robot's base coordinate system; and extract them from the transformation matrix containing variables. Extract the position function coordinates of the fourth joint in the robot's base coordinate system; establish a system of equations based on the element-wise correspondence between the position coordinates and the position function coordinates to obtain the movement distance d1 of the first joint along the Z-axis of the robot's base coordinate system, the second joint angle θ2, and the third joint angle θ3; substitute the movement distance d1, the second joint angle θ2, and the third joint angle θ3 into the transformation matrix containing variables. Obtain the transformation matrix with θ4 as the variable. Based on the known transformation matrix and the transformation matrix with θ4 as a variable The element correspondence between them is used to determine the fourth joint angle θ4.
[0015] To achieve the above objectives, according to a second aspect of the embodiments of this application, a device for determining the posture of a parallel robot based on inverse kinematics is provided. The device includes: a partitioning module for partitioning the closed-loop structure of the parallel robot into a first open-loop structure and a second open-loop structure; the closed-loop structure is a closed structure formed by connecting a first joint, a second joint, a third joint, a fourth joint, a fifth joint, a sixth joint, and a seventh joint; both the first open-loop structure and the second open-loop structure are structures formed by connecting several joints; and a solution-solving module for performing inverse kinematics solutions based on the flange end and the standard DH parameters corresponding to each joint of the closed-loop structure, to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, and the third joint angle... θ3, fourth joint angle θ4, fifth joint angle θ5, sixth joint angle θ6, and seventh joint angle θ7; A first selection module is used, when the first open-chain structure is formed by connecting the first joint, second joint, third joint, fourth joint, and fifth joint, for any joint angle in the first open-chain structure: if there are two solutions for the joint angle, then select the solution that satisfies the first preset condition from the two solutions as the unique solution for that joint angle; A second selection module is used, when the first open-chain structure is formed by connecting the first joint, sixth joint, seventh joint, fourth joint, and fifth joint, for any joint angle in the second open-chain structure: if there are two solutions for the joint angle, then select the solution that satisfies the second preset condition from the two solutions as the unique solution for that joint angle.
[0016] Optionally, the proposed solution module includes: a first proposed solution module, used to perform inverse kinematics solution based on the flange end and the first standard DH parameters corresponding to each joint in the first open chain structure formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint, to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, and the fifth joint angle θ5; and a second proposed solution module, used to perform inverse kinematics solution based on the flange end and the second standard DH parameters corresponding to each joint in the first open chain structure formed by connecting the first joint, the fourth joint, the fifth joint, the sixth joint, and the seventh joint, to obtain the sixth joint angle θ6 and the seventh joint angle θ7.
[0017] To achieve the above objectives, a computer-readable medium is provided according to a third aspect of the present application, having a computer program stored thereon, wherein the program, when executed by a processor, implements the method described in the first aspect.
[0018] Compared with the prior art, the present invention provides a method and apparatus for determining the posture of a parallel robot based on inverse kinematics. The method includes: first, dividing the closed-chain structure of the parallel robot into a first open-chain structure and a second open-chain structure; the closed-chain structure is a closed structure formed by connecting a first joint, a second joint, a third joint, a fourth joint, a fifth joint, a sixth joint, and a seventh joint; both the first open-chain structure and the second open-chain structure are structures formed by connecting several joints; second, based on the flange end and the standard DH parameters corresponding to each joint of the closed-chain structure, performing inverse kinematics solution to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the angle θ2 of the second joint, and the angle θ2 of the third joint. Angles θ3, θ4 (fourth joint angle), θ5 (fifth joint angle), θ6 (sixth joint angle), and θ7 (seventh joint angle); finally, when the first open-chain structure is formed by connecting the first, second, third, fourth, and fifth joints, for any joint angle in the first open-chain structure: if there are two solutions for the joint angle, then the solution satisfying the first preset condition is selected from the two solutions as the unique solution for that joint angle; when the first open-chain structure is formed by connecting the first, sixth, seventh, fourth, and fifth joints, for any joint angle in the second open-chain structure: if there are two solutions for the joint angle, then the solution satisfying the second preset condition is selected from the two solutions as the unique solution for that joint angle. Thus, by splitting the closed-chain structure into two open-chain structures, and determining the robot's joint angles based on a serial-parallel hybrid solution method and the robot's specific structure, the speed and accuracy of parallel robot posture calculation are improved. Attached Figure Description
[0019] The following sections will describe some specific embodiments of the invention in a detailed manner by way of example and not limitation, with reference to the accompanying drawings. The same reference numerals in the drawings denote the same or similar parts or portions. Those skilled in the art should understand that these drawings are not necessarily drawn to scale. In the drawings:
[0020] Figure 1 This is a flowchart illustrating a method for determining the posture of a parallel robot based on inverse kinematics according to an embodiment of the present invention.
[0021] Figure 2 This is a schematic diagram of the structure of the first standard DH parameter of a parallel robot provided in an embodiment of the present invention;
[0022] Figure 3 A schematic diagram of the structure of the second standard DH parameter of a parallel robot provided for an embodiment of the invention;
[0023] Figure 4 This is a schematic diagram of the structure of a parallel robot provided in an embodiment of the present invention;
[0024] Figure 5 This is a schematic diagram of a device for determining the posture of a parallel robot based on inverse kinematics, provided in an embodiment of the present invention. Detailed Implementation
[0025] To make the objectives, features, and advantages of this invention more apparent and understandable, the technical solutions of the embodiments of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this invention, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0026] like Figure 1 The diagram shown is a flowchart illustrating a method for determining the attitude of a parallel robot based on inverse kinematics according to an embodiment of the present invention; as shown... Figure 2 The diagram shown is a structural schematic of the first standard DH parameters of a parallel robot provided in an embodiment of the present invention; as shown... Figure 3 The diagram shown is a structural schematic of the second standard DH parameter of a parallel robot provided in an embodiment of the invention. Figure 4 The diagram shown is a structural schematic of a parallel robot provided in an embodiment of the present invention.
[0027] A method for determining the posture of a parallel robot based on inverse kinematics, the method comprising at least the following steps:
[0028] S101, the closed-chain structure of the parallel robot is divided into a first open-chain structure and a second open-chain structure; the closed-chain structure is a closed structure formed by connecting a first joint, a second joint, a third joint, a fourth joint, a fifth joint, a sixth joint, and a seventh joint; both the first open-chain structure and the second open-chain structure are structures formed by connecting several joints.
[0029] S102, based on the standard DH parameters corresponding to the flange end and each joint of the closed chain structure, perform inverse kinematics solution to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, the fifth joint angle θ5, the sixth joint angle θ6 and the seventh joint angle θ7.
[0030] S103, when the first open chain structure is formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint, for any joint angle in the first open chain structure: if there are two sets of solutions for the joint angle, then select the solution that satisfies the first preset condition from the two sets of solutions as the unique solution for that joint angle;
[0031] S104, when the first open chain structure is formed by connecting the first joint, the sixth joint, the seventh joint, the fourth joint and the fifth joint, for any joint angle in the second open chain structure: if there are two sets of solutions for the joint angle, then select the solution that satisfies the second preset condition from the two sets of solutions as the unique solution for that joint angle.
[0032] In S101, such as Figure 3 As shown, for example: the first, second, third, fourth, fifth, sixth, and seventh joints of a parallel robot are combined to form a closed-loop structure; the closed-loop structure is divided into a first open-loop structure formed by connecting the first, second, third, fourth, and fifth joints and a second open-loop structure formed by connecting the sixth and seventh joints; or, the closed-loop structure is divided into a first open-loop structure formed by connecting the first, sixth, seventh, fourth, and fifth joints and a second open-loop structure formed by connecting the second and third joints.
[0033] Therefore, splitting the closed-chain structure into two open-chain structures is beneficial to improving the efficiency of attitude calculation for parallel robots.
[0034] It should be noted that the third and seventh joints are driven axes; the first, second, fourth, fifth, and sixth joints are active axes.
[0035] In S102 to S104, when the first, second, third, fourth, and fifth joints are connected to form a first open-chain structure, and the sixth and seventh joints are connected to form a second open-chain structure, the standard DH parameters of the parallel robot are the first standard DH parameters, such as... Figure 2 As shown. When the first, sixth, seventh, fourth, and fifth joints are connected to form the first open-chain structure, and the second and third joints are connected to form the second open-chain structure, the DH parameters of the parallel robot are the second standard DH parameters.
[0036] Moreover, θ dh,x (°), d dh,x (mm), a dh,x The 'x' in (mm) indicates the joint axis number, for example, x = 1, 2, 3, 4, 5, 6, 7.
[0037] Based on the standard DH parameters corresponding to the flange end and each joint of the closed chain structure, the inverse kinematics solution is performed to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, the fifth joint angle θ5, the sixth joint angle θ6, and the seventh joint angle θ7, including the following steps:
[0038] S1, based on the flange end and the first standard DH parameters corresponding to each joint in the first open chain structure formed by the first joint, the second joint, the third joint, the fourth joint, and the fifth joint, perform inverse kinematics solution to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, and the fifth joint angle θ5.
[0039] S2, based on the flange end and the second standard DH parameters corresponding to each joint in the first open chain structure formed by the connection of the first joint, the fourth joint, the fifth joint, the sixth joint and the seventh joint, performs inverse kinematics solution to obtain the sixth joint angle θ6 and the seventh joint angle θ7.
[0040] In S1, the first open-chain structure formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint forms the main axis, and the second open-chain structure formed by connecting the sixth joint and the seventh joint forms the secondary axis. The standard parameters of the parallel robot are the first standard DH parameters.
[0041] exist Figure 2In the schematic diagram of the second standard DH parameters shown, the flange is used as the dividing line for explanation. The joints located before the flange are as follows: the second joint is derived from the first joint and the DH parameter corresponding to the second joint is calculated with reference to the first joint; the third joint is derived from the second joint and the DH parameter corresponding to the third joint is calculated with reference to the second joint; the fourth joint is derived from the third joint and the DH parameter corresponding to the fourth joint is calculated with reference to the third joint; and the fifth joint is derived from the fourth joint and the DH parameter corresponding to the fifth joint is calculated with reference to the fourth joint.
[0042] The joints located after the flange: the sixth joint is derived from the first joint and the DH parameter corresponding to the sixth joint is calculated with reference to the first joint; the seventh joint is derived from the sixth joint and the DH parameter corresponding to the seventh joint is calculated with reference to the sixth joint.
[0043] S1 is achieved through at least the following steps:
[0044] S11, Determine the known transformation matrix from the fifth joint to the robot's base coordinate system.
[0045] S12, based on the first standard DH parameters of the parallel robot, determine the transformation matrix containing the d1 variable. Transformation matrix containing θ2 variables Transformation matrix containing θ3 variables Transformation matrix containing θ4 variables and the transformation matrix containing θ5 variables. in, This represents the transformation matrix from the first joint to the robot's base coordinate system; This represents the transformation matrix from the second joint to the first joint. This represents the transformation matrix from the third joint to the second joint. This represents the transformation matrix from the fourth joint to the third joint. This represents the transformation matrix from the fifth joint to the fourth joint;
[0046] S13, based on the transformation matrix containing d1 variables. Transformation matrix containing θ2 variables Transformation matrix containing θ3 variables Transformation matrix containing θ4 variables and the transformation matrix containing θ5 variables. Determine the transformation matrix containing joint variables.
[0047] S14, based on the known transformation matrix and transformation matrix containing joint variables Equations were established based on the element correspondences between them to obtain the fifth joint angle θ5;
[0048] S15, based on the known transformation matrix Transformation matrix containing θ5 variables And the fifth joint angle θ5, determine the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, and the fourth joint angle θ4.
[0049] The specific implementation process of S11 is as follows: Obtain the known transformation matrix from the flange end to the world coordinate system. and the known transformation matrix from the robot's base coordinate system to the world coordinate system. Based on the first standard DH parameters of the parallel robot, the known transformation matrix from the flange end to the fifth joint is determined. Based on the above and the Determine the known transformation matrix from the fifth joint to the robot's base coordinate system.
[0050] For example: Given the transformation matrix The calculation formula is shown in equation (1) below:
[0051]
[0052] Here, each element in the known transformation matrix is known.
[0053] In S12, the transformation matrix contains the variable d1. As shown in equation (2):
[0054]
[0055] Transformation matrix containing θ2 variables As shown in equation (3):
[0056]
[0057] Transformation matrix containing θ3 variables As shown in equation (4):
[0058]
[0059] Transformation matrix containing θ4 variables As shown in equation (5):
[0060]
[0061] Substituting α = 90° for the fifth joint in the first standard DH parameters into the transformation matrix containing the θ5 variable. From this, we obtain the following equation (6):
[0062]
[0063] Where, θ dh,2 d dh,2 θ dh,3 θ dh,4 d dh,3 d dh,4 θ dh.5 d dh.5 All of these belong to the first standard DH parameters, see [link / reference]. Figure 3 .
[0064] In S13, the transformation matrix contains joint variables. It can be calculated based on the formula shown in equation (7), as follows:
[0065]
[0066] The final transformation matrix containing joint variables is obtained. The expression is shown in equation (8):
[0067]
[0068] In S14, the transformation matrix containing joint variables will be... Dividing the element in the third row and first column by the element in the third row and second column yields tanθ5, and this is combined with the known transformation matrix. Dividing the element in the third row and first column by the element in the third row and second column yields the specific value of tanθ5. Using inverse trigonometric functions, the fifth joint angle θ5 is obtained.
[0069] In S15, based on the known transformation matrix Transformation matrix containing θ5 variables And the fifth joint angle θ5, determining the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, and the fourth joint angle θ4, includes at least the following steps:
[0070] Based on the fifth joint angle θ5, determine the known transformation matrix. Based on the known transformation matrix and the known transformation matrix Determine the known transformation matrix Determine the transformation matrix containing variables Based on the known transformation matrix and transformation matrix containing variables The correspondence between elements is used to determine the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the joint angle θ2 of the second joint, the joint angle θ3 of the third joint, and the joint angle θ4 of the fourth joint.
[0071] For example: Substitute the obtained θ5 into the transformation matrix containing the θ5 variable. In the process, the known transformation matrix is obtained.
[0072] For example: Given the transformation matrix The calculation formula is shown in equation (9):
[0073]
[0074] in, yes The inverse matrix.
[0075] Here, the transformation matrix is known. Each element in the equation is known.
[0076] Obtain the transformation matrix containing variables The expression for is shown in equation (10):
[0077]
[0078] Then, from the known transformation matrix Extract the position coordinates of the fourth joint in the robot's base coordinate system; and extract them from the transformation matrix containing variables. Extract the position function coordinates of the fourth joint in the robot's base coordinate system; establish a system of equations based on the element-wise correspondence between the position coordinates and the position function coordinates to obtain the movement distance d1 of the first joint along the Z-axis of the robot's base coordinate system, the second joint angle θ2, and the third joint angle θ3. Substitute the movement distance d1, the second joint angle θ2, and the third joint angle θ3 into the transformation matrix containing variables. Obtain the transformation matrix with θ4 as the variable. Based on the known transformation matrix Transformation matrix with θ4 as a variable The element correspondence between them is used to determine the fourth joint angle θ4.
[0079] For example: from a known transformation matrix The position coordinates of the fourth joint in the robot's base coordinate system are extracted as (x, y, z). Here, x, y, and z represent... The values in the first three rows of the last column.
[0080] From the transformation matrix containing variables The position function coordinates of the fourth joint in the robot's basic coordinate system are extracted as shown in equation (11):
[0081]
[0082] Establish a system of equations based on the element-wise correspondence between position coordinates and position function coordinates, for example:
[0083] Therefore, d1 = zd can be directly calculated. dh,2 -d dh,3 -d dh,4 .
[0084] The sum of the squares of x and y after subtracting a constant depends only on θ3, as shown in equation (12):
[0085]
[0086] Two solutions to θ3 can be obtained using x and y. However, this equation yields two solutions to θ3: one for the left-handed system and one for the right-handed system. Considering the practical application of parallel robots, to ensure that the polygonal shape formed in the closed-loop structure of the parallel robot is a convex polygon, when selecting the joint angle solution, a left-handed solution is chosen for any joint angle in the first open-loop structure, while a right-handed solution is chosen for any joint angle in the second open-loop structure. Therefore, combining... Figure 4 The structure of the parallel robot selects the solution that satisfies the left-hand rule from the two solutions of θ3 as the unique solution of the third joint.
[0087] After obtaining θ3, θ2 can be solved using x and y. The solution process cannot rely on just one x or y; it requires solving simultaneously. This is because either x or y can yield two solutions. The one that is repeated needs to be selected as the solution for θ2; thus, two solutions satisfying physical requirements are obtained. Then, from the two solutions for θ2, the solution satisfying the left-hand rule is selected as the unique solution for the second joint.
[0088] Substitute the second joint angle θ2 and the third joint angle θ3 into the transformation matrix containing the variables. The corresponding element σ1=sin(θ2+θ3+θ4+θ dh,2 +θ dh,3 +θ dh,4 In ), we obtain θ4.
[0089] In S2, the first open-chain structure formed by connecting the first, sixth, seventh, fourth, and fifth joints is the main axis, and the second open-chain structure formed by connecting the second and third joints is the secondary axis. The standard parameters of the parallel robot are the second standard DH parameters.
[0090] exist Figure 3 In the schematic diagram of the second standard DH parameters shown, the flange is used as the dividing line for explanation. The joints located before the flange are as follows: the sixth joint is derived from the first joint and the DH parameter corresponding to the sixth joint is calculated with reference to the first joint; the seventh joint is derived from the sixth joint and the DH parameter corresponding to the seventh joint is calculated with reference to the sixth joint; the fourth joint is derived from the seventh joint and the DH parameter corresponding to the fourth joint is calculated with reference to the seventh joint; and the fifth joint is derived from the fourth joint and the DH parameter corresponding to the fifth joint is calculated with reference to the fourth joint.
[0091] The joints located after the flange: the second joint is derived from the first joint and the DH parameter corresponding to the second joint is calculated with reference to the first joint; the third joint is derived from the second joint and the DH parameter corresponding to the third joint is calculated with reference to the second joint.
[0092] For example, the solution process for the sixth joint angle θ6 and the seventh joint angle θ7 is similar to that for the second joint angle θ2 and the third joint angle θ3. The only difference is that the first standard DH parameter is replaced with the second standard DH parameter, and the second joint in the above solution process is replaced with the sixth joint, and the third joint is replaced with the seventh joint.
[0093] Specifically, based on the second standard DH parameters of the parallel robot, the transformation matrix containing the d1 variable is determined. Transformation matrix containing θ6 variables Transformation matrix containing θ7 variables Transformation matrix containing θ4 variables in, This represents the transformation matrix from the sixth joint to the first joint. This represents the transformation matrix from the seventh joint to the sixth joint. This represents the transformation matrix from the fourth joint to the seventh joint. It is based on the transformation matrix containing the d1 variable. Transformation matrix containing θ6 variables Transformation matrix containing θ7 variables Transformation matrix containing θ4 variables Determine the components containing joint variables From the known transformation matrix Extract the position coordinates of the fourth joint in the robot's base coordinate system; and extract them from the transformation matrix containing variables. Extract the position function coordinates of the fourth joint in the robot's basic coordinate system; establish a system of equations based on the element-wise correspondence between the position coordinates and the position function coordinates to obtain the sixth joint angle θ6 and the seventh joint angle θ7. For example: transformation matrix As shown in equation (13):
[0094]
[0095] Transformation matrix As shown in equation (14):
[0096]
[0097] From the transformation matrix containing variables The position function coordinates of the fourth joint in the robot's basic coordinate system are extracted as shown in equation (15):
[0098]
[0099] A system of equations is established based on the element-to-element correspondence between position coordinates and position function coordinates, and then simplified to obtain the following:
[0100]
[0101] Two solutions to θ6 can be obtained using x and y. However, this equation yields two solutions to θ6: one for the left-handed system and one for the right-handed system. Considering the practical application of parallel robots, to ensure that the polygon formed in the middle of the closed chain structure of the parallel robot is a convex polygon, a right-handed solution is chosen for any joint angle in the second open chain structure. Therefore, the solution satisfying the left-handed rule is selected from the two solutions to θ6 as the unique solution for the sixth joint.
[0102] Here, the known transformation matrix is determined when solving for θ6. Methods for determining the known transformation matrix when solving θ3 The method is the same.
[0103] Once θ6 is obtained, θ7 can be solved using x and y. The solution process cannot rely on just one x or y; it requires solving simultaneous equations. This is because either x or y can yield two solutions. The one with the duplicate value needs to be selected as the solution for θ7. Then, from the two solutions for θ7, the solution satisfying the left-hand rule is selected as the unique solution for the seventh joint.
[0104] It should be noted that although θ appears in both the first and second standard parameters... dh,x (°), d dh,x (mm), a dh,x (mm), but the spindle structures are different, so the specific values corresponding to the same expression form of the parameters in the first standard DH parameters and the second standard DH parameters are different.
[0105] This embodiment uses a hybrid serial-parallel analytical method to solve the attitude of a parallel robot. This method is not only fast, but also the calculation of the driven axis rotation angle does not depend on the calculation of the active axis rotation angle. Both the driven and active axes are calculated separately, which improves the accuracy of robot attitude calculation.
[0106] It should be noted that the robot base coordinate system mentioned in this embodiment refers to the robot base coordinate system.
[0107] In a preferred embodiment, the transformation matrix containing variables is determined. It should include at least the following steps:
[0108] S201, Obtain the transformation matrix containing the variable d1. Transformation matrix containing θ2 variables Transformation matrix containing θ3 variables and the transformation matrix containing θ4 variables
[0109] S202, based on the transformation matrix containing the d1 variable. Transformation matrix containing θ2 variables Transformation matrix containing θ3 variables Transformation matrix containing θ4 variables Determine the transformation matrix containing variables
[0110] For example: transformation matrix containing variables The expression for is shown in equation (17):
[0111]
[0112] Therefore, it is possible to determine the transformation matrix containing variables based on the second standard DH parameters.
[0113] It should be noted that θ2 represents the rotation angle of the second joint, θ3 represents the rotation angle of the third joint, θ4 represents the rotation angle of the fourth joint, θ5 represents the rotation angle of the fifth joint, θ6 represents the rotation angle of the sixth joint, and θ7 represents the rotation angle of the seventh joint.
[0114] It should be understood that, in the various embodiments of the present invention, the order of the above-mentioned process numbers does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0115] like Figure 5The diagram shows a structural schematic of a device for determining the posture of a parallel robot based on inverse kinematics, according to an embodiment of the present invention. The device 500 specifically includes: a partitioning module 501, used to partition the closed-chain structure of the parallel robot into a first open-chain structure and a second open-chain structure; the closed-chain structure is a closed structure formed by connecting a first joint, a second joint, a third joint, a fourth joint, a fifth joint, a sixth joint, and a seventh joint; both the first open-chain structure and the second open-chain structure are structures formed by connecting several joints; and a solution-solving module 502, used to perform inverse kinematics solution based on the flange end and the standard DH parameters corresponding to each joint of the closed-chain structure, to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, and the fourth joint angle θ4. θ4, fifth joint angle θ5, sixth joint angle θ6, and seventh joint angle θ7; First selection module 503, used when the first open chain structure is formed by connecting the first joint, second joint, third joint, fourth joint, and fifth joint, for any joint angle in the first open chain structure: if there are two solutions for the joint angle, then select the solution that satisfies the first preset condition from the two solutions as the unique solution for that joint angle; Second selection module 504, used when the first open chain structure is formed by connecting the first joint, sixth joint, seventh joint, fourth joint, and fifth joint, for any joint angle in the second open chain structure: if there are two solutions for the joint angle, then select the solution that satisfies the second preset condition from the two solutions as the unique solution for that joint angle.
[0116] In an optional implementation, the proposed solution module includes: a first proposed solution module, used to perform inverse kinematics solution based on the flange end and the first standard DH parameters corresponding to each joint in the first open chain structure formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint, to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, and the fifth joint angle θ5; and a second proposed solution module, used to perform inverse kinematics solution based on the flange end and the second standard DH parameters corresponding to each joint in the first open chain structure formed by connecting the first joint, the fourth joint, the fifth joint, the sixth joint, and the seventh joint, to obtain the sixth joint angle θ6 and the seventh joint angle θ7.
[0117] In an optional implementation, the first solution-solving module includes: a first determining unit, used to determine the known transformation matrix from the fifth joint to the robot's base coordinate system. The second determining unit is used to determine the transformation matrix containing the d1 variable based on the first standard DH parameters of the parallel robot. Transformation matrix containing θ2 variables Transformation matrix containing θ3 variables Transformation matrix containing θ4 variables and the transformation matrix containing θ5 variables. in, This represents the transformation matrix from the first joint to the robot's base coordinate system; This represents the transformation matrix from the second joint to the first joint. This represents the transformation matrix from the third joint to the second joint. This represents the transformation matrix from the fourth joint to the third joint. Represents the transformation matrix from the fifth joint to the fourth joint; the third determining element is used based on the transformation matrix containing the d1 variable. Transformation matrix containing θ2 variables Transformation matrix containing θ3 variables Transformation matrix containing θ4 variables and the transformation matrix containing θ5 variables. Determine the transformation matrix containing joint variables. Solving unit, used for solving based on known transformation matrices and transformation matrix containing joint variables Equations are established based on the element-to-element correspondences to obtain the fifth joint angle θ5; the fourth determining unit is used based on the known transformation matrix. Transformation matrix containing θ5 variables And the fifth joint angle θ5, determine the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, and the fourth joint angle θ4.
[0118] In an optional implementation, the first determining unit includes: an acquisition subunit, used to acquire the known transformation matrix from the flange end to the world coordinate system. and the known transformation matrix from the robot's base coordinate system to the world coordinate system. The first determining subunit is used to determine the known transformation matrix from the flange end to the fifth joint based on the first standard DH parameters of the parallel robot. The second determining subunit is used based on as well as Determine the known transformation matrix from the fifth joint to the robot's base coordinate system.
[0119] In an optional implementation, the fourth determining unit includes: a first determining subunit, used to determine the known transformation matrix based on the fifth joint angle θ5. The second determining subunit is used based on a known transformation matrix. and the known transformation matrix Determine the known transformation matrix The third determining subunit is used to determine the transformation matrix containing variables. The fourth determining sub-unit is used based on a known transformation matrix. and transformation matrix containing variables The correspondence between elements is used to determine the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the joint angle θ2 of the second joint, the joint angle θ3 of the third joint, and the joint angle θ4 of the fourth joint.
[0120] In an optional implementation, the third determining sub-unit includes: based on a transformation matrix containing the d1 variable. Transformation matrix containing θ2 variables Transformation matrix containing θ3 variables Transformation matrix containing θ4 variables Determine the transformation matrix containing variables
[0121] In an optional implementation, the fourth determining subunit includes: an extraction unit for extracting from a known transformation matrix. Extract the position coordinates of the fourth joint in the robot's base coordinate system; and extract them from the transformation matrix containing variables. Extract the position function coordinates of the fourth joint in the robot's base coordinate system; determine the unit, which establishes a system of equations based on the element-wise correspondence between the position coordinates and the position function coordinates, to obtain the movement distance d1 of the first joint along the Z-axis of the robot's base coordinate system, the second joint angle θ2, and the third joint angle θ3; substitute these values into the solution unit, which substitutes the movement distance d1, the second joint angle θ2, and the third joint angle θ3 into the transformation matrix containing variables. Obtain the transformation matrix with θ4 as the variable. Corresponding unit, used based on known transformation matrix Transformation matrix with θ4 as a variable The element correspondence between them is used to determine the fourth joint angle θ4.
[0122] The above-described apparatus can execute the method for determining the attitude of a parallel robot based on inverse kinematics provided in an embodiment of the present invention, and has the corresponding functional modules and beneficial effects for executing the method for determining the attitude of a parallel robot based on inverse kinematics. Technical details not described in detail in this embodiment can be found in the method for determining the attitude of a parallel robot based on inverse kinematics provided in an embodiment of the present invention.
[0123] The present invention also provides an electronic device, comprising: a processor; a memory for storing executable instructions of the processor; the processor being configured to read the executable instructions from the memory and execute the instructions to implement the method for determining the posture of a parallel robot based on inverse kinematics as described in the present invention.
[0124] In addition to the methods and apparatus described above, embodiments of this application may also be computer program products, which include computer program instructions that, when executed by a processor, cause the processor to perform the steps in the methods according to various embodiments of this application described in the "Exemplary Methods" section above.
[0125] The computer program product can be written in any combination of one or more programming languages to perform the operations of the embodiments of this application. The programming languages include object-oriented programming languages such as Java and C++, as well as conventional procedural programming languages such as C or similar languages. The program code can be executed entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0126] Furthermore, embodiments of this application may also be computer-readable storage media storing computer program instructions thereon, which, when executed by a processor, cause the processor to perform the steps in the methods according to the following embodiments of this application described in the "Exemplary Methods" section above.
[0127] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may, for example, include, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0128] The basic principles of this application have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this application are merely examples and not limitations, and should not be considered as essential features of each embodiment of this application. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the application to the necessity of employing the aforementioned specific details for implementation.
[0129] The block diagrams of devices, apparatuses, devices, and systems involved in this application are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.
[0130] It should also be noted that in the apparatus, equipment, and methods of this application, the components or steps can be disassembled and / or recombined. These disassemblies and / or recombinations should be considered as equivalent solutions of this application.
[0131] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this application. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein can be applied to other aspects without departing from the scope of this application. Therefore, this application is not intended to be limited to the aspects shown herein, but rather to be accorded the widest scope consistent with the principles and novel features disclosed herein.
[0132] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this application to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.
[0133] In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the present invention. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of those different embodiments or examples.
[0134] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this invention, "a plurality of" means two or more, unless otherwise explicitly specified.
[0135] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. A method for determining the attitude of a parallel robot based on inverse kinematics, characterized in that, include: The closed-chain structure of the parallel robot is divided into a first open-chain structure and a second open-chain structure. The closed-chain structure is a closed structure formed by connecting the first joint, the second joint, the third joint, the fourth joint, the fifth joint, the sixth joint, and the seventh joint; Both the first open-chain structure and the second open-chain structure are structures formed by connecting several joints; When the first open chain structure is formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint, the first open chain structure formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint is the main axis, and the second open chain structure formed by connecting the sixth joint and the seventh joint is the secondary axis. The standard parameters of the parallel robot are the first standard DH parameters. Based on the flange end and the first standard DH parameters corresponding to each joint in the first open chain structure formed by the first joint, the second joint, the third joint, the fourth joint, and the fifth joint, the inverse kinematics solution is performed to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, and the fifth joint angle θ5. Based on the flange end and the second standard DH parameters corresponding to each joint in the first open chain structure formed by the first joint, the fourth joint, the fifth joint, the sixth joint and the seventh joint, the inverse kinematics solution is performed to obtain the sixth joint angle θ6 and the seventh joint angle θ7. When the first open chain structure is formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint, for any joint angle in the first open chain structure: if there are two sets of solutions for the joint angle, then the solution that satisfies the first preset condition is selected from the two sets of solutions as the unique solution for that joint angle; When the first open-chain structure is formed by connecting the first joint, the sixth joint, the seventh joint, the fourth joint, and the fifth joint, the first open-chain structure formed by connecting the first joint, the sixth joint, the seventh joint, the fourth joint, and the fifth joint is the main axis, and the second open-chain structure formed by connecting the second joint and the third joint is the secondary axis. The standard parameters of the parallel robot are the second standard DH parameters. For any joint angle in the second open-chain structure: if there are two solutions for the joint angle, the solution that satisfies the second preset condition is selected from the two solutions as the unique solution for the joint angle. The first preset condition is to select the solution of the left-handed system, and the second preset condition is to select the solution of the right-handed system, so as to ensure that the polygon shape formed by the closed-chain structure of the parallel robot is a convex polygon.
2. The method according to claim 1, characterized in that, Based on the flange end and the first standard DH parameters corresponding to each joint in the first open chain structure formed by the first joint, second joint, third joint, fourth joint, and fifth joint, inverse kinematics is solved to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, and the fifth joint angle θ5, including: Obtain the known transformation matrix from the flange end to the world coordinate system. and the known transformation matrix from the robot's base coordinate system to the world coordinate system. Based on the first standard DH parameters of the parallel robot, the known transformation matrix from the flange end to the fifth joint is determined. Based on the above and the Determine the known transformation matrix from the fifth joint to the robot's base coordinate system. Based on the first standard DH parameters of the parallel robot, determine the transformation matrix containing the d1 variable. Transformation matrix containing θ2 variables Transformation matrix containing θ3 variables Transformation matrix containing θ4 variables and the transformation matrix containing θ5 variables. in, This represents the transformation matrix from the first joint to the robot's base coordinate system; This represents the transformation matrix from the second joint to the first joint. This represents the transformation matrix from the third joint to the second joint. This represents the transformation matrix from the fourth joint to the third joint. This represents the transformation matrix from the fifth joint to the fourth joint; Based on the transformation matrix containing the d1 variable The transformation matrix containing θ2 variables The transformation matrix containing θ3 variables The transformation matrix containing θ4 variables and the transformation matrix containing the θ5 variable Determine the transformation matrix containing joint variables. Based on the known transformation matrix and the transformation matrix containing joint variables Equations were established based on the element correspondences between them to obtain the fifth joint angle θ5; Based on the fifth joint angle θ5, determine the known transformation matrix. Based on the known transformation matrix and the known transformation matrix Determine the known transformation matrix Determine the transformation matrix containing variables Based on the known transformation matrix and the transformation matrix containing variables The correspondence between elements is used to determine the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the joint angle θ2 of the second joint, the joint angle θ3 of the third joint, and the joint angle θ4 of the fourth joint.
3. The method according to claim 2, characterized in that, The determination of the transformation matrix containing variables include: Based on the transformation matrix containing the d1 variable The transformation matrix containing θ2 variables The transformation matrix containing θ3 variables The transformation matrix containing θ4 variables Determine the transformation matrix containing variables 4. The method according to claim 2, characterized in that, Based on the known transformation matrix and the transformation matrix containing variables The correspondence between elements determines the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, and the fourth joint angle θ4, including: From the known transformation matrix Extract the position coordinates of the fourth joint in the robot's base coordinate system; and extract them from the transformation matrix containing variables. Extract the position function coordinates of the fourth joint in the robot's base coordinate system; Based on the element correspondence between the position coordinates and the position function coordinates, a system of equations is established to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, and the third joint angle θ3. Substitute the movement distance d1, the second joint angle θ2, and the third joint angle θ3 into the transformation matrix containing variables. Obtain the transformation matrix with θ4 as the variable. Based on the known transformation matrix and the transformation matrix with θ4 as a variable The element correspondence between them is used to determine the fourth joint angle θ4.
5. A device for determining the attitude of a parallel robot based on inverse kinematics, characterized in that, include: A partitioning module is used to divide the closed-chain structure of a parallel robot into a first open-chain structure and a second open-chain structure. The closed-chain structure is a closed structure formed by connecting the first joint, the second joint, the third joint, the fourth joint, the fifth joint, the sixth joint, and the seventh joint; Both the first open-chain structure and the second open-chain structure are structures formed by connecting several joints; The first solution-solving module, when the first open chain structure is formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint, takes the first open chain structure formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint as the main axis, and takes the second open chain structure formed by connecting the sixth joint and the seventh joint as the secondary axis. The standard parameters of the parallel robot are the first standard DH parameters. Based on the flange end and the first standard DH parameters corresponding to each joint in the first open chain structure formed by the first joint, the second joint, the third joint, the fourth joint, and the fifth joint, the inverse kinematics solution is performed to obtain the movement distance d1 of the first joint along the Z-axis of the robot's basic coordinate system, the second joint angle θ2, the third joint angle θ3, the fourth joint angle θ4, and the fifth joint angle θ5. The second solution module is used to perform inverse kinematics solution based on the flange end and the second standard DH parameters corresponding to each joint in the first open chain structure formed by connecting the first joint, the fourth joint, the fifth joint, the sixth joint and the seventh joint, to obtain the sixth joint angle θ6 and the seventh joint angle θ7. The first selection module is used to select the solution that satisfies the first preset condition from the two sets of solutions for any joint angle in the first open chain structure when the first open chain structure is formed by connecting the first joint, the second joint, the third joint, the fourth joint, and the fifth joint. The second selection module is used to select the first open-chain structure formed by connecting the first joint, the sixth joint, the seventh joint, the fourth joint, and the fifth joint as the main axis, and the second open-chain structure formed by connecting the second joint and the third joint as the secondary axis when the first open-chain structure is formed by connecting the first joint, the sixth joint, the seventh joint, the fourth joint, and the fifth joint. The standard parameters of the parallel robot are the second standard DH parameters. For any joint angle in the second open-chain structure: if there are two solutions for the joint angle, the solution that satisfies the second preset condition is selected from the two solutions as the unique solution for the joint angle. The first preset condition is to select the solution of the left-hand system, and the second preset condition is to select the solution of the right-hand system, so as to ensure that the polygon shape formed by the closed-chain structure of the parallel robot is a convex polygon.
6. A computer-readable medium having a computer program stored thereon, which, when executed by a processor, implements the method as described in any one of claims 1-4.
Citation Information
Patent Citations
(1T1R) and 2R four-degree-of-freedom decoupling series-parallel mechanism
CN104626120A
Belt-driven variable-drive kinematic chain and parallel robot with same
CN108115654A
Redundant robot inverse kinematics solving method and device and redundant robot
CN111538949A