Method and device for acquiring singular postures of industrial robot arms using Cartesian trajectory tracking
Through forward kinematic equations and singular analytical adjustment based on DH method, the real inverse solution of the joint angle of the industrial robot arm is obtained, and the motion mutation problem of the robot arm in the singular position is solved, achieving smooth continuous and precise tracking of the joint trajectory.
Patent Information
- Application Number
- CN202411995128.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-31
- Publication Date
- 2025-08-15
- Estimated Expiration
- 2044-12-31
AI Technical Summary
The existing inverse solution methods are difficult to find a real solution that continuously smooths the joint trajectory of the industrial robotic arm in infinite sets, resulting in the end motion path of the robotic arm suddenly changing when it travels through a singular position, affecting the Cartesian trajectory tracking accuracy or causing collisions.
The forward kinematic equation of industrial robot arms is established based on the standard DH method. By adjusting the basic analytical formula and singular analytical formula of joint angles, the real inverse solution of joint angles is obtained to ensure that the joint trajectory is smooth and continuous in the singular position.
It realizes smooth and continuous joint trajectory when the industrial robot arm passes through a singular position, avoids sudden changes and collisions in motion paths, and improves the accuracy and safety of Cartesian trajectory tracking.
Smart Images

Figure CN119952678B_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the technical field of inverse kinematics analysis, and in particular relates to a method and device for acquiring singular postures for Cartesian trajectory tracking of an industrial robot arm. Background Art
[0002] Singularities are inherent properties of mechanical structures and significantly impact the performance of industrial robotic arms in continuous Cartesian trajectory tracking. When an industrial robotic arm's end-point passes through a singular pose, an infinite set of inverse solutions may exist. Existing inverse solution methods can obtain one of these inverse solutions, but they are more suitable for point-to-point tracking tasks. Because these tasks do not place high demands on the trajectory of the industrial robotic arm's end-point between its starting and ending points, joint interpolation based on the obtained inverse solutions is sufficient to ensure a smooth and continuous reference trajectory for joint control. For Cartesian trajectory tracking tasks, the reference trajectory for joint spatial control must consist of the inverse solutions for every sample point in the target Cartesian trajectory. However, existing inverse solution methods struggle to find a "true solution" that ensures a smooth and continuous joint trajectory within the infinite set of inverse solutions. If the inverse solution for a singular pose deviates from the "true solution," the actual trajectory of the industrial robotic arm's end-point will abruptly change, potentially reducing the accuracy of Cartesian trajectory tracking or, in severe cases, causing the robotic arm to collide with the surrounding environment. Summary of the Invention
[0003] The main purpose of the embodiments of the present invention is to provide a method and device for obtaining singular postures for Cartesian trajectory tracking of an industrial robot arm, which can solve the problem that existing inverse solution methods are difficult to find a "true solution" that makes the joint trajectory continuous and smooth among an infinite set of inverse solutions, and can accurately obtain the true inverse solution of the singular posture, so that the end of the industrial robot arm will not have posture errors caused by sudden changes in the motion path when tracking the Cartesian trajectory passing through the singular posture.
[0004] In a first aspect, a method for obtaining a singular posture of a Cartesian trajectory tracking of an industrial robot arm is provided, wherein the industrial robot arm includes joints 1 to 6, and the joint angles of each joint are θ1 to θ6. The method includes: establishing a forward kinematic equation for Cartesian trajectory tracking of the industrial robot arm based on a standard DH method; determining a basic analytical expression for the joint angles of each joint according to the forward kinematic equation, wherein the basic analytical expression includes a first intermediate parameter and a second intermediate parameter related to the link parameters of the industrial robot arm; for joints 2 to 5, solving the joint angles θ2 to θ5 according to the basic analytical expression; for joints 1 or joint 6, adjusting the first intermediate parameter and the second intermediate parameter based on the singular posture to obtain a singular analytical expression, and solving the joint angle θ1 or the joint angle θ6 according to the singular analytical expression.
[0005] In one possible implementation, the basic analytical expressions of the joint angles of each joint include:
[0006] θ1=arctan2(m1,n1)+arctan2(±1,0)
[0007] θ2=arctan2(m2,n2)
[0008] θ3=arctan2(±m3,n3)-arctan2(d4,a3)
[0009] θ6=arctan2(±1,0)+arctan2(m6,n6)
[0010] θ4=arctan2(0,-1)+arctan2(m4,n4)
[0011] θ5=arctan2(0,1)+arctan2(m5,n5)
[0012] or
[0013] θ4=arctan2(0,1)+arctan2(m4,n4)
[0014] θ5=arctan2(0,-1)+arctan2(m5,n5)
[0015] In the formula, m i and n i (i=1,2,3,4,5,6) are the parameters of the connecting rod of the industrial robot arm and are used to solve θ i The first intermediate parameter and the second intermediate parameter are: a3 is the vertical distance between the axes of joint 3 and joint 4 of the industrial robot arm; d4 is the vertical distance between the axis of joint 4 and the axis of joint 5.
[0016] In another possible implementation, adjusting the first intermediate parameter and the second intermediate parameter according to the singular posture to obtain a singular analytical expression includes:
[0017] For joints 1 and 6, the first intermediate parameter and the second intermediate parameter are updated to the k-order derivative form according to the singular posture, where k is a positive integer, and the singular analytical expression is obtained:
[0018]
[0019]
[0020] Where, and are the k-order derivatives of the first intermediate parameter m1 and the second intermediate parameter n1 with respect to time t in the basic analytical expression of the joint angle θ1, and are the k-order derivatives of the first intermediate parameter m6 and the second intermediate parameter n6 with respect to time t in the basic analytical expression of the joint angle θ6.
[0021] In another possible implementation, solving the joint angle θ1 or the joint angle θ6 according to the singular analytical expression includes: for joint 1 or joint 6, according to the first intermediate parameter m i and the second intermediate parameter n i Determine whether to use the corresponding singular analytical expression to solve the joint angle θ1 or the joint angle θ6; if so, then calculate the first intermediate parameter m i and the second intermediate parameter n i Perform k-order derivative until m i (k) and n i (k) If they are not zero at the same time, m i (k) and n i (k) Substitute into the corresponding singular analytical expression and solve for the joint angle θ1 or the joint angle θ6; otherwise, take k equal to 0 and solve for the joint angle θ1 or the joint angle θ6 according to the corresponding basic analytical expression.
[0022] In another possible implementation, according to the first intermediate parameter m i and the second intermediate parameter n i Determine whether to use the corresponding singular analytical expression to solve the joint angle θ1 or the joint angle θ6, including: determining whether the following inequality holds: ((m i (k) ) 2 +(n i (k) ) 2 ) 1 / 2 <ε, ε is the reference threshold; if the inequality holds, the corresponding singular analytical expression is used to solve the joint angle θ1 or θ6; otherwise, the corresponding basic analytical expression is used to solve the joint angle θ1 or θ6.
[0023] In another possible implementation, the basic analytical expression for determining the joint angle of each joint according to the forward kinematics equation includes:
[0024] Multiply both sides of the forward kinematics equation by 0 The inverse matrix of T1(θ1) is multiplied on the right 5 T6(θ6) and 4 The inverse matrix of T5(θ5); then multiply the Rot(x4,-α4) matrix only on the right side of the equal sign of the forward kinematics equation; finally, two unequal homogeneous matrices T are obtained according to the left and right parts of the forward kinematics equation. L and T R:
[0025] T L = 1 T2(θ2) 2 T3(θ3) 3 T4(θ4)Rot(x4,-α4)
[0026] T R =( 0 T1(θ1) -1 0 T6( 4 T5(θ5) 5 T6(θ6) -1
[0027] Where, i-1 T i is the homogeneous transformation matrix of adjacent links i-1 and i, 0 T6 is the pose matrix of the end of the industrial robot arm relative to the base, Rot(x,α) represents the rotation homogeneous matrix obtained by rotating the x-axis by an angle α, x4 and α4 are the local coordinate system and link parameters established in the robot arm by the standard DH method; according to the homogeneous matrix T L and T R Obtain multiple equations for solving each joint angle; obtain a basic analytical expression of the joint angle based on the multiple equations.
[0028] In another possible implementation, the multiple equations for solving the joint angles include:
[0029] T L (:,4)=T R (:,4)
[0030] T L (:,3)·T R (:,3)=0
[0031] T L (:,2) T ·T R (:,3)=1,-180°<α4<0°
[0032] T L (:,3) T ·T R (:,2)=-1,-180°<α4<0°
[0033] or
[0034] T L (:,2) T ·T R (:,3)=-1,0°<α4<180°
[0035] T l (:,3) T ·T R (:,2)=1,0°<α4<180°
[0036] Where T(:,i) represents the i-th column vector of matrix T.
[0037] In a second aspect, a singular posture acquisition device for Cartesian trajectory tracking of an industrial robot arm is provided. The industrial robot arm includes joints 1 to 6, and the joint angles of each joint are θ1 to θ6. The device includes: an equation establishment unit, used to establish the forward kinematics equations for Cartesian trajectory tracking of the industrial robot arm based on the standard DH method; a basic analytical unit, used to determine the basic analytical expression of the joint angles of each joint according to the forward kinematics equation, the basic analytical expression including the first intermediate parameter and the second intermediate parameter related to the link parameters of the industrial robot arm; a first posture acquisition unit, used to solve the joint angles θ2 to θ5 for joints 2 to 5 according to the basic analytical expression; a second posture acquisition unit, used to adjust the first intermediate parameter and the second intermediate parameter based on the singular posture for joint 1 or joint 6, obtain a singular analytical expression, and solve the joint angle θ1 or the joint angle θ6 according to the singular analytical expression.
[0038] In a third aspect, an electronic device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, a method for acquiring singular postures of Cartesian trajectory tracking of an industrial robot arm as provided in the first aspect is implemented.
[0039] In a fourth aspect, a non-transitory computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, a method for acquiring singular postures of Cartesian trajectory tracking of an industrial robot arm as provided in the first aspect is implemented. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for describing the embodiments of the present application.
[0041] Figure 1 A flowchart of a method for obtaining singular poses for Cartesian trajectory tracking of an industrial robot arm provided by one embodiment of the present invention;
[0042] Figure 2 Schematic diagram of the connecting rod coordinate system of the ABBIRB6700 industrial robot arm according to an embodiment of the present invention;
[0043] Figure 3 Schematic diagram of the result of using the MoveJ instruction to track a parabolic trajectory in the prior art, where Figure (a) is a global diagram and Figure (b) is a local enlarged diagram of circle A;
[0044] Figure 4 This is a schematic diagram of the result of using the MoveL instruction to track a parabolic trajectory in the prior art;
[0045] Figure 5 A schematic diagram of the complete path of motion of the end of an ABB manipulator arm generated by the singular posture acquisition method for Cartesian trajectory tracking of an industrial manipulator arm according to an embodiment of the present invention;
[0046] Figure 6 A structural diagram of a device for acquiring singular postures for Cartesian trajectory tracking of an industrial robot arm provided by one embodiment of the present invention;
[0047] Figure 7 This is a schematic diagram of the physical structure of an electronic device provided by the present invention. DETAILED DESCRIPTION
[0048] The following describes embodiments of the present application in detail. Examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar modules or modules having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present application and are not to be construed as limiting the present invention.
[0049] It will be understood by those skilled in the art that, unless expressly stated otherwise, the singular forms "a", "an", "said" and "the" used herein may also include the plural forms. It should be further understood that the term "comprising" used in the specification of this application refers to the presence of the features, integers, steps, operations, modules and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, modules, components and / or groups thereof. It should be understood that when we refer to a module as being "connected" or "coupled" to another module, it may be directly connected or coupled to the other module, or there may be an intermediate module. In addition, "connected" or "coupled" as used herein may include wireless connection or wireless coupling. The term "and / or" used herein includes all or any modules and all combinations of one or more associated listed items.
[0050] In order to make the objectives, technical solutions and advantages of this application clearer, the implementation of this application will be further described in detail below with reference to the accompanying drawings.
[0051] The following specific embodiments describe in detail the technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.
[0052] like Figure 1 The flowchart of a method for obtaining singular poses for Cartesian trajectory tracking of an industrial robot arm provided by one embodiment of the present invention is applied to a server. The industrial robot arm includes joints 1 to 6, and the joint angles of each joint are θ1 to θ6. The method includes:
[0053] Step S11 , establishing a forward kinematics equation for Cartesian trajectory tracking of an industrial robot arm based on a standard DH method.
[0054] Step S12 , determining a basic analytical expression of the joint angle of each joint according to the forward kinematics equation, wherein the basic analytical expression includes a first intermediate parameter and a second intermediate parameter related to the link parameters of the industrial robot arm.
[0055] In step S13 , for joints 2 to 5 , the joint angles θ2 to θ5 are solved according to the basic analytical expressions.
[0056] Step S14: For joint 1 or joint 6, adjust the first intermediate parameter and the second intermediate parameter based on the singular posture, obtain a singular analytical expression, and solve the joint angle θ1 or the joint angle θ6 according to the singular analytical expression.
[0057] The embodiment of the present invention introduces singular posture adjustment into the basic analytical expression of the joint angle θ1 or the joint angle θ6, and then obtains the singular posture, which can accurately obtain the true inverse solution of the singular posture, so that when the industrial robot arm passes through the shoulder singular posture or the wrist singular posture, the joint trajectory is smooth and continuous at the singular point, and no posture error caused by sudden changes in the motion path occurs.
[0058] In this embodiment, the ABBIRB6700 industrial robot arm is used as the research object. The last three joints of this industrial robot arm form a spherical wrist structure, whose axes intersect at a point and have an analytical solution. This type of industrial robot arm with an analytical solution has been widely used in various occasions. Figure 2 is the link coordinate system of the ABBIRB6700 industrial robot arm, and Table 1 shows its DH parameters.
[0059] Table 1
[0060]
[0061] In step S11, the forward kinematics equation of the industrial robot arm is established based on the standard DH method as follows:
[0062]
[0063] Where n is the normal vector, o is the orientation vector, a is the approach vector, and p is the position vector. In the Cartesian trajectory tracking task, n, o, a, and p are all functions of time t.
[0064] The specific establishment process is as follows:
[0065] The homogeneous transformation matrix of a single joint is expressed as:
[0066]
[0067] θ i ——x i-1 Axis and x i Between the axes about z i-1 The angle between
[0068] d i ——x i-1 Axis along z i-1 Axis to x i distance between axes;
[0069] a i ——Along x i-1 Axis, z i-1 axis and z i the distance between the axes;
[0070] α i ——z i-1 axis and z i Between axes about x i-1 Angle.
[0071] Multiply all homogeneous transformation matrices in sequence to obtain the forward kinematic formula of the wrist center relative to the base.
[0072] 0 T6= 0 T1(θ1) 1 T2(θ2) 2 T3(θ3) 3 T4(θ4) 4 T5(θ5) 5 T6(θ6) (2)
[0073] When the target Cartesian trajectory pose is given, the expression of the wrist center can be written as:
[0074]
[0075] Multiply both sides of the forward kinematics equation by 0 The inverse matrix of T1(θ1) is multiplied on the right 5 T6(θ6) and 4 The inverse matrix of T5(θ5); then multiply the Rot(x4,-α4) matrix only on the right side of the equal sign of the forward kinematics equation; finally, two unequal homogeneous matrices T are obtained according to the left and right parts of the forward kinematics equation. L and T R :
[0076] T L = 1 T2(θ2) 2 T3(θ3) 3 T4(θ4)Rot(x4,-α4)
[0077] T R =( 0 T1(θ1) -1 0 T6( 4 T5(θ5) 5 T6(θ6) -1
[0078] Where, i-1 T i is the homogeneous transformation matrix of adjacent links i-1 and i, 0 T6 is the pose matrix of the end of the industrial robot arm relative to the base, Rot(x4,α4) represents the rotation homogeneous matrix obtained by rotating the x4 axis by an angle of α4, x4 and α4 are the local coordinate system and link parameters established in the robot arm by the standard DH method; according to the homogeneous matrix T L and T R A plurality of equations for solving each joint angle are obtained; and a basic analytical expression of the joint angle is obtained according to the plurality of equations.
[0079] The basic analytical formula for determining the joint angles of each joint according to the forward kinematics equation is as follows:
[0080] θ1=arctan2(m1,n1)+arctan2(±1,0)
[0081] θ2=arctan2(m2,n2)
[0082] θ3=arctan2(±m3,n3)-arctan2(d4,a3)
[0083] θ6=arctan2(±1,0)+arctan2(m6,n6)
[0084] θ4=arctan2(0,-1)+arctan2(m4,n4)
[0085] θ5=arctan2(0,1)+arctan2(m5,n5)
[0086] or
[0087] θ4=arctan2(0,1)+arctan2(m4,n4)
[0088] θ5=arctan2(0,-1)+arctan2(m5,n5)
[0089] In the formula, m i and n i (i=1,2,3,4,5,6) are the parameters of the connecting rod of the industrial robot arm and are used to solve θ i The first intermediate parameter and the second intermediate parameter are: a3 is the vertical distance between the axes of joint 3 and joint 4 of the industrial robot arm; d4 is the vertical distance between the axis of joint 4 and the axis of joint 5.
[0090] The specific solution process is as follows. Formula (2) can be transformed into:
[0091] T L = 1 T2(θ2) 2 T3(θ3) 3 T4(θ4)Rot(x4,-90°)
[0092] T R =( 0 T1(θ1) -1 0 T6( 4 T5(θ5) 5 T6(θ6) -1 (4)
[0093] Based on formula (4), according to the homogeneous matrix T L and T R Get several equations for solving for each joint angle:
[0094] T L (:,4)=T R (:,4) (5)
[0095] T L (:,3)·T R (:,3)=0 (6)
[0096] T L (:,2) T ·T R (:,3)=1,-180°<α4<0°
[0097] T L (:,3) T ·T R (:,2)=-1,-180°<α4<0°
[0098] or
[0099] T L (:,2) T·T R (:,3)=-1,0°<α4<180° (7)
[0100] T L (:,3) T ·T R (:,2)=1,0°<α4<180° (8)
[0101] Where T(:,i) represents the i-th column vector of matrix T.
[0102] The basic analytical expressions for joint angles are obtained based on multiple equations. Specifically, using equations (5) and (6), we obtain four equations containing only θ1, θ2, θ3, and θ6:
[0103]
[0104]
[0105]
[0106]
[0107] Where: p m1 =[p x p y -a1] T , p x , p y , p z are the three elements of the position vector p.
[0108] x m1 =[c1 s1 1] T
[0109] p m2 =[1 d1 -1] T
[0110] x m2 =[0 1 p z ] T
[0111] p m3 =[-p x p y 0] T
[0112] x m3 =[s1 c1 0] T
[0113] z L =[c1c 23 s1c 23 -s23 ] T
[0114] s i and c i Represents sinθ respectively i and cosθ i , s ij and c ij Respectively represent sin(θ i +θ j ) and cos(θ i +θ j ).
[0115] Since Equation (11) only contains the joint variable θ1, the basic analytical expression of the joint angle θ1 can be directly obtained:
[0116] θ1=arctan2(m1,n1)+arctan2(±1,0) (13)
[0117] Where m1 = -p x , n1=p y .
[0118] The square sum of equations (9) and (10) yields the following equation:
[0119]
[0120] The basic analytical formula of the joint angle θ3 is obtained from formula (14):
[0121] θ3=arctan2(k2m3,n3)-arctan2(d4,a3) (15)
[0122] in,
[0123] After obtaining θ3, we can regard Equations (9) and (10) as linear equations in two variables about s2 and c2, and obtain the basic analytical expression of the joint angle θ2:
[0124]
[0125] Where, h m1 =d4c3+a3s3,h m2 =a3c3-d4s3+a2.
[0126] After obtaining the joint angles θ1, θ2, and θ3, the joint angles θ1, θ2, and θ3 are substituted into formula (12) to obtain the basic analytical formula for the joint angle θ6:
[0127] θ6=arctan2(k3,0)+arctan2(m6,n6) (17)
[0128] in, k3=±1.
[0129] From formula (7), we can get the equation:
[0130]
[0131] Among them, h n1 =[s1 -c1 0] T , h n2 =[-c1s 23 -s1s 23 -c 23 ] T , h n3 =oc6+ns6.
[0132] After determining θ1, θ2, θ3, and θ6, the basic analytical formula for the joint angle θ4 is obtained from equation (7):
[0133] θ4=arctan2(0,-1)+arctan2(m4,n4) (19)
[0134] in,
[0135] The basic analytical formula of the joint angle θ5 can be determined from formula (8):
[0136] θ5=arctan2(0,1)+arctan2(m5,n5) (20)
[0137] in,
[0138] The above formulas are the basic analytical expressions for θ1, θ2, θ3, θ4, θ5, and θ6. When the industrial robot arm passes through a singular shoulder position, the first intermediate parameter m1 and the second intermediate parameter n1 of the joint angle θ1 are both zero. In computers, arctan2(0,0) defaults to zero, resulting in a fixed value for the joint angle θ1 in a singular shoulder position. This results in the resulting joint trajectory being unsmooth at the singular point, resulting in abrupt changes. Similarly, the basic analytical expression for the joint angle θ6 also exhibits this behavior when the industrial robot arm passes through a singular wrist position.
[0139] In the embodiment of the present invention, in order to prevent the industrial robot arm from experiencing sudden path changes when it passes through a singular posture while tracking a Cartesian trajectory, m can be obtained simultaneously in the basic analytical expressions of the joint angles θ1 and θ6. i and n i The k-th derivative m with respect to time t i(k) and n i (k) , until m i (k) and n i (k) When k in the upper right corner is equal to zero, it means no derivative is required. i (k) and n i (k) When both are zero, it means that the industrial robot arm passes through a singular posture of the shoulder or wrist.
[0140] In step S14, optionally, for joint 1 or joint 6, the first intermediate parameter and the second intermediate parameter are updated to a k-order derivative form according to the singular posture, where k is a positive integer, to obtain a singular analytical expression:
[0141]
[0142]
[0143] Where, and are the k-order derivatives of the first intermediate parameter m1 and the second intermediate parameter n1 with respect to time t in the basic analytical expression of the joint angle θ1, and are the k-order derivatives of the first intermediate parameter m6 and the second intermediate parameter n6 with respect to time t in the basic analytical expression of the joint angle θ6.
[0144] In actual calculation, the following conditions can be used to determine whether to use the singular analytical expressions of joint angles θ1 and θ6. For joint 1 or joint 6, according to the first intermediate parameter m i and the second intermediate parameter n i Determine whether to use the corresponding singular analytical expression to solve the joint angle θ1 or the joint angle θ6. Specifically, determine whether the following inequality holds: ((m i (k) ) 2 +(n i (k) ) 2 ) 1 / 2 <ε, ε is the reference threshold, which can be set as needed, preferably less than 10 -8 If the inequality holds, the corresponding singular analytical expression is used to solve the joint angle θ1 or θ6. Otherwise, the corresponding basic analytical expression is used to solve the joint angle θ1 or θ6.
[0145] If the corresponding singular analytical expression is used to solve the joint angle θ1 or the joint angle θ6, then the first intermediate parameter m i and the second intermediate parameter ni Perform k-order derivative until m i (k) and n i (k) If they are not zero at the same time, m i (k) and n i (k) Substitute into the corresponding singular analytical expression and solve for the joint angle θ1 or the joint angle θ6. Otherwise, take k equal to 0 and do not adjust the first intermediate parameter m. i and the second intermediate parameter n i Perform differentiation and directly solve the joint angle θ1 or the joint angle θ6 according to the corresponding basic analytical expression.
[0146] In this way, when the industrial robot arm passes through a singular shoulder posture, the k-order derivative of the first intermediate parameter m1 and the second intermediate parameter n1 in the basic analytical expression of the joint angle θ1 with respect to time t can be calculated to obtain an analytical solution that ensures the smoothness and continuity of the joint trajectory; when the industrial robot arm passes through a singular wrist posture, the k-order derivative of the first intermediate parameter m6 and the second intermediate parameter n6 in the basic analytical expression of the joint angle θ6 with respect to time t can be calculated to obtain an analytical solution that ensures the smoothness and continuity of the joint trajectory.
[0147] The embodiments of the present invention are directed to Cartesian trajectory tracking. When the end of an industrial robot arm passes through a singular posture, the embodiment of the present invention can accurately obtain the true inverse solution of the singular posture compared to the basic analytical solution and the minimum damped square method. This solves the problem that existing inverse solution methods are difficult to find the "true solution" that makes the joint trajectory continuous and smooth among an infinite set of inverse solutions. When the industrial robot arm tracks the Cartesian trajectory motion through a singular posture, the joint trajectory used for servo control is smooth and continuous, and the end does not have posture errors caused by sudden changes in the motion path.
[0148] To test the effectiveness of the singular pose acquisition method for Cartesian trajectory tracking of an industrial robot arm according to an embodiment of the present invention, a simulation of the industrial robot arm is performed in RobotStudio to verify offline whether the new analytical solution can be implemented in actual operations. Figure 2 This is the 3D model of the ABB IRB6700 industrial robot arm in RobotStudio.
[0149] In practice, tools are installed at the end of industrial robotic arms, and their singular posture is mainly determined by the wrist center. Therefore, the posture of the tool relative to the base can be converted to the wrist center posture using the following formula:
[0150] T e =T w T we (twenty one)
[0151] Where, T w is the wrist center pose matrix of the robotic arm, T eis the pose matrix of the end of the robot arm, T we is the homogeneous transformation matrix of the end-point pose relative to the wrist center pose.
[0152]
[0153] Furthermore, when the ABB IRB6700 robot arm is at its zero position, the axes of joints 4 and 6 are collinear. In Table 1, the zero position is defined as the position where joint 5 is offset 90° from the positive direction. Therefore, after obtaining the joint angle θ5 using the method of this embodiment, 90° must be added to ensure that the end-of-arm motion of the ABB IRB6700 robot arm matches the desired trajectory.
[0154] During the simulation experiment, the target Cartesian trajectory equation of the industrial robot arm wrist center is:
[0155] p x =625-26.5t 2
[0156]
[0157] p z =2605 (23)
[0158] Wherein, a=0.002734069064, b=-1.811320754717, t=0:0.05:5.5.
[0159] The position and posture of each point on the wrist-center trajectory remain unchanged, and the posture of the initial point is:
[0160]
[0161] On the above wrist-center trajectory, the robotic arm passes through the wrist singularity and shoulder singularity positions respectively. Figure 3 and 4 The results of using MoveJ and MoveL instructions to trace a parabolic trajectory are shown respectively. Figure 3 middle, Figure 3 (a) is the global graph, Figure 3 (b) is a partial enlarged view of circle A. When the wrist center of the ABB robot arm moves to the singular position of the shoulder, its motion path undergoes a significant mutation and stops because joint 4 exceeds the range of motion. Under the MoveJ instruction, although the robot arm passes the singular position of the wrist smoothly, the end path also undergoes a mutation, as shown in Figure 2. Figure 3 As shown in circle A in (b). Figure 4 In the simulation, when the end of the ABB robot arm moved to a strange wrist position, the system issued a warning and terminated the movement. Figure 5The complete path of the ABB robot arm's end-of-arm motion generated by the method according to the embodiment of the present invention is smooth, continuous, and free of abrupt changes. This demonstrates that the singular pose acquisition method for Cartesian trajectory tracking of an industrial robot arm according to the embodiment of the present invention has obtained "true solutions" for both the wrist and shoulder singular poses.
[0162] An embodiment of the present invention establishes a forward kinematics equation for Cartesian trajectory tracking of an industrial robot arm based on a standard DH method; a basic analytical expression for the joint angle of each joint is determined according to the forward kinematics equation, wherein the basic analytical expression includes a first intermediate parameter and a second intermediate parameter related to the link parameters of the industrial robot arm; for joints 2 to 5, the joint angles θ2 to θ5 are solved according to the basic analytical expression; for joints 1 or 6, the first intermediate parameter and the second intermediate parameter are adjusted based on the singular posture to obtain a singular analytical expression, and the joint angle θ1 or the joint angle θ6 is solved according to the singular analytical expression, so that the true inverse solution of the singular posture can be accurately obtained, so that the end of the industrial robot arm does not have a posture error caused by a sudden change in the motion path when tracking the Cartesian trajectory motion through the singular posture.
[0163] like Figure 6 FIG2 is a structural diagram of a singular pose acquisition device for Cartesian trajectory tracking of an industrial robot arm provided by one embodiment of the present invention, which is applied to a server. The industrial robot arm includes joints 1 to 6, and the joint angles of each joint are θ1 to θ6. The device includes:
[0164] An equation building unit 601 is used to build a forward kinematics equation for Cartesian trajectory tracking of an industrial robot arm based on a standard DH method;
[0165] A basic analytical unit 602 is configured to determine a basic analytical expression for the joint angle of each joint according to the forward kinematics equation, wherein the basic analytical expression includes a first intermediate parameter and a second intermediate parameter related to the link parameters of the industrial robot arm;
[0166] The first pose acquisition unit 603 is used to solve the joint angles θ2 to θ5 for joints 2 to 5 according to the basic analytical expression;
[0167] The second posture acquisition unit 604 is used to adjust the first intermediate parameter and the second intermediate parameter based on the singular posture for joint 1 or joint 6, obtain a singular analytical expression, and solve the joint angle θ1 or the joint angle θ6 according to the singular analytical expression.
[0168] The apparatus of the above embodiment is applied to the corresponding method of the above embodiment and has the beneficial effects of the corresponding method embodiment, which will not be described in detail here.
[0169] Figure 7 An example of a physical structure diagram of an electronic device is shown below. Figure 7As shown, the electronic device may include: a processor (processor) 701, a communication interface (Communications Interface) 702, a memory (memory) 703 and a communication bus 704, wherein the processor, the communication interface, and the memory communicate with each other via the communication bus. The processor can call logic instructions in the memory to execute a method for obtaining singular postures for Cartesian trajectory tracking of an industrial robot arm, the method comprising: establishing a forward kinematics equation for Cartesian trajectory tracking of an industrial robot arm based on a standard DH method; determining a basic analytical expression for the joint angles of each joint based on the forward kinematics equation, the basic analytical expression including a first intermediate parameter and a second intermediate parameter related to the link parameters of the industrial robot arm; solving joint angles θ2 to θ5 for joints 2 to 5 based on the basic analytical expression; adjusting the first intermediate parameter and the second intermediate parameter for joint 1 or joint 6 based on the singular posture to obtain a singular analytical expression, and solving the joint angle θ1 or the joint angle θ6 based on the singular analytical expression.
[0170] In addition, the logical instructions in the above-mentioned memory can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when sold or used as an independent product. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0171] On the other hand, an embodiment of the present invention also provides a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, the computer can execute a method for obtaining a singular posture of Cartesian trajectory tracking of an industrial robot arm provided by the above-mentioned method embodiments, the method including: establishing a forward kinematic equation for Cartesian trajectory tracking of an industrial robot arm based on the standard DH method; determining a basic analytical expression for the joint angle of each joint according to the forward kinematic equation, the basic analytical expression including a first intermediate parameter and a second intermediate parameter related to the link parameters of the industrial robot arm; for joints 2 to 5, solving the joint angles θ2 to θ5 according to the basic analytical expression; for joints 1 or joint 6, adjusting the first intermediate parameter and the second intermediate parameter based on the singular posture to obtain a singular analytical expression, and solving the joint angle θ1 or the joint angle θ6 according to the singular analytical expression.
[0172] On the other hand, an embodiment of the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to execute a method for obtaining a singular posture of Cartesian trajectory tracking of an industrial robot arm provided in the above-mentioned embodiments, the method comprising: establishing a forward kinematic equation for Cartesian trajectory tracking of an industrial robot arm based on the standard DH method; determining a basic analytical expression for the joint angle of each joint according to the forward kinematic equation, the basic analytical expression including a first intermediate parameter and a second intermediate parameter related to the link parameters of the industrial robot arm; for joints 2 to 5, solving the joint angles θ2 to θ5 according to the basic analytical expression; for joints 1 or joint 6, adjusting the first intermediate parameter and the second intermediate parameter based on the singular posture to obtain a singular analytical expression, and solving the joint angle θ1 or the joint angle θ6 according to the singular analytical expression.
[0173] It should be understood that although the steps in the flowcharts of the accompanying drawings are shown in sequence as indicated by the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some of the steps in the flowcharts of the accompanying drawings may include multiple sub-steps or multiple stages, and these sub-steps or stages are not necessarily executed at the same time, but can be executed at different times, and their execution order is not necessarily sequential, but can be executed in turn or alternately with other steps or at least a portion of the sub-steps or stages of other steps.
[0174] The above is only a partial implementation of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present invention. These improvements and modifications should also be regarded as the scope of protection of the present invention.
Claims
1. A method for obtaining singular poses of an industrial robot arm for Cartesian trajectory tracking, characterized in that: The industrial robot arm includes joints 1 to 6, and the joint angle of each joint is θ 1 to θ 6. The method comprises: Establish the forward kinematic equations for Cartesian trajectory tracking of industrial robot arms based on the standard DH method; Determining a basic analytical expression for the joint angle of each joint according to the forward kinematics equation, wherein the basic analytical expression includes a first intermediate parameter and a second intermediate parameter related to the link parameters of the industrial robot arm; The basic analytical expressions of the joint angles of each joint include: or In the formula, m i and n i ( i =1,2,3,4,5,6) are related to the link parameters of the industrial robot arm and are used to solve the joint angle θ i The first intermediate parameter and the second intermediate parameter, a 3 is the vertical distance between the axes of joint 3 and joint 4 of the industrial robot arm, d 4 is the vertical distance between the axis of joint 4 and the axis of joint 5; For joints 2 to 5, solve the joint angle according to the basic analytical formula θ 2 to θ 5; For joint 1 or joint 6, adjust the first intermediate parameter and the second intermediate parameter based on the singular posture, obtain the singular analytical expression, and solve the joint angle according to the singular analytical expression θ 1 or joint angle θ 6; The adjusting the first intermediate parameter and the second intermediate parameter based on the singular posture to obtain a singular analytical expression includes: For joint 1 and joint 6, the first intermediate parameter and the second intermediate parameter are updated as follows according to the singular posture: k The derivative form, k is a positive integer, and the singular analytical expression is obtained: Where, and Joint angles The first intermediate parameter in the basic analytical expression of and the second intermediate parameter About Time t of k derivatives, and Joint angles The first intermediate parameter in the basic analytical expression of and the second intermediate parameter About Time t of k Derivatives.
2. The method according to claim 1, wherein Solve the joint angle according to the singular analytical formula θ 1 or joint angle θ 6, including: For joint 1 or joint 6, according to the first intermediate parameter m i and the second intermediate parameter n i Determine whether to use the corresponding singular analytical expression for the joint angle θ 1 or joint angle θ 6. Solve the problem; if m i (k) and n i (k) At the same time, the first intermediate parameter m i and the second intermediate parameter n i conduct k Derivative until m i (k) and n i (k) If they are not zero at the same time, m i (k) and n i (k) Substitute into the corresponding singular analytical formula and solve for the joint angle θ 1 or joint angle θ 6; Otherwise take k Equal to 0, solve the joint angle according to the corresponding basic analytical formula θ 1 or joint angle θ 6.
3. The method according to claim 2, wherein According to the first intermediate parameter m i and the second intermediate parameter n i Determine whether to use the corresponding singular analytical expression for the joint angle θ 1 or joint angle θ 6 to solve, including: Determine whether the following inequality holds: (( m i (k) ) 2 +( n i (k) ) 2 ) 1 / 2 < ε , ε is the reference threshold; If the inequality holds, then the corresponding singular analytical expression is used to determine the joint angle θ 1 or θ 6. Solve the problem; Otherwise, use the corresponding basic analytical expression for the joint angle θ 1 or θ 6 to solve.
4. The method according to claim 1, wherein The basic analytical formula for determining the joint angle of each joint according to the forward kinematics equation includes: Multiply both sides of the forward kinematics equation by 0 T 1( θ 1) and multiply the inverse matrix on the right 5 T 6( θ 6) and 4 T 5( θ 5); then multiply only the right side of the forward kinematics equation by Rot ( x 4,- α 4) Matrix; Finally, two unequal homogeneous matrices are obtained according to the left and right parts of the forward kinematics equation T L and T R : Where, i-1 T i For adjacent connecting rods i- 1 and i The homogeneous transformation matrix of 0 T 6 is the pose matrix of the end of the industrial robot arm relative to the base, Rot ( , ) indicates winding Axis rotation α The rotation homogeneous matrix obtained by 4 angles, x 4 and α 4 is the local coordinate system and link parameters established in the robot arm by the standard DH method; According to the homogeneous matrix T L and T R Obtain multiple equations for solving for each joint angle; A basic analytical expression of the joint angle is obtained according to the multiple equations.
5. The method according to claim 4, wherein The multiple equations for solving the joint angles include: or in, T (:, i ) represents the matrix T No. i Column vector.
6. A singular posture acquisition device for Cartesian trajectory tracking of an industrial robot arm, characterized in that: The industrial robot arm includes joints 1 to 6, and the joint angle of each joint is θ 1 to θ 6. The device comprises: Equation building unit, used to build forward kinematic equations for Cartesian trajectory tracking of industrial robot arms based on the standard DH method; A basic analytical unit is used to determine a basic analytical expression of the joint angle of each joint according to the forward kinematics equation, wherein the basic analytical expression includes a first intermediate parameter and a second intermediate parameter related to the link parameters of the industrial robot arm; and the basic analytical expression for the joint angle of each joint includes: or In the formula, m i and n i ( i =1,2,3,4,5,6) are related to the link parameters of the industrial robot arm and are used to solve the joint angle θ i The first intermediate parameter and the second intermediate parameter, a 3 is the vertical distance between the axes of joint 3 and joint 4 of the industrial robot arm, d 4 is the vertical distance between the axis of joint 4 and the axis of joint 5; The first pose acquisition unit is used to solve the joint angles of joints 2 to 5 according to the basic analytical formula. θ 2 to θ 5; The second posture acquisition unit is used to adjust the first intermediate parameter and the second intermediate parameter based on the singular posture of joint 1 or joint 6, obtain a singular analytical expression, and solve the joint angle according to the singular analytical expression θ 1 or joint angle θ 6; also used for updating the first intermediate parameter and the second intermediate parameter according to the singular posture for joint 1 and joint 6 as k The derivative form, k is a positive integer, and the singular analytical expression is obtained: Where, and Joint angles The first intermediate parameter in the basic analytical expression of and the second intermediate parameter About Time t of k derivatives, and Joint angles The first intermediate parameter in the basic analytical expression of and the second intermediate parameter About Time t of k Derivatives.
7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, it implements a method for acquiring singular postures of an industrial robot arm Cartesian trajectory tracking according to any one of claims 1 to 5.
8. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, a method for acquiring singular postures of an industrial robot arm Cartesian trajectory tracking according to any one of claims 1 to 5 is implemented.
Citation Information
Patent Citations
General avoidance method and system for singular point of mechanical arm
CN113601512A
Five-degree-of-freedom mechanical arm pointing action implementation method meeting Cartesian space constraint
CN116141341A