Six-axis robot inverse solution screening method and device based on ur robot singularity

By calculating the singular positions and characteristics of the robotic arm, assigning weights to singular values, and selecting the inverse solution with equal total singular values, the motion anomalies and safety risks caused by the singularity of the robotic arm in the prior art are solved, and the stability and safety of the robotic arm motion are achieved.

CN117921651BActive Publication Date: 2026-06-30YIJIAHE TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
YIJIAHE TECH CO LTD
Filing Date
2023-12-05
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

Existing technologies cannot effectively avoid singularity effects when selecting the inverse kinematics of a six-degree-of-freedom robotic arm, leading to abnormal motion and safety risks, and cannot accurately select the optimal solution.

Method used

By establishing mathematical models of forward and inverse kinematics, the singular positions and characteristics of the robotic arm are calculated, singular values ​​are assigned weights, and the inverse kinematics with equal total singular values ​​is selected as the final result, thus avoiding singularity interference.

Benefits of technology

It enables the rapid and accurate selection of solutions from multiple inverse solutions that meet the design function and do not cause singular problems, thus ensuring the stability and safety of the robotic arm's movement.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117921651B_ABST
    Figure CN117921651B_ABST
Patent Text Reader

Abstract

This application discloses a method and apparatus for screening inverse kinematics (IK) solutions for a six-axis robotic arm based on the singularity of the UR robotic arm. Belonging to the field of robotic arm control, the method constructs forward and inverse kinematic models of the robotic arm based on its dh parameters and structure. It calculates all inverse kinematics of the robotic arm at the target position and the singular values ​​of each set of inverse kinematics. Each singular value is assigned a weight, which is then multiplied by the corresponding singular value and summed to obtain the total singular value. Inverse kinematics with a preset singular value are selected from the total singular values ​​corresponding to each set of inverse kinematics. The selected inverse kinematics is used as the final screening result. This method is simple and efficient, possessing the ability to quickly select the solution that best suits the user's purpose from multiple sets of inverse kinematics at the target position of a six-DOF robotic arm with the same configuration as the UR robotic arm. It effectively prevents planning anomalies caused by robotic arm singularities and ensures the stability and safety of the robotic arm's movement process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robotic arm control technology, and in particular to a six-axis robotic arm inverse kinematics screening method and apparatus based on the singularity of the ur robotic arm. Background Technology

[0002] The Ur robotic arm, a typical six-degree-of-freedom robot, has six rotational axes, adapting to work on almost any trajectory or angle. Due to its high operational flexibility, it is widely used in industrial assembly, power operations, and other fields. The robotic arm is a complex system; its mathematical model includes dynamics and kinematics, both of which have corresponding forward and inverse kinematic solutions. Except for some singular positions, the inverse kinematic solution of a six-degree-of-freedom robotic arm within its reach inevitably has multiple solutions. When the robotic arm performs a task, it needs to plan its Cartesian space or joint space trajectory based on the target, using this as a target-given signal for control. How to concisely and efficiently select the most suitable set of solutions from the multiple inverse kinematic solutions and sequentially plan the optimal trajectory in time and space is a topic of great interest in both theoretical research and practical applications.

[0003] Existing methods for selecting the optimal solution from multiple inverse kinematics (IKs) in joint space typically choose the set of IKs closest to the robot's current position in joint space. Specifically, this involves comparing all joint angles, multiplying them by weights, and then sorting them. If the highest-priority IK is unavailable, the next highest-priority IK is selected, and so on. However, due to the singularity of the robot, solutions that cross singular points often cause abnormal planned trajectories. Furthermore, the distance characteristics between the IK and the robot's current position in joint space cannot directly distinguish whether the IK and the robot's current position are separated by singular points. Selecting and using a similar solution will severely affect the stability of the robot's motion, generally manifesting as abnormally complex trajectories in space, leading to significant safety risks. Summary of the Invention

[0004] This application provides a six-axis robotic arm inverse kinematics (IQK) screening method and apparatus based on the singularity of the ur robotic arm. It is simple and efficient, and has the ability to quickly select the set of solutions that best suits the user's purpose from multiple sets of IQK solutions at the target position of a six-degree-of-freedom mechanical module with the same configuration as the ur robotic arm.

