Active disturbance rejection control method and system with control input constraints

By introducing a dual closed-loop control structure into the quadrotor UAV and combining it with dynamic matrix and anti-disturbance control, the problem of lack of constraint processing in the existing technology is solved, accurate estimation and compensation of control inputs are achieved, and the stability and control performance of the system are improved.

CN120122443BActive Publication Date: 2025-09-26BEIJING UNIV OF POSTS & TELECOMM
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510268585.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-03-07
Publication Date
2025-09-26
Estimated Expiration
2045-03-07

AI Technical Summary

Technical Problem

Existing active disturbance rejection control methods in quadrotor UAVs lack an explicit mechanism for handling system constraints, which makes the dynamic coupling relationship between the observer and the controller vulnerable to destruction, affecting system stability and control performance.

Method used

A dual closed-loop control structure is adopted, with dynamic matrix control in the outer loop and active disturbance rejection control (ADRC) in the inner loop. By constructing a prediction model and objective function, introducing control input constraints, and designing an extended state observer and control law, accurate estimation and compensation of the control input can be achieved.

Benefits of technology

It effectively handles the control input constraints of quadrotor drones, improves the robustness and control performance of the system, broadens the scope of application, and combines the strong robustness of ADRC with the constraint processing capability of DMC.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120122443B_ABST
    Figure CN120122443B_ABST
Patent Text Reader

Abstract

The present invention provides an anti-disturbance control method and system with control input constraints. The system builds a prediction model of the system based on the ideal closed-loop transfer function of the ADRC system. Since the ADRC system regards unmodeled dynamics and external disturbances as total disturbances, and estimates and compensates for the total disturbances respectively through an extended state observer and a control law. Therefore, the prediction model of the DMC system established based on the ADRC system is more accurate and has better control performance. The ADRC-CIC control method proposed in the present invention can be designed by considering the control input constraints. Through the constraint conversion method, the control input constraints of ADRC can be successfully converted into constraints that can be directly processed by the optimization module. Therefore, ADRC-CIC can be used to solve control problems with control input constraints. It combines the strong robustness of ADRC and the ability of DMC to handle constraints.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an auto-disturbance rejection control method and system with control input constraints, which can be used for control of quad-rotor drones and other systems requiring constraints, and belongs to the technical field of auto-disturbance rejection control and optimization control. Background Art

[0002] The model inaccuracy, parameter mismatch, nonlinearity, and strong coupling characteristics of quadrotor drones pose great challenges to drone control. At the same time, quadrotor drones are extremely susceptible to external disturbances. Active Disturbance Rejection Control (ADRC) is a control method with low model dependence. It can consider unmodeled dynamics, parameter mismatch, nonlinearity, external disturbances, and coupling effects between multiple variables as part of the total disturbance. By designing an extended state observer and control law to estimate and compensate for the total disturbance respectively, not only can the robustness of the system be improved, but also implicit decoupling in multivariable control can be achieved. ADRC is an effective control method for quadrotor drones.

[0003] Currently, it is feasible to implement flight control for quadrotor drones using an ADRC system. However, various physical, safety, and economic constraints are unavoidable. Although existing ADRC control systems can achieve basic constraint management through simple output limiting, their core design lacks an explicit mechanism for handling system constraints. While crude direct limiting can temporarily limit the amplitude of the controlled variable, it can disrupt the dynamic coupling between the ADRC observer and controller, leading to risks such as observation instability or stability degradation. How to effectively introduce constraints into ADRC control systems to broaden their applicability to a wider range of control domains has become a research direction. Summary of the Invention

[0004] To solve the problems existing in the prior art, the present invention proposes an active disturbance rejection control system with control input constraints (ADRC-CIC) and a control method. The control system adopts a dual closed-loop control structure, in which the outer loop adopts dynamic matrix control (DMC) and the inner loop adopts ADRC control.

[0005] The specific technical solutions of the present invention are as follows:

[0006] An active disturbance rejection control method with control input constraints adopts a dual closed-loop control system, wherein the outer loop adopts dynamic matrix control and the inner loop adopts ADRC system control, and includes the following steps:

[0007] S1. Perform a unit step response test on the ideal closed-loop transfer function of the ADRC system and obtain the step response coefficient from the output response value. Thus, the dynamic matrix A in the prediction model is obtained, where A∈R P×M , P is the prediction time domain, M is the control time domain;

[0008] S2. The current moment is k, according to the dynamic matrix A, the initial prediction output vector y M0 (k) and the optimal control input increment vector Δu1(k) to build a prediction model, whose output is the predicted output vector y at the current moment M (k); initial predicted output vector y M0 (k) and the initial values ​​of the optimal control input increment vector Δu1(k) are both set to zero vector;

[0009] S3. Based on the current system output y(k) and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to predict the output vector y M (k) performs correction to obtain the corrected prediction output vector y c (k+1), the corrected prediction output vector y c (k+1) shift to get the initial prediction output vector y at time k+1 M0 (k+1), used to update the predicted output vector y at time k+1 M (k+1);

[0010] S4. Update the reference trajectory vector W(k) according to the current system output y(k) and the reference input r, and update the reference trajectory vector W(k) with the predicted output vector y M (k) Construct the objective function and find the optimal solution for the objective function and will As the optimal control input increment vector Δu1(k+1) at time k+1, it is used to update the predicted output vector y at time k+1 M (k+1);

