^{*}

This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).

This paper presents a complete procedure for sensor compatibility correction of a fixed-wing Unmanned Air Vehicle (UAV). The sensors consist of a differential air pressure transducer for airspeed measurement, two airdata vanes installed on an airdata probe for angle of attack (AoA) and angle of sideslip (AoS) measurement, and an Attitude and Heading Reference System (AHRS) that provides attitude angles, angular rates, and acceleration. The procedure is mainly based on a two pass algorithm called the Rauch-Tung-Striebel (RTS) smoother, which consists of a forward pass Extended Kalman Filter (EKF) and a backward recursion smoother. On top of that, this paper proposes the implementation of the Wiener Type Filter prior to the RTS in order to avoid the complicated process noise covariance matrix estimation. Furthermore, an easy to implement airdata measurement noise variance estimation method is introduced. The method estimates the airdata and subsequently the noise variances using the ground speed and ascent rate provided by the Global Positioning System (GPS). It incorporates the idea of data regionality by assuming that some sort of statistical relation exists between nearby data points. Root mean square deviation (RMSD) is being employed to justify the sensor compatibility. The result shows that the presented procedure is easy to implement and it improves the UAV sensor data compatibility significantly.

Air vehicle sensor compatibility is a specific field of study dedicated to the estimation of onboard sensor errors. The sensor errors are usually described as the scale factors and the biases. The field is often discussed in the context of flight path reconstruction. The term “compatibility” refers to the consistency of the measured data with the force equations that govern the airdata (airspeed, AoA, and AoS), and the kinematic equations that govern the attitude angles (roll, pitch, yaw). If flight path reconstruction is to be discussed jointly, the navigational equations will be included. Sensor compatibility is often the first step of the so-called “two-step method” of aircraft system identification. The first step is the sensor data correction/estimation; the second part is the parameter estimation.

