Trajectory planning method and device of mechanical arm, storage device, medium and product

CN117733840BActive Publication Date: 2026-10-27VINNO TECH (SUZHOU) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311639089.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-12-01
Publication Date
2026-10-27
Estimated Expiration
2043-12-01

AI Technical Summary

Technical Problem

但是,现有技术的控制方法不稳定,并且在机械臂的零空间中存在关节的自运动,安全性低

Benefits of technology

[0040]上述机械臂的轨迹规划方法、装置、存储设备、介质和产品,通过获取机械臂末端执行器的目标运动轨迹,并确定关系矩阵,其中,关系矩阵用于表征多个机械臂关节在关节空间的角速度向量与机械臂末端执行器在三维空间的运动速度向量之间的对应关系;在各机械臂关节中确定目标机械臂关节,并确定目标机械臂关节对应的目标关节角度;根据目标关节角度与预设阈值的大小关系,对关系矩阵的特定空间对应的角速度向量进行控制,得到目标角速度向量,根据目标角速度向量控制各机械臂关节运动,以实现机械臂末端执行器在目标运动轨迹上运动,其中,特定空间用于表征各机械臂关节的角速度向量任意变化且机械臂末端对应的运动速度向量为零值的特定空间。该方法可以对关系矩阵的矩阵零空间中机械臂关节的关节角度和姿态进行限制,以实现约束机械臂关节在零空间自由运动,使机械臂保持在奇异结构附近的安全区域,避免机械臂在目标运动轨迹中运动过程出现奇异构型,控制方法稳定,且可以提高机械臂的操控性和安全性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117733840B_ABST
    Figure CN117733840B_ABST
Patent Text Reader

Abstract

The application relates to a trajectory planning method and device of a mechanical arm, a storage device, a medium and a product. The method comprises the following steps: obtaining a target motion trajectory of an end effector of the mechanical arm, and determining a relationship matrix; determining a target mechanical arm joint in each mechanical arm joint, and determining a target joint angle corresponding to the target mechanical arm joint; controlling an angular velocity vector corresponding to a specific space of the relationship matrix according to a size relationship between the target joint angle and a preset threshold value, obtaining a target angular velocity vector, and controlling the motion of each mechanical arm joint according to the target angular velocity vector, so that the end effector of the mechanical arm moves on the target motion trajectory, wherein the specific space is used for representing a specific space in which the angular velocity vector of each mechanical arm joint changes arbitrarily and the motion velocity vector corresponding to the end effector of the mechanical arm is zero. By adopting the method, the mechanical arm joint can be constrained to move freely in the zero space, the singular configuration of the mechanical arm can be avoided, and the controllability and safety of the mechanical arm are improved.
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 method, apparatus, storage device, medium and product for trajectory planning of a robotic arm. Background Technology

[0002] A robotic arm is a mechanical device that simulates the structure and function of an arm, including an end effector and multiple joints. A redundant robotic arm refers to one with more joints than required to perform the task. In a robotic arm, rotation, lifting, bending, and other movements can be achieved by controlling the position and speed of the joints. The end effector can be equipped with various tools, grippers, or sensors to perform various tasks. During the movement of a robotic arm, in a specific position or posture—that is, in a singular structure—the flexibility of the joints in the direction of movement may suddenly disappear due to factors such as joint arrangement or kinematic constraints. This can lead to abnormal problems such as sudden excessive speed or acceleration of the joints, posing a risk of momentary loss of control and potential damage to the robotic arm itself and its surrounding environment.

[0003] In existing technologies, trajectory planning for robotic arms is based on the Jacobian matrix. The Jacobian matrix provides a mapping from joint velocities to end effector velocities. During the calculation of the pseudo-inverse of the Jacobian matrix using the singular robust inverse method, the Jacobian matrix can be corrected to avoid numerical instability caused by singular values ​​approaching zero. This allows for more stable control of the robotic arm near singular points, enabling it to complete its trajectory motion. However, existing control methods are unstable, and the joints exhibit self-motion in the null space of the robotic arm, resulting in low safety. Summary of the Invention

[0004] Therefore, it is necessary to provide a method, apparatus, storage device, medium, and product for trajectory planning of a robotic arm to address the aforementioned technical problems.

[0005] Firstly, this application provides a trajectory planning method for a robotic arm, comprising:

[0006] The target motion trajectory of the robotic arm end effector is obtained, and the relationship matrix is ​​determined. The relationship matrix is ​​used to characterize the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vectors of the robotic arm end effector in three-dimensional space.

[0007] Determine the target robotic arm joint among all robotic arm joints, and determine the target joint angle corresponding to the target robotic arm joint;

[0008] Based on the relationship between the target joint angle and the preset threshold, the angular velocity vector corresponding to the specific space of the relationship matrix is ​​controlled to obtain the target angular velocity vector. The movement of each robotic arm joint is controlled according to the target angular velocity vector to realize the movement of the robotic arm end effector on the target motion trajectory. The specific space is used to characterize the specific space where the angular velocity vector of each robotic arm joint changes arbitrarily and the motion velocity vector corresponding to the robotic arm end is zero.

[0009] In one embodiment, based on the relationship between the target joint angle and a preset threshold, the angular velocity vector corresponding to a specific space of the relationship matrix is ​​controlled to obtain the target angular velocity vector, including:

[0010] When the absolute value of the target joint angle is less than or equal to a preset threshold, the angular velocity vector is used as the target angular velocity vector, and each robotic arm joint is controlled to move with the angular velocity vector.

[0011] If the absolute value of the target joint angle is greater than a preset threshold, the projection value is determined based on the target joint angle, and the angular velocity vector is iteratively updated according to the projection value. When the target joint angle decreases to the preset threshold, the preset iteration stopping condition is met, and the target angular velocity vector is obtained.

[0012] In one embodiment, determining the relation matrix includes:

[0013] Determine the spatial coordinate vector of the robotic arm's end effector in three-dimensional space based on the target's motion trajectory;

