Unmanned aerial systems, particularly quad-rotor drones, have emerged as pivotal tools in military and civilian applications due to their adaptability, wide operational range, and resilience in extreme environments. Among these applications, the integration of lighting UAVs for ground vehicle tracking and illumination presents a novel challenge, especially in scenarios such as nighttime operations in rugged terrains, forests, or sharp curves where traditional lighting systems fall short. This paper explores a model predictive control (MPC) framework to address the tracking and illumination problem, where a lighting drone must follow a ground vehicle while directing a spotlight to illuminate a specific area ahead of the vehicle. By incorporating physical constraints related to illumination quality and drone dynamics into the optimization problem, the proposed method ensures stable tracking and optimal lighting performance. Simulation results validate the efficacy of the approach, demonstrating superior performance in energy efficiency and illumination consistency compared to unconstrained control strategies.
The core of this work lies in leveraging MPC to handle the nonlinear dynamics of a quad-rotor lighting UAV, linearized for controller design, while enforcing constraints on state and control inputs. The illumination task requires the drone to maintain a specific pose relative to the ground vehicle, ensuring that the lighted area remains within desired bounds based on vehicle speed and environmental factors. Key parameters, such as the drone’s altitude, tilt angles, and light intensity, are optimized to meet illumination standards, such as minimum illuminance levels. Through this approach, the lighting drone achieves a balance between rapid tracking and smooth illumination, critical for safety in dynamic environments. The following sections detail the drone’s dynamic model, state-space formulation, MPC design, and simulation analysis, highlighting the role of constraints in enhancing real-world applicability.
Dynamic Modeling of a Quad-Rotor Lighting UAV
A quad-rotor lighting UAV consists of a rigid frame equipped with four rotors, a lighting module (e.g., a spotlight), and control systems. The dynamic model is derived under the assumption of a rigid body with a centered mass, ignoring external factors like Earth’s curvature. The total lift and torques generated by the rotors are expressed as:
$$ \begin{bmatrix} T \\ \tau_x \\ \tau_y \\ \tau_z \end{bmatrix} = \begin{bmatrix} b(\omega_1^2 + \omega_2^2 + \omega_3^2 + \omega_4^2) \\ bl(-\omega_2^2 + \omega_4^2) \\ bl(-\omega_1^2 + \omega_3^2) \\ d(-\omega_1^2 + \omega_2^2 – \omega_3^2 + \omega_4^2) \end{bmatrix} $$
where \( T \) is the total thrust, \( \tau_x, \tau_y, \tau_z \) are the torques along the body axes, \( b \) is the thrust coefficient, \( d \) is the drag coefficient, \( \omega_i \) denotes the angular velocity of rotor \( i \), and \( l \) is the arm length of the drone. The Earth-fixed frame \( O_e-x_ey_ez_e \) and body-fixed frame \( O_b-x_by_bz_b \) are used to describe the drone’s position and orientation, with rotation matrix \( R \in SO(3) \) representing the transformation between frames:
$$ R = R(\phi) R(\theta) R(\psi) = \begin{bmatrix} C_\theta C_\psi & S_\theta S_\phi C_\psi – C_\phi S_\psi & S_\theta C_\phi C_\psi + S_\phi S_\psi \\ C_\theta S_\psi & S_\theta S_\phi S_\psi + C_\phi C_\psi & S_\theta C_\phi S_\psi – S_\phi C_\psi \\ -S_\theta & C_\theta S_\phi & C_\theta C_\phi \end{bmatrix} $$
Here, \( \phi, \theta, \psi \) are the roll, pitch, and yaw angles, respectively, and \( C_\cdot \), \( S_\cdot \) denote cosine and sine functions. The Newton-Euler equations yield the force and torque equations:
$$ \vec{F} = m(\dot{\vec{v}} + \vec{\Omega} \times \vec{v}), \quad \vec{M} = J \cdot \dot{\vec{\Omega}} + \vec{\Omega} \times J \cdot \vec{\Omega} $$
where \( m \) is the mass, \( J \) is the inertia matrix, \( \vec{v} \) is the linear velocity, and \( \vec{\Omega} \) is the angular velocity. The linear motion in the inertial frame is governed by:
$$ \begin{bmatrix} F_e \\ M_b \end{bmatrix} = \begin{bmatrix} 0 \\ w_b \times J w_b \end{bmatrix} + \begin{bmatrix} mI_{3\times3} & 0 \\ 0 & I_{3\times3} \end{bmatrix} \begin{bmatrix} \dot{v}_e \\ \dot{w}_b \end{bmatrix} $$
The total force \( F_b \) includes gravity \( F_G = [0, 0, mg]^T \), rotor thrust \( F_T = [0, 0, -T]^T \), and aerodynamic drag \( F_D = K_d \zeta \), with \( \zeta = [x, y, z]^T \) being the position vector and \( K_d = \text{diag}(k_{dx}, k_{dy}, k_{dz}) \) the drag coefficient matrix. Thus, the linear acceleration equations are:
$$ \begin{aligned} \ddot{x} &= \frac{1}{m} \left[ -(S_\theta C_\phi C_\psi + S_\phi S_\psi)T – k_{dx} \dot{x} \right] \\ \ddot{y} &= \frac{1}{m} \left[ -(S_\theta C_\phi S_\psi – S_\phi C_\psi)T – k_{dy} \dot{y} \right] \\ \ddot{z} &= \frac{1}{m} \left[ -(C_\theta C_\phi)T – k_{dz} \dot{z} \right] + g \end{aligned} $$
For angular motion, the moments include thrust-induced torques and gyroscopic effects. Assuming a symmetric inertia matrix \( J = \text{diag}(I_{xx}, I_{yy}, I_{zz}) \), the angular acceleration equations simplify to:
$$ \begin{aligned} \dot{p} &= \frac{1}{I_{xx}} \left[ (I_{yy} – I_{zz}) q r – J_r q \omega_G + \tau_x \right] \\ \dot{q} &= \frac{1}{I_{yy}} \left[ (I_{zz} – I_{xx}) p r + J_r p \omega_G + \tau_y \right] \\ \dot{r} &= \frac{1}{I_{zz}} \left[ (I_{xx} – I_{yy}) p q + \tau_z \right] \end{aligned} $$
where \( p, q, r \) are the angular rates, \( J_r \) is the rotor inertia, and \( \omega_G = -\omega_1 + \omega_2 – \omega_3 + \omega_4 \). Neglecting second-order terms and small angle rates, the dynamics are linearized, with control inputs defined as \( u = [u_1, u_2, u_3, u_4]^T = [T, \tau_x, \tau_y, \tau_z]^T \). The simplified model becomes:
$$ \begin{aligned} \ddot{x} &= \frac{1}{m} \left[ -(S_\theta C_\phi C_\psi + S_\phi S_\psi) u_1 – k_{dx} \dot{x} \right] \\ \ddot{y} &= \frac{1}{m} \left[ -(S_\theta C_\phi S_\psi – S_\phi C_\psi) u_1 – k_{dy} \dot{y} \right] \\ \ddot{z} &= \frac{1}{m} \left[ -(C_\theta C_\phi) u_1 – k_{dz} \dot{z} \right] + g \\ \ddot{\phi} &= \frac{1}{I_{xx}} u_2, \quad \ddot{\theta} = \frac{1}{I_{yy}} u_3, \quad \ddot{\psi} = \frac{1}{I_{zz}} u_4 \end{aligned} $$
This model forms the basis for the state-space representation used in MPC design, enabling real-time control of the lighting UAV.
State-Space Formulation for Control Design
To facilitate controller synthesis, the system is expressed in state-space form. The state vector \( \chi \) comprises position, velocity, and attitude variables:
$$ \chi = [x, \dot{x}, y, \dot{y}, z, \dot{z}, \phi, \dot{\phi}, \theta, \dot{\theta}, \psi, \dot{\psi}]^T = [x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_{10}, x_{11}, x_{12}]^T $$
The state-space equations are:
$$ \dot{\chi} = A \chi + B u, \quad y = C \chi $$
where \( A \) is a block-diagonal matrix:
$$ A = \text{diag}(A_x, A_y, A_z, A_e, A_e, A_e) $$
with submatrices:
$$ A_x = \begin{bmatrix} 0 & 1 \\ 0 & -\frac{k_{dx}}{m} \end{bmatrix}, \quad A_y = \begin{bmatrix} 0 & 1 \\ 0 & -\frac{k_{dy}}{m} \end{bmatrix}, \quad A_z = \begin{bmatrix} 0 & 1 \\ 0 & -\frac{k_{dz}}{m} \end{bmatrix}, \quad A_e = \begin{bmatrix} 0 & 1 \\ 0 & 0 \end{bmatrix} $$
The input matrix \( B \) is structured as:
$$ B = \begin{bmatrix} B_x \\ B_y \\ B_z \\ B_\phi \\ B_\theta \\ B_\psi \end{bmatrix}, \quad \text{where} \quad B_x = \begin{bmatrix} 0 \\ -\frac{\theta}{m} \end{bmatrix}, \quad B_y = \begin{bmatrix} 0 \\ \frac{\phi}{m} \end{bmatrix}, \quad B_z = \begin{bmatrix} 0 \\ -\frac{1}{m} \end{bmatrix}, \quad B_\phi = \begin{bmatrix} 0 \\ \frac{1}{I_{xx}} \end{bmatrix}, \quad B_\theta = \begin{bmatrix} 0 \\ \frac{1}{I_{yy}} \end{bmatrix}, \quad B_\psi = \begin{bmatrix} 0 \\ \frac{1}{I_{zz}} \end{bmatrix} $$
The output matrix \( C \) selects the position states for tracking:
$$ C = \begin{bmatrix} 1 & 0 & 0 & 0 & 0 & 0 & \cdots & 0 \\ 0 & 0 & 1 & 0 & 0 & 0 & \cdots & 0 \\ 0 & 0 & 0 & 0 & 1 & 0 & \cdots & 0 \end{bmatrix} $$
This linearized model allows the application of MPC to manage the lighting UAV’s trajectory while adhering to illumination constraints.
Tracking and Illumination Problem Formulation
The primary objective is for the lighting drone to track a ground vehicle while illuminating a specific area ahead of it, typically at a distance \( l_d \). The drone’s spotlight, fixed to the body, has a fixed beam angle \( \alpha \), and the illumination must satisfy minimum illuminance \( E_0 \) with light intensity \( I_0 \). Let \( (x_c, y_c, 0) \) be the vehicle’s position and \( (x_b, y_b, z_b) \) the drone’s position. The illumination constraints are derived from geometric and photometric considerations.

