Friction compensation method, device, equipment and storage medium for industrial robot

CN122807934APending Publication Date: 2026-09-25SHENZHEN JINGYUAN SHUYU TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611264994.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-20
Publication Date
2026-09-25

AI Technical Summary

Technical Problem

现有逆动力学前馈控制能够补偿机器人惯性项、速度相关项和重力项,但通常不能主动反映摩擦状态变化;固定参数LuGre摩擦模型能够描述动态摩擦,但在关节温度、润滑状态、减速器磨损、负载变化等情况下,固定参数容易出现补偿不足或过补偿;单纯提高反馈增益虽然可以减小误差,却可能带来振动、超调和驱动力矩波动

Benefits of technology

[0016]本申请提供了一种工业机器人的摩擦补偿方法,本申请采用了获取工业机器人各关节的参考信息和实际状态信息并根据所述参考信息和实际状态信息得到跟踪残差,再根据所述实际状态信息进行工况判定生成工况权重,根据所述跟踪残差和工况权重更新自适应调节因子得到目标调节因子,并根据所述目标调节因子计算自适应摩擦补偿力矩以完成摩擦补偿的技术手段,解决了现有固定参数LuGre摩擦模型因无法适应温度、润滑、磨损及负载变化而导致的摩擦补偿失配、低速及换向工况下轨迹跟踪精度下降的问题。与现有技术相比,由于跟踪残差量化了当前摩擦补偿的失配程度,工况权重识别了摩擦敏感工况的重要性,两者共同引导调节因子的自适应更新,使得摩擦补偿力矩能够根据实际跟踪效果向最需要的工况方向聚焦,低速和换向工况下的补偿精度得到提升,而正常工况保持稳定调节,从而实现了具有任务导向的摩擦自适应补偿。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122807934A_ABST
    Figure CN122807934A_ABST
Patent Text Reader

Abstract

The application discloses a friction compensation method, device and equipment of an industrial robot and a storage medium, relates to the technical field of industrial robot control, and discloses a friction compensation method of an industrial robot, which comprises the following steps: obtaining reference information and actual state information of each joint of the industrial robot; obtaining tracking residual according to the reference information and the actual state information; determining a working condition state and generating a working condition weight according to the actual state information; updating an adaptive adjustment factor according to the tracking residual and the working condition weight to obtain a target adjustment factor; and calculating a friction compensation torque according to the target adjustment factor to obtain an adaptive friction compensation torque. The application realizes adaptive adjustment of friction compensation by utilizing tracking residual feedback and working condition identification, solves the compensation mismatch problem caused by parameter drift of a fixed parameter friction model, and effectively improves the trajectory tracking accuracy of the industrial robot under low-speed and reversing working conditions.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of industrial robot control technology, and in particular to a friction compensation method, device, equipment and storage medium for an industrial robot. Background Technology

[0002] In industrial robots operating under conditions such as low-speed trajectory tracking, minute displacement, start-stop reversal, precision assembly, and polishing, the frictional nonlinearity in the joint drivetrain significantly impacts control accuracy. This friction typically includes Coulomb friction, viscous friction, and the Stribeck effect in the low-speed region, which is particularly prone to causing crawling, hysteresis, jitter, and sudden torque changes when speed approaches zero and direction changes. Existing inverse dynamics feedforward control can compensate for robot inertial, velocity-dependent, and gravity terms, but it typically cannot actively reflect changes in frictional state. Fixed-parameter LuGre friction models can describe dynamic friction, but under conditions of joint temperature, lubrication status, reducer wear, and load variations, fixed parameters are prone to undercompensation or overcompensation. Simply increasing the feedback gain can reduce errors, but it may introduce vibration, overshoot, and driving torque fluctuations.

[0003] Existing technologies cannot automatically and quantitatively incorporate the friction compensation mismatch information contained in the actual tracking error into the online correction of LuGre friction compensation. As a result, the friction compensation torque cannot be adaptively adjusted according to the actual compensation effect, making it difficult to further improve the compensation accuracy under friction-sensitive conditions such as low speed and reversing.

[0004] Therefore, how to utilize tracking residual feedback to achieve adaptive adjustment of friction compensation torque, so as to improve the trajectory tracking accuracy of industrial robots under low speed and reversing conditions, is a technical problem that urgently needs to be solved in this field. Summary of the Invention

[0005] The main objective of this application is to provide a friction compensation method, device, equipment, and storage medium for industrial robots, aiming to address the technical problem of how to achieve adaptive adjustment of friction compensation torque by utilizing tracking residual feedback, thereby improving the trajectory tracking accuracy of industrial robots under low-speed and reversing conditions.

[0006] To achieve the above objectives, this application provides a friction compensation method for an industrial robot, comprising: Obtain reference information and actual status information of each joint of the industrial robot; Based on the reference information and the actual state information, the tracking residual is obtained; The working condition is determined based on the actual state information, and the working condition weight is generated based on the working condition. The adaptive adjustment factor is updated based on the tracking residual and operating condition weights to obtain the target adjustment factor; The friction compensation torque is calculated based on the target adjustment factor to obtain the adaptive friction compensation torque, thus completing the friction compensation of the industrial robot.

[0007] In one embodiment, obtaining the tracking residual based on the reference information and the actual state information includes: The position error is calculated based on the reference position information of the reference information and the actual position information of the actual state information. The speed error is calculated based on the reference speed information from the reference information and the actual speed information from the actual state information. The tracking residual is obtained by weighting and combining the position error and velocity error.

[0008] In one embodiment, the step of determining the working condition based on the actual state information, identifying the working condition state, and generating working condition weights based on the working condition state includes: Get historical orientation status; The current effective direction state is determined by comparing the speed information of the actual state information with the speed dead zone threshold. Based on the comparison between the speed information of the actual state information and the low speed threshold, it is determined that the current operating condition is low speed. Based on the comparison between the historical direction status and the current effective direction status, it is determined that the current direction switching condition is being determined. Weight values ​​are generated based on the low-speed operating condition and the reversing operating condition to obtain the operating condition weights.

[0009] In one embodiment, before updating the adaptive adjustment factor based on the tracking residual and the operating condition weights to obtain the target adjustment factor, the method further includes: The absolute value of the tracking residual is compared with a preset residual dead zone threshold. If the absolute value of the tracking residual is greater than the preset residual dead zone threshold, the adaptive adjustment factor is updated. If the absolute value of the tracking residual is less than or equal to the preset residual dead zone threshold, then the adaptive adjustment factor is directly output as the target adjustment factor.

[0010] In one embodiment, before updating the adaptive adjustment factor based on the tracking residual and the operating condition weights to obtain the target adjustment factor, the method further includes: Based on the speed information of the actual state information, speed anomaly is determined. If the speed information is abnormal, an adaptive adjustment factor is directly output as the target adjustment factor. If the speed information is normal, then the adaptive adjustment factor is updated.

[0011] In one embodiment, updating the adaptive adjustment factor based on the tracking residual and the operating condition weight to obtain the target adjustment factor includes: Obtain the current basic friction compensation torque; The direction sign is extracted based on the current basic friction compensation torque to obtain the direction sign; The adjustment factor update increment is obtained by performing incremental calculations based on the direction sign, tracking residual, and operating condition weights. The target adjustment factor is obtained by updating the increment based on the adjustment factor.