[0014] The joint space coordinate vectors of each robotic arm joint in the joint space are determined based on the spatial coordinate vectors.

[0015] Mathematical operations are performed on the joint spatial coordinate vectors based on the spatial coordinate vectors to obtain the relation matrix.

[0016] In one embodiment, before controlling the angular velocity vector corresponding to a specific space of the relationship matrix based on the relationship between the target joint angle and a preset threshold, the process includes:

[0017] Obtain the smallest eigenvalue in the relation matrix that is related to the singular configuration of the robotic arm;

[0018] When the minimum eigenvalue is less than the preset eigenvalue, the preset compensation coefficient is obtained, and the solution of the relation matrix is ​​adjusted according to the preset compensation coefficient to obtain the angular velocity vector.

[0019] In one embodiment, obtaining the target motion trajectory of the robotic arm end effector includes:

[0020] Acquire the pose data of the robotic arm's end effector in a preset path planning task;

[0021] The pose data is interpolated, and the interpolated pose data is then fitted to obtain the target motion trajectory.

[0022] In one embodiment, the method further includes:

[0023] After the end effector of the robotic arm completes the target motion trajectory, if the angular velocity vector of each robotic arm joint is non-zero, the angular velocity vector is controlled according to the projection value and the exponential function to reduce the angular velocity vector to zero.

[0024] Secondly, this application also provides a trajectory planning device for a robotic arm, comprising:

[0025] The coordinate module is used to obtain the target motion trajectory of the robotic arm end effector and determine the relationship matrix. The relationship matrix is ​​used to characterize the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vectors of the robotic arm end effector in three-dimensional space.

[0026] The joint angle module is used to determine the target robotic arm joint among all robotic arm joints and to determine the target joint angle corresponding to the target robotic arm joint.

[0027] The motion control module is used to control the angular velocity vector corresponding to a specific space of the relationship matrix according to the relationship between the target joint angle and the preset threshold, to obtain the target angular velocity vector, and control the movement of each robotic arm joint according to the target angular velocity vector, so as to realize the movement of the robotic arm end effector on the target motion trajectory. The specific space is used to characterize the specific space where the angular velocity vector of each robotic arm joint changes arbitrarily and the motion velocity vector corresponding to the robotic arm end is zero.

[0028] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:

[0029] The target motion trajectory of the robotic arm end effector is obtained, and the relationship matrix is ​​determined. The relationship matrix is ​​used to characterize the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vectors of the robotic arm end effector in three-dimensional space.

[0030] Determine the target robotic arm joint among all robotic arm joints, and determine the target joint angle corresponding to the target robotic arm joint;

[0031] Based on the relationship between the target joint angle and the preset threshold, the angular velocity vector corresponding to the specific space of the relationship matrix is ​​controlled to obtain the target angular velocity vector. The movement of each robotic arm joint is controlled according to the target angular velocity vector to realize the movement of the robotic arm end effector on the target motion trajectory. The specific space is used to characterize the specific space where the angular velocity vector of each robotic arm joint changes arbitrarily and the motion velocity vector corresponding to the robotic arm end is zero.

[0032] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, performs the following steps:

[0033] The target motion trajectory of the robotic arm end effector is obtained, and the relationship matrix is ​​determined. The relationship matrix is ​​used to characterize the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vectors of the robotic arm end effector in three-dimensional space.

[0034] Determine the target robotic arm joint among all robotic arm joints, and determine the target joint angle corresponding to the target robotic arm joint;

[0035] Based on the relationship between the target joint angle and the preset threshold, the angular velocity vector corresponding to the specific space of the relationship matrix is ​​controlled to obtain the target angular velocity vector. The movement of each robotic arm joint is controlled according to the target angular velocity vector to realize the movement of the robotic arm end effector on the target motion trajectory. The specific space is used to characterize the specific space where the angular velocity vector of each robotic arm joint changes arbitrarily and the motion velocity vector corresponding to the robotic arm end is zero.

[0036] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, performs the following steps:

[0037] The target motion trajectory of the robotic arm end effector is obtained, and the relationship matrix is ​​determined. The relationship matrix is ​​used to characterize the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vectors of the robotic arm end effector in three-dimensional space.

[0038] Determine the target robotic arm joint among all robotic arm joints, and determine the target joint angle corresponding to the target robotic arm joint;

[0039] Based on the relationship between the target joint angle and the preset threshold, the angular velocity vector corresponding to the specific space of the relationship matrix is ​​controlled to obtain the target angular velocity vector. The movement of each robotic arm joint is controlled according to the target angular velocity vector to realize the movement of the robotic arm end effector on the target motion trajectory. The specific space is used to characterize the specific space where the angular velocity vector of each robotic arm joint changes arbitrarily and the motion velocity vector corresponding to the robotic arm end is zero.

[0040] The aforementioned trajectory planning method, device, storage device, medium, and product for robotic arms acquire the target motion trajectory of the robotic arm end effector and determine a relation matrix. This relation matrix characterizes the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vectors of the robotic arm end effector in three-dimensional space. A target robotic arm joint is identified among each robotic arm joint, and the target joint angle corresponding to that joint is determined. Based on the relationship between the target joint angle and a preset threshold, the angular velocity vector corresponding to a specific space in the relation matrix is ​​controlled to obtain the target angular velocity vector. The movement of each robotic arm joint is controlled based on the target angular velocity vector to achieve motion of the robotic arm end effector on the target motion trajectory. The specific space characterizes a specific space where the angular velocity vectors of each robotic arm joint can change arbitrarily, and the motion velocity vector corresponding to the robotic arm end effector is zero. This method can restrict the joint angles and orientations of the robotic arm joints in the null space of the relation matrix, thereby constraining the robotic arm joints to move freely in the null space. This keeps the robotic arm in a safe area near the singular structure, avoids the robotic arm from developing singular configurations during its movement in the target trajectory, and provides stable control. It can also improve the maneuverability and safety of the robotic arm. Attached Figure Description