[0011] S5. The optimal control input increment vector One path is output to the prediction model and the initial prediction output vector y at the k+1 moment M0 (k+1) Update the predicted output vector;

[0012] Optimal control input increment vector The first element of the other output is taken as the control input, and the differential transformation is performed to obtain the control signal u1(k), which is then converted into a continuous control signal u1 as the input of the ADRC system through a zero-order holder. The system output y is converted into a discrete system output y(k) through a zero-order holder and fed back to the reference trajectory vector W(k) and the prediction model respectively.

[0013] The further design is:

[0014] In S1, the ideal closed-loop transfer function of the ADRC system is expressed as follows:

[0015]

[0016] Where G(s) represents the ideal closed-loop transfer function of the ADRC system, y(s) represents the Laplace transform of the output, r(s) represents the Laplace transform of the input, s represents the Laplace operator, and K p , K d is the PD controller gain;

[0017] The dynamic matrix A is expressed as:

[0018]

[0019] Where, Represent the step response coefficient at each sampling moment.

[0020] The further design is:

[0021] In S2, the dynamic matrix A and the initial prediction output vector y M0 (k) and the optimal control input increment vector Δu1(k) to build a prediction model, whose output is the predicted output vector y at the current moment M (k), the expression of the prediction model is:

[0022] y M (k)=AΔu1(k)+y M0 (k).

[0023] The further design is:

[0024] In S3, the system output y(k) at the current moment and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to predict the output vector y M (k) performs correction to obtain the corrected prediction output vector y c (k+1), the corrected prediction output vector y c (k+1) shift to get the initial prediction output vector y at time k+1M0 (k+1), specifically:

[0025] S31, based on the current system output y(k) and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to obtain the corrected prediction output vector y c The expression for (k+1) is as follows:

[0026] y c (k+1)=y M (k)+h1e(k+1)

[0027] in,

[0028]

[0029] e(k+i)=y(k)-y M (k)(i=1,…P)

[0030] In the formula, h1 is the correction vector, h2 is the correction coefficient, and i represents the moment variable in the prediction domain;

[0031] S32, at time k+1, the shift matrix is ​​used to correct the predicted output vector y c (k+1) shift, get the initial prediction output vector y at time k+1 M0 (k+1), the initial predicted output vector y at time k+1 M0 (k+1) and the corrected predicted output vector y c The (k+1) relationship is as follows:

[0032] y M0 (k+1)=S·y c (k+1)

[0033] The shift matrix S is expressed as follows:

[0034]

[0035] Where S∈R P×P .

[0036] The further design is:

[0037] In S4, according to the reference trajectory vector W(k) and the predicted output vector y M (k) Construct the objective function and find the optimal solution of the objective function Specifically:

[0038] Under unconstrained conditions, the objective function is as follows:

[0039]

[0040] Where Q and R are weight matrices, which are expressed as follows with W(k):

[0041]

[0042] w(k+i)=(1-α i )r+α i y(k)(i=1,2,…,P)

[0043] Q=q·I P×P

[0044]

[0045] Among them, α is the softening coefficient, q, is the weight, and I is the identity matrix.

[0046] The optimal solution of the objective function is:

[0047]

[0048] Where Δu1(k) is the optimal control input increment vector at time k.

[0049] The further design is:

[0050] In S4, according to the reference trajectory vector W(k) and the predicted output vector y M (k) Construct the objective function and find the optimal solution of the objective function Specifically:

[0051] Under the control input constraints, the objective function is as follows:

[0052]

[0053] st:u min ≤u(k)≤u max

[0054] Where u(k) is the control input that directly enters the controlled object at each sampling moment, u max and u min They represent the upper and lower bounds of u(k), respectively (i.e., the limits of the driving torque provided by the motor);

[0055] To find the optimal solution of the objective function, the control input constraint transformation must be performed first, and the constraint on u must be equivalently transformed into the constraint on u1. The constraint transformation expression is as follows:

[0056]

[0057] Where b0 is the controller gain; They are respectively the estimation of the system output y by the extended state observer, the estimation of the differential of the system output y, and the estimation of the total disturbance, u 1max and u 1min They represent the upper and lower bounds of the transformed u1(k) respectively.

[0058] Combined with the prediction model, the objective function is transformed into:

[0059]

[0060] st:u 1min ≤u1(k)≤u 1max

[0061] Where E = W(k)-y M0 (k) is an intermediate variable;

[0062] The objective function is converted into a quadratic programming problem:

[0063]

[0064] st:A q Δu1≤b q

[0065] in,

[0066]

[0067]

[0068] The optimal solution of the objective function is obtained as:

[0069] A further design is that the controlled object is a quadrotor drone.

[0070] An active disturbance rejection control system with control input constraints includes the following modules:

[0071] Dynamic matrix establishment module: Perform unit step response test on the ideal closed-loop transfer function of the ADRC system and obtain the step response coefficient from the output response value Thus, the dynamic matrix A in the prediction model is obtained, where A∈R P×M , P is the prediction time domain, M is the control time domain;

[0072] Prediction model construction module: The current moment is k, according to the dynamic matrix A, the initial prediction output vector y M0 (k) and the optimal control input increment vector Δu1(k) to build a prediction model, whose output is the predicted output vector y at the current moment M(k), the initial predicted output vector y M0 (k) and the initial values ​​of the optimal control input increment vector Δu1(k) are both set to zero vector;