[0012] In one embodiment, the step of calculating the friction compensation torque based on the target adjustment factor to obtain an adaptive friction compensation torque and complete the friction compensation of the industrial robot includes: Obtain the current basic friction compensation torque, dynamic feedforward torque, and feedback correction torque; Multiply the current basic friction compensation torque by the target adjustment factor to obtain the adaptive friction compensation torque; The joint driving torque is obtained based on the aforementioned dynamic feedforward torque, feedback correction torque, and adaptive friction compensation torque; The industrial robot is controlled based on the joint driving torque to complete friction compensation.

[0013] Furthermore, to achieve the above objectives, this application also provides a friction compensation device for an industrial robot, comprising: The acquisition module is used to acquire reference information and actual status information of each joint of the industrial robot; The residual calculation module is used to obtain the tracking residual based on the reference information and the actual state information; The determination module is used to determine the working condition based on the actual state information, determine the working condition status, and generate working condition weights based on the working condition status. The update module is used to update the adaptive adjustment factor based on the tracking residual and the operating condition weight to obtain the target adjustment factor; The output module is used to calculate the friction compensation torque based on the target adjustment factor, obtain the adaptive friction compensation torque, and complete the friction compensation of the industrial robot.

[0014] In addition, to achieve the above objectives, this application also proposes a friction compensation device for an industrial robot, the device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the friction compensation method for the industrial robot as described above.

[0015] In addition, to achieve the above objectives, this application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the friction compensation method for industrial robots as described above.

[0016] This application provides a friction compensation method for industrial robots. The method involves acquiring reference information and actual state information of each joint of the industrial robot, obtaining tracking residuals based on the reference and actual state information, generating working condition weights based on the actual state information, updating adaptive adjustment factors based on the tracking residuals and working condition weights to obtain a target adjustment factor, and calculating adaptive friction compensation torque based on the target adjustment factor to complete friction compensation. This solves the problems of friction compensation mismatch and decreased trajectory tracking accuracy under low-speed and reversing conditions caused by the inability of existing fixed-parameter LuGre friction models to adapt to changes in temperature, lubrication, wear, and load. Compared with existing technologies, this method quantifies the degree of current friction compensation mismatch because the tracking residuals quantify the degree of mismatch, and the working condition weights identify the importance of friction-sensitive working conditions. Both guide the adaptive update of the adjustment factor, enabling the friction compensation torque to focus on the most needed working condition direction based on the actual tracking effect. This improves compensation accuracy under low-speed and reversing conditions, while maintaining stable adjustment under normal working conditions, thus achieving task-oriented adaptive friction compensation. Attached Figure Description

[0017] 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.

[0018] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0019] Figure 1 This is a flowchart illustrating the first embodiment of the friction compensation method for industrial robots according to this application. Figure 2 This is a flowchart illustrating the second embodiment of the friction compensation method for industrial robots according to this application; Figure 3 This is a flowchart illustrating the third embodiment of the friction compensation method for industrial robots in this application; Figure 4 This is a structural block diagram of the first embodiment of the friction compensation device for an industrial robot according to this application; Figure 5This is a schematic diagram of the structure of a friction compensation device for an industrial robot in the hardware operating environment involved in the embodiments of this application.

[0020] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0021] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.

[0022] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.

[0023] The main solution of this application is as follows: First, obtain reference information and actual state information of each joint of the industrial robot; obtain tracking residuals based on the reference information and actual state information; determine the working condition based on the actual state information, and generate working condition weights based on the working condition; update the adaptive adjustment factor based on the tracking residuals and working condition weights to obtain the target adjustment factor; calculate the friction compensation torque based on the target adjustment factor to obtain the adaptive friction compensation torque, thus completing the friction compensation of the industrial robot.

[0024] In this embodiment, for ease of description, the following description will focus on identifying friction compensation in an industrial robot.

[0025] Because existing technologies cannot automatically and quantitatively incorporate the friction compensation mismatch information inherent in the actual tracking error into the online correction of LuGre friction compensation, the friction compensation torque cannot be adaptively adjusted based on the actual compensation effect, making it difficult to further improve compensation accuracy under friction-sensitive conditions such as low speed and reversing. Therefore, how to utilize tracking residual feedback to achieve adaptive adjustment of the friction compensation torque, thereby improving the trajectory tracking accuracy of industrial robots under low speed and reversing conditions, is a technical problem that urgently needs to be solved in this field.

[0026] This application deeply integrates the tracking residual generated by the actual tracking error with the working condition identification, enabling the adaptive friction compensation torque to focus on friction-sensitive working conditions such as low speed and commutation. This solves the problem that the existing fixed-parameter LuGre friction model cannot achieve task-oriented adaptive adjustment based on the actual compensation effect, and achieves the technical effect of significantly improving the trajectory tracking accuracy under low speed and commutation working conditions without sudden change in the total control torque.

[0027] It should be noted that the executing entity in this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or an electronic device capable of performing the above functions, such as a friction compensation program for an industrial robot. The following description uses a computing device as an example to illustrate this embodiment and the subsequent embodiments.

[0028] Based on this, this application proposes a friction compensation method for an industrial robot according to a first embodiment. Please refer to [link / reference]. Figure 1 The friction compensation method for the industrial robot includes steps S10 to S50: Step S10: Obtain reference information and actual status information of each joint of the industrial robot.

[0029] Understandably, at the start of each control cycle (e.g., 1ms or 2ms) of an industrial robot, after the robot controller receives the desired motion command for the current cycle from the host computer or trajectory planner, it immediately acquires the actual motion physical quantities of each joint in real time from the encoder, servo driver, or speed observer through the fieldbus or driver feedback channel. This establishes a data correspondence between reference information and actual state information, providing a synchronous and accurate data source for feedforward calculation, friction state recursion, residual construction, and working condition identification in each subsequent control cycle.

[0030] It should be noted that reference information refers to the motion command values ​​that each joint should achieve in the current control cycle, calculated by the trajectory planner in the robot's upper control system based on the desired path. This includes reference position, reference velocity, and reference acceleration. For example, when the operator sets the robot's end effector to move in a straight line from point A to point B via a teach pendant, the trajectory planner calculates the angular position, angular velocity, and angular acceleration that each joint should achieve at that moment in each control cycle (e.g., every 1ms). These values ​​constitute the reference information for that joint. Actual state information refers to the actual physical quantities of the current joint motion, including actual position and actual velocity, collected and fed back in real time by encoders, servo drives, or velocity observers installed on each joint of the robot. For example, the incremental encoder at the rear of the joint motor feeds back the actual rotation angle of the current joint in each cycle. The actual angular velocity is obtained by differentially analyzing the angle or filtering it through a velocity observer; these values ​​constitute the actual state information for that joint.

[0031] Understandably, since the reference information comes from the trajectory planner, the predictability and determinism of the control commands are guaranteed, allowing the dynamic feedforward calculation to generate the feedforward torque in advance before the torque output, thus improving the system response speed. Because the actual state information comes from real-time feedback from sensors such as encoders, the friction state recursion and residual calculations ensure that they reflect the current real motion situation, giving the adaptive adjustment closed-loop characteristics. The adjustment factor is corrected online based on the actual tracking effect, rather than being blindly adjusted in an open loop. Furthermore, the reference information and actual state information are acquired independently. Even if the actual state deviates from the reference value due to load disturbances or sudden friction changes, the system can promptly sense this through the residual and trigger adaptive adjustment, thereby achieving a rapid response to friction parameter drift—an effect that the fixed-parameter LuGre model cannot achieve.

[0032] Step S20: Obtain the tracking residual based on the reference information and the actual state information.

