-
Based on relevant literature, a quadrotor dynamic model is established. Considering the susceptibility of quadrotor attitude control to disturbances, an attitude control algorithm is designed using the Active Disturbance Rejection Control (ADRC) method to control the three-axis attitude changes. The performance of the designed control system is analyzed to achieve the goal of high-performance attitude control for the quadrotor
-
Attitude_Control_2nd_Linear_ADRC.mcontains the modeling, control system design, and analysis code for the quadrotor aircraft. The corresponding Simulink model is available inAttitude_Control_2nd_Linear_ADRC_Simulink.slx -
transfer_solve.mincludes the derivation of the transfer function for the second-order linear Active Disturbance Rejection Control (ADRC) system
A quadrotor hovering experimental platform manufactured by Quanser, with a weight of approximately a few kilogram, is used to analysis the attitude control method
The state-space equation for a three-degree-of-freedom (attitude) quadrotor hovering system is formulated as[1]
where:
-
$y$ is the yaw angle,
$p$ is the pitch angle, and$r$ is the roll angle -
$v_f$ ,$v_b$ ,$v_r$ ,$v_l$ represent the control voltages applied to the front, rear, right, and left rotors, respectively -
$K_{t, n}$ is the thrust torque coefficient of the clockwise propeller, valued at$0.0036 \mathrm{~N} \cdot \mathrm{~m} / \mathrm{V}$ -
$K_{t, c}$ is the thrust torque coefficient of the counterclockwise propeller, valued at$-0.0036 \mathrm{~N} \cdot \mathrm{~m} / \mathrm{V}$ -
$K_f$ is the thrust coefficient of the propeller, valued at$0.1188 \mathrm{~N} / \mathrm{V}$ -
$J_y$ is the moment of inertia about the yaw axis, valued at$0.1104 \mathrm{~kg} \cdot \mathrm{~m}^2$ -
$J_p$ ,$J_r$ are the moments of inertia about the pitch and roll axes, both valued at$0.0552 \mathrm{~kg} \cdot \mathrm{~m}^2$ -
$l$ is the distance from the rotation center to the propeller center, valued at$0.197 m$
The control law is designed based on the second-order linear ADRC method to facilitate subsequent analysis
The ESO algorithm is implemented in continuous form:
where
Rewriting in state-space form:
where:
-
$\beta_1, ~ \beta_2$ are tunable parameters;$e_1=r_1-z_1, e_2=r_2-z_2$ are system state errors. In this design method, the TD (Tracking Differentiator) is not used, therefore$r_2 = 0$ , the system attitude error is rewritten as$e_1=r-z_1, e_2=-z_2$ - The adjustable parameter
$b_0$ is the "compensation factor" that determines the strength of the compensation
Substituting Equation
The transfer function between the input signal and the reference signal is given by:
The transfer function between the input signal and the output signal is given by:
The second-order linear ADRC control system can be represented as follows:
where
It is important to note that
The selection of
Based on the attitude dynamics model of the quadrotor, the state observer LESO, and the error feedback law LSEF, the following control system can be established:
(The control block diagram is constructed with reference to shirunqi/Attitude-Control-of-Quadrotor-based-on-ADRC)
In the diagram, the
In this design, assuming the
-
YAW Channel
$b_{0y}=0.04$ LESO:
$\beta_{01y}=30, \beta_{02y}=300, \beta_{03y}=1000$ LSEF:
$\beta_{1y}=200, \beta_{2y}=120$ -
PITCH Channel
$b_{0p}=0.4$ LESO:
$\beta_{01p}=30, \beta_{02p}=300, \beta_{03p}=1000$ LSEF:
$\beta_{1p}=200, \beta_{2p}=120$ -
ROLL Channel
$b_{0r}=0.4$ LESO:
$\beta_{01r}=30, \beta_{02r}=300, \beta_{03r}=1000$ LSEF:
$\beta_{1r}=200, \beta_{2r}=120$
The initial state of the system is set to
The input for each channel is a square wave signal with an amplitude of 3°, and a frequency of 0.1 Hz
The control system block diagram can be equivalently transformed as follows:
The analysis is conducted for the yaw channel. The open-loop transfer function is obtained as:
where the open-loop root locus gain is
The root locus plot is shown below:
The gain values at the intersections of the root locus with the imaginary axis are 640 and 12564. When the open-loop root locus gain is within the range of 640 to 12564, the system remains stable
The Nyquist plot is shown below:
The pole-zero distribution of the open-loop system is as follows:
The poles of the open-loop system are
Based on the Nyquist plot and the pole-zero distribution of the open-loop system, it can be observed that the curve does not encircle the point
The Bode plot is shown below:
The gain margin is 0.29 and 5.75
Taking
Here, taking 5.75 as the gain margin (satisfying
The phase margin is 36.22° (satisfying
The handling quality standards are referenced from literature[2, 3]
In this project, the quadrotor is in the low-speed state and the response-type is Attitude Command
The evaluation criteria for small-amplitude (
The phase delay is
The Bode plot of the closed loop system is as follows:
From the Bode plot above, the bandwidth is
The phase delay
Based on the grading figure, the small-amplitude/high-frequency attitude change grade of the closed-loop system is Level II
In ADS-33, medium-amplitude/medium-low-frequency attitude changes are often used to evaluate the 'attitude quickness' of a quadrotor (whether can achieve moderate attitude changes rapidly). What kind of attitude changes can be classified as medium-amplitude/medium-low-frequency? The required attitude changes shall be made as rapidly as possible from one steady heading to another and without significant reversals in the sign of the cockpit control input relative to the trim position
The evaluation criteria involves three variables: the peak attitude change
Assuming a yaw attitude change of 30° , the yaw angle response and yaw rate response are shown below:
(The unit of the vertical axis in the figure is based on radians)
The peak attitude change is
The minimum attitude change is
The peak angular velocity is
Thus,
Based on the grading figure, the medium-amplitude/medium-low-frequency attitude change grade of the closed-loop system is Level I
Although the input signal used in the main simulaztion is small-amplitude/medium-low-frequency, good experimental results can still be obtained by changing the input signal to small-amplitude/high-frequency or medium-amplitude/medium-low-frequency
The pole distribution of the closed-loop system is shown below:
The five poles are:
The zeros of the closed-loop system are:
Since
The system response is primarily determined by the remaining real pole and the pair of complex conjugate poles
-
The real pole
$P_1 = (-2.2927, 0)$ , corresponding to a first-order system with a time constant$T = \frac{1}{w} = 0.436$ -
The complex conjugate poles are
$P_2 = ( -1.9687, 2.7082) \ \ \ P_3 = (-1.9687, -2.7082)$ , corresponding to an underdamped system with a natural frequency$w_{n} = 3.348$ and a damping ratio$\zeta = 0.588$ (According to ADS-33,$\zeta \ge 0.35$ satisfies good quality)
Under a step input:
-
Rise Time
-
First-order system rise time:
$t_{r1} = 2.2 T = 0.96 \ s$ -
Underdamped system rise time:
$t_{r2}=\frac{\pi-arccos\zeta}{\omega_d} = 0.81 \ s$ -
Actual system rise time:
$t_r = 0.84 \ s$
-
-
Peak Time
-
The first-order system does not have a peak time
-
Underdamped system peak time:
$t_{p2} = 1.16 \ s$ -
Actual system peak time:
$t_p = 1.64 \ s$
-
-
Overshoot
-
The first-order system does not exhibit overshoot
-
Underdamped system overshoot:
$\sigma_2 \%=\mathrm{e}^{-\pi \zeta / \sqrt{1-\zeta^2}} \times 100 \% = 10\%$ -
Actual system overshoot:
$\sigma \%= 1\%$ (generally required$1.5\% < \sigma \% < 25.4\%$ )
-
-
Settling Time
-
First-order system settling time:
$t_{s1} = 3 T =1.31 \ s$ -
Underdamped system settling time:
$t_{s2} = \frac{3.5}{\zeta \omega_n} = 1.78 \ s$ -
Actual system settling time:
$t_s = 1.28 \ s$
-
(2)Steady-State Performance Metrics
The open-loop system has three poles at the origin, making it a Type III system. Therefore, theoretically, the system can track acceleration signals without error
In the above reasereach, we do not consider the disturbance in the system
For example, focusing on the YAW control channel, the system can be expressed as:
Here,
Clearly, there is no disturbance term exists in the system
If there is a disturbance trem exists in the system, where should it be?
Based on the ADRC algorithm, we can extend the system as:
Here,
Theoretically, as long as the disturbance is bounded, the ESO can accurately estimate it
[1] Li Yi, Chen Zengqiang, Liu Zhongxin. Attitude control of a quad-rotor robot based on ADRC [J]. Journal of Harbin Institute of Technology, 2014, 46(3):5.DOI:10.11918/j.issn.0367-6234.2014.03.020. (in Chinese)
[2] Research Report on Flight Quality Standards for Multi-Rotor Aircraft. Shenzhen Institute of Standards and Technology, 2020. (in Chinese)
[3] ADS-33E-PRF. United States Army Aviation and Missile Command (AMCOM) Aviation Engineering Directorate, Redstone Arsenal, Alabama, 2000.






