[0005] The first aspect of this application provides a six-axis robotic arm inverse kinematics screening method based on the singularity of the ur robotic arm, including the following steps:

[0006] Based on the structure of the robotic arm, determine the dh parameter table for each joint of the robotic arm;

[0007] Based on the dh parameter table, a forward kinematics model is established to calculate the center of each joint of the robotic arm and the end-effector pose based on the joint angles of the robotic arm.

[0008] A kinematic inverse mathematical model is established based on the structure of the robotic arm and the dh parameter table to calculate the joint angles of the robotic arm corresponding to the end-effector pose, and to calculate all inverse solutions at the target position based on the kinematic inverse mathematical model.

[0009] Based on the robotic arm structure and all inverse kinematics results, the number and characteristics of the robot's singular positions are summarized. All singular values ​​of each set of inverse kinematics are calculated, and each singular value is assigned a weight. The weights are multiplied by the corresponding singular values ​​and summed to obtain the total singular value. In each set of inverse kinematics, the inverse kinematics with the same total singular value as the preset singular value is selected, and the selected inverse kinematics is used as the final filtering result.

[0010] Optionally, in one embodiment of this application, the robotic arm is a six-axis robotic arm. Based on the dh parameter table, a forward kinematic model is established to calculate the joint centers and end-effector pose of the robotic arm according to the joint angles.

[0011] The pose of the i-th joint center of the robotic arm relative to the pose of the (i-1)-th joint center is represented in matrix form as follows:

[0012]

[0013]

[0014] in, For the axis Rotation angle The rotation matrix, Let be the rotation axis of the (i-1)th joint. Let i be the joint angle of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the offset of the i-th link of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the length of the i-th link of the robotic arm. For the axis Rotation angle The rotation matrix, Let be the torsion axis of the link at the i-th joint. Let be the torsion angle of the i-th link of the robotic arm. For the reason , Calculate the pose transformation matrix;

[0015] The position and pose of the robotic arm's end effector are as follows:

[0016]

[0017] And there are:

[0018]

[0019] The mathematical model for the forward kinematics solution is:

[0020]

[0021] in, Given the known pose matrix of the i-th joint center or end effector. These are the angles of each joint of the robotic arm.

[0022] Optionally, in one embodiment of this application, when calculating the joint angles of the robotic arm using the inverse kinematics mathematical model, the following steps are taken: Given that the second row is always [0,0,1], we first calculate the angles of joints 1, 5, and 6, and then calculate the angles of joints 2, 3, and 4.

[0023] Optionally, in one embodiment of this application, the six-axis robotic arm includes a shoulder singularity, an elbow singularity, and a wrist singularity. At the shoulder singularity, when the center of the robotic arm's end effector is located in the plane defined by the axes of the first and second joints, the angle of joint 1 cannot be solved. At the elbow singularity, when the angle of joint 3 is 0 or pi, there is only one solution for the robotic arm. At the wrist singularity, when the angle of joint 5 is 0 or pi, the angle of joint 6 cannot be solved. Based on the robotic arm structure and all inverse solution results, the number and characteristics of singular positions of the robotic arm are summarized, and all singular values ​​for each set of inverse solutions are calculated, including:

[0024] Calculate the singular value of each set of inverse solutions for the robotic arm, and denote the inverse solution value as . ;

[0025] Assuming each joint's value ranges from -pi to pi, calculate the shoulder singular value based on the principles of shoulder singularity, elbow singularity, and wrist singularity:

[0026]

[0027] in, This is a ternary operator; if the inequality is true, the left-hand side is taken; otherwise, the right-hand side is taken.

[0028] Calculate the elbow singularity:

[0029]

[0030] in, For logical AND operator;

[0031] Calculate wrist singularities:

[0032] .

[0033] Optionally, in one embodiment of this application, the weight coefficient of each singular value is at least 1, which is a geometric sequence that is a multiple of 2.

[0034] A second aspect of this application provides a six-axis robotic arm inverse kinematics screening device based on the singularity of the ur robotic arm, comprising:

[0035] The determination module is used to determine the dh parameter table of each joint of the robotic arm based on the structure of the robotic arm;