[0041] To more clearly illustrate the technical solutions in the embodiments or related technologies of this application, the accompanying drawings used in the description of the embodiments or related technologies will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0042] Figure 1 This is an application environment diagram of the trajectory planning method for a robotic arm in one embodiment;

[0043] Figure 2 This is a flowchart illustrating the trajectory planning method for a robotic arm in one embodiment;

[0044] Figure 3 This is a schematic diagram of the robotic arm in one embodiment;

[0045] Figure 4 This is a schematic diagram of a singular configuration of the robotic arm in another embodiment;

[0046] Figure 5 This is a flowchart illustrating the trajectory planning method for a robotic arm in one embodiment;

[0047] Figure 6 This is a structural block diagram of the trajectory planning device for a robotic arm in one embodiment;

[0048] Figure 7 This is an internal structure diagram of a computer device as a terminal in one embodiment;

[0049] Figure 8 This is an internal structure diagram of a computer device that is a server in one embodiment. Detailed Implementation

[0050] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0051] The trajectory planning method for the robotic arm provided in this application embodiment can be applied to, for example... Figure 1 In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104 or placed on a cloud or other network server. Terminal 102 acquires the target motion trajectory of the robotic arm end effector and determines a relation matrix. This relation matrix characterizes the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vectors of the robotic arm end effector in three-dimensional space. It identifies the target robotic arm joint among each joint and determines the target joint angle corresponding to the target joint. Based on the relationship between the target joint angle and a preset threshold, it controls the angular velocity vector corresponding to a specific space in the relation matrix to obtain the target angular velocity vector. It then controls the movement of each robotic arm joint based on the target angular velocity vector to achieve the movement of the robotic arm end effector on the target motion trajectory. The specific space characterizes a specific space where the angular velocity vectors of each robotic arm joint change arbitrarily and the motion velocity vector corresponding to the robotic arm end effector is zero.

[0052] The terminal 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, and smart in-vehicle systems. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted devices. The server 104 can be implemented using a standalone server or a server cluster consisting of multiple servers.

[0053] In one exemplary embodiment, such as Figure 2 As shown, a trajectory planning method for a robotic arm is provided, which can be applied to... Figure 1 Taking terminal 102 as an example, the explanation includes the following steps 202 to 206. Wherein:

[0054] Step 202: Obtain the target motion trajectory of the robotic arm end effector and determine the relationship matrix, wherein the relationship matrix is ​​used to characterize the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vectors of the robotic arm end effector in three-dimensional space.

[0055] The end effector of a robotic arm is the end part of the robotic arm used to perform specific tasks or interact with the external environment. It can be the last joint of the robotic arm, such as a gripper, tool, or other device. A robotic arm joint is a movable connection point used to enable the robotic arm to rotate or move in different directions. These can be sliding joints, rotary joints, universal joints, or gear joints. Joint space is a multi-dimensional space related to the joint angles or positions of each robotic arm joint. Three-dimensional space is a coordinate system used to describe the motion state of the robotic arm, including the position and orientation of the end effector in three-dimensional space.

[0056] For example, by controlling the end effector and joints of a robotic arm, trajectory planning for the robotic arm in three-dimensional space can be achieved. Based on the path planning task, several spatial coordinate vectors of the end effector in the path planning task can be obtained. Figure 3 As shown, based on the spatial coordinate vectors of the end effector of the robotic arm in three-dimensional space, and the relationship between three-dimensional space and joint space in the kinematics of the robotic arm, the joint coordinate vectors corresponding to each spatial coordinate vector can be obtained. The relationship matrix can be obtained by calculating the joint coordinate vectors and spatial coordinate vectors.

[0057] Specifically, the relationship matrix can be a Jacobian matrix, which is a matrix containing several partial derivatives used to characterize the correspondence between joint space velocity and three-dimensional space velocity. The Jacobian matrix can be represented as follows:

[0058]

[0059] In the Jacobian matrix, each row represents the influence of the linear or angular velocity component of each robotic arm end effector on the angular velocity of each robotic arm joint. If the robotic arm comprises n joints, the Jacobian matrix has n rows, where each row represents the influence of the translational velocity and rotational velocity of the robotic arm end effector along the x, y, and z axes in three-dimensional space on the angular velocity of each robotic arm joint. Each column of the Jacobian matrix represents the influence of the angular velocity of each robotic arm joint on the linear and angular velocity components of each robotic arm end effector. If the robotic arm comprises velocity components of m robotic arm end effectors, then each column of the Jacobian matrix represents the influence of the change in the angular velocity of each robotic arm joint on the linear or angular velocity components of each robotic arm end effector.

[0060] Step 204: Determine the target robotic arm joint among all robotic arm joints, and determine the target joint angle corresponding to the target robotic arm joint.

[0061] For example, when there is no singular configuration of the robotic arm corresponding to the arm angle, when the joint angle of the third robotic arm joint is zero, the arm angle of the robotic arm corresponding to the configuration is zero. When the joint angle of the third robotic arm joint is non-zero, the absolute value of the arm angle is proportional to the absolute value of the joint angle of the third robotic arm joint. Here, the singular configuration is a specific position or posture of the robotic arm. Under the singular configuration, based on factors such as the arrangement of the robotic arm joints or kinematic constraints, the robotic arm loses flexibility in a specific direction of motion. The robotic arm joints may experience abnormal situations such as sudden increases in speed or acceleration. The robotic arm may be at risk of instantaneous loss of control, resulting in equipment damage and safety issues.

[0062] In redundant robotic arms, the arm may have a singular configuration. A redundant robotic arm refers to one with a number of joints exceeding the actual task requirements, meaning it has extra degrees of freedom. For example... Figure 3 As shown, a redundant robotic arm can be a seven-axis robotic arm. A seven-axis robotic arm includes seven joints and one end effector. The seven joints control the robotic arm's degrees of freedom, while the end effector is the tool or gripper used to perform specific tasks. When the joints of the seven-axis robotic arm can move freely, a singular configuration may exist if the arm angle or the joint angle of the third joint is greater than or equal to a preset threshold.