[0073] Correction module: Based on the current system output y(k) and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to predict the output vector y M (k) performs correction to obtain the corrected prediction output vector y c (k+1), the corrected prediction output vector y c (k+1) shift to get the initial prediction output vector y at time k+1 M0 (k+1), used to update the predicted output vector y at time k+1 M (k+1);

[0074] Optimization module: According to the current system output y(k) and reference input r, update the reference trajectory vector W(k), and the reference trajectory vector W(k) is combined with the predicted output vector y M (k) Construct the objective function and find the optimal solution for the objective function and will As the optimal control input increment vector Δu1(k+1) at time k+1, it is used to update the predicted output vector y at time k+1 M (k+1);

[0075] Update and control module: The optimal control input increment vector One path is output to the prediction model and the initial prediction output vector y at the k+1 moment M0 (k+1) Update the predicted output vector;

[0076] Optimal control input increment vector The first element of the other output is taken as the control input, and the differential transformation is performed to obtain the control signal u1(k), which is then converted into a continuous control signal u1 as the input of the ADRC system through a zero-order holder. The system output y is converted into a discrete system output y(k) through a zero-order holder and fed back to the reference trajectory vector W(k) and the prediction model respectively.

[0077] An electronic device comprises a memory and a processor, wherein the memory stores a computer program, and the processor is configured to call and run the computer program stored in the memory to execute the method according to any one of claims 1 to 7.

[0078] A computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of any of the above methods.

[0079] Compared with the prior art, the present invention has the following beneficial effects:

[0080] The present invention's active disturbance rejection control system and method with control input constraints constructs a predictive model based on the ideal closed-loop transfer function of the ADRC system. Because the ADRC system treats unmodeled dynamics and external disturbances as a total disturbance, and estimates and compensates for the total disturbance using an extended state observer and control law, the predictive model of the DMC system based on the ADRC system is more accurate and provides superior control performance.

[0081] This invention addresses the ADRC system's inability to handle constraints and introduces the DMC system, enabling the entire system to better handle input constraints. ADRC also overcomes the DMC system's limitation of only being able to control asymptotically stable objects. By combining the ADRC and DMC systems, it is possible to control any object, such as a drone that is not inherently asymptotically stable, or other control situations requiring constraints.

[0082] The ADRC-CIC control method proposed in this paper can be designed by considering control input constraints. Through a constraint conversion method, ADRC control input constraints can be successfully converted into constraints that can be directly processed by the optimization module. Therefore, ADRC-CIC can be used to solve control problems with control input constraints, combining the robustness of ADRC with the constraint handling capabilities of DMC. BRIEF DESCRIPTION OF THE DRAWINGS

[0083] Figure 1 This is a control structure diagram of ADRC-CIC in the embodiment;

[0084] Figure 2 This is a comparison chart of the tracking effect under nominal conditions and with disturbance added in the test example;

[0085] Figure 3 This is a comparison chart of the control effects under control input constraints in the test instance;

[0086] Figure 4 This is a comparison diagram of control signals under control input constraints in the test instance;

[0087] Figure 5 This is the control signal effect diagram of ADRC-CIC with added constraints under the control input constraints in the test case;

[0088] Figure 6 This is a comparison chart of the control effects of control limiting and control constraint conversion in the test example;

[0089] Figure 7 This is one of the comparison diagrams of the control effects of ADRC control limiting and ADRC-CIC control constraint conversion in the test example;

[0090] Figure 8 This is the second comparison chart of the control effects of ADRC control limiting and ADRC-CIC control constraint conversion in the test example; DETAILED DESCRIPTION

[0091] Example 1:

[0092] The active disturbance rejection control method with control input constraints of the present invention adopts a dual closed-loop control system, wherein the outer loop adopts dynamic matrix control and the inner loop adopts ADRC system control, and comprises the following steps:

[0093] S1. Perform a unit step response test on the ideal closed-loop transfer function of the ADRC system and obtain the step response coefficient from the output response value. Thus, the dynamic matrix A in the prediction model is obtained, where A∈R P×M , P is the prediction time domain, M is the control time domain;

[0094] S2. The current moment is k, according to the dynamic matrix A, the initial prediction output vector y M0 (k) and the optimal control input increment vector Δu1(k) to build a prediction model, whose output is the predicted output vector y at the current moment M (k); initial predicted output vector y M0 (k) and the initial values ​​of the optimal control input increment vector Δu1(k) are both set to zero vector;

[0095] S3. Based on the current system output y(k) and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to predict the output vector y M (k) performs correction to obtain the corrected prediction output vector y c (k+1), the corrected prediction output vector y c (k+1) shift to get the initial prediction output vector y at time k+1 M0 (k+1), used to update the predicted output vector y at time k+1 M (k+1);

[0096] S4. Update the reference trajectory vector W(k) according to the current system output y(k) and the reference input r, and update the reference trajectory vector W(k) with the predicted output vector y M (k) Construct the objective function and find the optimal solution for the objective function and will As the optimal control input increment vector Δu1(k+1) at time k+1, it is used to update the predicted output vector y at time k+1 M (k+1);

[0097] S5. The optimal control input increment vector One path is output to the prediction model and the initial prediction output vector y at the k+1 moment M0 (k+1) Update the predicted output vector;