[0036] The first module is used to establish a forward kinematics model based on the dh parameter table, so as to calculate the center of each joint of the robotic arm and the end pose based on the joint angle of the robotic arm.

[0037] The second module is used to establish a kinematic inverse mathematical model based on the structure of the robotic arm and the dh parameter table, so as to calculate the joint angles of the robotic arm corresponding to the end pose of the robotic arm, and calculate all inverse solutions at the target position based on the kinematic inverse mathematical model.

[0038] The calculation and filtering module is used to summarize the number and characteristics of singular positions of the robotic arm based on the structure of the robotic arm and all inverse kinematics results, calculate all singular values ​​of each set of inverse kinematics, assign weights to each singular value, multiply the weights by the corresponding singular values ​​and add them together to obtain the total singular value, select the inverse kinematics with the preset singular value from the total singular value corresponding to each set of inverse kinematics, and take the selected inverse kinematics as the final filtering result.

[0039] Optionally, in one embodiment of this application, the robotic arm is a six-axis robotic arm. Based on the dh parameter table, a forward kinematic model is established to calculate the joint centers and end-effector pose of the robotic arm according to the joint angles.

[0040] The pose of the i-th joint center of the robotic arm relative to the pose of the (i-1)-th joint center is represented in matrix form as follows:

[0041]

[0042]

[0043] in, For the axis Rotation angle The rotation matrix, Let be the rotation axis of the (i-1)th joint. Let i be the joint angle of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the offset of the i-th link of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the length of the i-th link of the robotic arm. For the axis Rotation angle The rotation matrix, Let be the torsion axis of the link at the i-th joint. Let be the torsion angle of the i-th link of the robotic arm. For the reason , Calculate the pose transformation matrix;

[0044] The position and pose of the robotic arm's end effector are as follows:

[0045]

[0046] And there are:

[0047]

[0048] The mathematical model for the forward kinematics solution is:

[0049]

[0050] in, Given the known pose matrix of the i-th joint center or end effector. These are the angles of each joint of the robotic arm.

[0051] Optionally, in one embodiment of this application, when calculating the joint angles of the robotic arm using the inverse kinematics mathematical model, the following steps are taken: Given that the second row is always [0,0,1], we first calculate the angles of joints 1, 5, and 6, and then calculate the angles of joints 2, 3, and 4.

[0052] Optionally, in one embodiment of this application, the six-axis robotic arm includes a shoulder singularity, an elbow singularity, and a wrist singularity. At the shoulder singularity, when the center of the robotic arm's end effector is located in the plane defined by the axes of the first and second joints, the angle of joint 1 cannot be solved. At the elbow singularity, when the angle of joint 3 is 0 or pi, there is only one solution for the robotic arm. At the wrist singularity, when the angle of joint 5 is 0 or pi, the angle of joint 6 cannot be solved. Based on the robotic arm structure and all inverse solution results, the number and characteristics of singular positions of the robotic arm are summarized, and all singular values ​​for each set of inverse solutions are calculated, including:

[0053] Calculate the singular value of each set of inverse solutions for the robotic arm, and denote the inverse solution value as . ;

[0054] Assuming each joint's value ranges from -pi to pi, calculate the shoulder singular value based on the principles of shoulder singularity, elbow singularity, and wrist singularity:

[0055]

[0056] in, This is a ternary operator; if the inequality is true, the left-hand side is taken; otherwise, the right-hand side is taken.

[0057] Calculate the elbow singularity:

[0058]

[0059] in, For logical AND operator;

[0060] Calculate wrist singularities:

[0061] .

[0062] Optionally, in one embodiment of this application, the weight coefficient of each singular value is at least 1, which is a geometric sequence that is a multiple of 2.

[0063] The six-axis robotic arm inverse kinematics (IQK) screening method and apparatus based on the singularity of the robotic arm in this application distinguishes different IQK characteristics according to the principle of robotic arm singularity, fundamentally eliminating singular interference. Since the user is clearly aware of the singular characteristics of the selected IQK, even if a cross-singularity IQK needs to be selected for use, it can be pre-processed using technical means. Therefore, this application can quickly and accurately select a set of IQKs that meets the design function and will not cause singularity problems from multiple sets of IQKs based on the current robotic arm pose or the target robot pose, effectively preventing planning anomalies caused by robotic arm singularities and ensuring the stability and safety of the robotic arm's movement process.