[0063] The joint angle of the third robotic arm joint is used as the target joint angle to constrain the free movement of the robotic arm joint, so as to avoid the redundant robotic arm having a singular configuration in the target motion trajectory.

[0064] Step 206: Based on the relationship between the target joint angle and the preset threshold, control the angular velocity vector corresponding to the specific space of the relationship matrix to obtain the target angular velocity vector. Control the movement of each robotic arm joint according to the target angular velocity vector to realize the movement of the robotic arm end effector on the target motion trajectory. The specific space is used to characterize the specific space where each robotic arm joint moves freely and the motion velocity vector corresponding to the robotic arm end is zero.

[0065] Among them, the specific space can be the matrix null space, which refers to the existence of angular velocities and attitudes of specific robotic arm joints. Each robotic arm joint can move freely, but the linear velocity of the robotic arm end effector is zero. The matrix null space is characterized by the robotic arm end effector being unable to perform linear motion.

[0066] For example, such as Figure 4 As shown, for cases where there may be singular configurations in redundant robotic arms, the inverse solution of the relation matrix can be determined first by using the plus sign inverse in the singular generalized inverse, i.e., the pseudo-inverse matrix, to determine the angular velocity vector of each robotic arm joint.

[0067] Determine the plus inverse J in the singular generalized inverse corresponding to relation matrix J. + Based on the velocity vector of the robotic arm's end effector in three-dimensional space The inverse of the plus sign J of the relation matrix + Determine the angular velocity vectors of each robotic arm joint along the target motion trajectory. Specifically, the angular velocity vectors of each robotic arm joint... It is expressed as follows:

[0068]

[0069] in, It is the velocity vector of the robotic arm's end effector in three-dimensional space.

[0070] However, in the process of calculating the inverse solution using the plus inverse in singular generalized inverse, there exists a null space of the matrix. In a seven-axis robotic arm, the free motion of the robotic arm joints in the null space corresponds to the change in the robotic arm angle, and also to the change in the robotic arm configuration. The angular velocity vector is constrained by the relationship between the target joint angle and a preset threshold, thereby constraining the free motion of each robotic arm joint in the null space of the matrix.

[0071] Specifically, when the target joint angle is less than or equal to a preset threshold, the robotic arm does not have a singular configuration, and each joint can move according to the angular velocity vector. When the target joint angle is greater than the preset threshold, the robotic arm has a singular configuration. The projection vector is determined based on the target joint angle, and its projection value in a specific space is also determined. The angular velocity vector is then controlled based on the projection value to obtain the target angular velocity vector. Each robotic arm joint is based on the target angular velocity vector The robot arm moves along the target trajectory to ensure that the end effector moves along the target trajectory and to avoid the occurrence of singular structures in the redundant robot arm during free movement in the matrix null space.

[0072] In the aforementioned trajectory planning method for the robotic arm, the target motion trajectory of the robotic arm's end effector is obtained, and a relation matrix is ​​determined. This relation matrix characterizes the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vectors of the end effector in three-dimensional space. A target robotic arm joint is identified among each joint, and its corresponding target joint angle is determined. Based on the relationship between the target joint angle and a preset threshold, the angular velocity vector corresponding to a specific space in the relation matrix is ​​controlled to obtain the target angular velocity vector. The movement of each robotic arm joint is controlled according to this target angular velocity vector, enabling the end effector to move along the target trajectory. The specific space characterizes a space where the angular velocity vectors of each robotic arm joint can change arbitrarily, but the corresponding motion velocity vector of the end effector is zero. This method can restrict the joint angles and postures of the robotic arm joints in the null space of the relation matrix, constraining the joints to move freely in the null space. This keeps the robotic arm in a safe area near singular structures, preventing singular configurations during the movement of the robotic arm along the target trajectory. The control method is stable and improves the maneuverability and safety of the robotic arm.

[0073] In one embodiment, the angular velocity vector corresponding to a specific space of the relationship matrix is ​​controlled according to the relationship between the target joint angle and a preset threshold to obtain the target angular velocity vector. This includes: when the absolute value of the target joint angle is less than or equal to the preset threshold, the angular velocity vector is used as the target angular velocity vector, and each robotic arm joint is controlled to move with the angular velocity vector; when the absolute value of the target joint angle is greater than the preset threshold, a projection value is determined based on the target joint angle, and the angular velocity vector is iteratively updated according to the projection value. When the target joint angle decreases to the preset threshold and meets the preset iteration stop condition, the target angular velocity vector is obtained.

[0074] The projection value refers to the projection value obtained by projecting the gradient vector corresponding to the target joint angle onto a specific space of the relation matrix. The gradient vector is used to describe the trend of the position, attitude or other indicators of the robotic arm end effector as the target joint angle changes.

[0075] For example, when the absolute value of the target joint angle is less than or equal to the preset threshold, there is no singular configuration in the robotic arm. The angular velocity vector of each robotic arm joint on the target motion trajectory can be obtained from the inverse solution of the motion velocity vector and relation matrix of the robotic arm end effector in three-dimensional space.

[0076] Specifically, the inverse operation is performed on the relation matrix of the redundant robotic arm to obtain the inverse solution of the relation matrix. The inverse solution of the relation matrix can characterize the angular velocity function V of each robotic arm joint in the joint space. qThe inverse solution of the redundant robotic arm includes particular solutions and homogeneous solutions. Partial solutions do not introduce self-motion in the end effector of the robotic arm and are the preferred option for optimizing the inverse solution results. In calculating the inverse solution of the relation matrix, an inverse transformation of the relation matrix is ​​required. However, the relation matrix corresponding to the redundant robotic arm is a rectangular matrix, and regardless of whether the matrix is ​​full rank, it does not have a conventional inverse matrix. An inverse transformation can be performed using the plus sign inverse of the singular generalized inverse. The formula for calculating the plus sign inverse of the singular generalized inverse is as follows:

