Open Access
This article is

- freely available
- re-usable

*Sensors*
**2016**,
*16*(12),
2102;
https://doi.org/10.3390/s16122102

Article

Velocity-Aided Attitude Estimation for Helicopter Aircraft Using Microelectromechanical System Inertial-Measurement Units

Department of Aerospace Engineering, Sejong University, Seoul 143-747, Korea

^{*}

Author to whom correspondence should be addressed.

Academic Editor:
Stefano Mariani

Received: 21 September 2016 / Accepted: 6 December 2016 / Published: 11 December 2016

## Abstract

**:**

This paper presents an algorithm for velocity-aided attitude estimation for helicopter aircraft using a microelectromechanical system inertial-measurement unit. In general, high- performance gyroscopes are used for estimating the attitude of a helicopter, but this type of sensor is very expensive. When designing a cost-effective attitude system, attitude can be estimated by fusing a low cost accelerometer and a gyro, but the disadvantage of this method is its relatively low accuracy. The accelerometer output includes a component that occurs primarily as the aircraft turns, as well as the gravitational acceleration. When estimating attitude, the accelerometer measurement terms other than gravitational ones can be considered as disturbances. Therefore, errors increase in accordance with the flight dynamics. The proposed algorithm is designed for using velocity as an aid for high accuracy at low cost. It effectively eliminates the disturbances of accelerometer measurements using the airspeed. The algorithm was verified using helicopter experimental data. The algorithm performance was confirmed through a comparison with an attitude estimate obtained from an attitude heading reference system based on a high accuracy optic gyro, which was employed as core attitude equipment in the helicopter.

Keywords:

microelectromechanical system (MEMS); inertial-measurement unit (IMU); airspeed; attitude estimation; complementary filter## 1. Introduction

Attitude control is a fundamental component of a pilot’s control of a helicopter. The use of accurate attitude information is critical to that control. In the past, the mechanical gyroscope was commonly used in navigation equipment. Since then, the fiber optic gyroscope (FOG), or ring laser gyroscope (RLG), have become the most commonly used types of navigation equipment for attitude control. Recently, as the cost of the MEMS inertial sensors has decreased and its performance has improved, their range of utilization has broadened to include equipment used to estimate helicopter attitude. Algorithms for the use of the cost-effective MEMS inertial sensors are increasingly being developed. Many studies have employed the extended Kalman filter, which is often used in the aerospace field [1,2] and considers a linearized model. Nevertheless, its practical application is difficult on account of errors due to the model’s uncertainty and its lack of design intuitiveness [3,4,5].

On the other hand, a simpler type of complementary filter, which considers frequency characteristics, has been applied in various fields [6,7]. When designing the complementary filter for estimating attitude, the attitude value, which is estimated by the accelerometer, is applied with a low-pass filter to remove the high-frequency noise. The other attitude value, derived by the gyroscope output integration, is subjected to a high-pass filter to remove the low-frequency drift. This algorithm is called the all-pass type on account of the merging of the two different attitude values.

The accelerometer measures the respective translation and centrifugal acceleration, as well as the gravitational acceleration. When estimating the attitude using an accelerometer, any acceleration other than the gravitational acceleration acts as a disturbance. Consequently, errors of attitude derived by the accelerometer sometimes increase or decrease according to the flight dynamics. Many studies have thus analyzed both the dynamic characteristics of the application target and adapting the cutoff frequency of the complementary filter. To comprehend the dynamic characteristics, the accelerometer, gyroscope, and external sensor have been used [7,8]. Moreover, a look-up table or fuzzy logic was used as a method for choosing the optimum cutoff frequency in accordance with the dynamics [9,10,11,12]. Nevertheless, these methods can output unexpected results when unexpected dynamics are input. Because they are adapted to specific targets, their utilization is limited.