[0033] It should be noted that the tracking residual is a comprehensive scalar value obtained by weighting the position error and velocity error according to preset weights. It is used to quantify the degree to which the joint's actual tracking deviates from the reference trajectory within the current control cycle and to indicate the direction and magnitude of friction compensation mismatch. Specifically, firstly, the difference between the reference position and the actual position is calculated as the position error (e.g., if a joint command requires reaching a 30° position, and the encoder feedback is 29.7°, then the position error is 0.3°). The difference between the reference velocity and the actual velocity is calculated as the velocity error (e.g., if the command requires movement at a velocity of 10° / s, and the actual feedback is 9.2° / s, then the velocity error is 0.8° / s). Then, the position error and velocity error are multiplied by their respective weighting coefficients and summed to obtain a comprehensive residual value. The weighting coefficients can be set according to joint characteristics and debugging experience; for example, the position error weight can be increased for scenarios with high position accuracy requirements, and the velocity error weight can be increased for scenarios sensitive to velocity tracking. The sign of the tracking residual has a clear physical meaning: when the residual and the foundation friction compensation torque have the same sign, it indicates that the compensation is insufficient and needs to be increased; when the residual and the foundation friction compensation torque have opposite signs, it indicates that the compensation is excessive and needs to be reduced.

[0034] The above-mentioned tracking residual is calculated as follows:

[0035] in, For the first The joint in the first Tracking residuals during the control cycle; These are the weighting coefficients for positional errors; For the first The joint in the first Position error of the control cycle; These are the weighting coefficients for speed error; For the first The joint in the first Speed ​​error of the control cycle.

[0036] Understandably, by fusing position and velocity errors into a single tracking residual, a single, clear, and physically meaningful feedback signal is provided for the adaptive adjustment factor. Compared to relying solely on position or velocity errors, the weighted residual more comprehensively characterizes the degree of mismatch in friction compensation, considering both cumulative deviations at the position level and dynamic deviations at the velocity level. This avoids the problem of a single error failing or misleading the adjustment direction under specific operating conditions. Since the residual is calculated in real-time based on reference and actual state information in each control cycle, its value can sensitively reflect friction parameter drifts caused by temperature changes, sudden load changes, and increased wear, enabling the system to perceive its own compensation effect and fulfilling the prerequisite for closed-loop adaptive adjustment. Simultaneously, the sign of the residual directly indicates the adjustment direction, giving the subsequent updates of the adjustment factor a clear physical direction. It allows for rapid convergence to a suitable compensation intensity without complex system identification or parameter search, effectively improving trajectory tracking accuracy under low-speed and reversing conditions.

[0037] Step S30: Determine the working condition based on the actual state information, determine the working condition status, and generate working condition weights based on the working condition status.

[0038] It should be noted that working condition determination refers to the process of identifying the motion state category of the current control cycle based on the direction and amplitude of the actual joint movement speed. Specifically, it is divided into three working conditions: low-speed working condition, reversing working condition, and normal motion working condition. The effective direction state refers to the actual movement direction of the joint determined after speed dead zone filtering. Its value can be positive, negative, or unchanged from the previous cycle. The speed dead zone is set to avoid frequent erroneous switching of the direction state caused by signal noise near zero speed. Low speed condition refers to the state where the absolute value of the filtered speed is lower than the preset low speed threshold for several consecutive control cycles. It is determined by a continuous counting window. For example, if the filtered speed of a joint is lower than 5° / s for 10 consecutive cycles, it is determined to be a low speed condition. Reversal condition refers to the state where the joint movement direction is reversed and the speed amplitude before and after the reversal is large enough. It is determined by comparing the effective direction state of the current cycle with that of the previous cycle and whether the speed amplitude reaches the minimum reversal speed threshold. For example, if the direction of a joint is reversed from positive to negative and the speed before the reversal reaches more than 8° / s, it is determined to be a reversal condition. Normal movement condition refers to the normal movement state that is neither low speed nor reversal, that is, the speed amplitude exceeds the low speed threshold and the direction remains stable. The operating condition weight is a numerical coefficient assigned based on the current operating condition type. It is used to adjust the size of the adaptive update step size. Low-speed operating conditions and reversing operating conditions correspond to larger weight values, while normal motion operating conditions correspond to smaller weight values.

[0039] The calculation method for the above working condition weights is as follows:

[0040] in, For the first The joint in the first Operating condition weights during the control cycle; This is the weighting value for low-speed operating conditions; This is a low-speed indicator, with a value of 1 or 0. This represents the weighting value for the reversing operation condition; This is a reversal flag, with a value of 1 or 0; The weighting value is for normal motion conditions; This indicates normal movement and has a value of 1 or 0.

[0041] Understandably, by dividing the entire operating condition into three types—low speed, reversing, and normal motion—and assigning differentiated weights to each, precise control of the adaptive update intensity is achieved. The speed dead zone filters out measurement noise near zero speed, avoiding ineffective adjustments caused by frequent erroneous switching of direction states; the continuous low-speed counting window prevents false triggering caused by instantaneous speed fluctuations, ensuring the reliability of low-speed condition judgments; and the dual conditions of direction reversal and speed amplitude ensure the accuracy of reversing condition identification, avoiding misjudgments in the event of slight vibrations or stationary states. Since the weights of low speed and reversing conditions are significantly greater than those of normal motion conditions, the update step size of the adjustment factor automatically increases under friction-sensitive conditions and automatically decreases under non-sensitive conditions, effectively avoiding the torque fluctuation risk caused by equal intensity adjustment across all operating conditions. The identification results in this step serve as key parameters in the subsequent adaptive update law, participating in the update calculation of the adjustment factor along with the tracking residual. This enables the adaptive friction compensation mechanism to simultaneously perceive the degree of compensation mismatch and the sensitivity of operating conditions, fundamentally solving the technical deficiency of fixed-parameter models in being unable to distinguish between different operating conditions.

[0042] Step S40: Update the adaptive adjustment factor based on the tracking residual and operating condition weight to obtain the target adjustment factor.

[0043] It should be noted that the adaptive adjustment factor is a multiplicative coefficient that can be updated iteratively online. It is used to adjust the basic LuGre friction compensation torque by amplifying or reducing it. Its specific value reflects whether the current friction compensation is too small, moderate, or too large relative to actual needs. This factor is limited to preset upper and lower limits to prevent extreme adjustments. The update increment refers to the amount by which the adjustment factor should increase or decrease within the current control cycle. Its calculation formula is the product of the learning rate, operating condition weight, tracking residual, and the direction sign of the basic friction compensation torque. The learning rate controls the single update step size, and the direction sign introduces physical guidance into the update direction, causing the adjustment factor to increase when compensation is insufficient and decrease when compensation is excessive. The target adjustment factor is the final adjustment factor value output after the update calculation and saturation constraint processing of the current control cycle. This value will be directly used for subsequent multiplicative adjustments to the basic friction compensation torque.

[0044] The above target adjustment factor is calculated as follows:

[0045] in, For the first The target adjustment factor for the next control cycle of each joint; This is the saturation constraint function; For the first The adjustment factor for the current control cycle of each joint; Adaptive learning rate; For the first The joint in the first Operating condition weights during the control cycle; For the first The joint in the first Tracking residuals during the control cycle; The sign of the direction of the basic friction compensation torque is +1 or -1. For the first The joint in the first The basic friction compensation torque for controlling the cycle.

