1. Introduction
In recent years, fixed-wing small unmanned aerial vehicles (SUAVs) have evolved rapidly, and are frequently used due to their affordability and convenience. The angle of attack (AoA or
) and side slip angle (SSA or
)—the two flow angles—are important parameters that describe the air data of fixed-wing SUAVs. The accurate estimation of flow angles is crucial for enhancing the flight performance and safety of an aircraft. Moreover, advanced flight controllers [
1], system identification [
2], and trajectory prediction [
3] usually require mapping between the flow angles and the aerodynamic force.
Compared with general aviation, the flow angles of SUAVs are more vulnerable to wind field and maneuvering due to their smaller size, lighter weight, and lower airspeed. However, obtaining flow angles for SUAVs is even more challenging due to the lack of economical, compact measurement devices.
Extensive research has been conducted on flow angle acquisition for SUAVs. Currently, flow angle acquisition methods for SUAVs can be classified into the following three primary categories: (1) flow angle measurement techniques; (2) kinematic-based estimation methods; and (3) model-aided estimation methods.
Flow angle measurement techniques mainly involve the use of multi-hole probes, vane probes, multi-pitot tubes, and distributed pressure sensors [
4]. The main feature of this technique is the direct acquisition of flow angles based on sufficient sensor information, generally without the use of inertial measurements. Only a few studies have fused inertial information in order to reduce the noise of vane probe measurements [
5]. On the one hand, calibration constitutes a primary research focus concerning multi-hole probes and vane probes [
6]. A question arises about the accuracy of such probes at low speed, and their calibration must be performed in a wind tunnel. Furthermore, probes with mobile vanes are too large and delicate to be easily integrated. On the other hand, the main purpose of research on multi-pitot tubes and distributed pressure sensors is mostly to reduce the costs and embed the sensors within the surfaces of UAVs [
7]. The mathematical models of these devices are intricate. As a result, multiple machine learning algorithms have been utilized for modeling these flow angle sensors in recent studies [
7,
8]. This data-driven sensor modeling approach requires a large dataset. Liu et al. developed dimensionless input and output neural networks to improve the generalization in the entire flight envelope and effectively reduce the need for training data [
9]. Nevertheless, due to differences in aerodynamic profiles, measurement techniques using distributed sensors require dedicated training data for specific aircraft. The result is that the equipment, especially for SUAVs, is rarely available at a low cost [
4].
Kinematic-based estimation methods rely primarily on the wind triangle, incorporating the ground speed, wind field, and attitude of SUAVs [
10,
11]. SUAVs equipped with a standard sensor suite provide access to ground speed, attitude, and 1-D airspeed data. However, these sensor data are insufficient to support the simultaneous estimation of wind field and flow angles using recursive filters. The challenge of insufficient system observability was identified by Wenz et al. [
12], who employed an optimization estimation method in their subsequent work. However, this also causes issues with real-time performance [
13]. Therefore, many kinematic-based methods still adopt the 2D horizontal wind assumption [
14] and the zero-sideslip assumption, which reduce the dimensionality of variants [
15]. Some studies in general aviation assume that there is no wind [
16]. However, assumptions of the kinematic-based method are not well suited for low-speed SUAVs, as they lead to larger flow angle errors.
The model-aided method does not require information related to wind field and flow angle measurements but does require accurate aerodynamic parameters of the aircraft. These parameters can be either classical derivatives or a neural network [
17], as long as the relationship between air data and aerodynamic forces is mapped. The model-aided method that first appeared in [
18] estimated the AoA based on aerodynamic stability derivatives using only data from accelerometers and control surface positions. Tian et al. realized real-time estimation of flow angles based on the aerodynamic derivatives of SUAVs; the estimation accuracy of the AoA reached a standard deviation of 0.96° [
5,
19,
20]. If air data are accessible, a custom neural network model can be developed using a data-driven approach to represent the input–output relationship between the measurements and air data. After the custom neural network is obtained, it can be used to replace the air data systems [
21,
22]. However, a neural network model trained on flight data is interdependent with model-aided flow angle estimation. As a result, this method was used for synthetic airspeed, AoA, and SSA estimation for analytical redundancy when considering the presence of noise in the measurement devices [
23]. Finally, model-aided methods can only be used for a specific UAV if the aerodynamic parameters of that particular UAV are available. The model-aided method is not readily applicable to all SUAVs, as obtaining the aerodynamic parameters of a specific SUAV is a complex task.
Overall, all three categories of methods have significant limitations when applied to SUAVs. The method proposed in this study draws on the model-aided method, which utilizes the aerodynamics of SUAVs. The main difference is that the proposed method does not require prior knowledge of the specific parameters of the aerodynamic model. The main contributions of this study are summarized as follows:
(1) An optimization-assisted filter estimation (OAFE) method is proposed for estimating flow angles in fixed-wing SUAVs. The OAFE relies solely on a standard sensor suite comprising a 1D pitot tube, GPS, and an IMU, without dependence on the information of wind field or aerodynamic parameters of a specific SUAV. Therefore, it can be quickly deployed to different SUAVs;
(2) A cubature Kalman Filter is designed as the main loop to ensure real-time performance. “2D horizontal wind” and “zero-sideslip” assumptions are not adopted in the filter, which makes the method applicable to SUAVs at low speed. An optimizer loop was developed to provide real-time aerodynamic derivatives as pseudo-measurements. Although these real-time derivatives are noisy, this is to be expected since there is no flow angle information during the optimization process;
(3) To evaluate the OAFE, both 3D flight simulations and field tests were conducted. The simulation utilized an open-source flight dynamics model and a professional autopilot. The effectiveness of the estimation of relative velocity, flow angles, aerodynamic derivatives, and specific force is validated in this study.
The organization of this paper is as follows.
Section 2 presents the mathematical models of flow angle estimation and introduces the theoretical frameworks employed in this paper. The proposed methods are discussed in detail in
Section 3. In
Section 4 and
Section 5, the proposed method is evaluated through simulation and field tests conducted on a fixed-wing SUAV.
Section 6 summarizes this study and indicates future work.
3. OAFE Method
This study proposes an OAFE method for flow angle estimation comprising a filter loop and an optimizer loop (shown in
Figure 2). The OAFE combines the benefits of both the filter and optimizer, with the filter serving as the main loop to generate flow angles.
A CKF filter was employed with low computational complexity and high frequency to capture states (
) changes caused by the SUAV maneuvering. The filter incorporates
from the optimizer loop as pseudo-measurements, thereby reducing cumulative errors and ensuring real-time outputs. The subscript
in
Figure 2 denotes values at time
.
Angular rates , specific force , pitot airspeed , Euler angles , and are assumed to be available. Where , , , are bias-corrected and provided by the integrated navigation system, are real-time derivatives identified by the optimizer loop.
The optimizer loop generates aerodynamic derivatives at a frequency
, based on a sequence (SEQ) of past sensor data prior to the moment
(as shown in
Algorithm 1). The SEQ of the data is collected within a moving horizon, the length of which is
.
Algorithm 1 Optimizer for generating pseudo-measurement |
![Drones 08 00758 i001]() |
3.1. Filter Loop
In this study, SUAVs are treated as nonlinear systems, as follows:
where
is the sample time interval,
and
are the uncorrelated process and measurement Gaussian noise with zero means.
In this study, the filter loop is designed based on the dynamics and kinematics of the SUAV. Based on the CKF introduced in
Section 2.4, the state (output)
, input
, and measurement
vectors are given as follows:
3.1.1. State Dynamic and Measurement
(1) State Dynamic Equations
The aerodynamic derivatives in state
use a static propagation model, as follows:
The dynamic equation of the
in state
can be obtained by differentiating Equation (2). Due to the high filter frequency, the wind field varies very little in a single period [
31]; therefore,
can be represented as follows:
where
represents the angular rate of the navigation frame relative to the body frame while
represents the opposite;
is an orthogonal matrix, and the derivative of the rotation matrix
is given in [
32].
Combining Equations (4) and (27), the UAV relative velocity is presented as follows:
where
denotes the angular rates measured by IMU, the following expression is succinctly expressed as
.
is the antisymmetric matrix consisting of
and is denoted by
.
Thus, the dynamic equations can be represented as follows:
where
denotes the component of
along the x-axes.
The cubature points propagate in Equation (8) according to the dynamic equations described in Equation (29).
(2) Measurement equations
The functional relation between
in corrector
and the state vector
is evident. Combined with Equation (6), the measurement equation
in Equations (13) and (22) is precisely defined by Equation (30). where
,
, and
are disregarded as they change at high frequency.
3.1.2. Filtering Noise
The IMU data used for the filters are bias-corrected. The estimation of these biases is conducted in the integrated navigation module, in which the bias of
and
are generally modeled as a first-order Markov process [
15]. The main consideration in this study is the IMU noise, which affects both the state time update and the measurement update.
(1) Process error covariance
in Equation (11) is a square-root factor of process error covariance , such that . is the covariance of process noise in Equation (22).
The process error covariance of
is denoted as
, and that of
is denoted as
, such that
is expressed as follows:
Errors in the time update of
are mainly due to input
, arising from two terms (
) and (
), shown as follows:
In this study, the noises associated with (
) and (
) are considered to be independent of each other within a filter period and can be evaluated separately. Then, the process error covariance of
can be expressed as follows:
The propagation residual
of
caused by the term (
) can be expressed as follows:
where
denotes the noise vector of the gyroscope.
According to the derivation in
Appendix A.2,
can be expressed as follows:
where
represents the angular rate variance, which is detailed in
Section 4.
For small and low-speed SUAVs, the variation of
can be ignored and
mainly results from attitude errors as Equation (36). The derivation is detailed in
Appendix A.2, as follows:
where
represents the Euler angles variance, which is detailed in
Section 4.
(2) Measurement noise
in Equation (16) is a square-root factor of the measurement error covariance
, such that
.
is the covariance of measurement noise
, and is expressed as follows:
where
is constructed from the sensor noise and
denotes the error covariance of real-time derivatives from the optimizer loop at the time
.
is represented as follows:
where the symbol “
” stands for a diagonal matrix with
on the main diagonal;
denote the variance of
, and the associated sensor noise is detailed in
Section 4.
As mentioned earlier, derivatives exhibit a high level of noise. Real-time [
] generated from the optimizer loop in flight tests are shown in
Figure 3. To use them as pseudo-measurements, their noise level
is detailed in the design of the optimizer loop (shown in
Section 3.2.3).
3.2. Optimizer Loop
The main difficulty faced by the optimizer loop is that the flow angles are unknown since they are exactly the states to be estimated by the OAFE.
Based on an SEQ of past sensor data collected over multiple periods, the optimizer loop determines a set of aerodynamic derivatives that satisfy the following two conditions:
(1) The SUAV flight states satisfy the motion-continuity rule (Equation (28)) [
33];
(2) The air data parameters (including
) and aerodynamic parameters determine the SUAV’s forces (Equation (6)) [
34].
3.2.1. Objective Function
Assuming there is a functional relation between the input and output data, this optimization aims to determine the functional relation that minimizes the error, as follows:
where
represents the output and
represents the input.
is the unknown variable to be determined.
More precisely,
and
are defined as follows:
where
denote the components of
to be determined and
denote the derivatives to be determined.
in Equation (39), can be represented as Equation (41). The aerodynamic forces due to
are also ignored, as follows:
where
and
denote the functional relation among
,
,
,
,
,
, and
in Equation (6);
denotes the associated measurement noise.
At time
, when extending Equation (41) to
periods, there are historical measurement sequences, as follows:
and the variable sequences are
.
At time
, subscript
is marked as
for easy expression. Finally, the optimizer loop finds the unknown
, by minimizing the objective function at time
, as follows:
where
denotes the weight vector; one available
for testing in this study is
;
denotes the previous estimates at time
from the filter loop.
Based on our tests using the selected sensors with a data acquisition frequency of 10 Hz, it was considered that a time window width of in Equation (42) was appropriate. As the acquisition frequency increases, it is advisable to correspondingly increase the value of . Similarly, if the sensor accuracy improves, can be also increased.
In this study, the Levenberg–Marquardt algorithm was employed to conduct the optimization task. To ensure prompt optimization outcomes, a maximum of 30 iterations was set for each optimization period.
3.2.2. Improving Optimization Efficiency
(1) Variable dimensionality reduction
At time , , , in across the time window are treated as constants. In contrast, is rapidly changing. In order to reduce the dimensionality, the unknown variables in are treated as functions of .
In addition, since the online resolution of Equation (42) uses an optimization algorithm, the optimization process computes
multiple times, utilizing distinct
. In order to avoid a high number of repetitive recursive operations, the increment of
is used to construct the unknown
(shown in
Figure 4).
Neglecting the variation of the wind field during the time window, the equation is first established in the navigation frame as follows:
where
denotes the increment of
within the time window
.
The discrete form of pre-integration [
35] is utilized to approximate
as follows:
where the script
denotes the values at time
and
represents the rotation matrix at time
.
As a result, the constructed sequence
naturally satisfies the continuity rule expressed in Equation (28). When decomposed in the body frame, Equation (43) is expressed as follows:
(2) Minimize redundant operations
Combining Equations (44) and (45) yields Equation (46). Based on Equation (46), it is possible to directly construct the unknown variables of sequence
instead of the repetitive recursive operations. At time
, only
and
are unknown variables in sequence
, as follows:
According to Equation (46), the sequence are computed using and . Once and are obtained, they remain constant throughout the optimization process at time .
Moreover, Equation (47) is derived from Equation (46). With Equation (47), the sequence
at time
can be quickly obtained based on the sequence
at time
. Thus, the optimization task at time
can start quickly, avoiding the repetitive computation of
, as follows:
when
,
3.2.3. Noises of Selected Derivatives
The sequence can be calculated through Equation (46) at time , once are determined. It is easy to calculate sequences , , and from time to according to Equation (1).
The error variance is thus expressed as follows:
On the other hand, considering that the flight control system counteracts the perturbations required to excite the SUAV dynamics [
36], the error covariance of the estimated derivatives is weighted by normalized flow angle variations within the time window. Therefore,
in Equation (37) is set as follows:
where
,
, and
is a natural constant.
5. Field Tests
The ideas for evaluation in the flight tests are shown in
Table 6. In the flight tests, the model-aided method provides reference values for
and
, as it is an extensively researched method with an accuracy within 0.5° and 1° [
5,
20,
23]. What we aim to demonstrate in the field tests is that the proposed method achieves the estimation of flow angles without the prior acquisition of aerodynamic parameters, rather than achieving superior estimation accuracy.
Before conducting the field test, an aerodynamic derivatives model was developed for the test SUAV [
37]. This model serves two purposes in the field tests, as follows: to provide reference aerodynamic parameters; and to complete a model-aided estimation.
Appendix A.3 provides detailed aerodynamic parameters.
5.1. SUAV for Flight Tests
The Sula89 SUAV, employed for conducting the field tests, is presented in
Figure 14. The Sula89 adopts a tandem layout with a high aspect ratio and equal-chord straight wings. The vertical tails act as a lateral stabilizer. Detailed geometric characteristics of the Sula89 are shown in
Table 7.
5.2. Hardware Modules
As shown in
Figure 14, the Sula89 is equipped with a Pixhawk2.1 autopilot (running px4 v1.8.0) that facilitates automatic flight control, and an NVIDIA Jetson Xavier NX3 that runs the OAFE. The decision not to integrate the OAFE with the EKF module in px4 was made to maintain the original navigation module, thereby ensuring flight safety, and minimizing dimensionality and computational burden on the estimator. The data used in this study were collected by the Pixhawk2.1, which was connected with a CUAV digital airspeed and pitot tube, as well as a HEX Here3, which provided satellite positioning information.
The IMU cube of the Pixhawk 2.1 was replaced with the 6-axis IMU (BMI160), as well as the STMicroelectronics 3-axis magnetometer LIS3MDL. The BMI160 is a 6-axis IMU consisting of a digital, tri-axial, 16-bit acceleration sensor and a tri-axial 16-bit gyroscope.
Table 3 in
Section 4 illustrates the sensor data that can be obtained from the hardware modules. [
] were estimated based on the fusion of IMU, magnetometer and GPS data with high accuracy [
38]. The sensor data and estimated [
] transmitted from px4 to NX3 were downsampled to 50 Hz. In the flight test conducted for this study, the Sula89 was not equipped with an air data system or a flow angle sensor.
5.3. Field Test Setup
In 2024, a field flight verification of the OAFE was conducted in Anhui Province, China, at a standard airplane flight field with legal airspace. The site is located on a huge farm, as indicated in
Figure 15. The local temperature was 17 °C, and the weather was overcast with a level 2 east wind (about 3 m/s).
In the flight test, the initialization of the OAFE was consistent with the simulation, as in
Section 4.1.
First, the structure and electrical components of the Sula89a were checked. Then, the SUAV took off remotely in stabilized mode, and subsequently switched to mission mode to fly autonomously along a preset four-sided route (shown in
Figure 15). Finally, the SUAV was remotely controlled to land, after which the data stored onboard were archived. The specific control parameters of the px4 employed in this test can be found in [
39].
5.4. Results and Analysis
The estimated
obtained from the OAFE method were compared with the reference, as depicted in
Figure 16. The model-free-1 method, which is kinematic-based and assumes no wind (
), is labeled with “mf1” in the figures below [
16]. The model-free-2 method, with the assumption of
and 2D horizontal wind, is labeled with “mf2” [
15]. These two methods were selected based on the principle of immediate availability, like the OAFE. That is, there is no need for direct flow angle measurements, the prior acquisition of aerodynamic parameters, or pre-training.
The pitot airspeed is labeled “Pitot”. The
estimated based on the model-aided method is labeled as “model-aided” and was used as the reference. Consistent with the approach outlined in [
25], we also utilized the pre-identified aerodynamic parameters of the Sula89 [
39].
As shown in
Figure 16, the mf1 method presents the largest error for the estimation of
. The error of
exhibits periodic oscillations due to the Sula89 flying a quadrilateral course in the wind field. The mf2 method shows significantly improved accuracy in estimating
, but not in estimating
and
. The OAFE method consistently shows good agreement with the reference values for the estimation of
throughout the entire flight. The
estimated by OAFE is a fusion of inertial and differential pressure information, which is smoother than the reference
. We think that it is a beneficial effect, as
is a long-term state and changes slowly.
The flow angle
, calculated from the estimated
, is shown in
Figure 17.
Taking the results obtained from the “model-aided” method as a reference, the statistical performance of estimated
and
are summarized in
Table 8.
Regarding the mf1 method, under the assumption of no wind, even with , errors as low as 1–2 m/s, the method resulted in a significant flow angle error for the test SUAV. The error of even reached 10° at 65 s, presumably due to gusts of wind. This is to be expected since this method is designed for high-speed general aviation airplanes. As for the mf2 method, the estimated and fluctuated around zero, respectively, because it utilized = 0 as a measurement. Although its assumptions reduced the RMSE of and , it did not lead to accurate estimates. For the estimation of , the improvement in mf2 over mf1 was very small.
The OAFE method significantly improved the estimation accuracy of and . Throughout the process, the OAFE estimates fit the reference values better and captured more nuanced dynamical changes. The estimation results of both and are close to the accuracy limits of the reference ( and ). Even though the lateral aerodynamics adopt only a “” model, the OAFE still demonstrated good accuracy in estimating . This is attributed to the OAFE’s ability to capture the rapid changes in by fusing inertial data, even without incorporating aileron inputs, roll rates, or yaw rates into its aerodynamic model.
The distribution of estimation errors in the
domain is illustrated in
Figure 18, revealing an increase in error with the increase in
. This may be attributed to the fact that the OAFE method utilizes a “
” linear model, while the tested SUAV’s “
” curve has some anticipated nonlinear characteristics.
The estimated
by the OAFE are presented in
Figure 19. The coefficients obtained from the CFD work were used as a reference and labeled as “CFD”. Among these, the lift coefficient
showed a more obvious hysteresis in the interval of
.
The estimated
and
, derived from the estimated
and estimated
, are depicted in
Figure 20. The measurement components from the IMU serve as the reference for comparison.
For further analysis, the original sensor data stored in the TF memory card were utilized for offline validation. As shown in
Figure 21, the results indicate that
converge rapidly when different initial values are set. The amplitude of
reduces to 7% after 3 s. Similarly, the amplitude of
decreases to 5% after 3 s.
6. Conclusions
An OAFE method that yields flow angle estimates of SUAVs solely using a standard sensor suite is proposed in this study. The OAFE’s filter loop utilizes inertial data and incorporates noisy aerodynamic derivatives identified online to refine its performance. The noisy aerodynamic derivatives are generated in real time by the optimizer loop of the OAFE in the absence of flow angle measurements. The optimizer approximately determines these derivatives based on multi-period sensor data, motion-continuity rules, and aerodynamics.
The OAFE method was evaluated through simulations and field tests. The simulation results revealed that the estimated and displayed an RMSE of approximately and , respectively. In field flight tests, the results indicated an RMSE of 0.75° for and 0.59° for , which fell within the error range of the reference method.
The OAFE method does not require flow angle measurements or the prior acquisition of aerodynamic parameters (derivatives or neural networks). Therefore, it is economical and does not require identification or training efforts in advance, making it suitable for quick deployment on different SUAVs and adaptable to changes in aerodynamic parameters caused by icing or other factors.
Further efforts will be dedicated to completing the estimation of other key aerodynamic derivatives without the need for α and β measurements. In addition, the OAFE will be utilized for the estimation of complete-state air data.