Research on the topic of aircraft sensor compatibility started as early as the 1970s. In 1976, Jonker [

In the age of the UAV, due to the advances in discrete time system identification techniques and control theories, identifying an accurate model that is coherent with the force equations and kinematic equations seems to be unnecessary. However, discrete time system identification techniques are unable to provide a good insight of an aircraft’s dynamics because the discrete time models are usually physically meaningless, no matter how well they agree with the real flight data. In addition to that, UAVs are usually smaller than manned aircrafts, and fly at lower velocities, and thus are very sensitive to the atmospheric turbulence which will result in a higher noise ratio in the flight data. Due to that, sensor compatibility correction is more important than ever if the dynamic characteristics of an UAV are to be investigated.

Motivated by the discussion above, this paper attempts to derive a procedure in order to perform compatibility correction on the flight data of the SP-80 UAV. The SP-80 UAV [

The following sections in this paper are organized as follows: first, Section 2 introduces the Spoonbill UAV system. In particular, the sensor system is described in detail. Section 3 reviews the force equations and kinematic equations. This is followed by Sections 4 and 5 which briefly elaborate the Wiener Type Filter and the RTS smoother. Section 6 presents the flight test data and initial data reconstruction and the next section explains the sensor compatibility correction procedure in detail. Then, the result of correction is discussed in Section 8. Finally, Section 9 draws the conclusions for the paper.

The Spoonbill UAV system used in this work is designed and operated by the RMRL for educational research purposes. The air vehicle used is designated as the SP-80, which has a high-wing, twin-boom, pusher engine configuration and the power plant is an 80 c.c. two stroke gasoline engine.

Before any discussion on the peripheral sensors can commence, it is worth mentioning that the GPS receiver, the AHRS, the wireless transceiver, and the video camera system are all off-the-shelf products, while the Sensor Integration Board (SIB), and the SMB were designed and fabricated in-house by the RMRL. The SMB is a crucial component of an autopilot system for it decodes the control signal from the pilot in Pulse Width Modulation (PWM) form during the manual flight mode, and it encodes PWM signal to control the air vehicle control surface actuators (servo motors) according to the command given by the onboard computer. The SMB is capable of decoding and encoding nine channels of PWM signals at a 20 Hz update rate. The pilot can easily cede flight control authority to the onboard computer by flipping a switch on the remote control radio. Regaining control of the air vehicle from the onboard computer is just as easy.

The peripheral sensors are divided into three major groups. The first group is the GPS. The GPS receiver is the Novatel OEMV-3. Unlike any other GPS receivers built for automobile navigation that normally operating at a maximum of 5 Hz, The Novatel OEM-V3 is capable of providing global position and ground speed at the rate of 20 Hz and is thus consistent with the sampling rate of other onboard sensors. The second group is the AHRS. It is a Crossbow AHRS440. The AHRS measures 3-axis accelerations, angular rates, and attitude angles. The attitude angle measurement is augmented by GPS information from the Novatel OEM-V3. The final group is the SIB. The SIB integrates all other sensors using microcontroller units (MCU). It is designed and fabricated in-house by the RMRL. The MCUs on the SIB are responsible to collect data from the corresponding sensors, perform signal conditioning on the data (such as data filtering), and pass the data to the onboard computer via RS232 protocol. Sensors included in the SIB are the differential air pressure sensor for airspeed measurement, absolute air pressure sensor for barometric altitude measurement, engine speed tachometer, AoA and AoS, and the touchdown sensors.

The SIB consists of two MCUs: the Master MCU and the Slave MCU. The Master MCU is the core of the SIB. It controls the data flow within the SIB and sends data to the onboard computer. There are two sensors built on the SIB: the SenSpecial SCPB-MB0/10D100i2c32667R5 digital differential pressure sensor, and the SenSpecial SCPB-mmHg525/825A100i2c32667R5 digital absolute pressure sensor. Both pressure sensors are connected to the air pressure tubes from the SpaceAge Control 101100-02 airdata probe. The airdata probe is mounted on the starboard wing, as shown in ^{2}C protocol, and calculates the airspeed and barometric altitude using the pressure readings and the following equations.

Where

_{0} = 9.80665^{2} is the gravitational acceleration at sea level

_{b}

_{b}^{−3}

_{0} is the total pressure in Newton per square meter (Pascal)

_{b}^{5} ^{2} is the sea level static pressure

^{*} = 8.31432

_{b}

_{0} −

The airdata probe is also built with two vanes, one for the AoA measurement, and another for the AoS. The vanes are basically two delicate potentiometers. The SIB provides the operating voltage to the vanes and senses the vanes’ movement through the Master MCU 12 bit analog-to-digital converters (A/D).

The onboard avionics are powered by a high capacity Lithium-Polymer (Li-Po) battery and the air vehicle control surface actuators (servo motors) are powered by high capacity Nickel-Cadmium (Ni-Cd) batteries. The Slave MCU reads the battery voltages via a built-in 10 bit A/D. In addition, it reads the pulse signal from the touchdown switches mounted on both main wheels of the air vehicle; such to determine the instant the air vehicle lifts off the ground and touches down. The most important function of the Slave MCU is to calculate the engine rotation speed. The opto interrupter mounted near the engine shaft generates a pulse per engine revolution. The Capture/Compare/PWM (CCP) interrupt of the Slave MCU detects the pulse and calculates the time taken between two pulses before converts it to revolution per minute (rpm). The Slave MCU sends the data string to the Master MCU upon Master MCU’s I^{2}C request.

The air vehicle translation and rotation dynamics are governed by two sets of ordinary differential equations (ODE), namely the force equations and the kinematic equations. Each set of these equations consists of three equations, and each equation governs the motion of one axis. The detailed derivation of the equations has been described well by Nelson [

The force equations as shown in

_{x}

_{y}

_{z}

^{−2} is the gravitational acceleration

It is also possible to describe the force equation in terms of the variation of airspeed, AoA, and AoS. The airspeed, AoA, and AoS are related to the body axis velocities as in

As a matter of fact, even though

The kinematic equations as shown in

The Wiener Type Filter [

_{l}^{th} frequency index

_{k}^{th} time step

_{k}^{th} time step

_{k}^{th} time step

_{k}^{th} time step

The next step is to define the true signal model and noise model. It is important to know that the filter consists of weighting indices range from 0 to 1, where 0 indicates total rejection and 1 indicates otherwise. Thus, it is ideal when the filter equals to 0.5 as the frequency index then corresponds to the cutoff frequency. Plus, as discussed by Morelli, it is best to describe the true signal model being proportional to ^{−3}. Given the form of the Wiener Type Filter as in

_{l}^{th} frequency index

_{c,d} is the desired cutoff frequency

_{s,k} is the filtered modified measurement at ^{th} time step

_{c} is the frequency index corresponds to the cutoff frequency

_{l}^{th} frequency index

_{l}^{th} frequency index

_{l}^{th} frequency index

The RTS Smoother [

The EKF is literally one of the most widely used state estimation methods due to its simplicity. The EKF is derived from the standard Kalman Filter. The Kalman Filter is derived based on linear systems, but the EKF works for nonlinear systems by performing linearization about the current estimates.

Over the years, different forms of EKF have been proposed, namely the continuous time EKF, discrete time EKF, and the continuous-discrete EKF. Since the force equations and kinematic equations are continuous time equations and the flight test measurements are discrete, the continuous-discrete EKF is used for the work presented in this paper. The continuous-discrete EKF is presented here as

Given a nonlinear continuous time dynamic system with discrete time measurement, of which the measurement and process noise are Gaussian distributed:

_{k}

The prediction phase:

The updating phase:

_{k}_{k|k−1}

_{k−1})= _{k−1| k−1}

_{k}_{k|k−1}

_{k}_{−1}) = _{k−1| k−1}

_{k−1} to _{k}:

It is important to know that the EKF needs predefined _{0|0}, _{0|0} for initialization. It is acceptable to assign _{0|0} arbitrarily, however, the values must be large enough to allow good tracking of the parameters. If the states are measured, _{0|0} can be specified by taking the average of the first few data points.

The backward recursion works backwards in time. The combination of a forward pass estimator (EKF) and a backward recursion is considered to have utilized all available information [

_{k|n} is the corresponding state error covariance matrix

_{k|n} is the smoothed states of ^{th} time step

The flight test data were collected through a series of flight tests. In the flight data acquisition process, it is desirable to maneuver the air vehicle such that the flight data contain sufficient information to represent the dynamics of the air vehicle. The maneuvers chosen to fulfill the objective of this work were a multiple-input design. Due to its simplicity, time-skewed doublet inputs like those used in 2008 by Lee

As shown in

The initial condition of the designed flight maneuver has to be trimmed flight condition. Due to the complexity of the maneuver and the difficulty for the ground pilot to ensure a trimmed flight initial condition, the maneuver was executed by the onboard computer. The ground pilot flew the SP-80 UAV to a desired altitude and remained straight and level flight before switching the control authority to the onboard computer. Once switched, the onboard computer maintained the air vehicle in trimmed straight and level flight for 5 seconds. After that, the designed maneuver was executed and the ground pilot switched it back to manual flight no less than 5 seconds after the maneuver. The desired altitude was about 300 m above ground. Since the air vehicle remained at open-loop control during the maneuver, the 300 m altitude gave the ground pilot enough time to react to any unexpected outcome while the air vehicle remained in the pilot’s eyesight.

It is desirable to perform the flight test under absolutely windless conditions, but this is utterly impossible. Thus, the flight tests were conducted in nearly windless environment and the maneuvers was executed in both head wind and tail wind directions to minimize the crosswind effect.

The flight data reconstruction is accomplished by implementing the 4th order Runge-Kutta method. The accelerations and angular rates are the inputs; the airdata, and attitude angles are the outputs. The 4th order Runge-Kutta method is summarized as

Multiple sets of flight data were collected and each data set is designated in this paper in the following format:

From

Similar inferences were made on

The sensor compatibility correction procedure as illustrated in

The AHRS body axes and the air vehicle body axes coincide.

The airdata probe is located near to the center of gravity such that position correction is unnecessary.

Since the AHRS is not exposed to the environment, the AHRS readings (accelerations, angular rates, and attitude angles) are less affected by atmospheric turbulence, and the noises (not the biases) are high frequency noises that can be effectively filtered by a frequency filter.

Due to the high compatibility of the attitude angles, the biases of the angular rates are negligible.

The noises or errors of different variables are not inter-correlated.

The noises distributions are Gaussian.

As seen in the right portion of

The RMSD between the measured and reconstructed airdata and attitude angles are calculated. This is the RMSD before the correction:

_{d}

_{1} is the first data

_{2} is the second data

_{1,i} is the i^{th} element of the first data

_{2,i} is the i^{th} element of the second data

The left portion of

Under the assumptions discussed in the previous section, the RTS problem formulation is as shown in

_{xM} is the measured X-axis acceleration

_{yM} is the measured Y-axis acceleration

_{zM} is the measured Z-axis acceleration

_{ax} is the X-axis acceleration measurement bias

_{ay} is the Y-axis acceleration measurement bias

_{az} is the Z-axis acceleration measurement bias

It was assumed that the noises are not inter-correlated in order to simplify the noise covariance matrices estimation. Hence, the task is to estimate the diagonal terms of the matrices, namely the variances. The measurement noise variances of the airdata are estimated from the speeds measured by the GPS. Unlike the airdata, the GPS speed measurements are less noisy. That is because the GPS doesn’t measure speed by interacting with the relative airflow like the airdata probe does. In addition, the atmospheric turbulence is the major contributor to the airdata noise or error. One might argue that it is impossible to accurately estimate the airdata measurement noise variances from the GPS speed measurements because the airdata are relative to the wind, but the GPS measurements are relative to the ground. But it is later demonstrated that the GPS speed measurements are sufficient to fulfill the purpose.

The GPS speed measurement would have to go through a series of coordinate transformations before any noise variances estimation is possible.

_{hor,gps}

_{E,gps}

_{N,gps}

_{U,gps}

_{D,gps}

_{gps}

_{gps}

_{gps}

_{gps}

_{gps}

_{gps}

The airdata estimations given by ^{th} airspeed measurement deviate from its local expected value. The local expected value is the mean of airspeed measurements from (^{th} to (^{th} time steps. Similarly, in the second portion of the equation, the deviation of the ^{th} GPS total speed from its expected value is calculated. The difference between these two deviations gives the estimated noise of the ^{th} airspeed measurement. One can control the local expected values by changing

Once the airdata measurement noises are estimated using ^{th} airspeed measurement noise variance is calculated by accounting a sample with sample size of (2

Under the assumptions given in Section 7.1, the measurement noise covariance is a diagonal matrix and the attitude angles measurement noise variances are zeros after the implementation of the Wiener Type Filter. Hence, the measurement noise covariance matrix is in the following form:

On the other hand, the process noise is mainly contributed by the accelerations and the angular rates. If the second assumption in Section 7.1 is valid, the process noise covariance matrix shall be a zero matrix since the data has already been filtered by the Wiener Type Filter. However, a zero process noise covariance matrix will lead the RTS smoother to a singularity. Thus, the process noise covariance matrix was chosen to be a diagonal matrix with very small diagonal terms as shown in

High degree of similarities is demonstrated on the angular rates and attitude angles. Comparing

This paper presented an easy and straightforward procedure for implementing sensor compatibility corrections for fixed-wing UAVs. The procedure implemented the Wiener Type Filter, the RTS Smoother, and an airdata noise variances estimation method. The Wiener Type Filter was introduced to filter out the high frequency noises of the flight data, thus simplifying the measurement noise matrix and process noise matrix estimation. The RTS Smoother serves as the main correction algorithm. It is a two pass algorithm that combines the EKF and a backward recursion. The airdata noise variances estimation method accomplishes its purpose using the GPS speed measurements.

The sensor data compatibility correction procedure has been successfully implemented on real flight data recorded on the SP-80 UAV of the RMRL. Initial data reconstruction shows that the compatibility is poor and the airdata is far much noisier than the AHRS data due to the exposure of the airdata probe to the atmospheric turbulence. It was assumed that the AHRS data noises only consist of high frequency noises and the noises can be effectively filtered by the Wiener Type Filter. Also, due to the high compatibility of the attitude angles, it was assumed that the biases of the angular rates are negligible. Since the airdata is corrupted by atmospheric turbulence, the Wiener Type Filter was unable to suppress all the noises. Thus, relatively accurate airdata noise variances are needed. The airdata noise variances estimation method brings about the concept of data regionality. Under this concept, the data around a particular data point are assumed to have statistical relation with the data point. This has allowed the estimation of the expected value and variance at any particular data point by taking the data around the data point into account. This concept might not apply universally to all problems, but it has adequately fulfilled its purpose for the work presented in this paper.

After the correction, significant sensor compatibility improvement, especially on the airspeed data has been demonstrated. The improvement of the airdata compatibilities is mainly contributed by the estimation of the acceleration biases by the RTS. On the other hand, the Wiener Type Filter contributes to the improvement of attitude angle compatibilities.

The main benefit of the sensor data compatibility correction is to provide better data reliability, which leads to a better understanding of the dynamics of an air vehicle. Such a correction procedure is essential if an accurate dynamic model is to be identified using the flight data. The Wiener Type Filter and RTS are both batch (offline) methods. Future improvement to the procedure could include the implementation of a real-time (online) algorithm. Being able to perform sensor compatibility correction in real-time could help improve the robustness of the autopilot system for both manned and unmanned vehicles.

This work is supported by the National Cheng Kung University, Taiwan, R.O.C. under grant number, D98-3340 and D99-3340, under the Ministry of Education’s 5Y50B Special Funding, and by National Science Council of Taiwan under the Contract No. NSC 98-2221-E-006-134-MY3.

The SP-80 UAV.

The onboard system.

Spoonbill UAV System architecture.

Sensor Integration Board architecture.

Orthogonal square-wave inputs.

The compatibility correction procedure.

Airdata noise variance of

Airdata noise variance of

Comparison of RMSD before and after correction of

| |||
---|---|---|---|

2.9855 | 0.3373 | 88.70 | |

1.3855 | 0.3490 | 74.81 | |

2.3143 | 0.7520 | 67.51 | |

1.0314 | 0.3086 | 70.08 | |

0.5413 | 0.2121 | 60.82 | |

0.8486 | 0.4190 | 50.62 |

Comparison of RMSD before and after correction of

| |||
---|---|---|---|

3.3453 | 0.0751 | 97.76 | |

1.7380 | 0.4319 | 75.15 | |

2.6914 | 0.9741 | 63.81 | |

0.7183 | 0.3625 | 49.53 | |

0.4090 | 0.2138 | 47.73 | |

1.6547 | 0.3729 | 77.46 |