[0098] Optimal control input increment vector The first element of the other output is taken as the control input, and the differential transformation is performed to obtain the control signal u1(k), which is then converted into a continuous control signal u1 as the input of the ADRC system through a zero-order holder. The system output y is converted into a discrete system output y(k) through a zero-order holder and fed back to the reference trajectory vector W(k) and the prediction model respectively.

[0099] Example 2:

[0100] The active disturbance rejection control method with control input constraints of the present invention adopts a dual closed-loop control system, wherein the outer loop adopts dynamic matrix DMC control and the inner loop adopts ADRC system control. The controlled object can be a quadrotor drone, and the method includes the following steps:

[0101] S1. The structure of ADRC-CIC of the present invention is as follows Figure 1 As shown in the figure, under the ADRC-CIC framework, the controlled object of DMC is replaced by a second-order closed-loop ADRC system. The prediction model of ADRC-CIC adopts the ideal closed-loop transfer function of the closed-loop ADRC system as follows:

[0102]

[0103] Where G(s) represents the ideal closed-loop transfer function of the ADRC system, y(s) represents the Laplace transform of the output, r(s) represents the Laplace transform of the input, s represents the Laplace operator, and K p , K d is the PD controller gain.

[0104] Figure 1 Where r is the reference value, W(k) is the reference trajectory vector, u1(k) is the optimal control input vector, u1 is the optimal control input of the continuous type of u1(k), Δu1(k) is the optimal control input increment vector, and y M is the predicted output vector.

[0105] Let P be the prediction time domain, M be the control time domain, k be the current time, and the control increment be Δu1(k)=[Δu1(k|k),Δu1(k+1|k),…,Δu1(k+M-1|k)] T , at time (k+M), Δu1(k+M|k)=Δu1(k+M+1|k)=…=0. Let is the step response coefficient of the prediction model, then the prediction model (1) is expressed as

[0106]

[0107] Where i represents the moment variable of the prediction domain;

[0108] Perform a unit step response test on the ideal closed-loop transfer function of the ADRC system and obtain the step response coefficient from the output response value. Thus, the dynamic matrix A in the prediction model is obtained, where A∈R P×M ;

[0109]

[0110] Where, Respectively represent the step response coefficient at each sampling moment;

[0111] S2. Based on the dynamic matrix A, the initial prediction output vector y M0 (k) and the optimal control input increment vector Δu1(k) to build a prediction model, whose output is the predicted output vector y at the current moment M (k)(initial prediction output vector y M0 (k) and the initial value of the optimal control input increment vector Δu1(k) are both set to zero vector); let y M (k)=[y M (k+1|k),y M (k+2|k),…,y M (k+P|k)] T is the predicted output vector, then the prediction model (2) can be rewritten as

[0112] y M (k)=AΔu1(k)+y M0 (k) (4)

[0113] Among them, y M0 (k)=[y M0 (k+1|k),y M0 (k+2|k),…,y M0 (k+P|k)] Tis the initial predicted output vector, Δu1(k)=[Δu1(k|k),Δu1(k+1|k),…,Δu1(k+M-1|k)] T is the control increment vector.

[0114] S3. Based on the current system output y(k) and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to predict the output vector y M (k) performs correction to obtain the corrected prediction output vector y c (k+1), the corrected prediction output vector y c (k+1) shift to get the initial prediction output vector y at time k+1 M0 (k+1), used in equation (4) to update the predicted output vector y at time k+1 M (k+1);

[0115] S31, for model mismatch caused by interference, the prediction output should be corrected by the prediction error. The corrected prediction output vector can be expressed as:

[0116] y c (k+1)=y M (k)+h1e(k+1) (5)

[0117] Specifically,

[0118]

[0119] In the formula, h1 is the correction vector, h2 is the correction coefficient, and i represents the moment variable in the prediction domain;

[0120] S32, at time k+1, the shift matrix is ​​used to correct the predicted output vector y c (k+1) shift, get the initial prediction output vector y at time k+1 M0 (k+1), the initial predicted output vector y at time k+1 M0 (k+1) and the corrected predicted output vector y c The (k+1) relationship is as follows:

[0121] y M0 (k+1)=S·y c (k+1) (7)

[0122] Among them, the shift matrix S is

[0123]

[0124] Where S∈R P×P .

[0125] S4. Update the reference trajectory vector W(k) according to the current system output y(k) and the reference input r, and update the reference trajectory vector W(k) with the predicted output vector y M (k) Construct the objective function and find the optimal solution for the objective function and will As the optimal control input increment vector Δu1(k+1) at time k+1, it is used in equation (4) to update the predicted output vector y at time k+1 M (k+1);

[0126] S41, since the expected predicted output needs to be as close to the expected value as possible, and the control increment Δu1(k) cannot change suddenly, at time k, under unconstrained conditions, an objective function can be constructed as follows:

[0127]

[0128] Where Q and R are weight matrices, which are expressed as follows with W(k):

[0129]

[0130] Among them, α is the softening coefficient, q, is the weight, and I is the identity matrix.

[0131] Based on formula (9), the optimal solution of the objective function under unconstrained conditions is:

[0132]

[0133] Where Δu1(k) is the optimal control input increment vector at time k.

[0134] At time (k+1), the control increment vector in equation (4) can be expressed as Instead, that is