In this study, airspeed information was used. Thus, disturbance factors, other than the gravitational acceleration, were effectively removed. The subsequent disturbance-free acceleration and angular velocity were used to derive a robust attitude result, even under dynamic conditions, through the design of a simple complementary filter. The data used to verify the proposed algorithm were obtained by experimental flight tests of helicopter. The experiment employed Surion, a utility helicopter developed by Korea Aerospace Industries (KAI, Sacheon, Korea). The performance of the algorithm is confirmed by comparison with an attitude obtained from the attitude heading reference system (AHRS) based on high accuracy optic gyro, which served as the main instrument of the helicopter.

## 2. Attitude Estimation from Accelerometer

#### 2.1. Conventional Method

The following equation dictates a vehicle’s equation of motion in terms of specific force, which are the accelerometers reading in body-fixed frame (BFF) [7]:

$$\left[\begin{array}{c}{f}_{x}^{b}\\ {f}_{y}^{b}\\ {f}_{z}^{b}\end{array}\right]=\left[\begin{array}{c}{\dot{v}}_{x}^{b}\\ {\dot{v}}_{y}^{b}\\ {\dot{v}}_{z}^{b}\end{array}\right]+\left[-\begin{array}{ccc}0& {v}_{z}^{b}& -{v}_{y}^{b}\\ {v}_{z}^{b}& 0& {v}_{x}^{b}\\ {v}_{y}^{b}& -{v}_{x}^{b}& 0\end{array}\right]\left[\begin{array}{c}{\omega}_{x}^{b}\\ {\omega}_{y}^{b}\\ {\omega}_{z}^{b}\end{array}\right]-\left[\begin{array}{ccc}cos\psi cos\theta & sin\psi cos\theta & -sin\theta \\ -sin\psi cos\varphi +cos\psi sin\theta sin\varphi & cos\psi cos\varphi +sin\psi sin\theta sin\varphi & cos\theta sin\varphi \\ sin\psi sin\varphi +cos\psi sin\theta cos\varphi & -cos\psi sin\varphi +sin\psi sin\theta cos\varphi & cos\theta cos\varphi \end{array}\right]\left[\begin{array}{c}0\\ 0\\ g\end{array}\right]+\eta $$

Equation (1) can be simply expressed as follows:
where ${f}_{i}^{b}$ refers to the acceleration value measured by the accelerometer in BFF, ${\dot{v}}_{i}^{b}$ denotes the translational acceleration measured in BFF, ${\omega}_{i}^{b}$ represent the angular velocity in BFF, ${v}_{i}^{b}$ denotes velocity in BFF, ${C}_{n}^{b}$ refers to the coordinate transformation matrix from navigation frame to BFF, ${g}^{n}$ represents the gravitational acceleration in navigation frame, $\varphi $ is roll angle, $\theta $ is pitch angle, $\psi $ is yaw angle. and $\eta $ is white noise. This noise can be ignored. When stationary or in a level flight condition (${\dot{v}}_{i}^{b},{\omega}_{i}^{b}\approx 0$), Equation (2) can be expressed as:

$${f}_{i}^{b}={\dot{v}}_{i}^{b}+{\omega}_{i}^{b}\times {v}_{i}^{b}-{C}_{n}^{b}{g}^{n},i\in x,y,z$$

$${f}_{i}^{b}=-{C}_{n}^{b}{g}^{n},\text{}i\in x,y,z$$

$${f}_{x}^{b}=gsin\theta \phantom{\rule{0ex}{0ex}}{f}_{y}^{b}=-gcos\theta sin\varphi \phantom{\rule{0ex}{0ex}}{f}_{z}^{b}=-gcos\theta cos\varphi $$

$${\varphi}_{acc}=Atan2\left(-{f}_{y}^{b},-{f}_{z}^{b}\right)$$

$${\theta}_{acc}=Atan2({f}_{x}^{b},\sqrt{{f}_{y}^{2}+{f}_{z}^{2}})$$