[0077] J + =J T (JJ T ) -1

[0078] Where J is the relation matrix, J T It is the transpose of relation matrix J, (JJ T ) -1 It is matrix JJ T The inverse operation of J + It is the plus inverse of the singular generalized inverse and also the pseudo-inverse of the relation matrix J. The plus inverse of the relation matrix can also be calculated by performing singular value decomposition on the relation matrix. Specifically, the expression for singular value decomposition is as follows:

[0079] J=U∑V T

[0080] In this matrix, U is an orthogonal matrix, and the column vectors of U are the left singular vectors of the relation matrix J. Specifically, the column vectors of U form an orthogonal basis of the column vectors of the relation matrix J in the column space, representing the variation pattern of the relation matrix J in the column space. V is an orthogonal matrix, and the column vectors of V are the right singular vectors of the relation matrix J. Specifically, the column vectors of V form an orthogonal basis of the row vectors of the relation matrix J in the row space, representing the variation pattern of the relation matrix J in the row space. ∑ is a diagonal matrix, and the diagonal elements of ∑ are singular values. The singular values ​​are scaling factors of the singular vectors of the relation matrix J in different directions. Specifically, the singular values ​​correspond to the mapping relationship between the orthogonal basis represented by the column vectors of matrix V and matrix U.

[0081] Determine the inverse J of the relation matrix based on the singular value decomposition results. + The inverse of the Jacobian matrix J + The expression is as follows:

[0082] J + =V∑ + U T Where, ∑ + It is the pseudo-inverse of matrix ∑. Specifically, matrix ∑ +The pseudo-inverse of the diagonal matrix Σ constructed from singular values ​​is obtained by taking the reciprocal of the matrix for non-zero singular values, and by taking the zero singular value.

[0083] To constrain the free movement of the robotic arm joints in the null space of the matrix, when the absolute value of the target joint angle q is greater than a preset threshold c, an optimization function H(q) related to the target joint angle is determined based on the target joint angle q. This optimization function characterizes the cost function between the target joint angle and the preset threshold. Minimizing this cost function reduces the target joint angle. The optimization function is expressed as follows:

[0084]

[0085] Where c is a constant, and c is greater than 0.

[0086] The gradient vector of the optimization function at the target joint angle q is calculated. The rate of change of the optimization function at the target joint angle q can be determined, and the gradient vector is represented as follows:

[0087]

[0088] In the relation matrix of the robotic arm, the projection relationship of the matrix null space is represented as follows:

[0089] P=(IJ + J)

[0090] Where J is the relation matrix of the robotic arm, J + I is the pseudo-inverse of the relation matrix J, and I is the identity matrix. P is the projection relation, which is also the transformation matrix, used to project vectors onto the null space.

[0091] Based on the projection relationship P, the gradient vector related to the target joint angle q is obtained. Projecting onto the null space of the relation matrix yields the projection value. Based on this projection value, the robot arm's motion in the null space is controlled to move in the direction where the absolute value of the target joint angle q decreases. The absolute value of the robot arm angle is proportional to the absolute value of the target joint angle q; therefore, the absolute value of the robot arm angle will decrease accordingly, thus constraining the angular velocity vector of the robot arm joint in the null space. This is achieved based on the projection relation P and the gradient vector. By constraining the angular velocity vector, the target angular velocity vector of each robotic arm joint in joint space is obtained. The relational expression is as follows:

[0092]

[0093] in, It is the target angular velocity vector, J+ K is the pseudo-inverse of relation matrix J, and K is the optimization coefficient. If the optimization function H(q) needs to be increased, then K > 0; otherwise, K < 0.

[0094] In this embodiment, the angular velocity vector is constrained based on the projection value, which constrains the redundant robotic arm to self-move in zero space in the target motion trajectory. This protects the robotic arm from significant changes in its pose during movement, improves the stability and safety of the robotic arm, and enables it to respond quickly and complete operations more stably, thereby effectively improving the flexibility and robustness of the robotic arm.

[0095] In one embodiment, determining the relation matrix includes: determining the spatial coordinate vector of the robotic arm end effector in three-dimensional space based on the target motion trajectory; determining the joint space coordinate vector of each robotic arm joint in joint space based on the spatial coordinate vector; and performing mathematical operations on the joint space coordinate vector based on the spatial coordinate vector to obtain the relation matrix.

[0096] For example, the mapping relationship between three-dimensional space and joint space is obtained according to the robotic arm kinematics formula, where the mapping relationship is expressed as follows:

[0097]

[0098] in, It is a three-dimensional spatial coordinate vector. is the joint space coordinate vector.

[0099] According to the physical kinematics formula, the velocity vector can be obtained by differentiating the spatial coordinate vector. By differentiating the joint space coordinate vector from the three-dimensional spatial coordinate vector, the relationship matrix between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vector of the robotic arm end effector in three-dimensional space can be obtained.

[0100] In this embodiment, a relationship matrix is ​​determined based on three-dimensional spatial coordinates and joint spatial coordinates. The joint angular velocity can be accurately calculated based on the relationship matrix, thereby achieving precise control of the robot arm's motion and posture, and improving the stability and accuracy of the robot arm control during trajectory planning.

[0101] In one embodiment, before controlling the angular velocity vector corresponding to a specific space of the relation matrix based on the relationship between the target joint angle and a preset threshold, the method includes: obtaining the minimum eigenvalue in the relation matrix that is related to the singular configuration of the robotic arm; if the minimum eigenvalue is less than a preset eigenvalue, obtaining a preset compensation coefficient, adjusting the solution of the relation matrix according to the preset compensation coefficient, and obtaining the angular velocity vector.

