Method and apparatus for trajectory correction of a robot arm
Patent Information
- Application Number
- CN202610812807.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-06-05
- Publication Date
- 2026-08-28
AI Technical Summary
依赖故障诊断观测器的在线估计结果,在估计出现延迟或误差较大时易导致控制律重构不及时,在出现更大偏移后仍旧用之前的控制律进行校正,导致校正结果不准确;被动容错控制,在出现偏移时,采用预设的固定参数应对故障,在故障严重时,设定的参数可能无法达到让机械臂按照原轨迹正常运行的效果,导致校正准确性较低
[0016] The method and apparatus for correcting the trajectory of a robotic arm according to embodiments of this application can first acquire real-time motion data of each joint of the robotic arm and subtract it from the desired motion data to obtain motion error data, and then determine the offset of each joint based on the motion error data. On this basis, offset correction coefficients are calculated using the desired motion data, motion error data, and real-time motion data. An estimated value reflecting the influence of the current joint's physical properties on the driving torque is obtained through a preset correlation between the offset, the offset correction coefficient, and the estimated value of the physical driving parameters. Finally, the control torque is determined by comprehensively considering the estimated value, the influence coefficient, the motion error data, and the offset, and the robotic arm is controlled accordingly for trajectory correction. Therefore, this method, through error-driven offset extraction, model-based correction coefficient calculation, and online estimation of physical parameters, enables the control torque to adaptively compensate for actual trajectory deviations, thereby effectively improving the accuracy of robotic arm trajectory correction.
Smart Images