[0046] Understandably, by integrating the directional signs of the tracking residual, operating condition weights, and basic friction compensation torque into a unified adjustment factor update law, closed-loop online correction of the friction compensation torque is achieved. Since the update law uses the tracking residual as a feedback signal, the adjustment direction and magnitude of the adjustment factor always converge towards reducing the tracking error, enabling friction compensation to actively track parameter drift caused by changes in temperature, lubrication, wear, and load, fundamentally solving the technical challenge of compensation mismatch in fixed-parameter LuGre models. Because the operating condition weights are directly multiplied into the update increment, the update step size of the adjustment factor automatically increases under friction-sensitive conditions such as low speed and commutation, allowing the compensation torque to quickly respond to changes in operating conditions. Under normal operating conditions, the update step size automatically decreases, avoiding unnecessary intervention in stable operation and achieving optimal matching between adjustment speed and operating condition requirements. Upper and lower limit constraints ensure that the adjustment factor always changes within a preset safe range, preventing divergence of the adjustment factor due to residual noise or abnormal signals, providing crucial safety assurance for the system.

[0047] Step S50: Calculate the friction compensation torque according to the target adjustment factor to obtain the adaptive friction compensation torque, and complete the friction compensation of the industrial robot.

[0048] It should be noted that the basic friction compensation torque refers to the original friction compensation value calculated based on the LuGre model after recursively estimating the internal friction state using the actual joint velocity as input. Its calculation formula is the sum of three factors: the product of bristle stiffness and internal state, the product of bristle damping and the rate of change of internal state, and the product of the viscous friction coefficient and the actual velocity. This torque reflects the LuGre model's estimate of friction force based on the current velocity and has not yet been corrected by the adaptive adjustment factor. The adaptive friction compensation torque is the final friction compensation value obtained by multiplying the basic friction compensation torque by the target adjustment factor. For example, if the basic friction compensation torque of a joint is 2.0 Nm and the target adjustment factor is 1.2, then the adaptive friction compensation torque is 2.4 Nm, indicating that the friction compensation amount will be increased by 20% in this cycle. The dynamic feedforward torque is the torque calculated based on the robot's inverse dynamics model and reference trajectory (reference position, velocity, acceleration), used to compensate for dynamic effects such as inertial force, centrifugal force, Coriolis force, and gravity. Feedback correction torque refers to the correction torque calculated based on position and velocity errors using proportional-derivative control, used to suppress various unmodeled disturbances and residual errors. Joint drive torque refers to the torque command output after superimposing and fusing the dynamic feedforward torque, feedback correction torque, and adaptive friction compensation torque at the joint torque layer, and then processing it through actuator torque upper and lower limit constraints. This command directly drives the joint motor. Actuator torque upper and lower limits refer to the maximum and minimum torque values ​​that the motor driver or joint body can safely output, determined by the actuator's physical characteristics. Exceeding these limits may cause motor saturation, overheating, or mechanical damage; therefore, the final torque output must be constrained within these limits.

[0049] The calculation method for the above adaptive friction compensation torque is as follows:

[0050] in, For the first The joint in the first Adaptive friction compensation torque for control cycle; For the first The joint in the first The target adjustment factor for the control cycle; For the first The joint in the first The basic friction compensation torque for controlling the cycle.

[0051] Understandably, by superimposing and fusing the adaptive friction compensation torque with the dynamic feedforward torque and feedback correction torque of the existing industrial robot control system at the joint torque layer, a synergistic effect of three torques is achieved. The final output is a comprehensive driving torque that includes the fast response capability of feedforward control, the disturbance rejection capability of feedback control, and the online correction capability of adaptive friction compensation. Since the adaptive friction compensation torque is obtained by correcting the basic LuGre compensation torque based on the target adjustment factor, and the target adjustment factor has been converged to the optimal compensation strength under the current working condition by the tracking residual in the previous step, the joint driving torque output in this step can actively match the friction parameter drift caused by joint temperature, lubrication status, reducer wear, and load changes, thus significantly improving the trajectory tracking accuracy under low speed and reversing conditions compared to the fixed parameter compensation scheme. Because friction compensation participates in torque fusion as an independent component, the entire control architecture is clear, and each torque component can be debugged and verified separately, which facilitates engineering integration. Before the final output, the actuator torque upper and lower limits are constrained to ensure that the torque command is always within the safe operating range of the motor. The intervention of adaptive compensation will not cause actuator saturation or mechanical shock, thus improving accuracy while ensuring the engineering safety of the system.

[0052] refer to Figure 2 In one feasible implementation, step S20 may include steps A11 to A13: Step A11: Calculate the position error based on the reference position information of the reference information and the actual position information of the actual state information.

[0053] It should be noted that reference position information refers to the target angular position that the joint should reach in the current control cycle, calculated by the host trajectory planner, and is expressed in degrees or radians. For example, if the goal of a joint in trajectory planning is to move from 0° to 90° at a constant speed within 1 second, then the reference position at 500 milliseconds is 45°. Actual position information refers to the current actual angular position of the joint, fed back in real time by position sensors such as encoders or resolvers installed on the joint motor shaft. For example, if the actual reading fed back by the encoder in a certain control cycle is 44.7°, then it means that the joint has currently reached an actual position of 44.7°. Position error is the difference between the reference position and the actual position, i.e., the reference position minus the actual position. Its positive or negative sign reflects the direction of tracking lag. Continuing with the previous example, the reference position 45° minus the actual position 44.7° results in a position error of +0.3°. A positive value indicates that the actual position lags behind the reference position, indicating a tracking delay.

[0054] The above positional error is calculated as follows:

[0055] in, For the first The joint in the first Position error of the control cycle; For the first The joint in the first Reference position for the control cycle; For the first The joint in the first The actual position of the control cycle.

[0056] Understandably, by calculating the real-time difference between the reference position and the actual position in each control cycle, continuous and dynamic monitoring of the joint position tracking deviation is achieved. Position error, as one of the two components of the tracking residual, reflects the cumulative effect of friction compensation in a spatial dimension. When friction compensation is insufficient or excessive, the position error gradually accumulates over time, providing a long-term basis for adaptive adjustment. Since the position error is calculated based on direct feedback from position sensors such as encoders, without involving differentiation or observer operations, it has the advantages of direct measurement, numerical stability, and is less susceptible to high-frequency noise interference. Simultaneously, the sign of the position error directly indicates the direction of the actual position's deviation from the reference position, providing clear spatial dimension information for subsequent judgments of insufficient or excessive friction compensation, giving the update direction of the adaptive adjustment factor a definite physical meaning.

[0057] Step A12: Calculate the speed error based on the reference speed information of the reference information and the actual speed information of the actual state information.

[0058] It should be noted that reference speed information refers to the target angular velocity that the joint should achieve in the current control cycle, calculated by the host trajectory planner, and is expressed in degrees per second or radians per second. For example, if a joint moves from 0° to 90° at a constant speed of 10° / s in trajectory planning, then the reference speed is 10° / s in each control cycle during the movement. Actual speed information refers to the current actual angular velocity of the joint, obtained through differential calculation of position by the joint encoder, filtering by the speed observer, or direct feedback from the servo driver. For example, in a certain control cycle, the actual angular velocity calculated by the encoder feedback is 9.2° / s. Speed ​​error is the difference between the reference speed and the actual speed, i.e., the reference speed minus the actual speed. Its sign reflects the direction of speed tracking lag. Continuing with the previous example, the speed error is +0.8° / s, where the reference speed of 10° / s minus the actual speed of 9.2° / s is positive. A positive value indicates that the actual speed lags behind the reference speed, meaning that the current joint movement speed does not meet the command requirements.

[0059] The above speed error is calculated as follows:

[0060] in, For the first The joint in the first Speed ​​error of the control cycle; For the first The joint in the first Reference speed for the control cycle; For the first The joint in the first The actual speed of the control cycle.

