Download PDF
Research Article  |  Open Access  |  24 Jul 2023

GPI observer-based active disturbance rejection control for a morphing quadrotor

Views: 208 |  Downloads: 54 |  Cited:   0
Intell Robot 2023;3(3):274-87.
10.20517/ir.2023.18 |  © The Author(s) 2023.
Author Information
Article Notes
Cite This Article

Abstract

Quadrotors are widely used in transportation, aerial photography, agricultural protection, and other important fields. Nevertheless, quadrotors with a fixed structure will face great challenges when crossing through or entering narrow spaces for operations. To improve quadrotor crossing ability in different environments, a morphing quadrotor is designed in this paper, and four servo motors are added to independently change four arm rotation angles. Meanwhile, the dynamic model and dynamic control allocation matrix are established. In addition, considering that the internal dynamic variation caused by morphologic changes and external disturbances may compromise system stability, a control method based on the generalized proportional integral (GPI) observer is proposed to increase the system robustness, and the corresponding stability analysis is provided. Finally, simulation results demonstrate the effectiveness of the proposed GPI observer-based active disturbance rejection control method.

Keywords

Morphing quadrotor, dynamic control allocation, generalized proportional integral observer, active disturbance rejection control

1. INTRODUCTION

Unmanned aerial vehicles (UAVs) are widely used in various fields such as agriculture, transport, and rescue [1]. As UAVs, quadrotors have attracted wide attention due to their advantage of vertical take-off and landing. However, quadrotors with fixed structures cannot cope with complex environments and tasks. For example, fixed-structure quadrotors usually need complex planning trajectories to cross narrow spaces [2,3]. In addition, the planning methods may fail to find an available solution when the space is too narrow. In recent years, morphing-structure quadrotors have begun to attract attention for their ability to adapt to different tasks by changing their morphology [4]. For example, Bucki et al. design a passive morphing quadrotor, which uses passive joints to enable morphing [5]; passive joints allow the arms of quadrotors to be folded down; meanwhile, a trajectory planning method is proposed to cross gaps. Zhao et al. design a foldable quadrotor by using a scissor-like foldable mechanism [6]; aerodynamic effects are investigated to ensure the morphological change. In addition, Falanga et al. devise a foldable quadrotor with rotating arms around its airframe [7]; a linear quadratic regulator controller is proposed to perform a stable flight; they also investigate a geometry-aware compensation scheme to guarantee higher flight accuracy [8]. Furthermore, Kim et al. design a morphing quadrotor, which can change its morphology according to payload mass [9]; an optimization method is proposed to determine the optimal morphology, and an adaptive control method is developed to realize stable flight; With the continuous research on morphing aircraft, Sakaguchi et al. use parallel link modules to design a novel quadrotor that can morph around the 3-axis and design a control method without thrust loss at any deformed state [10]. For the near term, Wu et al. develop a connected retractable ring-shaped quadrotor that can grasp and drop objects through the expansion and contraction of the ring-shaped structure, and a nonlinear model predictive control strategy and a time-variant physical parameter mode are applied to achieve stable flight [11]. Based on the current research situation above, it can be concluded that the current research on morphing quadrotors mainly focuses on mechanical structure design and control allocation design. Relatively speaking, a few studies have considered the anti-disturbance ability of morphing quadrotors despite the fact that they are more sensitive to disturbances, not to speak of estimating the internal and external disturbances accurately and quickly.

To increase the robustness of the morphing quadrotor system, Zhang et al. propose an active disturbance rejection control (ADRC) method [12,13] with an extended state observer (ESO) to eliminate the lumped disturbances [14]. The generalized proportional integral (GPI) observer as a high-order ESO is successfully applied in a series of robotic systems in recent years[1519] for estimating the disturbances more accurately. Despite all this, few studies have considered its application to morphing quadrotors.

Quadrotors usually suffer from airflow, sensor noises, ground effects, and unmodeled internal disturbances [20]. In addition, morphological changes make morphing quadrotor control more difficult. The challenges can be listed as follows: 1) Deviation of the center of gravity (CoG) and changing of the moment of inertia (MoI) of quadrotors; 2) High system sensitivity to disturbances; 3) The time-varying torque generated by motors around axes.

To address the above issues, in this paper, we design a morphing quadrotor whose arms can be folded horizontally. Meanwhile, considering the variation of CoG and MoI, a dynamic model and control allocation strategy for this morphing quadrotor are established. On this basis, the main contributions can be summarized as follows:

(1) By analyzing the morphing process of the designed quadrotor, the changing CoG and MoI are calculated in real time with the assistance of the physical formulas and professional modeling software. The calculated CoG and MoI will be combined with quadrotor dynamics and a mathematical model which can be applied to all potential quadrotor morphologies.

(2) A dynamic control allocation strategy is established to make the outputs of actuators more precise by analyzing the distance from the motors to the CoG during the process of morphing and setting the stage for a stable flight of the morphing quadrotor.

(3) A time-varying physical parameter model is combined with a new GPI observer-based ADRC method to effectively improve the estimation speed of disturbances and the robustness of morphing quadrotor system for the first time.

The remainder of this paper is organized as follows: In section 2, a dynamic model of the morphing quadrotor is established. An ADRC method for the morphing quadrotor based on the GPI observer will be designed in section 3. In section 4, simulations are carried out to verify the effectiveness of the proposed method. In section 5, the paper is summarized.

2. MODELING

