In recent years, multirotor drones have become indispensable tools across various fields due to their vertical takeoff and landing capabilities. However, the landing phase poses significant challenges, especially on uneven terrain, where hard landings can lead to structural damage or mission failure. To address this, we propose an adaptive landing system featuring a four-leg mechanism for multirotor drones. This system enhances landing safety by dynamically adjusting to ground conditions, mitigating impact forces, and preventing instability. In this article, we present the kinematic and dynamic modeling of the system, design an adaptive controller using a linear extended state observer (LESO) for disturbance estimation, and evaluate performance through simulations under diverse landing scenarios. The results demonstrate the effectiveness of the proposed approach in improving the dynamic performance and reliability of multirotor drone landings.
The design of the adaptive landing gear centers on a four-leg configuration, symmetrically attached to the multirotor drone’s body. Each leg consists of a thigh, a support leg, and a cushion pad, with servomotors integrated at the thigh and support leg joints to control two degrees of freedom per leg. This structure allows the multirotor drone to adapt to slopes and irregularities during landing. The cushion pads, made of hollow rubber, include embedded force sensors to measure real-time contact forces, enabling precise control. Key parameters of the system are summarized in Table 1, which includes masses of components and leg dimensions. For instance, the thigh length $L_1$ and support leg length $L_2$ are critical for kinematic calculations. The overall system aims to distribute loads evenly and reduce acceleration peaks during impact, ensuring the multirotor drone maintains stability even on rough surfaces.