[0102] Singular configurations refer to robotic arm shapes where the arm loses flexibility in specific motion directions, exhibiting anomalous increases in joint velocity or acceleration. The minimum eigenvalue can be the minimum singular value of the Jacobian matrix. The magnitude of the singular value reflects the controllability of the robotic arm's motion in different directions. The direction corresponding to a singular vector with a singular value of zero is the singular structural direction of the robotic arm, also known as the degenerate direction of the motion space. In the singular structural direction, the joint angular velocity vectors of the robotic arm joints cannot provide independent velocity changes for the end effector.

[0103] For example, given a robotic arm configuration in the joint space, the smaller the singular value, the larger the joint angular velocity vector, and the more difficult it is for the robotic arm to move along the target trajectory. When the robot approaches a singular configuration, the joint angular velocity vector of the robotic arm joints tends to infinity, posing a risk of loss of control. A preset compensation coefficient λ can be introduced to optimize the joint angular velocity vector of the robotic arm joints and the tracking accuracy of the robotic arm's end effector. Specifically, when the minimum eigenvalue is less than the preset eigenvalue, an initial compensation coefficient is obtained. The initial compensation coefficient can be the maximum compensation coefficient. The preset compensation coefficient is determined based on the initial compensation coefficient, the minimum eigenvalue, and the preset eigenvalue. When the minimum eigenvalue is greater than or equal to the preset eigenvalue, no adjustment to the joint angular velocity vector is needed using the preset compensation coefficient, and the preset compensation coefficient is zero. The joint angular velocity vector of the robotic arm joints is then adjusted according to the preset compensation coefficient to obtain the joint angular velocity vector. It is expressed as follows:

[0104]

[0105] J * =J T (JJ T +λ 2 l) -1

[0106]

[0107] Where λ0 is the maximum compensation coefficient, λ is the preset compensation coefficient, σ0 is the preset eigenvalue, and σ is the minimum eigenvalue.

[0108] In this embodiment, the flexibility of the robotic arm can be improved by adjusting the preset compensation coefficient. A higher preset compensation coefficient can increase the response time of the robotic arm and improve stability, while a lower preset compensation coefficient can increase the sensitivity of the robotic arm. During the movement of the robotic arm, if the joint angular velocity changes significantly or the robotic arm needs to stop quickly, adjusting the preset compensation coefficient can increase stability, make the movement transition of the robotic arm smoother, reduce vibration and impact, and improve the quality and stability of motion control.

[0109] In one embodiment, obtaining the target motion trajectory of the robotic arm end effector includes: obtaining the pose data of the robotic arm end effector in a preset path planning task; interpolating the pose data; and fitting the interpolated pose data to obtain the target motion trajectory.

[0110] Pose data refers to the position and attitude information of a robotic arm. Position information characterizes the position of the robotic arm's end effector in three-dimensional space, such as the coordinates of the end effector in a three-dimensional coordinate system. Attitude information includes orientation and rotation parameters, used to describe the orientation or attitude of the end effector, and can be represented by Euler angles corresponding to pitch, yaw, and roll angles. Interpolation refers to the process of inferring or estimating between pose data using mathematical or statistical methods to fill in missing data. Fitting refers to the process of minimizing the error between the function and the interpolated pose data by selecting an appropriate function model and adjusting the function parameters based on the interpolated pose data.

[0111] For example, a set of three-dimensional spatial pose data of the robotic arm's end effector is obtained during the robotic arm path planning. This set of three-dimensional spatial pose data is then interpolated using a cubic B-spline interpolation method. Specifically, cubic B-spline interpolation uses B-splines to interpolate the pose data. A B-spline is a set of basis functions, including multiple locally supported and continuous functions, which can be used to approximate and interpolate data. The interpolated pose data is then fitted using a three-segment velocity planning method. Specifically, by controlling the magnitudes of the initial velocity, final velocity, acceleration, and deceleration, an S-shaped curve is obtained showing the change in the robotic arm's velocity over time as either "acceleration-uniform speed-deceleration" or "deceleration-uniform speed-acceleration," thus obtaining the target trajectory of the robotic arm's end effector in three-dimensional space.

[0112] In this embodiment, a smooth and fluid target motion trajectory can be generated by using cubic B-spline interpolation and the fitting method corresponding to velocity planning. This avoids instability such as abrupt changes, vibrations, or impacts during the robotic arm's movement and improves the accuracy of the robotic arm in tasks such as trajectory tracking and path planning. Based on the velocity planning method, speed and acceleration can also be smoothly adjusted within a preset time period to prevent the robotic arm from moving too fast or too slow, thus contributing to precise and reliable motion control of the robotic arm.

[0113] In one embodiment, the method further includes: after the end effector of the robotic arm completes the target motion trajectory, if the angular velocity vector of each robotic arm joint is non-zero, controlling the angular velocity vector according to the projection value and the exponential function to reduce the angular velocity vector to zero.

[0114] For example, after the end effector of the robotic arm finishes its motion according to the target trajectory, if the absolute value of the target joint angle q is greater than or equal to a preset threshold c, the motion velocity of the end effector is zero, but the joint angular velocity vector of the robotic arm joint is not zero. The projection value corresponding to the gradient vector can be gradually reduced to zero to control the joint angular velocity vector of the robotic arm joint to gradually decrease to zero, thus completing the stopping action of the robotic arm. Specifically, after the end effector of the robotic arm finishes its motion according to the target trajectory, the projection value can be obtained by decelerating using an S-shaped velocity curve. Correspondence K with time t H (t), the corresponding relationship is as follows:

[0115] K H (t)=-K H (0) / (1+e -at )

[0116] Where a is a constant, e -at It is an exponential function related to time t and a constant a.

[0117] In this embodiment, by controlling the projection value to gradually decrease to 0 based on the time-related exponential function, the joint angular velocity vector of the robotic arm joint can be gradually reduced to zero without affecting the stability of the robotic arm end effector, thereby improving the stability of the robotic arm when it stops moving after completing the target motion trajectory.

[0118] In an exemplary embodiment, the trajectory planning method for the robotic arm includes steps 502 to 514. Wherein:

[0119] Step 502: Obtain the pose data of the robotic arm end effector in the preset path planning task; perform interpolation processing on the pose data, and perform fitting processing on the interpolated pose data to obtain the target motion trajectory.

[0120] Step 504: Determine the spatial coordinate vector of the robotic arm end effector in three-dimensional space based on the target motion trajectory; determine the joint space coordinate vector of each robotic arm joint in joint space based on the spatial coordinate vector; perform mathematical operations on the joint space coordinate vector based on the spatial coordinate vector to obtain a relation matrix, wherein the relation matrix is ​​used to characterize the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vector of the robotic arm end effector in three-dimensional space.

[0121] Step 506: Determine the target robotic arm joint among all robotic arm joints, and determine the target joint angle corresponding to the target robotic arm joint.

[0122] Step 508: Obtain the minimum eigenvalue in the relation matrix that is related to the singular configuration of the robotic arm; if the minimum eigenvalue is less than the preset eigenvalue, obtain the preset compensation coefficient, adjust the solution of the relation matrix according to the preset compensation coefficient, and obtain the angular velocity vector.

[0123] Step 510: When the absolute value of the target joint angle is less than or equal to a preset threshold, the angular velocity vector is used as the target angular velocity vector, and each robotic arm joint is controlled to move with the angular velocity vector; when the absolute value of the target joint angle is greater than the preset threshold, the projection value is determined based on the target joint angle, and the angular velocity vector is iteratively updated according to the projection value. When the target joint angle decreases to the preset threshold, the preset iteration stop condition is met, and the target angular velocity vector is obtained.

[0124] Step 512: Control the movement of each robotic arm joint according to the target angular velocity vector so as to realize the movement of the robotic arm end effector on the target motion trajectory. Here, the specific space is used to characterize the specific space where the angular velocity vector of each robotic arm joint changes arbitrarily and the motion velocity vector corresponding to the robotic arm end is zero.

[0125] Step 514: After the end effector of the robotic arm completes the target motion trajectory, if the angular velocity vector of each robotic arm joint is non-zero, the angular velocity vector is controlled according to the projection value and the exponential function to reduce the angular velocity vector to zero.

[0126] In this embodiment, the target motion trajectory of the robotic arm end effector is obtained, and a relation matrix is ​​determined. This relation matrix characterizes the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vectors of the robotic arm end effector in three-dimensional space. A target robotic arm joint is identified among each joint, and its corresponding target joint angle is determined. Based on the relationship between the target joint angle and a preset threshold, the angular velocity vector corresponding to a specific space in the relation matrix is ​​controlled to obtain the target angular velocity vector. The movement of each robotic arm joint is controlled according to the target angular velocity vector to achieve motion of the robotic arm end effector on the target motion trajectory. The specific space characterizes a space where the angular velocity vectors of each robotic arm joint can change arbitrarily, and the motion velocity vector corresponding to the robotic arm end effector is zero. This method can restrict the joint angles and postures of the robotic arm joints in the null space of the relation matrix, thereby constraining the free movement of the robotic arm joints in the null space. This keeps the robotic arm in a safe area near singular structures, preventing singular configurations during the movement of the robotic arm on the target motion trajectory. The control method is stable and can improve the maneuverability and safety of the robotic arm.

[0127] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated 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 steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0128] Based on the same inventive concept, this application also provides a trajectory planning device for a robotic arm to implement the trajectory planning method of the robotic arm described above. The solution provided by this device is similar to the solution described in the above method. Therefore, the specific limitations of one or more embodiments of the trajectory planning device for a robotic arm provided below can be found in the limitations of the trajectory planning method for the robotic arm described above, and will not be repeated here.

[0129] In one exemplary embodiment, such as Figure 6 As shown, a trajectory planning device 600 for a robotic arm is provided, including: a coordinate module 602, a joint angle module 604, and a motion control module 606, wherein:

[0130] The coordinate module 602 is used to acquire the target motion trajectory of the robotic arm end effector and determine the relationship matrix, wherein the relationship matrix is ​​used to characterize the correspondence between the angular velocity vectors of multiple robotic arm joints in the joint space and the motion velocity vectors of the robotic arm end effector in the three-dimensional space.

[0131] The joint angle module 604 is used to determine the target robotic arm joint among the various robotic arm joints and to determine the target joint angle corresponding to the target robotic arm joint.

[0132] The motion control module 606 is used to control the angular velocity vector corresponding to a specific space of the relationship matrix according to the relationship between the target joint angle and the preset threshold, to obtain the target angular velocity vector, and to control the movement of each robotic arm joint according to the target angular velocity vector, so as to realize the movement of the robotic arm end effector on the target motion trajectory. The specific space is used to characterize the specific space where the angular velocity vector of each robotic arm joint changes arbitrarily and the motion velocity vector corresponding to the robotic arm end is zero.

[0133] In one embodiment, the motion control module 606 is further configured to, when the absolute value of the target joint angle is less than or equal to a preset threshold, use the angular velocity vector as the target angular velocity vector and control each robotic arm joint to move with the angular velocity vector; when the absolute value of the target joint angle is greater than the preset threshold, determine the projection value based on the target joint angle, iteratively update the angular velocity vector according to the projection value, and obtain the target angular velocity vector when the target joint angle decreases to the preset threshold and meets the preset iteration stop condition.

[0134] In one embodiment, the coordinate module 602 is further configured to determine the spatial coordinate vector of the robotic arm end effector in three-dimensional space based on the target motion trajectory; determine the joint space coordinate vector of each robotic arm joint in joint space based on the spatial coordinate vector; and perform mathematical operations on the joint space coordinate vector based on the spatial coordinate vector to obtain a relation matrix.

[0135] In one embodiment, the motion control module 606 is further configured to obtain the minimum eigenvalue in the relation matrix that is related to the singular configuration of the robotic arm; if the minimum eigenvalue is less than a preset eigenvalue, obtain a preset compensation coefficient, adjust the solution of the relation matrix according to the preset compensation coefficient, and obtain the angular velocity vector.

