## 1. Introduction

Over the last few years, low-cost, mass-market unmanned aerial vehicles (UAVs) have seen increasing usage in ‘dull, dangerous and dirty’ (D-D-D) fields. The most common navigation architecture in these platforms is based on an inertial navigation system (INS) integrated with a global navigation satellite system (GNSS) (Kim and Sukkarieh, Reference Kim and Sukkarieh2003; George and Sukkarieh, Reference George and Sukkarieh2005). With an INS/GNSS architecture, problems tend to arise during GNSS outages where the navigation solution drifts unboundedly (Hide, Reference Hide2003; Quinchia et al., Reference Quinchia, Falco, Falletti, Dovis and Ferrer2013; Mwenegoha et al., Reference Mwenegoha, Moore, Pinchin and Jabbal2019). This has been reported to occur due to intentional or unintentional corruption, even against cryptographically secured signals (Papadimitratos and Jovanovic, Reference Papadimitratos and Jovanovic2008), rapid dynamics (Tawk et al., Reference Tawk, Tomé, Botteron, Stebler and Farine2014), severe multipath (Robustelli and Pugliano, Reference Robustelli and Pugliano2018), loss of line of sight and interference (Groves, Reference Groves2008).

To improve the navigation solution during GNSS outages, El-Diasty and Pagiatakis (Reference El-Diasty and Pagiatakis2009) explored advanced inertial measurement unit (IMU) error modelling schemes. The approach showed some improvements in navigation performance at the expense of additional software complexities. Further, the approach used a standard INS/GNSS integration architecture using an unscented Kalman filter that would still be disabled in case of IMU failure. Lau et al. (Reference Lau, Liu and Lin2013) used acceleration white noise biases to model accelerometer errors to improve navigation performance during short GNSS outages. The architecture relied on conventional INS/GNSS integration, which would disable the navigation solution in case of IMU failure. Jospin et al. (Reference Jospin, Stoven-Dubois and Cucci2019) proposed using a cooperative navigation scheme using two UAVs in areas with severe multipath such as dams or near bridges. The approach used high-power light-emitting diodes (LEDs) on one platform positioned using a camera mounted on a second platform. Even though significant improvements in position estimation were achieved, the approach has limited application to fixed-wing UAVs, and the performance can be degraded in poor visibility conditions.

More recently, model-aided and model-based integration architectures using the vehicle dynamic model (VDM) fused with IMU and GNSS measurements have gained research popularity (Bryson and Sukkarieh, Reference Bryson and Sukkarieh2004; Dadkhah et al., Reference Dadkhah, Mettler and Gebre-egziabher2008; Mwenegoha et al., Reference Mwenegoha, Moore, Pinchin and Jabbal2019). A model-aided integration scheme employs an INS as the main process model and uses the VDM as an aiding tool while a model-based scheme uses the VDM as the main process model and an INS as an aiding system. A detailed discussion about the two concepts can be found in Mwenegoha et al. (Reference Mwenegoha, Moore, Pinchin and Jabbal2019). Crocoll et al. (Reference Crocoll, Seibold, Scholz and Trommer2014) implemented a unified INS and VDM scheme and achieved significant improvements in navigation performance over a conventional INS/GNSS integration scheme. The authors showed that the approach was similar to the multi-process model scheme proposed by Koifman and Bar-Itzhack (Reference Koifman and Bar-Itzhack1999) but computationally efficient by eliminating duplicate states. Experimental tests (Mueller et al., Reference Mueller, Crocoll and Trommer2016) using a quadrotor showed significant improvement in position estimation during GNSS outages; however, the navigation solution could still be disabled in case of IMU failure. Sendobry (Reference Sendobry2014) proposed a model-based scheme and avoided duplicate states. The approach is similar to the one proposed by Khaghani and Skaloud (Reference Khaghani and Skaloud2016) and Mwenegoha et al. (Reference Mwenegoha, Moore, Pinchin and Jabbal2019) even though both studies were applied to a fixed-wing UAV while Sendobry considered a quadrotor. An experiment using a ground vehicle and a simplified VDM showed improved navigation performance near buildings; however, the impact of dynamics on navigation performance during GNSS outages was not investigated.

A model-based scheme can still output a navigation solution with useful attitude information even with an IMU failure when aided by a GNSS receiver, making it more favourable than a model-aided scheme (Khaghani and Skaloud, Reference Khaghani and Skaloud2018). However, the characterisation of navigation solution errors during different lengths of GNSS outages has not been investigated. Further, the error characteristics with varying roll rates during turns has also not been explored. Therefore, this paper presents findings of the error characteristics of a model-based approach in different GNSS outage lengths and varying roll rates, especially during turns. Comparisons with a conventional INS/GNSS approach are also made.

## 2. Model-based architecture

