1. Introduction
With the rapid development of sensor technology [
1], drones have become increasingly prevalent in transportation, resource exploration, military operations, and agricultural production. Micro coaxial drones [
2], characterized by their compact structure, high payload capacity, long endurance, and portability, are suitable for tasks in dynamic environments [
3]. Therefore, attitude estimation in the navigation systems used on these drones is of critical importance [
4]. The structure of micro coaxial drones differs significantly from that of traditional drones [
5], especially due to the lack of additional counterbalance configurations. The dual motors are placed close to the central motherboard, resulting in a mechanical structure that is long in length but narrow in width.
Inertial navigation systems provide autonomous navigation independent of external information [
6] and are based on the principles of dead reckoning. As the system starts, the navigation system must be initialized, encompassing its position, velocity, and attitude [
7]. The heading is critical to describe the vehicle’s orientation [
8]. There are significant differences in initial pointing between high-precision and low-cost Inertial Navigation System (INS), primarily due to differences in noise characteristics. High-accuracy Inertial Measurement Units (IMUs) can achieve traditional static alignment methods and complete the attitude initialization by sensing the local Earth gravity and rotation rate. The relatively low bias stability of Micro-Electro-Mechanical System (MEMS) gyroscopes in microsystems, which often exceeds 10°/h, poses significant challenges to the accurate estimation of attitude [
9].
Regarding drone navigation, the prevailing approach depends on external sensors for heading estimation. J. Metge et al. used a triaxial magnetometer for angle compensation, estimating the heading with geomagnetic assistance [
10]. Medina et al. employed Real-Time Kinematic Global Navigation Satellite Systems (RTK-GNSSs) for the initial alignment of drone heading [
11]; however, the accuracy of the dual-antenna system is reduced as the installation distance is shortened. Wang et al. proposed an initial alignment scheme using polarized light, which, although effective, is contingent upon lighting conditions [
12]. Despite the advantages of these methods, the complex magnetic field of micro coaxial drones, easily disturbed by the magnetic field around power lines, and their insufficient body length for RTK heading calculations limit their applicability [
13]. Hence, the selection of external sensors for heading estimation in micro coaxial drones is limited. Furthermore, heading estimation methods that combine single-antenna GNSS with IMU [
14] face challenges like cumulative gyro error and significant heading misalignment. To address these issues, two primary methods have been proposed: filter-based optimization and constraint-based methods. Filtering methods can accurately model the state error associated with significant drift [
15], although they require a relatively lengthy convergence period [
16]. The alternative kinematic constraint-based approach estimates the heading by assuming that the vehicle’s velocity direction aligns with its longitudinal axis. However, this method does not apply to omnidirectional vehicles like coaxial dual-rotor drones. Furthermore, the significant issue of heading misalignment is characterized by strong nonlinearity [
17], emphasizing the necessity of choosing an appropriate nonlinear filter. In recent years, hybrid filtering methods [
18] combining extended Kalman filter (EKF) with back-end fusion have effectively balanced performance and computational complexity.
A heading estimation method based on Angle-Parameterized Extended Kalman Filter (APEKF) is proposed to address the challenges associated with heading estimation for micro coaxial drones. As shown in
Figure 1, the heading is modeled firstly, and the motion characteristics are analyzed to accurately describe the attitude changes. Accordingly, the Motion-Adaptive Heading Stabilization (MAHS) algorithm is introduced to effectively enhance the initial stability of the heading estimation during take-off. The combination of angle parameterization and multi-sub-filter fusion in the APEKF facilitates the integration of GNSS observation information to achieve rapid alignment, resulting in high-precision heading estimation. The excellent accuracy of this method and stability in complex maneuvering environments are confirmed by both simulations and real-world experiments.
This research is organized as follows.
Section 2 introduces the heading estimation modeling and coordinate system setup for micro coaxial drones and provides a detailed discussion on the design of the novel heading estimation method.
Section 3 presents the simulation design and results, validating the effectiveness of the proposed method.
Section 4 provides the results of the onboard experiments, further demonstrating the superior performance of the method in real flight scenarios. Finally,
Section 5 summarizes the research findings of the present study.
2. Methodology Design
This section provides a detailed account of the methodology for estimating heading in micro coaxial drones.
Section 2.1 defines the coordinate system and heading model of the coaxial drone, and its kinematic characteristics are subjected to a comprehensive analysis. Subsequently,
Section 2.2 presents the heading initialization and stabilization estimation method based on MAHS technology, focusing on its utilization for initial alignment on the ground and heading estimation during a stable take-off. Finally,
Section 2.3 provides a comprehensive explanation of the application of APEKF. Integrating GNSS velocity information ensures the coaxial drone can rapidly and accurately align its heading after take-off.
Figure 2 illustrates the overall structural block diagram of this method.
2.1. Modeling of the Micro Coaxial Drone
The fundamental mechanical configuration of the micro coaxial drone comprises a brushless motor power system, two control servo motors, and the load-bearing section of the lower fuselage. The coaxial propeller system serves as the primary source of thrust. In contrast to conventional quadcopters, this drone can control its attitude in three dimensions by modifying the center of gravity using two vertically intersecting servo motors. The core board and battery are affixed within the load-bearing structure of the lower fuselage, while the remaining cables are concealed inside the body. The advantage of this design lies in its compact mechanical structure, facilitating miniaturization and optimizing energy efficiency within a limited volume. However, due to the proximity of the motors, battery, and high-current cables to the sensors, the high-power operation often generates significant magnetic interference within the fuselage, which affects the measurements of the magnetic sensors.
As shown in
Figure 3, three coordinate systems are introduced to describe the heading of a coaxial drone in space. The
frame represents the airframe coordinate system, in which the origin of the
frame is at the center of the mass of the drone;
points to the front;
points to the right;
points to the top; the
frame represents the navigational coordinate system, in which
points to the north;
points to the east;
points to the sky; the
system represents a local coordinate system rotated from the
system by the heading angle
. The attitude is represented by the Euler angle.
Based on the principle of inertial navigation, the sensor information
in the system
can be transformed into the navigation coordinate system for navigation calculation by the rotation matrix
. The three-by-three rotation matrix
can be expressed as the sequential product of the corresponding rotation matrices of the Euler angles. The Euler angles are defined using the 3-1-3 rotation sequence, which is widely used in aerospace applications.
where the heading can be inverted from the rotation matrix;
characterizes the degree of rotation from the
system to the
system;
represents the rotation matrix that transfers the vector from the
system to the
system;
represents the 3D space vector;
represents the pitch angle;
represents the roll angle.
The kinetic equations for the attitude and velocity of the miniature coaxial drone are summarized as follows:
where
is the antisymmetric array of angular velocities;
is the velocity of the carrier in the navigational coordinate system;
is the specific force information measured by the accelerometer;
is the component of the gravity vector in the navigational coordinate system;
is the local gravity.
2.2. Motion-Adaptive Heading Stabilization
This method is proposed to accomplish the initialization of the heading of a miniature coaxial drone before takeoff and the stabilization of the heading attitude estimation under severe electromagnetic interference during flight. First, the accelerometer and gyroscope data acquired in IMU in the carrier coordinate system are defined as
To minimize the inter-channel delay, eliminate high-frequency noise from the accelerometer measurements, and ensure the smoothness of the subsequently processed data, a first-order digital low-pass filter is applied to the raw data, followed by downsampling. The expression is as follows:
where
is defined as the current data point index;
is the low-pass filtering coefficient;
is the filtered accelerometer data;
is the downsampled acceleration data with the downsampling factor set to 4;
represents the neighborhood range relative to the current data point.
The drone is assumed to be at rest upon initialization, experiencing no acceleration apart from gravity. The acceleration performs a quick coarse alignment of roll and pitch angles, providing initial values for subsequent adjustments.
Convert the magnetic data from the
system to the
system by combining the roll and pitch angles to isolate the magnetic field component in the vertical plane to solve for the initial heading angle
.
where
denotes the magnetic field distribution in the horizontal coordinate system,
corresponds to a rotation about the y-axis with an angle
,
corresponds to a rotation about the x-axis with an angle
,
denotes the zero-bias error of the gyroscope sensor,
denotes the angular velocity of the airframe at the
moment.
After the initialization of the heading is completed on the ground, the drive board of the miniature coaxial drone activates the brushless motor, dramatically increasing magnetic interference and making in the magnetic field-based heading estimation method inapplicable. For this reason, a novel MAHS algorithm is used in this study to ensure that the estimation error of the heading during liftoff can be controlled within a small range. The gravity vector can effectively correct the roll and pitch angles, but the gravity vector is insensitive to the rotation around the vertical axis. Irrespective of the drone’s rotational direction, it is not possible to detect the change in heading through the gravity vector that is consistently directed towards the center of the earth. To resolve this issue, the angular velocity of the axis needs to be optimized to mitigate the heading drift caused by the gyroscope error integral. Given the structural characteristics of a coaxial twin-propeller drone that remains vertically upward most of the time, noise suppression was chosen as .
The angular velocity data may be stored in a queue before takeoff, and the absolute maximum value in the queue is selected as the threshold, after which the angular velocity data undergo motion-adaptive compensation, with the threshold value
used as the boundary to determine the motion and the stationary state.
where
is the
axis angular velocity in the body coordinate system;
is the angular velocity determination threshold;
is the minimum sensitive angular velocity of the gyro.
The angular velocity data after removing the bias can be expressed as
, which is combined with the initial attitude angle input to the Mahony filter [
19] for attitude estimation during takeoff, and the yaw angle of the airframe is obtained by solving the quaternion output from this filter [
20].
where
denotes the error vector;
denotes the error integral;
denotes the filter proportional gain coefficient;
denotes the filter integral gain coefficient;
denotes the input filter angular velocity.
2.3. Angle-Parameterized Extended Kalman Filter
‘Angle parameterized’ refers to the process of discretizing the range of heading angles into a finite set of candidate angles.
Figure 4 depicts the core framework of the APEKF algorithm, consisting of an angle parameterization module, extended Kalman filters, and a Residual-weighted fusion filter. The state vector of the filter contains the heading and the eastward and northward velocities. The inertial solution is the predicted value, and the GPS velocities serve as input for the observations. In the fusion process, the weights of each sub-filter are calculated based on the velocity residuals, and the weighted fusion outputs the final heading estimation.
The heading used in this study is defined as positive northeast, driven by the velocity increments to the north and east in the horizontal plane and the angular increment around the vertical axis. Assuming that the heading has measuring errors associated with these three incremental noises, it is necessary to initialize the heading, specified by parameterizing the angle, before executing the fast alignment algorithm. Multiple hypothetical heading angles preset on the horizontal plane are updated independently and iteratively by the horizontal plane velocities provided by the GPS observations. As demonstrated in
Figure 5, the red arrow denotes the true heading, the green arrow indicates the heading obtained from the final fusion result of the residual filter, and the black arrows represent the heading estimates provided by the sub-filters. The blue dashed line is a representation of the top-down view of the carrier’s movement direction, from left to right. After several iterations, these individual estimates gradually converge to the accurate value due to the influence of the residuals with the true heading.
Before the angular parameterization, the heading confidence interval is calculated depending on the running time. As the operation time in the air increases, the confidence interval used to characterize the uncertainty range increases accordingly. The deviations at different flight durations are evaluated and used as a foundation for the angular parameterization.
where
is the confidence heading interval;
is the heading offset coefficient factor;
t is the running time;
is the gyro motion detection threshold;
and
t are determined through experimental calibration designed to differentiate minor sensor noise from significant angular motion.
The heading parameterization quantity introduces
split confidence intervals, assuming heading intervals of 15° [
21]. The initial quaternions of the sub-filters are calculated as the outer product of the initial quaternions with one assumed quaternion to derive the initial state assigned to each sub-filter, ensuring that they can be computed independently for different assumed heading angles.
Construct the extended Kalman filter in each branch and define the state vectors
where
is the velocity component in the east direction. The update equation is calculated using a discrete time step
and corrected using quaternions and accelerometer outputs, combined with inertial predictions, obtaining the amount of velocity change in the horizontal plane. The final velocity increment is derived by converting the acceleration to an inertial coordinate system as follows:
where
is the quaternionic concomitant matrix of angular velocities
. After eliminating the bias effect and assuming that the error growth in the computed values of inertia is driven by noise in the incremental angles and incremental velocities, the derivation leads to the prediction of the a priori estimated covariance equation
Equations for updating covariance related to northward and eastward velocity observations, i.e., the computationally optimal Kalman gain equation, the computationally updated state estimation equation, and the computationally updated covariance equation for EKFs, are as follows:
where
is the incremental angle prediction of the IMU’s
axis on the fuselage axis, i.e., the incremental heading;
is the incremental velocity measurement of the IMU on the fuselage axis;
is the variance of the incremental velocity measurements of the
and
axes, where the observation transfer matrix is
.
The fusion weight calculation method is based on velocity residuals, using the Euclidean distance of the velocity residuals from each sub-model to determine the corresponding weights . Normalization and smoothing are executed for the residuals, and the contribution of each sub-model is dynamically adjusted in the heading estimation. These weights are used to adjust the state vector and covariance matrix of multiple models to solve the issue. To avoid the angle wrap-back problem, the heading states are converted to vectors with a length equal to the weight value 1 before summation. Following normalization, the state variable and the corresponding covariance matrix are produced based on weight fusion.
3. Simulation
To validate the effectiveness of the proposed heading estimation method, this section describes simulations performed for the model of the flight process of a micro coaxial dual-rotor drone under different maneuvering characteristics. As illustrated in
Figure 6, one of the horizontal maneuvering trajectories is presented. Derivation of trajectories was achieved by the removal of outliers and application of smoothing interpolation to the data obtained from onboard altitude and geolocation sensors. Initially, the drone is positioned in a stationary state on the ground. Thereafter, it ascends to a specified altitude and initiates horizontal maneuvers, including straight-line acceleration, deceleration, and turning maneuvers, to verify the observability of the heading estimation. This trajectory is designed to approximately reflect typical UAV flight characteristics, encompassing both the take-off and horizontal motion phases, and serves as the basis for subsequent simulations.
In the simulation environment, sensor data are generated depending on the performance parameters of the key sensors used on the drone. The IMU in the simulation is set to a sampling rate of 400 Hz, while the GNSS is set to a sampling rate of 10 Hz. The MEMS-IMU model employed is the ADIS16505-1, which provides data on angular velocity and specific force.
Table 1 presents the specific parameters used for the analysis. The GNSS performance settings are derived from the model BT-F9BK4, which provides velocity information.
Table 2 illustrates the relevant parameters.
In the takeoff part, the simulated data were generated based on the true values from outdoor flight trajectory combined with the characteristics of the sensors. The raw data were simulated using MATLAB R2022a SENSOR toolbox. The inertial navigation method was compared with the Mahony filter algorithm and the proposed algorithm. To further demonstrate the advantages of the proposed method in heading estimation, it was also compared with a state-of-the-art (SOTA) method presented in [
22]. The simulation commenced at 0 s and concluded at 45 s.
Figure 7a illustrates that the simulation was initially conducted during the take-off phase, and the outcomes of the four heading estimation techniques are presented. The initial heading was set to 0°, with the first five seconds representing the initialization phase, during which the drone remained stationary on the ground, followed by the take-off. After take-off, the simulation demonstrated that the drone executes substantial maneuvers, with the maximum heading change reaching approximately 90°.
Figure 7 highlights three representative key positions, defined by red dashed boxes, with the details. Additionally,
Figure 7b–d present localized enlarged views of
Figure 7a.
Figure 7b illustrates the heading estimation outcomes during the ground initialization phase, where both the inertial method and the SOTA algorithm demonstrate significant discrepancies when the drone commences its initial movement. The inability of the heading thresholds to adjust dynamically results in a lack of prompt response to the transition from a stationary to a moving state. The Mahony algorithm demonstrates superior performance, as its integration factor mitigates the tendency to overreact to sudden changes in the drone’s movement. Conversely, the proposed MAHS method demonstrates higher accuracy in heading estimation by closely following the true value curve.
Figure 7c illustrates the alterations in the heading when the drone executes substantial maneuvers during take-off. In this case, both the SOTA and the proposed method demonstrate an ability to track the true value curve with a high degree of accuracy. Conversely, the inertial and Mahony filter methods exhibit a greater tendency to deviate from the true value, with the maximum error reaching up to 50°.
Figure 7d depicts the heading estimation outcomes after the conclusion of the entire take-off procedure. The proposed method exhibits a deviation of merely 1° from the true heading angle, effectively addressing the issue of heading drift in the absence of GPS correction.
The maximum absolute error (MAE), root mean square error (RMSE), and standard deviation (STD) were identified as the primary performance evaluation metrics.
Table 3 presents the results of the various methods.
As illustrated in
Table 3, the inertial method and the Mahony filter algorithm demonstrate suboptimal performance in heading estimation accuracy, particularly during periods of intense motion, where the errors are more pronounced. Conversely, the proposed MAHS algorithm demonstrates superior precision and stability, achieving MAE of 0.6251, indicating an overall high level of accuracy. Furthermore, the algorithm demonstrates remarkable stability in both stationary and intense motion states and during prolonged operation, with a RMSE of 0.3661, representing an 85% improvement compared to the SOTA method. This result illustrates that the proposed algorithm effectively addresses the heading drift issue and maintains high estimation accuracy throughout the take-off process.
Following the ground initialization and take-off process, the micro coaxial dual-rotor drone ascended to the predetermined horizontal altitude. Subsequently, the GPS velocity data were employed to facilitate a further alignment of the heading through horizontal maneuvers. As previously demonstrated, the drone successfully executed the heading stabilization operation. Given the potential for magnetic interference during the flight, error redundancy was incorporated into the initialization process to validate the system’s robustness. Based on the derivations presented in
Section 2, the confidence interval for the APEKF algorithm was set to 60°, and five sub-filters were initialized, with a horizontal plane cutting step of 15°.
Figure 8 presents the results of three sets of simulations conducted under three different horizontal motion modes.
Figure 8a–c represents linear acceleration, turning acceleration, and curved motion, respectively; in the figures, the blue line represents the true value in the simulation, whereas the red dots indicate the GPS velocity observations.
Figure 9 illustrates the results of diverse heading alignment techniques across the three sets of simulations, with a comparison of the EKF method [
23], the UKF method [
24], the GSF-UKF method [
25], and the Particle Filter (PF) method [
26]. Generally, the GSF-UKF method tends to diverge when faced with significant heading misalignments, whereas the UKF method demonstrates a slower convergence rate than the EKF method. Although the particle filter method demonstrates relatively rapid convergence, a magnified view reveals sudden changes in heading estimation during intense maneuvers [
27]. Conversely, the proposed method demonstrates accelerated convergence during heading alignment and maintains high stability throughout the process.
Figure 9a illustrates that the heading error gradually decreases when the aircraft reaches the horizontal plane and performs rapid maneuvers. Hence, the proposed method enhances the speed and precision of heading alignment based on nonlinear filtering algorithms, particularly in complex dynamic flight scenarios.
Figure 10 presents an analysis of the internal operational process of the APEKF, demonstrating that the state quantities of the sub-filters exhibit a gradual convergence towards the true value while the weights likewise attain greater uniformity. During the initial phase of the filtering process, sub-filters far from the true heading exhibit diminished weight contributions due to the parameterized preset of the heading. However, as the filter iterations progress, the sub-filters gradually converge, and their weights become consistent [
28]. This process demonstrates that the proposed heading estimation algorithm effectively achieves rapid convergence while maintaining high accuracy. Based on our tests on a microcontroller, although incorporating multiple sub-EKFs increases the execution time, the proposed APEKF still meets the real-time requirements for embedded systems. As illustrated in
Table 4, a comparative analysis of the results from simulations has been conducted.
4. Airborne Test of Micro Coaxial Drone
Figure 11 illustrates the configuration of the experimental setup. The drone weighs approximately 416 g and is configured as a coaxial rotor helicopter with a strongly coupled six-degree-of-freedom mechanical structure. Its propulsion system comprises two brushless direct current motors that rotate in opposite directions at an oblique incidence angle, while two servo motors are installed on the lower rotor. The sensors are installed on the drone body and its core board, with data acquisition achieved via the STM32F446 microcontroller serial port, thereby enabling the simultaneous collection of raw data from multiple sensors. The experiment used the QMC5883 magnetometer to provide 100 Hz triaxial magnetic field data, while the IMU provided 400 Hz acceleration and angular velocity data. The IMU and magnetometer are integrated into the main control core PCB, while the GNSS antenna is mounted vertically on the carbon fiber support rod on the side wing of the drone. To enhance the precision of the reference data in the experiment, a dual-antenna orientation device, SINOm100W, was positioned on the support frame beneath the drone, providing heading reference data with an accuracy of 0.1° (this device was solely employed for experimental true value comparison and is not incorporated into the actual design).
The experiment was conducted in an open and flat area, with three independent datasets collected to verify the proposed method. The average duration of the experiment was 60 s. The drone was observed to perform a series of tests, beginning with the initialization, takeoff, and multiple horizontal maneuvering flight tests, all of which commenced from the origin.
Figure 12 demonstrates that, during the ground initialization phase, the magnetometer’s heading calculation was influenced by a certain degree of magnetic declination. The magnetometer data are represented by a light grey dashed line, with the red line denoting the reference heading. Nevertheless, this interference was relatively minor compared to the significant magnetic interference generated during high-power operations of the motor after take-off, resulting in a discernible escalation in magnetic interference.
Figure 12 emphasizes the necessity of effectively addressing motor interference during heading estimation to ensure flight.
Figure 13 presents the flight path that was recorded during a field test that was conducted in a parking lot. GNSS was utilized to acquire latitude and longitude data, which were subsequently displayed on Google Earth to illustrate the operational trajectory. The trajectory encompassed a distance of approximately 65 m. Key waypoints were delineated under real-world conditions.
Figure 14 presents the results of the heading estimation conducted using various methods in the onboard experiment. The experiment included the initialization, take-off, and horizontal maneuvering phases, during which several algorithms were compared: the EKF method [
29], the Optimized Mahony filter method [
30], the UAV-PF method [
31], and the proposed method. Moreover, the red reference line in
Figure 13 denotes the output of the heading reference device. Given that the system delineates the heading angle within a range of −180° to 180°, the reference value at the 19-s and 40-s mark, though exceeding −180° and approaching 180°, does not signify any substantial change in the actual flight heading of the aircraft. The experiment focused on the initial five seconds of the MAHS phase, during which the MAHS algorithm demonstrated its efficiency in suppressing magnetic interference at the initial startup of the motor. Subsequently, APEKF performed rapid heading alignment using GNSS velocity data. The entire experiment demonstrated the effective combination of these two algorithms, significantly improving the accuracy and convergence speed of the heading estimation.
Implementing the optimized heading estimation method proposed in this study resulted in a notable enhancement in the performance of the heading during the take-off process of the coaxial drone.
Table 5 presents the results of the onboard experiment, showing that the proposed method demonstrated the most optimal performance regarding alignment time, standard deviation, and root mean square error. The heading alignment time was reduced to 1.794 s, with a standard deviation of 0.7678° and an RMSE of only 1.0107°. Overall, the algorithm demonstrated significant enhancements in accuracy and stability compared to alternative methods, particularly in managing the dynamic environment during the take-off phase.