[0064] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description

[0065] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein:

[0066] Figure 1 This is a flowchart of a six-axis robotic arm inverse kinematics screening method based on the singularity of the ur robotic arm, according to an embodiment of this application.

[0067] Figure 2 This is a schematic diagram of a six-degree-of-freedom robotic arm structure provided according to an embodiment of this application;

[0068] Figure 3 This is a schematic diagram illustrating the execution process of a six-axis robotic arm inverse kinematics screening method based on the singularity of the ur robotic arm, according to an embodiment of this application.

[0069] Figure 4 This is an example diagram of a six-axis robotic arm inverse kinematics screening device based on the singularity of the ur robotic arm according to an embodiment of this application. Detailed Implementation

[0070] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.

[0071] Figure 1 This is a flowchart of a six-axis robotic arm inverse kinematics screening method based on the singularity of the ur robotic arm, according to an embodiment of this application.

[0072] like Figure 1 As shown, the six-axis robotic arm inverse kinematics screening method based on the singularity of the ur robotic arm includes the following steps:

[0073] In step S101, the dh parameter table of each joint of the robotic arm is determined according to the structure of the robotic arm.

[0074] like Figure 2 As shown, a six-degree-of-freedom robotic arm structure is illustrated. Figure 2 The dh parameters of the six-degree-of-freedom robotic arm are shown in Table 1.

[0075] Table 1. Standard six-DOF robotic arm dh parameter table

[0076]

[0077] In step S102, a forward kinematics model is established based on the dh parameter table to calculate the joint centers and end-effector poses of the robotic arm based on the joint angles of the robotic arm.

[0078] Based on the dh table listed in the previous step, a mathematical model for calculating the joint centers and end-effector pose of the robotic arm can be obtained using the dh method, denoted as forward.

[0079] In step S103, a kinematic inverse mathematical model is established based on the robotic arm structure and the dh parameter table to calculate the corresponding joint angles of the robotic arm according to the end-effector pose, and to calculate all inverse solutions at the target position according to the kinematic inverse mathematical model.

[0080] Based on the structure of the robotic arm, the mathematical model for calculating the joint angles of the robotic arm based on the end-effector pose is obtained from the dh table obtained in the first step and is denoted as inverse.

[0081] In step S104, based on the robotic arm structure and all inverse kinematics results, the number and characteristics of the robotic arm's singular positions are summarized, all singular values ​​of each set of inverse kinematics are calculated, and each singular value is assigned a weight. The weights are multiplied by the corresponding singular values ​​and summed to obtain the total singular value. In each set of inverse kinematics, the inverse kinematics with the same total singular value as the preset singular value is selected, and the selected inverse kinematics is used as the final filtering result.

[0082] Based on the robotic arm structure and inverse kinematics results, the number and characteristics of singular positions of the robotic arm are summarized. All singular values ​​for each set of inverse kinematics are calculated, and each singular position is assigned a weight. The weight is multiplied by the corresponding singular value and summed to obtain the total singular value. The minimum singular value weight coefficient is 1, and it follows a geometric sequence that is a multiple of 2. For example, the calculated coefficients for the ur robotic arm with three singular values ​​are 1, 2, and 4, respectively.

[0083] Based on the preset singular values, the inverse solution with the same singular value is selected. For example, if the preset singular value is 7, the inverse solution with a total singular value of 7 is selected as the final result to participate in the final planning or interpolation.

[0084] The following is a detailed description, with reference to the accompanying drawings, of the six-axis robotic arm inverse kinematics screening method based on the singularity of the ur robotic arm according to embodiments of this application. For example... Figure 3 As shown, the execution process of the six-axis robotic arm inverse kinematics screening method based on the singularity of the ur robotic arm is demonstrated.

[0085] The first step is to list the dh parameter table based on the structure of the robotic arm.

[0086] Based on the joint structure of the ur robotic arm, its dh parameter table can be obtained, as shown in Table 2.

[0087] Table 2 UR robotic arm dh parameters

[0088]

[0089] The second step, according to Figure 2 Robotic arm structure, calculation of forward kinematics.