In other words, the accelerometer can measure only the gravitational acceleration. When Equation (3) is rearranged by each axis, the result is as shown in Equation (4). Similarly, under stationary or level flight conditions, the accelerometer measurement can be used to derive the attitude (Equation (5)). However, under dynamic conditions, ${\dot{v}}_{i}^{b},{\omega}_{i}^{b}$ cannot be ignored. Therefore, Equation (5) becomes ineffective under the same conditions.

#### 2.2. Improved Method; Estimation of Disturbance in Accelerometer Measurements

Considering helicopter dynamics, the acceleration components, which are actually measured, can be classified into three major parts: translational acceleration caused by acceleration and deceleration (${\dot{v}}_{i}^{b}$); acceleration caused by rotation (${\omega}_{i}^{b}\times {v}_{i}^{b}$); and gravitational acceleration (${C}_{n}^{b}{g}^{n}$). Although the velocity along the x-axis, measured within BFF, can be considered by using the helicopter pressure sensor, the translational accelerations and velocities along y and z axes can be ignored because it is assumed to very small $({\dot{v}}_{y}^{b},{\dot{v}}_{z}^{b},{v}_{y}^{b},{v}_{z}^{b}\approx 0)$. Air speed (${v}_{x}^{b}$) is calculated as a function of the difference between total pressure and static pressure [13]. Airspeed be obtained from an air data computer (ADC) which has been widely used for avionic systems. When ${\dot{v}}_{y}^{b},{\dot{v}}_{z}^{b},{v}_{y}^{b},{v}_{z}^{b}\approx 0$, the acceleration measured (Equation (1)) can be arranged as:
where ${v}_{x}^{b}$ refers to the velocity value measured by pressure sensor in BFF, ${\dot{v}}_{x}^{b}$ denotes the translational acceleration in BFF, and ${\omega}_{y}^{b}$ and ${\omega}_{z}^{b}$ represent the angular velocity in BFF. When estimating attitude, the terms accelerometer measurements (Equation (6)) other than gravitational one can be considered as ‘disturbance’. Thus, the ‘disturbance (${D}_{i}^{b}$)’ in accelerometer measurements can be expressed as:

$${f}_{x}^{b}={\dot{v}}_{x}^{b}+gsin\theta \phantom{\rule{0ex}{0ex}}{f}_{y}^{b}={v}_{x}^{b}{\omega}_{z}^{b}-gcos\theta sin\varphi \phantom{\rule{0ex}{0ex}}{f}_{z}^{b}=-{v}_{x}^{b}{\omega}_{y}^{b}-gcos\theta cos\varphi $$

$${D}_{i}^{b}={\left[\begin{array}{ccc}{\dot{v}}_{x}^{b}& {v}_{x}^{b}{\omega}_{z}^{b},& -{v}_{x}^{b}{\omega}_{y}^{b}\end{array}\right]}^{T}\text{}i\in x,y,z$$

${D}_{i}^{b}$ can be expressed by the translational acceleration measured in BFF (${\dot{v}}_{i}^{b}$) and by the acceleration generated by the centrifugal force in BFF (${\omega}_{i}^{b}\times {v}_{i}^{b}$). Based on the assumptions of Equation (8), the gyroscope airspeed and angular velocity can be used to estimate the disturbance (${D}_{i}^{b}$). Moreover, the disturbance can be removed as:
where ${f}_{i}^{b}$ refers to the acceleration measured by the accelerometer in BFF, ${\widehat{D}}_{i}^{b}$ is the disturbance acceleration estimated by using the airspeed and angular velocity in BFF, and ${\widehat{f}}_{i}^{b}$ denotes the estimated acceleration that is free of disturbance. The airspeed and angular velocity of ${\widehat{D}}_{i}^{b}$ can be estimated by using the measurements of the pressure sensor and gyroscope. By using the airspeed and angular velocity, the disturbances of the translational acceleration and acceleration by rotation are effectively removed. Because the corrected values of the accelerometer are devoid of disturbances, the values now only contain gravitational acceleration. Finally, attitude can be estimated from the estimated acceleration:

$${\widehat{f}}_{i}^{b}={f}_{i}^{b}-{\widehat{D}}_{i}^{b},i\in x,y,z$$

$${\widehat{\varphi}}_{acc}=Atan2(-{\widehat{f}}_{y}^{b}-{\widehat{f}}_{z}^{b})$$

$${\widehat{\theta}}_{acc}=Atan2({\widehat{f}}_{x}^{b},\sqrt{{({\widehat{f}}_{y}^{b})}^{2}+{({\widehat{f}}_{z}^{b})}^{2}})$$

Meanwhile, the translational acceleration (${\dot{v}}_{x}^{b}$) is not measured. However, ${\dot{v}}_{x}^{b}$ can be derived by differential of airspeed. When deriving ${\dot{v}}_{x}^{b}$, noise can be increased on account of the differential, which, in turn, increases errors. To estimate the translational acceleration (${\dot{v}}_{x}^{b}$), a Kalman filter with a simple form is used to design Equations (10) through Equation (12):

State Equation:

$$x\left(k\right)=Ax\left(k-1\right)+w\left(k\right),w\left(k\right)~\text{}N\left(0,1\right)$$

$$z\left(k\right)=Hx\left(k-1\right)+\upsilon \left(k\right),\upsilon \left(k\right)~\text{}N\left(0,5\right)$$

State Variable:

$$x\left(k\right)={\left[{v}_{x}^{b}\left(k\right)\text{}{\dot{v}}_{x}^{b}\left(k\right)\right]}^{T}$$

Model:
where $x\left(k\right)$ is the state vector containing the terms of interest for the system (airspeed (${v}_{x}^{b}$) and acceleration (${\dot{v}}_{x}^{b}$)). $A$ is the state transition matrix which applies the effect of each system state parameter at time $k-1$ on the system state at time $k$. $w\left(k\right)$ is the vector containing the process noise terms for each parameter in the state vector. $z\left(k\right)$ is the vector of measurement; in this paper ${v}_{x}^{b}\left(k\right)$. $H$ is the transformation matrix that maps the state vector parameters into the measurement domain. $\nu \left(k\right)$ is the vector containing the measurement noise terms for each observation in the measurement vector. The measurement noise ($w\left(k\right)$) and system noise ($\nu \left(k\right)$) are determined with consideration of the magnitude of the noise and its time lag by trial and error.

$$A=\left[\begin{array}{cc}1& t\\ 0& 1\end{array}\right]\text{}t\text{}:Sampling\text{}Tim\mathrm{e},\text{}10\text{}\mathrm{ms}$$

$$H=\left[1\text{}0\right]$$

## 3. Improved Attitude Estimation Solution Scheme

A complementary filter for attitude estimation performs low-pass filtering on a low-frequency attitude estimate, obtained from accelerometer data, and high-pass filtering on a biased high-frequency attitude estimate, obtained by direct integration of gyroscope data, and fuses these estimates together to obtain an all-pass estimate of attitude. Although high frequency information of gyroscope is reasonably reliable, low frequency information, which induces drift, is not. On the other hand, the low frequency information of accelerometers is reasonably reliable, while their high frequency information, which induce high sensitivity noise and slow response, is not. Characterized by such adverse response features, the accelerometer and gyroscope can be applied with the all-pass-type complementary filter to enhance the performance. As mentioned above, the all-pass filter combines the low-pass filter and high-pass filter.

$$\dot{\Phi}=T{\omega}_{i}^{b},\Phi \in \varphi ,\theta ,\psi $$

$$\left[\begin{array}{c}\dot{\varphi}\\ \dot{\theta}\\ \dot{\psi}\end{array}\right]=\left[\begin{array}{ccc}1& sin\varphi tan\theta & cos\varphi tan\theta \\ 0& cos\varphi & -sin\varphi \\ 0& sin\varphi sec\theta & cos\varphi sec\theta \end{array}\right]\left[\begin{array}{c}{\omega}_{x}^{b}\\ {\omega}_{y}^{b}\\ {\omega}_{z}^{b}\end{array}\right]$$