Figure 1 shows the model-based architecture investigated compared with a conventional INS/GNSS integration scheme which is more common in low-cost UAVs. The model-based architecture uses the dynamic model of a fixed-wing UAV as the main process model coupled with IMU and GNSS measurements using an extended Kalman filter (EKF). The architecture uses rotation rate and specific force measurements from the IMU as well as position measurements from the GNSS receiver in the fusion filter to estimate corrections to the navigation states. The control inputs from the autopilot system are used to propagate the navigation states. Mass and moment of inertia are assumed to be known and constant during the flight setup. The VDM requires a set of parameters $({X_P})$ used to derive the moments and forces acting on the aircraft, as can be seen in Figure 2. Pre-calibration of these parameters before a flight is possible but this can be time-consuming and usually requires expensive equipment.

The VDM structure enables the inflight calibration of these parameters reducing the effort in obtaining accurate parameters. Figure 3 shows the coordinate frames considered in the investigation alongside the control surface deflections. Table 1 shows the formulation details for the airspeed, angle of attack $\mathrm{(\alpha )}$ and side-slip angle $\mathrm{(\beta )}$, respectively.

Note:$R_n^b$: local level (NED) to body rotation matrix; ${W^n}$: wind velocity vector in the NED frame.

## 3. Simulation setup and equations of motion

A Monte Carlo simulation study with 50 simulations is used to study the error characteristics of the architecture in Matlab. More details on the Monte Carlo simulation will be given in the next section.

The VDM navigation states considered in the simulation are:

where $r_{eb}^n = {[{\mu \; \lambda \; {h_b}} ]^T}$ is the curvilinear position vector representing latitude, longitude and geodetic height, respectively. The velocity vector in the north-east-down (NED) frame is given by:

The Euler angles, roll, pitch and yaw are given by:

and the rotation rate vector $\omega _{ib}^b = {[{{\omega_x},\; {\omega_y},\; {\omega_z}} ]^T}$represents the rotation around the roll, pitch and yaw axis. An arbitrary vector $V_{\alpha \beta }^\gamma$ represents a vector in the $\beta$ frame (object frame) with respect to the $\alpha$ frame (reference frame) resolved into the $\gamma$ frame (resolving frame). *n* is the propeller speed implemented as a first-order process. The rigid body equations of motion are given by:

where ${g^n}$ is the gravity vector in the local NED frame, $I^b$ is the mass moment of inertia matrix, ${n_c}$ and ${\tau _n}$ represent the commanded propeller speed and time constant, respectively. The meridian $({R_M})$ and prime vertical $({R_P})$ radius of curvature are given by:

where ${R_0}$ and *e* represent the semimajor axis and eccentricity, respectively. The specific force vector in the body frame $(f_{ib}^b)$ is given by:

where $F_X^w,\; F_Y^w,\; F_Z^w$ represent drag force, lateral force and lift force, respectively. ${F_T}$ is the thrust force and $R_w^b$ is the transformation matrix from the wind frame to the body frame. The moment term $({M_b})$ in the body frame is given by:-

where ${M_X},\; {M_Y},\; {M_Z}$ represent the roll, pitch and yaw moments, respectively. Table 2 further represents the forces and moments acting on the aircraft using the VDM parameters. The actual values for the VDM parameters used in this work can be found in Ducard (Reference Ducard2007).

Note: $D\; :$ propeller diameter; $b\; :$ wingspan; $\rho \; \; :\;$ air density; $\bar{c}$: mean aerodynamic chord.

The aerodynamic and propulsion model presented in Table 2 describing the forces and moments acting on the aircraft can be found in Ducard (Reference Ducard2007) and Khaghani and Skaloud (Reference Khaghani and Skaloud2016).

## 4. Fusion filter and implementation

An EKF is used in the fusion of GNSS and IMU measurements with the VDM. Navigation states ${X_n}$ are propagated using the presented equations of motion. IMU errors $({X_e})$, wind velocity states $({X_w})$ and VDM parameters $({X_p})$ are propagated using a random walk process (Mwenegoha et al., Reference Mwenegoha, Moore, Pinchin and Jabbal2019). These states are given by:

The general form of the random walk process model for the IMU error states, wind velocity states and VDM parameters used in the navigation system is given by:

where ${G_{[{e,w,p} ]}}$ is the noise shaping matrix for the IMU error states, wind velocity states and VDM parameters, respectively. ${W_{[{e,w,p} ]}}$ is the driving noise vector for the IMU error states, wind velocity states and VDM parameters, respectively.

In the simulator, the IMU errors and wind model follow a first-order Gauss-Markov process, and their parameters are unknown to the filter while the VDM parameters were fixed. The first-order Gauss-Markov wind model used had a constant component with a magnitude of 3⋅8 m/s, a correlation time of 200 s, and a process uncertainty of 0⋅1 m/s. Generally, a first-order Gauss-Markov process $({X_{gm}})$ can be represented as:

where ${\beta _{gm}}$ is the inverse of the correlation time and ${n_{gm}}$ is the driving noise.

The overall state vector is given by:

The measurement vector consists of IMU $(\tilde{f}_{ib}^b,\; \tilde{\omega }_{ib}^b)$ and GNSS $(\tilde{r}_{eb}^n)$ measurements.

where each measurement $(Z)$ is given by a measurement function $h$:

where ${x_k}$ is the predicted state vector at the current time index *k*, ${u_k}$ is the known control input vector from the autopilot system and ${r_k}$ is the measurement noise where the expectation operator on the white sequence vector and its transpose is given by:

where ${R_k}$ is the measurement covariance. Therefore, the observation model for the IMU is given by:

where the IMU measurement covariance $({R_{{i_k}}} = E[{w_{{i_k}}}w_{{i_k}}^T])$ is obtained from the simulated error characteristics presented in Table 4. The observation model for the GNSS measurements is given by:

where the GNSS measurement covariance $({R_{gk}} = \; E[{w_{gk}}w_{gk}^T])$ is obtained from simulated GNSS receiver error with minor scaling. The filter utilises the linearised version of the process model $(F = (\partial \dot{x}/\partial x))$ and observation model $(H = (\partial Z/\partial x)\; )$ on the prediction and update of the state vector and the covariance matrix. The observation matrix *H* is given by:

The EKF propagation and update steps are summarised in Table 3. Table 4 presents the stochastic properties of the sensors used in the simulation.

The trajectory used in the simulation is presented in Figure 4. The presented equations of motion, aerodynamic and propulsion models are implemented in Matlab/Simulink to generate the trajectory. The trajectory partly captures what would be experienced in a typical mapping or surveying mission. GNSS outages are induced during certain segments of the trajectory where the aircraft experiences rapid dynamics in roll, pitch, yaw or a combination of them, i.e., during turns.

To evaluate the performance of the navigation system, a Monte Carlo simulation study has been performed with 50 runs. Errors are introduced to all the a priori information available such as the initial values for the navigation states, VDM parameters, statistics of the IMU and GNSS measurements. The trajectory and wind profile have been kept the same in each realisation. The error in observations, initialisation and VDM parameters is changed randomly in each run. VDM parameters are changed with a standard deviation of 10% of the initial values. The position errors for 50 Monte Carlo runs are presented in Figure 5.

A total of three simulations with the VDM architecture are performed with the given trajectory and three different autopilot settings. The autopilot limits the rotation rates to 15°/s, 30°/s and 60°/s, respectively. Figure 6 shows the GNSS outage and re-acquisition segments as well as the roll rates and roll angles achieved during the three runs. The outage period is set to 10 s, 20 s, 30 s, 60 s and 90 s, respectively during each simulation run, as seen in Figure 6.

## 5. Error characteristics results

The results from a Monte Carlo simulation study are presented in this section for the VDM approach and some comparison is made with an INS/GNSS approach. The initial 250 s of the flight are used for convergence and therefore removed from the discussion.

The position error is presented in Figure 7. For GNSS outages lasting up to 60 s, the results showed that the position error for the VDM approach with different rotation rate limits was similar. The position errors for the different rate cases reached only 8⋅494 m after 60 s of GNSS outage, well within the $2\sigma$ of the GNSS receiver modelled as opposed to 61 m for an INS/GNSS case. For GNSS outages lasting up to 90 s, the level of dynamics mostly around the roll axis seemed to influence position error, as shown in Figure 7 in the last outage phase. With a rate limit of 60°/s, the maximum position error was 16% greater than the position error observed with a rate limit of 15°/s and only 8% greater with a rate limit of 30°/s.

With a GNSS outage lasting 90 s, the position error of the INS/GNSS approach with a rate limit of 15°/s was an order of magnitude higher than the VDM approach limited to 60°/s. The additional information from using the VDM reduced the rapid drift in the navigation solution, leading to superior performance by the VDM approach even with rapid roll dynamics.

The root mean square (RMS) of the attitude errors is presented in Figure 8. For the VDM approach with different rotation rate limits, the overall roll and pitch angle errors during all periods of GNSS outage did not significantly change, excluding sections with rapid roll dynamics owing to the use of the VDM. However, yaw angle error seemed to increase gradually during an outage period, especially with some channel dynamics during the outage. Yaw angle error was found to increase, reaching a maximum value of 0⋅53 degrees, 0⋅55 degrees, 0⋅68 degrees and 0⋅8344 degrees during GNSS outages lasting 10 s, 20 s, 30 s and 90 s, respectively. The GNSS outage period lasting 60 s (fourth outage) showed small growth in yaw error, reaching a maximum value of 0⋅5 degrees. During the fourth outage (470–530 s), the aircraft experienced large rotation rates only during the last phase of the outage. Therefore, between 470 s and 520 s, the aircraft was flying mostly straight and level, causing only slight growth in yaw angle error, as can be seen in Figure 8.