[0090] The pose of the i-th joint center of the ur robotic arm relative to the pose of the (i-1)-th joint center is represented in matrix form as shown in (1):

[0091] (1)

[0092] in, For the axis Rotation angle The rotation matrix, Let be the rotation axis of the (i-1)th joint. Let i be the joint angle of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the offset of the i-th link of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the length of the i-th link of the robotic arm. For the axis Rotation angle The rotation matrix, Let be the torsion axis of the link at the i-th joint. Let be the torsion angle of the i-th link of the robotic arm. For the reason , Calculate the pose transformation matrix.

[0093] The method for calculating the position and pose of the robotic arm's end effector is shown in (2):

[0094] (2)

[0095] Formula (3) can also be listed:

[0096] (3)

[0097] The above methods can be used to derive the position and orientation of each joint center of the UR robotic arm, including its end effector, relative to the base coordinate system, i.e., the forward kinematics solution of the robotic arm. ,in Given the known pose matrix of the i-th joint center or end effector. These are the angles of each joint of the robotic arm. It is also possible to obtain... That is, the pose matrix of the j-th joint center relative to the i-th joint center, the pose matrix contains the position and pose data of the corresponding joint center.

[0098] The third step, according to Figure 2 Based on the robotic arm structure and the listed dh parameter table, calculate the inverse kinematics solution.

[0099] The Ur robotic arm is a robot that conforms to the Piper criterion, with its 2nd, 3rd, and 4th axes parallel, utilizing... Given that the second row is always [0,0,1], we can first calculate the angles of joints 1, 5, and 6, and then calculate the angles of joints 2, 3, and 4. The basic process for calculating the angles of joints 1, 5, and 6 is as follows:

[0100] From the kinematic formulas, we can derive:

[0101] (4)

[0102] In equation (4), the correlation matrices are as follows:

[0103] (5)

[0104] (6)

[0105] use The second row is always [0,0,1]. Focus on the elements of the second row of the final matrix in formula (4). Through calculation, we can finally obtain:

[0106] (7)

[0107] (8)

[0108] (9)

[0109] in:

[0110] (10)

[0111] After obtaining the angles of joints 1, 5, and 6, the angles of joints 2, 3, and 4 are then calculated. The simplified process is as follows:

[0112] Multiply both sides of the equation by the right ,have:

[0113] (11)

[0114] Find:

[0115] (12)

[0116] (13)

[0117] (14)

[0118] (15)

[0119] Thus, the inverse model is obtained. Through the inverse model, all possible inverse solutions for the user's target position can be obtained. With the structure of the ur robot, there will be a maximum of 8 sets of inverse solutions.

[0120] The fourth step is to calculate the singular values ​​of the robotic arm.

[0121] UR robotic arm structure as follows Figure 2 As shown, the UR robotic arm has a total of three singularities, which are referred to as the shoulder singularity, elbow singularity, and wrist singularity according to their positions. The definitions and characteristics of these three singularities of the UR robotic arm are as follows:

[0122] Shoulder singularity: When the center of the end effector of the robotic arm is located in the plane defined by the axes of the first and second joints, the angle of joint one cannot be solved.

[0123] Elbow singularity: When the angle of joint 3 of the robot arm is 0 or pi, there is exactly one solution for the robot arm.

[0124] Wrist singularity: When the angle of joint 5 of the robotic arm is 0 or pi, the angle of joint 6 cannot be solved.

[0125] The singular values ​​of the eight sets of inverse solutions were calculated, and the inverse solution values ​​are denoted as... .

[0126] Assuming the value range of each joint is from -pi to pi, according to the three singular value principle, we know that:

[0127] Calculate the shoulder singularity:

[0128] (16)

[0129] Calculate the elbow singularity:

[0130] (17)

[0131] Calculate wrist singularities:

[0132] (18)

[0133] Weighted summation:

[0134] (19)

[0135] The fifth step is to return the inverse solution required by the user based on the preset target singular value, which can be used for interpolation or planning.

[0136] (20)