[0061] Understandably, by calculating the real-time difference between the reference speed and the actual speed in each control cycle, instantaneous and sensitive monitoring of joint speed tracking deviations is achieved. Compared to the time-cumulative delay in the response of position errors to friction mismatch, speed errors can immediately reflect the deviation the moment the friction compensation torque does not match the demand, providing a rapid response basis for adaptive adjustment. This allows the system to detect and initiate adjustment when friction mismatch is still in its nascent stage, thus preventing significant accumulation of deviations at the position level. Furthermore, since the viscous friction term in the LuGre model is directly linearly related to speed, and the Stribeck effect is extremely sensitive to speed changes in the low-speed region, speed error, as a component of the tracking residual, can more accurately drive the adaptive correction of speed-related friction parameters. In practical control, speed error can be obtained by differentially analyzing the encoder position signal or by directly reading the speed loop feedback value of the servo drive, exhibiting good engineering feasibility and data reliability. This provides high-quality dynamic dimensional data for subsequent weighted fusion with position errors to construct a comprehensive tracking residual.

[0062] Step A13: Perform a weighted combination of the position error and velocity error to obtain the tracking residual.

[0063] It should be noted that weighted combination refers to the process of multiplying the position error and velocity error by their respective preset weighting coefficients and then summing them to obtain a comprehensive scalar value. The value of the weighting coefficient reflects the weight ratio of the position error and velocity error in the tracking residual. For example, a smaller weight is used for the position error and a larger weight is used for the velocity error, so that their contributions to the residual are matched. The tracking residual is the comprehensive scalar value obtained after weighted combination. Its positive or negative sign represents the overall mismatch direction of friction compensation, and its absolute value represents the overall mismatch degree of friction compensation.

[0064] Understandably, by weighting and combining position and velocity errors, a comprehensive tracking residual with both spatial and temporal dimensions is constructed. This residual can simultaneously reflect both the long-term cumulative deviation and the instantaneous dynamic deviation of friction compensation. The position error component ensures that adaptive adjustment can focus on steady-state tracking deviation, while the velocity error component ensures that adaptive adjustment can capture instantaneous disturbances caused by frictional abrupt changes. The combination of these two components allows the subsequent adaptive update law to achieve a good balance between response speed and steady-state accuracy. The introduction of weighting coefficients allows implementers to flexibly adjust the contribution of position and velocity errors according to the inertial characteristics, friction characteristics, and control index requirements of different joints, providing adjustment freedom for parameter configuration in different application scenarios. By fusing the two two-dimensional error quantities into a single scalar tracking residual, the input dimension of the adaptive adjustment factor update law in subsequent steps is effectively simplified, reducing computational complexity and facilitating engineering implementation and real-time control. This comprehensive residual, when used as the sole input signal to drive the adjustment factor update, possesses both the technical advantages of fast response and steady-state convergence.

[0065] In one feasible implementation, step S30 further includes: acquiring historical direction status; determining the current effective direction status by comparing the speed information of the actual state information with a speed dead zone threshold; determining that the current operating condition is low speed by comparing the speed information of the actual state information with a low speed threshold; determining that the current operating condition is reversing by comparing the historical direction status with the current effective direction status; and generating weight values ​​based on the low speed condition and the reversing condition to obtain the operating condition weight.

[0066] It should be noted that the historical direction state refers to the valid motion direction confirmed after speed dead zone determination in the previous control cycle, with a value of either positive or negative, serving as a reference for determining whether a direction reversal has occurred in the current cycle. The speed dead zone threshold is a preset positive speed value used to determine the zero-speed interval of the filtered speed. When the absolute speed value is less than this threshold, the speed is considered invalid or stationary, and the direction state remains unchanged from the previous cycle to avoid frequent switching of the direction state caused by measurement noise near zero speed. The valid direction state refers to the actual motion direction of the joint in the current cycle determined after speed dead zone filtering. Its determination rule is: if the filtered speed is greater than the speed dead zone threshold, it is judged as positive; if it is less than the negative speed dead zone threshold, it is judged as negative; if the absolute value is not greater than the speed dead zone threshold, the historical direction state remains unchanged. The low-speed threshold is a preset positive speed value, usually greater than the speed dead zone threshold, used to determine whether the joint is in a low-speed motion state. The continuous low-speed counting window is a preset number of cycles, requiring that the absolute speed value of multiple consecutive control cycles is not greater than the low-speed threshold before confirming entry into the low-speed condition, to eliminate false triggering caused by instantaneous speed fluctuations. A reversal condition refers to a motion state in which the direction of joint movement is substantially reversed. Its determination requires two conditions to be met simultaneously: first, the effective direction state of the current cycle is opposite to the historical direction state; second, the velocity amplitude of the current cycle or the previous cycle is not less than a preset minimum reversal velocity threshold. The latter ensures that the reversal determination is based on a velocity signal with sufficient amplitude, avoiding misjudgment of minor fluctuations in a stationary state as a reversal. The condition weight is a numerical coefficient assigned according to the currently determined condition type. Lower speed conditions and reversal conditions are assigned larger weight values, while normal motion conditions are assigned smaller weight values. These weights are used to adjust the adaptive update step size in subsequent steps.

[0067] The above effective direction state is calculated as follows:

[0068] in, For the first The joint in the first Effective directional state of the control cycle; For the first The joint in the first The filtered speed of the control cycle; This is the speed dead zone threshold; No. The joint in the first Effective directional state of the control cycle.

[0069] The calculation method for the above low-speed operating conditions is as follows:

[0070] in, For the first The joint in the first The low-speed flag for the control cycle has a value of 1 or 0; For continuous low-speed counting window; This is an indicator function; it takes the value 1 if the condition is true, and 0 otherwise. For the first The joint in the first The filtered speed of the control cycle; This is the low-speed threshold.

[0071] The calculation method for the above reversing conditions is as follows:

[0072] in, For the first The joint in the first The reversal flag for the control cycle has a value of 1 or 0; For the first The joint in the first Effective directional state of the control cycle; For the first The joint in the first Effective directional state of the control cycle; For the first The joint in the first The filtered speed of the control cycle; For the first The joint in the first The filtered speed of the control cycle.

[0073] Understandably, a three-tiered speed determination system, consisting of a speed dead zone threshold, a low-speed threshold, and a minimum commutation speed threshold, achieves highly reliable identification of low-speed and commutation conditions. The speed dead zone threshold eliminates interference from encoder quantization and measurement noise near zero speed, ensuring that the direction state is updated only when the speed is valid. This avoids ineffective or chaotic adjustments caused by frequent misjudgments of direction. The continuous low-speed counting window prevents false triggering of low-speed conditions due to instantaneous fluctuations in speed near the low-speed threshold boundary, ensuring that the low-speed condition determination reflects the true, continuous low-speed motion state of the joint rather than accidental instantaneous low-speed sampling. The introduction of the minimum commutation speed threshold in commutation determination ensures that the identification of commutation conditions is based on substantial motion reversal, eliminating the possibility of minor jitters in a stationary or near-stationary state being misjudged as commutation. The three judgment levels are independent yet logically related, jointly ensuring the accuracy and reliability of the working condition identification results. This provides a solid state input foundation for the correct allocation of subsequent working condition weights, enabling the update intensity of the adaptive adjustment factor to accurately match the actual working condition requirements of the joint, and ultimately achieving the differentiated control objective of focusing on sensitive working conditions and gently adjusting normal working conditions.

[0074] In one feasible implementation, before step S40, the method further includes determining speed anomalies based on the speed information of the actual state information; if the speed information is abnormal, an adaptive adjustment factor is directly output as the target adjustment factor; if the speed information is normal, the adaptive adjustment factor is updated.

