Multi-degree-of-freedom joint linkage control method and device for humanoid robot
By acquiring ankle joint torque and head acceleration data in real time, and dynamically adjusting the inertial absorption sharing ratio of the knee, hip, and ankle joints, the problem of joint overload and posture imbalance in humanoid robots during speed switching is solved, achieving more stable and safer motion control.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHENZHEN CHANGYING ROBOT CO LTD
- Filing Date
- 2026-03-30
- Publication Date
- 2026-05-05
AI Technical Summary
In existing technologies for humanoid robot walking control, the dynamic adjustment of the inertia absorption ratio between joints is insufficient, leading to overload of some joints or overall posture imbalance during speed switching, affecting the smoothness and safety of movement.
By acquiring real-time ankle torque values, inertial absorption sharing of the knee, hip, and ankle joints, and anterior-posterior acceleration data of the head, the inertial absorption sharing ratio of the knee, hip, and ankle joints is dynamically adjusted. Combined with feedback control and iterative optimization methods, the joint linkage control parameters are updated in real time to ensure that the ankle torque does not exceed the rated range under hardware limitations and to suppress trunk shaking.
It significantly improves the smoothness and safety of humanoid robots during deceleration switching, ensures that ankle joint torque is within hardware limits, effectively suppresses torso shaking, and enhances the stability and adaptability of motion control.
Smart Images

