Redundant joint control method, device, equipment and medium
By acquiring end-efficiency position data, the obstacle avoidance trajectory and velocity function of redundant joints are determined, and the velocity function is optimized based on the constraint set. This solves the problem of real-time obstacle avoidance and efficient movement of lightweight robotic arms in narrow dynamic body cavities, enabling safe and stable surgical operations.
Patent Information
- Application Number
- CN202512056679.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-31
- Publication Date
- 2026-02-24
AI Technical Summary
In the existing technology, the redundant degree-of-freedom control method of lightweight robotic arms cannot achieve real-time, stable obstacle avoidance and efficient movement in narrow, dynamically changing body cavities, which affects the accuracy and safety of surgical operations.
By acquiring end-effector position data, the obstacle avoidance trajectory and velocity function of redundant joints are determined. Based on the constraint set, the velocity function is optimized, and a control strategy is formulated to drive the movement of redundant joints, ensuring the continuity and smoothness of the movement.
It enables redundant joints to move safely, stably, and efficiently in complex environments, ensuring the precision and safety of surgical procedures.
Smart Images

Figure CN121552377A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robot motion control technology, and in particular to methods, devices, equipment and media for redundant joint control. Background Technology
[0002] In the field of minimally invasive surgical robotics, surgical instruments must perform high-precision and complex operations such as suturing, cutting, and tissue clamping within the confined and dynamically changing space inside a body cavity. This places extremely stringent demands on the robotic arm's operational flexibility, real-time obstacle avoidance capabilities, and motion continuity. To adapt to minimally invasive surgical scenarios, lightweight robotic arms, with their advantages of compact structure, low inertia, and rapid response, have become an important hardware carrier for surgical robots. However, in practical applications, the control of redundant degrees of freedom of lightweight robotic arms faces many prominent challenges. For example, within the extremely confined operating space of a body cavity, the robotic arm not only needs to frequently adjust its joint configuration to avoid fragile human tissue, other surgical instruments, or cavity walls, but also must ensure the continuous and stable operating trajectory of the surgical instrument's end effector. Any sudden changes or interruptions in trajectory caused by real-time obstacle avoidance can directly affect the accuracy and safety of the surgical operation.
[0003] In related technologies, passive adjustment methods for redundant degree-of-freedom robotic arms have limited adjustment capabilities and cannot be actively optimized, while active adjustment methods generally suffer from insufficient real-time performance due to high computational complexity. Therefore, they not only increase system complexity and cost, but also fail to meet the real-time requirements of lightweight robotic arms. Summary of the Invention
[0004] This application provides a redundant joint control method, apparatus, device, and medium, as well as a computer program product, which enables redundant joints to accurately avoid obstacles in complex environments while achieving safe, stable, and efficient movement.
[0005] In a first aspect, embodiments of this application provide a redundant joint control method, comprising: acquiring end-effector position data corresponding to the end-effector position affected by the movement of the redundant joint within the joint space; determining an obstacle avoidance trajectory of the redundant joint based on the end-effector position data, and determining a velocity function corresponding to the obstacle avoidance trajectory; determining a set of constraints corresponding to the velocity function, and optimizing the velocity function based on the set of constraints to obtain an optimized velocity function; determining a control strategy for the redundant joint based on the optimized velocity function, and driving the movement of the redundant joint based on the control strategy.
[0006] In one possible implementation, determining the obstacle avoidance trajectory of the redundant joint based on the end-effector position data and determining the velocity function corresponding to the obstacle avoidance trajectory includes: determining the joint angle sequence of the redundant joint based on the end-effector position data; determining the obstacle avoidance trajectory corresponding to the redundant joint based on the joint angle sequence; and performing time differentiation on the obstacle avoidance trajectory to determine the velocity function corresponding to the obstacle avoidance trajectory based on the differentiation result.
[0007] In one possible implementation, determining the constraint set corresponding to the velocity function includes: dividing the joint space into multiple discrete state points within a continuous motion range, and determining the constraint function corresponding to the redundant joint at each discrete state point; and constructing a constraint set corresponding to the spatial parameters of the velocity function based on the constraint function.
[0008] In one possible implementation, the constraint set includes acceleration constraints, and optimizing the velocity function based on the constraint set to obtain an optimized velocity function includes: mapping the acceleration constraints from the continuous time domain to acceleration constraints corresponding to the discrete state nodes, wherein the acceleration constraints include velocity change rate constraints; and optimizing the velocity function based on the velocity change rate constraints to obtain an optimized velocity function.
[0009] In one possible implementation, the method further includes:
[0010] The task corresponding to each discrete state point is determined, and the task priority is determined; the weight information corresponding to the acceleration constraint is determined based on the task priority; the weighting strategy corresponding to the constraint set is determined based on the weight information, and the velocity function is optimized based on the weighting strategy and the constraint set.
[0011] In one possible implementation, the method further includes: determining the demand torque curve corresponding to the obstacle avoidance trajectory based on a rigid body mechanics model; determining the torque safety threshold of the redundant joint and the safety margin rule corresponding to the torque safety threshold based on the performance parameters and real-time status of the redundant joint; if the demand torque curve satisfies the safety margin rule at any time, then the obstacle avoidance trajectory is taken as a valid obstacle avoidance trajectory.
[0012] In one possible implementation, the method further includes: if the demand torque curve does not satisfy the safety margin rule at any time, then determining the parameter adjustment instruction corresponding to the obstacle avoidance trajectory based on the safety margin rule; and regenerating the obstacle avoidance trajectory based on the parameter adjustment instruction until the demand torque curve of the obstacle avoidance trajectory satisfies the safety margin rule at any time.
[0013] Secondly, embodiments of this application provide a redundant joint control device, the device comprising: an acquisition module, configured to acquire end-effector position data corresponding to the end-effector position affected by the movement of the redundant joint within the joint space; a determination module, configured to determine the obstacle avoidance trajectory of the redundant joint based on the end-effector position data, and determine the velocity function corresponding to the obstacle avoidance trajectory; a constraint module, configured to determine the constraint condition set corresponding to the velocity function, and optimize the velocity function based on the constraint condition set to obtain an optimized velocity function; and a control module, configured to determine the control strategy of the redundant joint based on the optimized velocity function, and drive the movement of the redundant joint based on the control strategy.
[0014] Thirdly, embodiments of this application provide an electronic device, including: a memory and a processor; the memory stores computer execution instructions; the processor executes the computer execution instructions stored in the memory, causing the processor to perform the first aspect and / or various possible implementations of the first aspect as described above.
[0015] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the first aspect and / or various possible implementations of the first aspect.
[0016] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the first aspect and / or various possible implementations of the first aspect.
[0017] The redundant joint control method, apparatus, device, and medium provided in this application can accurately grasp the actual motion state of the end effector by acquiring the end position data of the redundant joint affected by the movement of the joint space, providing a reliable basis for subsequent obstacle avoidance planning. Based on this end position data, the obstacle avoidance trajectory and corresponding velocity function are determined, which allows the redundant joint to clearly define the movement path and velocity change trend, reduce the amount of trajectory generation calculation, and shorten the response time. Furthermore, by determining and optimizing the constraint condition set of the velocity function, trajectory jitter can be effectively eliminated, velocity abrupt changes can be avoided, and motion stability can be ensured. Finally, based on the optimized velocity function, a control strategy is determined to drive the movement of the redundant joint, enabling the redundant joint to accurately avoid obstacles in complex environments and achieve safe, stable, and efficient movement. Attached Figure Description
[0018] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0019] Figure 1A schematic diagram of the scenario for redundant joint control provided in this application;
[0020] Figure 2 Flowchart of the redundant joint control method provided in this application Figure 1 ;
[0021] Figure 3 Flowchart of the redundant joint control method provided in this application Figure 2 ;
[0022] Figure 4 A schematic diagram of the redundant joint control device provided in this application;
[0023] Figure 5 A schematic diagram of the structure of the electronic device provided in this application.
[0024] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0025] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0026] First, let me explain the terms used in this application:
[0027] Redundant joints refer to a robot configuration where the number of joints exceeds the degrees of freedom required to complete a specific task. Conventionally, a one-to-one correspondence between robot joints and task degrees of freedom is sufficient to achieve the desired action. However, redundant joint robots break this limitation. While the extra joints may seem "redundant," they are actually of great significance. They give robots greater mobility, enabling them to plan paths and cleverly avoid obstacles in complex environments using the extra degrees of freedom; they improve fault tolerance, allowing other joints to compensate for malfunctions or interference, maintaining a certain level of motion function; and they optimize mechanical performance by adjusting joint states to improve force distribution, making the robot operate more stably and efficiently.
[0028] A lightweight robotic arm is a type of robotic arm characterized by its lightweight design. It typically uses high-strength, low-density materials, such as carbon fiber and aluminum alloys, to construct its main structure, significantly reducing its weight while ensuring sufficient structural strength and rigidity. This gives lightweight robotic arms advantages such as ease of installation and deployment, low energy consumption, and flexible movement. They can quickly respond to control commands and operate freely even in confined spaces. They are widely used in many fields: in industrial production, they can perform tasks such as precision assembly and material handling; in the service industry, they can provide assisted care and catering services; and in scientific research, they can be equipped with various sensors and tools to perform detection and sampling tasks in complex environments.
[0029] It should be noted that the redundant joint referred to in this application is a joint present in a robotic arm with more than 6 spatial degrees of freedom, used to avoid obstacles in order to enhance the flexibility of the posture joint.
[0030] Please see Figure 1 , Figure 1 This application provides a schematic diagram of a scenario for redundant joint control, such as... Figure 1 As shown in the schematic diagram, the scenario includes a robotic arm 110 and a control server 120. The control server 120 can acquire end-effector position data corresponding to the end-effector positions affected by the redundant joint movements of the robotic arm 110 within the joint space. Then, the control server 120 determines the obstacle avoidance trajectory of the redundant joint and the corresponding velocity function based on the end-effector position data. Next, the control server 120 needs to determine the constraint set corresponding to the velocity function, and then optimize the velocity function based on the constraint set to obtain the optimized velocity function. Finally, the control server 120 determines the control strategy for the redundant joint based on the optimized velocity function, and determines the redundant joint movements of the robotic arm 110 based on the control strategy, thereby achieving continuous and real-time control of the obstacle avoidance of the redundant joint.
[0031] in, Figure 1 The robotic arm 110 shown is a robotic arm with redundant degrees of freedom. Figure 1 The control server 120 shown is a control server, which can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. No restrictions are placed on this. The robotic arm 110 and the control server 120 can communicate via wired and wireless methods, which are also not restricted here.
[0032] Existing control methods for redundant degree-of-freedom robotic arms have significant limitations: passive adjustment methods are constrained by mechanical design, lack sufficient adjustment capabilities, and cannot proactively adapt to complex tasks. Active adjustment methods, on the other hand, generally suffer from inherent contradictions that are difficult to reconcile. For example, optimization-based methods are computationally complex and have poor real-time performance; pseudo-inverse Jacobian-based methods are prone to trajectory discontinuities and jitter; and sampling planning methods involve large computational loads and difficulty in guaranteeing the priority of the primary task. These shortcomings prevent existing methods from simultaneously achieving high real-time computational efficiency while ensuring continuous, smooth, precise, and proactive obstacle avoidance motion control within confined dynamic spaces, making it difficult to meet the demanding requirements of high-requirement scenarios.
[0033] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0034] Figure 2 Flowchart of the redundant joint control method provided in this application Figure 1 ,like Figure 2 As shown, the flow of this redundant joint control method includes at least steps S201 to S204, which are described in detail below:
[0035] Step S201: Obtain the end position data corresponding to the end position affected by redundant joint movement in the joint space.
[0036] It should be noted that a robotic arm system with redundant joints can be built, and each joint can be equipped with high-precision sensors, such as position sensors. These sensors can measure key parameters such as the angle and position of each joint in real time and accurately, laying the foundation for subsequent data acquisition. Before the robotic arm begins to move, the motion plan for the robotic arm needs to be set on the control server according to the specific task requirements, specifying the motion trajectory, speed, acceleration, and other parameters of each joint. At the same time, considering the special characteristics of redundant joints, the plan should make full use of the redundant degrees of freedom to provide the robotic arm with multiple feasible motion path options to cope with possible obstacles or special working conditions.
[0037] For example, when the robotic arm begins to move according to the plan, position sensors at each joint continuously collect real-time data and transmit this data to the control server in real time via wired or wireless communication. Upon receiving the data, the control server uses advanced forward kinematics algorithms to convert the joint parameters in joint space into the position and orientation information of the end effector in Cartesian space. Since the robotic arm has redundant joints, appropriate algorithms can be used to handle the multiple solutions caused by redundant degrees of freedom. Typically, optimization algorithms are used to select the optimal solution from multiple possible solutions based on preset optimization objectives (such as minimizing joint torque, avoiding extreme joint positions, etc.), thereby obtaining accurate end-effector position data.
[0038] Step S202: Determine the obstacle avoidance trajectory of the redundant joint based on the end position data, and determine the velocity function corresponding to the obstacle avoidance trajectory.
[0039] After obtaining the end-effector position data, the data first needs to be deeply analyzed to clarify the relative positional relationship between the end-effector and obstacles in the surrounding environment during joint space movement. By constructing a three-dimensional spatial model, the end-effector position data is mapped into the model, and the position, shape, and size information of obstacles are accurately labeled. Based on this, path planning algorithms, such as the Rapid Exploration Random Tree (RRT) algorithm or the artificial potential field method, are used to search for a feasible path from the current end-effector position to the target position in the three-dimensional spatial model that avoids all obstacles, taking into account the multi-degree-of-freedom characteristics of redundant joints. This path is the initially determined obstacle avoidance trajectory of the redundant joint. However, the trajectory obtained at this time may not be smooth enough or have sharp inflection points, which is not conducive to the stable operation of the robotic arm. Therefore, curve fitting techniques, such as Bézier curve or spline curve fitting methods, are needed to optimize the initial obstacle avoidance trajectory to make it smoother and more continuous, ensuring that the robotic arm will not experience severe vibration or impact due to abrupt changes in the trajectory when moving along the trajectory.
[0040] Furthermore, after determining the smooth obstacle avoidance trajectory, the next step is to determine the corresponding velocity function. Based on the robotic arm's motion performance indicators, such as maximum acceleration and maximum speed limits, and combined with the geometric characteristics of the obstacle avoidance trajectory, the trajectory is divided into different segments. For each segment, a velocity variation law is determined. In the initial segment, to ensure smooth acceleration of the robotic arm, the velocity function is typically designed as a linear or quadratic function that gradually increases from zero. In segments approaching obstacles, to ensure safe obstacle avoidance, the velocity function is appropriately reduced, possibly using a decelerating linear function or a more complex slowly varying function. In segments far from obstacles and with a relatively straight trajectory, the velocity function can be designed as a constant function maintaining a high speed or a slightly fluctuating function to balance efficiency and stability. Simultaneously, the motion coordination between redundant joints must be considered to ensure that the joints do not conflict or interfere with each other when moving according to the velocity function. By continuously adjusting and optimizing the parameters of the velocity function, a velocity function that achieves smooth robotic arm movement more easily than position control is ultimately obtained.
[0041] Step S203: Determine the set of constraints corresponding to the velocity function, and optimize the velocity function based on the set of constraints to obtain the optimized velocity function.
[0042] For example, when determining the set of constraints corresponding to the velocity function, it is necessary to comprehensively consider multiple requirements such as the robotic arm's motion performance, trajectory geometry, and obstacle avoidance. Specifically, the physical performance limitations of each joint of the robotic arm, such as maximum speed, maximum acceleration, and maximum jerk, must ensure that the movement does not exceed the hardware's capacity. Regarding the smoothness of the trajectory, to avoid sudden speed changes causing vibration or impact to the robotic arm, the velocity function must be continuous and its first and second derivatives must be continuous, i.e., acceleration and jerk must be continuous or at least piecewise continuous. For the motion coordination constraints between redundant joints, to ensure that no motion conflict or interference occurs when each joint moves according to the velocity function, coordinated motion must be achieved through the matching relationship of speed and acceleration between joints. For the geometric constraints of the obstacle avoidance trajectory, such as the minimum distance from each point on the trajectory to the obstacle must be greater than a safety threshold, and the speed must be appropriately adjusted when approaching and moving away from the obstacle to ensure safety.
[0043] Optionally, in some feasible embodiments, task execution efficiency also needs to be considered, such as minimizing motion time or energy consumption. When optimizing the velocity function based on the above set of constraints, numerical optimization methods, such as gradient descent, genetic algorithms, or particle swarm optimization algorithms, need to be used. By iteratively adjusting the parameters of the velocity function (such as the slope of the linear function, the coefficient of the quadratic function, or the control points of the spline curve), the optimization objective is optimized to the maximum extent while satisfying all constraints. For example, under the premise of ensuring safe obstacle avoidance and smooth motion, the movement speed of the robotic arm can be increased as much as possible to shorten the task execution time, and finally, an optimized velocity function that meets both the physical performance of the robotic arm and the task requirements, and is safe and efficient, is obtained.
[0044] Step S204: Determine the control strategy for the redundant joints based on the optimized velocity function, and drive the movement of the redundant joints based on the control strategy.
[0045] For example, the optimized velocity function is analyzed to clarify its time-varying pattern and its relationship with each redundant joint. Since redundant joints have multiple degrees of freedom, the velocity function of the end effector needs to be inversely decomposed into the angular velocity function of each redundant joint based on the kinematic model of the robotic arm. This process requires full consideration of the Jacobian matrix of the robotic arm, which is used to map the end effector velocity to the joint space to obtain the angular velocity value that each redundant joint should have at each time step. Simultaneously, to ensure the smoothness and accuracy of joint motion, the decomposed angular velocity function needs further processing. For example, filtering algorithms can be used to remove potential noise and abrupt changes, making it smoother and more continuous. After determining the angular velocity function of each redundant joint, a control strategy is designed based on this. Model-based control methods, such as computational torque control, are typically used. Based on the dynamic model of the robotic arm, combined with the current joint position, velocity information, and desired angular velocity, the required driving torque for each joint is calculated. This driving torque needs to accurately track the desired angular velocity function, while also considering nonlinear factors such as joint friction and inertia, and making appropriate compensations and adjustments.
[0046] Optionally, to improve the robustness of the system, a feedback control loop can be introduced to monitor the actual angular velocity of the joints in real time and compare it with the desired angular velocity. The driving torque is dynamically adjusted according to the magnitude of the error, so that the joint movement always closely follows the optimized velocity function. Finally, the calculated driving torque of each redundant joint is converted into actual motor control signals through the driver to drive the motor to run, thereby driving the redundant joints to move according to the predetermined control strategy and the optimized velocity function, so as to realize the safe, efficient and precise operation of the robotic arm in complex environments.
[0047] In the embodiments provided in this application, by acquiring the end-position data of the redundant joint affected by the movement of the redundant joint in the joint space, determining the obstacle avoidance trajectory and velocity function of the redundant joint, and then optimizing the velocity function according to the constraint set and formulating a control strategy to drive the movement of the redundant joint, it is possible to achieve effective obstacle avoidance of the redundant joint during the movement process and more precise and efficient movement control.
[0048] Based on the above embodiments, in one exemplary embodiment provided in this application, the specific implementation process of determining the obstacle avoidance trajectory of the redundant joint based on the end-effector position data and determining the velocity function corresponding to the obstacle avoidance trajectory may further include steps S301 to S303, which are described in detail below:
[0049] Step S301: Determine the joint angle sequence of redundant joints based on the end-effector position data;
[0050] Step S302: Determine the obstacle avoidance trajectory corresponding to the redundant joints based on the joint angle sequence;
[0051] For example, a high-dimensional spline curve fitting algorithm can be used to interpolate joint space data to generate a continuous trajectory. Specifically, discrete data points in the joint space can be obtained. These data points typically come from the angle measurements of redundant joints at different times during the movement of the robotic arm, or from key angle positions preset in other ways. Then, an appropriate high-dimensional spline curve type, such as a cubic spline or multi-spline, is selected based on the number and distribution characteristics of the data points. The high-dimensional characteristic means that the spline curve can handle multiple joint angle variables simultaneously, ensuring that the change of each joint angle over time remains smooth and continuous in multiple dimensions.
[0052] Furthermore, control points and node vectors of the spline curve can be determined. The selection of control points needs to comprehensively consider the location of data points, the smoothness requirements of the trajectory, and the motion constraints of redundant joints. For example, the location of control points can be adjusted by least squares fitting or based on optimization objectives (such as minimizing joint motion energy or avoiding joint extreme positions). The node vectors are used to divide the spline curve into intervals, ensuring that the curve is represented by a polynomial in each interval and is continuously differentiable overall. After setting the control points and node vectors, the interpolation function of the spline curve can be used to make the curve accurately pass through all given joint space data points, while ensuring that the transition of the curve between data points is smooth and natural, without abrupt changes or sharp points. This generates a continuous and smooth trajectory in joint space, which not only describes the change law of redundant joint angles over time, but also effectively avoids obstacles in the surrounding environment, meeting the requirements for safe and stable movement of the robotic arm.
[0053] Step S303: Perform time derivative on the obstacle avoidance trajectory to determine the velocity function corresponding to the obstacle avoidance trajectory based on the derivative result.
[0054] For example, after obtaining the obstacle avoidance trajectory, since the trajectory is usually presented in the form of parametric equations, where the parameters often have a corresponding relationship with time, in order to determine its corresponding velocity function, the specific relationship between the trajectory parameters and time can be clarified. If the trajectory is directly constructed with time as a parameter, then the time derivative operation can be directly performed on the trajectory equation. Assuming that the obstacle avoidance trajectory in the joint space is composed of multiple functions of joint angles changing with time, for each joint angle function, according to the differentiation rules, such as power function differentiation, trigonometric function differentiation, etc., its first derivative with respect to the time variable is obtained, and the result is the angular velocity of the joint at the corresponding moment. Combining the angular velocity functions of all joints constitutes the velocity function corresponding to the obstacle avoidance trajectory in the joint space. The essence of this velocity function is a mixed function of the velocity and position of redundant joints.
[0055] Optionally, if the obstacle avoidance trajectory is constructed using non-time parameters such as arc length, it is necessary to first establish a functional relationship between arc length and time through parameter transformation. This usually requires combining the motion characteristics of the robotic arm, such as using the average speed of the robotic arm on the trajectory or the speed information at a specific position to approximate the correspondence between arc length and time. After completing the parameter transformation, the derivative of the obstacle avoidance trajectory with respect to arc length is obtained. This derivative reflects the rate of change of the trajectory in the arc length direction. Then, using the functional relationship between arc length and time, the derivative with respect to arc length is converted to the derivative with respect to time through the chain rule, thereby obtaining the derivative of each joint angle with respect to time, which is the angular velocity function of the joint. Similarly, the angular velocity functions of all joints are combined to form the velocity function corresponding to the obstacle avoidance trajectory in joint space.
[0056] In the embodiments provided in this application, the joint angle sequence of redundant joints is determined based on the end-position data, thereby clarifying their obstacle avoidance trajectory. The velocity function is obtained by time differentiation of the obstacle avoidance trajectory, which can accurately plan the obstacle avoidance motion path and velocity changes of redundant joints, ensuring that they can safely and efficiently complete obstacle avoidance actions in complex environments.
[0057] Based on the above embodiments, in one exemplary embodiment provided in this application, the specific implementation process of determining the constraint condition set corresponding to the velocity function may further include steps S401 and S402, which are described in detail below:
[0058] Step S401: Within the continuous motion range, the joint space is divided into multiple discrete state points, and the constraint function corresponding to the redundant joints at each discrete state point is determined.
[0059] Step S402: Construct a set of constraint conditions corresponding to the spatial parameters of the velocity function based on the constraint function.
[0060] For example, a discretized analysis framework can be established for the kinematic characteristics of redundant robotic arms. This involves dividing the joint space into multiple discrete state points based on kinematic reachability, with each state point corresponding to a specific configuration of the robotic arm. The key is to construct dual constraint functions for the redundant joints at each state point. Specifically, the position constraint function is generated through a forward kinematic model, comprehensively considering workspace boundaries, singular configuration avoidance, and positional accuracy requirements in the task space. It also introduces joint angle limits as hard constraints to ensure that the joint position at each state point satisfies both the end-effector task requirements and is within the physically feasible domain. The velocity constraint function is constructed based on inverse kinematics and dynamics, satisfying joint velocity amplitude limits, gradient consistency requirements between velocity direction and position constraints, and energy optimality criteria. After constructing the constraint functions for all state points, these local constraints need to be integrated into a global constraint system.
[0061] Specifically, the position and velocity constraint functions of discrete state points are parameterized as combinations of continuous basis functions with respect to joint coordinates. A continuous representation of the constraint functions is constructed through spline interpolation or radial basis function networks, ultimately forming a set of spatial parameter constraints for the velocity function covering the entire joint space. This set of constraints not only includes explicit position and velocity coupling constraints for each state point, but also implicitly guarantees a smooth transition of constraints between state points through function continuity. This provides complete kinematic boundary conditions for subsequent velocity function optimization, ensuring that the optimized velocity function achieves continuous smoothness of the motion trajectory and optimal energy while satisfying all geometric and dynamic constraints.
[0062] Furthermore, it should be noted that the avoidance in this embodiment is not aimed at external obstacles, but rather at the joints of the robotic arm itself. The redundant joints move along with other joints, always avoiding collisions and improving the flexibility of other joints. Therefore, its constraint functions focus more on position and velocity, and then, by integrating multiple limiting factors, customize corresponding constraint functions for the redundant joints at each discrete time point, using mathematical expressions to accurately describe the feasible range of motion and state of the joint at that moment. Finally, the constraint functions at each discrete time point are systematically integrated and, through a mathematical set construction method, converge into a complete and unified set of constraint conditions.
[0063] In the embodiments provided in this application, by dividing a continuous time axis into multiple discrete time nodes and determining the constraint function of redundant joints at each node, and then constructing the constraint condition set corresponding to the velocity function, the motion state of redundant joints at each time point can be accurately restricted, ensuring that their motion meets the requirements of the actual scenario and is safe and reliable.
[0064] Based on the above embodiments, in one exemplary embodiment provided in this application, the constraint set includes acceleration constraints, and the specific implementation process of optimizing the velocity function based on the constraint set to obtain the optimized velocity function may further include steps S501 and S502, which are described in detail below:
[0065] Step S501: Map the acceleration constraints from the continuous time domain to the corresponding discrete state node acceleration constraint conditions, including the velocity change rate constraint.
[0066] Step S502: Optimize the velocity function based on the velocity change rate constraint to obtain the optimized velocity function.
[0067] For example, when constructing acceleration constraints for discrete state nodes, the definition of acceleration in the continuous time domain can be transformed into velocity rate constraints between adjacent state nodes in a discrete sequence using numerical difference methods. This process must simultaneously consider the geometric consistency of position constraints. That is, the joint position of each state node must satisfy the workspace boundary constraints and singular configuration avoidance conditions, while the velocity rate constraints must ensure that the change in joint motion rate does not exceed the physical limit and that the velocity curve is continuously differentiable.
[0068] Specifically, the central difference scheme is used to calculate the rate of change of velocity. This involves dividing the velocity difference between the current node and its immediate neighbors by the time step to obtain a discrete estimate of acceleration, which is then constrained within a preset acceleration amplitude range. Based on this, when constructing the velocity function optimization model, the discretized rate of change of velocity constraint is embedded as a hard constraint into the optimization framework. Simultaneously, a soft constraint handling mechanism for position constraints is introduced. The position boundary constraints are transformed into additional cost terms in the optimization objective using a penalty function method, ensuring the asymptotic satisfaction of position constraints during optimization. The optimization algorithm employs a sequential quadratic programming method, simultaneously processing the equality conditions of the rate of change of velocity constraint and the penalty term for the position constraint in each iteration. The velocity function parameters are iteratively adjusted until the optimization objective function converges. The final velocity function not only strictly satisfies the rate of change of velocity constraint at discrete state nodes.
[0069] In the embodiments provided in this application, by discretizing the joint space into multiple state points and constructing constraint functions for redundant joints, the position and velocity limits of each motion stage can be accurately characterized. Then, by integrating these local constraints, a velocity parameter constraint set covering the entire space is formed, ultimately achieving an optimized control effect that simultaneously satisfies geometric reachability, dynamic feasibility, and task requirements for the robotic arm in continuous motion.
[0070] Based on the above embodiments, in one exemplary embodiment provided in this application, the specific implementation process of the above redundant joint control method may further include steps S601 to S603, which are described in detail below:
[0071] Step S601: Determine the task corresponding to each discrete state point and determine the task priority corresponding to the task.
[0072] Step S602: Determine the weight information corresponding to the acceleration constraint based on the task priority;
[0073] Step S603: Determine the weighting strategy corresponding to the constraint set based on the weight information, and optimize the velocity function based on the weighting strategy and the constraint set.
[0074] For example, for each discrete state point, the corresponding task type and motion requirements are analyzed, such as trajectory tracking tasks of the end effector, obstacle avoidance tasks, and joint limit avoidance tasks. The constraint strength of each task on the robotic arm's motion is quantified through a task analysis matrix, thereby establishing a task priority evaluation system. This evaluation system can comprehensively consider factors such as task urgency, safety requirements, and accuracy indicators, and uses multi-criteria decision-making methods such as the analytic hierarchy process (AHP) or entropy weighting to determine the priority weight of each task. Higher priority tasks typically correspond to stricter constraints. After clarifying the task priorities, the priority information needs to be transformed into a weight allocation strategy for acceleration constraints.
[0075] Specifically, dynamic weight coefficients can be assigned to acceleration constraints associated with different tasks. For example, acceleration constraints in trajectory tracking tasks receive higher weights during high-speed motion, while acceleration constraints in obstacle avoidance tasks receive significantly higher weights when approaching obstacles. At the same time, it is necessary to ensure that the weight allocation is consistent with the geometric characteristics of the position constraints. When a joint approaches the workspace boundary, the weight of the position constraint needs to be dynamically increased to prevent exceeding limits, while the weight of the velocity constraint is adjusted according to task priority to balance motion efficiency and safety. The final weighted constraint set is formed by integrating multi-task priority information to create a composite optimization objective that includes position, velocity, and acceleration constraints. During the optimization process, weighted least squares or constrained multi-objective optimization algorithms are used to process the weighted constraints synchronously at each discrete state point. The position constraint is geometrically feasible using a penalty function method, while the velocity and acceleration constraints are transformed into equality constraints using the Lagrange multiplier method. Through iterative optimization, the velocity function achieves a smooth transition under the condition of satisfying all weighted constraints. The final generated velocity curve not only strictly follows the motion requirements of each task but also dynamically coordinates the constraint conflicts between different tasks through a weight strategy, ensuring that the robotic arm achieves efficient, safe, and precise motion control in complex task scenarios.
[0076] In the embodiments provided in this application, by dynamically associating discrete state points with task priorities and assigning differentiated weights to acceleration constraints, the velocity function optimization process can satisfy basic motion constraints while prioritizing the dynamic performance requirements of high-priority tasks, ultimately achieving a coordinated improvement in the accuracy and adaptability of robotic arm motion control in multi-task scenarios.
[0077] Based on the above embodiments, in one exemplary embodiment provided in this application, the specific implementation process of the above redundant joint control method may further include steps S701 to S702, which are described in detail below:
[0078] Step S701: Determine the required torque curve corresponding to the obstacle avoidance trajectory based on the rigid body mechanics model;
[0079] Step S702: Based on the performance parameters and real-time status of the redundant joints, determine the torque safety threshold of the redundant joints and the safety margin rule corresponding to the torque safety threshold.
[0080] Step S703: If the demand torque curve satisfies the safety margin rule at any time, then the obstacle avoidance trajectory is taken as the effective obstacle avoidance trajectory.
[0081] For example, a rigid body mechanics model can be used to accurately determine the required torque curve corresponding to the obstacle avoidance trajectory. Specifically, a rigid body mechanics model is constructed based on the physical structure of the robotic arm, the mass distribution of each link, and the moment of inertia. This model can accurately describe the motion and force relationship of the robotic arm in space. The pre-planned obstacle avoidance trajectory is input into the rigid body mechanics model, taking into account factors such as gravity, inertial forces, and possible external forces acting on the robotic arm during its movement. Through complex mechanical calculations and kinematic analysis, the torque required by each joint of the robotic arm at different times when it moves along the obstacle avoidance trajectory is calculated, thus obtaining a complete required torque curve. This curve intuitively reflects the change of torque of each joint of the robotic arm over time in order to complete the obstacle avoidance action.
[0082] After obtaining the required torque curve, the torque safety threshold of the redundant joint and the corresponding safety margin rule can be determined by combining the performance parameters and real-time status of the redundant joint. Performance parameters include the maximum torque bearing capacity of the redundant joint and torque limits during continuous operation. Real-time status encompasses factors such as the joint's current temperature, wear level, and movement speed, all of which affect the joint's torque bearing capacity. Through comprehensive analysis of performance parameters and real-time status, and using appropriate algorithms and empirical formulas, the torque safety threshold of each redundant joint at different times is determined, and corresponding safety margin rules are formulated. The safety margin rules clarify the relationship between the required torque and the safety threshold. For example, they may stipulate that the required torque must not exceed a certain percentage of the safety threshold, or that a certain difference must be maintained between the required torque and the safety threshold, to ensure that the robotic arm has sufficient safety margin in joint torque during movement, avoiding joint damage or loss of control due to excessive torque.
[0083] Finally, the demand torque curve is comprehensively checked using the safety margin rule to determine whether it meets the safety margin rule at all times. If the joint torque value corresponding to each moment on the demand torque curve is within the range allowed by the safety margin rule, that is, the demand torque is less than the safety threshold and meets the safety margin requirement, it indicates that the obstacle avoidance trajectory is safe and feasible in terms of torque. At this time, this obstacle avoidance trajectory can be used as an effective obstacle avoidance trajectory to guide the robotic arm to perform obstacle avoidance movements in the actual environment.
[0084] In the embodiments provided in this application, the required torque curve of the obstacle avoidance trajectory is determined based on the rigid body mechanics model, and the torque safety threshold and safety margin rules are set in combination with the performance parameters of redundant joints and the real-time status. Then, it is verified whether the required torque curve meets the rules to determine the effective obstacle avoidance trajectory. This can ensure that the redundant joints are always within the safe torque range during the obstacle avoidance process, thereby improving the safety and reliability of the obstacle avoidance movement.
[0085] Based on the above embodiments, in one exemplary embodiment provided in this application, the specific implementation process of the above redundant joint control method may further include steps S801 and S802, which are described in detail below:
[0086] Step S801: If the demand torque curve does not meet the safety margin rule at any time, then determine the parameter adjustment instruction corresponding to the obstacle avoidance trajectory based on the safety margin rule.
[0087] Step S802: Regenerate the obstacle avoidance trajectory based on the parameter adjustment command until the required torque curve of the obstacle avoidance trajectory satisfies the safety margin rule at any time.
[0088] Specifically, when it is detected that the demand torque curve does not meet the safety margin rule at all times, meaning that the joint torque exceeds the allowable range of the safety margin at at least one moment, the trajectory adjustment process must be initiated immediately. Specifically, based on the safety margin rule, a thorough analysis is conducted on the specific situations where the demand torque curve exceeds the safety range, identifying which joints have excessive torque at which times and to what extent. Then, combining this with the kinematic and dynamic characteristics of the robotic arm, the key parameters affecting the torque of these joints are determined, such as the positions of the trajectory's starting point, ending point, intermediate path points, and the velocity and acceleration of the trajectory in each segment. Based on these analysis results, precise parameter adjustment instructions are formulated.
[0089] Optionally, if the torque of a joint exceeds the limit at the end of the trajectory, the velocity or acceleration at the end of the trajectory can be adjusted appropriately, or the position of the path point at the end of the trajectory can be fine-tuned to reduce the torque requirement of the joint at that moment. Then, the determined parameter adjustment command is input into the trajectory generation algorithm to regenerate the obstacle avoidance trajectory. After trajectory generation, the required torque curve corresponding to the new obstacle avoidance trajectory is calculated again using the rigid body mechanics model and the performance parameters and real-time status information of redundant joints. Then, the newly generated required torque curve is comprehensively checked to determine whether it meets the safety margin rule at all times. If there are still times when it does not meet the rule, the process of determining the parameter adjustment command based on the safety margin rule, regenerating the obstacle avoidance trajectory, and calculating the required torque curve is repeated until the required torque curve of the obstacle avoidance trajectory meets the safety margin rule at all times.
[0090] In the embodiments provided in this application, when the demand torque curve does not meet the safety margin rule, parameter adjustment instructions are generated according to the rule and the obstacle avoidance trajectory is regenerated until the demand torque curve meets the safety margin rule at any time. This can dynamically optimize the obstacle avoidance trajectory, ensure that the redundant joints are always within the safe torque range during the obstacle avoidance process, and significantly improve the reliability and safety of the obstacle avoidance movement.
[0091] Please see Figure 3 , Figure 3 Flowchart of the redundant joint control method provided in this application Figure 2 ,like Figure 3As shown, the process involves acquiring end-effector position data corresponding to the end-effector positions affected by redundant joint motion within the joint space; determining the joint angle sequence of the redundant joints based on the end-effector position data; determining the obstacle avoidance trajectory corresponding to the redundant joints based on the joint angle sequence; performing time differentiation on the obstacle avoidance trajectory to determine the velocity function corresponding to the obstacle avoidance trajectory based on the differentiation result; determining the constraint set corresponding to the velocity function and optimizing the velocity function based on the constraint set to obtain the optimized velocity function; this includes mapping acceleration constraints from the continuous time domain to the acceleration constraints corresponding to discrete state nodes, and the acceleration constraints include velocity change rate constraints; optimizing the velocity function based on the velocity change rate constraints to obtain the optimized velocity function; determining the control strategy for the redundant joints based on the optimized velocity function, and driving the redundant joint motion based on the control strategy. For detailed implementation processes, please refer to the descriptions in the aforementioned embodiments, which will not be repeated here.
[0092] Figure 4 A schematic diagram of the redundant joint control device provided in this application is shown below. Figure 4 As shown, the redundant joint control device 40 provided in this embodiment includes: an acquisition module 410, used to acquire end-effector position data corresponding to the end-effector position affected by the movement of the redundant joint in the joint space; a determination module 420, used to determine the obstacle avoidance trajectory of the redundant joint based on the end-effector position data, and determine the velocity function corresponding to the obstacle avoidance trajectory; a constraint module 430, used to determine the constraint condition set corresponding to the velocity function, and optimize the velocity function based on the constraint condition set to obtain the optimized velocity function; and a control module 440, used to determine the control strategy of the redundant joint based on the optimized velocity function, and drive the movement of the redundant joint based on the control strategy.
[0093] In one possible implementation, the determining module 420 is further configured to: determine the joint angle sequence of the redundant joint based on the end-position data; determine the obstacle avoidance trajectory corresponding to the redundant joint based on the joint angle sequence; and perform time differentiation on the obstacle avoidance trajectory to determine the velocity function corresponding to the obstacle avoidance trajectory based on the differentiation result.
[0094] In one possible implementation, the constraint module 430 is further configured to divide the joint space into multiple discrete state points within the continuous motion range, and determine the constraint function corresponding to the redundant joints at each discrete state point; and construct a set of constraint conditions corresponding to the spatial parameters of the velocity function based on the constraint function.
[0095] In one possible implementation, the constraint module 430 is further configured to map the acceleration constraint from the continuous time domain to the acceleration constraint conditions corresponding to the discrete state nodes, wherein the acceleration constraint conditions include the velocity change rate constraint; and optimize the velocity function based on the velocity change rate constraint to obtain the optimized velocity function.
[0096] In one possible implementation, the constraint module 430 is further configured to: determine the task corresponding to each discrete state point and determine the task priority corresponding to the task; determine the weight information corresponding to the acceleration constraint based on the task priority; determine the weighting strategy corresponding to the constraint set based on the weight information; and optimize the velocity function based on the weighting strategy and the constraint set.
[0097] In one possible implementation, the determining module 420 is further configured to: determine the demand torque curve corresponding to the obstacle avoidance trajectory based on the rigid body mechanics model; determine the torque safety threshold of the redundant joint and the safety margin rule corresponding to the torque safety threshold based on the performance parameters and real-time status of the redundant joint; and if the demand torque curve satisfies the safety margin rule at any time, then the obstacle avoidance trajectory is regarded as a valid obstacle avoidance trajectory.
[0098] In one possible implementation, the determining module 420 is further configured to: if the demand torque curve does not meet the safety margin rule at any time, determine the parameter adjustment instruction corresponding to the obstacle avoidance trajectory based on the safety margin rule; and regenerate the obstacle avoidance trajectory based on the parameter adjustment instruction until the demand torque curve of the obstacle avoidance trajectory meets the safety margin rule at any time.
[0099] The redundant joint control device provided in this embodiment can execute the method provided in the above method embodiment. Its implementation principle and technical effect are similar, and will not be described in detail here.
[0100] Figure 5 A schematic diagram of the structure of the electronic device provided in this application. Figure 5 As shown, the electronic device 50 provided in this embodiment includes at least one processor 510 and a memory 520. Optionally, the device 50 further includes a communication component 530. The processor 510, memory 520, and communication component 530 are connected via a bus 540.
[0101] In a specific implementation, at least one processor 510 executes computer execution instructions stored in memory 520, causing at least one processor 510 to perform the above-described method.
[0102] The specific implementation process of processor 510 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0103] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0104] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0105] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0106] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0107] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.
[0108] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0109] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0110] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0111] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0112] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0113] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0114] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0115] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and 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 the invention is limited only by the appended claims.
Claims
1. A redundant joint control method, characterized in that, include: Obtain the end-effector position data corresponding to the end-effector position affected by redundant joint motion within the joint space; The obstacle avoidance trajectory of the redundant joint is determined based on the end position data, and the velocity function corresponding to the obstacle avoidance trajectory is determined. Determine the set of constraints corresponding to the velocity function, and optimize the velocity function based on the set of constraints to obtain the optimized velocity function; The control strategy for the redundant joint is determined based on the optimized velocity function, and the redundant joint is driven to move based on the control strategy.
2. The method as described in claim 1, characterized in that, The step of determining the obstacle avoidance trajectory of the redundant joint based on the end-effector position data, and determining the velocity function corresponding to the obstacle avoidance trajectory, includes: The joint angle sequence of the redundant joint is determined based on the end-position data; The obstacle avoidance trajectory corresponding to the redundant joint is determined based on the joint angle sequence. The time derivative of the obstacle avoidance trajectory is calculated to determine the velocity function corresponding to the obstacle avoidance trajectory based on the derivative result.
3. The method as described in claim 2, characterized in that, The determination of the constraint set corresponding to the velocity function includes: Within the continuous motion range, the joint space is divided into multiple discrete state points, and the constraint function corresponding to the redundant joint at each discrete state point is determined. Based on the constraint function, construct the set of constraint conditions corresponding to the spatial parameters of the velocity function.
4. The method as described in claim 3, characterized in that, The constraint set includes acceleration constraints, and optimizing the velocity function based on the constraint set to obtain the optimized velocity function includes: The acceleration constraint is mapped from the continuous time domain to the acceleration constraint condition corresponding to the discrete state node, and the acceleration constraint condition includes the velocity change rate constraint. The velocity function is optimized based on the velocity change rate constraint to obtain the optimized velocity function.
5. The method as described in claim 4, characterized in that, The method further includes: Determine the task corresponding to each discrete state point, and determine the task priority corresponding to the task; The weight information corresponding to the acceleration constraint is determined based on the task priority. Based on the weight information, a weighting strategy corresponding to the constraint set is determined, and the velocity function is optimized based on the weighting strategy and the constraint set.
6. The method as described in claim 2, characterized in that, The method further includes: The required torque curve corresponding to the obstacle avoidance trajectory is determined based on the rigid body mechanics model. Based on the performance parameters and real-time status of the redundant joints, the torque safety threshold of the redundant joints and the safety margin rule corresponding to the torque safety thresholds are determined. If the required torque curve satisfies the safety margin rule at any given time, then the obstacle avoidance trajectory is considered a valid obstacle avoidance trajectory.
7. The method as described in claim 6, characterized in that, The method further includes: If the demand torque curve does not meet the safety margin rule at any time, then the parameter adjustment instruction corresponding to the obstacle avoidance trajectory is determined based on the safety margin rule. The obstacle avoidance trajectory is regenerated based on the parameter adjustment instructions until the required torque curve of the obstacle avoidance trajectory satisfies the safety margin rule at any given time.
8. A redundant joint control device, characterized in that, The device includes: The acquisition module is used to acquire the end-effector position data corresponding to the end-effector position affected by redundant joint movements within the joint space; The determination module is used to determine the obstacle avoidance trajectory of the redundant joint based on the end position data, and to determine the velocity function corresponding to the obstacle avoidance trajectory; The constraint module is used to determine the set of constraint conditions corresponding to the velocity function, and optimize the velocity function based on the set of constraint conditions to obtain the optimized velocity function; The control module is used to determine the control strategy of the redundant joint based on the optimized velocity function, and drive the redundant joint to move based on the control strategy.
9. An electronic device, characterized in that, include: Memory, processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory, causing the processor to perform the method as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1 to 7.