Kinematic analysis of the landing gear is essential for understanding leg movements and interactions with the ground. Each leg is modeled as a two-link mechanism, with joint angles $\theta_{i1}$ and $\theta_{i2}$ for the thigh and support leg, respectively, where $i = 1, \ldots, 4$ denotes the leg index. The forward kinematics for a leg in the body-fixed frame $\{B\}$ are given by:
$$ x_{LiB} = L_{i0} $$
$$ y_{LiB} = L_{i1} \cos \theta_{i1} + L_{i2} \cos(\theta_{i1} + \theta_{i2}) $$
$$ z_{LiB} = L_{i1} \sin \theta_{i1} + L_{i2} \sin(\theta_{i1} + \theta_{i2}) $$
Here, $L_{i0}$, $L_{i1}$, and $L_{i2}$ represent the distances from the body center to the thigh joint, thigh length, and support leg length, respectively. The inverse kinematics allow computation of joint angles from the leg-end positions, which are derived using geometric relationships. For example, $\theta_{i1}$ and $\theta_{i2}$ can be expressed as:
$$ \theta_{i1} = \arccos \left( \frac{y_{LiE}^2 + z_{LiE}^2 + L_{i1}^2 – L_{i2}^2}{2 L_{i1} \sqrt{y_{LiE}^2 + z_{LiE}^2} \cos \theta_{iE} \right) + \arctan \left( \frac{z_{LiE}}{y_{LiE}} \right) $$
$$ \theta_{i2} = \arccos \left( \frac{y_{LiE}^2 + z_{LiE}^2 + L_{i2}^2 – L_{i1}^2}{2 L_{i2} \sqrt{y_{LiE}^2 + z_{LiE}^2} \cos \theta_{iE} \right) + \arctan \left( \frac{z_{LiE}}{y_{LiE}} \right) – \theta_{i1} $$
where $\theta_{iE}$ is the angle defined by the leg-end coordinates. The Jacobian matrix $J(\theta_{i1}, \theta_{i2})$ relates joint velocities to leg-end velocities and is crucial for force transformations. It is computed as:
$$ J(\theta_{i1}, \theta_{i2}) = \begin{bmatrix}
– L_{i1} \sin \theta_{i1} – L_{i2} \sin(\theta_{i1} + \theta_{i2}) & – L_{i2} \sin(\theta_{i1} + \theta_{i2}) \\
L_{i1} \cos \theta_{i1} + L_{i2} \cos(\theta_{i1} + \theta_{i2}) & L_{i2} \cos(\theta_{i1} + \theta_{i2})
\end{bmatrix} $$
This kinematic framework enables real-time control of the multirotor drone’s legs during landing, adapting to terrain variations.
| Parameter | Value | Parameter | Value |
|---|---|---|---|
| Mass of cushion pad bottom $m_{pi}$ | 0.03 kg | Distance $L_0$ | 0.15 m |
| Mass of cushion pad top $m_{di}$ | 0.03 kg | Thigh length $L_1$ | 0.12 m |
| Mass of support leg $m_{si}$ | 0.12 kg | Support leg length $L_2$ | 0.05 m |
| Mass of thigh $m_{ti}$ | 0.18 kg | Cushion pad length $L_p$ | 0.03 m |
| Mass of multirotor drone body $m_m$ | 3.06 kg | – | – |
Dynamic modeling of the multirotor drone system incorporates the landing gear’s influence on overall stability. The equations of motion are derived in the inertial frame $\{I\}$ and body-fixed frame $\{B\}$. The position vector is $\mathbf{p} = [x, y, z]^T$, and the attitude angles are $\boldsymbol{\Lambda} = [\phi, \theta, \psi]^T$. The rotation matrix $\mathbf{R}_{\boldsymbol{\Lambda}}$ from $\{B\}$ to $\{I\}$ is:
$$ \mathbf{R}_{\boldsymbol{\Lambda}} = \begin{bmatrix}
c\theta c\psi & s\phi s\theta c\psi – c\phi s\psi & c\phi s\theta c\psi + s\phi s\psi \\
c\theta s\psi & s\phi s\theta s\psi + c\phi c\psi & c\phi s\theta s\psi – s\phi c\psi \\
-s\theta & s\phi c\theta & c\phi c\theta
\end{bmatrix} $$
where $c$ and $s$ denote cosine and sine functions, respectively. The dynamics of the multirotor drone are described by:
$$ m \dot{\mathbf{v}} = \mathbf{R}_{\boldsymbol{\Lambda}} \mathbf{F}_r + \mathbf{F}_g + \mathbf{R}_{\boldsymbol{\Lambda}} \mathbf{F}_L $$
$$ \mathbf{I} \dot{\boldsymbol{\Omega}}_B + \boldsymbol{\Omega}_B \times \mathbf{I} \boldsymbol{\Omega}_B = \mathbf{M}_r + \mathbf{M}_L $$
$$ \dot{\boldsymbol{\Lambda}} = \mathbf{R}_r \boldsymbol{\Omega}_B $$
Here, $\mathbf{v}$ is the velocity vector, $\boldsymbol{\Omega}_B = [p, q, r]^T$ is the angular velocity, $m$ is the total mass, $\mathbf{I} = \text{diag}(I_x, I_y, I_z)$ is the inertia matrix, $\mathbf{F}_g = [0, 0, mg]^T$ is the gravity force, and $\mathbf{F}_r$ and $\mathbf{M}_r$ are the aerodynamic force and moment. The landing forces and moments $\mathbf{F}_L$ and $\mathbf{M}_L$ are derived from ground interactions and transformed via the Jacobian transpose: $[\mathbf{F}_L, \mathbf{M}_L]^T = \mathbf{J}^T(\theta_1, \theta_2) [\mathbf{F}_{LE}, \mathbf{M}_{LE}]^T$. During landing, the multirotor drone often hovers, so small angle approximations simplify the model. The translational and rotational dynamics become:
$$ \ddot{x} = -\frac{u_1}{m} (\cos \phi \sin \theta \cos \psi + \sin \phi \sin \psi) + \frac{F_{LX}}{m} $$
$$ \ddot{y} = -\frac{u_1}{m} (\cos \phi \sin \theta \sin \psi – \sin \phi \cos \psi) + \frac{F_{LY}}{m} $$
$$ \ddot{z} = g – \frac{u_1}{m} \cos \phi \cos \theta + \frac{F_{LZ}}{m} $$
$$ \ddot{\phi} = \frac{(I_y – I_z)}{I_x} \dot{\theta} \dot{\psi} + \frac{l}{I_x} u_2 + \frac{M_{LX}}{I_x} $$
$$ \ddot{\theta} = \frac{(I_z – I_x)}{I_y} \dot{\phi} \dot{\psi} + \frac{l}{I_y} u_3 + \frac{M_{LY}}{I_y} $$
$$ \ddot{\psi} = \frac{(I_x – I_y)}{I_z} \dot{\phi} \dot{\theta} + \frac{1}{I_z} u_4 + \frac{M_{LZ}}{I_z} $$
where $u_1$ is the thrust input, and $u_2$, $u_3$, $u_4$ are the torque inputs. The control inputs are defined as $\mathbf{n} = \mathbf{R}_{\boldsymbol{\Lambda}} \mathbf{F}_r + \mathbf{F}_g$ and $\mathbf{m} = [m_x, m_y, m_z]^T$, leading to:
$$ u_2 = -\frac{(I_y – I_z)}{l} \dot{\theta} \dot{\psi} + \frac{m_x I_x}{l} $$
$$ u_3 = -\frac{(I_z – I_x)}{l} \dot{\phi} \dot{\psi} + \frac{m_y I_y}{l} $$
$$ u_4 = -(I_x – I_y) \dot{\phi} \dot{\theta} + m_z I_z $$
This model forms the basis for controller design, addressing system uncertainties and disturbances.
The adaptive controller leverages a linear extended state observer (LESO) to estimate and compensate for disturbances, enhancing the multirotor drone’s landing performance. The system is represented in state-space form as:
$$ \dot{X}_1 = X_2 $$
$$ \dot{X}_2 = \mu + \varepsilon $$
where $X_1$ is the state vector, $\mu$ is the control input, and $\varepsilon$ is the disturbance. Assuming $\varepsilon$ is differentiable and bounded, with $h = \dot{\varepsilon}$ and $|h| \leq M$, the extended state equations are:
$$ \dot{X}_1 = X_2 $$
$$ \dot{X}_2 = \mu + X_3 $$
$$ \dot{X}_3 = h $$
The LESO is designed as:
$$ \dot{\hat{X}}_1 = \hat{X}_2 + \beta_1 (X_1 – \hat{X}_1) $$
$$ \dot{\hat{X}}_2 = \mu + \hat{X}_3 + \beta_2 (X_1 – \hat{X}_1) $$
$$ \dot{\hat{X}}_3 = \beta_3 (X_1 – \hat{X}_1) $$
with observer gains $\beta_1 = 3\omega_0$, $\beta_2 = 3\omega_0^2$, $\beta_3 = \omega_0^3$, where $\omega_0$ is the bandwidth. The estimation error $\tilde{\mathbf{E}} = [\tilde{e}_1, \tilde{e}_2, \tilde{e}_3]^T$ satisfies $\dot{\tilde{\mathbf{E}}} = \mathbf{A} \tilde{\mathbf{E}} + \mathbf{B} h$, where $\mathbf{A}$ is a Hurwitz matrix. Using a Lyapunov function $V = \tilde{\mathbf{E}}^T \mathbf{P} \tilde{\mathbf{E}}$, with $\mathbf{P}$ positive definite, the error is bounded. The adaptive control law is:
$$ \mu = k_1 (r_d – \hat{X}_1) + k_2 (\dot{r}_d – \hat{X}_2) + \ddot{r}_d – \hat{X}_3 $$
where $r_d$, $\dot{r}_d$, and $\ddot{r}_d$ are the desired trajectory components. The tracking error $\mathbf{E} = [e_1, e_2]^T$ follows $\dot{\mathbf{E}} = \mathbf{A}_e \mathbf{E} + \mathbf{B}_e \tilde{\mathbf{E}}$, ensuring stability under bounded disturbances. This controller enables the multirotor drone to adjust leg positions in real-time, minimizing impact forces during landing.
Simulations were conducted to evaluate the adaptive landing system for multirotor drones under various scenarios, including different numbers of legs in contact with the ground and initial velocities. The multirotor drone was initialized with a descent velocity of 0.2 m/s and an attack angle of 10°, landing on a 10° sloped surface. The servomotors controlled the thigh and support leg joints to adapt to ground conditions. Cases were defined based on leg-ground contact: Case A (no contact, $\mathbf{F}_L = 0$, $\mathbf{M}_L = 0$), Case B (contact without sliding, $\mathbf{F}_L \neq 0$, $\mathbf{M}_L \neq 0$, $\mathbf{v} = 0$), and Case C (contact with sliding, $\mathbf{F}_L \neq 0$, $\mathbf{M}_L \neq 0$, $\mathbf{v} \neq 0$). The landing process was simulated over 2 seconds, with joint angle responses and acceleration profiles analyzed.
For instance, when comparing landings with one to four legs in contact, the thigh joint angle $\theta_{i1}$ and support leg joint angle $\theta_{i2}$ showed distinct behaviors. In single-leg and two-leg contact cases, joint angles changed minimally before ground contact, but upon impact, they adjusted rapidly to absorb forces. In three-leg and four-leg contact cases, joint angles were pre-adjusted during descent to align with the slope, reducing post-landing variations. This demonstrates the system’s ability to optimize landing posture for the multirotor drone. Acceleration responses along the z-axis were also examined; higher initial velocities led to increased peak accelerations. For example, at an initial velocity of 2 m/s, the maximum acceleration exceeded 50 m/s², which could risk structural integrity. To ensure safety for the multirotor drone, we recommend limiting initial landing velocities to below 2 m/s, as the designed system can handle accelerations up to 45 m/s².
| Parameter | Value | Description |
|---|---|---|
| Initial velocity | 0.2–2.5 m/s | Descent speed range |
| Slope angle | 10° | Ground inclination |
| Landing time | 2 s | Simulation duration |
| Maximum acceleration | 45 m/s² | Safety threshold |
| Controller bandwidth $\omega_0$ | 10 rad/s | LESO parameter |
The simulation results highlight the effectiveness of the adaptive landing system in enhancing the multirotor drone’s performance. Key findings include: (1) The four-leg mechanism significantly reduces dynamic loads during impact, thanks to real-time joint adjustments. (2) Controlling the legs to ensure simultaneous contact with the ground improves stability and minimizes tipping risks. (3) Velocity management is crucial; keeping initial velocities low prevents excessive accelerations. These insights underscore the importance of integrated mechanical and control design for multirotor drones operating in unstructured environments.
In conclusion, the proposed adaptive landing system with a four-leg mechanism offers a robust solution for safe multirotor drone landings on uneven terrain. Through detailed kinematic and dynamic modeling, along with an adaptive control strategy using LESO, the system compensates for disturbances and adapts to varying ground conditions. Simulations validate its dynamic performance, showing reduced impact forces and improved stability. Future work could focus on experimental validation and optimization for different multirotor drone configurations, further advancing the reliability of autonomous landing systems.