[0075] It should be noted that speed anomaly detection refers to the process of validating the actual speed data fed back by the encoder, servo drive, or speed observer. Speed ​​anomalies include, but are not limited to, the following situations: the speed signal remains zero while the position signal changes, indicating a possible speed channel failure; the speed amplitude exceeds the joint's physical speed limit, indicating possible data interference or sensor malfunction; discontinuous speed signal jumps (such as the rate of change of speed between adjacent cycles exceeding a preset threshold), indicating possible transient electromagnetic interference. Directly outputting the adaptive adjustment factor as the target adjustment factor means that after detecting a speed anomaly, all update calculations for the current control cycle are skipped, and the adjustment factor value saved in the previous cycle is directly used as the target adjustment factor output for the current cycle. This is equivalent to freezing the adaptive update, and the update process resumes only after the speed signal returns to normal. For example, if the physical speed limit of a joint is 200° / s, and the speed value fed back in a certain control cycle is 500° / s, this data clearly exceeds the reasonable range and is determined to be a speed anomaly. The controller immediately freezes the adaptive update and continues operation using the adjustment factor value from the previous cycle.

[0076] Understandably, by adding a speed validity check step before adaptive updates, real-time monitoring of input data quality and safe isolation of abnormal operating conditions are achieved. When anomalies such as speed signal jumps, loss, or exceeding limits occur, the system can promptly identify and immediately freeze the update of the adjustment factor, maintaining the adjustment factor at a reasonable value before the anomaly occurred. This avoids adjustment factor divergence, compensation torque mismatch, and system performance degradation caused by erroneous data-driven updates. Compared to the risk of system malfunction caused by adaptive algorithms without this protection continuing to update under abnormal signals, this step decouples speed anomalies from adaptive updates, ensuring that the control system output is always calculated based on valid data. Since freezing is a temporary measure, the system can automatically resume the update function once the speed signal returns to normal, without manual intervention, balancing safety and self-recovery capability. This protection mechanism significantly improves the anti-interference capability and operational reliability of the entire adaptive friction compensation system in complex industrial environments.

[0077] In one feasible implementation, step S40 further includes: obtaining the current basic friction compensation torque; extracting the direction symbol based on the current basic friction compensation torque to obtain the direction symbol; performing incremental calculation based on the direction symbol, tracking residual, and operating condition weight to obtain the adjustment factor update increment; and obtaining the target adjustment factor based on the adjustment factor update increment.

[0078] It should be noted that the basic friction compensation torque refers to the original friction compensation value calculated based on the LuGre model after recursively estimating the internal friction state using the actual joint velocity as input. Its calculation formula is the sum of three factors: the product of bristle stiffness and internal state, the product of bristle damping and the rate of change of internal state, and the product of viscous friction coefficient and actual velocity. The direction sign refers to the positive or negative sign of the basic friction compensation torque, taking a value of +1 or -1, representing the direction of action of the basic friction compensation torque in the current control cycle. The adjustment factor update increment refers to the amount by which the adjustment factor should increase or decrease within the current control cycle. Its calculation formula is the product of the preset learning rate, operating condition weight, tracking residual, and direction sign. The target adjustment factor refers to the final adjustment factor value obtained by adding the current adjustment factor and the update increment, and then constraining it to a preset upper and lower limit range using a saturation function.

[0079] It is understandable that by introducing the directional sign of the basic friction compensation torque into the update law, the update direction of the adjustment factor has a clear physical meaning. When the tracking residual and the compensation torque have the same sign, the adjustment factor increases positively to strengthen the compensation; when they have opposite signs, it decreases negatively to weaken the compensation. This ensures that the adaptive adjustment always converges in the direction of reducing the tracking error, avoiding blind adjustment or oscillating divergence caused by incorrect direction judgment. Since the working condition weight is directly multiplied into the update increment, the update step size automatically increases under friction-sensitive working conditions such as low speed and reversal to achieve a fast response, and automatically decreases under normal motion working conditions to avoid disturbances, thus achieving a match between the update speed and the working condition requirements. At the same time, the introduction of the learning rate makes the single-step update amplitude controllable, preventing sudden changes caused by residual noise. Finally, the output after saturation constraint ensures that the target adjustment factor always changes within the preset safe range. The above mechanisms work together to enable the adjustment factor to converge to the optimal value under the current working condition within a finite number of steps, with fast convergence speed, high directional certainty, and strong engineering reliability.

[0080] refer to Figure 3 In one possible implementation, step S50 may include steps B11-B14: Step B11: Obtain the current basic friction compensation torque, dynamic feedforward torque, and feedback correction torque.

[0081] It should be noted that the basic friction compensation torque refers to the original friction compensation value calculated based on the LuGre model after recursively estimating the internal friction state using the actual joint velocity of the current control cycle as input. This torque has not yet been corrected by the adaptive adjustment factor and reflects the baseline friction torque value directly estimated by the model based on the current velocity. The dynamic feedforward torque refers to the torque command calculated based on the robot's inverse dynamics model and the reference position, reference velocity, and reference acceleration of the current control cycle. It is used to compensate for the load torque caused by dynamic effects such as inertial force, centrifugal force, Coriolis force, and gravity during joint movement, enabling the controller to output the corresponding torque in advance before errors occur, thus improving the system's tracking response speed. The feedback correction torque refers to the correction torque calculated based on the position error and velocity error using a proportional-derivative control law. Its function is to supplement and correct the residual error through a feedback mechanism when dynamic feedforward and friction compensation fail to completely eliminate the tracking deviation. These three parameters are calculated independently, each carrying different functions: feedforward control, feedback control, and friction compensation. They are obtained uniformly in this step for subsequent superposition.

[0082] Understandably, acquiring the three torque components simultaneously before torque fusion provides a data alignment prerequisite for the final synthesis of the joint driving force. Since the three torque components are acquired within the same control cycle, the consistency of timing among the components in subsequent superposition calculations is ensured. The dynamic feedforward torque is based on the reference trajectory of the current cycle, the feedback correction torque is based on the tracking error of the current cycle, and the adaptive friction compensation torque is based on the LuGre friction state and adjustment factor of the current cycle. All three reflect the joint state and command information within the same control cycle, ensuring that the superimposed joint driving torque will not experience time misalignment or phase lag due to different data source cycles. Because the three torque components are acquired and calculated independently, any component can be output, debugged, and verified separately, facilitating fault diagnosis and parameter tuning during engineering implementation. Each component has a clear physical source and functional positioning, enabling clear identification of the problem source during torque limiting or anomaly handling, providing a structured data organization method for system maintainability and debuggability.

[0083] Step B12: Multiply the current basic friction compensation torque and the target adjustment factor to obtain the adaptive friction compensation torque.

[0084] It should be noted that the target adjustment factor refers to the coefficient value output after online iterative updates based on tracking residuals and operating condition weights. It is typically a dimensionless positive number close to 1, such as 0.85, 1.12, or 1.0. A value of 1.0 indicates that the current basic compensation matches the demand and requires no adjustment; a value less than 1 indicates excessive compensation that needs to be reduced; and a value greater than 1 indicates insufficient compensation that needs to be increased. The adaptive friction compensation torque is the result obtained by multiplying the basic friction compensation torque by the target adjustment factor, expressed in Newton-meters (Nm). It is the final friction compensation value after adaptive correction of the basic compensation amount. For example, if the calculated basic friction compensation torque for a joint in the current control cycle is +2.5 Nm, and the target adjustment factor updated in the previous step by tracking residuals is 1.12, then multiplying them yields an adaptive friction compensation torque of +2.8 Nm, indicating that the basic friction compensation amount will be increased by 12% in this cycle. If the target adjustment factor is 0.88, then the adaptive friction compensation torque is +2.2 Nm, indicating that the basic compensation amount will be reduced by 12%.

