Prospective preprocessing method and system in six-axis mechanical motion automation control
By updating the inertia tensor in real time and optimizing the acceleration pulse layout, the inertia lag problem of six-axis mechanical motion control in load mutation scenarios is solved, efficient trajectory prediction and driver protection are achieved, and the system's adaptability and stability in complex environments is enhanced.
Patent Information
- Application Number
- CN202510764905.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-10
- Publication Date
- 2025-08-15
- Estimated Expiration
- 2045-06-10
AI Technical Summary
In the load abrupt scenario, the hysteresis update of the inertia parameters of the six-axis mechanical motion control leads to impact of the servo drive current, causing driver overload shutdown and electrical damage. The existing prospective pretreatment methods have failed to effectively deal with load changes.
By setting the load impact description information, combining dual-channel Kalman filtering to update the inertia tensor in real time, dual-domain feature extraction of time-domain thermal stress density and frequency-domain energy dispersion, optimizing the acceleration pulse layout using the complementary integration mechanism, and controlling the ahead-of-domain beat by the instruction distributor to ensure the continuity of the command flow, and refreshing the inertia model with closed-loop feedback, achieving the synchronous evolution of inertia changes and trajectory prediction.
It significantly improves the sensitivity of trajectory prediction to load changes, reduces the risk of driver overload, enhances the adaptability of six-axis mechanical movement in dynamic and complex environments, reduces the risk of overload shutdown, and improves trajectory continuity and current output stability.
Smart Images