Figure 1 presents a block diagram of the complementary filter using the measured airspeed, which enables robust attitude estimation, even in various dynamic situations. To this end, it employs the estimated acceleration $({\widehat{f}}_{i}^{b})$ that is devoid of disturbance acceleration $({\widehat{D}}_{i}^{b})$. Here, ${\omega}_{i}^{b}$ refers to the angular velocity measured by the gyroscope in BFF, and time rate of the Euler angles $(\dot{\varphi},\dot{\theta})$ can be obtained through transform matrix ($T$), as shown in Equation (13). In addition, ${f}_{i}^{b}$ represents the accelerometer-measured value in BFF, and, ${\widehat{\varphi}}_{acc}\text{}\mathrm{and}\text{}{\widehat{\theta}}_{acc}$ are the attitude, which are estimated by using the acceleration value that is devoid of the disturbance acceleration. ${K}_{I}\text{}\mathrm{and}\text{}{K}_{P},$ respectively, refer to the integration gain and proportional gain of the filter. ${\widehat{\varphi}}_{\mathrm{e}}\text{}\mathrm{and}\text{}{\widehat{\theta}}_{e}$ are the consequential attitudes estimated by the airspeed-aided complementary filter. Figure 1 can be expressed in Laplace domain as follows:
when Equation (15) is arranged from Equation (14), it can be respectively expressed by using the high-pass filter (HPF) part and low-pass filter (LPF) part:

$${\widehat{\Phi}}_{e}=\frac{1}{s}\dot{\Phi}+\frac{{K}_{P}}{s}\left({\widehat{\Phi}}_{acc}-{\widehat{\Phi}}_{e}\right)+\frac{{K}_{I}}{{s}^{2}}\left({\widehat{\Phi}}_{acc}-{\widehat{\Phi}}_{e}\right),\Phi \in \varphi ,\theta $$

The integration gain (${K}_{I}$) and proportional gain (${K}_{P}$) are determined by setting the cutoff frequency (${\omega}_{c}$) and damping ratio ($\mathsf{\zeta}$), as shown in Equation (16):

$${K}_{I}={\omega}_{c}^{2},{K}_{P}=2\zeta {\omega}_{c}=\sqrt{2}{\omega}_{c},\text{}\left(when\text{}\zeta =0.707\right)$$

As shown in Equation (15), the complementary filter is a combination of the high-pass filter and low-pass filter, which share the same cutoff frequency (${\omega}_{c}$) and are determined in accordance with the filter characteristics by ${\omega}_{c}$. By adjusting the weighted values of the two signals, the cutoff frequency can be appropriately configured to design the optimum complementary filter. Optimum cutoff frequency is determined experimentally by considering dynamic of helicopter aircraft. For the optimum algorithm, both gain are set as follows:

$${K}_{I}={0.015}^{2},{K}_{P}=0.021\text{}\left(when\text{}{\omega}_{c}=0.015\right)$$

## 4. Experimental Verification

Flight simulations were conducted to verify the helicopter attitude estimation algorithm using the measured airspeed, as suggested in this study. As mentioned earlier, the KAI Surion utility helicopter was used for the simulations (Figure 2). Table 1 and Table 2 summarize the basic specification of each sensor. The data used for the algorithm were obtained from the MEMS inertial sensor, which was applied as third-level equipment along with the Surion attitude instrument. The attitude estimation verification was conducted through a comparison of the above data and those obtained by AHRS based on a high accuracy optic gyro, the main instrument equipped on the helicopter.

A flight test profile was conducted in accordance with an acceptance test procedure comprising a series of steps: take off, roll maneuver, pitch maneuver, landing, take off, loitering flight, and landing. Figure 3 shows the airspeed data obtained from the flight test, while Figure 4 and Figure 5 show the accelerometer data and gyroscope data obtained by the MEMS inertial sensor. As shown in the graphs of Figure 4 and Figure 5, large noises were introduced on account of the helicopter vibration.