Figure CN121973236A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of information technology, and in particular to a method and apparatus for multi-degree-of-freedom joint linkage control of a humanoid robot. Background Technology
[0002] In the field of humanoid robot research, breakthroughs in walking control technology are crucial for achieving robot stability and human-like movement. This area directly relates to a robot's adaptability in complex environments and its natural interaction with humans, and is one of the core directions of robot technology development. Especially in multi-joint linkage control, balancing the coordination of individual joints with the overall posture stability has become a key indicator for evaluating robot performance. Current research and applications often neglect the complexity of dynamic load distribution between joints when addressing the stability problem of robot walking. Existing solutions tend to preset fixed load distribution ratios, lacking real-time adaptability to changes in walking state. Especially in scenarios involving speed changes, this static strategy can easily lead to overload of some joints or overall posture imbalance, thus affecting the smoothness and safety of the robot's movement. Focusing on specific technical challenges, the dynamic adjustment of the inertial absorption ratio between joints becomes a core challenge. The inertial absorption ratio refers to the proportional distribution of the impact force generated by body movement among different joints (such as the ankle, knee, and hip) during walking. If this ratio cannot be flexibly adjusted according to changes in actual walking speed, it will cause the joint torque to exceed its tolerance range, leading to loss of stability. For example, when a robot switches from fast to slow walking, if the ankle joint absorbs too much inertia, the resulting torque may approach or exceed the hardware's limits, forcing the load to shift to other joints, such as the knee. This sudden load transfer disrupts the original balance, causing unnatural swaying of the upper body and potentially leading to a fall. Therefore, dynamically adjusting the inertia absorption ratio of the ankle, knee, and hip joints based on the real-time load status of the ankle joint during speed switching to avoid torque overload and reduce upper body swaying has become a key issue in robot walking control. Summary of the Invention
[0003] This invention provides a method for multi-degree-of-freedom joint linkage control of a humanoid robot, mainly including: The system acquires real-time ankle joint torque value, inertial absorption and distribution of the knee, hip and ankle joints, and head anteroposterior acceleration data. Based on the comparison between the real-time ankle joint torque value and the preset rated range, the system determines the degree to which the ankle torque approaches the rated range. Assess the ankle joint torque saturation trend and determine the saturation range based on the degree to which it approaches the rated range; The inertial absorption sharing ratio of the knee, hip, and ankle joints is adjusted according to the saturation range. Based on the adjusted inertial absorption sharing ratio of the knee, hip, and ankle joints, the remaining inertial amount is calculated, the inertial sharing amount after transfer is determined, and the acceleration response on the anterior-posterior axis of the head is monitored based on the inertial sharing amount after transfer to obtain the filtered peak anterior-posterior acceleration of the head. The inertial absorption sharing ratio of the knee, hip, and ankle joints is finely adjusted based on the degree to which the peak forward and backward acceleration of the head after filtering exceeds a preset threshold. The inertial absorption sharing ratio of the knee, hip, and ankle joints, after fine-tuning, is applied to the joint drive assembly to obtain the real-time torque value of the ankle joint during deceleration. The joint linkage control parameters are updated through iterative optimization to confirm that the amplitude of trunk nodding and shaking during deceleration switching is suppressed.
[0004] Furthermore, real-time ankle torque values, inertial absorption distribution among the knee, hip, and ankle joints, and anterior-posterior head acceleration data are obtained, including: A torque sensor array is arranged at the ankle position of the joint drive assembly to collect the real-time torque value of the ankle joint by detecting the amount of torque deformation of the ankle joint during the deceleration phase. Head acceleration data was acquired by using a three-axis accelerometer and a three-axis gyroscope, and the peak values of the head acceleration were extracted. Obtain the load values borne by the knee, hip, and ankle joints respectively, calculate the proportion of each joint's load value to the total load of the three joints, and obtain the inertial absorption share of the three joints.
[0005] Furthermore, the step of comparing the real-time ankle joint torque value with a preset rated range to determine the degree to which the ankle torque approaches the rated range includes: The ratio of the real-time ankle joint torque value to the preset upper limit of the rated ankle joint torque is calculated to obtain the ratio result; If the ratio exceeds a preset threshold, the ankle torque is determined to be in a high-risk state approaching the rated range. If the ratio is lower than the approach threshold, the ankle torque is determined to be in a safe state. Based on the determination that the ankle torque is in a safe state, the degree to which the ankle torque approaches the rated range is determined.
[0006] Furthermore, the step of assessing the ankle joint torque saturation trend and determining the saturation range based on the degree to which it approaches the rated range includes: The degree to which the value approaches the nominal range is compared with a preset multi-level threshold, which includes a low saturation boundary value and a high saturation boundary value. If the degree of approaching the rated range is lower than the low saturation boundary value, the ankle joint torque saturation trend is determined to be mild. If the degree of approaching the rated range is between the low saturation boundary value and the high saturation boundary value, it is determined to be a moderate state. If the degree of approaching the rated range is higher than the high saturation boundary value, it is determined to be a severe state; Based on the determined saturation trend, the different states are mapped to safe intervals, transition intervals, or saturation intervals using an interval mapping method to determine the saturation interval of ankle joint torque.
[0007] Furthermore, adjusting the inertial absorption sharing ratio of the knee, hip, and ankle joints according to the saturation range includes: Based on the saturation range, the baseline load sharing ratio of the knee, hip, and ankle joints is read from a preset range correspondence table; A linear interpolation algorithm is used, with the upper and lower boundary values of the saturation interval as the interpolation endpoints and the relative position within the interval as the degree of approaching the rated range as the interpolation factor, to calculate the reduction in the ankle joint's load-bearing ratio and the increase in the knee and hip joint's load-bearing ratio. The adjusted sharing ratio is obtained by superimposing the reduction amount and the supplementary amount on the baseline sharing ratio.
[0008] Furthermore, the step of calculating the remaining inertia based on the adjusted inertia absorption sharing ratio of the knee, hip, and ankle joints, and determining the transferred inertia sharing, includes: Based on the adjusted sharing ratio, the real-time torque value of the ankle joint and the torque reference value before the switching of walking speed are collected at the moment of switching. The change in ankle torque is obtained by subtracting the torque reference value from the real-time torque value. The remaining inertia that the ankle joint cannot absorb is obtained by multiplying the change in torque by the current sharing ratio of the ankle joint. The proportional-integral-derivative (PID) control method is adopted, with the residual inertia as the deviation input. The current value, cumulative value and rate of change of the deviation are weighted and summed by preset proportional coefficient, integral coefficient and derivative coefficient respectively to obtain the knee transfer amount. The hip transfer amount is obtained by subtracting the knee transfer amount from the residual inertia amount. The inertial load sharing of the knee joint after adjustment is obtained by adding the knee transfer amount to the adjusted load sharing ratio of the knee joint. The inertial load sharing of the hip joint after adjustment is obtained by adding the hip transfer amount to the adjusted load sharing ratio of the hip joint. The inertial load sharing of the ankle joint after adjustment is obtained by subtracting the remaining inertial amount from the adjusted load sharing ratio of the ankle joint. The inertial load sharing of the ankle joint after adjustment is then determined.
[0009] Furthermore, based on the transferred inertial load, the acceleration response along the anterior-posterior axis of the head is monitored to obtain the filtered peak value of the anterior-posterior acceleration of the head, including: based on the transferred inertial load, obtaining the acceleration signal sequence of the head in the anterior-posterior axis direction from the torso posture measurement module, smoothing the acceleration signal sequence with a low-pass filter to remove high-frequency noise components, and extracting the extreme points in the filtered acceleration signal sequence as the filtered peak value of the anterior-posterior acceleration of the head.
[0010] Furthermore, the inertial absorption sharing ratio of the knee, hip, and ankle joints is finely adjusted based on the degree to which the peak forward and backward acceleration of the filtered head exceeds a preset threshold, including: The filtered peak value of the head's forward and backward acceleration is compared with a preset threshold value for torso nodding and shaking. If the peak value of the head's forward and backward acceleration exceeds the preset torso nodding and shaking threshold, then the degree of excess is calculated. If the peak value of the head's forward and backward acceleration does not exceed the preset torso nodding and shaking threshold, the excess degree coefficient will be set to zero. Based on the excess degree coefficient, the fine adjustment increments for the ankle, knee, and hip joints are queried from a preset fine adjustment correspondence table; Based on the fine-tuning increment, the transferred inertial load is adjusted to determine the inertial absorption load ratio of the knee, hip, and ankle joints after the fine-tuning.
[0011] Furthermore, the fine-tuned inertia absorption sharing ratio of the knee, hip, and ankle joints is applied to the joint drive assembly to obtain the real-time torque value of the ankle joint during deceleration. The joint linkage control parameters are then updated through an iterative optimization method, including: The fine-tuned inertia absorption sharing ratio of the knee, hip and ankle joints is written into the control register of the joint drive assembly, and the output torque ratio of each joint motor is adjusted. The ankle torque acquisition module continuously reads the real-time torque value of the ankle joint during deceleration. The gradient descent method is used to iteratively update the joint linkage control parameters by using the difference between the real-time torque value of the ankle joint and the upper limit of the rated torque as the error signal.
[0012] This invention provides a multi-degree-of-freedom joint linkage control device for a humanoid robot, mainly comprising: The ankle joint torque acquisition and comparison module is used to acquire the real-time torque value of the ankle joint, the inertial absorption and distribution of the knee, hip and ankle joints, and the anterior-posterior acceleration data of the head. Based on the comparison between the real-time torque value of the ankle joint and the preset rated range, it determines the degree to which the ankle torque approaches the rated range. An ankle joint torque saturation assessment module is used to assess the ankle joint torque saturation trend and determine the saturation range based on the degree to which it approaches the rated range; An inertial absorption sharing ratio adjustment module is used to adjust the inertial absorption sharing ratio of the knee, hip, and ankle joints according to the saturation range. The head acceleration monitoring and inertia transfer module is used to calculate the remaining inertia based on the adjusted inertia absorption and distribution ratio of the knee, hip and ankle joints, determine the inertia distribution after transfer, and monitor the acceleration response on the anterior and posterior axes of the head based on the inertia distribution after transfer to obtain the filtered peak value of the anterior and posterior head acceleration. The inertial absorption sharing ratio fine-tuning module is used to fine-tune the inertial absorption sharing ratio of the knee, hip and ankle joints according to the degree to which the peak value of the filtered head acceleration exceeds the preset threshold. The joint linkage control parameter iterative optimization module is used to apply the fine-tuned inertial absorption sharing ratio of the knee, hip and ankle joints to the joint drive assembly to obtain the real-time torque value of the ankle joint during deceleration. The joint linkage control parameters are updated through iterative optimization to confirm that the amplitude of trunk head shaking during deceleration switching is suppressed.
[0013] The technical solutions provided by the embodiments of the present invention may include the following beneficial effects: This invention discloses a multi-degree-of-freedom joint linkage control method and device for humanoid robots. Addressing the combined problems of ankle joint torque approaching its rated range, excessive torso head shaking, and uneven inertial absorption distribution among the knee, hip, and ankle joints during deceleration switching, this invention integrates ankle torque acquisition and torso posture measurement modules into the joint drive assembly. This allows for real-time acquisition of ankle joint torque, inertial load distribution, and peak head acceleration. Threshold comparison and linear interpolation algorithms are used to dynamically adjust the inertial load distribution ratio among the three joints. Furthermore, feedback control and iterative optimization methods are combined to calculate the inertial transfer amount, fine-tune the load distribution ratio, and finally update the control parameters. Through multi-module collaboration and algorithm optimization, this invention ensures that ankle torque does not exceed its rated range under hardware constraints, while effectively suppressing torso shaking, improving the smoothness and safety of deceleration switching, and significantly enhancing the stability and adaptability of humanoid robot motion control. Attached Figure Description
[0014] Figure 1 This is a flowchart of a multi-degree-of-freedom joint linkage control method for a humanoid robot according to the present invention.
[0015] Figure 2 This is a schematic diagram of the structure of a multi-degree-of-freedom joint linkage control device for a humanoid robot according to the present invention. Detailed Implementation
[0016] The technical solutions of the embodiments of the present invention will be clearly and thoroughly described below with reference to the accompanying drawings. The described embodiments are merely some embodiments of the present invention.
[0017] like Figure 1This embodiment of a multi-degree-of-freedom joint linkage control method for a humanoid robot may specifically include: S101. Obtain the real-time torque value of the ankle joint, the inertial absorption and distribution of the knee, hip and ankle joints, and the anterior-posterior acceleration data of the head. Based on the comparison between the real-time torque value of the ankle joint and the preset rated range, determine the degree to which the ankle torque approaches the rated range.
[0018] A torque sensor array is arranged at the ankle position of the joint drive assembly. This array contains multiple radially distributed strain gauge units. By detecting the torque deformation of the ankle joint during deceleration, the real-time torque value of the ankle joint is acquired. Simultaneously, an inertial measurement unit is installed at the torso position. The inertial measurement unit includes a three-axis accelerometer and a three-axis gyroscope to acquire the acceleration data of the head in the anterior-posterior direction. The peak anterior-posterior acceleration of the head is extracted from the acceleration data. Based on the real-time torque value and the peak anterior-posterior acceleration of the head, the inertial absorption share of each knee joint, hip joint, and ankle joint is read. The inertial absorption share is obtained by multiplying the peak anterior-posterior acceleration of the head by the load ratio fed back by the torque sensor of each joint, where the load ratio is the load value of each joint divided by the sum of the load values of the three joints. The absolute share of the knee, hip, and ankle joints is combined to obtain the current inertial absorption share of the three joints. The ratio of the absolute share of the ankle joint in the current inertial absorption of the three joints to the preset upper limit of the rated torque of the ankle joint is calculated. If the ratio exceeds the preset approach threshold of 0.8, the ankle torque is determined to be in a high-risk state approaching the rated range. If the ratio is lower than the approach threshold of 0.8, the ankle torque is determined to be in a safe state, thus obtaining the degree to which the ankle torque approaches the rated range.
[0019] When deploying an ankle torque acquisition module in a joint drive assembly, the torque sensor array is installed radially on the outer ring of the ankle joint's rotary bearing.
[0020] For example, the array includes four strain gauge units evenly distributed along the circumference. Each strain gauge unit is fixed to the stress concentration area of the bearing housing by adhesive bonding. When the ankle joint is subjected to torque load during the deceleration phase, the strain gauge unit undergoes a small deformation with the bearing housing. This deformation is converted into a voltage signal output by a Wheatstone bridge circuit.
[0021] In one possible implementation, the process of obtaining the inertial absorption load specifically includes the following: Independent torque sensors are configured for the knee, hip, and ankle joints, and each sensor provides real-time feedback on the load value borne by the corresponding joint during the deceleration phase.
[0022] Specifically, the load value of the ankle joint is recorded as the first load value, the load value of the knee joint as the second load value, and the load value of the hip joint as the third load value. These three values are added together to obtain the total load value. The share of the load on the ankle joint is obtained by dividing the first load value by the total load value, the share on the knee joint by dividing the second load value by the total load value, and the share on the hip joint by dividing the third load value by the total load value. These three share ratios are arranged in the order of ankle, knee, and hip to form the current inertial absorption share of the three joints. This share reflects the relative degree to which each joint bears the impact load during the deceleration phase. In the inertial measurement unit installed in the torso, a triaxial accelerometer is responsible for detecting the linear acceleration changes of the head in the forward / backward, left / right, and up / down directions. The forward / backward acceleration data sequence is then filtered, and the peak forward / backward acceleration of the head is extracted by identifying the maximum point in the sequence.
[0023] In one embodiment, the degree of approach is determined using a ratio threshold method. A pre-set upper limit for the rated torque of the ankle joint and a approach threshold are established. The range of the approach threshold is typically set within a certain percentage range of the rated value. The collected real-time ankle joint torque value is divided by the upper limit of the rated torque to obtain the torque ratio. If the torque ratio exceeds the approach threshold, a high-risk status indicator is output; if the torque ratio is below the approach threshold, a safe status indicator is output. This determines the degree to which the ankle torque approaches the rated range.
[0024] S102. Assess the ankle joint torque saturation trend based on the degree to which it approaches the rated range and determine the saturation range.
[0025] Based on the degree to which the ankle torque approaches the rated range, this degree is compared one by one with preset multi-level thresholds. These multi-level thresholds include low-saturation boundary values and high-saturation boundary values. If the degree is below the low-saturation boundary value, the ankle torque saturation trend is determined to be in a mild state; if the degree is between the low-saturation and high-saturation boundary values, it is determined to be in a moderate state; and if the degree is above the high-saturation boundary value, it is determined to be in a severe state, thus obtaining the ankle torque saturation trend. Based on the ankle torque saturation trend, an interval mapping method is used to map the mild state to a safe interval, the moderate state to a transition interval, and the severe state to a saturation interval, thereby determining the saturation range of the ankle torque.
[0026] In one implementation, the multi-level thresholds are set based on the rated torque parameters of the ankle joint actuator.
[0027] For example, the low saturation boundary value is set as a certain percentage of the lower limit of the rated torque, and the high saturation boundary value is set as a certain percentage of the upper limit of the rated torque. When the ankle torque approaches the low saturation boundary value, it indicates that the current load on the ankle joint is at a low level, and the saturation trend is determined to be mild.
[0028] Specifically, when the degree of approach is between the low saturation boundary value and the high saturation boundary value, it indicates that the ankle joint torque is approaching the rated range but has not yet reached the critical point. At this time, the saturation trend is determined to be in a moderate state. When the degree of approach exceeds the high saturation boundary value, the saturation trend is determined to be in a severe state, indicating that the ankle joint torque has approached or reached the rated upper limit.
[0029] It should be noted that the interval mapping is implemented in a one-to-one correspondence manner. The mild state corresponds to the safe interval, indicating that the ankle joint is working within the normal load range. The moderate state corresponds to the transition interval, indicating that the ankle joint load is increasing. The severe state corresponds to the saturation interval, indicating that the ankle joint is close to the load limit. This completes the determination of the saturation interval.
[0030] S103. Adjust the inertial absorption sharing ratio of the knee, hip and ankle joints according to the saturation range.
[0031] Based on the saturation range, the baseline load-sharing ratios of the knee, hip, and ankle joints are read from a preset range correspondence table. This table records the baseline load-sharing values for the ankle, knee, and hip joints corresponding to the safety, transition, and saturation ranges, respectively. The baseline load-sharing ratios of the three joints matching the saturation range are obtained. Based on the degree to which the baseline load-sharing ratios of the three joints approach the rated range of the ankle torque, a linear interpolation algorithm is used to calculate the adjustment amount. This algorithm uses the upper and lower boundary values of the saturation range as interpolation endpoints and the relative position of the degree within the range as an interpolation factor to obtain the reduction in the ankle load-sharing ratio and the addition of the knee and hip load-sharing ratios. Based on the reduction and addition, the baseline load-sharing ratios of the three joints are superimposed. The ankle load-sharing ratio is adjusted by subtracting the reduction from the ankle load-sharing value. The knee and hip load-sharing ratios are adjusted by adding the corresponding additions to the knee and hip load-sharing values, respectively. The adjusted load-sharing ratios are then determined.
[0032] In one implementation, the interval correspondence table is stored in a three-row, three-column structure, with the row index corresponding to the safe interval, transition interval, and saturation interval, and the column index corresponding to the ankle joint, knee joint, and hip joint.
[0033] For example, when the saturation range is within the safe range, the ankle joint bears a higher share of the load, while the knee and hip joints bear a lower share. When the saturation range is within the saturation range, the ankle joint's share decreases, while the knee and hip joints' share increases accordingly.
[0034] Specifically, the linear interpolation algorithm is implemented as follows: Using the lower boundary value of the current saturation interval as the interpolation starting point and the upper boundary value of the current saturation interval as the interpolation ending point, the degree to which the ankle torque approaches the rated range is subtracted from the lower boundary value, and then divided by the difference between the upper and lower boundary values to obtain the interpolation factor. The interpolation factor ranges between zero and one, reflecting the relative position of the current degree within the saturation interval. Based on the interpolation factor, the baseline sharing values corresponding to two adjacent intervals are read from the interval correspondence table. The difference between the baseline sharing value of the higher interval and the baseline sharing value of the lower interval is multiplied by the interpolation factor to obtain the reduction in the ankle joint sharing ratio. The supplementary amounts for the knee and hip joints are distributed according to a preset allocation weight to obtain the reduction amount.
[0035] It should be noted that the allocation weight is determined by the ratio of the upper limit of the rated torque of the knee joint and the hip joint respectively, and the joint with the higher upper limit of the rated torque receives a larger allocation weight.
[0036] In one embodiment, the superposition operation subtracts the reduction amount from the ankle joint baseline load-bearing value to obtain the adjusted ankle joint load-bearing ratio, adds the corresponding supplementary amount to the knee joint baseline load-bearing value to obtain the adjusted knee joint load-bearing ratio, and adds the corresponding supplementary amount to the hip joint baseline load-bearing value to obtain the adjusted hip joint load-bearing ratio. The sum of the three remains unchanged, thereby completing the dynamic adjustment of the inertial absorption load-bearing ratio of the three joints.
[0037] S104. Based on the adjusted inertial absorption sharing ratio of the knee, hip, and ankle joints, calculate the remaining inertial amount, determine the inertial sharing amount after transfer, and monitor the acceleration response on the anterior-posterior axis of the head based on the inertial sharing amount after transfer to obtain the filtered peak value of the anterior-posterior acceleration of the head.
[0038] Based on the adjusted load-sharing ratio, the real-time torque value of the ankle joint and the baseline torque value before the switch are collected at the moment of walking speed change. The change in ankle torque is obtained by subtracting the baseline torque value from the real-time torque value. The remaining inertia that the ankle joint cannot absorb is obtained by multiplying the change in torque by the current load-sharing ratio of the ankle joint. Based on the remaining inertia, the knee transfer amount is calculated using a proportional-integral-derivative (PID) control method. The PID control method uses the remaining inertia as the deviation input and uses preset proportional coefficients, integral coefficients, and derivative coefficients to weight and sum the current value, cumulative value, and rate of change of the deviation to obtain the knee transfer amount. The hip transfer amount is obtained by subtracting the knee transfer amount from the remaining inertia amount. Based on the knee and hip transfer amounts, the knee joint inertial load is obtained by adding the adjusted knee joint load-sharing ratio to the knee transfer amount, and the hip joint inertial load is obtained by adding the adjusted hip joint load-sharing ratio to the hip transfer amount. The ankle joint inertial load-sharing ratio is then subtracted from the remaining inertia to obtain the transferred ankle joint inertial load-sharing amount, thus determining the transferred inertial load-sharing amount. Based on the transferred inertial load-sharing amount, an acceleration signal sequence of the head along the anterior-posterior axis is obtained from the torso posture measurement module. A low-pass filter is used to smooth the acceleration signal sequence to remove high-frequency noise components. Extreme points are extracted from the filtered acceleration signal sequence to obtain the filtered anterior-posterior head acceleration peak value.
[0039] In one implementation, the determination of the walking speed switching moment is based on phase detection of the gait cycle. When the humanoid robot switches from a fast walking mode to a slow walking mode, the ankle torque acquisition module in the joint drive assembly records the real-time torque value of the current ankle joint at the moment the switching command is issued, and at the same time reads the torque reference value of the steady-state walking phase before the switch. The difference between the two values is the change in ankle torque.
[0040] It should be noted that the residual inertia represents the portion of the impact load that the ankle joint cannot absorb independently during velocity switching. When the change in ankle torque is large and the current share of the load by the ankle joint is already at a low level, the ankle joint's absorption capacity tends to saturate. The inertial load exceeding its absorption capacity constitutes the residual inertia, which is obtained by multiplying the change in torque by the ankle joint's share of the load.
[0041] Specifically, the proportional-integral-derivative (PID) control method is a classic closed-loop feedback control method. Its core lies in comprehensively processing the deviation signal through three independent control components. The proportional component is obtained by multiplying the current deviation value by a proportional coefficient, reflecting the instantaneous magnitude of the remaining inertia. The larger the proportional coefficient, the more sensitive the knee transfer to the remaining inertia. The integral component is obtained by multiplying the cumulative deviation value by an integral coefficient. The cumulative value is the sum of the deviations from the start of speed switching to the current moment. The integral component is used to eliminate persistent steady-state deviations. The derivative component is obtained by multiplying the rate of change of the deviation by a derivative coefficient. The rate of change is the difference between the current deviation and the deviation at the previous moment. The derivative component is used to predict the trend of deviation changes and adjust in advance. The knee transfer is obtained by adding the proportional, integral, and derivative components.
[0042] In one possible implementation, the proportional coefficient, integral coefficient, and differential coefficient are pre-calibrated based on the joint structure parameters of the humanoid robot. The calibration process is completed by collecting actual transfer effects under different speed switching scenarios and iteratively adjusting the coefficient values.
[0043] For example, the hip transfer amount is obtained by subtracting the knee transfer amount from the remaining inertia amount. This allocation method ensures that the knee joint preferentially bears the transferred load, while the hip joint bears the remaining portion, which conforms to the natural load distribution law of the lower limb joints during human walking. Based on the above knee and hip transfer amounts, the transferred inertia sharing amount is determined through superposition calculation. The knee joint's adjusted sharing ratio is superimposed on the knee transfer amount to obtain the transferred knee joint inertia sharing amount; the hip joint's adjusted sharing ratio is superimposed on the hip transfer amount to obtain the transferred hip joint inertia sharing amount; and the ankle joint's adjusted sharing ratio is subtracted from the remaining inertia amount to obtain the transferred ankle joint inertia sharing amount. Furthermore, the triaxial accelerometer in the trunk posture measurement module continuously acquires the acceleration signal of the head in the anterior-posterior axis direction at a fixed sampling frequency, forming an acceleration signal sequence arranged in chronological order.
[0044] In one embodiment, the low-pass filter is implemented using a Butterworth filter structure, and its cutoff frequency is set according to the dominant frequency range of the torso swaying during humanoid robot walking. The low-pass filter works by allowing signal components below the cutoff frequency to pass through while attenuating signal components above the cutoff frequency. In the acceleration signal sequence, low-frequency components correspond to the overall posture change of the torso, while high-frequency components correspond to sensor noise and mechanical vibration interference. After processing by the low-pass filter, a smooth acceleration signal sequence is obtained, which retains the main characteristics of torso swaying while removing high-frequency noise.
[0045] Understandably, the method of comparing adjacent points is used to extract extreme points from the filtered acceleration signal sequence. When the acceleration value of a certain sampling point is greater than the acceleration values of its adjacent sampling points, the sampling point is identified as a local maximum point. The maximum value is selected from all the maximum points as the peak value of the front and rear accelerations after filtering.
[0046] S105. Fine-tune the inertial absorption sharing ratio of the knee, hip, and ankle joints based on the degree to which the peak value of the filtered head acceleration exceeds the preset threshold.
[0047] The filtered peak forward-backward acceleration of the head is compared with a preset torso nodding tremor threshold, which represents the maximum allowable acceleration amplitude of the head in the forward-backward direction. If the peak acceleration exceeds the torso nodding tremor threshold, the excess is divided by the threshold to obtain an excess degree coefficient. If the peak acceleration does not exceed the torso nodding tremor threshold, the excess degree coefficient is set to zero. Based on the excess degree coefficient, the fine-tuning increments for the ankle, knee, and hip joints are retrieved from a preset fine-tuning correspondence table. The fine-tuning correspondence table records the three-joint fine-tuning increments corresponding to different excess degree coefficient ranges. The fine-tuning increments are used to increase the load-bearing ratio of the knee and hip joints and decrease the load-bearing ratio of the ankle joint when the excess degree coefficient is large, thereby obtaining the three-joint fine-tuning increments that match the current excess degree coefficient. Based on the three joint fine-tuning increments, the ankle joint inertial load distribution after transfer is subtracted from the ankle joint fine-tuning increment to obtain the fine-tuned ankle joint load distribution ratio. The knee joint inertial load distribution after transfer is added to the knee joint fine-tuning increment to obtain the fine-tuned knee joint load distribution ratio. The hip joint inertial load distribution after transfer is added to the hip joint fine-tuning increment to obtain the fine-tuned hip joint load distribution ratio. The fine-tuned load distribution ratio is then determined.
[0048] In one embodiment, the torso head shaking threshold is preset according to the torso structure parameters and walking stability requirements of the humanoid robot. The threshold represents the maximum allowable acceleration amplitude of the head in the forward and backward direction. When the peak value of the forward and backward acceleration of the head is lower than the threshold, it indicates that the torso posture is stable. When the peak value of the forward and backward acceleration of the head is higher than the threshold, it indicates that the torso has excessive forward and backward shaking.
[0049] Specifically, the excess severity coefficient is used to quantify the severity of torso nodding tremors. When the peak value of the filtered head acceleration exceeds the torso nodding tremor threshold, the excess is divided by the threshold to obtain the excess severity coefficient. The larger the coefficient, the more severe the torso tremor, and the greater the fine-tuning of the load-sharing ratio. When the peak value of the filtered head acceleration does not exceed the torso nodding tremor threshold, the excess severity coefficient is set to zero, and no fine-tuning of the load-sharing ratio is required.
[0050] It should be noted that the fine-tuning correspondence table uses an interval mapping method to establish the correspondence between the excess degree coefficient and the three-joint fine-tuning increment.
[0051] For example, when the degree of excess is in a lower range, the ankle joint fine-tuning increment is a small positive value, and the knee and hip joint fine-tuning increments are small negative values; when the degree of excess is in a higher range, the ankle joint fine-tuning increment increases, and the absolute values of the knee and hip joint fine-tuning increments also increase accordingly, causing more load to be transferred from the ankle joint to the knee and hip joints.
[0052] In one embodiment, the transferred inertial load is superimposed based on the fine-tuning increments of the three joints obtained from the query. The ankle joint load ratio is reduced by the corresponding fine-tuning increment, and the knee and hip joint load ratios are added to the corresponding fine-tuning increments. The sum of the three remains unchanged, thereby determining the fine-tuned load ratio.
[0053] S106. The inertial absorption sharing ratio of the knee, hip and ankle joints after fine-tuning is applied to the joint drive assembly to obtain the real-time torque value of the ankle joint during deceleration. The joint linkage control parameters are updated through iterative optimization to confirm that the amplitude of trunk nodding and shaking during deceleration switching is suppressed.
[0054] Based on the fine-tuned load-sharing ratio, the respective load-sharing ratios of the ankle, knee, and hip joints are written into the control register of the joint drive assembly. The joint drive assembly adjusts the output torque ratio of each joint motor according to the written load-sharing ratio. During deceleration, the real-time torque value of the ankle joint is continuously read from the ankle torque acquisition module to obtain a sequence of real-time ankle joint torque values during deceleration. Based on the sequence of real-time ankle joint torque values, the joint linkage control parameters are iteratively updated using a gradient descent method. The joint linkage control parameters include ankle joint response gain, knee joint response gain, and hip joint response gain. The gradient descent method uses the difference between the real-time ankle joint torque value and the rated torque upper limit as an error signal, adjusting the value of each joint response gain in the direction of decreasing error. After a preset number of iterations, the updated joint linkage control parameters are obtained. The real-time ankle joint torque value is re-acquired based on the updated joint linkage control parameters. This real-time ankle joint torque value is compared with a preset hardware limit value, which represents the maximum output torque allowed by the ankle joint actuator. If the real-time ankle joint torque value is lower than both the hardware limit value and the rated torque upper limit, it is determined that the ankle torque has avoided exceeding the rated range under the hardware limit constraint. Based on the determination that the ankle torque has avoided exceeding the rated range, the current peak value of the head's forward and backward acceleration is obtained from the torso posture measurement module. This peak value is compared with the torso nodding tremor threshold. If the peak value of the head's forward and backward acceleration is lower than the torso nodding tremor threshold, it is determined that the torso nodding tremor amplitude has been suppressed during the deceleration switching process.
[0055] In one embodiment, the fine-tuned sharing ratio is written into the control register of the joint drive assembly via a digital signal interface. The control register stores the sharing ratio values of the ankle, knee and hip joints in numerical form. The joint drive assembly adjusts the drive current amplitude of each joint motor in real time according to the values in the register.
[0056] Specifically, the output torque ratio of each joint motor is directly determined by the amplitude of the drive current. When the share of a certain joint increases, the amplitude of the drive current of the corresponding motor increases accordingly, causing that joint to undertake more inertia absorption tasks. During deceleration, the ankle torque acquisition module continuously reads the torque value of the ankle joint according to a fixed sampling period, forming a real-time torque value sequence of the ankle joint arranged in chronological order.
[0057] It should be noted that the gradient descent method is a classic iterative optimization method. Its working principle is to adjust the parameters to be optimized along the direction of the fastest descent of the error function. In this embodiment, the error signal is defined as the difference between the real-time torque value of the ankle joint and the upper limit of the rated torque. When the real-time torque value of the ankle joint is higher than the upper limit of the rated torque, the error signal is positive, indicating that the ankle joint is overloaded; when the real-time torque value of the ankle joint is lower than the upper limit of the rated torque, the error signal is negative, indicating that the ankle joint still has a margin. The ankle joint response gain, knee joint response gain, and hip joint response gain in the joint linkage control parameters control the response speed of each joint to the error signal, respectively. When the error signal is positive, the ankle joint response gain is reduced while the knee joint response gain and hip joint response gain are increased, so that more inertial load is transferred to the knee and hip joints; when the error signal is negative, the current response gain configuration is kept unchanged or moderately adjusted back. In each iteration, the adjustment range of each response gain is proportional to the absolute value of the error signal; the larger the error, the larger the adjustment range.
[0058] In one possible implementation, the gradient descent method iterates by setting a preset number of iterations as a termination condition. When the preset number of iterations is reached, the iteration stops and the updated joint linkage control parameters are output.
[0059] For example, the hardware limit value and the rated torque upper limit value are two different thresholds. The hardware limit value is determined by the physical structure of the ankle joint actuator and represents the torque output corresponding to the maximum current that the motor windings can withstand. Exceeding this value will cause the motor to overheat or be damaged. The rated torque upper limit value is determined by the motion control requirements of the humanoid robot and represents the maximum torque that the ankle joint can withstand during normal walking. This value is usually lower than the hardware limit value, leaving a certain safety margin. During the torque determination process, the real-time torque value of the ankle joint is compared with both the hardware limit value and the rated torque upper limit value. Only when both conditions are met is the ankle torque determined to be in a safe state. Further, after reconfiguring the joint drive assembly according to the updated joint linkage control parameters, the real-time torque value of the ankle joint is re-acquired from the ankle torque acquisition module. This torque value is compared with the hardware limit value and the rated torque upper limit value respectively. After confirming that it is lower than the two thresholds, it is determined that the ankle torque has avoided exceeding the rated range under the hardware limit constraint.
[0060] Understandably, under the premise that the ankle torque does not exceed the rated range, the current peak value of the head forward and backward acceleration is obtained from the torso posture measurement module. This peak value is compared with the preset torso nodding tremor threshold. If it is lower than the threshold, it indicates that the torso has not experienced excessive forward and backward swaying during the deceleration switching process. Thus, it is determined that the amplitude of torso nodding tremor during the deceleration switching process is suppressed.
[0061] like Figure 2 This invention provides a multi-degree-of-freedom joint linkage control device for a humanoid robot, mainly comprising: The ankle joint torque acquisition and comparison module is used to acquire the real-time torque value of the ankle joint, the inertial absorption and distribution of the knee, hip and ankle joints, and the anterior-posterior acceleration data of the head. Based on the comparison between the real-time torque value of the ankle joint and the preset rated range, it determines the degree to which the ankle torque approaches the rated range. An ankle joint torque saturation assessment module is used to assess the ankle joint torque saturation trend and determine the saturation range based on the degree to which it approaches the rated range; An inertial absorption sharing ratio adjustment module is used to adjust the inertial absorption sharing ratio of the knee, hip, and ankle joints according to the saturation range. The head acceleration monitoring and inertia transfer module is used to calculate the remaining inertia based on the adjusted inertia absorption and distribution ratio of the knee, hip and ankle joints, determine the inertia distribution after transfer, and monitor the acceleration response on the anterior and posterior axes of the head based on the inertia distribution after transfer to obtain the filtered peak value of the anterior and posterior head acceleration. The inertial absorption sharing ratio fine-tuning module is used to fine-tune the inertial absorption sharing ratio of the knee, hip and ankle joints according to the degree to which the peak value of the filtered head acceleration exceeds the preset threshold. The joint linkage control parameter iterative optimization module is used to apply the fine-tuned inertial absorption sharing ratio of the knee, hip and ankle joints to the joint drive assembly to obtain the real-time torque value of the ankle joint during deceleration. The joint linkage control parameters are updated through iterative optimization to confirm that the amplitude of trunk head shaking during deceleration switching is suppressed.
[0062] If the technical solution of this application involves the acquisition of personal information, the product using this solution has clearly informed the user of the processing rules and obtained the user's consent before processing. If sensitive personal information is involved, the user's individual consent has been obtained and the "express consent" requirement has been met. For example, a clear sign is placed at the collection device to indicate the collection scope, and the user's voluntary entry is considered as consent; or authorization is obtained through pop-up windows, user uploads, etc. The processing rules include the processor, purpose, method, and type of information.
[0063] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for multi-degree-of-freedom joint linkage control of a humanoid robot, characterized in that, The method includes: The system acquires real-time ankle joint torque value, inertial absorption and distribution of the knee, hip and ankle joints, and head anteroposterior acceleration data. Based on the comparison between the real-time ankle joint torque value and the preset rated range, the system determines the degree to which the ankle torque approaches the rated range. Assess the ankle joint torque saturation trend and determine the saturation range based on the degree to which it approaches the rated range; The inertial absorption sharing ratio of the knee, hip, and ankle joints is adjusted according to the saturation range. Based on the adjusted inertial absorption sharing ratio of the knee, hip, and ankle joints, the remaining inertial amount is calculated, the inertial sharing amount after transfer is determined, and the acceleration response on the anterior-posterior axis of the head is monitored based on the inertial sharing amount after transfer to obtain the filtered peak anterior-posterior acceleration of the head. The inertial absorption sharing ratio of the knee, hip, and ankle joints is finely adjusted based on the degree to which the peak forward and backward acceleration of the head after filtering exceeds a preset threshold. The inertial absorption sharing ratio of the knee, hip, and ankle joints, after fine-tuning, is applied to the joint drive assembly to obtain the real-time torque value of the ankle joint during deceleration. The joint linkage control parameters are updated through iterative optimization to confirm that the amplitude of trunk nodding and shaking during deceleration switching is suppressed.
2. The method for multi-degree-of-freedom joint linkage control of a humanoid robot according to claim 1, characterized in that, The acquisition of real-time ankle joint torque values, inertial absorption distribution among the knee, hip, and ankle joints, and anterior-posterior head acceleration data includes: A torque sensor array is arranged at the ankle position of the joint drive assembly to collect the real-time torque value of the ankle joint by detecting the amount of torque deformation of the ankle joint during the deceleration phase. Head acceleration data was acquired by using a three-axis accelerometer and a three-axis gyroscope, and the peak values of the head acceleration were extracted. Obtain the load values borne by the knee, hip, and ankle joints respectively, calculate the proportion of each joint's load value to the total load of the three joints, and obtain the inertial absorption share of the three joints.
3. The method for multi-degree-of-freedom joint linkage control of a humanoid robot according to claim 1, characterized in that, The step of comparing the real-time ankle joint torque value with a preset rated range to determine the degree to which the ankle torque approaches the rated range includes: The ratio of the real-time ankle joint torque value to the preset upper limit of the rated ankle joint torque is calculated to obtain the ratio result; If the ratio exceeds a preset threshold, the ankle torque is determined to be in a high-risk state approaching the rated range. If the ratio is lower than the approach threshold, the ankle torque is determined to be in a safe state. Based on the determination that the ankle torque is in a safe state, the degree to which the ankle torque approaches the rated range is determined.
4. The method for multi-degree-of-freedom joint linkage control of a humanoid robot according to claim 1, characterized in that, The process of assessing the ankle joint torque saturation trend and determining the saturation range based on the degree to which it approaches the rated range includes: The degree to which the value approaches the nominal range is compared with a preset multi-level threshold, which includes a low saturation boundary value and a high saturation boundary value. If the degree of approaching the rated range is lower than the low saturation boundary value, the ankle joint torque saturation trend is determined to be mild. If the degree of approaching the rated range is between the low saturation boundary value and the high saturation boundary value, it is determined to be a moderate state. If the degree of approaching the rated range is higher than the high saturation boundary value, it is determined to be a severe state; Based on the determined saturation trend, the different states are mapped to safe intervals, transition intervals, or saturation intervals using an interval mapping method to determine the saturation interval of ankle joint torque.
5. The method for multi-degree-of-freedom joint linkage control of a humanoid robot according to claim 1, characterized in that, The step of adjusting the inertial absorption sharing ratio of the knee, hip, and ankle joints according to the saturation range includes: Based on the saturation range, the baseline load sharing ratio of the knee, hip, and ankle joints is read from a preset range correspondence table; A linear interpolation algorithm is used, with the upper and lower boundary values of the saturation interval as the interpolation endpoints and the relative position within the interval as the degree of approaching the rated range as the interpolation factor, to calculate the reduction in the ankle joint's load-bearing ratio and the increase in the knee and hip joint's load-bearing ratio. The adjusted sharing ratio is obtained by superimposing the reduction amount and the supplementary amount on the baseline sharing ratio.
6. The method for multi-degree-of-freedom joint linkage control of a humanoid robot according to claim 1, characterized in that, The step of calculating the remaining inertia based on the adjusted inertia absorption sharing ratio of the knee, hip, and ankle joints, and determining the transferred inertia sharing, includes: Based on the adjusted sharing ratio, the real-time torque value of the ankle joint and the torque reference value before the switching of walking speed are collected at the moment of switching. The change in ankle torque is obtained by subtracting the torque reference value from the real-time torque value. The remaining inertia that the ankle joint cannot absorb is obtained by multiplying the change in torque by the current sharing ratio of the ankle joint. The proportional-integral-derivative (PID) control method is adopted, with the residual inertia as the deviation input. The current value, cumulative value and rate of change of the deviation are weighted and summed by preset proportional coefficient, integral coefficient and derivative coefficient respectively to obtain the knee transfer amount. The hip transfer amount is obtained by subtracting the knee transfer amount from the residual inertia amount. The inertial load sharing of the knee joint after adjustment is obtained by adding the knee transfer amount to the adjusted load sharing ratio of the knee joint. The inertial load sharing of the hip joint after adjustment is obtained by adding the hip transfer amount to the adjusted load sharing ratio of the hip joint. The inertial load sharing of the ankle joint after adjustment is obtained by subtracting the remaining inertial amount from the adjusted load sharing ratio of the ankle joint. The inertial load sharing of the ankle joint after adjustment is then determined.
7. The method for multi-degree-of-freedom joint linkage control of a humanoid robot according to claim 1, characterized in that, The method of monitoring the acceleration response on the front-back axis of the head based on the transferred inertial load to obtain the filtered front-back acceleration peak value of the head includes: acquiring the acceleration signal sequence of the head in the front-back axis direction from the torso posture measurement module based on the transferred inertial load; smoothing the acceleration signal sequence with a low-pass filter to remove high-frequency noise components; and extracting the extreme points in the filtered acceleration signal sequence as the filtered front-back acceleration peak value of the head.
8. The method for multi-degree-of-freedom joint linkage control of a humanoid robot according to claim 1, characterized in that, The step of fine-tuning the inertial absorption sharing ratio of the knee, hip, and ankle joints based on the degree to which the peak value of the filtered head acceleration exceeds a preset threshold includes: The filtered peak value of the head's forward and backward acceleration is compared with a preset threshold value for torso nodding and shaking. If the peak value of the head's forward and backward acceleration exceeds the preset torso nodding and shaking threshold, then the degree of excess is calculated. If the peak value of the head's forward and backward acceleration does not exceed the preset torso nodding and shaking threshold, the excess degree coefficient will be set to zero. Based on the excess degree coefficient, the fine adjustment increments for the ankle, knee, and hip joints are queried from a preset fine adjustment correspondence table; Based on the fine-tuning increment, the transferred inertial load is adjusted to determine the inertial absorption load ratio of the knee, hip, and ankle joints after the fine-tuning.
9. A method for multi-degree-of-freedom joint linkage control of a humanoid robot according to claim 1, characterized in that, The fine-tuned inertial absorption sharing ratio of the knee, hip, and ankle joints is applied to the joint drive assembly to obtain the real-time torque value of the ankle joint during deceleration. The joint linkage control parameters are updated through an iterative optimization method, including: The fine-tuned inertia absorption sharing ratio of the knee, hip and ankle joints is written into the control register of the joint drive assembly, and the output torque ratio of each joint motor is adjusted. The ankle torque acquisition module continuously reads the real-time torque value of the ankle joint during deceleration. The gradient descent method is used to iteratively update the joint linkage control parameters by using the difference between the real-time torque value of the ankle joint and the upper limit of the rated torque as the error signal.
10. A multi-degree-of-freedom joint linkage control device for a humanoid robot, characterized in that, The device includes: The ankle joint torque acquisition and comparison module is used to acquire the real-time torque value of the ankle joint, the inertial absorption and distribution of the knee, hip and ankle joints, and the anterior-posterior acceleration data of the head. Based on the comparison between the real-time torque value of the ankle joint and the preset rated range, it determines the degree to which the ankle torque approaches the rated range. An ankle joint torque saturation assessment module is used to assess the ankle joint torque saturation trend and determine the saturation range based on the degree to which it approaches the rated range; An inertial absorption sharing ratio adjustment module is used to adjust the inertial absorption sharing ratio of the knee, hip, and ankle joints according to the saturation range. The head acceleration monitoring and inertia transfer module is used to calculate the remaining inertia based on the adjusted inertia absorption and distribution ratio of the knee, hip and ankle joints, determine the inertia distribution after transfer, and monitor the acceleration response on the anterior and posterior axes of the head based on the inertia distribution after transfer to obtain the filtered peak value of the anterior and posterior head acceleration. The inertial absorption sharing ratio fine-tuning module is used to fine-tune the inertial absorption sharing ratio of the knee, hip and ankle joints according to the degree to which the peak value of the filtered head acceleration exceeds the preset threshold. The joint linkage control parameter iterative optimization module is used to apply the fine-tuned inertial absorption sharing ratio of the knee, hip and ankle joints to the joint drive assembly to obtain the real-time torque value of the ankle joint during deceleration. The joint linkage control parameters are updated through iterative optimization to confirm that the amplitude of trunk head shaking during deceleration switching is suppressed.