[0137] According to the six-axis robotic arm inverse kinematics (IK) screening method based on the singularity of the robotic arm proposed in this application, the method can quickly and accurately select a set of IK solutions that meet the design function and will not cause singularity problems from multiple sets of IK solutions based on the current robotic arm pose or the target robot pose. This effectively prevents planning anomalies caused by robotic arm singularities and ensures the stability and safety of the robotic arm's movement process.

[0138] Next, referring to the accompanying drawings, a six-axis robotic arm inverse kinematics screening device based on the singularity of the ur robotic arm, according to an embodiment of this application, is described.

[0139] Figure 4 This is a structural diagram of a six-axis robotic arm inverse kinematics screening device based on the singularity of the ur robotic arm according to an embodiment of this application.

[0140] like Figure 4 As shown, the six-axis robotic arm inverse kinematics screening device 10 based on the singularity of the ur robotic arm includes: a determination module 100, a first establishment module 200, a second establishment module 300, and a calculation screening module 400.

[0141] The system comprises several modules: Module 100 determines the dh parameter table for each joint of the robotic arm based on its structure. Module 200 establishes a forward kinematics model based on the dh parameter table to calculate the joint centers and end-effector poses of the robotic arm based on the joint angles. Module 300 establishes an inverse kinematics model based on the robotic arm structure and the dh parameter table to calculate the corresponding joint angles of the robotic arm based on the end-effector poses, and calculates all inverse kinematics solutions at the target position based on the inverse kinematics model. Module 400 summarizes the number and characteristics of singular positions of the robotic arm based on its structure and all inverse kinematics solution results. It calculates all singular values ​​for each set of inverse kinematics solutions, assigns a weight to each singular value, multiplies the weight by the corresponding singular value, and sums the results to obtain the total singular value. From the total singular value corresponding to each set of inverse kinematics solutions, it selects the inverse kinematics solution with the preset singular value, and uses the selected inverse kinematics solution as the final filtering result.

[0142] Optionally, in one embodiment of this application, the robotic arm is a six-axis robotic arm. Based on the dh parameter table, a forward kinematic model is established to calculate the joint centers and end-effector pose of the robotic arm according to the joint angles.

[0143] The pose of the i-th joint center of the robotic arm relative to the pose of the (i-1)-th joint center is represented in matrix form as follows:

[0144]

[0145]

[0146] in, For the axis Rotation angle The rotation matrix, Let be the rotation axis of the (i-1)th joint. Let i be the joint angle of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the offset of the i-th link of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the length of the i-th link of the robotic arm. For the axis Rotation angle The rotation matrix, Let be the torsion axis of the link at the i-th joint. Let be the torsion angle of the i-th link of the robotic arm. For the reason , Calculate the pose transformation matrix;

[0147] The position and pose of the robotic arm's end effector are as follows:

[0148]

[0149] And there are:

[0150]

[0151] The mathematical model for the forward kinematics solution is:

[0152]

[0153] in, Given the known pose matrix of the i-th joint center or end effector. These are the angles of each joint of the robotic arm.

[0154] Optionally, in one embodiment of this application, when calculating the joint angles of the robotic arm using the inverse kinematics mathematical model, the following steps are taken: Given that the second row is always [0,0,1], we first calculate the angles of joints 1, 5, and 6, and then calculate the angles of joints 2, 3, and 4.

[0155] Optionally, in one embodiment of this application, the six-axis robotic arm includes a shoulder singularity, an elbow singularity, and a wrist singularity. At the shoulder singularity, when the center of the robotic arm's end effector is located in the plane defined by the axes of the first and second joints, the angle of joint 1 cannot be solved. At the elbow singularity, when the angle of joint 3 is 0 or pi, there is only one solution for the robotic arm. At the wrist singularity, when the angle of joint 5 is 0 or pi, the angle of joint 6 cannot be solved. Based on the robotic arm structure and all inverse solution results, the number and characteristics of singular positions of the robotic arm are summarized, and all singular values ​​for each set of inverse solutions are calculated, including:

[0156] Calculate the singular values ​​of each inverse solution for the robotic arm, denoted as . ;

[0157] Assuming each joint's value ranges from -pi to pi, calculate the shoulder singular value based on the principles of shoulder singularity, elbow singularity, and wrist singularity:

[0158]

[0159] in, This is a ternary operator; if the inequality is true, the left-hand side is taken; otherwise, the right-hand side is taken.