Figure CN122645299A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of automation control technology, and in particular relates to a method and apparatus for correcting the trajectory of a robotic arm. Background Technology
[0002] In some scenarios, robots often need to be equipped with rotary joint robotic arms to complete actions. However, due to prolonged wear and tear or other reasons, the robotic arm may malfunction, causing deviations in its movement trajectory.
[0003] Existing technologies for offset adjustment in robotic arm faults are divided into two categories: active and passive. Active control uses a fault diagnosis observer to estimate the fault signals of actuators or sensors online. When a system fault is detected, the control law is reconstructed in real time based on the estimated fault information. The control law is used to adjust controller parameters, switch control structures, or add compensation terms to actively offset the impact of the fault on system performance, thereby maintaining stable system operation and trajectory tracking accuracy. However, relying on the online estimation results of the fault diagnosis observer can lead to untimely control law reconstruction when there is a delay or large error in the estimation. Even after a larger offset occurs, the previous control law is still used for correction, resulting in inaccurate correction results. Passive fault-tolerant control uses preset fixed parameters to deal with the fault when an offset occurs. In severe faults, the set parameters may not be able to achieve the effect of allowing the robotic arm to operate normally along the original trajectory, resulting in low correction accuracy.
[0004] In summary, existing technologies suffer from low accuracy in trajectory correction when a robotic arm malfunctions and causes trajectory deviation. Summary of the Invention
[0005] This application provides a method and apparatus for correcting the trajectory of a robotic arm, which can improve the accuracy of the correction.
[0006] In a first aspect, embodiments of this application provide a method for correcting the trajectory of a robotic arm, the method comprising: Acquire real-time motion data of each joint of the robotic arm; The difference between the real-time motion data of each joint and the preset expected motion data is calculated to obtain the motion error data of each joint. Based on motion error data, determine the offset of each joint of the robotic arm; Based on the expected motion data, motion error data, and real-time motion data, determine the offset correction coefficient; Based on the pre-defined correlation between offset, offset correction coefficient, and estimated values of physical drive parameters of each joint, the estimated values of physical drive parameters corresponding to the offset and influence coefficient of each joint are determined; wherein, the estimated values of physical drive parameters characterize the influence of the physical properties of the current posture of each joint of the robotic arm on the joint drive torque. The control torque is determined based on the estimated values, influence coefficients, motion error data, and offsets of each joint. Based on the control torque, the trajectory correction of each joint of the robotic arm is performed.
[0007] In one feasible implementation, the motion error data includes position error data and velocity error data; based on the motion error data, the offset of each joint of the robotic arm is determined, including: Based on the position error data of each joint, the position error amplification saturation value of each joint is determined using a pre-constructed error amplification saturation function. For each joint, the offset is determined based on the position error amplification saturation value and velocity error data.
[0008] In one feasible implementation, the error amplification saturation function includes an error amplification function and an error saturation function; based on the position error data of each joint, the position error amplification saturation value is determined using the pre-constructed error amplification saturation function, including: If the absolute value of the position error data is less than a preset threshold, the position error amplification saturation value is determined by the error amplification function. If the absolute value of the position error data is greater than or equal to a preset threshold, the position error amplification saturation value is determined by the error saturation function.
[0009] In one feasible implementation, the offset correction coefficient is determined based on the desired motion data, motion error data, and real-time motion data, including: The error amplification saturation values of each joint are transformed into column vectors to obtain the error transformation vector; The difference between the desired velocity data in the desired motion data and the product of a constant positive definite diagonal matrix and an error transformation vector is taken as the desired velocity vector; The difference between the desired acceleration data in the desired motion data and the product of the positive definite diagonal matrix and the error diagonal matrix is taken as the desired acceleration vector; the error diagonal matrix is obtained by differentiating the error transformation vector. The offset correction coefficient is determined based on real-time motion data, the desired velocity vector, and the desired acceleration vector.
[0010] In one feasible implementation, the control torque is determined based on the estimated values of each joint, influence coefficients, motion error data, and offset, including: The first component of the control torque is determined based on the correspondence between the estimated value, the offset correction coefficient, and the motion error data. The second component of the control torque is determined based on the pre-defined correspondence between the minimum correctable health index, the first component of the control torque, and the offset. The control torque is determined based on the first component and the second component of the control torque.
[0011] In one feasible implementation, the first component of the control torque is determined based on the correspondence between the estimated value, the offset correction coefficient, and the motion error data, including: Based on the correspondence between the estimated value, offset correction coefficient, motion error data, and the maximum value of external disturbance, the first component of the control torque is determined; the maximum value of external disturbance is negatively correlated with the first component of the control torque.
[0012] In one feasible implementation, the method further includes: By controlling the torque, the health indicators of the robotic arm joints are determined; the control torque is negatively correlated with the health indicators; the health indicators characterize the health status of the robotic arm joints. An abnormal warning is issued when health indicators are below the minimum correctable health indicator.
[0013] In one feasible implementation, based on the correspondence between offset and offset correction coefficient, the physical drive parameters of each joint are estimated to obtain estimated values of the physical drive parameters, including: The parameter variation law is determined based on the correspondence between the offset correction coefficient, the preset diagonal positive definite matrix, and the offset. Parameter variation law for: In the formula, For the law of parameter variation, T It is a diagonal positive definite matrix. s This is the offset; By taking the inverse derivative of the law of parameter variation, we obtain the estimated value.
[0014] In one feasible implementation, the method further includes: By using preset boundary layer parameter values, discontinuities in the first and second components of the control torque are made continuous, which is used to continuously control the trajectory correction of each joint of the robotic arm.
[0015] Secondly, embodiments of this application provide a device for correcting the trajectory of a robotic arm, the device comprising: The acquisition module is used to acquire real-time motion data of each joint of the robotic arm; The error calculation module is used to calculate the difference between the real-time motion data of each joint and the preset expected motion data to obtain the motion error data of each joint. The offset determination module is used to determine the offset of each joint of the robotic arm based on motion error data. The correction determination module is used to determine the offset correction coefficient based on each expected motion data, motion error data, and real-time motion data; The estimation module is used to determine the estimated values of the physical driving parameters corresponding to the offset and influence coefficient of each joint based on the preset correlation between the offset, offset correction coefficient and the estimated values of the physical driving parameters of each joint; wherein, the estimated value of the physical driving parameters characterizes the influence value of the physical properties of the current posture of each joint of the robotic arm on the joint driving torque. The torque determination module is used to determine the control torque based on the estimated values of each joint, influence coefficients, motion error data, and offset. The control module is used to control the trajectory correction of each joint of the robotic arm based on the control torque.
[0016] The method and apparatus for correcting the trajectory of a robotic arm according to embodiments of this application can first acquire real-time motion data of each joint of the robotic arm and subtract it from the desired motion data to obtain motion error data, and then determine the offset of each joint based on the motion error data. On this basis, offset correction coefficients are calculated using the desired motion data, motion error data, and real-time motion data. An estimated value reflecting the influence of the current joint's physical properties on the driving torque is obtained through a preset correlation between the offset, the offset correction coefficient, and the estimated value of the physical driving parameters. Finally, the control torque is determined by comprehensively considering the estimated value, the influence coefficient, the motion error data, and the offset, and the robotic arm is controlled accordingly for trajectory correction. Therefore, this method, through error-driven offset extraction, model-based correction coefficient calculation, and online estimation of physical parameters, enables the control torque to adaptively compensate for actual trajectory deviations, thereby effectively improving the accuracy of robotic arm trajectory correction. Attached Figure Description
[0017] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0018] Figure 1 This is a flowchart illustrating a method for correcting the trajectory of a robotic arm provided in an embodiment of this application; Figure 2 This is a schematic diagram of the error amplification saturation function calculation process provided in the embodiments of this application; Figure 3 This is a schematic diagram illustrating the effect of the error amplification saturation function with error e provided in the embodiments of this application; Figure 4 The robotic arm dynamics modeling and design process provided in this application embodiment includes: Figure 5This is a schematic diagram of the control flow of the adaptive fault-tolerant control provided in the embodiments of this application; Figure 6 This is a schematic diagram of the experimental platform structure provided in the embodiments of this application; Figure 7 This is a schematic diagram of the motion data of joint 1 in the control method provided in this application embodiment; Figure 8 This is a schematic diagram of the motion data of joint 2 in the control method provided in this application embodiment. Figure 9 This is a schematic diagram of the structure of a robotic arm trajectory correction device provided in an embodiment of this application; Figure 10 This is a schematic diagram of the structure of a robotic arm trajectory correction device provided in an embodiment of this application. Detailed Implementation
[0019] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.
[0020] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes the element.
[0021] It should be noted that the acquisition, storage, use, and processing of data in this application embodiment all comply with the relevant provisions of national laws and regulations.
[0022] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.
[0023] As the background technology indicates, inspection robots used in communication equipment rooms often employ a combination of lifting columns and rotating pan-tilt units to meet the shooting requirements at different heights, thus fulfilling basic visual inspection needs. Other equipment room inspection robots are equipped with rotary joint robotic arms to meet the needs of more complex and precise applications such as handling, opening and closing doors, and grasping. These robotic arms typically use Proportional-Integral-Derivative (PID) control for trajectory tracking. PID control, as a classic feedback control method, exhibits generally satisfactory performance in practical applications due to its independence from precise system models, simple structure, and ease of implementation. This control method effectively addresses various disturbances and errors encountered by the robotic arm during movement by adjusting the proportional (P), integral (I), and derivative (D) parameters in real time, ensuring stable operation along a preset trajectory. However, when robotic arms perform high-precision, fine-tuning operations or rapid trajectory adjustments in dynamic environments, PID control, relying on a linear control framework, struggles to achieve rapid convergence of trajectory tracking errors and steady-state accuracy optimization. This is especially true when facing uncertainties in model parameters (such as load variations), as its fixed-parameter adjustment mechanism cannot match real-time changes in system dynamic characteristics, leading to a significant decline in control performance. Furthermore, PID control lacks sufficient fault tolerance in scenarios involving partial actuator failure. In unmanned operations in machine rooms, prolonged high-load operation of robotic arm actuators may cause partial failures. PID control lacks robust design for actuator health conditions and cannot offset the impact of failures through active parameter estimation or sliding surface reconstruction, resulting in deteriorated system stability or even loss of control.
[0024] Because robotic arms now need to perform more precise operations, they are equipped with rotary joints. However, due to long-term wear or malfunctions, the robotic arm may deviate from its trajectory when performing actions. Therefore, trajectory correction is required to ensure that the robotic arm can complete its tasks.
[0025] Existing technologies for addressing trajectory deviation issues caused by robotic arms malfunctions primarily employ two fault-tolerant adjustment methods: active and passive. The active method utilizes a fault diagnosis observer to estimate the fault signals of actuators or sensors in real time and reconstructs the control law online based on the estimation results. It actively counteracts the fault's impact by adjusting controller parameters, switching control structures, or adding compensation terms to maintain stable tracking. Specifically, active fault-tolerant control is complex to implement. The design requires robustness of the reconfigurable controller, fault detection and diagnosis module, and controller reconstruction mechanism, necessitating significant computational resources and presenting challenges in robustness analysis. It relies on the fault diagnosis observer to estimate the faulty component online. If the diagnostic delay or error is large, it can lead to untimely control law reconstruction, affecting system stability. In other words, this method is limited by the observer's estimation accuracy and response speed. If there is a delay or deviation in the estimation, the control law reconstruction cannot keep up with the fault changes, resulting in continued use of the original control law for correction even as the deviation increases, leading to deviations in the correction results.
[0026] The passive approach directly uses pre-set fixed parameters for fault tolerance when an offset occurs. Specifically, while passive fault-tolerant control is designed based on robust control principles, requiring no fault diagnosis or control law reconfiguration and exhibiting low computational complexity, it has significant limitations: it relies on a single fixed controller to handle faults, and cannot adaptively adjust the control strategy when actuators experience varying degrees of failure. For example, the fixed controller can compensate for minor faults, but in cases of severe faults, the controller's insensitivity translates into insufficient robustness. This causes the system's fault compensation capability to decrease significantly as the fault severity increases, making it difficult to maintain high-precision trajectory tracking. In other words, when the fault severity exceeds the preset range, the fixed parameters cannot provide sufficient compensation, preventing the robotic arm from operating normally along its original trajectory, and the accuracy of correction cannot be guaranteed.
[0027] In summary, existing technologies suffer from low accuracy in correcting the trajectory of robotic arms when the trajectory deviates due to malfunctions.
[0028] To address the problems in the prior art, this application provides a method and apparatus for correcting the trajectory of a robotic arm.
[0029] This application is particularly applicable to an n-DOF rotary manipulator for a computer room inspection robot. In computer room inspection tasks, the trajectory tracking accuracy of the manipulator directly affects the inspection efficiency and accuracy. However, uncertainties in the robot system model and actuator failures can severely affect the trajectory tracking effect. Therefore, the technical concept of this application combines adaptive technology and passive fault-tolerant control technology. Specifically, it acquires real-time motion data of each joint of the manipulator, calculates the difference between the data and the preset expected motion data to obtain motion error data, and determines the offset of each joint accordingly. Then, based on the expected motion data, motion error data, and real-time motion data, it determines the offset correction coefficient, and uses the correlation between the preset offset, offset correction coefficient, and the estimated values of the physical drive parameters of each joint to obtain an estimated value characterizing the influence of the current posture physical properties on the drive torque. Finally, it determines the control torque based on the estimated value, influence coefficient, motion error data, and offset to control the trajectory correction of each joint of the manipulator. This concept does not rely on an additional fault diagnosis module. Instead, it directly generates the control torque for correction by linking the offset, offset correction coefficient and physical drive parameter estimates driven by motion error data, thereby achieving accurate and adaptive trajectory correction.
[0030] The method for correcting the trajectory of a robotic arm provided in the embodiments of this application will be described below.
[0031] Constructing a dynamic model of the robot is the theoretical foundation for subsequent calculations of the robotic arm's motion. The parameters for subsequent calculations are closely related to the model, so it is necessary to first construct a dynamic model of the robot, as shown in formula (1): (1) In the formula, M(q) is the positive definite inertia matrix, C(q, Let g(q) be the matrix of Coriolis force and centrifugal force, and g(q) be the gravity vector. A positive definite health index matrix describing the health status of the actuator. Let d be the control torque vector, d be the external bounded disturbance vector, and dM be the upper bound of the external disturbance. q Real-time joint position, For real-time speed, For real-time acceleration.
[0032] The health indicator matrix is shown in formula (2): (2) In the formula, Indicates health factors. If This indicates that the first The actuators of each joint are perfectly healthy; if This indicates that the first Some joint actuators may experience partial failure. Assume there exists a known lower bound for a health factor. , making Established.
[0033] Based on the completion of dynamic modeling of the robotic arm, a method for correcting the robotic arm trajectory is implemented.
[0034] Figure 1 A flowchart illustrating a method for correcting the trajectory of a robotic arm according to an embodiment of this application is shown. Figure 1 As shown, the method may include the following steps S110-S170: S110 acquires real-time motion data of each joint of the robotic arm.
[0035] Real-time motion data can include joint position, joint velocity, and joint acceleration.
[0036] As an example, sensors installed at each joint of a robotic arm can be used to collect motion status information such as joint angles and angular velocities in real time, thereby obtaining real-time motion data for each joint.
[0037] In this way, by acquiring real-time motion data of each joint of the robotic arm, an accurate and real-time state information basis can be provided for subsequent steps, ensuring the reliability of motion error calculation.
[0038] S120: Calculate the difference between the real-time motion data of each joint and the preset expected motion data to obtain the motion error data of each joint.
[0039] Among them, the expected motion data refers to the pre-set motion state parameters that each joint of the robotic arm should achieve under the ideal trajectory.
[0040] As an example, the real-time motion data of each joint can be subtracted from the pre-set expected motion data one by one to obtain motion error data reflecting the motion deviation of each joint.
[0041] Specifically, a joint position tracking error vector is introduced to measure the error of trajectory tracking control. e Speed tracking error vector and acceleration tracking error The specific definitions are shown in formulas (3) to (5): e= (3) = (4) = (5) In the formula, For the desired joint position, For the desired velocity of the joint, The desired acceleration of the joint.
[0042] In this way, by calculating the difference between real-time motion data and preset expected motion data, the actual motion deviation of each joint of the robotic arm can be quantified into specific motion error data, thereby providing an accurate input basis for the subsequent determination of offset and trajectory correction, ensuring that the correction process has a clear error driving signal.
[0043] S130, based on motion error data, determines the offset of each joint of the robotic arm.
[0044] As an example, based on the calculated motion error data, the offset that each joint of the robotic arm needs to compensate for in the current state can be determined through a preset mapping relationship or error conversion rule. This offset is used to characterize the degree of deviation between the actual position and the expected position of the joint.
[0045] Specifically, first define the error transformation vector. and diagonal matrix As shown in formulas (6) and (7): (6) (7) In the formula, nonlinear function The first derivative with respect to time, Represents a diagonal matrix. Represents the trajectory tracking position error vector of the system The Each component.
[0046] use Define the sliding mode vector s as the offset, as shown in formula (8): (8) in, It is a positive definite invariant diagonal matrix.
[0047] Furthermore, for subsequent calculations, sliding mode vectors are used. The first derivative with respect to time is shown in formula (9): (9) In this way, by determining the offset of each joint based on motion error data, the original motion deviation can be transformed into a compensation benchmark that can be directly used for subsequent torque calculation, giving trajectory correction a clear target and thus improving the pertinence and effectiveness of the correction.
[0048] S140, based on each desired motion data, motion error data and real-time motion data, determines the offset correction coefficient.
[0049] As an example, the expected motion data, motion error data, and real-time motion data of each joint can be comprehensively considered, and an offset correction coefficient for adjusting the offset can be calculated through a preset functional relationship or algorithm model.
[0050] Specifically, define and correct the reference speed. and corrected reference acceleration As shown in formulas (10) to (11): (10) (11) To complete the construction of the open-loop system equations for the robotic arm, the offset is... and its first derivative Write it in the following form: (12) The result obtained from equation (10) and Substituting into equation (1), we can obtain equation (13): (13) Further rearranging equation (11), we get: (14) Applying the linear parameterization property of nonlinear robot systems (the system's dynamic equations can be decomposed into a linear product of a known regression matrix and unknown constant parameter vectors), the open-loop equations of the n-DOF robotic arm system can be obtained as follows: (15) in, Let be a known function containing the actual position and velocity of the robotic arm joints, and the desired velocity and acceleration. For convenience, it will be abbreviated as for the following description. As an offset correction factor.
[0051] In this way, by comprehensively considering the expected motion data, motion error data, and real-time motion data to determine the offset correction coefficient, the coefficient can fully reflect the dynamic difference between the current motion state and the expected trajectory, thereby providing a correction basis that matches the real-time operating conditions for subsequent physical driving parameter estimation and improving the accuracy of parameter estimation.
[0052] S150, based on the preset correlation between offset, offset correction coefficient and estimated values of physical drive parameters of each joint, determines the estimated values of physical drive parameters corresponding to the offset and influence coefficient of each joint; wherein, the estimated values of physical drive parameters characterize the influence value of the physical properties of the current posture of each joint of the robotic arm on the joint drive torque.
[0053] As an example, the mathematical relationship between the pre-established offset, offset correction coefficient and physical drive parameters can be used to substitute the offset and offset correction coefficient of each joint obtained at the moment into the relationship, thereby solving for the estimated value of the corresponding physical drive parameter. This estimated value is used to characterize the degree of influence of the physical properties of each joint on the drive torque under the current attitude.
[0054] In this way, by establishing the correlation between the preset offset, offset correction coefficient and the estimated value of the physical drive parameters, the estimated value characterizing the influence of the physical properties of each joint on the drive torque can be decoupled from the current motion deviation. This allows the parameter estimation to be independent of offline calibration or prior knowledge, enabling dynamic adaptation of physical properties under different load, wear or fault conditions, and providing a reliable parameter basis for the accurate calculation of the subsequent control torque.
[0055] S160 determines the control torque based on the estimated values of each joint, influence coefficients, motion error data, and offset.
[0056] As an example, the estimated values of the physical drive parameters of each joint, the offset correction coefficient, the motion error data, and the offset can be used as inputs. Based on the preset control law, a comprehensive calculation is performed to generate the control torque used to drive the motion of each joint actuator.
[0057] In this way, by combining the estimated values of each joint, the influence coefficient, the motion error data and the offset to determine the control torque, the physical property estimation, error correction and offset compensation can be uniformly incorporated into the torque calculation framework, so that the final output control torque can correct the motion trajectory of the robotic arm.
[0058] The S170 uses control torque to control the trajectory correction of each joint of the robotic arm.
[0059] As an example, the generated control torque can be output to the actuators of each joint, driving the corresponding joints to adjust according to the corrected motion trajectory, so that the actual movement of the robotic arm gradually approaches the desired movement, thereby achieving trajectory correction.
[0060] In this way, by applying the determined control torque to the actuators of each joint of the robotic arm, each joint can be driven to run according to the corrected motion trajectory, so that the actual motion data gradually approaches the desired motion data, thereby achieving effective correction of trajectory deviation and completing the trajectory correction of the robotic arm.
[0061] In summary, this embodiment first acquires real-time motion data of each joint of the robotic arm and subtracts it from the desired motion data to obtain motion error data. Then, based on the motion error data, it determines the offset of each joint. On this basis, it calculates an offset correction coefficient using the desired motion data, motion error data, and real-time motion data. Through a preset correlation between the offset, the offset correction coefficient, and the estimated values of the physical drive parameters, it obtains an estimate reflecting the influence of the current joint's physical properties on the drive torque. Finally, it comprehensively considers the estimated value, the influence coefficient, the motion error data, and the offset to determine the control torque, and uses this torque to control the robotic arm for trajectory correction. Therefore, this method, through error-driven offset extraction, model-based correction coefficient calculation, and online estimation of physical drive parameters, enables the control torque to adaptively compensate for actual trajectory deviations, thereby effectively improving the accuracy of robotic arm trajectory correction.
[0062] In some embodiments, S130 may include steps S1301-S1302: S1301, based on the position error data of each joint, uses a pre-constructed error amplification saturation function to determine the position error amplification saturation value of each joint.
[0063] S1302, for each joint, determines the offset based on the position error amplification saturation value and velocity error data.
[0064] As an example, for the position error data of each joint, a pre-built error amplification saturation function can be called to process it and obtain the corresponding position error amplification saturation value; then, this amplification saturation value is combined with the velocity error data of the same joint to determine the offset of the joint.
[0065] In this way, by performing a nonlinear transformation on the position error data through the error amplification saturation function, the position error can be amplified when it is small, so that the offset remains highly sensitive to small deviations to speed up the response. When the position error is large, it can be saturated to avoid excessive offset leading to control overshoot or actuator saturation. At the same time, the offset can be determined together with the velocity error data, thereby improving the adaptability of the offset under different error amplitudes and the transient performance of trajectory correction.
[0066] In some embodiments, such as Figure 2 As shown, S1301 may include steps S13011-S13012: S13011, when the absolute value of the position error data is less than a preset threshold, the position error amplification saturation value is determined by the error amplification function.
[0067] S13012, when the absolute value of the position error data is greater than or equal to a preset threshold, the position error amplification saturation value is determined by the error saturation function.
[0068] As an example, a threshold can be preset to determine the amplitude range of the position error: when the absolute value of the position error data of a certain joint is less than the preset threshold, the error amplification function is called to calculate the position error amplification saturation value of the joint; when the absolute value of the position error data is greater than or equal to the preset threshold, the error saturation function is called to calculate the position error amplification saturation value of the joint.
[0069] The specific calculation steps are as follows: Define a nonlinear function, as shown in formula (16): (16) in, , which are two preset adjustment factors.
[0070] right Taking the derivative, we can obtain the following nonlinear function. As an error amplification saturation function: (17) in, It is a standard symbolic function.
[0071] To demonstrate more intuitively Its characteristics Figure 3 When and hour The graph of the function.
[0072] Depend on Figure 3 It can be seen that when For error When, nonlinear function It has the function of amplifying small errors and saturating large errors, which can improve the transient performance of trajectory tracking control.
[0073] In this way, by selecting either the error amplification function or the error saturation function based on the relationship between the absolute value of the position error and the preset threshold, the position error amplification saturation value can be calculated. When the error is small, the amplification function can be used to improve the sensitivity of small deviations to accelerate convergence. When the error is large, the saturation function can be used to limit the output amplitude to avoid excessive control quantity causing overshoot or actuator saturation, thus balancing the speed and stability of trajectory correction.
[0074] In some embodiments, S140 may include steps S1401-S1404: S1401 transforms the error amplification saturation values of each joint into column vectors to obtain the error transformation vector.
[0075] S1402, the difference between the desired velocity data in the desired motion data and the product of a constant positive definite diagonal matrix and an error transformation vector is taken as the desired velocity vector.
[0076] S1403 takes the difference between the desired acceleration data in the desired motion data and the product of the positive definite diagonal matrix and the error diagonal matrix as the desired acceleration vector.
[0077] The error diagonal matrix is obtained by differentiating the error transformation vector.
[0078] S1404 determines the offset correction coefficient based on real-time motion data, desired velocity vector, and desired acceleration vector.
[0079] The offset correction coefficient is a regression matrix used to correlate real-time motion data, expected motion data, and physical drive parameter estimates, and is used to characterize the mapping relationship between the current motion state of the robotic arm and the model parameter estimates.
[0080] As an example, the error amplification saturation values of each joint can be arranged into column vectors according to the joint order to obtain the error transformation vector. Then, the expected velocity data in the expected motion data is subtracted from the product of a constant positive definite diagonal matrix and the error transformation vector to obtain the expected velocity vector. At the same time, the expected acceleration data is subtracted from the product of a positive definite diagonal matrix and the error diagonal matrix (obtained by differentiating the error transformation vector) to obtain the expected acceleration vector. Then, based on the collected real-time motion data and the calculated expected velocity and expected acceleration vectors, the offset correction coefficient is determined by constructing a regression matrix.
[0081] In this way, by arranging the error amplification saturation values into error transformation vectors, and constructing the desired velocity vector and desired acceleration vector based on this, the position information after nonlinear error transformation can be integrated into the correction of the desired motion parameters. This makes the offset correction coefficient determined accordingly more sensitive and adaptable to trajectory deviation, laying a data foundation for the accurate estimation of subsequent physical driving parameters.
[0082] In some embodiments, S160 may include steps S1601-S1603: S1601, determine the first component of the control torque based on the correspondence between the estimated value, the offset correction coefficient, and the motion error data.
[0083] S1602, determine the second component of the control torque based on the preset correspondence between the minimum correctable health index, the first component of the control torque, and the offset.
[0084] S1603, determine the control torque based on the first component and the second component of the control torque.
[0085] As an example, the first component of the control torque can be calculated based on the estimated values of the physical driving parameters, the regression matrix used as the offset correction coefficient, and the preset correspondence between motion error data; then, the second component of the control torque can be calculated based on the preset minimum correctable health index, the correspondence between the first component and the offset; finally, the first component and the second component are superimposed to obtain the final control torque.
[0086] The specific calculation steps are as follows: construct the control torque as shown in formula (18): (18) In the formula, the first component of the control torque and the second component of the control torque As shown in formulas (19) to (20): (19) (20) In the formula, Both are constant diagonal gain matrices. This is the estimated maximum value of external disturbance. These are the estimated values of the unknown parameters of the system model.
[0087] In this way, by decomposing the control torque into a first component determined based on the estimated value, offset correction coefficient, and motion error data, and a second component determined based on the preset correctable minimum health index, the first component, and the offset, the first component can be responsible for model uncertainty compensation and motion error correction, while the second component achieves passive fault tolerance with a fixed structure. Thus, without the need for real-time fault diagnosis, it can simultaneously cope with complex operating conditions such as unknown parameters, external disturbances, and partial actuator failure, thereby improving the adaptability of the control torque and the robustness of trajectory correction.
[0088] In some embodiments, S1601 may include: Based on the correspondence between the estimated value, offset correction coefficient, motion error data, and the maximum value of external disturbance, the first component of the control torque is determined; the maximum value of external disturbance is negatively correlated with the first component of the control torque.
[0089] As an example, the first component of the control torque can be calculated based on the correspondence between the estimated values of the physical drive parameters, the offset correction coefficient, the motion error data, and the preset maximum value of external disturbances. The larger the maximum value of the external disturbance, the smaller the first component of the control torque becomes, in order to balance disturbance suppression and energy consumption.
[0090] In this way, by introducing a negative correlation between the maximum value of external disturbance and the first component of control torque, the output of the first component can be appropriately reduced when the external disturbance is large, avoiding actuator saturation or system oscillation caused by overcompensation. At the same time, sufficient compensation effect is maintained when the disturbance is small, so that the control torque has the ability to adaptively adjust to external disturbances, improving the anti-disturbance performance of trajectory correction and system stability.
[0091] In some embodiments, the method may further include steps S180-S190: S180 determines the health indicators of the robotic arm joints by controlling the torque.
[0092] Among them, the control torque is negatively correlated with the health index, which represents the health status of the robotic arm joints.
[0093] S190 issues an abnormal warning when health indicators are below the minimum correctable health indicator.
[0094] As an example, the health index of the robotic arm joint can be determined in reverse based on the generated control torque. The larger the control torque, the worse the joint's health status, meaning that the health index is negatively correlated with the control torque. When the health index is less than the preset minimum correctable health index, it indicates that the joint has exceeded the fault-tolerant correction range. At this time, the system issues an abnormal warning to the administrator to prompt maintenance.
[0095] In this way, by controlling the torque in reverse to determine the health index of the joint, and by comparing the health index with the lowest calibrable health index, an abnormal warning can be issued in time when the actuator performance deteriorates beyond the tolerance range, thereby avoiding equipment damage or trajectory loss due to continued operation under serious faults, and improving the safety and maintainability of the system.
[0096] In some embodiments, S150 may include steps S1501-S1502: S1501, determine the parameter variation law based on the offset correction coefficient, the preset diagonal positive definite matrix and the correspondence between the offset and the offset.
[0097] Among them, the law of parameter variation As shown in formula (21): (twenty one) In the formula, For the law of parameter variation, T It is a diagonal positive definite matrix. s This is the offset; S1502, take the inverse derivative of the parameter variation law to obtain the estimated value.
[0098] As an example, the parameter variation law can be calculated based on the preset relationship between the offset correction coefficient, the preset diagonal positive definite matrix, and the currently determined offset; then, the parameter variation law can be integrated or inversely derived to obtain the estimated value of the physical driving parameters.
[0099] In this way, by determining the parameter variation law through the offset correction coefficient, the preset diagonal positive definite matrix and the offset, and obtaining the estimated value by taking the inverse derivative of the parameter variation law, the online adaptive update of the physical drive parameters can be realized. The estimated value is dynamically adjusted according to the real-time motion state and deviation of the robotic arm, without the need for offline calibration or prior knowledge. This improves the adaptability to model uncertainty, load changes and actuator performance degradation, and provides a real-time and reliable parameter basis for the accurate calculation of control torque.
[0100] In some embodiments, the method may further include: By using preset boundary layer parameter values, discontinuities in the first and second components of the control torque are made continuous, which is used to continuously control the trajectory correction of each joint of the robotic arm.
[0101] The boundary layer parameter value is a positive threshold value set to replace the discontinuous sign function (sgn) in sliding mode control, used for its continuous processing. It determines the thickness of the boundary layer: in regions where the absolute value of s is less than this parameter value, a continuous saturation function or a hyperbolic tangent function replaces the sign function; in regions where the absolute value of s is greater than or equal to this parameter value, the saturation characteristics of the sign function are retained. By appropriately selecting the boundary layer parameter value, high-frequency chattering can be eliminated while maintaining robustness to trajectory deviations, resulting in smooth control torque output. As an example, preset boundary layer parameter values can be obtained and applied to the discontinuous terms in the first and second components of the control torque. By replacing them with continuous functions, the discontinuous terms can be made continuous, thereby obtaining a continuous control torque. This torque can then be used to continuously control the joints of the robotic arm to perform trajectory correction, eliminating the chattering phenomenon caused by discontinuous switching.
[0102] In this way, by using boundary layer parameter values to make the discontinuous terms in the control torque continuous, the high-frequency chattering phenomenon caused by discontinuous switching of sign functions and other factors can be effectively eliminated, making the control torque output smoother, while retaining the robust compensation capability for trajectory deviations. This improves the stability and control quality of the robotic arm operation and meets the needs of practical engineering applications.
[0103] Based on the above-described method for correcting the trajectory of a robotic arm, this application also provides another method for correcting the trajectory of a robotic arm.
[0104] like Figure 4As shown, the robotic arm trajectory correction method and experimental procedure include the following steps S410-S460: Dynamic modeling of an n-DOF rotary joint robotic arm includes steps S410-S420: S410, Robot Dynamics Modeling.
[0105] S420, design nonlinear functions and construct the system open-loop equations.
[0106] The proposed adaptive fault-tolerant trajectory tracking control method and the construction of the closed-loop system equations include steps S430-S440: S430, Adaptive fault-tolerant trajectory tracking control.
[0107] S440, construct the system closed-loop equations, including: Substituting formulas (33) and (18) into formula (15), we obtain formula (22): (twenty two) In the formula, It is an n-dimensional identity matrix.
[0108] Substituting equation (19) into equation (22) and rearranging, we obtain the equation of the closed-loop system of the robotic arm under AFTC, as shown in equation (23): (twenty three) S450: Stability analysis based on Lyapunov functions.
[0109] For the closed-loop system equation (23), the stability of the n-DOF robotic arm closed-loop system is proved by applying the Lyapunov method and Barbalat's lemma. First, the following candidate Lyapunov functions are proposed. : (twenty four) in, and As shown below: (25) (26) In the formula, , and These are positive definite invariant diagonal matrices. , and The diagonal elements, The nonlinear function defined by equation (14), Trajectory tracking error vector The Each component.
[0110] For the Lyapunov functions shown in equations (25) to (26), , and All are constant diagonal positive definite matrices. It is a positive definite inertia matrix and The condition holds true. Therefore, the Lyapunov functions shown in formulas (25) to (26) are always true. It is regular and positive definite.
[0111] Each and The derivative with respect to time is shown in formulas (27)-(28): (27) (28) Substitute equations (34) and (23) into equation (27). It can be rewritten as formula (29): (29) In the formula, for The first derivative.
[0112] After simplification and inequality transformations, we can finally achieve the following: Represented as formula (30): (30) Combine equation (30) with Adding them together, we get The final upper bound is given by formula (31): (31) According to equation (6), equation (31) can be decoupled as shown in equation (32): (32) From the above analysis, we can see that: It is regular and positive definite, that is... ,at the same time, It is semi-negative definite, that is... Therefore, it can be deduced that... This indicates .Depend on From the expressions (equations (24) to (26)), we can know that and It is bounded, that is... Further applications The expression (i.e., equation (8)) can be used to obtain Observe the closed-loop dynamic equation (23), since... , and It is a positive definite diagonal matrix, and Bounded external disturbance The upper bound value can be used to determine the value. It is bounded, that is... .Depend on ,according to The expression can be used to determine At the same time, by It can be deduced that . show and Regarding the continuity of time. Furthermore, according to equation (32), and It is square-integrable. Therefore, by further applying Barbalat's lemma, we can obtain... , Combining the properties of the standard hyperbolic tangent function, we can know that... This proves the global asymptotic stability of the closed-loop system equations of the robotic arm under the AFTC control method proposed in this chapter.
[0113] S460: Experimental verification based on a horizontal multi-joint robot (Selective Compliance Assembly Robolic Arm, SCARA).
[0114] The control flow of Adaptive Fault-Tolerant Control (AFTC) is as follows: Figure 5 As shown.
[0115] Introduction The error in model parameter estimation is expressed as: (33) in, The system's constant unknown parameter vector.
[0116] Taking the derivative of equation (18) with respect to time, we get: (34) The other parts have already been described in detail in the previous method embodiment, and will not be repeated here.
[0117] To verify the engineering practical value of the AFTC control method, this section will... Figure 6Experiments were conducted on the experimental platform shown, and the results were compared with those of the conventional adaptive PID control method on the same experimental platform to verify the practicality of the AFTC method.
[0118] The experimental platform adopts a four-axis SCARA industrial robot architecture, mainly composed of the mechanical body, drive system, and control unit. The two rotary joints of the robotic arm are equipped with Panasonic MINAS A6 series AC servo motors, which, together with high-precision harmonic reduction gears (transmission ratios of 80:1 and 50:1 respectively), form a torque amplification system, enabling high-load drive capability at the joint ends. The drive system adopts a distributed architecture design, using a Googol GT400-CV motion control card to build a real-time closed-loop control system, achieving bidirectional transmission of control commands and status information via the EtherCAT bus protocol. During system operation, real-time position data collected by the incremental encoders of each joint is preprocessed by the motion control card and then transmitted to an industrial-grade control computer equipped with an Intel Core i7 processor for algorithm calculation. The generated control quantity is converted into a drive voltage signal after PWM modulation, and finally, high-precision torque output is achieved through the servo driver. The experimental software is developed based on the Matlab / Simulink R2021b environment, using a modular programming method to deploy the control algorithm. Experimental data is recorded in real time through the Matlab data acquisition module, and the Plotly visualization tool is used to professionally plot dynamic performance curves.
[0119] This experiment only performed trajectory tracking control on joints 1 and 2 of the SCARA robotic arm. The dynamic model of the SCARA robotic arm is as follows: (35) (36) (37) Among them, model parameters As shown below: (38) The main physical drive parameters of the SCARA robotic arm are shown in the table below: In practical engineering, chattering can severely affect the motion control quality of a system. To eliminate chattering caused by discontinuous control inputs, boundary layer technology is used to continuously process the discontinuous parts of AFTC, forming Continuous Adaptive Fault-Tolerant Control (CAFTC).
[0120] The CAFTC is experimentally verified below, and the experimental results are compared with those of APID control to verify the superiority and engineering applicability of the proposed CAFTC. First, the parameters of the two-degree-of-freedom SCARA robotic arm model shown in equations (35) to (36) are linearized, and the parameter estimation vector is defined as follows. : (39) Among them, system model parameters As shown in equation (38).
[0121] Combining equations (31) to (34), the regression matrix can be derived. for: (40) Among them, auxiliary variables and They are respectively: (41) (42) The sampling period selected in the experiment was The experiment lasted for 20 seconds. The initial position and initial velocity were set to zero. The desired trajectory was selected as shown in formula (43): (43) The health index matrix for each joint actuator is set as shown in formula (44): (44) In this experiment, boundary layer technology was used to continuously process AFTC to obtain CAFTC, and boundary layer parameters were selected. .
[0122] The control laws for CAFTC and APID are shown in the table below: After continuous experimentation and parameter adjustments, the performance of other parameters was compared under the same input torque conditions. To visually compare the performance indicators of the two control methods, bar charts were used to represent the convergence time of each joint position error under the action of the two control methods. The maximum value of the absolute value of steady-state error Maximum absolute value of torque And the IAE index; where, the smaller the IAE value, the smoother the joint movement under this control method, as shown in the results. Figure 7-8 As shown.
[0123] Observing the image above, it is clear that while ensuring the safety of each joint... Under comparable conditions, all other indicators of the joints under CAFTC are lower than those of APID, indicating that CAFTC has better transient performance and steady-state accuracy than APID.
[0124] Based on the above-described method for correcting the trajectory of a robotic arm, this application also provides a device for correcting the trajectory of a robotic arm.
[0125] Figure 9 This is a schematic diagram of a device structure provided in an embodiment of this application. Figure 9 As shown, the device may include: The acquisition module 901 is used to acquire real-time motion data of each joint of the robotic arm; The error calculation module 902 is used to calculate the difference between the real-time motion data of each joint and the preset expected motion data to obtain the motion error data of each joint. The offset determination module 903 is used to determine the offset of each joint of the robotic arm based on motion error data. The correction determination module 904 is used to determine the offset correction coefficient based on each expected motion data, motion error data and real-time motion data; The estimation module 905 is used to determine the estimated values of the physical driving parameters corresponding to the offset and influence coefficient of each joint based on the preset correlation between the offset, offset correction coefficient and the estimated values of the physical driving parameters of each joint; wherein, the estimated value of the physical driving parameters characterizes the influence value of the physical properties of the current posture of each joint of the robotic arm on the joint driving torque. The torque determination module 906 is used to determine the control torque based on the estimated values of each joint, influence coefficients, motion error data, and offset. The control module 907 is used to control the trajectory correction of each joint of the robotic arm based on the control torque.
[0126] In summary, the device embodiment of this application acquires real-time motion data through the acquisition module 901, calculates motion error data through the error calculation module 902, determines the offset through the offset determination module 903, determines the offset correction coefficient through the correction determination module 904, obtains the estimated value of the physical driving parameters based on the preset correlation through the estimation module 905, determines the control torque through the torque determination module 906 based on the estimated value, the influence coefficient, the motion error data, and the offset, and performs trajectory correction based on the control torque through the control torque. This allows the control torque to utilize the offset and offset correction coefficient driven by the motion error data, combined with the online estimation of the physical driving parameters, to achieve adaptive compensation for actual trajectory deviations. Thus, the accuracy of the robotic arm trajectory correction can be improved without relying on an external fault diagnosis module.
[0127] In some embodiments, the offset determination module 903 may include: The error amplification submodule is used to determine the position error amplification saturation value of each joint based on the position error data of each joint and using a pre-built error amplification saturation function. The offset determination submodule is used to determine the offset for each joint based on the position error amplification saturation value and velocity error data.
[0128] In some embodiments, the error amplification submodule may include: The amplification unit is used to determine the position error amplification saturation value through the error amplification function when the absolute value of the position error data is less than a preset threshold. The saturation unit is used to determine the position error amplification saturation value through the error saturation function when the absolute value of the position error data is greater than or equal to a preset threshold.
[0129] In some embodiments, the correction determination module 904 may include: The transformation submodule is used to transform the error amplification saturation values of each joint into column vectors to obtain the error transformation vector; The difference submodule is used to take the difference between the desired velocity data in the desired motion data and the product of a constant positive definite diagonal matrix and an error transformation vector as the desired velocity vector; The acceleration submodule is used to take the difference between the desired acceleration data in the desired motion data and the product of the positive definite diagonal matrix and the error diagonal matrix as the desired acceleration vector; the error diagonal matrix is obtained by differentiating the error transformation vector. The coefficient determination submodule is used to determine the offset correction coefficients based on real-time motion data, the desired velocity vector, and the desired acceleration vector.
[0130] In some embodiments, the torque determination module 906 may include: The first component submodule is used to determine the first component of the control torque based on the correspondence between the estimated value, the offset correction coefficient, and the motion error data. The second component submodule is used to determine the second component of the control torque based on the preset correspondence between the minimum correctable health index, the first component of the control torque, and the offset. The torque determination submodule is used to determine the control torque based on the first component and the second component of the control torque.
[0131] In some embodiments, the first component submodule may include: The disturbance introduction unit is used to determine the first component of the control torque based on the correspondence between the estimated value, the offset correction coefficient, the motion error data and the maximum value of the external disturbance; the maximum value of the external disturbance is negatively correlated with the first component of the control torque.
[0132] In some embodiments, the device can also be used for, By controlling the torque, the health indicators of the robotic arm joints are determined; the control torque is negatively correlated with the health indicators; the health indicators characterize the health status of the robotic arm joints. An abnormal warning is issued when health indicators are below the minimum correctable health indicator.
[0133] In some embodiments, the estimation module 905 may include: The variation law determination submodule is used to determine the parameter variation law based on the offset correction coefficient, the preset correspondence between the diagonal positive definite matrix and the offset; wherein, the parameter variation law As shown in formula (21): (twenty one) In the formula, For the law of parameter variation, T It is a diagonal positive definite matrix. s This is the offset; The estimation value determination submodule is used to obtain the estimated value by taking the inverse derivative of the parameter variation law.
[0134] In some embodiments, the device can also be used for, By using preset boundary layer parameter values, discontinuities in the first and second components of the control torque are made continuous, which is used to continuously control the trajectory correction of each joint of the robotic arm.
[0135] Each module / unit in the above-mentioned device has the function of implementing each step executed in the aforementioned method embodiments and can achieve its corresponding technical effect. For the sake of brevity, it will not be described in detail here.
[0136] Figure 10 A schematic diagram of the hardware structure for robotic arm trajectory correction provided in an embodiment of this application is shown.
[0137] The device for correcting the trajectory of a robotic arm may include a processor 1001 and a memory 1002 storing computer program instructions.
[0138] Specifically, the processor 1001 may include a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.
[0139] Memory 1002 may include mass storage for data or instructions. For example, and not limitingly, memory 1002 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. In one instance, memory 1002 may include removable or non-removable (or fixed) media, or memory 1002 may be non-volatile solid-state memory. Memory 1002 may be internal or external to the integrated gateway disaster recovery device.
[0140] The memory 1002 may include read-only memory (ROM), random access memory (RAM), disk storage media device, optical storage media device, flash memory device, electrical, optical, or other physical / tangible memory storage device. Therefore, typically, a memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the methods disclosed according to this embodiment.
[0141] The processor 1001 reads and executes computer program instructions stored in the memory 1002 to achieve... Figure 1 The method for correcting the trajectory of the robotic arm in the illustrated embodiment.
[0142] In one example, the device for robotic arm trajectory correction may also include a communication interface 1003 and a bus 1004. For example, Figure 10 As shown, the processor 1001, memory 1002, and communication interface 1003 are connected through bus 1004 and complete communication with each other.
[0143] The communication interface 1003 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.
[0144] Bus 1004 includes hardware, software, or both, that couples components of an online data traffic metering device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Extended Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hyper Transport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 1004 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, this application contemplates any suitable bus or interconnect.
[0145] Furthermore, in conjunction with the robotic arm trajectory correction methods in the above embodiments, this application embodiment can provide a computer storage medium for implementation. This computer storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement any of the robotic arm trajectory correction methods in the above embodiments.
[0146] This application also provides a computer program product, including a computer program that, when executed by a processor, implements any of the robotic arm trajectory correction methods described in the above embodiments.
[0147] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.
[0148] The functional blocks shown in the above-described block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, read-only memory (ROM), flash memory, erasable read-only memory (EROM), floppy disks, compact disc read-only memory (CD-ROM), optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.
[0149] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0150] The aspects of this disclosure have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by special-purpose hardware performing the specified functions or actions, or can be implemented by a combination of special-purpose hardware and computer instructions.
[0151] It should be noted that the acquisition, storage, use, and processing of data in this application embodiment all comply with the relevant provisions of national laws and regulations.
[0152] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.
[0153] It should be noted that the acquisition, storage, use, and processing of data in this application embodiment all comply with the relevant provisions of national laws and regulations.
[0154] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.
[0155] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.
Claims
1. A method for correcting the trajectory of a robotic arm, characterized in that, include: Acquire real-time motion data of each joint of the robotic arm; The difference between the real-time motion data of each joint and the preset expected motion data is calculated to obtain the motion error data of each joint. Based on the motion error data, the offset of each joint of the robotic arm is determined; Based on the desired motion data, the motion error data, and the real-time motion data, determine the offset correction coefficient; Based on the pre-defined correlation between offset, offset correction coefficient, and estimated values of physical drive parameters of each joint, the estimated values of physical drive parameters corresponding to the offset and influence coefficient of each joint are determined; wherein, the estimated values of physical drive parameters characterize the influence of the physical properties of the current posture of each joint of the robotic arm on the joint drive torque. The control torque is determined based on the estimated values of each joint, the influence coefficient, the motion error data, and the offset. Based on the control torque, the various joints of the robotic arm are controlled to perform trajectory correction.
2. The method according to claim 1, characterized in that, The motion error data includes position error data and velocity error data; determining the offset of each joint of the robotic arm based on the motion error data includes: Based on the position error data of each joint, the position error amplification saturation value of each joint is determined using a pre-constructed error amplification saturation function; For each joint, the offset is determined based on the position error amplification saturation value and the velocity error data.
3. The method according to claim 2, characterized in that, The error amplification saturation function includes an error amplification function and an error saturation function; the step of determining the position error amplification saturation value based on the position error data of each joint using the pre-constructed error amplification saturation function includes: If the absolute value of the position error data is less than a preset threshold, the position error amplification saturation value is determined by the error amplification function. If the absolute value of the position error data is greater than or equal to a preset threshold, the position error amplification saturation value is determined by the error saturation function.
4. The method according to claim 2, characterized in that, The step of determining the offset correction coefficient based on each of the desired motion data, the motion error data, and the real-time motion data includes: The error amplification saturation values of each joint are transformed into column vectors to obtain the error transformation vector; The difference between the desired velocity data in the desired motion data and the product of a constant positive definite diagonal matrix and the error transformation vector is taken as the desired velocity vector; The difference between the desired acceleration data in the desired motion data and the product of the positive definite diagonal matrix and the error diagonal matrix is taken as the desired acceleration vector; the error diagonal matrix is obtained by differentiating the error transformation vector. The offset correction coefficient is determined based on the real-time motion data, the desired velocity vector, and the desired acceleration vector.
5. The method according to claim 1, characterized in that, The step of determining the control torque based on the estimated values of each joint, the influence coefficient, the motion error data, and the offset includes: The first component of the control torque is determined based on the correspondence between the estimated value, the offset correction coefficient, and the motion error data. The second component of the control torque is determined based on the preset correctable minimum health index, the correspondence between the first component of the control torque and the offset. The control torque is determined based on the first component and the second component of the control torque.
6. The method according to claim 5, characterized in that, The step of determining the first component of the control torque based on the correspondence between the estimated value, the offset correction coefficient, and the motion error data includes: Based on the correspondence between the estimated value, the offset correction coefficient, the motion error data, and the maximum value of the external disturbance, the first component of the control torque is determined; the maximum value of the external disturbance is negatively correlated with the first component of the control torque.
7. The method according to claim 1, characterized in that, The method further includes: The control torque is used to determine the health indicators of the robotic arm joints; the control torque is negatively correlated with the health indicators; the health indicators characterize the health status of the robotic arm joints. An abnormality warning is issued if the health indicator is lower than the minimum correctable health indicator.
8. The method according to claim 1, characterized in that, The estimation of physical drive parameters for each joint based on the correspondence between the offset and the offset correction coefficient, to obtain estimated values of the physical drive parameters, includes: The parameter variation law is determined based on the correspondence between the offset correction coefficient, the preset diagonal positive definite matrix, and the offset amount. The parameter variation law for: In the formula, The law governing the variation of the parameters, T It is a diagonal positive definite matrix. s This is the offset; The estimated value is obtained by taking the inverse derivative of the law of change of the parameter.
9. The method according to claim 5, characterized in that, Also includes: By using preset boundary layer parameter values, the discontinuities in the first and second components of the control torque are made continuous, which is used to continuously control the trajectory correction of each joint of the robotic arm.
10. A device for correcting the trajectory of a robotic arm, characterized in that, include: The acquisition module is used to acquire real-time motion data of each joint of the robotic arm; An error calculation module is used to calculate the difference between the real-time motion data of each joint and the preset expected motion data to obtain the motion error data of each joint. The offset determination module is used to determine the offset of each joint of the robotic arm based on the motion error data. The correction determination module is used to determine the offset correction coefficient based on each of the expected motion data, the motion error data, and the real-time motion data; The estimation module is used to determine the estimated value of the physical driving parameter corresponding to the offset and influence coefficient of each joint based on the correlation between the preset offset, offset correction coefficient and the estimated value of the physical driving parameter of each joint; wherein, the estimated value of the physical driving parameter represents the influence value of the physical properties of the current posture of each joint of the robotic arm on the joint driving torque. The torque determination module is used to determine the control torque based on the estimated value of each joint, the influence coefficient, the motion error data, and the offset. The control module is used to control the various joints of the robotic arm to perform trajectory correction based on the control torque.