Method and device for controlling a robot arm, electronic device, storage medium and computer program product
Patent Information
- Application Number
- CN202611433204.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-09-15
- Publication Date
- 2026-10-20
AI Technical Summary
但是,臂角解析法要求机械臂结构近似满足肩部三轴、肘部一轴、腕部三轴的(Spherical-Roll-Spherical,SRS)构型,导致该方法的适配范围有限,难以推广应用至轴线布置不同(机械臂各个“关节”的旋转轴(或移动轴)在空间中的朝向和相对位置关系不同)、关节限位不同或局部非标准 SRS 构型的七轴机械臂
在本公开中,通过将七轴机械臂遥操作中的肘部拟人构型控制转化为目标规划任务中的关节速度虚拟任务,可以避免传统臂角解析法对特定 SRS 构型的依赖,进而可以提高算法在不同七轴机械臂和类人上肢结构上的可部署性。例如,本公开提供的机械臂的控制方法可以被直接推广至轴线布置不同、关节限位不同或局部非标准 SRS 构型的七轴机械臂,适配范围更大、通用性更强。
Smart Images

Figure FT_1 
Figure FT_2 
Figure FT_3
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of robotics, and more specifically, to control methods, devices, electronic devices, storage media, and computer program products for robotic arms. Background Technology
[0002] In upper-body teleoperation or data acquisition scenarios, the operator typically only provides the end-effector pose or hand trajectory, requiring the robotic arm to solve for joint velocities or positions in real time. For a seven-axis robotic arm, the number of joint degrees of freedom is greater than the Cartesian pose degrees of freedom at the end-effector, resulting in an infinite number of joint solutions for the same end-effector pose. In this case, if only the end-effector position and orientation are tracked, the robotic arm may exhibit unpredictable movements in zero space. For example, this could manifest as the elbow gradually tucking inward, the upper arm and forearm configuration not conforming to human ergonomics, or interference between the arms or forearms and the torso. This would affect the smoothness of teleoperation, the quality of data acquisition, and the reusability of humanoid robot movements.
[0003] To address the aforementioned issues, the arm angle analytical method has been proposed. This method typically uniquely defines the seven-axis inverse kinematics by defining the angles of the shoulder-elbow-wrist plane relative to a reference plane. However, this method requires the robotic arm structure to approximately satisfy a spherical-roll-spherical (SRS) configuration with three axes at the shoulder, one axis at the elbow, and three axes at the wrist. This limits the method's applicability and makes it difficult to extend to seven-axis robotic arms with different axis arrangements (different orientations and relative positions of the rotation axes (or translation axes) of the various "joints" in space), different joint constraints, or locally non-standard SRS configurations. Summary of the Invention
[0004] This disclosure provides a control method, apparatus, electronic device, storage medium, and computer program product for a robotic arm, to at least solve the problem in the aforementioned related technologies that the arm angle analytical method requires the robotic arm structure to approximately satisfy the SRS configuration, resulting in a limited range of applicability of the method.
[0005] According to a first aspect of the present disclosure, a control method for a robotic arm is provided. The robotic arm includes a plurality of joints connected in sequence. The control method includes: at the beginning of a current control cycle, acquiring a desired end-effector pose of the robotic arm, motion state information of each of the plurality of joints, and a historical joint motion velocity vector, wherein the motion state information includes motion velocity and rotation angle, and the historical joint motion velocity vector includes the motion velocity of each of the plurality of joints calculated at the beginning of the previous control cycle; based on the desired end-effector pose, the motion state information of each of the plurality of joints, and the historical joint motion velocity vector, constructing a target planning task that uses a commanded joint motion velocity vector as a planning variable to characterize the joint motion control task of the robotic arm, wherein the commanded joint motion velocity vector includes the motion velocity of each of the plurality of joints in the current control cycle; determining the commanded joint motion velocity vector by executing the target planning task; and controlling the plurality of joints of the robotic arm to move based on the commanded joint motion velocity vector.
[0006] According to an exemplary embodiment of this disclosure, the method further includes: constructing preset constraints for the command joint motion velocity vector; the step of controlling the plurality of joints of the robotic arm to move based on the command joint motion velocity vector includes: controlling the plurality of joints of the robotic arm to move based on the command joint motion velocity vector that satisfies the preset constraints when the command joint motion velocity vector satisfies the preset constraints.
[0007] According to an exemplary embodiment of the present disclosure, the joint motion control task includes at least one of the following: a tracking task for the end-effector pose of the robotic arm, an elbow control task based on the motion trend of a target joint among the plurality of joints, a smoothing task for the joint motion speed generated by the elbow control of the robotic arm, and a task to prevent abrupt changes in joint motion speed; wherein the target planning task is based on a singular configuration constructed for each of the at least one of the above.
[0008] According to an exemplary embodiment of this disclosure, the first monomial for the end-effector pose tracking task of the robotic arm is constructed as follows: a Jacobian matrix is calculated based on the motion state information of each of the plurality of joints; the derivative is taken with respect to the desired end-effector pose to obtain the desired end-effector velocity; a first product of the Jacobian matrix and the variable to be planned is calculated; a first difference is calculated between the first product and the desired end-effector velocity; and an adjustable end-effector task weight matrix is used. The first monomial is constructed using the first difference.
[0009] According to an exemplary embodiment of this disclosure, the second monomial of the elbow control task based on the motion trend of the target joint among the plurality of joints is constructed as follows: the degree to which the elbow plane of the robotic arm approaches a preset abduction direction is calculated based on the lateral reference normal vector of the shoulder coordinate system of the robotic arm, the shoulder reference point of the robotic arm, the elbow center point of the robotic arm, and the wrist reference point of the robotic arm; and the degree to which the elbow plane of the robotic arm approaches the preset abduction direction is calculated to obtain a virtual elbow task weight matrix. Based on the rotation angle of the target joint contained in the motion state information, calculate the joint motion velocity reference vector. ; Calculate the variable to be planned and the reference vector of joint motion velocity. The second difference between them; calculate the virtual elbow task weight matrix. The second product of the second difference; based on the second product, construct the second monomial.
[0010] According to an exemplary embodiment of this disclosure, the fourth monomial of the task of preventing abrupt changes in joint motion velocity is constructed by: calculating a Jacobian matrix based on the motion state information of each of the plurality of joints; and calculating a joint velocity regularization weight matrix based on the Jacobian matrix. ; Calculate the joint velocity regularization weight matrix The fourth product between the variable to be planned and the variable; based on the fourth product, construct the fourth monomial.
[0011] According to a second aspect of the present disclosure, a control device for a robotic arm is provided. The robotic arm includes a plurality of joints connected in sequence. The control device includes: an information acquisition module configured to acquire, at the beginning of a current control cycle, a desired end-effector pose of the robotic arm, motion state information of each of the plurality of joints, and a historical joint motion velocity vector, wherein the motion state information includes motion velocity and rotation angle, and the historical joint motion velocity vector includes the motion velocity of each of the plurality of joints calculated at the beginning of the previous control cycle; a planning and construction module configured to construct a target planning task based on the desired end-effector pose, the motion state information of each of the plurality of joints, and the historical joint motion velocity vector, using the commanded joint motion velocity vector as a planning variable and used to characterize the joint motion control task of the robotic arm, wherein the commanded joint motion velocity vector includes the motion velocity of each of the plurality of joints in the current control cycle; a velocity vector determination module configured to determine the commanded joint motion velocity vector by executing the target planning task; and a motion control module configured to control the plurality of joints of the robotic arm to move based on the commanded joint motion velocity vector.
[0012] According to an exemplary embodiment of the present disclosure, the control device further includes: a constraint construction module configured to construct preset constraint conditions for the command joint motion velocity vector; the motion control module is configured to: control the plurality of joints of the robotic arm to move based on the command joint motion velocity vector that satisfies the preset constraint conditions when the command joint motion velocity vector satisfies the preset constraint conditions.
[0013] According to an exemplary embodiment of the present disclosure, the joint motion control task includes at least one of the following: a tracking task for the end-effector pose of the robotic arm, an elbow control task based on the motion trend of a target joint among the plurality of joints, a smoothing task for the joint motion speed generated by the elbow control of the robotic arm, and a task to prevent abrupt changes in joint motion speed; wherein the target planning task is based on a singular configuration constructed for each of the at least one of the above.
[0014] According to an exemplary embodiment of this disclosure, the first monomial for the end-effector pose tracking task of the robotic arm is constructed as follows: a Jacobian matrix is calculated based on the motion state information of each of the plurality of joints; the derivative is taken with respect to the desired end-effector pose to obtain the desired end-effector velocity; a first product of the Jacobian matrix and the variable to be planned is calculated; a first difference is calculated between the first product and the desired end-effector velocity; and an adjustable end-effector task weight matrix is used. The first monomial is constructed using the first difference.
[0015] According to an exemplary embodiment of this disclosure, the second monomial of the elbow control task based on the motion trend of the target joint among the plurality of joints is constructed as follows: the degree to which the elbow plane of the robotic arm approaches a preset abduction direction is calculated based on the lateral reference normal vector of the shoulder coordinate system of the robotic arm, the shoulder reference point of the robotic arm, the elbow center point of the robotic arm, and the wrist reference point of the robotic arm; and the degree to which the elbow plane of the robotic arm approaches the preset abduction direction is calculated to obtain a virtual elbow task weight matrix. Based on the rotation angle of the target joint contained in the motion state information, calculate the joint motion velocity reference vector. ; Calculate the variable to be planned and the reference vector of joint motion velocity. The second difference between them; calculate the virtual elbow task weight matrix. The second product of the second difference; based on the second product, construct the second monomial.
[0016] According to an exemplary embodiment of this disclosure, the fourth monomial of the task of preventing abrupt changes in joint motion velocity is constructed by: calculating a Jacobian matrix based on the motion state information of each of the plurality of joints; and calculating a joint velocity regularization weight matrix based on the Jacobian matrix. ; Calculate the joint velocity regularization weight matrix The fourth product between the variable to be planned and the variable; based on the fourth product, construct the fourth monomial.
[0017] According to a third aspect of the present disclosure, an electronic device is provided, comprising: a processor; and a memory for storing processor-executable instructions; wherein the processor is configured to execute the instructions to implement a control method for a robotic arm according to the present disclosure.
[0018] According to a fourth aspect of the present disclosure, a computer-readable storage medium is provided that, when instructions in the computer-readable storage medium are executed by a processor of an electronic device, enables the electronic device to perform a control method for a robotic arm according to the present disclosure.
[0019] According to a fifth aspect of the present disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements a control method for a robotic arm according to the present disclosure.
[0020] The technical solutions provided by the embodiments of this disclosure have at least the following beneficial effects: In this disclosure, by transforming the elbow anthropomorphic configuration control in the teleoperation of a seven-axis robotic arm into a virtual task of joint velocity in the goal planning task, the dependence of traditional arm angle analytical methods on specific SRS configurations can be avoided, thereby improving the deployability of the algorithm on different seven-axis robotic arms and humanoid upper limb structures. For example, the robotic arm control method provided in this disclosure can be directly extended to seven-axis robotic arms with different axis arrangements, different joint limits, or locally non-standard SRS configurations, resulting in a wider range of adaptability and stronger versatility.
[0021] According to exemplary embodiments of this disclosure, the dominant role of a target joint (e.g., joint 3) in elbow abduction / valgus tendencies can be utilized to form a lightweight elbow guidance strategy based on the desired velocity of the target joint, facilitating real-time teleoperation and data acquisition. Furthermore, by proposing a shoulder-elbow-wrist plane abduction evaluation index, elbow valgus can be quantified as a continuous function, and a potential function can be further constructed to incorporate the optimization objective, thereby achieving a smoother elbow configuration adjustment.
[0022] According to an exemplary embodiment of this disclosure, by setting a third monomial for a smooth task that characterizes the joint motion speed generated by elbow control of the robotic arm, jitter caused by elbow direction adjustment can be reduced, making the acquisition trajectory more stable.
[0023] According to an exemplary embodiment of this disclosure, by constructing a fourth monomial to prevent abrupt changes in joint motion velocity, velocity changes can be penalized when passing through singular configurations so that joint velocity does not abruptly change.
[0024] According to exemplary embodiments of this disclosure, even when kinematic singularities, joint limitations, velocity limits, and real-time teleoperation requirements coexist, the control method for the robotic arm provided by this disclosure can still obtain continuous, stable, and low-time-consuming joint velocity solutions.
[0025] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0026] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure, and are not intended to unduly limit this disclosure.
[0027] Figure 1 This is a flowchart illustrating a control method for a robotic arm according to an exemplary embodiment of the present disclosure; Figure 2 This is a schematic diagram showing a comparison between a good elbow state configuration according to an exemplary embodiment of the present disclosure and a non-anthropomorphic elbow state when the elbow is valgus. Figure 3 This illustrates the elbow position in normal and tucked-in states according to exemplary embodiments of the present disclosure. and A comparative diagram of positional relationships; Figure 4 This is a block diagram illustrating a control device for a robotic arm according to an exemplary embodiment of the present disclosure; Figure 5 This is a block diagram illustrating an electronic device according to exemplary embodiments of the present disclosure. Detailed Implementation
[0028] To enable those skilled in the art to better understand the technical solutions of this disclosure, the technical solutions in the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings.
[0029] It should be noted that the terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this disclosure are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this disclosure described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the following examples do not represent all embodiments consistent with this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this disclosure as detailed in the appended claims.
[0030] It should be noted that the phrase "at least one of several items" in this disclosure refers to three parallel cases: "any one of the several items", "a combination of any number of the several items", and "all of the several items". For example, "including at least one of A and B" includes the following three parallel cases: (1) including A; (2) including B; (3) including A and B. Another example is "performing at least one of step one and step two", which means the following three parallel cases: (1) performing step one; (2) performing step two; (3) performing both step one and step two.
[0031] The joint variables of a seven-axis robotic arm can be denoted as q = [q1, q2, q3, q4, q5, q6, q7]^T, and its end-effector pose can be denoted as x = [p^T, r^T]^T, where p is the end-effector position, r is the end-effector pose parameter, and T represents the matrix transpose. The differential kinematics of the robotic arm can be expressed as: Formula (1): in, Let be the desired end effector velocity of the robotic arm, and J(q) be the Jacobian matrix of the robotic arm. For the joint velocity to be determined, Let be the rotation angle variable of the robotic arm joint. Since a seven-axis robotic arm has 7 joint variables, and the end effector space is usually 6-dimensional, formula (1) generally has a one-dimensional null space. In this case, any solution that satisfies the end effector motion can be superimposed with the null space velocity: Formula (2): in, For the joint velocity to be determined, For the generalized inverse, By targeting the desired pose of the end effector Differentiation yields, It is the identity matrix. Let be the Jacobian matrix of the robotic arm, and z be any null space velocity vector.
[0032] Equation (2) shows that, under the condition that the end-effector trajectory is the same, the robotic arm can still generate joint motion along the zero-space direction. If the zero-space term is not constrained, the elbow may gradually turn into an inward configuration during the task execution, which will affect the smoothness of teleoperation, the quality of data acquisition and the reusability of humanoid robot actions.
[0033] To address the aforementioned issues, common solutions in related technologies include the arm angle analytical method, the pseudo-inverse plus null space task method, and the task priority method based on whole-body control. The arm angle analytical method typically uniquely defines the seven-axis inverse kinematics by defining the angles of the shoulder-elbow-wrist plane relative to a reference plane. However, it requires the robotic arm structure to approximately satisfy the SRS configuration of three axes at the shoulder, one axis at the elbow, and three axes at the wrist, limiting its applicability. Furthermore, the arm angle method suffers from algorithmic singularities in arm angle calculation. This is because the arm angle method is a purely geometric analytical method, relying on specific structural relationships of the robotic arm (e.g., strictly perpendicular joint axis vectors) to solve the inverse kinematics. Once the actual configuration deviates from the design conditions (e.g., singular configuration), the arm angle method fails.
[0034] The pseudo-inverse plus null space task method can guide the elbow by constructing a secondary task, but it requires real-time calculation of the pseudo-inverse and null space projection matrix. This can lead to sudden changes in joint velocity near singularities, which can affect the stability of teleoperation and may also trigger controller speed limiting, collision protection or trajectory interruption.
[0035] While whole-body control-based task prioritization methods can represent elbow tasks, their deployment is complex, requiring dynamic models, task priority parameter tuning, and significant computing power. In other words, whole-body control-based task prioritization methods are technically challenging to implement, demanding high levels of real-time computing resources, model accuracy, and parameter tuning, making them unsuitable for rapid integration into existing robotic arm teleoperation systems.
[0036] Furthermore, while relying solely on joint constraints or collision limitations in related technologies can avoid dangerous postures, they cannot actively maintain the elbow in an optimal configuration that is human-like, extended, and easy to collect data. Moreover, during teleoperation data acquisition, if the elbow null space is unstable, the same hand movement may correspond to multiple random elbow postures, reducing data consistency and negatively impacting subsequent imitation learning, trajectory reproduction, and movement generalization.
[0037] To address the aforementioned problems in related technologies, the robotic arm control method, device, electronic equipment, storage medium, and computer program product provided in this disclosure transform the elbow anthropomorphic configuration control in the teleoperation of a seven-axis robotic arm into a virtual task of joint velocity in the goal planning task. This avoids the dependence of traditional arm angle analytical methods on specific SRS configurations, thereby improving the deployability of the algorithm on different seven-axis robotic arms and humanoid upper limb structures. For example, the robotic arm control method provided in this disclosure can be directly extended to seven-axis robotic arms with different axis arrangements, different joint limits, or locally non-standard SRS configurations, resulting in a wider range of adaptability and stronger versatility.
[0038] Figure 1 This is a flowchart illustrating a control method for a robotic arm according to an exemplary embodiment of the present disclosure. The robotic arm may include a plurality of joints connected in sequence. For example, the robotic arm may include seven joints.
[0039] Reference Figure 1 In step 101, at the start of the current control cycle, the desired end-effector pose of the robotic arm can be obtained. Motion state information and historical joint motion velocity vectors for each of the multiple joints. Motion state information may include, but is not limited to, motion velocity and rotation angle. The historical joint motion velocity vector may contain the motion velocity calculated for each of multiple joints at the start of the previous control cycle.
[0040] For example, the control platform can obtain the desired end-effector pose of the robotic arm from the teleoperation terminal or the host computer. Therefore, the control platform can obtain the results through adjacent cycle difference or velocity mapping. The control platform can also obtain the motion state information of each joint in multiple joints through the robotic arm feedback interface, and then calculate the Jacobian matrix J(q) based on the obtained motion state information. It should be noted that, assuming the robotic arm contains 7 joints, each of the 7 joints has its own calculated motion velocity at the beginning of the previous control cycle. In this case, the 7 motion velocities corresponding to these 7 joints can be used as elements to form a 1x7 historical joint motion velocity vector. Furthermore, considering the zero-space motion nature of the seven-axis robotic arm, and that joint 3 plays a decisive role in the zero-space motion trend of the redundant robotic arm, the third joint of the robotic arm, namely joint 3, can be taken as the target joint.
[0041] According to an exemplary embodiment of this disclosure, the motion state information of each joint may include not only motion speed and rotation angle, but also information such as joint torque and current value on the joint.
[0042] In step 102, the desired pose of the end effector can be determined. Motion state information and historical joint motion velocity vectors for each of the multiple joints. Construct a target planning task that uses the commanded joint motion velocity vector as the variable to be planned and is used to characterize the joint motion control task of the robotic arm. The commanded joint motion velocity vector can include the motion velocity of each joint in multiple joints within the current control cycle.
[0043] For example, it can be based on the desired pose of the end effector. Motion state information and historical joint motion velocity vectors for each of the multiple joints. A quadratic programming approach is then constructed. In this approach, the velocity vector of the commanded joint motion can be used as the variable to be planned, and the desired pose of the end effector can be obtained. Motion state information and historical joint motion velocity vectors for each of the multiple joints. Construct an objective function representing the joint motion control task of the robotic arm with respect to the variables to be planned.
[0044] According to exemplary embodiments of this disclosure, the joint motion control task described above may include at least one of the following: The tasks include: tracking the end-effector pose of a robotic arm; elbow control based on the motion trend of a target joint among multiple joints; smoothing the joint motion velocity generated by elbow control of a robotic arm; and preventing abrupt changes in joint motion velocity. The objective planning tasks (i.e., objective functions) described above can be constructed based on monomials for each of at least one of the tasks, where each monomial can contain the variables to be planned.
[0045] According to an exemplary embodiment of this disclosure, the first monomial for the tracking task of the end effector pose of a robotic arm can be constructed as follows: The Jacobian matrix can be calculated based on the motion state information of each of the aforementioned joints. Then, the desired end-effector pose can be determined. By taking the derivative, the desired terminal velocity can be obtained. Next, we can calculate the Jacobian matrix. With the variables to be planned The first product. Then, the first product and the desired terminal velocity can be calculated. The first difference between them. Next, it can be based on the adjustable end-task weight matrix. Find the first difference and construct the first monomial.
[0046] For example, the first monomial can be calculated using the following formula:
[0047] in, This is an adjustable end-task weight matrix. For Jacobian matrices, The variable to be planned is the joint motion velocity vector to be solved. For the desired terminal velocity, This represents the rotation angle variable of the joint.
[0048] According to an exemplary embodiment of this disclosure, the second monomial of the elbow control task based on the motion trend of the target joint among multiple joints can be constructed as follows: It can be based on the outer reference normal vector of the robot arm's shoulder coordinate system. Shoulder reference point of the robotic arm The center point of the robotic arm's elbow wrist reference point of the robotic arm The degree to which the elbow plane of the robotic arm approaches the preset abduction direction, E(q), is calculated. Then, based on the degree to which the elbow plane of the robotic arm approaches the preset abduction direction, E(q), the virtual elbow task weight matrix can be calculated. Next, based on the rotation angle of the target joint contained in the aforementioned motion state information, Calculate the reference vector for joint motion velocity. Then, the variables to be planned can be calculated. Reference vector of joint motion velocity The second difference between them. Next, the virtual elbow task weight matrix can be calculated. The second product of the second difference. Then, based on the second product, a second monomial can be constructed.
[0049] For example, the second monomial can be calculated using the following formula:
[0050] in, This is the virtual elbow task weight matrix. The variable to be planned is the joint motion velocity vector to be solved. This is the reference vector for joint motion velocity.
[0051]
[0052] (g)=1 / (1+exp(-g))
[0053]
[0054]
[0055] in, To preset the basic weights, , For preset weighting coefficients, Let g be the smooth activation function, and g be the independent variable. Let E(q) be the minimum degree to which the elbow plane of the robotic arm approaches the preset abduction direction, and let T represent the matrix transpose operation. Let u be the unit vector from which the cross product of u and v is performed. Let be the unit vector pointing from the shoulder reference point of the robotic arm to the center point of the elbow of the robotic arm. Let be the unit vector pointing from the center point of the robotic arm's elbow to the reference point of the robotic arm's wrist. To preset the trigger threshold, This is the normalized distance from the current joint to the nearest joint's limit among multiple joints. Let be the outer reference normal vector of the shoulder coordinate system of the robotic arm. Used as a shoulder reference point for the robotic arm. The center point of the robotic arm's elbow. This serves as a reference point for the robotic arm's wrist. This represents the rotation angle variable of the joint.
[0056]
[0057]
[0058]
[0059]
[0060] in, To preset the expected coefficient, Let the desired velocity vector for joint movement be . Let be the desired velocity of the target joint, and let sat(·) be the amplitude limiting function. To preset the elbow calibration gain, The preset rotation angle of the target joint corresponding to the anthropomorphic elbow configuration. For the rotation angle of the target joint (e.g., (This can be the rotation angle of joint 3). The upper limit of the elbow guiding speed of the target joint is preset, and T represents the matrix transpose operation.
[0061] It should be noted that one of the innovations of this disclosure is to transform elbow configuration control into an elbow bias task of the target joint (e.g., joint 3), that is, into a desired velocity bias task of joint 3. Therefore, the desired velocity of joint 3 can be defined as: Formula (3): The meanings of each parameter are detailed above and will not be repeated here.
[0062] In addition, other joints besides the target joint (e.g., joint 3) It can be set to 0; or it can be set according to the joint limit center and damping parameters. In other joints... When set to 0, we get: Formula (4): Here, T represents the matrix transpose operation. In the actual optimization process, the weights of the final task... Typically higher than the weight of the virtual elbow task. Prioritize ensuring the hand's telescopic trajectory. Furthermore, when redundant degrees of freedom allow, the optimizer can automatically utilize zero space to push the target joint (e.g., joint 3) in the desired direction, thereby suppressing elbow valgus.
[0063] Figure 2 This is a comparative schematic diagram showing a configuration corresponding to a good elbow state according to an exemplary embodiment of the present disclosure and a non-anthropomorphic elbow state when the elbow is valgus. (Refer to...) Figure 2 You can think of the robotic arm in the picture as the right arm of a humanoid arm. Figure 2 The left side is the configuration corresponding to a good elbow position in an anthropomorphic way; Figure 2 The right side shows a non-anthropomorphic elbow deformity when the elbow is valgus. Figure 2 If the target joint on the right side (e.g., joint 3) is rotated in the direction indicated by the black arrow, the elbow will tend to be pulled upwards to a better position. Furthermore, Figure 2 In Used as a shoulder reference point for the robotic arm. The center point of the robotic arm's elbow. This serves as a reference point for the robotic arm's wrist.
[0064] It should be noted that, in order to enhance the adaptability of the control method for the robotic arm provided in this disclosure, it is also possible to avoid directly fixing the aforementioned... Instead, it can be constructed based on the geometric relationship between the shoulder, elbow, and wrist to form an elbow abduction index. Let the shoulder reference point of the robotic arm be... The center point of the elbow is The wrist or distal end reference point is The outer reference normal vector of the torso or shoulder coordinate system is Then we can define: Formula (5): Formula (6): Formula (7): The meanings of the parameters in formulas (5), (6), and (7) are explained above and will not be repeated here. The larger E(q) is, the closer the elbow plane is to the preset abduction direction; the smaller E(q) is, the more likely the elbow has an inward tendency.
[0065] In addition, an elbow potential function can be constructed: Formula (8): Furthermore, the elbow potential function can be... The gradient is mapped to the joint velocity reference: Formula (9): The meanings of the parameters in formulas (8) and (9) are explained in the previous text and will not be repeated here.
[0066] According to an exemplary embodiment of this disclosure, a preset rotation angle of the target joint corresponding to the anthropomorphic elbow configuration can be calculated. Rotation angle relative to the target joint The third difference between them. Then, based on the third difference, the desired velocity of the target joint can be calculated. When the elbow configuration control method of the robotic arm is in the simplified deployment mode, the desired speed of the target joint can be achieved. The aforementioned joint motion velocity reference vector was determined. When the elbow configuration control mode of the robotic arm is in enhanced mode, the desired speed of the target joint can be determined. The degree to which the elbow plane of the aforementioned robotic arm approaches the preset abduction direction Calculate the aforementioned joint motion velocity reference vector .
[0067] In this disclosure, when the engineering implementation is simplified, only the third joint component can be used to form the joint 3 bias; when computing power allows, the above gradient can be extended to the shoulder and elbow joints to obtain a smoother elbow configuration adjustment. That is, this disclosure can retain the "simple deployment" joint 3 scheme and can be upgraded to a geometric index-driven general elbow control scheme. At this time, in the simple deployment mode, the expected velocity formula (3) of joint 3 can be used as the joint motion velocity reference vector. In enhanced mode, the elbow abduction index E(q) in the shoulder-elbow-wrist plane can be calculated, and then the joint motion velocity reference vector can be calculated based on formulas (8) and (9). .
[0068] Figure 3 This illustrates the elbow position in normal and tucked-in states according to exemplary embodiments of the present disclosure. and A comparative diagram showing the positional relationships. (Refer to...) Figure 3 When the elbow condition returns to normal, and These two vectors tend to be more parallel; if the elbow buckles inward, then and The more these two vectors intersect, the more likely they are to cross. Furthermore, Figure 3 In Used as a shoulder reference point for the robotic arm. The center point of the robotic arm's elbow. This serves as a reference point for the robotic arm's wrist.
[0069] It should be noted that during teleoperation, elbow tasks should not be forcibly intervened with a fixed weight at all times. For example, when the end effector error is large or the operator is telemanipulating the robotic arm to move rapidly, end effector tracking should be prioritized; when the joint approaches its limit or the elbow shows a tendency to buckle inward, the elbow task should be enhanced. Therefore, this disclosure proposes a virtual elbow task dynamic weighting: Formula (10): The meanings of the parameters in formula (10) are explained above and will not be repeated here. Formula (10) can automatically increase elbow offset when there is a significant safety risk or inward tendency, and can also keep it gentle during normal tracking.
[0070] Thus, in this disclosure, the dominant role of the target joint (e.g., joint 3) in the elbow abduction / valgus tendency can be utilized, through A lightweight elbow guidance strategy is developed, which is easier for real-time teleoperation and data acquisition. Furthermore, by proposing a shoulder-elbow-wrist plane abduction evaluation index E(q), the elbow valgus can be quantified as a continuous function, and a potential function can be further constructed. By incorporating optimization goals, a smoother elbow profile adjustment can be achieved.
[0071] According to an exemplary embodiment of this disclosure, the third monomial for a smooth task of joint motion velocity generated by elbow control of a robotic arm can be constructed as follows: It can calculate the variables to be planned Compared with the historical joint motion velocity vector The third difference between them. Then, the adjustable smoothing weight matrix can be calculated. The third product is the product of the third difference and the third product. Next, a third monomial can be constructed based on this third product.
[0072] For example, the third monomial can be calculated using the following formula:
[0073] in, It is the third monomial. It is an adjustable smooth weight matrix. The variable to be planned is the joint motion velocity vector to be solved. This is the historical joint motion velocity vector.
[0074] In this way, by setting a third singularity, the jitter caused by elbow direction adjustment can be reduced, making the acquisition trajectory more stable.
[0075] According to an exemplary embodiment of this disclosure, the fourth monomial for the task of preventing abrupt changes in joint movement velocity can be constructed as follows: The Jacobian matrix can be calculated based on the motion state information of each joint in a multi-joint system. Then, it can be based on the Jacobian matrix. Calculate the joint velocity regularization weight matrix Next, the joint velocity regularization weight matrix can be calculated. With the variables to be planned The fourth product between them. Then, based on the fourth product, a fourth monomial can be constructed.
[0076] For example, the fourth monomial can be calculated using the following formula:
[0077]
[0078] (g)=1 / (1+exp(-g))
[0079] in, It is the fourth monomial. Here is the joint velocity regularization weight matrix. The variable to be planned is the joint motion velocity vector to be solved. To preset the initial matrix, Let g be the smooth activation function, and g be the independent variable. To preset the operability, Jacobi is the actionability metric. Let be the identity matrix whose number of rows and columns is equal to the number of degrees of freedom of the robotic arm's joints. Let T be a Jacobian matrix, and let T denote the matrix transpose operation.
[0080] It should be noted that, in this disclosure, in order to perform singularity avoidance and velocity smoothing, that is, to handle the amplification of joint velocities caused by configurational singularities, the Jacobi operability index can be introduced: Formula (11): Formula (12): The meanings of the parameters in formulas (11) and (12) are explained above and will not be repeated here. When the Jacobi operability index Less than the preset operability At this time, the penalty weight of the speed regularization term can be increased.
[0081] After constructing at least one monomial, a quadratic polynomial can be constructed based on it. That is, in this disclosure, the problem in the telemanipulation process can be described as a quadratic programming problem. For example, it can be expressed as a joint velocity... To optimize the variables, the following quadratic programming problem is constructed: Formula (13): in, To preset the tracking accuracy, and the meaning of each parameter in formula (13) is explained above, it will not be repeated here. As mentioned before, the first term in the quadratic polynomial is: Primarily used to characterize robotic arm end-effector pose tracking tasks; the second term in the quadratic polynomial: Primarily used for elbow control tasks that characterize motion trends based on a target joint (e.g., joint 3); the third term in the quadratic polynomial: Primarily used to smooth the joint motion speed generated by elbow control in robotic arms; the 4th term in the quadratic polynomial: It is mainly used to penalize velocity changes when passing through unusual configurations, so as to prevent abrupt changes in joint velocity.
[0082] It should be noted that, in this disclosure, the aforementioned end-effector task weights can be dynamically updated based on end-effector error, elbow valgus, joint limit distance, and singular indicators. Virtual elbow task weights Smoothing weights Joint velocity regularization weights Furthermore, it can use a relatively mature open-source solver for quadratic programming problems to solve the joint motion velocity vector in real time within each control cycle. .
[0083] Thus, in this disclosure, by transforming the anthropomorphic elbow configuration control in the teleoperation of a seven-axis robotic arm into a virtual task of joint velocity in quadratic programming, explicit arm angle analysis and null space projection can be avoided, simplifying the deployment process. Furthermore, by proposing dynamic weight adjustment based on elbow camber, joint limit distance, and singularity indices, elbow control can adaptively switch between end-effector tracking priority and configuration safety. This means that elbow camber, spontaneous drift, and non-anthropomorphic configuration caused by redundant robotic arms in null space can be suppressed without changing the end-effector trajectory tracking target. Additionally, by unifying joint limit velocity, singularity avoidance, and velocity smoothing within a quadratic programming framework, the continuity of the solution can be maintained even when the robotic arm approaches limits or singularities. Moreover, the robotic arm control method provided in this disclosure is sufficiently lightweight and versatile.
[0084] In step 103, the command joint motion velocity vector can be determined by performing the above-mentioned target planning task, that is, by solving the above-mentioned quadratic programming problem. .
[0085] According to an exemplary embodiment of this disclosure, the value of the variable to be planned when the objective function in the aforementioned quadratic programming is minimized can be used as the final command joint motion velocity vector. .
[0086] In step 104, the calculated joint motion velocity vector can be used as a basis. Control the movement of multiple joints of the robotic arm.
[0087] For example, the calculated command joint motion velocity vector can be used... The integral represents the joint position, i.e., the rotation angle of the joint. The integrated joint positions can be sent to the corresponding joints to cause them to rotate by the corresponding angle, i.e., to rotate to the corresponding position obtained from the integral. Alternatively, the calculated command joint motion velocity vector can be used... It is sent directly to the robotic arm controller that supports speed control to achieve end-effector tracking and elbow configuration guidance.
[0088] It should be noted that in this disclosure, if the command joint motion velocity vector is calculated at time t... Then, the various joints of the robotic arm can be driven in [t, t+]. It moves at this speed within the interval. Furthermore, in (t+ The command joint motion velocity vector can be recalculated at any given moment. To drive the various joints of the robotic arm in [t+ ,t+ Within this range, it moves at this speed. By analogy, this can be achieved in each control cycle. The internal calculation of the joint motion velocity vector Drive the joints of the robotic arm to move.
[0089] Furthermore, this disclosure can also record the end-effector pose, joint angles, elbow evaluation indicators, and solution status of the robotic arm for subsequent trajectory quality assessment and parameter tuning. This provides a more stable elbow abduction trend for data acquisition tasks, making the acquired telemanipulation data more consistent with human upper limb movement habits, thereby reducing the data cleaning costs of subsequent learning algorithms.
[0090] According to exemplary embodiments of this disclosure, a velocity vector for commanded joint motion can also be constructed. The preset constraints. The calculated joint motion velocity vector... If the preset constraints are met, the joint motion velocity vector can be used as a basis for the command. Control the movement of multiple joints of the robotic arm.
[0091] According to an exemplary embodiment of this disclosure, the aforementioned preset constraints may include at least one of the following: joint velocity limiting constraints, joint positioning constraints, and end-effector pose tracking accuracy constraints.
[0092] According to an exemplary embodiment of this disclosure, the joint velocity limiting constraint can be: the commanded joint motion velocity vector is within a preset joint motion velocity vector range; the joint limiting constraint can be: the rotation angle calculated based on the commanded joint motion velocity vector, the control cycle, and the joint rotation angle is within a preset rotation angle range; the end-effector pose tracking accuracy constraint can be: the end-effector pose tracking accuracy calculated based on the commanded joint motion velocity vector is within a preset tracking accuracy range.
[0093] For example, the above constraints can be represented by the following formulas: Formula (14): Joint velocity limiting inequality constraint.
[0094] Formula (15): Joint limit inequality constraint.
[0095] Formula (16): The inequality constraint on the end-effector pose tracking accuracy of the robotic arm.
[0096] in, The aforementioned variable to be planned is the joint motion velocity vector to be solved. To preset the minimum joint motion velocity vector, To preset the maximum joint motion velocity vector, For the rotation angle variable of the joint, To control the cycle, This is a preset safety margin for joint positioning. To preset the minimum rotation angle, To preset the maximum rotation angle, For Jacobian matrices, By targeting the desired pose of the end effector Differentiation yields, Set the preset tracking accuracy.
[0097] In this way, by setting formulas (13) to (16), a better balance can be achieved between end-point tracking, velocity smoothing, constraint safety, and computational efficiency. That is, this disclosure can still obtain continuous, stable, and low-time-consuming joint velocity solutions when kinematic singularities, joint constraints, velocity amplitude limits, and real-time requirements of teleoperation coexist.
[0098] This disclosure relates to a teleoperation control strategy for stably guiding the elbow posture of a seven-axis or multi-redundant degree-of-freedom manipulator without relying on a specific arm angle analytical model. Its core breakthrough lies in getting rid of the strong dependence of the traditional arm angle method on the specific configuration of the manipulator (e.g., vertical / parallel axis). By constructing an optimization objective function with four constraints (Equation 13), it is possible to achieve configuration-independent, robust, smooth and controllable real-time joint velocity solution.
[0099] This disclosure provides a general inverse kinematics solution for robotic arms based on the Jacobian matrix, which can construct a general kinematic mapping relationship based on the Jacobian matrix. Since the Jacobian matrix is an inherent mathematical representation of all serial robotic arms, it can be calculated using only joint angles without any pre-set geometric constraints. Therefore, it can be implemented completely independently of the specific configuration of the robotic arm (e.g., number of joints, link length, axis configuration), and can thus be extended to seven-axis robotic arms with different axis arrangements, different joint limits, or locally non-standard SRS configurations, resulting in a wider range of adaptability and stronger versatility.
[0100] It is evident that the essence of the robotic arm control method disclosed herein is to upgrade the "geometric analysis" in related technologies to "differential kinematics + optimization control", that is, to transform the inverse kinematics problem into a constrained real-time optimal control problem, thereby achieving true configuration universality.
[0101] Figure 4 This is a block diagram illustrating a control device 400 for a robotic arm according to an exemplary embodiment of the present disclosure, the robotic arm possibly comprising a plurality of joints connected in sequence.
[0102] Reference Figure 4The control device 400 of the robotic arm may include an information acquisition module 401, a planning and construction module 402, a velocity vector determination module 403, and a motion control module 404.
[0103] At the start of the current control cycle, the information acquisition module 401 can acquire the desired end-effector pose of the robotic arm. Motion state information and historical joint motion velocity vectors for each of the multiple joints. Motion state information may include, but is not limited to, motion velocity and rotation angle. The historical joint motion velocity vector may contain the motion velocity calculated for each of multiple joints at the start of the previous control cycle.
[0104] The planning and construction module 402 can be based on the desired end-effector pose. Motion state information and historical joint motion velocity vectors for each of the multiple joints. Construct a target planning task that uses the commanded joint motion velocity vector as the variable to be planned and is used to characterize the joint motion control task of the robotic arm. The commanded joint motion velocity vector can include the motion velocity of each joint in multiple joints within the current control cycle.
[0105] For example, the planning and construction module 402 can be based on the desired end-effector pose. Motion state information and historical joint motion velocity vectors for each of the multiple joints. A quadratic programming approach is then constructed. In this approach, the velocity vector of the commanded joint motion can be used as the variable to be planned, and the desired pose of the end effector can be obtained. Motion state information and historical joint motion velocity vectors for each of the multiple joints. Construct an objective function representing the joint motion control task of the robotic arm with respect to the variables to be planned.
[0106] According to exemplary embodiments of this disclosure, the joint motion control task described above may include at least one of the following: The tasks include: tracking the end-effector pose of a robotic arm; elbow control based on the motion trend of a target joint among multiple joints; smoothing the joint motion velocity generated by elbow control of a robotic arm; and preventing abrupt changes in joint motion velocity. The objective planning tasks (i.e., objective functions) described above can be constructed based on monomials for each of at least one of the tasks, where each monomial can contain the variables to be planned.
[0107] According to an exemplary embodiment of this disclosure, the first monomial for the tracking task of the end effector pose of a robotic arm can be constructed as follows: The Jacobian matrix can be calculated based on the motion state information of each of the aforementioned joints. Then, the desired end-effector pose can be determined. By taking the derivative, the desired terminal velocity can be obtained. Next, we can calculate the Jacobian matrix. With the variables to be planned The first product. Then, the first product and the desired terminal velocity can be calculated. The first difference between them. Next, it can be based on the adjustable end-task weight matrix. Find the first difference and construct the first monomial.
[0108] According to an exemplary embodiment of this disclosure, the second monomial of the elbow control task based on the motion trend of the target joint among multiple joints can be constructed as follows: It can be based on the outer reference normal vector of the robot arm's shoulder coordinate system. Shoulder reference point of the robotic arm The center point of the robotic arm's elbow wrist reference point of the robotic arm The degree to which the elbow plane of the robotic arm approaches the preset abduction direction, E(q), is calculated. Then, based on the degree to which the elbow plane of the robotic arm approaches the preset abduction direction, E(q), the virtual elbow task weight matrix can be calculated. Next, based on the rotation angle of the target joint contained in the aforementioned motion state information, Calculate the reference vector for joint motion velocity. Then, the variables to be planned can be calculated. Reference vector of joint motion velocity The second difference between them. Next, the virtual elbow task weight matrix can be calculated. The second product of the second difference. Then, based on the second product, a second monomial can be constructed.
[0109] According to an exemplary embodiment of this disclosure, a preset rotation angle of the target joint corresponding to the anthropomorphic elbow configuration can be calculated. Rotation angle relative to the target joint The third difference between them. Then, based on the third difference, the desired velocity of the target joint can be calculated. When the elbow configuration control method of the robotic arm is in the simplified deployment mode, the desired speed of the target joint can be achieved. The aforementioned joint motion velocity reference vector was determined. When the elbow configuration control mode of the robotic arm is in enhanced mode, the desired speed of the target joint can be determined. The degree to which the elbow plane of the aforementioned robotic arm approaches the preset abduction direction Calculate the aforementioned joint motion velocity reference vector .
[0110] According to an exemplary embodiment of this disclosure, the third monomial for a smooth task of joint motion velocity generated by elbow control of a robotic arm can be constructed as follows: It can calculate the variables to be planned Compared with the historical joint motion velocity vector The third difference between them. Then, the adjustable smoothing weight matrix can be calculated. The third product is the product of the third difference and the third product. Next, a third monomial can be constructed based on this third product.
[0111] According to an exemplary embodiment of this disclosure, the fourth monomial for the task of preventing abrupt changes in joint movement velocity can be constructed as follows: The Jacobian matrix can be calculated based on the motion state information of each joint in a multi-joint system. Then, it can be based on the Jacobian matrix. Calculate the joint velocity regularization weight matrix Next, the joint velocity regularization weight matrix can be calculated. With the variables to be planned The fourth product between them. Then, based on the fourth product, a fourth monomial can be constructed.
[0112] The velocity vector determination module 403 can determine the velocity vector of the commanded joint movement by performing the above-mentioned target planning task, that is, by solving the above-mentioned quadratic programming problem. .
[0113] According to an exemplary embodiment of this disclosure, the velocity vector determination module 403 can use the value of the variable to be planned, which is the minimum value of the objective function in the aforementioned quadratic programming, as the final command joint motion velocity vector. .
[0114] The motion control module 404 can calculate the joint motion velocity vector based on the obtained command. Control the movement of multiple joints of the robotic arm.
[0115] According to an exemplary embodiment of this disclosure, the control device 400 of the robotic arm may further include a constraint construction module. This constraint construction module can construct a constraint condition construction module for the commanded joint motion velocity vector. The preset constraints. The calculated joint motion velocity vector... Under the condition that the preset constraints are met, the motion control module 404 can, based on the command joint motion velocity vector that meets the preset constraints, Control the movement of multiple joints of the robotic arm.
[0116] According to an exemplary embodiment of this disclosure, the aforementioned preset constraints may include at least one of the following: joint velocity limiting constraints, joint positioning constraints, and end-effector pose tracking accuracy constraints.
[0117] According to an exemplary embodiment of this disclosure, the joint velocity limiting constraint can be: the commanded joint motion velocity vector is within a preset joint motion velocity vector range; the joint limiting constraint can be: the rotation angle calculated based on the commanded joint motion velocity vector, the control cycle, and the joint rotation angle is within a preset rotation angle range; the end-effector pose tracking accuracy constraint can be: the end-effector pose tracking accuracy calculated based on the commanded joint motion velocity vector is within a preset tracking accuracy range.
[0118] Figure 5 This is a block diagram illustrating an electronic device 500 according to an exemplary embodiment of the present disclosure.
[0119] Reference Figure 5 The electronic device 500 includes at least one memory 501 and at least one processor 502. The at least one memory 501 stores instructions that, when executed by the at least one processor 502, execute a control method for a robotic arm according to an exemplary embodiment of the present disclosure.
[0120] As an example, electronic device 500 may be a PC, tablet, personal digital assistant, smartphone, or other device capable of executing the aforementioned instructions. Here, electronic device 500 is not necessarily a single electronic device, but may be a collection of any devices or circuits capable of executing the aforementioned instructions (or instruction sets) individually or in combination. Electronic device 500 may also be part of an integrated control system or system manager, or may be configured to interconnect with a portable electronic device locally or remotely (e.g., via wireless transmission) through an interface.
[0121] In electronic device 500, processor 502 may include a central processing unit (CPU), a graphics processing unit (GPU), a programmable logic device, a dedicated processor system, a microcontroller, or a microprocessor. By way of example and not limitation, processor may also include analog processors, digital processors, microprocessors, multi-core processors, processor arrays, network processors, etc.
[0122] The processor 502 can execute instructions or code stored in the memory 501, which can also store data. Instructions and data can also be sent and received over a network via a network interface device, which can employ any known transmission protocol.
[0123] The memory 501 may be integrated with the processor 502, for example, by arranging RAM or flash memory within an integrated circuit microprocessor. Alternatively, the memory 501 may include a separate device, such as an external disk drive, a storage array, or other storage device usable by any database system. The memory 501 and the processor 502 may be operatively coupled, or may communicate with each other, for example, via I / O ports, network connections, etc., enabling the processor 502 to read files stored in the memory.
[0124] In addition, electronic device 500 may also include a video display (such as a liquid crystal display) and a user interaction interface (such as a keyboard, mouse, touch input device, etc.). All components of electronic device 500 can be interconnected via a bus and / or network.
[0125] According to exemplary embodiments of this disclosure, a computer-readable storage medium may also be provided, which, when executed by a processor of an electronic device, enables the electronic device to perform the aforementioned control method for a robotic arm. Examples of computer-readable storage media include: read-only memory (ROM), random access programmable read-only memory (PROM), electrically erasable programmable read-only memory (EEPROM), random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), flash memory, non-volatile memory, CD-ROM, CD-R, CD+R, CD-RW, CD+RW, DVD-ROM, DVD-R, DVD+R, DVD-RW, DVD+RW, DVD-RAM, BD-ROM, BD-R, BD-R LTH, BD-RE, Blu-ray or optical disc storage, hard disk drive (HDD), solid-state drive (SSD), card storage (such as multimedia cards, secure digital (SD) cards, or ultra-fast digital (XD) cards), magnetic tape, floppy disk, magneto-optical data storage device, optical data storage device, hard disk, solid-state drive, and any other device configured to store a computer program and any associated data, data files, and data structures in a non-transitory manner and to provide the computer program and any associated data, data files, and data structures to a processor or computer so that the processor or computer can execute the computer program. The computer program in the aforementioned computer-readable storage medium can run in an environment deployed in computer devices such as clients, hosts, agent devices, servers, etc. Furthermore, in one example, the computer program and any associated data, data files, and data structures are distributed across a networked computer system, such that the computer program and any associated data, data files, and data structures are stored, accessed, and executed in a distributed manner through one or more processors or computers.
[0126] According to exemplary embodiments of the present disclosure, a computer program product may also be provided, including a computer program that, when executed by a processor, implements the control method for a robotic arm according to the present disclosure.
[0127] According to the control method, apparatus, electronic device, storage medium, and computer program product of the present disclosure, by transforming the elbow anthropomorphic configuration control in the teleoperation of a seven-axis robotic arm into a virtual task of joint velocity in a goal planning task (i.e., quadratic programming), the dependence of traditional arm angle analytical methods on specific SRS configurations can be avoided, thereby improving the deployability of the algorithm on different seven-axis robotic arms and humanoid upper limb structures. For example, the control method of the robotic arm provided by the present disclosure can be directly extended to seven-axis robotic arms with different axis arrangements, different joint limits, or locally non-standard SRS configurations, resulting in a wider range of adaptability and stronger versatility.
[0128] According to exemplary embodiments of this disclosure, even when kinematic singularities, joint limitations, velocity limits, and real-time teleoperation requirements coexist, the control method for the robotic arm provided by this disclosure can still obtain continuous, stable, and low-time-consuming joint velocity solutions.
[0129] According to exemplary embodiments of this disclosure, the dominant role of a target joint (e.g., joint 3) in elbow abduction / valgus tendencies can be utilized to form a lightweight elbow guidance strategy based on the desired velocity of the target joint, facilitating real-time teleoperation and data acquisition. Furthermore, by proposing a shoulder-elbow-wrist plane abduction evaluation index, elbow valgus can be quantified as a continuous function, and a potential function can be further constructed to incorporate the optimization objective, thereby achieving a smoother elbow configuration adjustment.
[0130] According to an exemplary embodiment of this disclosure, by setting a third monomial for a smooth task that characterizes the joint motion speed generated by elbow control of the robotic arm, jitter caused by elbow direction adjustment can be reduced, making the acquisition trajectory more stable.
[0131] According to an exemplary embodiment of this disclosure, by constructing a fourth monomial to prevent abrupt changes in joint motion velocity, velocity changes can be penalized when passing through singular configurations so that joint velocity does not abruptly change.
[0132] According to exemplary embodiments of this disclosure, by transforming elbow anthropomorphic configuration control in the teleoperation of a seven-axis robotic arm into a virtual task of joint velocity within a goal planning task (i.e., quadratic programming), explicit arm angle analysis and null space projection can be avoided, simplifying the deployment process. Furthermore, by proposing dynamic weight adjustment based on elbow valgus degree, joint limit distance, and singularity index, elbow control can adaptively switch between end-effector tracking priority and configuration safety. This suppresses elbow valgus, spontaneous drift, and non-anthropomorphic configuration caused by redundant robotic arms in null space without altering the end-effector trajectory tracking target. Additionally, by unifying joint limit velocity, singularity avoidance, and velocity smoothing within a quadratic programming framework, the continuity of the solution can be maintained even when the robotic arm approaches limits or singularities. Moreover, the robotic arm control method provided by this disclosure is sufficiently lightweight and versatile.
[0133] According to exemplary embodiments of this disclosure, a more stable abduction trend of the robotic arm elbow can be provided for data acquisition tasks, making the acquired teleoperation data more consistent with the human upper limb movement habits, thereby reducing the data cleaning cost of subsequent learning algorithms.
[0134] According to exemplary embodiments of this disclosure, a general kinematic mapping relationship can be constructed based on the Jacobian matrix. Since the Jacobian matrix is an inherent mathematical representation of all serial robotic arms, it can be calculated using only joint angles without any pre-defined geometric constraints. Therefore, it can be implemented completely independently of the specific configuration of the robotic arm (e.g., number of joints, link length, axis configuration), and can thus be extended to seven-axis robotic arms with different axis arrangements, different joint limits, or locally non-standard SRS configurations, resulting in a wider range of adaptability and greater versatility.
[0135] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following claims.
[0136] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.
Claims
1. A control method for a robotic arm, the robotic arm comprising a plurality of joints connected in sequence, characterized in that, The control method includes: At the start of the current control cycle, the desired end pose of the robotic arm, the motion state information of each of the multiple joints, and the historical joint motion velocity vector are obtained. The motion state information includes motion velocity and rotation angle, and the historical joint motion velocity vector includes the motion velocity calculated by each of the multiple joints at the start of the previous control cycle. Based on the desired end pose, the motion state information of each joint among the plurality of joints, and the historical joint motion velocity vector, a target planning task is constructed, which uses the commanded joint motion velocity vector as the variable to be planned and is used to characterize the joint motion control task of the robotic arm. The commanded joint motion velocity vector includes the motion velocity of each joint among the plurality of joints in the current control cycle. The command joint motion velocity vector is determined by executing the target planning task; The robotic arm's multiple joints are controlled to move based on the commanded joint motion velocity vector.
2. The control method as described in claim 1, characterized in that, Also includes: Construct preset constraints for the joint motion velocity vector of the command; The method of controlling the movement of the multiple joints of the robotic arm based on the commanded joint motion velocity vector includes: When the command joint motion velocity vector satisfies the preset constraint condition, the multiple joints of the robotic arm are controlled to move based on the command joint motion velocity vector that satisfies the preset constraint condition.
3. The control method as described in claim 1, characterized in that, The joint motion control task includes at least one of the following: The tasks include: tracking the end-effector pose of the robotic arm; elbow control based on the motion trend of the target joint among the multiple joints; smoothing the joint motion speed generated by the elbow control of the robotic arm; and preventing sudden changes in joint motion speed. The target planning task is based on a univariate structure constructed for each of the at least one item.
4. The control method as described in claim 3, characterized in that, The first singularity for the task of tracking the end-effector pose of the robotic arm is constructed in the following manner: Based on the motion state information of each of the multiple joints, the Jacobian matrix is calculated; The desired velocity of the end effector is obtained by differentiating the desired end effector pose. Calculate the first product of the Jacobian matrix and the variable to be planned; Calculate the first difference between the first product and the desired terminal velocity; Based on an adjustable end-task weight matrix The first monomial is constructed using the first difference.
5. The control method as described in claim 3, characterized in that, The second monomial for the elbow control task based on the motion trend of the target joint among the multiple joints is constructed in the following manner: Based on the outer reference normal vector of the shoulder coordinate system of the robotic arm, the shoulder reference point of the robotic arm, the elbow center point of the robotic arm, and the wrist reference point of the robotic arm, the degree to which the elbow plane of the robotic arm approaches the preset abduction direction is calculated. Based on the degree to which the elbow plane of the robotic arm approaches the preset abduction direction, the virtual elbow task weight matrix is calculated. ; Based on the rotation angle of the target joint contained in the motion state information, calculate the joint motion velocity reference vector. ; Calculate the variable to be planned and the reference vector of joint motion velocity. The second difference between them; Calculate the virtual elbow task weight matrix The second product of the second difference; Based on the second product, construct the second monomial.
6. The control method as described in claim 3, characterized in that, The fourth monomial for the task of preventing abrupt changes in joint movement velocity is constructed in the following manner: Based on the motion state information of each of the multiple joints, the Jacobian matrix is calculated; Based on the Jacobian matrix, calculate the joint velocity regularization weight matrix. ; Calculate the joint velocity regularization weight matrix The fourth product between the variable to be planned and the variable; Based on the fourth product, the fourth monomial is constructed.
7. A control device for a robotic arm, the robotic arm comprising a plurality of joints connected in sequence, characterized in that, The control device includes: The information acquisition module is configured to acquire, at the beginning of the current control cycle, the desired end pose of the robotic arm, the motion state information of each of the plurality of joints, and the historical joint motion velocity vector, wherein the motion state information includes motion velocity and rotation angle, and the historical joint motion velocity vector includes the motion velocity of each of the plurality of joints calculated at the beginning of the previous control cycle. The planning and construction module is configured to construct a target planning task based on the desired end pose, the motion state information of each of the plurality of joints, and the historical joint motion velocity vector, using the commanded joint motion velocity vector as the planning variable and used to characterize the joint motion control task of the robotic arm, wherein the commanded joint motion velocity vector includes the motion velocity of each of the plurality of joints in the current control cycle. The velocity vector determination module is configured to determine the velocity vector of the commanded joint movement by executing the target planning task; The motion control module is configured to control the movement of the plurality of joints of the robotic arm based on the commanded joint motion velocity vector.
8. An electronic device, characterized in that, include: processor; Memory used to store the processor's executable instructions; The processor is configured to execute the instructions to implement the control method of the robotic arm as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that, When the instructions in the computer-readable storage medium are executed by the processor of the electronic device, the electronic device is able to perform the control method of the robotic arm as described in 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 the processor, it implements the control method of the robotic arm as described in any one of claims 1 to 6.