In this section, the dynamic model of the morphing quadrotor will be introduced. In detail, first, the dynamic equations will be established. The CoG and MoI for the morphing quadrotor will be acquired subsequently. In addition, a dynamic control allocation matrix will be introduced to obtain accurate revolutions per minute (RPM) of each motor.

2.1. Dynamic model

First, morphing quadrotor position state equations are obtained as follows:

$$ \begin{eqnarray} \left\{ \begin{aligned} {{\boldsymbol{^e\dot{p}}}}&=\ \boldsymbol{^e{v}}\\ {\boldsymbol{^e\dot{v}}}&=\ g\boldsymbol{e_3}-\frac{f}{m}R\boldsymbol{e_3}\\ \end{aligned} \right. \end{eqnarray} $$

where $$ {\boldsymbol{^e{p}}} $$ = [$$ x $$$$ y $$$$ z $$]$$ ^\top $$ and $$ {\boldsymbol{^e{v}}} $$ = [$$ v_x $$$$ v_y $$$$ v_z $$]$$ ^\top $$ denote the position vector and velocity vector in the world coordinate system, respectively, $$ g $$ denotes the gravitational acceleration, $$ {\boldsymbol{e_3}} $$ = [0 0 1]$$ ^\top $$, $$ f $$ represents the quadrotor lift force, $$ m $$ represents quadrotor mass, and $$ {{R}} $$ denotes the rotation matrix from the airframe coordinate system to the world coordinate system.

In addition, attitude models can be obtained as follows:

$$ \begin{eqnarray} \left\{ \begin{aligned} {{\boldsymbol{\dot{\Theta}}}} &=\ \boldsymbol{^b{\omega}}\\ {{{J}^b\boldsymbol{\dot{\omega}}}} &=\ -\boldsymbol{^b{\omega}} \times{{{J}{\boldsymbol{^b{\omega}}}}}+\boldsymbol{{\tau}}\\ \end{aligned} \right. \end{eqnarray} $$

where $$ {\boldsymbol{{{\Theta}}}} $$= [$$ \phi $$$$ \theta $$$$ \psi $$]$$ ^\top $$ and $$ {\boldsymbol{^b{\omega}}} $$= [$$ p $$$$ q $$$$ r $$]$$ ^\top $$ denote the Euler angle vector and angular velocity vector in the airframe coordinate system, respectively, $$ {{J}} $$ denotes the MoI matrix, and $$ {\boldsymbol{{\tau}}} $$ = [$$ \tau_x $$$$ \tau_y $$$$ \tau_z $$]$$ ^\top $$ represents the torque vector.

2.2. Center of gravity

As shown in Figure 1, a morphing quadrotor consists of three parts: a body, arms, and motors. Four arms are connected with the body through four servo motors, and the servo motors can drive the arms to rotate horizontally for achieving morphological change. As the arm rotates, the CoG of quadrotors in the airframe coordinate system will change, which can be obtained as follows:

GPI observer-based active disturbance rejection control for a morphing quadrotor

Figure 1. Morphing quadrotor system diagram.

$$ \begin{eqnarray} \left\{ \begin{aligned} {\boldsymbol{r_{motor_1}}}= \begin{bmatrix} {x_{motor_1}^{ini}} \\ {y_{motor_1}^{ini}}\\ {z_{motor_1}^{ini}} \\ \end{bmatrix}+ \begin{bmatrix} {l_1(\rm{cos}{\theta_1}-1)} \\ {-l_1\rm{sin}{\theta_1}} \\ 0\\ \end{bmatrix} \\ {\boldsymbol{r_{motor_2}}}= \begin{bmatrix} {x_{motor_2}^{ini}} \\ {y_{motor_2}^{ini}}\\ {z_{motor_2}^{ini}} \\ \end{bmatrix}+ \begin{bmatrix} {l_1\rm{sin}{\theta_2}} \\ {l_1(\rm{cos}{\theta_2}-1)} \\ 0\\ \end{bmatrix} \\ {\boldsymbol{r_{motor_3}}}= \begin{bmatrix} {x_{motor_3}^{ini}} \\ {y_{motor_3}^{ini}} \\ {z_{motor_3}^{ini}} \\ \end{bmatrix}+ \begin{bmatrix} {l_1(1-\rm{cos}{\theta_3})} \\ {l_1\rm{sin}{\theta_3}} \\ 0\\ \end{bmatrix} \\ {\boldsymbol{r_{motor_4}}}= \begin{bmatrix} {x_{motor_4}^{ini}} \\ {y_{motor_4}^{ini}} \\ {z_{motor_4}^{ini}} \\ \end{bmatrix}+ \begin{bmatrix} {-l_1\rm{sin}{\theta_4}} \\ {l_1(1-\rm{cos}{\theta_4})} \\ 0\\ \end{bmatrix} \end{aligned} \right. \end{eqnarray} $$

where $$ {\boldsymbol{r_{motor_i}}} $$ is the CoG vector of the $$ i $$-th motor in the airframe coordinate system, $$ i $$=$$ {1, 2, 3, 4} $$, $$ {\boldsymbol{r_{motor_i}^{ini}}} = [{x_{motor_i}^{ini}} \; {y_{motor_i}^{ini}}\; {z_{motor_i}^{ini}}]^\top $$ is the initial position vector of the $$ i $$-th motor, $$ l $$ denotes the arm length, and $$ {\theta_{i}} $$ represents the $$ i $$-th arm rotation angle.

In addition, when the arm rotates, the CoG of arms can be obtained as follows:

$$ \begin{eqnarray} \left\{ \begin{aligned} {\boldsymbol{r_{arm_1}}}= \begin{bmatrix} {x_{arm_1}^{ini}} \\ {y_{arm_1}^{ini}}\\ {z_{arm_1}^{ini}} \\ \end{bmatrix}+ \begin{bmatrix} {l_1(\rm{cos}{\theta_1}-1)} \\ {-l_1\rm{sin}{\theta_1}} \\ 0\\ \end{bmatrix} \\ {\boldsymbol{r_{arm_2}}}= \begin{bmatrix} {x_{arm_2}^{ini}} \\ {y_{arm_2}^{ini}}\\ {z_{arm_2}^{ini}} \\ \end{bmatrix}+ \begin{bmatrix} {l_1\rm{sin}{\theta_2}} \\ {l_1(\rm{cos}{\theta_2}-1)} \\ 0\\ \end{bmatrix} \\ {\boldsymbol{r_{arm_3}}}= \begin{bmatrix} {x_{arm_3}^{ini}} \\ {y_{arm_3}^{ini}} \\ {z_{arm_3}^{ini}} \\ \end{bmatrix}+ \begin{bmatrix} {l_1(1-\rm{cos}{\theta_3})} \\ {l_1\rm{sin}{\theta_3}} \\ 0\\ \end{bmatrix} \\ {\boldsymbol{r_{arm_4}}}= \begin{bmatrix} {x_{arm_4}^{ini}} \\ {y_{arm_4}^{ini}} \\ {z_{arm_4}^{ini}} \\ \end{bmatrix}+ \begin{bmatrix} {-l_1\rm{sin}{\theta_4}} \\ {l_1(1-\rm{cos}{\theta_4})} \\ 0\\ \end{bmatrix} \end{aligned} \right. \end{eqnarray} $$

where $$ {\boldsymbol{r_{arm_i}}} $$ is the CoG vector of the $$ i $$-th arm in the airframe coordinate system, $$ {\boldsymbol{r_{arm_i}^{ini}}} $$ = [$$ {x_{arm_i}^{ini}} $$$$ {y_{arm_i}^{ini}} $$$$ {z_{arm_i}^{ini}} $$]$$ ^\top $$ is the initial position vector of the $$ i $$-th arm, and $$ l_1 $$ denotes the length from the CoG of arms to a body.

Meanwhile, the CoG of the body will not change, which can be obtained as follows:

$$ \begin{eqnarray} {\boldsymbol{r_{body}}}= {\boldsymbol{r_{body}^{ini}}}= \begin{bmatrix} {x_{body}^{ini}} \\ {y_{body}^{ini}}\\ {z_{body}^{ini}} \\ \end{bmatrix} \end{eqnarray} $$

Finally, the CoG of the morphing quadrotor can be derived as follows:

$$ \begin{eqnarray} {\boldsymbol{{r}_{cog}}}=\frac{{m_{body}}\boldsymbol{r_{body}}+\sum\limits_{i=1}^{4}({m_{arm_i}}{\boldsymbol{r_{arm_i}}}+{m_{motor_i}}{\boldsymbol{r_{motor_i}}})}{{m_{body}}+\sum\limits_{i=1}^{4}({m_{arm_i}}+{m_{motor_i}})} \end{eqnarray} $$

where $$ {\boldsymbol{{r}_{cog}}} $$ is the CoG vector of the morphing quadrotor in the airframe coordinate system, $$ {m_{body}} $$, $$ {m_{arm_i}} $$, and $$ {m_{motor_i}} $$ denote body mass, mass of each arm, and mass of each motor, respectively.

All the initial position vectors mentioned previously can be obtained through SolidWorks.

2.3. Moment of inertia

Morphology change not only affects the CoG but also changes the MoI of the morphing quadrotor. The MoI of a morphing quadrotor can be obtained through CoGs calculated in the previous subsection.

In addition, it can be assured that the MoIs of the body and motors are hardly affected, which can be obtained as

$$ \begin{eqnarray} {{J_{body}}}= {{J_{body}^{ini}}}= \begin{bmatrix} {J_{body}^x} & 0 & 0 \\ 0 & {J_{body}^y} & 0 \\ 0 & 0 & {J_{body}^z} \\ \end{bmatrix} \end{eqnarray} $$

$$ \begin{eqnarray} {{J_{motor_i}}}= {{J_{motor_i}^{ini}}}= \begin{bmatrix} {J_{motor_i}^x} & 0 & 0 \\ 0 & {J_{motor_i}^y} & 0 \\ 0 & 0 & {J_{motor_i}^z} \\ \end{bmatrix} \end{eqnarray} $$

where $$ {J_{body}} $$ is the MoI matrix of the body relative to its CoG coordinate system, which is parallel to the body coordinate system of the morphing quadrotor, and $$ {J_{motor_i}} $$ is the MoI matrix of the $$ i $$-th motor relative to its CoG coordinate system, which is parallel to the body coordinate system of the morphing quadrotor. $$ {{J_{body}^{ini}}} $$ and $$ {{J_{motor_i}^{ini}}} $$ are the initial diagonal MoI matrices of the body and motors, respectively.

The MoI of arms can be obtained as follows:

$$ \begin{eqnarray} \begin{aligned} {{J_{arm_i}}} &=\ {R_z(\theta_i)} \begin{bmatrix} {J_{arm_i}^x} & 0 & 0 \\ 0 & {J_{arm_i}^y} & 0 \\ 0 & 0 & {J_{arm_i}^z} \\ \end{bmatrix} {R_z(\theta_i)^\top} \end{aligned} \end{eqnarray} $$

where $$ {J_{arm_i}} $$ is the MoI matrix of the $$ i $$-th arm relative to its own CoG coordinate system, which is parallel to the body coordinate system of the morphing quadrotor, $$ {R_z(\theta_i)} $$ is the rotation matrix with respect to $$ \theta_i $$, and $$ {{J_{arm_i}^{ini}}} $$ is the initial diagonal MoI matrices of the $$ i $$-th arms.

The MoI of a morphing quadrotor can be obtained through the relevant physical equations

$$ \begin{eqnarray} \begin{aligned} {J} &=\ J_{body}+m_{body}A_{body}^{cog} \\ &+\ \sum\limits_{i=1}^{4}(J_{arm_i}+m_{arm_i}A_{arm_i}^{cog}) \\ &+\ \sum\limits_{i=1}^{4}(J_{motor_i}+m_{motor_i}A_{motor_i}^{cog}) \end{aligned} \end{eqnarray} $$

where $$ J $$ is the MoI matrix of a morphing quadrotor, $$ A_{body}^{cog} $$, $$ A_{arm_i}^{cog} $$, and $$ A_{motor_i}^{cog} $$ denote length diagonal matrices.

All the initial MoI matrices mentioned above can be obtained through SolidWorks.

2.4. Control allocation

The control allocation matrix will change when the morphology changes. It is necessary to obtain the control allocation matrix in real time to convert control inputs into accurate RPM generated by actuators.

As shown in Figure 1, the lift force $$ {f} $$ generated by a single motor and propeller can be expressed as follows:

$$ \begin{eqnarray} f_i={c_t}{\omega_i}^2, i\in(1, 2, 3, 4) \end{eqnarray} $$

where $$ {c_t} $$ is the lift coefficient of a propeller, and $$ {\omega_i} $$ is the RPM of the $$ i $$-th motor.

In addition, the control allocation equations can be derived as follows:

$$ \begin{eqnarray} \begin{bmatrix} f \\ \tau_x \\ \tau_y \\ \tau_z \\ \end{bmatrix}= \begin{bmatrix} c_t & c_t & c_t & c_t \\ {c_t}{{L_1^{y}}} & -{c_t}{{{L_2^{y}}}} & -{c_t}{{{L_3^{y}}}} & {c_t}{{{L_4^{y}}}} \\ {c_t}{{{L_1^{x}}}} & {c_t}{{{L_2^{x}}}} & -{c_t}{{{L_3^{x}}}} & -{c_t}{{{L_4^{x}}}} \\ c_m & -c_m & c_m & -c_m \\ \end{bmatrix} \begin{bmatrix} {\omega_1^2} \\ {\omega_2^2} \\ {\omega_3^2} \\ {\omega_4^2} \\ \end{bmatrix} \end{eqnarray} $$

where $$ {f} $$=$$ \sum\limits_{i=1}^{4}{{f_i}} $$, $$ {\tau_x} $$, $$ {\tau_y} $$, and $$ {\tau_z} $$ represent the torques generated by motors and propellers with respect to the $$ x- $$axis, $$ y- $$axis, and $$ z- $$axis, respectively, $$ {L_i^{y}} $$ and $$ {L_i^{x}} $$ represent the $$ i $$-th motor distance to the $$ y- $$axis and $$ x- $$axis, respectively, and $$ {c_m} $$ is the torque coefficient.

Due to the arms rotating horizontally, $$ {L_i^{y}} $$ and $$ {L_i^{x}} $$ will change in real time, and the dynamic control allocation equations can be obtained as follows:

$$ \begin{eqnarray} \begin{bmatrix} \tau_x \\ \tau_y \\ \end{bmatrix}= c_t \begin{bmatrix} -{r_{motor_1}^{y}}+ {r_{cog}^{y}}& {r_{motor_1}^{x}}- {r_{cog}^{x}} \\ -{r_{motor_2}^{y}}+ {r_{cog}^{y}} &{r_{motor_2}^{x}}- {r_{cog}^{x}}\\ -{r_{motor_3}^{y}}+ {r_{cog}^{y}} & {r_{motor_3}^{x}}- {r_{cog}^{x}}\\ -{r_{motor_4}^{y}}+ {r_{cog}^{y}}& {r_{motor_4}^{x}}- {r_{cog}^{x}}\\ \end{bmatrix} ^\top \begin{bmatrix} {\omega_1^{2}} \\ {\omega_2^{2}} \\ {\omega_3^{2}} \\ {\omega_4^{2} } \\ \end{bmatrix} \end{eqnarray} $$

where $$ {r_{motor_i}^{y}} $$ represents the distance from the $$ i $$-th motor to the $$ y- $$axis, $$ {r_{motor_i}^{x}} $$ represents the distance from the $$ i $$-th motor to the $$ x- $$axis, and $$ {r_{cog}^{y}} $$ and $$ {r_{cog}^{x}} $$ are the distances from the CoG of the morphing quadrotor to the $$ y- $$axis and $$ x- $$axis, respectively.

Define the following equations

$$ \begin{eqnarray} \left\{ \begin{aligned} M & =\ \begin{bmatrix} c_t & c_t & c_t & c_t \\ {c_t}{{L_1^{y}}} & -{c_t}{{{L_2^{y}}}} & -{c_t}{{{L_3^{y}}}} & {c_t}{{{L_4^{y}}}} \\ {c_t}{{{L_1^{x}}}} & {c_t}{{{L_2^{x}}}} & -{c_t}{{{L_3^{x}}}} & -{c_t}{{{L_4^{x}}}} \\ c_m & -c_m & c_m & -c_m \\ \end{bmatrix}\\ {\boldsymbol{F}}&=\ \begin{bmatrix} f \\ \tau_x \\ \tau_y \\ \tau_z \\ \end{bmatrix} \end{aligned} \right. \end{eqnarray} $$

The RPM of a motor can be derived as follows:

$$ \begin{eqnarray} \boldsymbol{\Omega}=M^{-1}{\boldsymbol{F}} \end{eqnarray} $$

where $$ \boldsymbol{\Omega} $$=$$ [{\omega_1^2} , {\omega_2^2}, {\omega_3^2} , {\omega_4^2} ] $$.

3. CONTROLLER DEVELOPMENT

In this section, an ADRC method for the morphing quadrotor based on a GPI observer will be introduced. Firstly, a GPI observer will be proposed for accurate state estimation. Furthermore, a controller consisting of a GPI observer and a PD controller is proposed. Theoretical analysis demonstrates that the tracking error $$ {e} $$ will converge to a small neighborhood near the origin.

3.1. The GPI observer

According to the dynamic model of the morphing quadrotor, each state can be rewritten; for example, a rolling channel can be taken as

$$ \begin{eqnarray} \left\{ \begin{aligned} {{{\dot{x_1}}}}& =\ {x_2}\\ {{\dot{x_2}}}& =\ {f(x_1, x_2, a , d)}+{b}{u}\\ {y}& = \ {x_1}\\ \end{aligned} \right. \end{eqnarray} $$

where $$ x_1 $$ denotes $$ \phi $$, which represents the roll angle of the morphing quadrotor, $$ x_2 $$ represents $$ \dot{\phi} $$, which is the first derivative of $$ \phi $$, $$ {f(x_1, x_2, a , d)} $$ denotes the system lumped disturbance, $$ a $$ is unknown internal dynamics, $$ d $$ represents external disturbances, and $$ b $$ is an input parameter varied in real-time, which can be calculated through dynamic models.

On this basis, the GPI observer can be designed as follows[15,16]:

$$ \begin{eqnarray} \left\{ \begin{aligned} {\dot{\hat{x}}_1}& =\ {\hat{x}_2}+{\lambda_0({y}-\hat{x}_1)}\\ {\dot{\hat{x}}_2}& =\ {z_1}+{b}{u}+{\lambda_1({y}-\hat{x}_1)}\\ {\dot{{z}}}_{1}& =\ {z_2}+{\lambda_2({y}-\hat{x}_1)}\\ \vdots\\ {\dot{{z}}}_{n-1}& =\ {z_n}+{\lambda_{n}({y}-\hat{x}_1)}\\ {\dot{{z}}}_{n}& =\ {\lambda_{n+1}({y}-\hat{x}_1)}\\ \end{aligned} \right. \end{eqnarray} $$

where $$ \hat{x}_i\; $$($$ i $$=1, 2) represents the system state estimation, and $$ {z_i}\; $$($$ i=1, ..., n $$) represents the augmented state estimation.

Defining $$ \tilde{e} $$$$ = $$$$ y $$$$ - $$$$ \hat{x}_1 $$, according to Equations (16) and (17), Equation (18) can be transformed by taking the time derivatives of $$ \tilde{e} $$

$$ \begin{eqnarray} \left\{ \begin{aligned} {\tilde{e}}& = \ y-\hat{x}_1 = {x_1}-\hat{x}_1\\ {\tilde{e}^{(1)}} & =\ {{x_1}^{(1)}}-{{\hat{x}_1^{(1)}}}={{x_2}}-{{\hat{x}_2}}-{\lambda_0{\tilde{e}}}\\ {\tilde{e}^{(2)}} & =\ {{x_2}^{(1)}}-{{\hat{x}_2^{(1)}}}-{\lambda_0{\tilde{e}^{(1)}}}\\ & =\ ({{f(x_1, x_2, a , d)}-{z_1}})-{\lambda_1{\tilde{e}}}-{\lambda_0{\tilde{e}^{(1)}}}\\ {{\tilde{e}^{(3)}}} & =\ ({{f(x_1, x_2, a , d)^{(1)}}-{z_1}^{(1)}})-{\lambda_1{\tilde{e}^{(1)}}}-{\lambda_0{\tilde{e}^{(2)}}}\\ & =\ ({{f(x_1, x_2, a , d)^{(1)}}-{z_2}})-{\lambda_2{\tilde{e}}}-{\lambda_1{\tilde{e}^{(1)}}}-{\lambda_0{\tilde{e}^{(2)}}}\\ &\vdots\\ {{\tilde{e}^{(n+1)}}} &=\ ({{f(x_1, x_2, a , d)^{(n-1)}}-{z_{n}}})-{\lambda_{n}{\tilde{e}}}-{\lambda_{n-1}{\tilde{e}^{(1)}}}{\cdots}-{\lambda_0{\tilde{e}^{(n)}}}\\ {{\tilde{e}^{(n+2)}}} &=\ {f(x_1, x_2, a , d)^{(n)}}-{\lambda_{n+1}{\tilde{e}}}-{\lambda_{n}{\tilde{e}^{(1)}}}{\cdots}-{\lambda_0{\tilde{e}^{(n+1)}}} \end{aligned} \right. \end{eqnarray} $$

According to Equation (18), Equation (19) can be derived as follow:

$$ \begin{eqnarray} {{\tilde{e}^{(n+2)}}}+{\lambda_{n+1}{\tilde{e}}}+{\lambda_{n}{\tilde{e}^{(1)}}}{\cdots}+{\lambda_0{\tilde{e}^{(n+1)}}}= {f(x_1, x_2, a , d)^{(n)}} \end{eqnarray} $$

It can be assumed that $$ {f(x_1, x_2, a , d)^{(n)}} $$ is uniformly and absolutely bounded. By selecting appropriate coefficients $$ {\lambda_{i}} $$ of the characteristic polynomial related to $$ {\tilde{e}} $$, $$ \tilde{e} $$ will converge to a small neighborhood near the origin. Defining $$ \tilde{z}_1 $$$$ = $$$$ {f(x_1, x_2, a , d)} $$$$ - $$$$ {z_1} $$, a conclusion can be derived that $$ {\Vert{\tilde{z}_1}\Vert}\leq{\varepsilon} $$, where $$ {\varepsilon} $$ is bounded [19].

3.2. Controller

Each channel of the morphing quadrotor dynamic model can be written as follow:

$$ \begin{eqnarray} {{\ddot{x}}}& =\ {f(x_1, x_2, a , d)}+{b}{u} \end{eqnarray} $$

The controller is designed as

$$ \begin{eqnarray} {u}= \frac{1}{b}(-K_p{e}-K_d{\dot e}-z_1+{\ddot x_d}) \end{eqnarray} $$

where $$ e $$ = $$ x $$$$ - $$$$ x_d $$, $$ K_p $$ and $$ K_d $$ are the controller gains, $$ z_1 $$ represents the lumped disturbance estimation, and $$ {\ddot x_d} $$ is the second derivative of the desired tracking trajectory.

Defining $$ {\ddot{e}} $$$$ = $$$$ {\ddot{x}} $$$$ - $$$$ {\ddot{x_d}} $$, it can be derived based on Equations (20) and (21)

$$ \begin{eqnarray} \begin{aligned} {\ddot{e}} &=\ -K_p{e}-K_d{\dot e}+(f(x_1, x_2, a , d)-z_1)\\ &=\ -K_p{e}-K_d{\dot e}+ {\tilde{z}_1} \end{aligned} \end{eqnarray} $$

Furthermore, Equation (22) can be rewritten as

$$ \begin{eqnarray} \begin{aligned} {\ddot{e}}+K_d{\dot e}+K_p{e} &=\ {\tilde{z}_1} \end{aligned} \end{eqnarray} $$

It can be known that $$ {\Vert{\tilde{z}_1}\Vert}\leq{\varepsilon} $$, and $$ \varepsilon $$ is bounded. In order to make the tracking error converges to a small neighborhood near the origin, appropriate $$ {K_p} $$ and $$ {K_d} $$ will be selected [19].

4. SIMULATION RESULTS

In this section, comparative simulations for disturbance estimation of the four-order GPI observer and ESO will be carried out. Meanwhile, the proposed PD+GPI observer controller is compared with a PD controller to demonstrate the effectiveness of the anti-disturbance capability.

The parameters of the four-order GPI observer are selected as $$ \lambda_0 $$ = 6$$ \omega_0 $$, $$ \lambda_1 $$ = 15$$ \omega_0^2 $$, $$ \lambda_2 $$ = 13$$ \omega_0^3 $$, $$ \lambda_3 $$ = 15$$ \omega_0 $$, $$ \lambda_4 $$ = 6$$ \omega_0 $$, and $$ \lambda_5 $$ = $$ \omega_0 $$, where $$ \omega_0 $$ = 50.

The controller parameters are selected as $$ K_p $$ = 100, $$ K_d $$ = 20, $$ b $$ = $$ \frac{1}{J_{yy}} $$, where $$ J_{yy} $$ can be obtained from $$ J $$, and it is changing in real-time with respect to the rotation of arms.

Remark 1: The parameter $$ \omega_0 $$ determines the response speed of the observer, and when it decreases, the estimated speed of the observer will respond slower. The controller parameters $$ K_p $$ and $$ K_d $$ are the PD controller gains that determine the response speed and overshoot of states, and $$ K_p $$ and $$ K_d $$ can be adjusted by following the tuning process of PID controllers.

As illustrated in Figure 2 and Figure 3, the quadrotor arms are rotating between 7 s to 8 s. In detail, the 1-th arm rotates from 45 deg to 0 deg, the 2-th arm rotates from 45 deg to 90 deg, the 3-th arm rotates from 45 deg to 0 deg, and the 4-th arm rotates from 45 deg to 90 deg.

GPI observer-based active disturbance rejection control for a morphing quadrotor

Figure 2. Morphing quadrotor arms rotating diagram. On the right is the initial morphology, and on the left is the morphology after rotating.

GPI observer-based active disturbance rejection control for a morphing quadrotor

Figure 3. Rotation of the morphing quadrotor arms.

As illustrated in Figure 4 and Figure 5, it can be seen the response time and estimation of the GPI observer are faster and more accurate than those of ESO. The GPI observer can track rapidly even if there exists a step part in the external disturbances, and for internal disturbances, the estimated delay will also not exceed 0.2 s. A potential reason is that the GPI observer has more augmented states to ensure the accuracy of estimation.

GPI observer-based active disturbance rejection control for a morphing quadrotor

Figure 4. Simulation results of the internal dynamic change estimation. The actual internal dynamic change (black solid lines), the internal dynamic change estimated by a GPI observer (red solid lines), and the internal dynamic change estimated by an ESO (blue dashed lines).

GPI observer-based active disturbance rejection control for a morphing quadrotor

Figure 5. Simulation results of external disturbance estimation. The actual external disturbance (black solid lines), the external disturbance estimated by a GPI observer (red solid lines), and the external disturbance estimated by an ESO (blue dashed lines).

As shown in Figure 5, a square wave, as the external disturbances, is given to the $$ \phi $$ channel, which will affect the morphing quadrotor position of $$ y $$. Simulation results are shown in Figure 6. The quadrotor will oscillate near the desired position only with a PD controller. Compared with the PD controller, it can be seen that the PD+GPI observer controller can effectively suppress disturbances and achieve precise position control without oscillation within 3 s, even the quadrotor suffers from external disturbances and morphological changes at the same time between 7 s to 8 s.

GPI observer-based active disturbance rejection control for a morphing quadrotor

Figure 6. Simulation results of position control (Case 1). The desired position (black dashed lines), the position with PD+GPI observer controller (red solid lines), and the position with PD controller (blue dashed lines).

A sine wave signal $$ 8 $$$$ {\sin(2t)} $$ is given to $$ \theta $$ channel as external disturbances in Figure 7, which will affect the morphing quadrotor position of $$ x $$. From Figure 6 and Figure 7, it can be concluded that regardless of which channel is affected by disturbances, the proposed method can achieve satisfactory anti-disturbance and stable flight performances within 3 s, although the disturbance forms and desired operating points are different.

GPI observer-based active disturbance rejection control for a morphing quadrotor

Figure 7. Simulation results of position control (Case 2). The desired position (black dashed lines), the position with PD+GPI observer controller (red solid lines), and the position with PD controller (blue dashed lines).

To further validate the effectiveness of the proposed method, a sine wave signal $$ 8 $$$$ {\sin(2t)} $$ is given to the $$ \phi $$ channel and $$ \theta $$ channel at the same time as external disturbances in Figure 8, which will affect the morphing quadrotor positions of $$ x $$ and $$ y $$ and the desired operating positions are also changed. It is clearly shown in Figure 8 that the proposed method can quickly suppress disturbances and maintain system stability in the $$ \phi $$ channel and $$ \theta $$ channel simultaneously, which demonstrates that the proposed method has a wider application range.

GPI observer-based active disturbance rejection control for a morphing quadrotor

Figure 8. Simulation results of position control (Case 3). The desired position (black dashed lines), the position with PD+GPI observer controller (red solid lines), and the position with PD controller (blue dashed lines).

5. CONCLUSIONS

This paper presents a morphing quadrotor, which can cross through obstacles and narrow spaces by rotating arms. Meanwhile, a dynamic model is established by considering real-time changes of the CoG and MoI. According to arm rotation angles, a dynamic control allocation matrix is obtained. In addition, a four-order GPI observer is proposed to estimate the lumped disturbances. On this basis, an ADRC method is proposed for the morphing quadrotor position control. Finally, simulation results verify the good performance of a four-order GPI observer and the anti-disturbance ability of a proposed control method. In the future, the proposed method and other intelligent control methods will be applied to the actual system.

DECLARATIONS

Authors' contributions

Made substantial contributions to the conception and design of the study and performed simulation and interpretation: He C, Sun H, and Su Y;

Provided administrative, technical, and material support: Sun N, Wu Q

Availability of data and materials

Not applicable

Financial support and sponsorship

This work was supported by the National Natural Science Foundation of China under Grant 52205019, the China Postdoctoral Science Foundation under Grant 2021M701779, and the State Key Laboratory of Robotics and Systems (HIT) under Grant SKLRS-2023-KF-13.

Conflicts of interest

All authors declared that there are no conflicts of interest.

Ethical approval and consent to participate

Not applicable.

Consent for publication

Not applicable.

Copyright

© The Author(s) 2023.

REFERENCES

1. Hassanalian M, Abdelkefi A. Classifications, applications, and design challenges of drones: a review. Prog Aerosp Sci 2017;91:99-131.

2. Liu SK, Atanasov N, Mohta K, Kumar V. Search-based motion planning for quadrotors using linear quadratic minimum time control. In: IEEE/RSJ international conference on intelligent robots and systems (IROS); 2017. p. 2872-2879.

3. Zhou X, Wang ZP, Ye HK, Xu C, Gao F. Ego-planner: An ESDF-free gradient-based local planner for quadrotors. IEEE Robot and Autom Lett 2020;6:478-85.

4. Tothong T, Samawi J, Govalkar A, George K. Morphing quadcopters: a comparison between proposed and prominent foldable quadcopters. In: IEEE Annual Information Technology, Electronics and Mobile Communication Conference (IEMCON); 2020. p. 589-96.

5. Bucki N, Mueller MW. Design and control of a passively morphing quadcopter. In: IEEE International Conference on Robotics and Automation (ICRA); 2019. p. 9116-22.

6. Zhao N, Luo YD, Deng HB, Shen YT. The deformable quad-rotor: design, kinematics and dynamics characterization, and flight performance validation. In: IEEE/RSJ international conference on intelligent robots and systems (IROS); 2017. p. 2391-6.

7. Falanga D, Kleber K, Mintchev S, Floreano D, Scaramuzza D. The foldable drone: a morphing quadrotor that can squeeze and fly. IEEE Robot Autom Lett 2019;4:209-216.

8. Fabris A, Kleber K, Falanga D, Scaramuzza D. Geometry-aware compensation scheme for morphing drones. In: IEEE International Conference on Robotics and Automation (ICRA) 2021. p. 592-8.

9. Kim C, Lee H, Jeong M, Hyun M. A morphing quadrotor that can optimize morphology for transportation. In: IEEE/RSJ international conference on intelligent robots and systems (IROS); 2021. p. 9683-9.

10. Sakaguchi A, Yamamoto K. A novel quadrotor with a 3-Axis deformable frame using tilting motions of parallel link modules without thrust loss. IEEE Robot Autom Lett 2022;7:9581-8.

11. Wu YZ, Yang F, Wang Z, Wang KW, Cao Y, et al. Ring-rotor: a novel retractable ring-shaped quadrotor with aerial grasping and transportation capability. IEEE Robot Autom Lett 2023;8:2126-33.

12. Zhang Z, Yang Z, Duan YX, Liao LW, Lu KW, et al. Active disturbance rejection control method for actively deformable quadrotor. Control Theory and Applications 2021;38:444-56.

13. Chen ZQ, Liu JJ, Sun MW. Overview of a novel control method: active disturbance rejection control technology and its practical applications. CAAI Trans Intell Syst 2018;13:865-877.

14. Han JQ. From PID to active disturbance rejection control. IEEE Trans Ind Electron 2009;56:900-6.

15. Lu YH, Han LY, Liu JH, Li SH. Model predictive tracking control for rigid manipulators with disturbance rejection. In: Chinese Control Conference (CCC); 2022. p. 9683-9.

16. Wang JX, Rong JY, Yang J. Adaptive fixed-time position precision control for magnetic levitation systems. IEEE Trans Automat Sci Eng 2023;20:458-69.

17. Ren C, Ma SG. Generalized proportional integral observer based control of an omnidirectional mobile robot. Mechatronics 2015;26:36-44.

18. Xia YQ, Lin M, Zhang JH, Fu MY, Li CM, et al. Trajectory planning and tracking for four‐wheel steering vehicle based on differential flatness and active disturbance rejection controller. Int J Adapt Control Signal Process 2021;35:2214-44.

19. Liu GD, Sun N, Yang T, Fang YC. Reinforcement learning-based prescribed performance motion control of pneumatic muscle actuated robotic arms with measurement noises. IEEE Trans Syst Man Cybern: Syst 2023;53:1801-12.

20. Xian B, Li JQ, Gu X. Ground effects compensation for an unmanned aerial vehicle via nonlinear disturbance observer. Journal of Jilin University (Engineering and Technology Edition) 2022;52:1926-1933.

Cite This Article

Export citation file: BibTeX | RIS

OAE Style

He C, Sun H, Wu Q, Su Y, Sun N. GPI observer-based active disturbance rejection control for a morphing quadrotor. Intell Robot 2023;3(3):274-87. http://dx.doi.org/10.20517/ir.2023.18

AMA Style

He C, Sun H, Wu Q, Su Y, Sun N. GPI observer-based active disturbance rejection control for a morphing quadrotor. Intelligence & Robotics. 2023; 3(3): 274-87. http://dx.doi.org/10.20517/ir.2023.18

Chicago/Turabian Style

He, Chunhui, Haosheng Sun, Qingxiang Wu, Yuanhao Su, Ning Sun. 2023. "GPI observer-based active disturbance rejection control for a morphing quadrotor" Intelligence & Robotics. 3, no.3: 274-87. http://dx.doi.org/10.20517/ir.2023.18

ACS Style

He, C.; Sun H.; Wu Q.; Su Y.; Sun N. GPI observer-based active disturbance rejection control for a morphing quadrotor. Intell. Robot. 2023, 3, 274-87. http://dx.doi.org/10.20517/ir.2023.18

About This Article

© The Author(s) 2023. Open Access This article is licensed under a Creative Commons Attribution 4.0 International License (https://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, sharing, adaptation, distribution and reproduction in any medium or format, for any purpose, even commercially, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Data & Comments

Data

Views
208
Downloads
54
Citations
0
Comments
0
0

Comments

Comments must be written in English. Spam, offensive content, impersonation, and private information will not be permitted. If any comment is reported and identified as inappropriate content by OAE staff, the comment will be removed without notice. If you have any queries or need any help, please contact us at support@oaepublish.com.

0
Download PDF
Cite This Article 10 clicks
Like This Article 0 likes
Share This Article
Scan the QR code for reading!
See Updates
Contents
Figures
Related
Intelligence & Robotics
ISSN 2770-3541 (Online)
Follow Us

Portico

All published articles are preserved here permanently:

https://www.portico.org/publishers/oae/

Portico

All published articles are preserved here permanently:

https://www.portico.org/publishers/oae/