[0085] Understandably, by multiplying the basic friction compensation torque by the target adjustment factor, the optimal compensation correction identified in the previous steps based on the tracking residual feedback is incorporated into the actual torque output, so that the result of all the previous adaptive calculations is finally reflected as an actual torque value with physical dimensions. Since the target adjustment factor has been guided by differentiated operating condition weights, controlled by the learning rate step size, and constrained by upper and lower limits, its value has converged to the optimal value that minimizes the tracking residual under the current operating condition in the previous steps. Therefore, the adaptive friction compensation torque output in this step can accurately reflect the actual friction compensation requirements of the joint under the current conditions of temperature, lubrication, wear, and load variations. The deviation direction and magnitude of this adaptive friction compensation torque relative to the basic LuGre compensation torque directly correspond to the deviation direction and magnitude between the fixed model parameters and the actual friction state, realizing online correction of the basic model.

[0086] Step B13: Obtain the joint driving torque based on the dynamic feedforward torque, feedback correction torque, and adaptive friction compensation torque.

[0087] It should be noted that the feedback correction torque refers to the correction torque calculated based on the position and velocity errors using a proportional-derivative control law. Its function is to supplement and correct residual errors when dynamic feedforward and friction compensation fail to completely eliminate tracking deviations. It is typically small in value and serves a fine-tuning purpose. The adaptive friction compensation torque is the final friction compensation value after correction by the target adjustment factor. It has the same dimensions as the basic LuGre compensation torque and is specifically used to counteract nonlinear friction effects in the joint drivetrain. The joint drive torque is the comprehensive torque command obtained by algebraically superimposing the above three torque components, i.e., the sum of the dynamic feedforward torque, the feedback correction torque, and the adaptive friction compensation torque. For example, if the dynamic feedforward torque of a joint in the current control cycle is +15.0 Nm, the feedback correction torque is +0.8 Nm, and the adaptive friction compensation torque is +2.2 Nm, then the joint drive torque is the sum of these three: 18.0 Nm. This value will be output to the joint actuator as the final torque command for this control cycle. In implementations that do not use feedback correction torque, the joint drive torque can also be the sum of the dynamic feedforward torque and the adaptive friction compensation torque, thus omitting the feedback correction term.

[0088] The calculation method for the joint driving torque mentioned above is as follows:

[0089] in, For the first The joint in the first The final joint driving torque of the control cycle; For the first The joint in the first The dynamic feedforward torque controlling the cycle; For the first The joint in the first Feedback correction torque for the control cycle; For the first The joint in the first Adaptive friction compensation torque for control cycle.

[0090] Understandably, by superimposing and fusing the three torque components at the joint torque layer, the synergistic effect of feedforward control, feedback control, and adaptive friction compensation is achieved in the same output command. The dynamic feedforward torque, as the main component, provides model-based large-amplitude feedforward drive, ensuring the joint obtains sufficient driving force under the reference trajectory to overcome the main dynamic load. The feedback correction torque, as a supplementary component, provides online correction when the model fails to accurately match the actual dynamics, improving the system's robustness and anti-interference capability. The adaptive friction compensation torque, as a specific component, specifically counteracts the nonlinear friction effect in the transmission chain, enabling the joint to achieve more accurate torque matching under low-speed and commutation conditions. The combined driving torque after the three components are superimposed retains the advantage of fast response from feedforward control while also possessing the robustness of feedback control and the proactive adjustment capability of adaptive friction compensation for parameter drift. Because the three torque components are orthogonal and non-overlapping in physical dimensions and functional positioning, their superposition will not produce functional redundancy or negative effects of mutual cancellation, ensuring coordination and compatibility among the three. Meanwhile, the three components are calculated independently and superimposed in a unified manner, which enables the controller to clearly identify the contribution source of each component when handling torque limiting or abnormal situations, facilitating engineering debugging and fault diagnosis.

[0091] Step B14: Control the industrial robot according to the joint driving torque to complete the friction compensation of the industrial robot.

[0092] It should be noted that industrial robot control refers to the entire process of sending joint drive torque commands to a servo driver via a fieldbus (such as EtherCAT, PROFINET, etc.) or analog signals. The driver calculates the corresponding current command based on the torque command, drives the motor to generate electromagnetic torque, and outputs it to the joint reducer, ultimately driving the joint to move along the expected trajectory. Friction compensation in this step specifically refers to the adaptive friction compensation torque generated in the previous step being included as a component of the joint drive torque in the torque output. This ensures that the electromagnetic torque output by the motor includes an online adaptively corrected friction compensation component, thereby offsetting the nonlinear friction effect in the transmission chain while driving the joint movement. For example, after the controller calculates a joint drive torque of 18.0 Nm in a certain control cycle, it sends this command to the servo driver via the EtherCAT bus. The driver converts 18.0 Nm into a corresponding current command based on the motor parameters and applies it to the motor windings. The motor outputs a corresponding electromagnetic torque to drive the joint movement, of which 2.2 Nm comes from the adaptive friction compensation torque component, specifically used to offset the friction torque of the joint at the current speed.

[0093] Understandably, by sending the joint drive torque command to the actuator, a closed loop from numerical calculation to physical execution is completed, ensuring that all the results of the preceding adaptive calculations are ultimately reflected in the improved actual motion accuracy of the joint. Since the joint drive torque already includes an adaptive friction compensation torque component corrected by the target adjustment factor, this component occupies a corresponding proportion in the actual electromagnetic torque output by the motor. This means that the compensation amount for the friction component in the actual drive torque output by the motor has been optimized to the best value under the current operating conditions based on the tracking residual feedback. Therefore, the actual tracking accuracy of the joint under low-speed and reversing conditions is significantly improved.

[0094] This application also provides a friction compensation device for an industrial robot, please refer to... Figure 4 The friction compensation device of the industrial robot includes: The acquisition module 10 is used to acquire reference information and actual status information of each joint of the industrial robot; The residual calculation module 20 is used to obtain the tracking residual based on the reference information and the actual state information; The determination module 30 is used to determine the working condition based on the actual state information, determine the working condition state, and generate a working condition weight based on the working condition state. The update module 40 is used to update the adaptive adjustment factor based on the tracking residual and the operating condition weight to obtain the target adjustment factor; The output module 50 is used to calculate the friction compensation torque according to the target adjustment factor, obtain the adaptive friction compensation torque, and complete the friction compensation of the industrial robot.

[0095] The friction compensation device for industrial robots provided in this application, employing the friction compensation method for industrial robots in the above embodiments, can solve the technical problem of how to adaptively adjust the friction compensation torque using tracking residual feedback, thereby improving the trajectory tracking accuracy of industrial robots under low-speed and reversing conditions. Compared with the prior art, the beneficial effects of the friction compensation device for industrial robots provided in this application are the same as those of the friction compensation method for industrial robots provided in the above embodiments, and other technical features in the friction compensation device for industrial robots are the same as those disclosed in the methods of the above embodiments, and will not be repeated here.

[0096] This application provides a friction compensation device for an industrial robot, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, which are executed by the at least one processor to enable the at least one processor to perform the friction compensation method for the industrial robot in the first embodiment described above.