[0135]

[0136] Pick The first element is the current control increment

[0137]

[0138] The current optimal control input for

[0139]

[0140] Or use S42 for constrained optimization problems:

[0141] Under the control input constraints, the objective function is as follows:

[0142]

[0143] Where u(k) is the control input that directly enters the controlled object at each sampling moment, u max and u min They represent the upper and lower bounds of u(k), respectively (i.e., the limits of the driving torque provided by the motor);

[0144] Figure 1 The optimization module in can solve optimization problems with constraints. Since DMC cannot directly solve optimization problems with u constraints, the u constraints should be equivalently converted into u1 constraints. Figure 1 The relationship between u and u1 can be obtained as follows

[0145]

[0146] Where u1(k) is the control signal obtained by differential transformation, u1 is the continuous control signal input to the ADRC system, and u is the control signal output by the ADRC system.

[0147] Substituting the bounds in (16) into (15), we can obtain that the constraint on u is equivalently transformed into the constraint on u1. The constraint transformation expression is as follows:

[0148]

[0149] Where b0 is the controller gain; They are respectively the estimation of the system output y by the extended state observer, the estimation of the differential of the system output y, and the estimation of the total disturbance, u 1max and u 1min They represent the upper and lower bounds of the transformed u1(k) respectively.

[0150] From (17), we can see that if u 1min ≤u1(k)≤u 1max If established, then u min ≤u(k)≤u max Therefore, the equivalent optimization problem of (15) can be established as:

[0151]

[0152] Substituting (4) into (18) we get

[0153]

[0154] Where E = W(k)-y M0 (k) is an intermediate variable; E TQE is a constant and has no effect on the optimal solution of J(Δu1), so it is discarded.

[0155] The objective function is converted into a quadratic programming problem, which can be derived according to (19):

[0156]

[0157] in,

[0158]

[0159] Then the optimal solution of (20) is:

[0160]

[0161] For (21), the current optimal control increment is It can be obtained by (13); then, the current optimal control input can be obtained by (14) Finally, replace u1 in (16) with This satisfies the constraints on the control signal u in (15).

[0162] S5. The optimal control input increment vector One path is output to the prediction model and the initial prediction output vector y at the k+1 moment M0 (k+1) Update the predicted output vector;

[0163] Optimal control input increment vector The first element of the other output is taken as the control input, and the differential transformation is performed to obtain the control signal u1(k), which is then converted into a continuous control signal u1 as the input of the ADRC system through a zero-order holder. The system output y is converted into a discrete system output y(k) through a zero-order holder and fed back to the reference trajectory vector W(k) and the prediction model respectively.

[0164] Example 3:

[0165] This example provides an active disturbance rejection control system with control input constraints, including the following modules:

[0166] Dynamic matrix establishment module: Perform unit step response test on the ideal closed-loop transfer function of the ADRC system and obtain the step response coefficient from the output response value Thus, the dynamic matrix A in the prediction model is obtained, where A∈R P×M , P is the prediction time domain, M is the control time domain;

[0167] Prediction model construction module: The current moment is k, according to the dynamic matrix A, the initial prediction output vector y M0(k) and the optimal control input increment vector Δu1(k) to build a prediction model, whose output is the predicted output vector y at the current moment M (k);

[0168] Correction module: Based on the current system output y(k) and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to predict the output vector y M (k) performs correction to obtain the corrected prediction output vector y c (k+1), the corrected prediction output vector y c (k+1) shift to get the initial prediction output vector y at time k+1 M0 (k+1);

[0169] Optimization module: According to the current system output y(k) and reference input r, update the reference trajectory vector W(k), and the reference trajectory vector W(k) is combined with the predicted output vector y M (k) Construct the objective function and find the optimal solution for the objective function and will As the optimal control input increment vector Δu1(k+1) at time k+1;

[0170] Update and control module: The optimal control input increment vector One channel outputs the initial predicted output vector y at the k+1 moment M0 (k+1) Update the predicted output vector;

[0171] Optimal control input increment vector The first element of the other output is taken as the control input, and the differential transformation is performed to obtain the control signal u1(k), which is then converted into a continuous control signal u1 as the input of the ADRC system. The system output y is converted into a discrete system output y(k) and fed back to the reference trajectory vector W(k) and the prediction model respectively.

[0172] Example 4:

[0173] This example provides an electronic device, which includes a memory and a processor. The memory stores a computer program, and the processor is used to call and run the computer program stored in the memory to execute the method of the above example.

[0174] Embodiment 5:

[0175] This example provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the steps of the method in the above example are implemented.

[0176] Test example:

[0177] The effectiveness of the ADRC-CIC with control input constraints of the present invention will be verified by hardware-in-the-loop (HIL) experiments. All HIL experiments are carried out under natural wind disturbances. Since the control of the three attitudes is similar and it is easier to achieve the desired closed-loop performance in the yaw channel than in the roll and pitch channels, only the closed-loop responses of the roll and pitch angles are shown. In addition, ADRC-CIC is also discussed. The controller parameters are shown in Table 1. In order to quantitatively compare the results, two indicators are calculated. The indicator values ​​and improvements are listed in Table 2 and Table 3, respectively.

[0178] In the experiment, the following conditions are:

[0179] 1. ADRC-CIC (standard), which represents the control system of the present invention, includes a second-order ADRC system, a controlled object, and a dynamic matrix control module. The second-order ADRC system includes an extended state observer (ESO) and a PD controller. The controlled object is a quadrotor drone; the dynamic matrix control module includes a prediction model, an optimization unit, a feedback and correction unit. Specifically, Figure 1 As shown, the dynamic matrix control module is not constrained.

[0180] 2. ADRC-CIC (with constraints) means that based on ADRC-CIC (standard), the dynamic matrix module adds control input constraints and performs constraint conversion to re-obtain the optimal solution. The constraint condition is: ±0.001Nm.

[0181] 3. ADRC-CIC (plus disturbance) means that based on ADRC-CIC (standard), a constant disturbance with an amplitude of 0.03 Nm is added to the roll channel of the controlled object at 42.5 seconds.

[0182] 4. ADRC-CIC (limiting) means that the control signal u is limited based on ADRC-CIC (standard), and the limit is (0.001 <u<+0.001)。

[0183] 5. ADRC (standard) includes extended state observer ESO and PD controller.

[0184] 6. ADRC (add disturbance) means that based on ADRC (standard), a constant disturbance with an amplitude of 0.03 Nm is added to the roll channel of the controlled object at 42.5 seconds.

[0185] 7.ADRC (limiting), indicating that the control signal u is limited based on ADRC (standard), and the limit is (0.001 <u<+0.001)。

[0186] In Table 1, ω ois the observer bandwidth; ω c is the controller bandwidth; b0 is the controller gain; P is the prediction time domain; M is the control time domain; q is the weight; r is the weight; h1 is the correction coefficient; α is the softening coefficient.

[0187] Table 1 Controller parameters

[0188]

[0189] Table 2 Performance indicators

[0190]

[0191]

[0192] Table 3 Performance index improvement

[0193]

[0194] There are the following indicators, and their calculation methods are given

[0195]

[0196] Where e1=ry represents the attitude tracking error, r represents the desired attitude, y represents the actual attitude, u is the control signal, ITAE represents the integral of the absolute error times the time, and E represents the integral of the square of the control signal.

[0197] The experiments from Experiment 1 to Experiment 3 were all conducted on a hardware-in-the-loop (HIL) platform with a sampling period of 4ms.

[0198] In Experiment 1, ADRC and ADRC-CIC were compared under nominal conditions;

[0199] Experiment 2,In order to demonstrate the control performance of ADRC-CIC (with constraints),,control input constraint conversion is added in Experiment 2.

[0200] In Experiment 3, the control signal limiting strategy and the control constraint conversion method were compared.

[0201] Experiment 1: Tracking performance and interference rejection test under nominal conditions

[0202] The target roll and pitch angles are set to 12° and the test duration is 70 seconds. The step responses are compared between ADRC-CIC and ADRC under nominal conditions.

[0203] First, ADRC-CIC (standard) and ADRC (standard), i.e., the tracking performance under nominal conditions, were tested from 0 to 40 seconds.

[0204] Then, at 42.5 seconds, a constant disturbance with an amplitude of 0.03 Nm was added to the roll channels of the two systems to test the anti-disturbance capabilities of ADRC-CIC (with disturbance) and ADRC (with disturbance).

[0205] At the same time, the same perturbation is added to the pitch channel at 49.5 seconds. The roll angle value is calculated from 37.5 seconds to 53 seconds, and the pitch angle value is calculated from 44.5 seconds to 60 seconds.

[0206] like Figure 2 Figures (a) and (b) show that under nominal conditions, both ADRC (standard) and ADRC-CIC (standard) can track the target's roll and pitch angles. During the ascent phase, ADRC's response speed is slightly faster than ADRC-CIC. Afterwards, ADRC's response fluctuates around the reference point, with a large error. However, in the end, both reach the reference point almost simultaneously. Due to the slower response of ADRC-CIC during the ascent phase, its ITAE value is slightly greater than that of ADRC. As can be seen from the E indicator in Experiment 1 in Table 2, ADRC-CIC consumes slightly more energy. This is due to the slow response of the outer loop DMC. Overall, ADRC-CIC and ADRC perform similarly under nominal conditions.

[0207] After adding disturbance, Figure 2 As shown in Figures (a) and (b), the responses of both ADRC (with perturbation) and ADRC-CIC (with perturbation) deviate from the reference value. In contrast, the fluctuation amplitude of ADRC-CIC is slightly smaller than that of ADRC, and is more pronounced in the pitch channel. However, during the recovery phase, ADRC returns to the reference more quickly. The E metric in Experiment 1 in Table 2 shows that after the perturbation, ADRC-CIC and ADRC consume similar control energy.

[0208] Therefore, for a dual closed-loop structure, ADRC-CIC has better anti-interference capabilities than ADRC. However, due to the slow response of the outer loop, ADRC-CIC returns to the reference value more slowly than ADRC, resulting in a larger tracking error for ADRC-CIC than for ADRC.

[0209] Figure 2 ADRC (standard / with disturbance) and ADRC-CIC (standard / with disturbance) respectively indicate that the nominal condition control is performed first and the disturbance control is added later.

[0210] Experiment 2: Tracking performance test under control input constraints

[0211] Based on the results under nominal conditions described above, the next step was to test the ADRC-CIC's performance after applying control input constraints. In this case, the reference was set to 0° and the control input constraints were ±0.001 Nm.

