1. INTRODUCTION
Inertial Navigation Systems (INS) have enjoyed widespread growth in recent years, which mainly rely on technological maturation. Rapid developments of Micro-Electromechanical Sensors (MEMS) and improved performance of computers have expanded existing domains to new applications (Wei and Wang, Reference Wei and Wang2013). These sensors are mainly used in small systems with high-performance requirements which are aided by better computational techniques in more powerful computers. Availability, lower cost, compactness and reliability of MEMS have encouraged researchers to investigate a wide variety of new applications (Groves, Reference Groves2013; Kamal et al., Reference Kamal, Abdel-Hafez and Jarrah2014). A navigation system, generally, computes velocity, position, and attitude of a vehicle with respect to a reference frame, and passes them to the guidance and control systems. For example, it is possible to determine the position of a vehicle by a radio navigation system; using signals emitted from several sources at different times. Navigation systems are generally classified in two main groups (Noureldin et al., Reference Noureldin, Karamat and Georgy2012); (1) Systems based on relative calculations (dead reckoning), and (2) Position fixing systems. In the first group, each point is determined by exploitation of its displacement from the previous point. This means it is necessary to have precise information about position of the previous point and its displacement. Inertial navigation systems are categorised in this group. The method is based on consecutive measurement of displacement while the position of the starting point is definite. In the second group, in contrast to the first, position of each independent point is determined in advance. Thus, acceptable positioning is not a function of the aforementioned error magnitudes (e.g. error does not grow by time). Radio navigation systems are usually categorised in this group, of which Global Navigation Satellite Systems (GNSS) are the most versatile types.
Schmidt et al. (Reference Schmidt, Savage, Van Bronkhorst, Catford and Levinson1978) calculated parameters of a gimbaled and strap-down navigation system in detail. They also exploited a nine-state-variable Kalman Filter (KF) in addition to a barometric altimeter to correct the estimated altitude. In 1994, an attitude estimation system for a vehicle, based on inertial sensors, was published. The authors determined position by a combination of two main methods. The first method was based on measuring gravitational acceleration and the second one worked on the combination of the attitude differential equations and angular velocities measured from gyroscopes (Vaganay and Aldon, Reference Vaganay and Aldon1994). Randle and Horton (Reference Randle and Horton1997) described a combination of INS/Global Positioning System (GPS) with a low-cost Inertial Measurement Unit (IMU), with the usage of MEMS sensors, accompanied by their calibration. Grewal et al. (Reference Grewal, Weill and Andrews2007) presented performance analysis of a KF-based INS/GPS integration via practical exercises. Likewise, Kumar and Jann (Reference Kumar and Jann2004) used the Extended Kalman Filter (EKF) to combine signals produced by three orthogonal accelerometers beside a two-axis magnetometer. Moreover, Schultz (Reference Schultz2006) analysed the performance of INS/GPS integration. In addition, Ding (Reference Ding2008) focuses on problems in modelling and implementation of an INS/GPS integration such as synchronisation, raw INS measurement noises, adaptive Kalman filter, and fusion of an INS sensor with an independent GPS receiver. Veremeenko and Savel'Ev (Reference Veremeenko and Savel'Ev2013) studied an INS for an Unmanned Aerial Vehicle (UAV). This research introduced a method for setting initial parameters of an on board INS for a UAV. Moreover, Catlin (Reference Catlin2012) covers some topics, one of which is dedicated to a discrete Kalman filter and the other focuses on two important applications of Kalman filter: random control, and smoothing.
Generally, according to our literature review, in all navigational research and applications, outputs of inertial sensors (e.g. accelerometers, gyroscopes …) and their integrals are used to compute state variables of the vehicle. In other words, in traditional methods, acceleration is assumed to be constant during each time-step, and through two successive integrations, position of the system is determined. It is stressed that the novelty of the current work returns to incorporation of jerk and jounce as state variables, while jounce is assumed to be constant at every time-step. To do that, it is necessary to compute the first derivative of acceleration, namely jerk, through numerical differentiation of the accelerometer measurements. Implementing this idea in a Kalman filter has a constructive effect on the precision of positioning in an exemplar aerial vehicle, which is presented in relevant graphs. In this regard, the Prediction and Observation models, besides their Jacobian matrices in the original Kalman filter are corrected.
2. KINEMATICS OF JERK AND JOUNCE
As stated before, in this work we will utilise the first and second derivatives of acceleration (jerk and jounce) to improve the positioning accuracy of a quad-copter. The elementary concepts on kinematics of jerk and jounce is attainable in Visser (Reference Visser2004) and Gibbs et al. (Reference Gibbs and Gragert1998). The first derivative of acceleration is known with terms jerk, jolt, surge, and lurch, of which the first one is in common use. Jerk is the temporal rate of change in the amount of acceleration that is incarnated as its time-derivative. It can be calculated by the second and third derivation of velocity and position, respectively as noted below:
The fourth time-derivative of position and first, second and third time derivatives of, respectively, jerk, acceleration, and velocity is called jounce or snap. In other words, jounce is time-derivative of jerk and adheres to the following equation:
The following equations describe a constant-jounce kinematic problem, which is utilised in this work:
where
$\vec{s}$
is the constant-jounce term,
$\vec{j}_{0}$
initial jerk,
$\vec{j}$
final jerk,
$\vec{a}_{0}$
initial acceleration,
$\vec{a}$
final acceleration,
$\vec{v}_{0}$
initial velocity,
$\vec{v}$
final velocity,
$\vec{r}_{0}$
initial position,
$\vec{r}$
final position, and t the specified time. The reader should not confuse notation
$\vec{s}$
with the displacement vector in other texts. By applying the first and second derivative in the Kalman filter, we achieve Figure 1. As seen, jerk and jounce augment the state-space vector in the first stage of estimation loop (prediction) and are distributed to the other stages through Jacobean and Covariance matrices.
Implementation of the first and second derivatives of acceleration on KF.
3. MODELLING AND MECHANISATION OF THE SINS
Because, in this work, SINS is exploited as the main navigational tool, a detailed description is given here. An INS is a self-dependent navigation method in which relative position and direction of motion is measured using data provided by an accelerometer and gyroscope. This method utilises the Dead-Reckoning (DR) principle, which helps to estimate current position of a vehicle from the history of position, accelerations and angular velocities of inertial sensors. An Inertial Measuring Unit (IMU) usually consists of three gyroscopes and three orthogonal accelerometers. Angular rates are used for calculating platform attitude via pitch, roll and yaw and transferring navigational parameters from the body frame to the navigation frame. The function of an INS is based on classical Newtonian mechanics laws. Specific acceleration is the output of an accelerometer, and three orthogonal accelerometers are usually present in an IMU (each directed toward a coordination axis). An INS can be considered as three main units: an Inertial Measurement Unit (IMU), a pre-processing unit, and a mechanisation module. As stated, in our effort, noise and perturbations are omitted from signals by implementation of a pre-processing filter. These signals are then fed into mechanising algorithms to find position and attitude parameters.
An on board mechanism makes it possible to determine state variables (i.e. position, velocity, acceleration) from initial values (accelerations and angular velocities) through solving differential equations describing system dynamics. Imperfect inertial data are measured in the Body frame which are relative to the Earth-Centred-Inertial (ECI) frame. Each method for SINS is described by a system of differential equations in the navigation frame (standard NED (North-East-Down)). Differential equations of SINS (Reinstein, Reference Reinstein2010) are described as follows:
where
in which subscripts and superscripts b, n, e and i denote the Body, Navigation, Earth-Centred-Earth-Fixed (ECEF), and ECI frames, respectively, and
$C_{y}^{x}$
refers to transformation from y to x frames. Figure 2 presents the related classic diagram of the SINS. Appropriate selection of coordinate frames and transformation between them are essential in developing navigation algorithms. As previously hinted, inertial sensors measure movement related to an inertial frame, while strapdown navigational values are expressed in the body frame, and then transformed into the navigation frame. To transform measurements between the frames efficiently, we need to have sufficient information about them. In this work, the ECEF/e-frame is used for the vehicle's position mechanisation. Moreover, the vehicle's Euler angles are expressed in the navigation frame (NED). This frame is used to show attitude and velocity of the robot on the earth or in its vicinity. Its origin coincides with the Navigation frame and its x, y and z-axes are respectively pointed to the north, east and down directions. In the current work, by means of strapdown systems, experimental data (accelerations and angular velocities) are measured in the body frame where it is defined to lie on sensitivity axes of sensors and adheres to the right hand rule.
Classic diagram of SINS.
As mentioned in Grewal et al. (Reference Grewal, Weill and Andrews2007), the KF is based on the supposition that type, number and characteristics of sensor noise is determined statistically and combined optimally. Based on this concept, some general restrictions on picking out the sensors in the current work are as follows. Frequency response of the sensor must be compatible with signals initiated by the state variable. Then sensor noise spectrum must be separable from the spectrum-state system. In addition, sensors are chosen regarding the observability of the system; i.e. the system states must be determinable and detectable by magnitudes. Covariance analysis of the KF and observability analysis is done for each combination of sensors for optimising the performance of the KF. Moreover, errors in accelerometers and gyroscopes results in a steady increment of error in components of position and velocity of the flying vehicle, due to integration. Therefore, the utilised SINS should be augmented by an external source to ameliorate the problem of the errors which disturb navigation solutions, such as bias, drift, scale factor deviations and external disturbances. These errors are a major concern in the navigation process and make correct calibration a necessity. In addition, in the current work, calibration of the sensors is performed manually and without any technical equipment.
4. ESTIMATION AND FILTERING PROCESS
The accuracy of SINS is always affected by inertial sensor errors. To decrease these errors, sensor data are passed through the system's filter just before initiation of navigation calculations. Depending on mission needs, different filters can be used. In this section, the implemented filters in this work are introduced.
4.1. The Complementary Filter (CF)
It is possible to find angular positions of a system using information from either accelerometers or gyroscopes. Nevertheless, both sensors suffer from considerable deficiencies, which necessitates incorporating suitable filters. CF is one of the most primitive methods for fusing information from accelerometers and gyroscopes. This filter utilises data from the gyroscope in the short term, thanks to its premium accuracy and insensitivity to external forces. On the other hand, accelerometer data are eligible for long term errors and do not deviate considerably, which makes them suitable for the filter. CF is composed of a low-pass filter to attenuate short term oscillations of accelerometers beside a high-pass filter to compensate for angular deviations of gyroscopes. Here, just a low-pass filter is used for data measured by the accelerometers (Lacanette, Reference Lacanette1991). In the following, we will describe implementation of the utilised discrete low-pass filter. A large number of digital filters are designed to show low-pass properties. Responses of both bounded and unbounded impulses from low-pass and Fourier transformation filters are very common. By regarding Figure 3 and observing Kirchhoff Laws, an electrical circuit including capacitors is defined as below (Cartwright et al., Reference Cartwright, Russell and Kaminsky2012).
Electrical circuit for a low-pass filter.
This equation can be discretized. For simplification, it is supposed that internal and external samples are located at points at the same time intervals Δ T. The samples in v
in
are
$\lpar x_{1}\comma \; x_{2}\comma \; \ldots\comma \; x_{n}\rpar $
while in v
out
are
$\lpar y_{1}\comma \; y_{2}\comma \; \ldots\comma \; y_{n}\rpar $
, which is in correspondence to temporal points. By substitution, this yields:
Then rearrangement produces a recursive relation as follows:
in which the first term is input and the second one is output at the previous step. This formula is a discrete-time implementation of a simple Resistor–Capacitor (RC) low-pass filter for the exponentially weighted moving average circumstances:
in which:
This is defined based on a smoothing factor:
$0\le \propto \le 1$
. Factor ∝ results in equivalency of time constant RC in terms of sampling periods Δ T and smoothing factor ∝ itself:
It needs to be noted that:
where it is the cut-off frequency and therefore we have:
Then, f c and ∝ are related through the following equation:
which gives:
For ∝ = 0.5, time constant Δ T is equal to the sampling period. When
$\propto \ll 0.5$
, RC is greater than sampling period and we have
$\Delta T\approx \propto R$
.
4.2. The KF
Regarding the preceding discussions, a SINS is affected by sensor errors, installation, assembling method and computational algorithms. This problem is worsened in low-cost MEMS sensors that are easily deviated. Due to multiple stochastic errors, these sensors show a poor performance when used independently. Main errors include accelerometer and gyroscope deviations. To improve accuracy of an INS, uniform time intervals K need to be chosen in a manner such that stochastic errors of the system can be estimated as biases. KF is an estimation algorithm to find optimum state errors of a system infected by noise. This filter is an ordered-recursive algorithm, which provides an optimum estimation of minimum variance of average from state errors. In addition, a KF produces real-time statistical data by estimating error states that are applicable in a quantitative error analysis (Wei and Wang, Reference Wei and Wang2013; Dove and Miller, Reference Dove and Miller1989).
4.2.1. Discrete-time KF
A discrete-time linear system is defined as below (Noureldin et al., Reference Noureldin, Karamat and Georgy2012; Dove and Miller, Reference Dove and Miller1989):
in which, x k , Φ k, k−1, G k−1, w k−1, and k are state vector, State Transformation Matrix (STM), error distribution matrix, process noise vector, and the step number, respectively. While, noise source may affect more than one component of the system state vector, a distribution matrix of noises G is introduced which can show the presence of noise in several components of the state variables. Linear equations for system measurements in a discrete time domain are as follows:
in which z k is the system's output vector, Hk design or observation matrix and ηk process noise. As seen in Figure 4, setting up a filter involves two general tasks: (1) prediction or time update, and (2) correction or measurement update. In the prediction section, the system model is applied to propagate both current state of system and the related covariance estimation through k to k − 1 stages. Then in the correction phase, measurements are used for updating the prior predictions.
Combination of Kalman filter, jerk, and jounce with measurement model and the discrete process.
4.2.2. Time update or prediction
Estimating a system state x in time k by only information from time k − 1 is called
$\hat{\hbox{x}}_{k}\lpar -\rpar $
. While system noise due to the assumptions of Gaussian distribution has zero mean value, the best prediction of system state at time k is as noted below:
$\hbox{x}_{{\rm k-1}}\lpar +\rpar $
is the optimum state estimate in the previous step which is called a prior estimate and is constructed based on the process model presented by
$\Phi_{{ k}\, \vert\, {k}\hbox{-}1}$
STM. Kalman filter also propagates uncertainties of its estimation from step k-1 to k in form of covariance matrix
$\hbox{P}_{\rm k}\lpar -\rpar $
that is also called a prior covariance matrix:
where,
$P_{{\rm k}-1}\lpar +\rpar $
is the optimum estimate of covariance in the precedent step, which is a corrected (posteriori) estimate of covariance matrix; based on the measurement in step k − 1. It is noted that a predicted (priori) covariance matrix
$\hbox{P}_{{\rm k}}\lpar -\rpar $
depends on both process noise and posteriori covariance matrix
${\hbox{P}}_{{\rm k}-1}\lpar +\rpar $
.
4.2.3. Measurement Update (Correction)
After the state has been predicted by KF, the estimation is corrected by a measurement provided by external sources. Firstly, based on Rk measurement covariance, a weighing factor named Kalman gain is calculated so the Root Mean Square (RMS) error obtains a minimum value:
In fact, KF is distinguished from other algorithms by this gain. As seen in Equation (26), K depends on both former covariance
$\hbox{P}_{{\rm k}}\lpar -\rpar $
and measurement noise covariance. For measurements affected by noise (as Rk increases) or when process noise is smaller (for decrement of
${\hbox{P}}_{{\rm k}}\lpar -\rpar $
), Kalman gain is augmented or shrunk, respectively. When a new measurement of Zk was obtained at time
${\hbox{t}}_{{\rm k}}$
, it is compared to predicted measurement
$\hbox{H}_{{\rm k}}\hat{\hbox{x}}_{{\rm k}}\lpar -\rpar $
based on a former state estimate. K weights their difference and prediction-update of the state vector is done to have an optimal estimate. Therefore, estimate of state in time tk is
in which
$\hbox{H}_{{\rm k}}\hat{\hbox{x}}_{{\rm k}}{\lpar -\rpar }$
is the predicted observation represented by
$\hat{\hbox{x}}_{k}$
, while
$\hbox{z}_{{\rm k}}-\hbox{H}_{{\rm k}}\hat{\hbox{x}}_{{\rm k}}\lpar -\rpar $
is called the innovation sequence. Based on K, Kalman filter updates uncertainty of the new prediction
$\hat{\hbox{x}}_{k}\lpar +\rpar $
is as below:
5. LOOSELY COUPLED SINS/GNSS INTEGRATION
GPS and INS each have several pros and cons. INS is a self-dependent navigation system, which is usually utilised in the band of 200–1000 HZ in aerial missions; however, in some applications it may be used at a lower frequency than 200 HZ. It has an acceptable short-term accuracy and produces information on attitude (in addition to position and velocity). However, over the long term, INS errors accumulate due to the integration of measurements to obtain velocity and position. In contrary to INS, GNSS has a good long-term accuracy (with errors in the order of a few metres) and is supported by low-cost hardware. Meanwhile, its short-term accuracy and rate of output information is lower than INS. Originally, GNSS receivers did not provide attitude information, but using auxiliary hardware and software, this can be achieved. To employ a GNSS receiver, at least four satellites must be in direct line of sight, which is interrupted in some situations like being obscured by objects (e.g. constructions, trees, tunnels) or signal attenuation in atmospheric layers (Grewal et al., Reference Grewal, Weill and Andrews2007). It is worth mentioning that the atmosphere introduces large errors to GNSS computations, but it does not affect the line-of-sight situation. By using complementary properties of these two systems, their cooperation covers defects of each one and provides an accurate and robust navigation solution. To exploit complementary properties of two systems, a variety of structures are conceivable to fuse them for highest effectiveness, simplicity of usage and robustness of which loosely coupled, tightly coupled and ultra-tightly (deeply) coupled structures are the most important (Noureldin et al., Reference Noureldin, Karamat and Georgy2012). In this paper, a loosely coupled structure is preferred in which INS and GNSS act independently and provide separate navigation solutions. The INS solution is applied to a filter, where the filter determines the difference between two solutions and estimates INS error based on error function. The INS solution is corrected using this error to yield total navigation solutions for position, velocity and attitude. The distinctive feature of this configuration is exploitation of a separate filter for GNSS. A block diagram of the loosely coupled INS/GNSS integration is given in Figure 5. It is pointed out that, in this work, two distinct KFs are operated successively; the first one is implemented in attitude estimation, and the second one updates position, velocity, jerk and jounce state variables.
Block diagram of loosely coupled SINS/GNSS data fusion.
5.1. Attitude Estimation
To enhance robustness of the attitude estimation process, both magnetometers and accelerometers are used in the observation of the Classical Euler angles. The process model in attitude estimation, which is used for prediction of roll, pitch, and yaw angles, exploits angular rates as input variables in the Body frame, and updates the former estimation of the Euler angles. The mathematical model for prediction of current attitude states is considered as follows:
$$\eqalign{\left[{\matrix{ \varphi \cr \theta \cr \psi \cr}}\right]_{k} & =\left[{\matrix{ 1 & 0 & 0 \cr 0 & 1 & 0 \cr 0 & 0 & 1\cr}}\right] \left[{\matrix{\varphi \cr \theta \cr \psi \cr}}\right]_{k-1} +\left[{\matrix{ dt & sin\varphi tan\theta dt & cos\varphi tan\theta dt \cr 0 & cos\varphi dt & -sin\varphi dt \cr 0 & \displaystyle{{sin\varphi dt}\over{cos\theta}} & \displaystyle{{cos\varphi dt}\over{cos\theta}}\cr}}\right]_{k-1} \left[{\matrix{p \cr q \cr r \cr}}\right]_{k-1} \cr & \quad + w_{k}, w_{k}\sim N(0,Q_{k})}$$
in which
$ \varphi, \theta, \psi $
are Euler angles, p, q, r are angular rates from gyroscopes and w
k
is the process noise. In the following lines, the mathematical model in the observation process of Euler angles, based on magnetometer and accelerometer measurements is presented. Concisely, the overall format and notations of the model are similar to Equation (23). Hence, the state variables and the observation matrix are considered as follows:
$$H=\left[{\matrix{ 1 & 0 & 0 \cr 0 & 1 & 0\cr 0 & 0 & 1\cr}}\right]$$
Furthermore, the observation vector and the related elements are considered as noted below:
$$\varphi_{acc}=-arcsin\left(\displaystyle{{a_{y}}\over{{(a_{x}^{{\rm 2}}+a_{y}^{{\rm 2}}+a_{z}^{{\rm 2}})}^{{\rm 0.5}}}}\right)$$
$$\theta_{acc}=arcsin\left(\displaystyle{{a_{x}}\over{{(a_{x}^{{\rm 2}}+a_{y}^{{\rm 2}}+a_{z}^{{\rm 2}})}^{{\rm 0.5}}}}\right)$$
where a
x
, a
y
, a
z
are components of accelerometer measurements, m
x
, m
y
are elements of magnetometer measurements and
$\varphi _{acc}\comma \; \theta_{acc} \comma \; \psi_{mag}$
are roll, pitch, and yaw angles in the observation vector, respectively.
5.2. Constant Acceleration Process Model
The state vector of the process dynamic model, which is used for loosely coupled fusion method and utilised in the absence of the first and second derivatives of acceleration, is brought as follows. It constitutes Position, Velocity and Attitude (PVA) components along coordination axes.
Dynamic coefficient matrix Φ without first and second derivative theories is as below
$$\Phi=\left[{\matrix{1&0&0& dt&0&0&\displaystyle{{dt^2}\over{2}}&0&0\cr 0&1&0&0& dt&0&0&\displaystyle{{dt^2}\over{2}}&0\cr 0&0&1&0&0& dt&0&0&\displaystyle{{dt^2}\over{2}}\cr 0&0&0&1&0&0& dt&0&0\cr 0&0&0&0&1&0&0& dt&0\cr 0&0&0&0&0&1&0&0& dt\cr 0&0&0&0&0&0&1&0&0\cr 0&0&0&0&0&0&0&1&0\cr 0&0&0&0&0&0&0&0&1\cr}}\right]$$
5.3. Constant Jounce Process Model
For attaining the goal of this research, the state vector of the Kalman filter is defined as below in which third and fourth derivatives of position are jerk and jounce which are treated as state variables.
The system transmission matrix is shown in the following equation:
5.4. Observation Model
For both of the abovementioned cases, the observation model is the same, where the observation vector is proposed as:
In addition, the observation design matrix H is in a form as noted below:
$$H=\left[{\matrix{1&0&0&0&0&0&0&0&0&0&0&0&0&0&0\cr 0&1&0&0&0&0&0&0&0&0&0&0&0&0&0\cr 0&0&1&0&0&0&0&0&0&0&0&0&0&0&0\cr 0&0&0&0&0&0&0&0&0&0&0&0&1&0&0\cr 0&0&0&0&0&0&0&0&0&0&0&0&0&1&0\cr 0&0&0&0&0&0&0&0&0&0&0&0&0&0&1\cr}}\right]$$
In the following section, test results and the related practical aspects of the work are discussed.
6. TEST RESULTS
As mentioned previously, we aim to improve positioning accuracy of a flying robot through implementation of the first and second derivatives of acceleration in a navigation unit. Here an in-house-built quadrotor, equipped with an Ardupilot® and MPU6050 IMU sensors, is used for flight tests, and can be seen in Figure 6. To obtain the required data for computations, the quadrotor flew (in an assisted manner) for 90 seconds and measurements from the IMU were extracted. Mission Planner is the user interface software implemented in Ardupilot® with a variety of options. It can export flight data with extension “kmz”, which is utilised in Google Earth®. The reference path for flight tests is demonstrated in Figure 7(a), and the outputs produced by the kmz-file, during the test, are shown in Figure 7(b). This figure presents a whole view of the flight path in Google Earth®. Furthermore, accelerometer data and their corrections by complementary filter is available in Figure 8. Accelerometers are at risk to a number of problems such as being affected by noise, which in this case is rather common, in low-cost sensors. As discussed earlier, to avoid this problem, a low-pass filter is implemented. In the following, Figure 9 exhibits outputs of the gyros along three coordination axes. As stated, another type of exploited sensors are magnetometers, which measure the direction and intensity of Earth's magnetic field for attitude observations. By exploitation of the components of the gravity vector, it is possible to compute only roll and pitch angles, since, rotation about the z direction of the body frame is not observable from the components of the gravity acceleration. Figure 10 depicts magnetometer signals resolved in the body frame. The first process model and measurements/observations for the KF is for attitude estimation of the flying robot and Figure 11 illustrates them. As seen, KF estimates and corrects angles, desirably. Subsequently, Figures 12 and 13 give estimations of jerk and jounce components along x, y, and z directions in the body frame. Figure 14 illustrates the performance of the proposed algorithm on positioning accuracy in two dimensions, in the directions of east and north. Furthermore, Figure 15 illustrates the altitude time history, which exhibits the performance of the proposed algorithm on altitude estimations. Once one compares the outcomes with the reference values and barometer measurements, it is realised that the augmented KF improves the altitude results. Finally, Figures 16(a) to 16(c) present estimation errors in the directions of east, north, and altitude. Similarly, the outcomes evidently show that the augmented KF with the proposed method has a better performance in positioning, while the figures repeat this supremacy in correction of longitude, latitude, and altitude measurements.
The exploited in-house-built quadcopter for flight tests.
(a) 2D plot of reference path, (b) demonstration in Google Earth®.
Accelerometer raw and filtered measurement data.
Gyroscope measurement data.
Magnetometer raw data.
Estimation of Classical Euler angles (roll, pitch, and yaw).
Estimation of jerk components along the Body frame's x, y, and z directions.
Estimation of jounce components along the Body frame's x, y, and z directions.
Estimated position components in the directions of East and North.
Time history of altitude variations relative to the starting point.
Position error in the directions of (a) East, (b) North, and (c) Up.
7. CONCLUSION
In this paper, the authors endeavoured to show the positive effectiveness of consideration of the first and second derivatives of acceleration in navigational problems. It was demonstrated that incorporation of inertial sensors with data provided from jerk and jounce of motion (third and fourth derivatives of position) improved the accuracy of position estimation of a flying robot. IMU and GNSS sensors, through SINS/GNSS integration were key features in fusing data through a KF to find an appropriate estimation of navigation parameters (e.g. position, velocity, and altitude). Velocity and position were computed from single and double integration of acceleration, respectively, which limited the prescribed errors. As a result, in most applications (especially in the presence of low-cost sensors), an auxiliary tool like GNSS and a barometric altimeter can be utilised for attaining dependable outcomes. The results of the experimental tests demonstrated the improved performance of the proposed method in positioning and estimating flight parameters (especially altitude) of a quadrotor. In summary, for the presented arrangement of sensors, the outcomes exhibit acceptable improvements in the navigational parameters; the enhancements vary from 10–50 cm for position, and 5–100 cm for altitude estimations. It is worth noting that, by exploitation of some sort of sensors that benefit from lower measurement errors for altitude such as a sonar/LIDAR, and/or higher data rates, the proposed method will exhibit accurate results to some extent, even in the absence of GNSS observations.
ACKNOWLEDGEMENTS
The authors acknowledge funding supported by Iran National Science Foundation (INSF) with grant No. 93013017.