Unlike the reference navigation equipment, which was mounted on the center of gravity (CG), the third-level navigation equipment was directly mounted on the instrument panel of the cockpit. It was thus exposed to more severe vibration conditions. Therefore, the filter had to be designed to remove the noise caused by the vibration. In this study, a Butterworth second-order low-pass filter was designed to appropriately remove the noise caused by the vibration.

Figure 6 presents a graph comparing the attitude derived from Equation (5) (blue solid line) with the reference attitude (red dotted line). In both pitch (Figure 6A) and roll (Figure 6B) attitudes, the noise was more significant than in the reference attitude. In the case of the pitch attitude, although the noise was considerable, all the intervals, except the pitch maneuver interval, were similar to the reference. On the other hand, the roll attitude was not estimated for all intervals; it was only estimated for the respective intervals for landing and immediately after take-off (1000 s). Roll maneuver errors were usually greater than those of the pitch maneuver. This is because the disturbance acceleration was significant during the roll maneuver on account of the helicopter maneuver characteristics. Likewise, the attitude estimation, which used the raw data of the accelerometer, showed large errors during the dynamic flight maneuvers.

Figure 7 presents a graph of disturbance acceleration along each axis. The disturbance acceleration along the x-axis is a translational acceleration estimated by using the airspeed (${v}_{x}^{b}$), while the disturbance acceleration along y and z axes is a centrifugal acceleration estimated by using the airspeed and angular velocity (${\omega}_{i}^{b}\times {v}_{i}^{b}$). As shown in the graph, during the roll maneuvering (1800 to 2300 s) and pitch maneuvering (2300 to 2400 s), significant disturbance acceleration is clearly visible. This conforms to the interval when errors occur in Figure 6. By removing the disturbance acceleration estimated from the accelerometer, the acceleration information can enable more accurate attitude estimation.

In Figure 8, the red dotted line refers to the reference attitude, while the blue solid line refers to the result obtained by removing the disturbance acceleration from the measured values of the accelerometer (Equation (9)).

The above result indicates that, unlike in Figure 6, the estimation is similar to that of the reference, regardless of the conditions. Meanwhile, Figure 9 shows the expanded interval graphs of pitch (Figure 9A) and roll (Figure 9B) attitudes measured by the accelerometer values (green dotted line), those with the disturbance removed (blue solid line), and the reference (red dotted line). Compared to the reference, significant noise and a time delay ($\approx 1.5\text{}\mathrm{s}$) exists; nevertheless, the blue line more accurately approximates the red line than the green line. The noise and time delay can be reduced by combining the angular velocity of the gyroscope.

Figure 10 shows a graph comparing the attitude estimated by using the complementary filter with that of the reference. The blue solid line refers to the result obtained by fusing the estimated acceleration and the angular velocity devoid of disturbance through the complementary filter. The red solid line denotes the reference attitude. As shown in the graph, the reference of the entire interval is accurately estimated by the blue line. Moreover, Figure 11 refers to the expanded interval graph of the final estimated attitude, which compares the status before and after the correction of disturbance acceleration.

In Figure 11, the complementary filter designs are the same in both cases. The green dotted line refers to the attitude that is not corrected, while the blue solid line refers to the corrected attitude. The red dotted line refers to the reference attitude. It is evident that the blue line more effectively estimates the attitude. The green line, without consideration of disturbance, shows reduced errors through the merging with angular velocity; nevertheless, the errors still exist.

Figure 12 presents a histogram showing the errors between the reference attitude and estimated attitude. The blue histogram refers to the attitude errors of the complementary filter, in which the disturbance acceleration is not yet corrected. On the other hand, the red histogram shows the attitude errors of the complementary filter, in which the disturbance acceleration is corrected. The mean of the blue histogram is located on the center; therefore, no bias is detected. Nonetheless, the attitude errors are distributed widely among the entire intervals. In the red histogram, on the other hand, the errors are concentrated around zero. In other words, the complementary filter attitude errors, which are devoid of the disturbance acceleration, are significantly reduced, thus showing enhanced performance. In Table 3, these results are numerically compared.