[0160] Calculate the elbow singularity:

[0161]

[0162] in, For logical AND operator;

[0163] Calculate wrist singularities:

[0164] .

[0165] Optionally, in one embodiment of this application, the weight coefficient of each singular value is at least 1, which is a geometric sequence that is a multiple of 2.

[0166] It should be noted that the foregoing explanation of the embodiment of the six-axis robotic arm inverse kinematics screening method based on the singularity of the ur robotic arm also applies to the six-axis robotic arm inverse kinematics screening device based on the singularity of the ur robotic arm in this embodiment, and will not be repeated here.

[0167] According to the embodiments of this application, the six-axis robotic arm inverse kinematics screening device based on the singularity of the robotic arm can quickly and accurately select a set of inverse kinematics that meets the design function and will not cause singularity problems from multiple sets of inverse kinematics based on the current robotic arm pose or the target robot pose. This effectively prevents planning anomalies caused by robotic arm singularities and ensures the stability and safety of the robotic arm movement process.

[0168] In the description of this specification, the 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 this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. 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 different embodiments or examples.

[0169] 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 application, "N" means at least two, such as two, three, etc., unless otherwise explicitly specified.

[0170] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or N executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.

Claims

1. A six-axis robotic arm inverse kinematics screening method based on the singularity of the ur robotic arm, characterized in that, Includes the following steps: Based on the structure of the robotic arm, determine the dh parameter table for each joint of the robotic arm; Based on the dh parameter table, a forward kinematics model is established to calculate the joint centers and end-effector pose of the robotic arm according to the joint angles of the robotic arm. A kinematic inverse mathematical model is established based on the structure of the robotic arm and the dh parameter table to calculate the joint angles of the robotic arm corresponding to the end-effector pose, and to calculate all inverse solutions at the target position based on the kinematic inverse mathematical model. Based on the robotic arm structure and all inverse kinematics results, the number and characteristics of singular positions of the robotic arm are summarized. All singular values ​​of each set of inverse kinematics are calculated, and each singular value is assigned a weight. The weights are multiplied by the corresponding singular values ​​and summed to obtain the total singular value. In each set of inverse kinematics, the inverse kinematics with the same total singular value as the preset singular value is selected, and the selected inverse kinematics is used as the final filtering result.

2. The method according to claim 1, characterized in that, The robotic arm is a six-axis robotic arm. Based on the dh parameter table, a forward kinematic model is established to calculate the joint centers and end-effector pose of the robotic arm according to the joint angles. The pose of the i-th joint center of the robotic arm relative to the pose of the (i-1)-th joint center is represented in matrix form as follows: in, For the axis Rotation angle The rotation matrix, Let be the rotation axis of the (i-1)th joint. Let i be the joint angle of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the offset of the i-th link of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the length of the i-th link of the robotic arm. For the axis Rotation angle The rotation matrix, Let be the torsion axis of the link at the i-th joint. Let be the torsion angle of the i-th link of the robotic arm. For the reason , Calculate the pose transformation matrix; The position and pose of the robotic arm's end effector are as follows: And there are: The mathematical model for the forward kinematics solution is: in, Given the known pose matrix of the i-th joint center or end effector. These are the angles of each joint of the robotic arm.

3. The method according to claim 2, characterized in that, When calculating the joint angles of the robotic arm using the inverse kinematics mathematical model, Given that the second row is always [0,0,1], we first calculate the angles of joints 1, 5, and 6, and then calculate the angles of joints 2, 3, and 4.

4. The method according to claim 2, characterized in that, The six-axis robotic arm includes shoulder, elbow, and wrist singularities. At the shoulder singularity, when the center of the robotic arm's end effector is located in the plane defined by the axes of the first and second joints, the angle of joint 1 cannot be solved. At the elbow singularity, when the angle of joint 3 is 0 or pi, there is only one solution for the robotic arm. At the wrist singularity, when the angle of joint 5 is 0 or pi, the angle of joint 6 cannot be solved. Based on the robotic arm structure and all inverse solutions, the number and characteristics of singular positions of the robotic arm are summarized, and all singular values ​​for each set of inverse solutions are calculated, including: Calculate the singular value of each set of inverse solutions for the robotic arm, and denote the inverse solution value as . ; Assuming each joint's value ranges from -pi to pi, calculate the shoulder singular value based on the principles of shoulder singularity, elbow singularity, and wrist singularity: in, This is a ternary operator; if the inequality is true, the left-hand side is taken; otherwise, the right-hand side is taken. Calculate the elbow singularity: in, For logical AND operator; Calculate wrist singularities: 。 5. The method according to claim 4, characterized in that, The weight coefficient of each singular value is at least 1, and it is a geometric sequence that is a multiple of 2.