Figure CN120269577B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of automatic control of six-axis mechanical motion, and more particularly to a forward-looking preprocessing method and system in automatic control of six-axis mechanical motion. Background Art
[0002] In complex collaborative tasks, six-axis robotic motion control relies on a combination of high-frequency closed-loop response and forward-looking preprocessing mechanisms. Currently, this widely adopted forward-looking preprocessing method predicts the target trajectory and dynamic parameters for several control cycles in advance and generates a continuous command stream based on modeled mechanical behavior to meet the requirements of trajectory accuracy, response speed, and multi-axis collaborative stability.
[0003] However, in sudden load changes, such as in grasping, the end load's inertia characteristics change dramatically, and these changes often fail to be mapped and updated within the control cycle. Due to the delayed update of inertia parameters, the preprocessing module continues to use an outdated model for prediction, which can easily trigger a servo drive current surge in a short period of time, leading to drive overload shutdown, electrical damage, and even motion interruption. This load transient mapping lag is a key technical bottleneck in the forward-looking preprocessing stage of six-axis robotic automation control.
[0004] In order to solve the above problems, a technical solution is now provided. Summary of the Invention
[0005] In order to overcome the above-mentioned defects of the prior art, an embodiment of the present invention provides a forward-looking preprocessing method and system in the automated control of six-axis mechanical motion. By setting load impact description information, combining dual-channel Kalman filtering to update the inertia tensor in real time, accessing dynamic inertia data, and improving the sensitivity of trajectory prediction to load changes; adopting dual-domain feature extraction of time domain thermal stress density and frequency domain energy discreteness, and utilizing a complementary integral mechanism to dynamically optimize the acceleration pulse layout, thereby reducing the risk of driver overload; at the same time, the instruction distributor avoids cache overflow through advanced beat control to ensure the continuity of the instruction stream; closed-loop feedback continuously refreshes the inertia model to achieve synchronous evolution of inertia changes and trajectory prediction; reducing the risk of overload shutdown caused by inertia lag in six-axis mechanical motion, and enhancing the adaptability of the forward-looking preprocessing method in dynamic and complex operating environments, so as to solve the problems raised in the above-mentioned background technology.
[0006] To achieve the above object, the present invention provides the following technical solutions:
[0007] A forward-looking preprocessing method for the automatic control of six-axis mechanical motion includes the following steps:
[0008] S1: When the gripper pressure exceeds the set threshold, load impact description information is generated and written into the inertia estimation channel with a timestamp.
[0009] S2: The inertia estimation channel uses a dual-channel Kalman filter to fuse servo current data and encoder angular velocity data, and outputs an updated inertia tensor data packet within half a control cycle;
[0010] S3: The prediction cache replaces the original inertia model parameters with the inertia tensor data packet, and re-solves the acceleration vector and jerk vector of the next time slot according to the sliding window method to form a trajectory segment data set;
[0011] S4: The power mapper maps the trajectory segment dataset to the actuator thermal power surface, calculates the time-domain thermal stress density and frequency-domain energy dispersion, and generates an energy impact judgment metric using a dual-domain complementary integration algorithm. If the energy impact judgment metric is higher than a preset threshold, the acceleration pulse in the trajectory is split into multiple micropulse segments and their temporal order is rearranged.
[0012] S5: The instruction dispatcher adjusts the cache write rhythm based on the instruction accumulation prediction function and pushes the rearranged instruction stream to the driver according to the preset advance depth to prevent cache overflow.
[0013] S6: The feedback rectifier collects the real-time torque error and posture error and inputs them into the Bayesian integration module to refresh the prior model of the inertia tensor and provide a correction basis for generating load impact description information in the next cycle.
[0014] In a preferred embodiment, step S1 includes the following contents:
[0015] The gripper pressure is monitored in real time by a pressure sensor or torque sensor installed on the gripper, and the acquisition frequency is consistent with the control cycle. When the gripper pressure exceeds the pressure threshold determined based on the six-axis robot arm's design parameters, load capacity, and historical operating data, a load impact description is generated. The load impact description is stored in a structured data format and includes the gripper pressure value and gripper status identifier. The moment when the load mutation occurs is recorded as a timestamp, and the timestamp is aligned with the time base of the control cycle. The load impact description is bound to the timestamp and written into the inertia estimation channel.
[0016] In a preferred embodiment, step S2 includes the following:
[0017] Receive the load impact description information and timestamp transmitted by the inertia estimation channel; collect the servo current data and encoder angular velocity data in the current control cycle; use a dual-channel Kalman filter, in which the current channel estimates the inertia tensor based on the servo current data and the mapping relationship between current and torque, and the angular velocity channel assists in correcting the inertia tensor estimation based on the encoder angular velocity data and the kinematic relationship. The initial state of the dual-channel Kalman filter is provided by the load impact description information. In the prediction stage, the dual-channel Kalman filter calculates the prior inertia tensor estimate based on the inertia tensor estimate value at the previous moment and the process noise. In the measurement update stage, the servo current data and encoder angular velocity data are used to correct the prior inertia tensor estimate. The correction amplitude is determined by the dynamically adjusted Kalman gain matrix.
[0018] In a preferred embodiment, step S2 includes the following:
[0019] The estimation results of the current channel and angular velocity channel are fused, and a confidence-weighted fusion method is used to generate a fused inertia tensor estimate. Physical constraints are imposed on the fused inertia tensor estimate to ensure that the components of the inertia tensor are non-negative and meet the dynamic range of the robotic arm. The fused inertia tensor estimate is encapsulated as an inertia tensor data packet, which contains the components of the inertia tensor and a timestamp, and is delivered and output within half a control cycle.
[0020] In a preferred embodiment, step S3 includes the following contents:
[0021] The original inertia model parameter set in the prediction cache module is replaced with the updated inertia tensor, and the timing of the inertia parameter update is calibrated according to the timestamp. The window width and step size are configured using the sliding window method, and the future time is divided into multiple time slots, with the next time slot being the first prediction point after the current time. The dynamic equation is constructed based on the updated inertia model parameter set. The Newton-Euler method is used to calculate the acceleration vector of the next time slot using the historical data and current state in the sliding window. Specifically, the acceleration vector is obtained by subtracting the Coriolis force, centrifugal force, and gravity terms from the torque vector at the current moment through the inverse matrix of the inertia tensor. The jerk vector is calculated by taking the time derivative of the acceleration vector. The predicted acceleration vector and jerk vector are arranged in chronological order as a trajectory segment dataset.
[0022] In a preferred embodiment, step S4 includes the following contents:
[0023] The acceleration vectors and jerk vectors in the trajectory segment dataset are converted into the thermal power values of the actuator through the power mapper to form a thermal power surface.
[0024] In a preferred embodiment, step S4 further includes the following:
[0025] The local weighted average method is used to calculate the time domain thermal stress density. A fixed time window is selected at each time point, and the Gaussian kernel function is used to perform weighted averaging on the thermal power values within the time window, and the results are normalized to the range of 0 to 1.
[0026] The fast Fourier transform of the thermal power surface is performed to obtain the spectrum, and the frequency domain energy dispersion is calculated using the spectral entropy method and normalized to the range of 0 to 1;
[0027] The time-domain thermal stress density and the frequency-domain energy concentration are multiplied by the dual-domain complementary integration algorithm and integrated over time to generate an energy impact judgment value. If the energy impact judgment value exceeds the preset energy impact threshold, the peak point in the acceleration vector is identified, split into multiple micropulse segments, and the time order is rearranged.
[0028] In a preferred embodiment, step S5 includes the following contents:
[0029] The rearranged trajectory data is converted into an instruction stream executable by the driver side, where the instruction stream is arranged in chronological order and each instruction corresponds to one control cycle; the instruction pile-up prediction function is calculated using the sliding average method, and the instruction data volume of the most recent control cycles is averaged and normalized to the range of 0 to 1; the cache write beat is dynamically adjusted according to the instruction pile-up prediction function and the driver side cache capacity, specifically, the cache write beat is equal to the basic write rate multiplied by 1 minus the ratio of the instruction pile-up prediction function value to the driver side cache capacity; the instruction stream is written to the driver side cache according to the adjusted cache write beat, and it is ensured that the driver side cache stores instructions of a preset advance depth of control cycles; the driver side cache occupancy rate is monitored in real time, and if the driver side cache occupancy rate exceeds the preset threshold, the write is suspended and an alarm is issued.
[0030] In a preferred embodiment, step S6 includes the following contents:
[0031] Collect real-time torque error and real-time posture error from the drive end. The real-time torque error is the deviation between the actual torque and the command torque in the command stream. The real-time posture error is the deviation between the actual posture and the command posture in the command stream.
[0032] Apply low-pass filtering to the real-time torque error and real-time posture error to generate smooth torque error signals and posture error signals;
[0033] The smoothed torque error signal and posture error signal are converted into inertia tensor correction through a feedback rectifier. The inertia tensor correction is calculated using a dynamic gain adjustment strategy, including the proportional term of the torque error, the rate of change term of the torque error, and the gain term of the posture error.
[0034] The Bayesian integration module is used to fuse the inertia tensor prior model and the inertia tensor correction value to generate the inertia tensor posterior model. Specifically, the inertia tensor prior model and the inertia tensor correction value are added and multiplied by the conditional probability based on the posture error signal. The inertia tensor posterior model is assigned to the inertia tensor prior model at the next moment and passed to the inertia estimation channel to provide a correction basis for generating load impact description information in the next cycle.
[0035] The forward-looking preprocessing system in the six-axis mechanical motion automation control includes: load detection module, inertia update module, trajectory generation module, energy optimization module, instruction push module and feedback correction module;
[0036] Load detection module: When the gripper pressure exceeds the set threshold, load impact description information is generated and written into the inertia estimation channel with a timestamp;
[0037] Inertia update module: The inertia estimation channel uses a dual-channel Kalman filter to fuse servo current data and encoder angular velocity data, and outputs an updated inertia tensor data packet within half a control cycle;
[0038] Trajectory generation module: The prediction cache replaces the original inertia model parameters with the inertia tensor data packet, and re-solves the acceleration vector and jerk vector of the next time slot using the sliding window method to form a trajectory segment data set;
[0039] Energy Optimization Module: The power mapper maps the trajectory segment dataset to the actuator thermal power surface, calculates the time-domain thermal stress density and frequency-domain energy dispersion, and uses a dual-domain complementary integration algorithm to generate an energy impact judgment. If the energy impact judgment is higher than a preset threshold, the acceleration pulse in the trajectory is split into multiple micro-pulse segments and their temporal order is reordered.
[0040] Instruction push module: The instruction distributor adjusts the cache write rhythm based on the instruction accumulation prediction function and pushes the rearranged instruction stream to the driver according to the preset advance depth to prevent cache overflow;
[0041] Feedback correction module: The feedback rectifier collects real-time torque error and posture error and inputs them into the Bayesian integration module to refresh the prior model of the inertia tensor and provide a correction basis for generating load impact description information in the next cycle.
[0042] The technical effects and advantages of the forward-looking preprocessing method and system in the automatic control of six-axis mechanical motion of the present invention are as follows:
[0043] This invention significantly improves the trajectory prediction stage's sensitivity to load changes by providing load impact description information in scenarios involving sudden inertia changes, combining it with a dual-channel Kalman filter to update the inertia tensor data packet in real time, and synchronously incorporating dynamic inertia information during trajectory segment generation. Furthermore, the invention introduces a dual-domain feature extraction method based on time-domain thermal stress density and frequency-domain energy dispersion. This dual-domain complementary integration mechanism generates an energy impact criterion, which serves as the basis for micropulse reordering decisions and dynamically optimizes the acceleration pulse layout. Furthermore, through advanced beat control of the instruction distributor, controller cache overflows are effectively avoided, ensuring instruction flow continuity. Finally, closed-loop feedback of real-time torque error and posture error is combined to continuously update the inertia prior model, achieving synchronized evolution of inertia changes and trajectory prediction. The overall solution improves trajectory continuity, current output stability, and energy dissipation efficiency of six-axis mechanical motion under sudden load changes, significantly reducing the risk of overload shutdown due to inertia lag and enhancing the adaptability of the forward-looking preprocessing method in dynamic and complex operating environments. BRIEF DESCRIPTION OF THE DRAWINGS
[0044] Figure 1 Schematic diagram of the flow of the forward-looking preprocessing method in the automatic control of six-axis mechanical motion of the present invention.
[0045] Figure 2 Schematic diagram of the structure of the forward-looking preprocessing system in the automatic control of six-axis mechanical motion of the present invention. DETAILED DESCRIPTION
[0046] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.
[0047] Example 1: Figure 1 The present invention provides a forward-looking preprocessing method for the automatic control of six-axis mechanical motion, including:
[0048] S1: When the gripper pressure exceeds the set threshold, load impact description information is generated and written to the inertia estimation channel with a timestamp.
[0049] S2: The inertia estimation channel uses a dual-channel Kalman filter to fuse the servo current data and the encoder angular velocity data, and outputs an updated inertia tensor data packet within half a control cycle.
[0050] S3: The prediction cache replaces the original inertia model parameters with the inertia tensor data packet, and re-solves the acceleration vector and jerk vector of the next time slot according to the sliding window method to form a trajectory segment data set.
[0051] S4: The power mapper maps the trajectory segment dataset to the actuator thermal power surface, calculates the time-domain thermal stress density and frequency-domain energy dispersion, and uses a dual-domain complementary integration algorithm to generate an energy impact judgment metric. If the energy impact judgment metric is higher than a preset threshold, the acceleration pulse in the trajectory is split into multiple micropulse segments and their temporal order is rearranged.
[0052] S5: The instruction distributor adjusts the cache write rhythm according to the instruction accumulation prediction function, and pushes the rearranged instruction stream to the driver end according to the preset advance depth to prevent cache overflow.
[0053] S6: The feedback rectifier collects the real-time torque error and posture error and inputs them into the Bayesian integration module to refresh the prior model of the inertia tensor and provide a correction basis for generating load impact description information in the next cycle.
[0054] In the field of automated six-axis robotic motion control, forward-looking preprocessing technology is a key means of achieving high precision, high speed, and multi-axis coordinated stability. This technology predicts the motion trajectory and dynamic parameters over several future control cycles and generates a continuous stream of control instructions based on the mechanical model to meet the requirements of complex collaborative tasks. For example, when an industrial robot performs tasks such as grasping, handling, or assembly, a six-axis robotic arm must respond quickly and maintain trajectory continuity. However, in scenarios with sudden load changes, such as grasping an object, the inertia characteristics of the end load can change dramatically. Because traditional forward-looking preprocessing methods rely on static or slowly updated inertia models, they fail to promptly reflect sudden load changes, resulting in a mismatch between the predicted control instructions and the actual mechanical state. This mismatch can cause servo drive current surges, drive overload shutdowns, and even electrical damage or motion interruption. Therefore, to address the issue of inertia parameter lag in sudden load changes, the present invention proposes an improved forward-looking preprocessing method that monitors load changes in real time and rapidly updates control parameters, enhancing the system's adaptability and stability. Step S1 of the present invention serves as the starting point for the entire scheme, capturing the initial signal of the sudden load change and providing accurate baseline data for subsequent steps.
[0055] Step S1 includes the following contents:
[0056] S1-1. Real-time monitoring of gripper pressure:
[0057] The gripper is a key component in the six-axis robotic arm's end-of-line grasping task. Its pressure changes directly reflect the dynamic characteristics of the load at the end. To provide real-time monitoring of the force applied to the gripper, pressure sensors or torque sensors installed on the gripper continuously collect pressure data. This data collection process occurs within each control cycle. The pressure sensor converts the current force applied to the gripper into an electrical signal, which is sampled and digitized to generate the current pressure value. The acquisition frequency is consistent with the duration of the control cycle.
[0058] S1-2. Pressure threshold setting and comparison:
[0059] A pressure threshold is determined in advance based on the design parameters, load capacity and historical operating data of the six-axis robot arm. This pressure threshold is used to distinguish the pressure range of the gripper during normal grasping from the abnormal pressure range when the load suddenly changes. In each control cycle, the current gripper pressure value collected by the pressure sensor is compared with the preset pressure threshold. The specific comparison process is: read the current gripper pressure value and compare it with the pressure threshold. If the current gripper pressure value is less than or equal to the pressure threshold, it is determined that the load is in the normal range and no subsequent processing is triggered; if the current gripper pressure value is greater than the pressure threshold, it is determined that a load sudden change has occurred and the subsequent steps are started. The purpose of setting the pressure threshold is to distinguish normal operation from abnormal load sudden changes, and to avoid unnecessary reactions of the system to routine pressure fluctuations.
[0060] S1-3. Load impact description information generation:
[0061] When the current gripper pressure exceeds the pressure threshold, a load impact description is generated. The current gripper pressure value is extracted as a quantitative indicator of the load change intensity. The gripper status indicator, including the gripper opening and closing angle or the direction of the gripping force, is also recorded to describe the end-user posture at the time of the load change. The current gripper pressure value and gripper status indicator are then combined into a structured data unit to ensure data integrity and a uniform format for subsequent analysis and use.
[0062] S1-4. Timestamp Append:
[0063] After generating the load shock description, the precise moment of the load mutation is recorded and a timestamp is generated. The generated timestamp is then bound to the load shock description to form a complete data packet, ensuring that the two are used in conjunction in subsequent processing.
[0064] S1-5. Write inertia estimation channel:
[0065] A data packet containing load impact description information and a timestamp is written to a dedicated inertia estimation channel and sent to the inertia estimation channel via a data transmission interface in a predefined protocol format.
[0066] In load mutation scenarios, such as when grasping an object, the inertia characteristics of the end load change dramatically, and traditional methods are difficult to adapt quickly, resulting in a mismatch between the control instructions and the actual state, causing current shock and driver overload. However, relying solely on gripper pressure monitoring cannot fully reflect the impact of load changes on the overall dynamic characteristics of the robotic arm, so it is necessary to fuse multi-source data to accurately update the inertia tensor. The present invention proposes step S2, which fuses the servo current data and encoder angular velocity data through a dual-channel Kalman filter to quickly generate an updated inertia tensor data packet within half a control cycle, providing an accurate basis for subsequent trajectory prediction.
[0067] Step S2 includes the following contents:
[0068] S2-1. Data input and preparation:
[0069] Receives load shock description information and timestamp from the inertia estimation channel.
[0070] The load impact description information is the initial signal of the load mutation generated when the gripper pressure exceeds a preset threshold. The timestamp records the precise moment when the load mutation occurs. Servo current data and encoder angular velocity data are simultaneously collected within the current control cycle. The servo current data represents the real-time current value of each axis's drive motor, indirectly reflecting the actual torque output by the motor through the corresponding relationship between current and torque. The encoder angular velocity data represents the real-time angular velocity information of each axis and is used to describe the motion state of the robot arm. The servo current data and encoder angular velocity data are time-synchronized to ensure that the time points of these data are fully aligned with the timestamp of the load impact description information. The synchronized data is organized as observation input for subsequent dual-channel Kalman filtering processing to estimate the inertia tensor of the robot arm.
[0071] S2-2. Dual-channel Kalman filter configuration:
[0072] A two-channel Kalman filter is used to estimate the inertia tensor of the robotic arm.
[0073] The dual-channel Kalman filter includes a current channel and an angular velocity channel, which process servo current data and encoder angular velocity data, respectively. The filter's state vector is defined as an estimate of the inertia tensor, which contains the inertia components of each axis of the robot arm. The current channel uses the servo current data and the current-torque mapping relationship to analyze the torque changes caused by sudden load changes, thereby deriving an estimate of the inertia tensor. The angular velocity channel uses the encoder angular velocity data and kinematic relationships to analyze the actual motion state of the robot arm and assist in correcting the inertia tensor estimate. The filter's initial state is provided by the load impact description information to ensure that the filter can quickly start and enter the estimation process when a sudden load change occurs.
[0074] The dual-channel Kalman filter design allows the system to utilize both dynamic and kinematic information for estimation. The current channel directly reflects changes in motor output torque through servo current data, making it suitable for capturing the dynamic effects of sudden load changes. The angular velocity channel provides the actual motion state of the robot arm through encoder angular velocity data, helping to correct for biases in the estimation. The initial state is set by load impact description information, ensuring that the filter can quickly adapt to new dynamic characteristics during sudden load changes.
[0075] S2-3. Filter status update:
[0076] The state update process of the dual-channel Kalman filter is divided into a prediction phase and a measurement update phase.
[0077] During the prediction phase, a priori estimates of the inertia tensor for the current moment are calculated based on the previous moment's estimated inertia tensor and the influence of process noise. Process noise represents the uncertainty in the temporal variation of the inertia tensor and is used to describe the natural fluctuations in dynamic environments.
[0078] During the measurement update phase, the prior inertia tensor estimates are corrected using both servo current data and encoder angular velocity data. Specifically, the current channel adjusts its inertia tensor estimate by comparing the actual servo current data with the current value predicted based on the prior estimate; the angular velocity channel adjusts its inertia tensor estimate by comparing the actual encoder angular velocity data with the angular velocity value predicted based on the prior estimate. The magnitude of the correction for each channel is determined by the Kalman gain matrix, which is dynamically adjusted based on the noise characteristics of the servo current and encoder angular velocity data to balance the accuracy and stability of the estimates.
[0079] For example, a filter state update is performed as follows:
[0080] Status prediction:
[0081] Based on the posterior state of the previous moment and process noise, calculate the prior state:
[0082] ;
[0083] It represents the inertia increment predicted based on the motion model and is derived from the load mutation trend.
[0084] Measurement Update:
[0085] use and Correction :
[0086] Current channel update:
[0087] ;
[0088] is the Kalman gain matrix of the current channel.
[0089] is the current observation matrix, which is constructed based on the torque-current relationship.
[0090] Angular velocity channel update:
[0091] ;
[0092] is the Kalman gain matrix of the angular velocity channel.
[0093] is the angular velocity observation matrix, which is constructed based on the kinematic relationship.
[0094] Indicates the real-time current value of each axis drive motor, reflecting the actual torque output by the motor.
[0095] Indicates the angular velocity of each axis, measured by the encoder.
[0096] The combination of the prediction phase and the measurement update phase enables the dual-channel Kalman filter to quickly converge to the new inertia tensor value in the event of sudden load changes. The dynamically adjusted Kalman gain matrix enhances the filter's adaptability to changes in data quality, ensuring reliable inertia tensor estimation under various operating conditions.
[0097] S2-4. Integration and Optimization:
[0098] The inertia tensor estimate of the current channel and the inertia tensor estimate of the angular velocity channel are fused to generate the final inertia tensor estimate. The fusion process is as follows:
[0099] First, a fusion coefficient is calculated based on the confidence level of the servo current data and the confidence level of the encoder angular velocity data. The fusion coefficient ranges from 0 to 1. The confidence level is determined by the noise level and consistency of the data. Data with lower noise and higher consistency has higher confidence.
[0100] Next, the fusion coefficients are used to perform a weighted average of the estimated inertia tensors from the current channel and the angular velocity channel to calculate the fused inertia tensor estimate. After fusion, the system applies physical constraints to the estimated inertia tensor, ensuring that its components are non-negative and within the dynamic range of the manipulator, thereby avoiding the generation of unreasonable estimates.
[0101] For example, the fusion can be as follows:
[0102] Data Fusion:
[0103] The current channel is estimated and angular velocity channel estimation Perform fusion to obtain the fused inertia tensor estimate :
[0104] ;
[0105] is the fusion coefficient, according to and The confidence level is determined by , and the value range is [0,1].
[0106] Optimization constraints:
[0107] right Physical constraints are applied to ensure that the components of the inertia tensor are non-negative and within the dynamic range of the manipulator. This fused inertia tensor estimate is more comprehensive and accurate. The application of physical constraints avoids control errors caused by unreasonable estimation results and ensures the safe operation of the manipulator under sudden load changes.
[0108] S2-5. Output inertia tensor data packet:
[0109] The fused inertia tensor estimate is packaged into an inertia tensor data packet, which contains the components of the inertia tensor and a timestamp consistent with the load impact description information from step S1. The inertia tensor data packet is generated within half a control cycle and passed to the prediction cache module. The entire process is subject to strict time constraints to ensure that the inertia tensor data packet can be generated and passed in a timely manner to meet the real-time processing requirements of subsequent steps.
[0110] Steps S1 and S2 each generate load impact descriptions by monitoring gripper pressure and using a dual-channel Kalman filter to fuse servo current data with encoder angular velocity data, rapidly outputting an updated inertia tensor data packet. However, simply updating the inertia tensor is insufficient to fully address sudden load changes; the updated inertia parameters must be applied to trajectory prediction to ensure the accuracy of control instructions. Step S3 is designed for this purpose, using the inertia tensor data packet provided by step S2 to update the prediction model and recalculate the motion parameters for the next time slot to generate a trajectory segment data set.
[0111] Step S3 includes the following contents:
[0112] S3-1. Inertia model parameter update:
[0113] The inertia tensor data packet contains two parts: an updated inertia tensor obtained by fusing servo current data and encoder angular velocity data through a dual-channel Kalman filter; and a timestamp recording the time the data was generated. The updated inertia tensor reflects the robot arm's latest dynamic characteristics after a sudden load change, while the timestamp indicates when the data was generated. A prediction cache module in the system maintains a set of inertia model parameters that support subsequent trajectory prediction calculations.
[0114] The original inertia model parameter set in the prediction cache module is replaced with the updated inertia tensor extracted from the inertia tensor data package to ensure that the prediction model reflects the current load state of the robot arm. At the same time, the timing of the inertia parameter update is calibrated based on the timestamp to align the update operation with the time base of the current control cycle, avoiding errors in the prediction results due to time deviations. The specific calibration process is as follows: the timestamp is compared with the start time of the current control cycle. If there is a deviation, the effective time of the updated inertia tensor is adjusted to align it with the control cycle.
[0115] S3-2. Sliding window method configuration:
[0116] Processing technology logic:
[0117] The sliding window method is used for trajectory prediction. The sliding window method gradually updates the prediction data by moving a fixed-width window on the time axis.
[0118] The width of the window is defined as the time domain range of the prediction, which represents the time span of the future motion state that can be predicted.
[0119] The step size of the window is defined as the frequency of prediction updates, which represents the time interval between each window movement and is set to be less than or equal to the length of the control period.
[0120] The future time is divided into multiple time slots, each time slot corresponds to a prediction point, where the next time slot specifically refers to the first prediction point after the current time, that is, the current time plus the length of a control cycle.
[0121] In each control cycle, the window starts from the current time, covers a period of historical data forward, and extends backward to a future time point within the prediction time domain. The prediction results are generated by analyzing the data in the window.
[0122] The sliding window method continuously updates prediction data by gradually moving the window, adapting to the dynamic changes of the robot arm. The window width and step size are set to strike a balance between prediction depth and update frequency, allowing the system to predict future motion states while also responding promptly to current load changes. The time slot division breaks down the prediction data into discrete time points, facilitating subsequent trajectory generation and data processing.
[0123] S3-3. Acceleration and jerk vector solution:
[0124] Based on the updated inertia model parameter set, the dynamic equations of the six-axis robotic arm are constructed.
[0125] The dynamic equations describe the relationship between the angular displacement, angular velocity, angular acceleration, and angular jerk of each axis of the manipulator. Using historical data within a sliding window (such as the previous moment's angular velocity and angular displacement) and the current motion state, the acceleration vector and jerk vector for the next time slot are predicted. The specific calculation process is as follows:
[0126] First, the system calculates the acceleration of each axis using the Newton-Euler method. This calculation takes the current torque vector as input, subtracts the effects of the Coriolis force, centrifugal force, and gravity, and then processes the remaining value using the inverse matrix of the inertia tensor to obtain the acceleration vector.
[0127] The torque vector is provided by the servo drive, the Coriolis and centrifugal force terms are calculated by the square or product of the angular velocity, and the gravity term is determined based on the current position of the robot arm.
[0128] Next, the jerk vector is calculated by taking the difference between the acceleration vector of the next time slot and the acceleration vector of the current moment, and then dividing it by the duration of the control cycle to obtain the jerk value.
[0129] The Coriolis force is a virtual force observed in a rotating reference frame due to the rotational motion of the reference frame. Its magnitude is related to the mass and speed of the object and the angular velocity of the reference frame.
[0130] S3-4. Trajectory segment dataset generation:
[0131] The predicted acceleration vectors and jerk vectors are organized into a trajectory segment dataset.
[0132] The trajectory segment dataset contains prediction data for multiple time slots. The data for each time slot is recorded as a triplet consisting of a time point, an acceleration vector, and a jerk vector. These triples are arranged in chronological order to form a continuous trajectory segment. The resulting trajectory segment dataset is passed to the power mapper in step S4 for energy impact analysis. The data for each time slot is extracted from the sliding window prediction results, recorded one by one in chronological order, and packaged into a dataset.
[0133] Steps S1 through S3 sequentially monitor gripper pressure, update the inertia tensor, and generate a trajectory segment dataset, providing a dynamic basis for adapting to sudden load changes. However, trajectory prediction alone is insufficient to fully address the risk of drive overload, especially when sudden load changes cause a dramatic change in the terminal inertia characteristics. The mismatch between control instructions and actual conditions can cause current surges and excessive thermal loads. Step S4 addresses this issue by evaluating the trajectory's impact on the drive's thermal power and optimizing energy distribution to ensure safe drive operation.
[0134] Step S4 includes the following contents:
[0135] S4-1. Trajectory segment dataset mapping:
[0136] The trajectory segment dataset is received from step S3 , where the trajectory segment dataset includes prediction data of multiple time slots, and each time slot records a time point, an acceleration vector, and a jerk vector.
[0137] The power mapper converts the acceleration and jerk vectors in the trajectory segment dataset into thermal power values for the actuator. This conversion is based on the actuator's thermal model and takes into account the impact of acceleration and jerk on the actuator's power consumption. The thermal power values of the actuator change over time, forming a thermal power surface that reflects the thermal load on the actuator during trajectory execution. The specific operations are:
[0138] For each time slot, the acceleration and jerk vectors for that time slot are input to calculate the corresponding thermal power value according to a predefined thermal power function. The thermal power function is determined by the physical and heat dissipation characteristics of the driver and is typically proportional to the square of the driver current.
[0139] The generation of thermal power surfaces enables the system to quantify the thermal impact of trajectory execution on the drive, facilitating the identification of potential risks of excessive thermal loads.
[0140] S4-2. Time domain thermal stress density calculation:
[0141] Thermal stress density is calculated in the time domain to describe the local concentration of thermal power along the time axis. This calculation uses a local weighted average method: for each time point, a fixed time window is selected that contains the thermal power values for a period of time before and after that time point. The thermal power values within the window are weighted averaged using a Gaussian kernel function, which assigns greater weights to thermal power values closer to the current time point and smaller weights to thermal power values farther away. After the calculation is complete, the thermal stress density at all time points is normalized to a range of 0 to 1 to align with subsequent frequency domain indicators.
[0142] Time-domain thermal stress density reflects the local concentration of thermal power over time. High-density areas indicate that the drive is experiencing significant thermal loads within a short period of time, potentially leading to overload risks. Using the local weighted average method, thermal power data can be smoothed to reduce noise while preserving local characteristics.
[0143] The normalized thermal stress density provides a standardized metric for the system, which is convenient for comparison and fusion with frequency domain metrics, and helps to comprehensively evaluate the thermal impact of trajectory execution on the actuator.
[0144] S4-3. Frequency domain energy dispersion calculation:
[0145] Frequency domain analysis of the thermal power surface is performed, and a fast Fourier transform is performed on the data of thermal power variations over time to obtain the thermal power spectrum. Based on the spectrum, the frequency domain energy dispersion is calculated using the spectral entropy method. First, the normalized power spectral density (PSD) is calculated, which normalizes the power values of the spectrum so that their sum is 1. Then, the entropy of the normalized power spectral density is calculated. A higher entropy value indicates greater energy dispersion in the frequency domain. Finally, the frequency domain energy dispersion is normalized to a range of 0 to 1 to ensure consistency with the time domain indicator.
[0146] Frequency-domain energy dispersion reflects the degree of thermal power dispersion in the frequency domain. Energy concentrated at a specific frequency can cause the driver to resonate or overload at that frequency. Spectral entropy can quantify the uniformity of energy distribution, providing a basis for evaluating trajectory execution stability.
[0147] The normalized frequency-domain energy dispersion and the time-domain thermal stress density complement each other and together constitute a comprehensive indicator for evaluating the impact of trajectory execution on the driver, thereby improving the comprehensiveness and accuracy of the evaluation.
[0148] S4-4. Dual-domain complementary integration algorithm:
[0149] The dual-domain complementary integration algorithm is used to combine the time domain thermal stress density and frequency domain energy dispersion to generate the energy impact judgment quantity. The specific operation is:
[0150] The energy impact judgment metric is obtained by multiplying the time-domain thermal stress density with the frequency-domain energy concentration (i.e., 1 minus the frequency-domain energy dispersion). This is then integrated over the entire trajectory segment time. The energy impact judgment metric combines the characteristics of the time and frequency domains to reflect the overall energy impact of trajectory execution on the actuator.
[0151] The dual-domain complementary integration algorithm integrates time-domain and frequency-domain metrics to comprehensively assess the impact of trajectory execution on the drive's thermal load and energy distribution. Time-domain thermal stress density focuses on the local concentration of heat load, while frequency-domain energy concentration focuses on the concentration of energy in the frequency domain. These two complement each other and jointly determine the severity of the energy impact.
[0152] The energy impact judgment value provides a comprehensive quantitative indicator for the system to determine whether the trajectory execution will cause excessive energy impact on the drive.
[0153] S4-5. Energy Impact Judgment and Pulse Rearrangement:
[0154] An energy impact threshold is pre-set, which is determined by the thermal capacity and heat dissipation capability of the driver. If the calculated energy impact judgment exceeds the energy impact threshold, it is considered that the energy impact of the trajectory execution on the driver is too large, and the acceleration pulse in the trajectory needs to be adjusted. The specific adjustment method is:
[0155] Peak points in the acceleration vector are identified and treated as acceleration pulses. These pulses are then split into multiple micropulse segments, with the amplitude of each micropulse being the original pulse amplitude divided by the number of segments. The temporal order of the micropulses is then rearranged, using a uniform distribution strategy to smooth the energy distribution over time. After this adjustment, a dataset of rearranged trajectory segments is generated, containing the adjusted acceleration and jerk vectors.
[0156] When the energy impact judgment exceeds the threshold, it indicates that trajectory execution may cause drive overload. By splitting and rearranging acceleration pulses, the concentrated energy impact can be spread over a longer period of time, reducing the thermal load on the drive caused by a single impact.
[0157] Step S4 receives the trajectory segment dataset from step S3, generates a thermal power surface, calculates the time-domain thermal stress density and frequency-domain energy dispersion, and uses a dual-domain complementary integration algorithm to generate an energy impact judgment. When the judgment exceeds a threshold, the acceleration pulses are split and rearranged, successfully optimizing the energy impact of trajectory execution on the actuator. This process ensures the safe operation of the six-axis robot arm under sudden load changes and provides reliable trajectory data for command distribution in step S5.
[0158] Steps S1 to S4, in turn, lay the dynamic foundation for adapting to sudden load changes by monitoring gripper pressure, updating the inertia tensor, generating a trajectory segment dataset, and optimizing energy impact. However, the optimized trajectory data must be pushed to the drive end in an efficient and secure manner to prevent instruction cache overflow and ensure the real-time and continuity of control instructions. Step S5 is designed to meet this requirement. The instruction distributor adjusts the cache write rhythm and pushes the instruction stream, providing a stable instruction foundation for the feedback rectification in the subsequent step S6.
[0159] Step S5 includes the following contents:
[0160] S5-1. Instruction stream reception and analysis:
[0161] Receive the rearranged trajectory data, which includes optimized acceleration and jerk vectors, each corresponding to a specific time point. Convert the trajectory data into a command stream that the driver can execute. The command stream can be in the form of position, velocity, or torque commands, depending on the driver's requirements. The command stream is arranged in chronological order, with each command corresponding to a control cycle of a predetermined fixed duration. The conversion process ensures a one-to-one correspondence between the command stream and the time points of the trajectory data, allowing the driver to execute the robot's motion trajectory as expected.
[0162] S5-2. Instruction stack prediction function:
[0163] An instruction accumulation prediction function is defined to evaluate the degree of instruction stream occupancy of the driver cache. The instruction accumulation prediction function uses the sliding average method to calculate the amount of instruction data:
[0164] A fixed sliding window is selected, which contains the instruction data volume of the most recent control cycles. The instruction data volume within the sliding window is averaged to obtain the instruction backlog prediction value at the current moment. The instruction data volume represents the data size of the instruction stream within each control cycle, measured in bytes. The size of the sliding window is determined by the number of control cycles. A larger window size results in a smoother prediction, but a slower response to changes in data volume. The instruction backlog prediction value is normalized to a range of 0 to 1 for comparison with the driver-side cache capacity.
[0165] The driver's cache has limited capacity, and the amount of instruction data can fluctuate over time, leading to unstable cache occupancy. The instruction backlog prediction function uses a sliding average to smooth out fluctuations in instruction data volume, predicting cache occupancy trends in advance and preventing cache overflows caused by sudden increases in data volume.
[0166] The normalized instruction accumulation prediction value provides a standardized evaluation indicator, which makes it easier for the system to monitor the cache status in real time and adjust the write rate of the instruction stream in a timely manner, thereby ensuring the stable operation of the cache.
[0167] S5-3. Cache write rhythm adjustment:
[0168] The cache write tach is dynamically adjusted based on the output of the instruction accumulation prediction function and the driver cache capacity. The cache write tach controls the rate at which the instruction stream is written to the driver cache. The adjustment strategy is:
[0169] A base write rate is set, and then the write rate is dynamically reduced based on the ratio of the predicted instruction backlog to the cache capacity. Specifically, the cache write tactile time is equal to the base write rate multiplied by (1 minus the ratio of the predicted instruction backlog to the cache capacity). When the predicted instruction backlog approaches the cache capacity, the cache write tactile time is reduced to slow down the instruction stream write speed. When the predicted instruction backlog is low, the cache write tactile time remains unchanged or increases appropriately to improve write efficiency.
[0170] Dynamic adjustment of the cache write tactile cycle controls the instruction stream write speed in real time based on the instruction stream data volume and actual cache occupancy. This adaptive adjustment mechanism ensures that the instruction stream is delivered as quickly as possible without cache overflow, thereby improving the efficiency and security of instruction delivery.
[0171] S5-4. Instruction stream push and advance depth:
[0172] A look-ahead depth is pre-set, indicating the number of control cycles that the instruction stream is ahead of the driver execution. The instruction distributor writes the instruction stream to the driver cache according to the adjusted cache write rhythm, and ensures that the cache always stores instructions for the look-ahead depth control cycles. The look-ahead depth is set to cope with delays or fluctuations in the instruction delivery process, ensuring that the driver always has enough instructions available at the time of execution. The cache occupancy rate is monitored in real time. The cache occupancy rate is defined as the ratio of the instruction accumulation prediction value to the cache capacity. If the cache occupancy rate exceeds the preset threshold, the writing of the instruction stream is suspended and an alarm is issued to prevent cache overflow.
[0173] The look-ahead depth setting allows the system to reserve a certain amount of buffer space during instruction delivery to cope with unforeseen delays or fluctuations, ensuring the continuity and real-time nature of the instruction flow. Real-time monitoring and alerting of cache occupancy further enhance system security and stability.
[0174] Step S5 receives the reordered trajectory data generated in step S4, parses it into an instruction stream, and dynamically adjusts the cache write cadence using an instruction accumulation prediction function. This instruction stream is pushed to the driver according to the preset lookahead depth, effectively preventing cache overflow. This process ensures the real-time and stability of the instruction stream under sudden load changes and provides a reliable instruction foundation for feedback rectification in step S6.
[0175] The instruction distributor is a key component in the six-axis robotic motion automation control system. Its primary responsibility is to push an optimized motion instruction stream to the driver according to a preset beat and advance depth. It receives trajectory data from the trajectory rearrangement processing module and parses it into an instruction stream that can be directly executed by the driver. To ensure the real-time and stable transmission of instructions, the instruction distributor dynamically adjusts the cache write beat using an instruction accumulation prediction function, while also monitoring the driver's cache occupancy to prevent cache overflow. This mechanism ensures that the robotic arm can continue to execute control instructions continuously and smoothly even in complex scenarios such as sudden load changes, thereby improving system reliability and motion accuracy.
[0176] Steps S1 to S5 sequentially complete the generation of load impact description information, the update of the inertia tensor, the generation of trajectory segments, the optimization of energy impact, and the push of instruction streams, providing a dynamic control foundation for the robot arm to adapt to sudden changes in load. However, the persistence and unpredictability of load changes require the control process to have adaptive capabilities to maintain the accuracy of the inertia tensor model and provide a reliable basis for subsequent cycles. Step S6, in response to this requirement, forms a closed-loop control mechanism through real-time error acquisition and model refreshing, laying the foundation for the generation of corrected load impact description information in the next cycle of step S1.
[0177] Step S6 includes the following contents:
[0178] S6-1. Real-time error collection:
[0179] Collect real-time torque error and real-time posture error from the drive end.
[0180] The real-time torque error refers to the deviation between the torque actually executed by the driver and the command torque in the command stream pushed in step S5;
[0181] The real-time posture error refers to the deviation between the posture actually executed by the driver and the instruction posture in the instruction stream pushed in step S5.
[0182] The collected real-time torque error and real-time posture error are low-pass filtered to generate a smooth error signal by retaining the low-frequency signal and filtering out the high-frequency noise. The smoothed error signal is used as input data for subsequent processing to ensure the stability and accuracy of the calculation results.
[0183] S6-2. Feedback rectifier:
[0184] The feedback rectifier converts the smoothed real-time torque error and real-time posture error into inertia tensor correction. The conversion process adopts a dynamic gain adjustment strategy, which is as follows:
[0185] First, the proportional term of the torque error is calculated to represent the direct effect of the torque deviation on the correction amount;
[0186] Then the rate of change term of the torque error is calculated to represent the contribution of the torque error to the correction amount over time;
[0187] Then the gain term of the posture error is calculated to represent the correction effect of the posture deviation on the correction amount;
[0188] Finally, the proportional term of the torque error, the rate of change term of the torque error, and the gain term of the posture error are added together to obtain the inertia tensor correction.
[0189] The inertia tensor correction represents the current adjustment to the inertia tensor. Based on the dynamic response characteristics of the manipulator and the frequency of sudden load changes, the proportional gain, rate of change gain, and posture error gain are pre-calibrated to ensure a balance between fast response and stability.
[0190] The feedback rectifier comprehensively analyzes real-time torque and posture errors to comprehensively assess the manipulator's execution deviations and converts them into adjustments to the inertia tensor model. A dynamic gain adjustment strategy enables the system to adaptively adjust the corrections based on the manipulator's actual operating state, improving both accuracy and robustness.
[0191] The feedback rectifier is a core module in the six-axis mechanical motion automation control system. Its function is to convert the real-time acquired torque error and posture error into corrections to the inertia tensor to optimize the prior model of the inertia tensor. A dynamic gain adjustment strategy is adopted to calculate the adjustment amplitude of the inertia tensor through comprehensive analysis of the smoothed torque error and posture error. To achieve a balance between fast response and stability, the feedback rectifier calibrates the proportional gain, differential gain, and posture error gain to ensure the accuracy and applicability of the corrections. Ultimately, the feedback rectifier provides precise correction information for the subsequent Bayesian integration module, supporting the dynamic adaptation of the inertia tensor model, thereby improving the control accuracy and robustness of the system.
[0192] S6-3. Bayesian integration module:
[0193] The Bayesian integration module uses the Bayesian inference method to fuse the prior model of the inertia tensor with the inertia tensor correction to generate a posterior model. The specific operations are:
[0194] The prior model is added to the inertia tensor correction and multiplied by a conditional probability value to obtain the posterior model. The conditional probability value represents the likelihood of the inertia tensor correction given the real-time pose error. The likelihood is calculated using an exponential decay model. The specific process is: the difference between the real-time pose error and the reference value is calculated, and the degree to which this difference deviates from the reference value is quantified using an exponential function. The reference value is calibrated based on the historical execution data of the manipulator, and the exponential decay constant is determined by the accuracy requirements of the manipulator. The exponential decay model emphasizes the exponential impact of the real-time pose error deviating from the reference value, avoiding the simple linear assumption of the error effect in traditional methods.
[0195] For example, the calculation process can be as follows:
[0196] Function:
[0197] Using the Bayesian inference method, the prior model of the inertia tensor and correction amount Fusion, generating posterior model .
[0198] Bayesian Update:
[0199] Use the probability integral update formula:
[0200] ;
[0201] in:
[0202] is the prior model at the current moment, and its initial value is the inertia tensor data packet output in step S2 .
[0203] Is the conditional probability, indicating that given the position error Lower correction amount The likelihood of .
[0204] Likelihood calculation:
[0205] Compute the likelihood using an exponential decay model:
[0206] ;
[0207] in:
[0208] is the reference value of the pose error, which is calibrated based on historical execution data.
[0209] is the attenuation constant that controls the sensitivity of the likelihood and is determined by the accuracy requirements of the robotic arm.
[0210] This formula avoids the traditional variance calculation and emphasizes the exponential effect of the error deviation from the reference value.
[0211] By fusing a priori models of the inertia tensor with real-time inertia tensor corrections, the Bayesian inference method provides more accurate inertia tensor estimates in uncertain environments. The exponential decay model emphasizes the impact of real-time pose errors in the likelihood calculation, enhancing the system's sensitivity to deviations and thus improving the accuracy of the posterior model.
[0212] S6-4. Prior model update:
[0213] Assign the posterior model to the prior model of the next moment to complete the update of the inertia tensor. Use the posterior model calculated at the current moment as the prior model of the next moment for processing in the next cycle. The refreshed prior model is passed to the inertia estimation channel of step S1 as a correction basis for generating load impact description information. The refresh of the prior model realizes the dynamic adaptation of the inertia tensor model, enabling the system to continuously optimize the model parameters and maintain the accuracy of the model under load mutation scenarios. The refreshed prior model provides the latest dynamic information for step S1, ensuring that the generation of load impact description information is based on the current actual state of the robotic arm. It enables the robotic arm to maintain smooth operation under load mutation scenarios, improving the stability and reliability of the system.
[0214] The processing technology logic of step S6 forms a closed-loop control mechanism with step S5 and step S1. Step S5 pushes the instruction stream to the drive end through the instruction distributor, providing a control basis for the execution of the robotic arm. Step S6 receives the real-time torque error and real-time posture error after execution by the drive end, uses the feedback rectifier and Bayesian integral module to refresh the prior model of the inertia tensor, and passes the updated prior model to step S1 to provide a correction basis for the generation of load impact description information for the next cycle. As the core link of feedback and model refresh, step S6 ensures the dynamic adaptation of the inertia tensor model and improves the control accuracy and stability of the six-axis robotic arm in load mutation scenarios.
[0215] Example 2: Figure 2 The present invention provides a forward-looking preprocessing system for the automatic control of six-axis mechanical motion, including: a load detection module, an inertia update module, a trajectory generation module, an energy optimization module, an instruction push module and a feedback correction module;
[0216] Load detection module: When the gripper pressure exceeds the set threshold, load impact description information is generated and written into the inertia estimation channel with a timestamp.
[0217] Inertia update module: The inertia estimation channel uses a dual-channel Kalman filter to fuse servo current data and encoder angular velocity data, and outputs an updated inertia tensor data packet within half a control cycle.
[0218] Trajectory generation module: The prediction cache replaces the original inertia model parameters with the inertia tensor data packet, and re-solves the acceleration vector and jerk vector of the next time slot according to the sliding window method to form a trajectory segment data set.
[0219] Energy Optimization Module: The power mapper maps the trajectory segment dataset to the actuator thermal power surface, calculates the time-domain thermal stress density and frequency-domain energy dispersion, and uses a dual-domain complementary integration algorithm to generate an energy impact judgment metric. If the energy impact judgment metric is higher than a preset threshold, the acceleration pulse in the trajectory is split into multiple micropulse segments and their temporal order is rearranged.
[0220] Instruction push module: The instruction distributor adjusts the cache write rhythm according to the instruction accumulation prediction function, and pushes the rearranged instruction stream to the driver end according to the preset advance depth to prevent cache overflow.
[0221] Feedback correction module: The feedback rectifier collects real-time torque error and posture error and inputs them into the Bayesian integration module to refresh the prior model of the inertia tensor and provide a correction basis for generating load impact description information in the next cycle.
[0222] The above formulas are all dimensionless and numerical calculations. The formulas are obtained by collecting a large amount of data and performing software simulation to obtain the most recent real situation. The preset parameters in the formulas are set by technicians in this field according to actual conditions.
[0223] It should be noted that the system of the present invention can be deployed on the device itself to realize embedded applications, and can also be run on a PC or other terminal with a user interface, thereby meeting a variety of hardware environments and usage requirements.
[0224] The above description is merely illustrative of certain exemplary embodiments of the present invention. It goes without saying that those skilled in the art will be able to modify the described embodiments in various ways without departing from the spirit and scope of the present invention. Therefore, the above drawings and description are illustrative in nature and should not be construed as limiting the scope of protection of the claims.
[0225] It should be noted that, in this document, if there are relational terms such as first and second, etc., they are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "comprises", "includes" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device that includes a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article or device. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, article or device that includes the element.
[0226] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.
Claims
1. A forward-looking preprocessing method for the automated control of six-axis mechanical motion, characterized in that: Including steps: S1: When the gripper pressure exceeds the set threshold, load impact description information is generated and written into the inertia estimation channel with a timestamp. S2: The inertia estimation channel uses a dual-channel Kalman filter to fuse servo current data and encoder angular velocity data, and outputs an updated inertia tensor data packet within half a control cycle; S3: The prediction cache replaces the original inertia model parameters with the inertia tensor data packet, and re-solves the acceleration vector and jerk vector of the next time slot according to the sliding window method to form a trajectory segment data set; S4: The power mapper maps the trajectory segment dataset to the actuator thermal power surface, calculates the time-domain thermal stress density and frequency-domain energy dispersion, and generates an energy impact judgment metric using a dual-domain complementary integration algorithm. If the energy impact judgment metric is higher than a preset threshold, the acceleration pulse in the trajectory is split into multiple micropulse segments and their temporal order is rearranged. S5: The instruction dispatcher adjusts the cache write rhythm based on the instruction accumulation prediction function and pushes the rearranged instruction stream to the driver according to the preset advance depth to prevent cache overflow. S6: The feedback rectifier collects the real-time torque error and posture error and inputs them into the Bayesian integration module to refresh the prior model of the inertia tensor and provide a correction basis for generating load impact description information in the next cycle.
2. The forward-looking preprocessing method in the automatic control of six-axis mechanical motion according to claim 1 is characterized in that: Step S1 includes the following contents: The gripper pressure is monitored in real time by a pressure sensor or torque sensor installed on the gripper, and the acquisition frequency is consistent with the control cycle. When the gripper pressure exceeds the pressure threshold determined based on the six-axis robot arm's design parameters, load capacity, and historical operating data, a load impact description is generated. The load impact description is stored in a structured data format and includes the gripper pressure value and gripper status identifier. The moment when the load mutation occurs is recorded as a timestamp, and the timestamp is aligned with the time base of the control cycle. The load impact description is bound to the timestamp and written into the inertia estimation channel.
3. The forward-looking preprocessing method in the automatic control of six-axis mechanical motion according to claim 2 is characterized in that: Step S2 includes the following contents: Receive the load impact description information and timestamp transmitted by the inertia estimation channel; collect the servo current data and encoder angular velocity data in the current control cycle; use a dual-channel Kalman filter, in which the current channel estimates the inertia tensor based on the servo current data and the mapping relationship between current and torque, and the angular velocity channel assists in correcting the inertia tensor estimation based on the encoder angular velocity data and the kinematic relationship. The initial state of the dual-channel Kalman filter is provided by the load impact description information. In the prediction stage, the dual-channel Kalman filter calculates the prior inertia tensor estimate based on the inertia tensor estimate value at the previous moment and the process noise. In the measurement update stage, the servo current data and encoder angular velocity data are used to correct the prior inertia tensor estimate. The correction amplitude is determined by the dynamically adjusted Kalman gain matrix.
4. The forward-looking preprocessing method in the automatic control of six-axis mechanical motion according to claim 3 is characterized in that: Step S2 includes the following contents: The estimation results of the current channel and the angular velocity channel are fused and a confidence-weighted fusion method is used to generate a fused inertia tensor estimate. Physical constraints are imposed on the fused inertia tensor estimate to ensure that the components of the inertia tensor are non-negative and within the dynamic range of the manipulator. The fused inertia tensor estimate is encapsulated into an inertia tensor data packet, which contains the components of the inertia tensor and a timestamp, and the output is delivered within half a control cycle.
5. The forward-looking preprocessing method in the automatic control of six-axis mechanical motion according to claim 4 is characterized in that: Step S3 includes the following contents: The original inertia model parameter set in the prediction cache module is replaced with the updated inertia tensor, and the timing of the inertia parameter update is calibrated according to the timestamp. The window width and step size are configured using the sliding window method, and the future time is divided into multiple time slots, with the next time slot being the first prediction point after the current time. The dynamic equation is constructed based on the updated inertia model parameter set. The Newton-Euler method is used to calculate the acceleration vector of the next time slot using the historical data and current state in the sliding window. Specifically, the acceleration vector is obtained by subtracting the Coriolis force, centrifugal force, and gravity terms from the torque vector at the current moment through the inverse matrix of the inertia tensor. The jerk vector is calculated by taking the time derivative of the acceleration vector. The predicted acceleration vector and jerk vector are arranged in chronological order as a trajectory segment dataset.
6. The forward-looking preprocessing method in the automatic control of six-axis mechanical motion according to claim 5 is characterized in that: Step S4 includes the following contents: The acceleration vectors and jerk vectors in the trajectory segment dataset are converted into the thermal power values of the actuator through the power mapper to form a thermal power surface.
7. The forward-looking preprocessing method in the automatic control of six-axis mechanical motion according to claim 6 is characterized in that: Step S4 also includes the following: The local weighted average method is used to calculate the time domain thermal stress density. A fixed time window is selected at each time point, and the Gaussian kernel function is used to perform weighted averaging on the thermal power values within the time window, and the results are normalized to the range of 0 to 1. The fast Fourier transform of the thermal power surface is performed to obtain the spectrum, and the frequency domain energy dispersion is calculated using the spectral entropy method and normalized to the range of 0 to 1; The time-domain thermal stress density and the frequency-domain energy concentration are multiplied by the dual-domain complementary integration algorithm and integrated over time to generate an energy impact judgment value. If the energy impact judgment value exceeds the preset energy impact threshold, the peak point in the acceleration vector is identified, split into multiple micropulse segments, and the time order is rearranged.
8. The forward-looking preprocessing method in the automatic control of six-axis mechanical motion according to claim 7, characterized in that: Step S5 includes the following contents: The rearranged trajectory data is converted into an instruction stream executable by the driver side, where the instruction stream is arranged in chronological order and each instruction corresponds to one control cycle; the instruction pile-up prediction function is calculated using the sliding average method, and the instruction data volume of the most recent control cycles is averaged and normalized to the range of 0 to 1; the cache write beat is dynamically adjusted according to the instruction pile-up prediction function and the driver side cache capacity, specifically, the cache write beat is equal to the basic write rate multiplied by 1 minus the ratio of the instruction pile-up prediction function value to the driver side cache capacity; the instruction stream is written to the driver side cache according to the adjusted cache write beat, and it is ensured that the driver side cache stores instructions of a preset advance depth of control cycles; the driver side cache occupancy rate is monitored in real time, and if the driver side cache occupancy rate exceeds the preset threshold, the write is suspended and an alarm is issued.
9. The forward-looking preprocessing method in the automatic control of six-axis mechanical motion according to claim 8, characterized in that: Step S6 includes the following contents: Collect real-time torque error and real-time posture error from the drive end. The real-time torque error is the deviation between the actual torque and the command torque in the command stream. The real-time posture error is the deviation between the actual posture and the command posture in the command stream. Apply low-pass filtering to the real-time torque error and real-time posture error to generate smooth torque error signals and posture error signals; The smoothed torque error signal and posture error signal are converted into inertia tensor correction through a feedback rectifier. The inertia tensor correction is calculated using a dynamic gain adjustment strategy, including the proportional term of the torque error, the rate of change term of the torque error, and the gain term of the posture error. The Bayesian integration module is used to fuse the inertia tensor prior model and the inertia tensor correction value to generate the inertia tensor posterior model. Specifically, the inertia tensor prior model and the inertia tensor correction value are added and multiplied by the conditional probability based on the posture error signal. The inertia tensor posterior model is assigned to the inertia tensor prior model at the next moment and passed to the inertia estimation channel to provide a correction basis for generating load impact description information in the next cycle.
10. A forward-looking preprocessing system for automated control of six-axis mechanical motion, used to implement the forward-looking preprocessing method for automated control of six-axis mechanical motion according to any one of claims 1 to 9, characterized in that: include: Load detection module, inertia update module, trajectory generation module, energy optimization module, instruction push module and feedback correction module; Load detection module: When the gripper pressure exceeds the set threshold, load impact description information is generated and written into the inertia estimation channel with a timestamp; Inertia update module: The inertia estimation channel uses a dual-channel Kalman filter to fuse servo current data and encoder angular velocity data, and outputs an updated inertia tensor data packet within half a control cycle; Trajectory generation module: The prediction cache replaces the original inertia model parameters with the inertia tensor data packet, and re-solves the acceleration vector and jerk vector of the next time slot using the sliding window method to form a trajectory segment data set; Energy Optimization Module: The power mapper maps the trajectory segment dataset to the actuator thermal power surface, calculates the time-domain thermal stress density and frequency-domain energy dispersion, and uses a dual-domain complementary integration algorithm to generate an energy impact judgment. If the energy impact judgment is higher than a preset threshold, the acceleration pulse in the trajectory is split into multiple micro-pulse segments and their temporal order is reordered. Instruction push module: The instruction distributor adjusts the cache write rhythm based on the instruction accumulation prediction function and pushes the rearranged instruction stream to the driver according to the preset advance depth to prevent cache overflow; Feedback correction module: The feedback rectifier collects real-time torque error and posture error and inputs them into the Bayesian integration module to refresh the prior model of the inertia tensor and provide a correction basis for generating load impact description information in the next cycle.
Citation Information
Patent Citations
Primary frequency modulation control method based on participation of modular large-scale hydrogen production power supply in power system
CN119675028A
Vibration suppression control method and system for flexible base space manipulator
CN119681965A