[0097] The following is for reference. Figure 5 The diagram illustrates a structural schematic of a friction compensation device suitable for implementing the embodiments of this application for an industrial robot. The friction compensation device for the industrial robot in the embodiments of this application may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Description), PMPs (Portable Media Players), vehicle terminals (e.g., vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 5 The friction compensation device for the industrial robot shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments of this application.

[0098] like Figure 5 As shown, the friction compensation device of an industrial robot may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage device 1003 into a random access memory (RAM) 1004. The RAM 1004 also stores various programs and data required for the operation of the friction compensation device of the industrial robot. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touch screen, touchpad, keyboard, mouse, image sensor, microphone, accelerometer, gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; storage devices 1003 including, for example, magnetic tape, hard disk, etc.; and communication devices 1009. Communication device 1009 allows the friction compensation device of an industrial robot to communicate wirelessly or wiredly with other devices to exchange data. Although the figure shows friction compensation devices for industrial robots with various systems, it should be understood that implementation or possession of all the systems shown is not required. More or fewer systems may be implemented alternatively.

[0099] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.

[0100] The friction compensation device for industrial robots provided in this application, employing the friction compensation method for industrial robots in the above embodiments, can solve the technical problem of how to adaptively adjust the friction compensation torque using tracking residual feedback, thereby improving the trajectory tracking accuracy of industrial robots under low-speed and reversing conditions. Compared with the prior art, the beneficial effects of the friction compensation device for industrial robots provided in this application are the same as those of the friction compensation method for industrial robots provided in the above embodiments, and other technical features of this friction compensation device for industrial robots are the same as those disclosed in the previous embodiment method, and will not be repeated here.

[0101] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.

[0102] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0103] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, the computer-readable program instructions being used to execute the friction compensation method for an industrial robot in the above embodiments.

[0104] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.

[0105] The aforementioned computer-readable storage medium may be included in the friction compensation device of the industrial robot; or it may exist independently and not be assembled into the friction compensation device of the industrial robot.

[0106] The aforementioned computer-readable storage medium carries one or more programs that, when executed by the friction compensation device of an industrial robot, cause the friction compensation device of the industrial robot to: Obtain reference information and actual status information of each joint of the industrial robot; Based on the reference information and the actual state information, the tracking residual is obtained; The working condition is determined based on the actual state information, and the working condition weight is generated based on the working condition. The adaptive adjustment factor is updated based on the tracking residual and operating condition weights to obtain the target adjustment factor; The friction compensation torque is calculated based on the target adjustment factor to obtain the adaptive friction compensation torque, thus completing the friction compensation of the industrial robot.

[0107] Computer program code for performing the operations of this application can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0108] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0109] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.

[0110] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the friction compensation method of the industrial robot described above. This program addresses the technical problem of how to adaptively adjust the friction compensation torque using tracking residual feedback, thereby improving the trajectory tracking accuracy of the industrial robot under low-speed and reversing conditions. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the friction compensation method for the industrial robot provided in the above embodiments, and will not be elaborated upon here.

[0111] The above are merely preferred embodiments of this application and do not limit the patent scope of this application. Any equivalent structural or procedural transformations made using the content of this application's specification and drawings, or direct or indirect applications in other related technical fields, are similarly included within the patent scope of this application.

Claims

1. A friction compensation method for an industrial robot, characterized in that, include: Obtain reference information and actual status information of each joint of the industrial robot; Based on the reference information and the actual state information, the tracking residual is obtained; The working condition is determined based on the actual state information, and the working condition weight is generated based on the working condition. The adaptive adjustment factor is updated based on the tracking residual and operating condition weights to obtain the target adjustment factor; The friction compensation torque is calculated based on the target adjustment factor to obtain the adaptive friction compensation torque, thus completing the friction compensation of the industrial robot.

2. The friction compensation method for an industrial robot according to claim 1, characterized in that, The step of obtaining the tracking residual based on the reference information and the actual state information includes: The position error is calculated based on the reference position information of the reference information and the actual position information of the actual state information. The speed error is calculated based on the reference speed information from the reference information and the actual speed information from the actual state information. The tracking residual is obtained by weighting and combining the position error and velocity error.

3. The friction compensation method for an industrial robot according to claim 1, characterized in that, The step of determining the working condition based on the actual state information, identifying the working condition status, and generating working condition weights based on the working condition status includes: Get historical orientation status; The current effective direction state is determined by comparing the speed information of the actual state information with the speed dead zone threshold. Based on the comparison between the speed information of the actual state information and the low speed threshold, it is determined that the current operating condition is low speed. Based on the comparison between the historical direction status and the current effective direction status, it is determined that the current direction switching condition is being determined. Weight values ​​are generated based on the low-speed operating condition and the reversing operating condition to obtain the operating condition weights.

4. The friction compensation method for an industrial robot according to claim 1, characterized in that, Before updating the adaptive adjustment factor based on the tracking residual and operating condition weights to obtain the target adjustment factor, the method further includes: The absolute value of the tracking residual is compared with a preset residual dead zone threshold. If the absolute value of the tracking residual is greater than the preset residual dead zone threshold, the adaptive adjustment factor is updated. If the absolute value of the tracking residual is less than or equal to the preset residual dead zone threshold, then the adaptive adjustment factor is directly output as the target adjustment factor.

5. The friction compensation method for an industrial robot according to claim 1, characterized in that, Before updating the adaptive adjustment factor based on the tracking residual and operating condition weights to obtain the target adjustment factor, the method further includes: Based on the speed information of the actual state information, speed anomaly is determined. If the speed information is abnormal, an adaptive adjustment factor is directly output as the target adjustment factor. If the speed information is normal, then the adaptive adjustment factor is updated.

6. The friction compensation method for an industrial robot according to claim 1, characterized in that, The step of updating the adaptive adjustment factor based on the tracking residual and the operating condition weight to obtain the target adjustment factor includes: Obtain the current basic friction compensation torque; The direction sign is extracted based on the current basic friction compensation torque to obtain the direction sign; The adjustment factor update increment is obtained by performing incremental calculations based on the direction sign, tracking residual, and operating condition weights. The target adjustment factor is obtained by updating the increment based on the adjustment factor.

7. The friction compensation method for an industrial robot according to claim 1, characterized in that, The step of calculating the friction compensation torque based on the target adjustment factor to obtain the adaptive friction compensation torque and complete the friction compensation of the industrial robot includes: Obtain the current basic friction compensation torque, dynamic feedforward torque, and feedback correction torque; Multiply the current basic friction compensation torque by the target adjustment factor to obtain the adaptive friction compensation torque; The joint driving torque is obtained based on the aforementioned dynamic feedforward torque, feedback correction torque, and adaptive friction compensation torque; The industrial robot is controlled based on the joint driving torque to complete friction compensation.

8. A friction compensation device for an industrial robot, characterized in that, include: The acquisition module is used to acquire reference information and actual status information of each joint of the industrial robot; The residual calculation module is used to obtain the tracking residual based on the reference information and the actual state information; The determination module is used to determine the working condition based on the actual state information, determine the working condition status, and generate working condition weights based on the working condition status. The update module is used to update the adaptive adjustment factor based on the tracking residual and the operating condition weight to obtain the target adjustment factor; The output module is used to calculate the friction compensation torque based on the target adjustment factor, obtain the adaptive friction compensation torque, and complete the friction compensation of the industrial robot.

9. A friction compensation device for an industrial robot, characterized in that, The device includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the friction compensation method for an industrial robot as described in any one of claims 1 to 7.

10. A storage medium, characterized in that, The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, it implements the steps of the friction compensation method for an industrial robot as described in any one of claims 1 to 7.