In the table, ${D}_{i}^{b}=0$ refers to the result that does not consider the disturbance acceleration, whereas ${D}_{i}^{b}={\dot{v}}_{i}^{b}+{\omega}_{i}^{b}\times {v}_{i}^{b}$ refers to the case in which it is considered. The results of attitude estimation and errors of reference were compared using the root mean square (RMS) and standard deviation. The attitude errors of the complementary filter that considers disturbance acceleration show a reduction by approximately 75% and 83%, respectively, compared to the pitch attitude and roll attitude.

## 5. Conclusions

In this study, airspeed information was used and thus disturbance factors, other than the gravitational acceleration, were effectively removed from helicopter attitude estimations. Considering the helicopter environment, the disturbance acceleration equation was derived, and the disturbance acceleration was removed accordingly.

By designing a complementary filter that merges the acceleration that is devoid of disturbance with the gyroscope measurements, accurate estimations were effectively estimated, even under dynamic conditions. The experiment employed a Surion, a developed utility helicopter by Korea Aerospace Industries (KAI). The performance of the algorithm is confirmed by comparison with an attitude obtained from the attitude heading reference system (AHRS) based on high accuracy optic gyro, which serves as the main instrument of the helicopter.

## Acknowledgments

This research was supported by a grant (10050551) from the R&D Program in Aerospace Parts and Materials funded by the Ministry of Trade, Industry and Energy of the Korean Government.

## Author Contributions

S.-K.H. conceived of the research direction; S.-K.H. and S.-C.L. designed the system; S.-C.L. performed the experiments; and S.-K.H. and S.-C.L. analyzed the results and wrote the paper.

## Conflicts of Interest

The authors declare no conflict of interest.

## References

- Crassidis, J.L.; Markley, F.L.; Cheng, Y. Nonlinear attitude filtering methods. J. Guid. Control Dyn.
**2007**, 30, 12–28. [Google Scholar] [CrossRef] - Gebre-Egziabher, D.; Hayward, R.C.; Powell, J.D. Design of multi-sensor attitude determination systems. IEEE Trans. Aerosp. Electron. Syst.
**2004**, 40, 627–649. [Google Scholar] [CrossRef] - Saripalli, S.; Roberts, J.M.; Corke, P.I.; Buskey, G.; Sukhatme, G.S. A tale of two helicopters. In Proceedings of the IEEE International Conference on Intelligent Robots and Systems, Las Vegas, NV, USA, 27–31 October 2003; pp. 805–810.
- Roberts, J.M.; Corke, P.I.; Buskey, G. Low-cost flight control system for small autonomous helicopter. In Proceedings of the IEEE International Conference on Robotics and Automation, Taipei, Taiwan, 14–19 September 2003.
- Choukroun, D.; Bar-Itzhack, I.Y.; Oshman, Y. Novel quaternion Kalman filter. IEEE Trans. Aerosp. Electron. Syst.
**2006**, 42, 174–190. [Google Scholar] [CrossRef] - Corke, P. An inertial and visual sensing system for a small autonomous helicopter. J. Robot. Syst.
**2004**, 21, 43–51. [Google Scholar] [CrossRef] - Yoo, T.S.; Hong, S.K.; Yoon, H.M.; Park, S. Gain-scheduled complementary filter design for a MEMS based attitude and heading reference system. Sensors
**2011**, 11, 3816–3830. [Google Scholar] [CrossRef] [PubMed] - Madgwick, S.O.H.; Harrison, A.J.L.; Vaidyanathan, R. Estimation of IMU and MARG orientation using a gradient descent algorithm. In Proceedings of the IEEE International Conference on Rehabilitation Robotics, Zurich, Switzerland, 29 June–1 July 2011.
- Suh, Y.S.; Park, S.K.; Kang, H.J.; Ro, Y.S. Attitude estimation adaptively complementary external acceleration. JSME Int. J.
**2006**, 49, 172–179. [Google Scholar] [CrossRef] - Hong, S.K. Fuzzy logic based closed-loop strapdown attitude system for unmanned aerial vehicle (UAV). Sens. Actuators A Phys.
**2003**, 107, 109–118. [Google Scholar] [CrossRef] - Valenti, R.G.; Dryanovski, I.; Xiao, J. Keeping a good attitude: A quaternion-based orientation filter for IMUs and MARGs. Sensors
**2015**, 15, 19302–19330. [Google Scholar] [CrossRef] [PubMed] - Chang-Siu, E.; Tomizuka, M.; Kong, K. Time-varying complementary filtering for attitude estimation. In Proceedings of the 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), San Francisco, CA, USA, 25–30 September 2011.
- Gracey, W. Measurement of Aircraft Speed and Altitude; NASA RP: Hampton, VA, USA, 1980. [Google Scholar]