[0136] In one embodiment, the coordinate module 602 is further used to acquire the pose data of the robotic arm end effector in a preset path planning task; perform interpolation processing on the pose data, and perform fitting processing on the interpolated pose data to obtain the target motion trajectory.

[0137] In one embodiment, the device is further configured to, after the end effector of the robotic arm completes the target motion trajectory, if the angular velocity vector of each robotic arm joint is non-zero, control the angular velocity vector according to the projection value and the exponential function to reduce the angular velocity vector to zero.

[0138] The various modules in the trajectory planning device of the aforementioned robotic arm can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.

[0139] In one exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 7As shown, the computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores trajectory planning data for the robotic arm. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communication with external terminals via a network connection. When the computer program is executed by the processor, it implements a trajectory planning method for a robotic arm.

[0140] In one exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 8 As shown, the computer device includes a processor, memory, input / output interface, communication interface, display unit, and input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interface. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interface is used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements a trajectory planning method for a robotic arm. The display unit is used to form a visually visible image and can be a display screen, projection device, or virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.

[0141] Those skilled in the art will understand that the aforementioned structure is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than shown in the figure, or combine certain components, or have different component arrangements.

[0142] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the above-described method embodiments.

[0143] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the above-described method embodiments.

[0144] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the above-described method embodiments.

[0145] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.

[0146] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0147] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0148] The above embodiments are merely illustrative of several implementation methods of this application, and their descriptions are relatively specific and detailed. However, they should not be construed as limiting the scope of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A trajectory planning method for a robotic arm, characterized in that, The method includes: The target motion trajectory of the robotic arm end effector is obtained, and a relationship matrix is ​​determined, wherein the relationship matrix is ​​used to characterize the correspondence between the angular velocity vectors of multiple robotic arm joints in joint space and the motion velocity vector of the robotic arm end effector in three-dimensional space; Among the various robotic arm joints, a target robotic arm joint is determined, and the target joint angle corresponding to the target robotic arm joint is determined. When the absolute value of the target joint angle is less than or equal to a preset threshold, the angular velocity vector corresponding to the specific space of the relation matrix is ​​taken as the target angular velocity vector; when the absolute value of the target joint angle is greater than the preset threshold, a projection value is determined based on the target joint angle, and the angular velocity vector is iteratively updated according to the projection value. When the target joint angle decreases to the preset threshold, a preset iteration stop condition is met, and the target angular velocity vector is obtained. The movement of each of the robotic arm joints is controlled according to the target angular velocity vector to realize the movement of the robotic arm end effector on the target motion trajectory. The specific space is used to characterize the specific space where the angular velocity vector of each of the robotic arm joints changes arbitrarily and the motion velocity vector corresponding to the end effector of the robotic arm is zero.

2. The method according to claim 1, characterized in that, Determining the projection value based on the target joint angle includes: Based on the target joint angle, a projection vector is determined, and the projection value of the projection vector in the specific space is determined.

3. The method according to claim 1, characterized in that, The determination of the relation matrix includes: The spatial coordinate vector of the robotic arm end effector in the three-dimensional space is determined based on the target motion trajectory. The joint space coordinate vector of each robotic arm joint in the joint space is determined based on the spatial coordinate vector. The relationship matrix is ​​obtained by performing mathematical operations on the joint spatial coordinate vector based on the spatial coordinate vector.

4. The method according to claim 1, characterized in that, Before controlling the angular velocity vector corresponding to a specific space of the relationship matrix based on the relationship between the target joint angle and a preset threshold, the following steps are included: Obtain the smallest eigenvalue in the relation matrix that is related to the singular configuration of the robotic arm; If the minimum eigenvalue is less than a preset eigenvalue, a preset compensation coefficient is obtained, and the solution of the relation matrix is ​​adjusted according to the preset compensation coefficient to obtain the angular velocity vector.

5. The method according to claim 1, characterized in that, The acquisition of the target motion trajectory of the robotic arm end effector includes: Acquire the pose data of the robotic arm end effector in the preset path planning task; The pose data is interpolated, and the interpolated pose data is fitted to obtain the target motion trajectory.

6. The method according to claim 2, characterized in that, The method further includes: After the end effector of the robotic arm completes the target motion trajectory, if the angular velocity vector of each robotic arm joint is non-zero, the angular velocity vector is controlled according to the projection value and the exponential function to reduce the angular velocity vector to zero.

7. A trajectory planning device for a robotic arm, characterized in that, The device includes: The coordinate module is used to acquire the target motion trajectory of the robotic arm end effector and determine the relationship matrix, wherein the relationship matrix is ​​used to characterize the correspondence between the angular velocity vectors of multiple robotic arm joints in the joint space and the motion velocity vector of the robotic arm end effector in three-dimensional space. The joint angle module is used to determine the target robotic arm joint among the robotic arm joints and to determine the target joint angle corresponding to the target robotic arm joint. The motion control module is used to: when the absolute value of the target joint angle is less than or equal to a preset threshold, use the angular velocity vector corresponding to the specific space of the relationship matrix as the target angular velocity vector; when the absolute value of the target joint angle is greater than the preset threshold, determine a projection value based on the target joint angle, iteratively update the angular velocity vector according to the projection value, and obtain the target angular velocity vector when the target joint angle decreases to the preset threshold and meets a preset iteration stop condition; and control the movement of each of the robotic arm joints according to the target angular velocity vector to realize the movement of the robotic arm end effector on the target motion trajectory. The specific space is used to characterize a specific space where the angular velocity vector of each of the robotic arm joints changes arbitrarily and the motion velocity vector corresponding to the robotic arm end effector is zero.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Evaluation method and device for dexterity degree of mechanical arm and storage medium

    CN115958611A

  • Robot Joint Control

    JP2022070808A