First, the drone must remain within a horizontal bound \( l_x \) from the vehicle: \( x_b – x_c \leq l_x \). The effective illumination distance should not exceed the maximum \( l_{d_{\text{max}}} \):
$$ z_b \tan(\alpha + \theta) + (x_b – x_c) \leq l_{d_{\text{max}}} $$
Assuming \( x_b – x_c \leq l_x \), this simplifies to:
$$ z_b \tan(\alpha + \theta) \leq l_{d_{\text{max}}} – l_x $$
Additionally, the illuminance at the ground must meet \( E_0 \), leading to:
$$ \frac{I_0 \cos^3(\theta + \alpha)}{z_b^2} \geq E_0 $$
which approximates to:
$$ z_b \leq \frac{I_0}{E_0 \cos \alpha} $$
Combining these, the pitch angle constraint is:
$$ \theta \leq \arcsin\left( \frac{(l_{d_{\text{max}}} – l_x) E_0}{I_0} \right) – \alpha $$
Defining \( \theta_0 = \arcsin\left( \frac{(l_{d_{\text{max}}} – l_x) E_0}{I_0} \right) – \alpha \), the state constraints are:
$$ z \leq \frac{I_0}{E_0 \cos \alpha}, \quad \theta \leq \theta_0 $$
Control inputs are constrained by actuator limits: \( u_{\text{min}} \leq u \leq u_{\text{max}} \), where \( u_{\text{min}} = -u_{\text{max}} \). These constraints ensure feasible operation of the lighting UAV while maintaining illumination quality.
Model Predictive Control Design
MPC is employed to solve the optimization problem online, with a control horizon \( M \) and prediction horizon \( P \). At each time step \( k \), the controller computes the optimal input sequence by minimizing a cost function subject to constraints. The cost function penalizes deviations from the reference trajectory and control effort:
$$ J(k) = \sum_{i=1}^{N} Q_i (\chi_i(k) – \chi_{i,\text{ref}})^2 + \sum_{i=0}^{N-1} R_i \Delta U_M(k)^2 $$
where \( Q_i \) and \( R_i \) are weight matrices, \( \chi_{i,\text{ref}} \) is the reference state (e.g., vehicle position), and \( \Delta U_M(k) \) is the input increment vector over the control horizon.
Input constraints are expressed as:
$$ \Delta U_{\text{min}} \leq \hat{B} \Delta U_M(k) \leq \Delta U_{\text{max}} $$
where \( \hat{B} = \text{diag}(B_0, \dots, B_0) \), with \( B_0 \) being a lower triangular matrix of ones, and:
$$ \Delta U_{\text{min}} = \begin{bmatrix} u_{\text{min}} – u(k-1) \\ \vdots \\ u_{\text{min}} – u(k-1) \end{bmatrix}, \quad \Delta U_{\text{max}} = \begin{bmatrix} u_{\text{max}} – u(k-1) \\ \vdots \\ u_{\text{max}} – u(k-1) \end{bmatrix} $$
State constraints are formulated as:
$$ \hat{A} \Delta \chi_M(k) \leq \Delta \chi_{\text{max}} $$
where \( \hat{A} \) is a matrix derived from the state-space model, and \( \Delta \chi_{\text{max}} \) enforces limits on altitude and pitch angle. The optimization problem becomes:
$$ \min_{\Delta U_M(k)} J(k) \quad \text{subject to} \quad \Delta U_{\text{min}} \leq \hat{B} \Delta U_M(k) \leq \Delta U_{\text{max}}, \quad \hat{A} \Delta \chi_M(k) \leq \Delta \chi_{\text{max}} $$
This formulation allows the lighting drone to adjust its trajectory dynamically while ensuring illumination requirements are met.
Simulation Analysis and Results
To validate the MPC approach, simulations were conducted in Simulink, comparing constrained and unconstrained cases. The drone parameters are summarized in Table 1.
| Parameter | Value |
|---|---|
| Mass (kg) | 1.4 |
| Gravity (N/kg) | 9.8 |
| Arm Length (m) | 0.45 |
| Moment of Inertia, \( I_{xx} \) (kg·m²) | 0.0211 |
| Moment of Inertia, \( I_{yy} \) (kg·m²) | 0.0219 |
| Moment of Inertia, \( I_{zz} \) (kg·m²) | 0.0366 |
| Rotor Inertia, \( J_r \) (kg·m²) | 0.000129 |
| Beam Angle \( \alpha \) (degrees) | 6 |
| Light Intensity \( I_0 \) (cd) | 10000 |
| Illuminance \( E_0 \) (lx) | 250 |
| Max Horizontal Distance \( l_x \) (m) | 0 |
| Max Illumination Distance \( l_{d_{\text{max}}} \) (m) | 20 |
| Thrust Coefficient \( b \) (N·s²) | 0.000031 |
| Drag Coefficient \( d \) (N·m·s²) | 0.0000075 |
| Control Constraints \( u_{\text{max}} \) (N) | [47.32, 23.66, 23.66, 11.83]^T |
In the unconstrained case, the drone aggressively tracks the vehicle, with inputs \( u_1 \) and \( u_4 \) converging within 1 second, as shown in Figure 3. The states \( x, y, z \) reach the reference values quickly, but the yaw angle stabilizes at \( \pi/2 \) with high control effort (exceeding 300 N). This results in overshoot and instability, causing the illumination center to oscillate violently, as depicted in Figure 7.
Under constraints, the inputs converge smoothly within 2.3 seconds (Figure 5), with states following a more gradual trajectory (Figure 6). The pitch angle \( \theta \) remains below \( \theta_0 \), and the altitude \( z \) stays within the illuminance-bound limit. This reduces energy consumption and minimizes overshoot, leading to a stable illumination pattern. Figure 7 compares the illumination center position: the constrained case limits excursions to 12.3 m, whereas the unconstrained case exceeds 20 m, causing hazardous lighting fluctuations. This demonstrates the importance of constraints for safety in applications like mountain roads or forests.
Conclusion
This paper presents an MPC-based strategy for a lighting UAV to track a ground vehicle while illuminating a specified area. By incorporating illumination constraints into the optimization framework, the drone achieves a balance between tracking performance and lighting quality. The linearized dynamic model and state-space formulation enable efficient real-time control, with simulations confirming that constrained MPC enhances stability and energy efficiency. Future work will focus on robust MPC to handle uncertainties and experimental validation in real-world scenarios. The lighting drone concept holds promise for safety-critical applications, underscoring the value of predictive control in autonomous systems.