[0212] This section tests and compares the performance of ADRC (standard), ADRC-CIC (standard) and ADRC-CIC (with constraints).

[0213] like Figure 3 As shown in (a) and (b), the posture is not controlled by ADRC (standard) (blue solid line) and ADRC-CIC (standard) (green dotted line). Figure 3 As shown in (a) and (b), ADRC-CIC (with constraints) (black dashed line) can keep the attitude response stable near 0°, with a maximum roll angle error of 0.37° and a maximum pitch angle error of 0.43°.

[0214] like Figure 4 As shown in the roll angle control signal and pitch angle control signal in (a) and (b), due to the lack of consideration of constraints, the control inputs of ADRC (standard) and ADRC-CIC (standard) are very different, and the attitude is still uncontrollable. Figure 5 As can be seen in Figures (a) and (b), the control input of ADRC-CIC (with constraints) is strictly within the range of ±0.001 N m. The ITAE and E indicators in Experiment 2 in Table 2 also show that when control constraints are considered, smaller control energy leads to smaller tracking error.

[0215] The results show that constraints are crucial to the stability of the quadrotor UAV system. Through the proposed constraint transformation method, ADRC-CIC can effectively handle the control input constraints, and the performance of ADRC-CIC (with constraints) is better than that of ADRC-CIC (standard) and ADRC (standard) in terms of both control ability and tracking error.

[0216] Experiment 3: Comparison of Control Limiting and Control Constraint Conversion

[0217] A comparative experiment is designed to illustrate the difference between the control limiting strategy and the control constraint conversion method.

[0218] This section tests and compares the performance of ADRC (limited), ADRC-CIC (limited) and ADRC-CIC (constrained).

[0219] from Figure 6 As can be seen in (a) and (b), ADRC-CIC (limiting) (green dashed line) makes the attitude angle uncontrollable, while ADRC (limiting) (blue solid line) and ADRC-CIC (constraint added) (black dashed line) can stabilize the attitude response around 0°.

[0220] In addition, the results of ADRC (limited) and ADRC-CIC (constrained) are compared, as shown in Figure 2. Figure 7As shown in (a) and (b). The results show that the attitude response of ADRC-CIC (with constraints) (blue dotted line) is significantly better than that of ADRC (limited) (green solid line). In addition, from the ITAE index and E index of Experiment 3 in Table 3, it can be seen that under the condition of similar control energy, for the roll angle, the ITAE value of ADRC-CIC (with constraints) is reduced by 50.5% compared with ADRC (limited). At the same time, the pitch angle is reduced by 48.6%, indicating that the tracking performance of ADRC-CIC (with constraints) is significantly better than that of ADRC (limited). At the same time, as Figure 8 As shown in (a) and (b), the control inputs of ADRC (limiting) and ADRC-CIC (constraint-added) are strictly within the range of ±0.001Nm.

[0221] Therefore, the results show that by solving the optimization problem, a more reasonable control signal can be obtained, thereby achieving better performance. On the contrary, directly limiting the control input has a lower performance than the control constraint transformation method.

Claims

1. An active disturbance rejection control method with control input constraints, characterized in that: The method adopts a dual closed-loop control system, the outer loop adopts dynamic matrix control, and the inner loop adopts ADRC system control, which includes the following steps: S1. Perform a unit step response test on the ideal closed-loop transfer function of the ADRC system and obtain the step response coefficient from the output response value. Thus, the dynamic matrix A in the prediction model is obtained, where A∈R P×M , P is the prediction time domain, M is the control time domain; S2. The current moment is k, according to the dynamic matrix A, the initial prediction output vector y M0 (k) and the optimal control input increment vector Δu1(k) to build a prediction model, whose output is the predicted output vector y at the current moment M (k); S3. Based on the current system output y(k) and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to predict the output vector y M (k) performs correction to obtain the corrected prediction output vector y c (k+1), the corrected prediction output vector y c (k+1) shift to get the initial prediction output vector y at time k+1 M0 (k+1); S4. Update the reference trajectory vector W(k) according to the current system output y(k) and the reference input r, and update the reference trajectory vector W(k) with the predicted output vector y M (k) Construct the objective function and find the optimal solution for the objective function and will As the optimal control input increment vector Δu1(k+1) at time k+1; S5. The optimal control input increment vector One channel outputs the initial predicted output vector y at the k+1 moment M0 (k+1) Update the predicted output vector; Optimal control input increment vector The first element of the other output is taken as the control input, and the differential transformation is performed to obtain the control signal u1(k), which is then converted into a continuous control signal u1 as the input of the ADRC system. The system output y is converted into a discrete system output y(k) and fed back to the reference trajectory vector W(k) and the prediction model respectively.

2. The active disturbance rejection control method with control input constraints according to claim 1, characterized in that: In S1, the ideal closed-loop transfer function of the ADRC system is expressed as follows: Where G(s) represents the ideal closed-loop transfer function of the ADRC system, y(s) represents the Laplace transform of the output, r(s) represents the Laplace transform of the input, s represents the Laplace operator, and K p , K d is the PD controller gain; The dynamic matrix A is expressed as: Where, Represent the step response coefficient at each sampling moment.