**Figure 6.**Attitude without compensation by the accelerometer (blue solid line) and Reference attitude (red dotted line); A: Pitch attitude, B: Roll attitude.

**Figure 8.**Attitude with compensation by the accelerometer (blue solid line) and Reference attitude (red dotted line); A: Pitch attitude, B: Roll attitude.

**Figure 9.**Attitude maneuver section by each accelerometer measurement and Reference attitude; A: Pitch attitude, B: Roll attitude.

**Figure 10.**Attitude result with compensation by the complementary filter (blue solid line) and Reference attitude (red dotted line); A: Pitch attitude, B: Roll attitude.

**Figure 11.**Attitude maneuver section by each complementary filter and Reference attitude; A: Pitch attitude, B: Roll attitude.

**Figure 12.**Histogram of attitude errors by each complementary filter; A: Pitch attitude error, B: Roll attitude error.

Gyroscope | Accelerometer | |
---|---|---|

Range | $\pm 450\text{}\xb0/\mathrm{s}$ | $\pm 18\text{}\mathrm{g}$ |

Resolution | $0.02\text{}\xb0/\mathrm{s}$ | $0.8\text{}\mathrm{mg}$ |

Nonlinearity | $<0.01\%\text{}of\text{}Full\text{}Scale$ | $<0.1\%\text{}of\text{}Full\text{}Scale$ |

Bias stability | $6.25\text{}\xb0/\mathrm{h},1\sigma $ | $0.1\text{}\mathrm{mg},1\sigma $ |

Bandwidth | $\pm 0.2\text{}\xb0/\mathrm{s},1\text{}\mathsf{\sigma}$ | $\pm 14.8\text{}\mathrm{mg},1\text{}\sigma $ |

Angle/Velocity Random Walk | $330\text{}\mathrm{Hz}$ | $330\text{}\mathrm{Hz}$ |

Pressure Sensor | |
---|---|

Total Error | $0.04\%\text{}of\text{}Full\text{}Scale$ |

Pressure Sensor Temperature Accuracy | $\pm 1.0\text{}\xb0\mathrm{C}\text{}typical$ |

Long Term Stability | $0.025\%\text{}of\text{}Full\text{}Scale\text{}max\text{}per\text{}year$ |

Condition | Attitude | RMS | Standard Deviation |
---|---|---|---|

${D}_{i}^{b}=0$ | Pitch | 1.6498 | 1.6496 |

Roll | 1.8789 | 1.8677 | |

${D}_{i}^{b}={\dot{v}}_{i}^{b}+{\omega}_{i}^{b}\times {v}_{i}^{b}$ | Pitch | 0.4136 | 0.4136 |

Roll | 0.3371 | 0.3019 |

© 2016 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC-BY) license (http://creativecommons.org/licenses/by/4.0/).