6. A six-axis robotic arm inverse kinematics screening device based on the singularity of the ur robotic arm, characterized in that, include: The determination module is used to determine the dh parameter table of each joint of the robotic arm based on the structure of the robotic arm; The first module is used to establish a forward kinematics model based on the dh parameter table, so as to calculate the center of each joint of the robotic arm and the end pose based on the joint angle of the robotic arm. The second module is used to establish a kinematic inverse mathematical model based on the structure of the robotic arm and the dh parameter table, so as to calculate the joint angles of the robotic arm corresponding to the end pose of the robotic arm, and calculate all inverse solutions at the target position based on the kinematic inverse mathematical model. The calculation and filtering module is used to summarize the number and characteristics of singular positions of the robotic arm based on the structure of the robotic arm and all inverse kinematics results, calculate all singular values ​​of each set of inverse kinematics, assign weights to each singular value, multiply the weights by the corresponding singular values ​​and add them together to obtain the total singular value, select the inverse kinematics with the preset singular value from the total singular value corresponding to each set of inverse kinematics, and use the selected inverse kinematics as the final filtering result.

7. The apparatus according to claim 6, characterized in that, The robotic arm is a six-axis robotic arm. Based on the dh parameter table, a forward kinematic model is established to calculate the joint centers and end-effector pose of the robotic arm according to the joint angles. The pose of the i-th joint center of the robotic arm relative to the pose of the (i-1)-th joint center is represented in matrix form as follows: in, For the axis Rotation angle The rotation matrix, Let be the rotation axis of the (i-1)th joint. Let i be the joint angle of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the offset of the i-th link of the robotic arm. For the reason Calculate the pose transformation matrix. Let be the length of the i-th link of the robotic arm. For the axis Rotation angle The rotation matrix, Let be the torsion axis of the link at the i-th joint. Let be the torsion angle of the i-th link of the robotic arm. For the reason , Calculate the pose transformation matrix; The position and pose of the robotic arm's end effector are as follows: And there are: The mathematical model for the forward kinematics solution is: in, Given the known pose matrix of the i-th joint center or end effector. These are the angles of each joint of the robotic arm.

8. The apparatus according to claim 7, characterized in that, When calculating the joint angles of the robotic arm using the inverse kinematics mathematical model, Given that the second row is always [0,0,1], we first calculate the angles of joints 1, 5, and 6, and then calculate the angles of joints 2, 3, and 4.

9. The apparatus according to claim 7, characterized in that, The six-axis robotic arm includes shoulder, elbow, and wrist singularities. At the shoulder singularity, when the center of the robotic arm's end effector is located in the plane defined by the axes of the first and second joints, the angle of joint 1 cannot be solved. At the elbow singularity, when the angle of joint 3 is 0 or pi, there is only one solution for the robotic arm. At the wrist singularity, when the angle of joint 5 is 0 or pi, the angle of joint 6 cannot be solved. Based on the robotic arm structure and all inverse solutions, the number and characteristics of singular positions of the robotic arm are summarized, and all singular values ​​for each set of inverse solutions are calculated, including: Calculate the singular value of each set of inverse solutions for the robotic arm, and denote the inverse solution value as . ; Assuming each joint's value ranges from -pi to pi, calculate the shoulder singular value based on the principles of shoulder singularity, elbow singularity, and wrist singularity: in, This is a ternary operator; if the inequality is true, the left-hand side is taken; otherwise, the right-hand side is taken. Calculate the elbow singularity: in, For logical AND operator; Calculate wrist singularities: 。 10. The apparatus according to claim 9, characterized in that, The weight coefficient of each singular value is at least 1, and it is a geometric sequence that is a multiple of 2.