3. The active disturbance rejection control method with control input constraints according to claim 2, characterized in that: In S2, the dynamic matrix A and the initial prediction output vector y M0 (k) and the optimal control input increment vector Δu1(k) to build a prediction model, whose output is the predicted output vector y at the current moment M (k), the expression of the prediction model is: y M (k)=AΔu1(k)+y M0 (k)。 4. The active disturbance rejection control method with control input constraints according to claim 3, characterized in that: In S3, the system output y(k) at the current moment and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to predict the output vector y M (k) performs correction to obtain the corrected prediction output vector y c (k+1), the corrected prediction output vector y c (k+1) shift to get the initial prediction output vector y at time k+1 M0 (k+1), specifically: S31, based on the current system output y(k) and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to obtain the corrected prediction output vector y c The expression for (k+1) is as follows: y c (k+1)=y M (k)+h1e(k+1) in, e(k+i)=y(k)-y M (k),i=1,…P In the formula, h1 is the correction vector, h2 is the correction coefficient, and i represents the moment variable in the prediction domain; S32, at time k+1, the shift matrix is ​​used to correct the predicted output vector y c (k+1) shift, get the initial prediction output vector y at time k+1 M0 (k+1), the initial predicted output vector y at time k+1 M0 (k+1) and the corrected predicted output vector y c The (k+1) relationship is as follows: and M0 (k+1)=S·y c (k+1) The shift matrix S is expressed as follows: Where S∈R P×P .

5. The active disturbance rejection control method with control input constraints according to claim 4, characterized in that: In S4, according to the reference trajectory vector W(k) and the predicted output vector y M (k) Construct the objective function and find the optimal solution of the objective function Specifically: Under unconstrained conditions, the objective function is as follows: Where Q and R are weight matrices, which are expressed as follows with W(k): w(k+i)=(1-a i )r+a i y(k),i=1,2,…,P Q=q·I P×P Among them, α is the softening coefficient, q, is the weight, I is the unit matrix; The optimal solution of the objective function is: Where Δu1(k) is the optimal control input increment vector at time k.

6. The active disturbance rejection control method with control input constraints according to claim 4, characterized in that: In S4, according to the reference trajectory vector W(k) and the predicted output vector y M (k) Construct the objective function and find the optimal solution of the objective function Specifically: Under the control input constraints, the objective function is as follows: s.t.:u min ≤u(k)≤u max Where u(k) is the control input that directly enters the controlled object at each sampling moment, u max and u min They represent the upper and lower bounds of u(k) respectively; To find the optimal solution of the objective function, the control input constraint transformation must be performed first, and the constraint on u must be equivalently transformed into the constraint on u1. The constraint transformation expression is as follows: Where b0 is the controller gain; They are respectively the estimation of the system output y by the extended state observer, the estimation of the differential of the system output y, and the estimation of the total disturbance, u 1max and u 1min Respectively represent the upper and lower bounds of u1(k) after transformation; Combined with the prediction model, the objective function is transformed into: s.t.:u 1min ≤u1(k)≤u 1max Where E = W(k)-y M0 (k) is an intermediate variable; The objective function is converted into a quadratic programming problem: s.t.:A q Δu1≤b q in, The optimal solution of the objective function is obtained as:

7. The active disturbance rejection control method with control input constraints according to claim 5 or 6, characterized in that: The object of the charge is a quad-rotor drone.

8. An active disturbance rejection control system with control input constraints, characterized in that: Includes the following modules: Dynamic matrix establishment module: Perform unit step response test on the ideal closed-loop transfer function of the ADRC system and obtain the step response coefficient from the output response value Thus, the dynamic matrix A in the prediction model is obtained, where A∈R P×M , P is the prediction time domain, M is the control time domain; Prediction model construction module: The current moment is k, according to the dynamic matrix A, the initial prediction output vector y M0 (k) and the optimal control input increment vector Δu1(k) to build a prediction model, whose output is the predicted output vector y at the current moment M (k); Correction module: Based on the current system output y(k) and the predicted output vector y M (k) obtains the prediction error vector e(k+1), and uses the prediction error vector e(k+1) to predict the output vector y M (k) performs correction to obtain the corrected prediction output vector y c (k+1), the corrected prediction output vector y c (k+1) shift to get the initial prediction output vector y at time k+1 M0 (k+1); Optimization module: According to the current system output y(k) and reference input r, update the reference trajectory vector W(k), and the reference trajectory vector W(k) is combined with the predicted output vector y M (k) Construct the objective function and find the optimal solution for the objective function and will As the optimal control input increment vector Δu1(k+1) at time k+1; Update and control module: The optimal control input increment vector One channel outputs the initial predicted output vector y at the k+1 moment M0 (k+1) Update the predicted output vector; Optimal control input increment vector The first element of the other output is taken as the control input, and the differential transformation is performed to obtain the control signal u1(k), which is then converted into a continuous control signal u1 as the input of the ADRC system. The system output y is converted into a discrete system output y(k) and fed back to the reference trajectory vector W(k) and the prediction model respectively.

9. An electronic device, characterized in that: The electronic device includes a memory and a processor, wherein the memory stores a computer program, and the processor is configured to call and run the computer program stored in the memory to execute the method according to any one of claims 1 to 7.

10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Model reference adaptive anti-interference optimization control method

    CN116224788A

  • Using autocorrelation to detect model mismatch in a process controller

    US20120221124A1