During a turn, the maximum rotation rate achieved was found to influence roll angle errors the most and pitch angle errors to a lesser extent. With a rate limit of 15°/s, the roll angle error reached a maximum of 0⋅17 degrees (654 s), while for 30°/s it reached a maximum of 0⋅36 degrees (650 s) and reached a maximum of 0⋅46 degrees (648 s) with a rate limit of 60°/s. With the VDM approach, the roll angle error quickly recovered after short periods of rapid roll dynamics. The large increase in roll angle error during sections with large rotation rates occurred even with GNSS availability with the VDM approach, as shown in the interval between 250 s and 265 s. The large instantaneous error, correlated with the rotation rate, is mainly attributed to the remaining part of the initialisation errors, especially in the VDM parameters. The use of the VDM prevented further growth of the attitude errors following rapid dynamics even in periods of extended GNSS outage lasting 90 s. On the other hand, with an INS/GNSS approach, the attitude errors grew rapidly, with the maximum error observed being correlated with the length of the outage period.

The accelerometer bias estimation error is presented in Figure 9. After filter convergence, the accelerometer bias estimation errors remained bounded and did not grow during the GNSS outages. The simple random walk model used to estimate the accelerometer bias provided reasonable results enabling good navigation performance for a flight period lasting 780 s with short periods of GNSS outage in between. Large roll rotation rates during an outage period did not seem to influence the estimation performance of the accelerometer bias following the convergence of the filter.

The gyroscope bias estimation error is presented in Figure 10. It was found that 98% of the initial turn-on gyroscope bias and bias variation was resolved well within 100 s of GNSS presence. And just like the accelerometer bias, GNSS outages of different lengths, 10 s, 20 s, 30 s, 60 s and 90 s, did not seem to influence the estimation error of the gyroscope bias owing to the use of the VDM and direct IMU measurements during the outage. Further, large roll rotation rates reaching 60°/s during the GNSS outages did not seem to influence the estimation of the gyroscope bias following the convergence of the filter.

The RMS of the mean error of 22 VDM parameters is presented in Figure 11. A GNSS outage alone lasting 10 s, 20 s, 30 s, 60 s or 90 s did not seem to influence the VDM parameter estimation error. However, turning during a GNSS outage actually led to improved observability of the VDM parameters, thanks to the availability of IMU measurements during this period. Further, a low roll rotation rate of 15°/s led to slightly better observability of VDM parameters as opposed to 60°/s, but the difference was just 0⋅5%.

Figure 12 shows the RMS of wind magnitude errors. The VDM approach provided the capability to estimate wind velocity, which in turn improved the navigation solution during GNSS outages as opposed to an INS/GNSS approach. It was found that GNSS outages lasting less than 60 s did not have a significant influence on the estimated wind magnitude error. With a GNSS outage lasting 90 s (fifth outage), the error in the estimated wind magnitude was found to grow gradually, reaching 0⋅2 m/s at the end of the fifth outage. The level of dynamics, especially in the roll axis, seemed not to influence the growth of wind magnitude error significantly.

## 6. Conclusions

The error characteristics of a VDM approach using IMU and GNSS measurements have been presented. The position error was found to grow proportionally with roll rate for an extended GNSS outage lasting 90 s. Attitude errors were not significantly influenced by GNSS outages lasting up to 60 s, with extended outages (90 s) mainly influencing yaw error. Further, it was found that VDM parameters remain observable during a GNSS outage provided the aircraft manoeuvres during this period. Also, it was found that the level of dynamics in the roll axis did not seem to influence the growth of wind magnitude errors significantly. The presented architecture has shown superior navigation performance with varying roll rates as opposed to an INS/GNSS approach operating with a fairly modest rate of 15°/s during GNSS outages. The approach has the potential to work alongside and even replace (at certain times, such as during an extended GNSS outage) the conventional INS/GNSS integration, especially in low-cost applications where the aircraft could experience rapid dynamics or multipath path effects causing GNSS outages. Such applications include aerial mapping and surveying, inspection of wind turbines, and search and rescue operations in mountainous areas. The real-time implementation of the architecture is the subject of future research, including further investigation into the influence of measurement delay and control input noise on the error characteristics.

## Acknowledgements

The authors would like to thank the INNOVATIVE doctoral programme for funding the work. The INNOVATIVE programme is partially funded by the Marie Curie Initial Training Networks (ITN) action (project number 665468) and partially by the Institute for Aerospace Technology (IAT) at the University of Nottingham.