Next Article in Journal
Tension Force Estimation in Axially Loaded Members Using Wearable Piezoelectric Interface Technique
Next Article in Special Issue
Electromagnetic Modeling and Structure Optimization of a Spherical Force Sensing System
Previous Article in Journal
Bionic Electronic Nose Based on MOS Sensors Array and Machine Learning Algorithms Used for Wine Properties Detection
Previous Article in Special Issue
Motion Synchronous Composite Decoupling with Fewer Sensors on Multichannel Hydraulic Force Control for Aircraft Structural Loading Test System
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Adaptive Linear Quadratic Attitude Tracking Control of a Quadrotor UAV Based on IMU Sensor Data Fusion

Department of Mechanical and Mechatronics Engineering, University of Waterloo, 200 University Avenue West, Waterloo, ON N2L 3G1, Canada
*
Author to whom correspondence should be addressed.
Sensors 2019, 19(1), 46; https://doi.org/10.3390/s19010046
Submission received: 28 October 2018 / Revised: 3 December 2018 / Accepted: 19 December 2018 / Published: 22 December 2018
(This article belongs to the Special Issue Mechatronic Systems for Automatic Vehicles)

Abstract

:
In this paper, an infinite-horizon adaptive linear quadratic tracking (ALQT) control scheme is designed for optimal attitude tracking of a quadrotor unmanned aerial vehicle (UAV). The proposed control scheme is experimentally validated in the presence of real-world uncertainties in quadrotor system parameters and sensor measurement. The designed control scheme guarantees asymptotic stability of the close-loop system with the help of complete controllability of the attitude dynamics in applying optimal control signals. To achieve robustness against parametric uncertainties, the optimal tracking solution is combined with an online least squares based parameter identification scheme to estimate the instantaneous inertia of the quadrotor. Sensor measurement noises are also taken into account for the on-board Inertia Measurement Unit (IMU) sensors. To improve controller performance in the presence of sensor measurement noises, two sensor fusion techniques are employed, one based on Kalman filtering and the other based on complementary filtering. The ALQT controller performance is compared for the use of these two sensor fusion techniques, and it is concluded that the Kalman filter based approach provides less mean-square estimation error, better attitude estimation, and better attitude control performance.

1. Introduction

Unmanned aerial vehicle (UAV) systems, particularly quadrotor UAV systems, have been popular in various autonomous surveillance and transportation applications in recent years. Robotics and control researchers have been interested in improving quadrotor UAV systems with regard to path planning, tracking, stability and autonomous motion capability in simultaneous localization and mapping (SLAM) tasks for difficult missions such as defense patrol duties, agricultural activities, surveillance, and rescue [1,2,3,4,5,6].
In the literature, various control approaches have been proposed for quadrotor UAV systems. For attitude tracking control and stabilization, researchers have developed solutions such as quaternion-based feedback control for exponential attitude stabilization [5], robust adaptive attitude tracking control [7], robust attitude control for uncertain quadrotors with proportional-derivative (PD) controller combined with a robust compensator [8], robust nonlinear design under uncertainties and delays [9], and fractional sliding modes based attitude control [10].
One of the main control interests for quadrotors UAV is optimization of time and energy (battery) consumption by designing optimal path planning and optimal tracking control. For such optimal attitude tracking, Ref. [1] has designed a linear quadratic regulation (LQR) based attitude stabilization. For solving a more general form of the same problem under wind gust disturbances, a switching model predictive attitude controller is developed in [11]. Ref. [12] presents L 1 optimal robust tracking control to compensate persistent disturbances in translational and rotational (attitude) dynamics.
Linear-quadratic (LQ) based optimal control frameworks constitute a systematic toolset for calculating ideal control gains with guaranteed system stability under LQ design conditions. LQ-based control schemes provide robust and precise steady-state tracking while the performance index (quadratic cost function) adjusts optimality trade-off between tracking/regulator performance and battery consumption. A particular the LQ-based control approach is infinite-horizon optimal regulation based on linear time-invariant (LTI) models. This approach is widely used in real-time applications since its solution does not have computational complexities for obtaining constant state-feedback control (Kalman) gains by solving the algebraic Riccati Equation (ARE). The infinite-horizon LQR has been mostly used in many earlier works as studied for the quadrotor UAV in [1] for attitude state regulation and stability.
On the other hand, linear-quadratic tracking (LQT) problems have gained less attention compared to LQR problems, since time-varying reference trajectories lead to further analysis and computational complexities. LQT control schemes typically consist of two state-feedback and feed-forward terms. The state-feedback terms guarantee system stability by state-feedback (Kalman) gains which are calculated offline solving differential Riccati equation (DRE). The feed-forward terms provide optimal tracking of time-varying bounded reference trajectories utilizing the differential auxiliary vector signal equation. In practice, computational complexities arise because of the time variations in the feed-forward terms. Accordingly, the literature on LQT control design and applications on real-time systems is limited. Ref. [13] presents an offline solution to the infinite-horizon LQT problem by solving the feed-forward term based on calculating the initial condition of the auxiliary vector signal. The authors present a real-time implementation of this solution on flexible beams system in [14]. Other than the classical solution, Ref. [15] presents an online reinforcement learning algorithm to solve LQT problem without requiring the knowledge of the system drift dynamics or the command generator dynamics.
Regarding LQT of quadrotor UAV systems, Ref. [16] presents a finite-horizon LQT control design with time-varying control gains which are calculated solving offline discrete time matrix Riccati equations for the linearized full dynamics of the quadrotor UAV. Consideration of finite-horizon LQT with known boundary conditions at the initial and final time instants prevents the computational complexity issues with implementation of this design. However, in many practical cases, including the cases considered in this paper, since the boundary conditions are unknown, infinite-horizon LQT needs to be considered for designing an alternative optimal linear tracking controller.
In this paper, by the motivations of LQ-based optimal control advantages as stated above and lack of infinite-horizon LQT control schemes with their applications on real-time systems in literature, we present an infinite-horizon LQT control design, its practical solution and its experimental validation on the real-time quadrotor UAV with inertial parametric uncertainties and Inertial Measurement Unit (IMU) sensor noises. Furthermore, to improve robustness against parametric uncertainties, the presented LQT control design is combined with an adaptive parameter identification (PI) scheme based on least-squares (LS) estimation. Combining the LQT control design and the PI scheme, an adaptive LQT (ALQT) control scheme is developed for optimal attitude tracking of quadrotor UAVs, with reduced tracking error and battery consumption.
Reliable attitude estimation is one of the main challenges for quadrotor UAV tracking control. Euler angles ( ϑ , ϕ , and ψ ) and Quaternions are two common types of attitude representation for UAV systems. IMUs, formed by 3-axis inertial sensors of gyroscopes, accelerometers and magnetometers, measures angular velocities, linear accelerations and the Earth’s magnetic field. Ideally, accelerometer measurements or numerical integration of angular velocities of gyroscopes should be enough for ideal sensors to determine attitude angles. However, in real-world conditions, individual usage of these sensors is not sufficient to determine attitude angles due to large amounts of system noise, drift errors and vibrations.
To obtain fast and accurate attitude states, sensor fusion techniques have been applied to IMU measurements, including wide ranges of complementary filters [5,17,18,19,20,21,22,23,24] and Kalman filters [23,24,25,26,27,28,29,30,31,32,33,34,35]. A complementary filter typically combines accelerometer output for low-frequency attitude estimation with integrated gyroscope output for high-frequency estimation. Complementary filters are computationally less demanding, and, due to their simplicity and efficiency, these filters are still used for attitude estimation. A variety of complementary filters has been used to estimate attitude quaternions [19,20,21] or Euler angles for relatively small roll and pitch aerial vehicle angles [5,22,23,24]. Complex rotations of simultaneous roll, pitch and yaw angles require nonlinear complementary filter fusion techniques [36].
Kalman filter is an optimal recursive estimation scheme that uses a system’s dynamic model, known control inputs, and multiple sequential measurements from sensors to form an estimate of the system states fusing prediction and measurement online [25,26,27,28]. The extended Kalman filter (EKF) is developed for nonlinear system state estimation and has been widely used for real-time UAV systems for Euler angle based attitude estimation [23,24,29,30] as well as quaternion based attitude estimation [31,32,33,34,35]. Unscented Kalman filter (UKF) [37,38,39] and adaptive Kalman filter (AKF) [40] are other widely used sensor fusion algorithms. In [30], a novel Kalman filter algorithm is proposed, which consists of an EKF and an inverse Φ -algorithm in a master–slave configuration to estimate reliable angular acceleration signals by fusing IMU sensor data. In [35], it is shown that, even for applications with strong real-time constraints, EKF can properly estimate the UAV attitudes, even in the presence of data loss.
As studied in earlier work [4], we consider the quadrotor UAV control structure in two levels: high-level and low-level. High-level is mainly about guidance and position controlling in the autonomous motion tasks and generating the trajectories to be tracked by the low-level controller. Provided the trajectory from high-level, the low-level control is responsible for the quadrotor UAV’s attitude and altitude tracking performance and stability. In this study, we focus on the low-level control design, following a decentralized approach, considering the three motion dynamics modes separately: adaptive LQT control for the attitude dynamics, proportional (P) control for the yaw dynamics, and proportional-integral-derivative (PID) control for the altitude dynamics, as shown in Figure 1. In the overall structure, the attitude measurement noises, which come from IMU sensors, are compensated using a Kalman filter to obtain more reliable attitude estimation. The effectiveness of the employed Kalman filter is investigated over the experiments that compare the Kalman filter results with a complementary filter. In the next step, we developed an infinite-horizon ALQT controller and validated its effectiveness by performing two sets of experiments.
The rest of the paper is organized as follows: the quadrotor UAV system and the UAV attitude tracking problem are presented in Section 2. The filters are designed to fuse IMU data for reliable attitude parameter estimation are presented in Section 3. In Section 4 and Section 5, the ALQT, P and PID control designs (for attitude, yaw and altitude control, respectively) are developed. In Section 6, the proposed control schemes are tested on the experimental testbed and the test results are discussed. In Section 7, concluding remarks are given.

2. System Dynamics and Problem Definition

2.1. Quadrotor UAV Dynamics

A nonlinear dynamic model of quadrotor UAV motion dynamics is presented in [4]. In this paper, we have simplified and partitioned this nonlinear dynamic model to obtain separate linear models for each of attitude, yaw, and altitude dynamics.

2.1.1. Attitude Model

Ignoring inertial and drag effects, we obtain a linearized attitude (roll/pitch) dynamics from the nonlinear dynamic model in [4]. Hence, we write the attitude model in the state-space form as
x ˙ φ ( t ) = A φ x φ ( t ) + B φ u φ ( t ) , φ { ϑ , ϕ } , φ ( t ) = C φ x φ ( t ) ,
where A φ = 0 1 0 0 0 2 l K J φ 0 0 b , B φ = 0 0 b , C φ = 1 0 0 T and x φ = φ φ ˙ T φ . x φ , u φ , φ , φ ˙ , T φ , J φ , K, b and l represent states, control inputs, Euler angles, angular velocities, thrust forces, rotational inertias, positive armature gain, the actuator bandwidth in attitude (roll/pitch) dynamics and the distance between the center of gravity O b and each propeller, respectively.
Remark 1.
Attitude (φ) dynamics represent roll (ϑ) and pitch (ϕ) dynamics, and yaw (ψ) is separated from attitude dynamics for the proposed control design.

2.1.2. Yaw Model

We obtain linearized yaw dynamic as
ψ ¨ = 4 K ψ K J ψ b ( s + b ) u ψ ,
where u ψ is the yaw control input, K ψ is thrust-to-moment gain and J ψ is the rotational inertia in yaw motion. Finally, we write the linearized yaw model in form of an input–output transfer function as:
ψ = 4 K ψ K b s 2 ( s + b ) J ψ u ψ .

2.1.3. Altitude Model

We have linearized the nonlinear altitude model [4] by the use of small angle approximation and take the effect of gravity as an offset in the linearized model. Accordingly, we obtain the simplified linear altitude model as
p ¨ z = 4 K m b ( s + b ) u z ,
where p z is z-position of O b , u z is the altitude control input and m is the total mass of the quadrotor UAV system. Finally, we obtain the linearized altitude model in the form of an input–output transfer function as
p z = 4 K b s 2 ( s + b ) m u z .

2.2. Problem Statement

Considering a quadrotor UAV with attitude (roll/pitch) dynamics (1), yaw dynamics (3), and altitude dynamics (5), as illustrated in Figure 1, the objectives of the paper are threefold:
  • Given the IMU sensor measurements of the attitude angles, design a data fusion algorithm based on (i) Kalman filtering and, for comparative analysis purposes, (ii) complementary filtering, in order to cancel the IMU sensor noise effects and produce accurate attitude state estimates;
  • Design the control units to generate the command signals u z , u ψ , u ϑ , u ϕ for feeding the pulse width modulation (PWM) generator that generates the motor control input signal v r , per the diagram in Figure 1: (a) design an infinite-horizon ALQT controller to generate the optimal attitude control signal u φ ( t ) = u φ * ( t ) so that φ ( t ) tracks its desired trajectory φ d ( t ) , minimizing the predefined quadratic performance optimal tracking and energy consumption cost function
    J = 1 2 0 ( Q e φ 2 ( t ) + R u φ 2 ( t ) ) d t ,
    where Q and R are positive constant weighting terms and
    e φ ( t ) = φ ( t ) φ d ( t )
    is the attitude tracking error; (b) design a P yaw controller to generate u ψ ( t ) and a PID altitude controller to generate u z ( t ) ;
  • Combining the designs in 1 and 2, above, real-time implement and experimentally validate the overall control scheme.

2.3. Control Approach

In our infinite-horizon ALQT control design, the optimal control law consists of two terms: the state-feedback and the feed-forward. The state-feedback term maintains stability of the attitude dynamics. This term is obtained solving an algebraic Riccati equation (ARE). The feed-forward term depends on the desired trajectory and is used for establishing trajectory tracking performances. The above optimal control law is combined with an LS based adaptive PI algorithm to make it robust, adaptive and avoid inertial uncertainties in the attitude dynamics. After this combination, because of the uncertainties, the ARE needs to be solved online as well. In implementation, by comparing the online estimates of the uncertain parameters with some critical parameters calculated and stored in a look-up table, the time-varying state-feedback (from the PI) and then the time-varying feed-forward (from slowly-varying desired attitude and the PI) terms are calculated online. In real-time implementation of the designed ALQT scheme, we utilize a practical real-time computation technique based on parameterized analytical solutions of the state-feedback and the feed-forward terms.

3. IMU Sensor Data Fusion

The quadrotor UAV needs a robust estimation scheme for denoising the attitude angle measurements to provide reliable feedback to the proposed ALQT control scheme. The attitude angles are measured using an ADIS16405 IMU as shown in Figure 2. Then, a Kalman filter is employed to attenuate the effect of measurement noises. The IMU contains a 3-axis gyroscope to measure angular velocities ( ϑ ˙ , ϕ ˙ , ψ ˙ ) , a 3-axis accelerometer to measure accelerations due to Earth’s gravity ( a x , a y , a z ) and a 3-axis magnetometer to measure the magnetic field intensities ( m x , m y , m z ) . The specifications are listed in Table 1.

3.1. Attitude Determination from IMU Sensors

Roll and pitch angles are obtained based on accelerometer and gravity vector relation. The rotation matrix from the body frame to the inertial frame is defined with the Euler angles as:
R b 2 i = cos ψ cos ϑ sin ψ cos ϕ + cos ψ sin ϑ sin ϕ sin ψ sin ϕ + cos ψ sin ϑ cos ϕ sin ψ cos ϑ cos ψ cos ϕ + sin ψ sin ϑ sin ϕ cos ψ sin ϕ + sin ψ sin ϑ c o s ϕ sin ϑ cos ϑ sin ϕ cos ϑ cos ϕ .
Assuming constant translational velocities [30,42], i.e., ignoring translational accelerations, we obtain the following relation between the accelerometer output, rotation matrix and earth gravity:
a x a y a z = R i 2 b 0 0 g = sin ϑ cos ϑ sin ϕ cos ϑ cos ϕ g ,
where R i 2 b = R b 2 i T . From Equation (9), attitude angles are calculated as
φ a c c = ϑ a c c ϕ a c c = atan 2 ( a x , a y 2 + a z 2 ) atan 2 ( a y , a z ) ,
where atan 2 ( a y , a z ) denotes arc tangent of a x and a y while it uses the signs of both arguments to determine the quadrant of the result. By determining the roll and pith angles, the rotation matrix from the body frame to the magnetometer local (NED:North-East-Down) frame is rearranged as
m x m y m z = cos ϑ sin ϑ sin ϕ sin ϑ cos ϕ 0 cos ϕ sin ϕ sin ϑ cos ϑ sin ϕ cos ϑ cos ϕ m x b m y b m z b .
Hence, yaw (heading) is calculated as
ψ c = atan 2 ( m y , m x ) .
In practice, the yaw (heading) is updated by gyroscope data integration instead of a Kalman filter or a complementary filter since the laboratory environment has magnetic (metallic) disturbances on the heading calculation (12). Solution methods of magnetic disturbances on heading calculation are discussed with the details in [43].

3.2. Attitude Estimation Using a Kalman Filter

To filter IMU accelerometer noises, a linear Kalman filter is employed in this paper. At each time step k, this Kalman filter first predicts the state propagation using the dynamic model of the quadrotor UAV, the control inputs applied at step k 1 and the state measurement at step k 1 . Then, it incorporates new measurement data of step k, to determine the state estimate.
Consider the following discrete-time linear time-invariant model of the attitude dynamics, with additive Gaussian measurement noise and disturbance, based on Equation (1):
x [ k + 1 ] = A d x [ k ] + B d u [ k ] + w ,
y [ k ] = C d x [ k ] + v ,
where w is zero mean Gaussian disturbance noise with covariance Q K , v is zero mean Gaussian measurement noise with covariance R K , and
A d = 1 T s 0 0 1 2 l K J φ T s 0 0 1 b T s , B d = 0 0 b T s , C d = 1 0 0 0 1 0 ,
with sampling time T s . Note that, in implementation of Equation (15), since the value of the rotational inertia J φ is uncertain, the nominal value of this parameter is used, as detailed in Remark 2 in Section 4.1. For this system model, the Kalman filter prediction and update equations are as follows:
Prediction:
x ^ [ k + 1 | k ] = A d x [ k | k ] + B d u [ k ] ,
P [ k + 1 | k ] = A d P [ k | k ] A d T + Q K ,
Update:
y ¯ [ k ] = y [ k ] C d x ^ [ k | k 1 ] ,
M [ k ] = P [ k | k 1 ] C d T ( C d P [ k | k 1 ] C d T + R K ) 1 ,
x ^ [ k | k ] = x ^ [ k | k 1 ] + M [ k ] y ¯ [ k ] ,
P [ k | k ] = ( I M [ k ] C d ) P [ k | k 1 ] ,
where P [ k + 1 | k ] and M [ k ] are the predicted error covariance and the optimal Kalman gain, respectively.

3.3. Attitude Estimation by a Complementary Filter

As an alternative to Kalman filtering, we also study utilization of complementary filter in denoising and fusion of measurement data from accelerometers and gyroscopes. Typically, an accelerometer based orientation estimation works better in static conditions, and, on the other hand, a gyroscope based orientation estimation gives better results in dynamic conditions. A complementary filter passes the accelerometer signals through a low-pass filter and the gyroscope signals integral through a high-pass filter. Then, the resulting signals are summed up to estimate the attitude angles more reliably in both dynamic and static condition cases. The schematic complementary filter block diagram is depicted in Figure 3.

4. Adaptive Optimal Attitude Tracking Control Design

In this section, the proposed ALQT control scheme for attitude tracking of a quadrotor UAV is presented.

4.1. Adaptive Parameter Identification Scheme

We employ an LS based PI scheme to estimate the uncertain inertial parameters. From the attitude dynamics Equation (1), following the procedure in [44,45], we first define a linear parametric model avoiding need for signal differentiation and the associated noise sensitivity issue by use of the stable filter 1 ( s + λ ) , λ > 0 , as follows:
z φ = θ φ * Φ φ , z φ = s ( s + λ ) φ ˙ , θ φ * = 1 J φ , Φ φ = 2 l K b ( s + λ ) ( s + b ) u φ ,
noting that the Euler rate φ ˙ (obtained using the IMU and the filters in Section 3) and the control signal u φ are measurable, and l , K , b are known constant parameters.
Assumption 1.
The upper and lower limits of θ φ * ( t ) are known, i.e., 0 < θ ̲ φ θ φ * ( t ) θ ¯ φ for some known θ ̲ φ , θ ¯ φ > 0 .
Remark 2.
For the setup used in this paper, the limits of θ ^ φ ( t ) are taken 10 θ ^ φ ( t ) 49 . Accordingly, the nominal value of J φ is calculated as J φ 0 = 2 θ ̲ φ + θ ¯ φ 0.03 .
To generate the estimate θ ^ φ of the uncertain inertia parameter θ φ * , we apply the following recursive LS algorithm [45] based on the parametric model (22):
θ ^ ˙ φ ( t ) = P r ( p ( t ) ϵ ( t ) Φ φ ( t ) ) = p ( t ) ϵ ( t ) Φ φ ( t ) , if   θ ̲ φ < θ ^ φ < θ ¯ φ 0 , otherwise , , θ ^ φ ( 0 ) = θ ^ φ 0 , p ˙ ( t ) = β p ( t ) Φ φ 2 ( t ) m n 2 ( t ) p 2 ( t ) , if   θ ̲ φ < θ ^ φ < θ ¯ φ 0 , otherwise , , ϵ ( t ) = z φ ( t ) θ ^ φ ( t ) Φ φ ( t ) m n 2 ( t ) , m n 2 ( t ) = 1 + α n Φ φ 2 ( t ) , 1 α n > 0 ,
where p ( t ) is the positive covariance (time varying gain) term with p ( 0 ) = p 0 > 0 , m n is the normalizing signal, and ϵ is the estimation error. P r ( . ) is projection operator that maintains θ ^ φ [ θ ̲ φ , θ ¯ φ ] .
Lemma 1 (Stability and Convergence).
Consider the LS based PI scheme (23), applied to the attitude dynamics (1). It is guaranteed that all the signals in the PI scheme (23), including p and p 1 , are bounded and θ ^ φ [ θ ̲ φ , θ ¯ φ ] . Furthermore, if Φ φ n = Φ φ m n is persistently exciting, i.e., if 1 T t t + T Φ φ n 2 d τ α 0 for all t 0 and some T , α 0 > 0 ; then the PI scheme (23) ensures that θ φ ( t ) θ φ * as t . The convergence of θ φ ( t ) θ φ * is exponential for β > 0 .
Proof. 
The result is a direct corollary of the more general Theorem 3.7.4 and 3.10.1 in [45]. ☐

4.2. Generic Linear Quadratic Tracking Control Design

To construct the base optimal control law of the proposed ALQT scheme, we follow an infinite-horizon LQT control design approach [46], explained in the sequel for a linear system in the generic state-space form
x ˙ ( t ) = A x ( t ) + B u ( t ) , y ( t ) = C x ( t ) ,
where x n , u r and y m are state, control input and output vectors. A n × n , B n × r and C m × n are state, input and output matrices. m, n, and r are generic system dimensions. The objective is to generate u ( t ) so that y ( t ) tracks a given desired continuous and differentiable output trajectory z ( t ) m as close as possible with minimum consumption of control effort for all t. Thus, let us define the error vector
e ( t ) = z ( t ) y ( t ) ,
and the cost function
J = 1 2 0 ( e T ( t ) Q e ( t ) + u T ( t ) R u ( t ) ) d t ,
where Q m × m and R r × r are symmetric, positive definite weighting matrices.
In order to generate the optimal control signal u ( t ) = u * ( t ) that minimizes the cost function (26), following Hamiltonian calculation [46], at first, the following DRE is formed:
P ˙ = P A A T P + P B R 1 B T P C T Q C ,
where P n × n is a symmetric, positive definite matrix. Since the infinite-horizon LQT design [46] is studied, there is no terminal F ( t f ) = 0 in cost function (26). Therefore, P ( t ) tends to its steady-state value lim t f ( P ( t f ) ) = P ¯ as the solution of the following ARE:
P ¯ A A T P ¯ + P ¯ B R 1 B T P ¯ C T Q C = 0 ,
where P ¯ n × n is a symmetric, positive definite matrix calculated by analytical solution of the ARE (28).
Then, as the next step in the LQT design steps with a Hamiltonian approach, a vector signal g ( t ) n is generated via the differential equation
g ˙ ( t ) = [ A T P B R 1 B T ] g ( t ) C T Q z ( t ) .
The final optimal control signal is generated as
u * ( t ) = R 1 B T P ¯ x ( t ) + R 1 B T g ( t ) ,
where R 1 B T P ¯ x ( t ) is the state feedback term and R 1 B T g ( t ) is the feed-forward term. Note that the control law (30) is established in [46] to bear the following optimal tracking property:
Proposition 1.
Ref. [46]: The control law (30) guarantees that the system (24) is closed loop stable and the cost function (26) is minimized, for any given slowly-varying desired output trajectory z ( t ) .
To simplify and ease the calculation of the vector signal g ( t ) , we use an approximation [47] as follows:
Approximate vector signal g ¯ ( t ) : It is established in [47] that, if z ( · ) is slowly varying, then g ˙ ( t ) in Equation (29) can be approximated as g ˙ ( t ) 0 leading to the approximate solution
g ( t ) g ¯ ( t ) = [ A T P ¯ B R 1 B T ] 1 [ C T Q z ( t ) ] .

4.3. Adaptive Linear Quadratic Tracking (ALQT) Control Design

For attitude control, our approach is to apply the control law (28), (30), (31) to system (1). Note that implementation of the control law (30) requires P ¯ from Equation (28) and g ¯ ( t ) from Equation (31), and hence requires knowledge of the system matrices A , B , C . In our case, in Equation (1), although B φ , C φ are known, A φ is unknown. Hence, following the certainty equivalence approach [45,46], the following adaptive version of the LQT control law (28), (30), (31) for the cost function (6) and the attitude tracking error (7) is designed.
The time-varying adaptive ARE, the approximate vector signal g ¯ ( t ) and the adaptive optimal control signal are obtained, respectively, as
P ¯ A ^ φ ( t ) A ^ φ T ( t ) P ¯ + P ¯ B φ R 1 B φ T P ¯ C φ T Q C φ = 0 ,
g ¯ ( t ) = [ A ^ φ T ( t ) P ¯ B φ R 1 B φ T ] 1 [ C φ T Q z ( t ) ] ,
u ^ φ * ( t ) = R 1 B φ T P ¯ x φ ( t ) + R 1 B φ T g ¯ ( t ) ,
where A ^ φ ( t ) = 0 1 0 0 0 2 l K θ ^ φ ( t ) 0 0 b , B φ = 0 0 b , C φ = 1 0 0 T . Solving (32) for P ¯ = P ¯ 1 P ¯ 2 P ¯ 3 P ¯ 2 P ¯ 4 P ¯ 5 P ¯ 3 P ¯ 5 P ¯ 6 3 × 3 , we obtain
0 = ( P ¯ 3 2 b 2 / R ) + Q ,
0 = P ¯ 1 + ( ( P ¯ 3 P ¯ 5 b 2 ) / R ) ,
0 = ( 2 l K θ ^ φ P ¯ 2 ) + P ¯ 3 b + ( P ¯ 3 P ¯ 6 b 2 / R ) ,
0 = 2 P ¯ 2 + ( P ¯ 5 2 b 2 / R ) ,
0 = ( 2 l K θ ^ φ P ¯ 4 ) + P ¯ 5 b P ¯ 3 + ( P ¯ 5 P ¯ 6 b 2 / R ) ,
0 = ( 4 l K θ ^ φ P ¯ 5 ) 2 P ¯ 6 b + ( P ¯ 6 2 b 2 / R ) .
Solving Equation (33) for g ¯ ( t ) = [ g ¯ 1 ( t ) g ¯ 2 ( t ) g ¯ 3 ( t ) ] T 3 , we obtain
g ¯ 1 ( t ) = [ ( P ¯ 5 Q ) / ( P ¯ 3 R ) ] φ d ( t ) ,
g ¯ 2 ( t ) = [ ( P ¯ 6 b Q + R Q ) / ( 2 l K θ ^ φ P ¯ 3 ) ] φ d ( t ) ,
g ¯ 3 ( t ) = [ ( R Q ) / ( P ¯ 3 b 2 ) ] φ d ( t ) .
Remark 3.
There is also no constraint on the control signal u ^ φ ( t ) considered in the control design. However, we consider a limit 0.025 u φ ( t ) 0.025 to prevent damages on the quadrotor motors due to high torque commands.

5. Yaw and Altitude Control

To provide the overall motion in experiments, P and PID controllers are designed, respectively, for yaw and altitude dynamics as follows.

5.1. Yaw Control

Since yaw dynamics are not directly affecting the lateral motion of the quadrotor UAV system, the yaw motion control is considered independently. Therefore, the following P control law is used based on the dynamic model (3):
u ψ = K p ψ e ψ ,
where e ψ = ( ψ d ψ ) .

5.2. Altitude Control

Altitude controller is derived for keeping the quadrotor UAV system in its desired altitude and providing stability at the longitudinal motion. The following PID control law is used based on the dynamic model (5):
u z = K p z ( e z ) + K i z 0 t ( e z ) d t + K d z ( e ˙ z ) ,
where e z = ( p z d p z ) .
Remark 4.
With the attitude, yaw and altitude control schemes as designed above, the control inputs u ^ φ * , u ψ and u z are generated. Then, we combine these inputs [4] to generate each motor PWM inputs v r . for flight control of the Qball-X4 quadrotor UAV system (Quanser, Markham, ON, Canada).

6. Experimental Tests and Comparative Simulations

6.1. Test Platform

The test platform consists of a Qball-X4 quadrotor UAV and a ground control and communication station (host computer) as illustrated in Figure 4. The Qball-X4 is equipped with a sonar sensor and an IMU to provide altitude, acceleration, angular rate and magnetometer measurements [48]. It has an on-board avionics data acquisition card (DAQ) and a Gumstix embedded computer (Gumstix Inc., Redwood City, CA, USA) for interfacing with on-board sensors and driving the four rotor motors. Each motor is linked to one of the four PWM servo output channels on the DAQ. The Qball-X4 dynamic parameters as specified in [48] are presented in Table 2. The ground station computer is used for coding the designed control algorithms, and embedding on the Qball-X4 on-board computers before tests as well as generating the high-level control inputs in the form of desired attitude and altitude trajectories online during the tests. For control algorithm coding and embedding, Quarc, a MATLAB/Simulink® based interface software developed by Quanser Inc., is used.

6.2. Control Design Specifications and Online Calculation of Control Parameters

In implementation of the ALQT control design explained in detail in Section 4.3, the error and the control weighting parameters are chosen as Q = 100 and R = 30,000 . Following Equation (35a), the constant entry P ¯ 3 of P ¯ ( t ) is calculated as P ¯ 3 = ( Q R ) / b = 115.4701 . The other entries of P ¯ ( t ) are calculated solving Equation (35) online, noting the dependence of these entries to each other and the parameter estimate θ ^ φ . From Equation (35d), the entry P ¯ 2 is found in form of the entries P ¯ 5 and written in Equation (35c). Then, the Equations (35c) and (35f) are obtained in form of the entries P ¯ 5 and P ¯ 6 as follows:
0 = ( l K θ ^ φ P ¯ 5 2 b 2 / R ) + P ¯ 3 b + ( P ¯ 3 P ¯ 6 b 2 / R ) ,
0 = ( 4 l K θ ^ φ P ¯ 5 ) 2 P ¯ 6 b + ( P ¯ 6 2 b 2 / R ) .
Solving the Equations (39a) and (39b) by using Maple® and MATLAB® software, P ¯ 6 , which is chosen as a critical parameter, is offline calculated for the estimate θ ^ φ [ θ ̲ φ , θ ¯ φ ] of θ φ * . Then, a lookup table is prepared as plotted in Figure 5. The remaining entries of P ¯ are simultaneously calculated using P ¯ 6 and the estimate θ ^ φ as follows:
P ¯ 5 = ( ( 2 P ¯ 6 b ) + ( ( P ¯ 6 2 b 2 ) / R ) ) / ( 4 l K θ ^ φ ) ,
P ¯ 2 = ( P ¯ 5 2 b 2 ) / ( 2 R ) ,
P ¯ 1 = ( P ¯ 3 P ¯ 5 b 2 ) / R ,
P ¯ 4 = ( ( P ¯ 3 ) / 2 l K θ ^ φ ) + ( ( P ¯ 5 b ) / 2 l K θ ^ φ ) + ( ( P ¯ 5 P ¯ 6 b 2 ) / 2 l K θ ^ φ R ) .
After obtaining P ¯ , by Equation (36) and the reference input φ d ( t ) , the vector signal g ¯ ( t ) is found at each time instant as well. For example, for the nominal value θ ^ φ 0 = 33 [ 1 / k g m 2 ] , the Riccati coefficient matrix P ¯ is obtained using Equations (39a), (39b), (40a), (40b), (40c) and (40d) as follows:
P ¯ = 20.0886934 2.0177780 115.4700538 2.01777802 480969.75 23.19642512 115.470053 23.196425 1727.886987 .
After that, the vector signal g ¯ ( t ) is found by Equations (41) and (36) as follows:
g ¯ ( t ) = 20.08869343750145 φ d ( t ) 2.017798199381859 φ d ( t ) 115.4700538758503 φ d ( t ) .
The ALQT control design with specifications above is used for pitch and roll control. For yaw tracking, a P controller is used with gain K p ψ = 0.015 , and, for altitude tracking, a PID controller is used with gains K p z = 0.006 , K i z = 0.008 and K d z = 0.002 .
In implementation of the adaptive PI scheme (23), the forgetting factor, the initial covariance, and the initial parameter estimate, are selected as, respectively, β = 0.001 , p 0 = 10 5 and θ 0 = 10 [1/kg m 2 ]. In the Kalman filter implementation, Q K and R K matrices are taken as Q K = 10 3 I 3 and R K = 2 × 10 4 I 2 . A d , B d and C d matrices are numerically obtained for the nominal value of J φ 0 = 0.03 [kg m 2 ] and the sampling time T s = 0.005 as
A d = 1 0.005 0 0 1 8 0 0 0.925 , B d = 0 0 0.075 , C d = 1 0 0 0 1 0 .
For the complementary filter, φ a c c is passed through a low pass filter with transfer function G a ( s ) = ( 20 s + 1 ) / ( 100 s 2 + 20 s + 1 ) , and φ ˙ is passed through a high pass filter with transfer function G g ( s ) = ( 100 s ) / ( 100 s 2 + 20 s + 1 ) .

6.3. Experimental Results

After setting all control parameters with the sampling rate 200 [Hz] by using MATLAB/Simulink® and Quarc interface in the host computer, as explained in Section 6.1 and Section 6.2, we have implemented the proposed control scheme on the Qball-X4 as seen in Figure 6 for the following two cases:
Test 1.
ALQT with complementary filter: The video of the experiment is presented in URL [49].
Test 2.
ALQT with Kalman filter: The video of the experiment is presented in URL [50].
In both tests, the Qball-X4 starts to perform the tracking control task after hovering for 15 s. The real-time IMU data measurements in Test-2 from the gyroscope, the accelerometer and the magnetometer are presented in Figure 7a–c, respectively.
Applying the methodology explained in Section 3.1, the IMU measurements shown in Figure 6 are used to obtain the raw calculation of the roll and pitch parameters (yellow plots), and then to generate the estimates by complementary filter (blue plots) and Kalman filter (red plots) shown in Figure 8 and Figure 9. Kalman filter provides more reliable data less sensitive to noise. For the yaw estimation, gyroscope data integration is used instead, due to distortion effects by metallic objects of the test environment, as explained in Section 3.1.
The tracking error performances of both tests verify that the control objective is satisfied as seen in Figure 10 and Figure 11. In both tests, the controllers maintain attitude angles close to their desired angles with small attitude tracking errors ±0.1 [rad]. However, as seen in Figure 11, ALQT control with Kalman filter is more robust to sensor noises and uncertainties, and results in smaller tracking errors.
As seen in Table 3 and Table 4, ALQT control with Kalman filter gives significantly smaller mean-square error and consumes less battery (energy). It is also observed in additional simulations that the proposed controller consumes less battery energy with more robust control action compared to other classical controllers such as PID.
In real time, the motor PWM control inputs have the constraint 0.1 v r ( t ) 0.1 since they work with limited voltage to prevent damages due to high torque commands. Hence, a limit is applied for the optimal attitude control inputs as mentioned in Remark 3 even though LQT design procedure does not have any constraints. As seen in Figure 12, Figure 13 and Figure 14, the proposed controller satisfies admissible and optimal control actions for all t > 0 during the tests. Figure 12, Figure 13 and Figure 14 show that the motor PWM and the optimal attitude control inputs are kept within the allowed limits.
The LS based estimation of the uncertain inertia parameters θ ^ ϑ and θ ^ ϕ is presented in Figure 15. The estimates, which are purposely initialized at values away from the nominal values (to test the expected convergence), successfully converge to the vicinity of the nominal value 33 [1/kg m 2 ] in around 40 [s]. Convergence rate of the estimation can be adjusted easily adjusting the design parameters of the LS based adaptive law.

6.4. Comparative Simulations and Observations

For optimal performance comparison with the existing literature, in ideal simulation conditions without noises, we simulate the ALQT control design and compare with a classical PID controller with control gains K p = 0.0017 ; K i = 8.98 ; K d = 0.005 . As seen in Figure 16, the ALQT controller gives smaller tracking errors with less control action. Therefore, in the actual settings with noises, it is expected that the ALQT with a reliable filter will give us better tracking and control input performances compared to a PID controller. Figure 17 presents the estimates of the simulation. It is also observed from literature that the proposed controller gives a good control performance in terms of optimal attitude tracking compared to the attitude tracking errors of [11,12].

7. Conclusions

In this paper, the adaptive linear quadratic tracking (ALQT) scheme has been developed to control and stabilize the attitude of the Qball-X4 quadrotor UAV system in an optimal sense. The proposed adaptive controller is designed by an indirect approach and combined with the LS based parameter identification (PI) to eliminate the influences of inertial uncertainties. Additionally, the Kalman filter has been designed for canceling noise effects on the attitude estimation data to provide more reliable feedback to the controller and it is compared with the Complementary filter. All analytical analyses and designs are verified by the two experimental tests. We witness that the ALQT design in experiments work satisfactorily in terms of the optimal tracking performance. In the Kalman filter vs. Complementary filter, although both filter designs are good at canceling noise effects on the estimated attitude data, the Kalman filter gives a better accuracy and reliable attitude estimation. Thus, the experimental results show that the quadrotor UAV has more robust behavior and better tracking error with the estimated attitude data by the Kalman filter compared to the Complementary filter.
A potential future study is developing heading (yaw) estimation methods under magnetic disturbances. Another future direction is to extend optimal linear quadratic tracking control design for altitude and yaw dynamics.

Author Contributions

The theoretical framework and algorithms were developed and experiments were conducted by N.K.; B.F. supervised the research and reviewed the study with his corrections, suggestions, and critical feedback; the data fusion section was designed by N.K. and M.J. under the supervision of B.F.; all three authors contributed to the writing of the article.

Funding

This work is supported by the Canadian NSERC Discovery Grant 116806 and the Canadian CFI LOF Grant 31211.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Bouabdallah, S.; Noth, A.; Siegwart, R. PID vs. LQ control techniques applied to an indoor micro quadrotor. In Proceedings of the IEEE International Conference on Intelligent Robots and Systems(IROS), Sendai, Japan, 28 September–2 October 2004; pp. 2451–2456. [Google Scholar]
  2. Spedicato, S.; Notarstefano, G. Minimum-time trajectory generation for quadrotors in constrained environments. IEEE Trans. Control Syst. Technol. 2018, 26, 1335–1344. [Google Scholar] [CrossRef]
  3. Xia, D.; Cheng, L.; Yao, Y. A Robust inner and outer loop control method for trajectory tracking of a quadrotor. Sensors 2017, 17, 2147. [Google Scholar] [CrossRef] [PubMed]
  4. Koksal, N.; Hao, A.; Fidan, B. Two-level nonlinear tracking control of a quadrotor unmanned aerial vehicle. IFAC-PapersOnLine 2016, 49, 254–259. [Google Scholar] [CrossRef]
  5. Tayebi, A.; McGilvray, S. Attitude stabilization of a VTOL quadrotor aircraft. IEEE Trans. Control Syst. Technol. 2006, 14, 562–571. [Google Scholar] [CrossRef] [Green Version]
  6. Huang, H.; Hoffmann, G.M.; Waslander, S.L.; Tomlin, C.J. Aerodynamics and control of autonomous quadrotor helicopters in aggressive maneuvering. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Kobe, Japan, 12–17 May 2009; pp. 3277–3282. [Google Scholar]
  7. Lee, T. Robust adaptive attitude tracking on SO(3) with an application to a quadrotor UAV. IEEE Trans. Control Syst. Technol. 2013, 21, 1924–1930. [Google Scholar]
  8. Liu, H.; Bai, Y.; Lu, G.; Zhong, Y. Robust attitude control of uncertain quadrotors. IET Control Theory Appl. 2013, 7, 1583–1589. [Google Scholar] [CrossRef]
  9. Liu, H.; Xi, J.; Zhong, Y. Robust attitude stabilization for nonlinear quadrotor systems with uncertainties and delays. IEEE Trans. Ind. Electron. 2017, 64, 5585–5594. [Google Scholar] [CrossRef]
  10. Izaguirre-Espinosa, C.; Munoz-Vazquez, A.J.; Sanchez-Orta, A.; Parra-Vega, V.; Castillo, P. Attitude control of quadrotors based on fractional sliding modes: Theory and experiments. IET Control Theory Appl. 2016, 10, 825–832. [Google Scholar] [CrossRef]
  11. Alexis, K.; Nikolakopoulos, G.; Tzes, A. Switching model predictive attitude control for a quadrotor helicopter subject to atmospheric disturbances. Control Eng. Pract. 2011, 19, 1195–1207. [Google Scholar] [CrossRef] [Green Version]
  12. Satici, A.C.; Poonawala, H.; Spong, M.W. Robust optimal control of quadrotor UAVs. IEEE Access 2013, 1, 79–93. [Google Scholar] [CrossRef]
  13. Barbieri, E.; Alba-Flores, R. On the Infinite-horizon LQ tracker. Syst. Control Lett. 2000, 40, 77–82. [Google Scholar] [CrossRef]
  14. Alba-Flores, R.; Barbieri, E. Real-time infinite horizon linear-quadratic tracking controller for vibration quenching in flexible beams. In Proceedings of the IEEE International Conference on Systems, Man, and Cybernetics, Taipei, Taiwan, 8–11 October 2006; pp. 38–43. [Google Scholar]
  15. Modares, H.; Lewis, F.L. Linear quadratic tracking control of partially-unknown continuous-time systems using reinforcement learning. IEEE Trans. Autom. Control 2014, 59, 3051–3056. [Google Scholar] [CrossRef]
  16. Suicmez, E.C.; Kutay, A.T. Optimal path tracking control of a quadrotor UAV. In Proceedings of the International Conference on Unmanned Aircraft Systems (ICUAS), Orlando, FL, USA, 27–30 May 2014; pp. 115–125. [Google Scholar]
  17. Benziane, L.; El Hadri, A.; Seba, A.; Benallegue, A.; Chitour, Y. Attitude estimation and control Using linearlike complementary filters: Theory and experiment. IEEE Trans. Control Syst. Technol. 2016, 24, 2133–2140. [Google Scholar] [CrossRef]
  18. Sa, I.; Corke, P. System identification, estimation and control for a cost effective open-source quadcopter. In Proceedings of the IEEE International Conference Robotics and Automation (ICRA), Saint Paul, MN, USA, 14–18 May 2012; pp. 2202–2209. [Google Scholar]
  19. Magnussen, Ø.; Ottestad, M.; Hovland, G. Experimental validation of a quaternion-based attitude estimation with direct input to a quadcopter control system. In Proceedings of the International Conference on Unmanned Aircraft Systems (ICUAS), Atlanta, GA, USA, 28–31 May 2013; pp. 480–485. [Google Scholar]
  20. Mahony, R.; Hamel, T.; Pflimlin, J.M. Complementary filter design on the special orthogonal group SO(3). In Proceedings of the 44th IEEE Conference on Decision and Control Conference (CDC) and European Control Conference (ECC), Seville, Spain, 15 December 2005; pp. 1477–1484. [Google Scholar] [Green Version]
  21. Stingu, E.; Lewis, F. Design and implementation of a structured flight controller for a 6DoF quadrotor using quaternions. In Proceedings of the 17th Mediterranean Conference on Control and Automation, Thessaloniki, Greece, 24–26 June 2009; pp. 1233–1238. [Google Scholar]
  22. Baerveldt, A.J.; Klang, R. A low-cost and low-weight attitude estimation system for an autonomous helicopter. In Proceedings of the IEEE International Conference on Intelligent Engineering Systems (INES), Budapest, Hungary, 17 September 1997; pp. 391–395. [Google Scholar]
  23. Henriques, B.S.M. Estimation and Control of a Quadrotor Attitude. Master’s Thesis, Instituto Superior Técnico, Lisbon University, Lisboa, Portugal, 2011. [Google Scholar]
  24. Lim, H.; Park, J.; Lee, D.; Kim, H.J. Build your own quadrotor: Open-source projects on unmanned aerial vehicles. IEEE Robot. Autom. Mag. 2012, 19, 33–45. [Google Scholar] [CrossRef]
  25. Hoffmann, F.; Goddemeier, N.; Bertram, T. Attitude estimation and control of a quadrocopter. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Taipei, Taiwan, 18–22 October 2010; pp. 1072–1077. [Google Scholar]
  26. Ferdinando, H.; Khoswanto, H.; Purwanto, D. Embedded Kalman filter for Inertial Measurement Unit (IMU) on the ATMega8535. In Proceedings of the International Symposium on Innovations in Intelligent Systems and Applications (INISTA), Trabzon, Turkey, 2–4 July 2012; pp. 1–5. [Google Scholar]
  27. Wang, S.; Yang, Y. Quadrotor aircraft attitude estimation and control based on Kalman filter. In Proceedings of the Chinese Control Conference (CCC), Hefei, China, 25–27 July 2012; pp. 5634–5639. [Google Scholar]
  28. Redhyka, G.G.; Setiawan, D.; Soetraprawata, D. Embedded sensor fusion and moving-average filter for Inertial Measurement Unit (IMU) on the micro controller-based stabilized platform. In Proceedings of the International Conference on Automation, Cognitive Science, Optics, Micro Electro-Mechanical System, and Information Technology (ICACOMIT), Bandung, Indonesia, 29–30 October 2015; pp. 72–77. [Google Scholar]
  29. Foxlin, E. Inertial head tracker sensor fusion by a complementary separate bias Kalman filter. In Proceedings of the IEEE Virtual Reality Annual Inter-national Symposium, Santa Clara, CA, USA, 30 March–3 April 1996; pp. 185–194. [Google Scholar]
  30. Evren, S.; Yavuz, F.; Unel, M. High Precision stabilization of pan-tilt systems using reliable angular acceleration feedback from a master–slave Kalman filter. J. Intell. Robot. Syst. 2017, 88, 97–127. [Google Scholar] [CrossRef]
  31. Marins, J.L.; Yun, X.; Bachmann, E.R.; McGhee, R.B.; Zyda, M.J. An extended Kalman filter for quaternion-based orientation estimation using MARG sensors. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Maui, HI, USA, 29 October–3 November 2001; Volume 4, pp. 2003–2011. [Google Scholar]
  32. Kim, A.; Golnaraghi, M. A quaternion-based orientation estimation algorithm using an inertial measurement unit. In Proceedings of the Position Location and Navigation Symposium, Monterey, CA, USA, 26–29 April 2004; pp. 268–272. [Google Scholar]
  33. Sabatini, A.M. Quaternion-based extended Kalman filter for determining orientation by inertial and magnetic sensing. IEEE Trans. Biomed. Eng. 2006, 53, 1346–1356. [Google Scholar] [CrossRef] [PubMed]
  34. Sabatini, A.M. Kalman-filter-based orientation determination using inertial/magnetic sensors: Observability analysis and performance evaluation. Sensors 2011, 11, 9182–9206. [Google Scholar] [CrossRef]
  35. Lesecq, S.; Gentil, S.; Daraoui, N. Quadrotor attitude estimation with data losses. In Proceedings of the European Control Conference (ECC), Budapest, Hungary, 23–26 August 2009; pp. 3851–3856. [Google Scholar]
  36. Rehbinder, H.; Hu, X. Nonlinear state estimation for rigid-body motion with low-pass sensors. Syst. Control Lett. 2000, 40, 183–190. [Google Scholar] [CrossRef] [Green Version]
  37. Crassidis, J.L.; Markley, F.L. Unscented filtering for spacecraft attitude estimation. J. Guid. Control Dyn. 2003, 26, 536–542. [Google Scholar] [CrossRef]
  38. St-Pierre, M.; Gingras, D. Comparison between the unscented Kalman filter and the extended Kalman filter for the position estimation module of an integrated navigation information system. In Proceedings of the IEEE Intelligent Vehicles Symposium, Parma, Italy, 14–17 June 2004; pp. 831–835. [Google Scholar]
  39. De Marina, H.G.; Pereda, F.J.; Giron-Sierra, J.M.; Espinosa, F. UAV attitude estimation using unscented Kalman filter and TRIAD. IEEE Trans. Ind. Electron. 2012, 59, 4465–4474. [Google Scholar] [CrossRef]
  40. Li, W.; Wang, J. Effective adaptive Kalman filter for MEMS-IMU/magnetometers integrated attitude and heading reference systems. J. Navig. 2013, 66, 99–113. [Google Scholar] [CrossRef]
  41. Analog Devices. Tri-Axis Inertial Sensor with Magnetometer, ADIS16405; Analog Devices: Norwood, MA, USA, 2009; Available online: http://www.analog.com/media/en/technical-documentation/data-sheets/ADIS16400_16405.pdf (accessed on 26 July 2018).
  42. Wang, M.; Yang, Y.; Hatch, R.R.; Zhang, Y. Adaptive Filter for a Miniature MEMS based Attitude and Heading Reference System. In Proceedings of the Position Location and Navigation Symposium, Monterey, CA, USA, 26–29 April 2004; pp. 193–200. [Google Scholar]
  43. Fan, B.; Li, Q.; Liu, T. How Magnetic Disturbance Influences the Attitude and Heading in Magnetic and Inertial Sensor-Based Orientation Estimation. Sensors 2018, 18, 76. [Google Scholar] [CrossRef] [PubMed]
  44. Koksal, N.; Fidan, B.; Buyukkabasakal, K. Real-time Implementation of Decentralized Adaptive Formation Control on Multi-quadrotor Systems. In Proceedings of the European Control Conference (ECC), Linz, Austria, 15–17 July 2015; pp. 3162–3167. [Google Scholar]
  45. Ioannou, P.A.; Fidan, B. Adaptive Control Tutorial; Advances in Design and Control; SIAM: Philadelphia, PA, USA, 2006. [Google Scholar]
  46. Naidu, D.S. Optimal Control Systems; CRC Press: Boca Raton, FL, USA, 2002. [Google Scholar]
  47. Anderson, B.D.; Moore, J.B. Optimal Control: Linear Quadratic Methods; Prentice-Hall: Englewood Cliffs, NJ, USA, 1990. [Google Scholar]
  48. Quanser Inc. Qball-X4:User Manual; Quanser Inc.: Markham, ON, Canada, 2013. [Google Scholar]
  49. Test 1 Video. Available online: https://www.youtube.com/watch?v=OVZ_zg4SS0Y (accessed on 21 December 2018).
  50. Test 2 Video. Available online: https://www.youtube.com/watch?v=wsKiPJJjj68 (accessed on 21 December 2018).
Figure 1. The overall quadrotor UAV control block diagram.
Figure 1. The overall quadrotor UAV control block diagram.
Sensors 19 00046 g001
Figure 2. The ADIS16405 IMU module on the Qball-X4 quadrotor UAV.
Figure 2. The ADIS16405 IMU module on the Qball-X4 quadrotor UAV.
Sensors 19 00046 g002
Figure 3. Complementary filter.
Figure 3. Complementary filter.
Sensors 19 00046 g003
Figure 4. The Qball-X4 quadrotor UAV test platform.
Figure 4. The Qball-X4 quadrotor UAV test platform.
Sensors 19 00046 g004
Figure 5. Offline calculation of P ¯ 6 for the estimate θ ^ φ [ θ ̲ φ , θ ¯ φ ] .
Figure 5. Offline calculation of P ¯ 6 for the estimate θ ^ φ [ θ ̲ φ , θ ¯ φ ] .
Sensors 19 00046 g005
Figure 6. The Qball-X4 quadrotor during the experiment.
Figure 6. The Qball-X4 quadrotor during the experiment.
Sensors 19 00046 g006
Figure 7. IMU data measurements from (a) gyroscope; (b) accelerometer; (c) magnetometer.
Figure 7. IMU data measurements from (a) gyroscope; (b) accelerometer; (c) magnetometer.
Sensors 19 00046 g007
Figure 8. Attitude estimation of the Qball-X4.
Figure 8. Attitude estimation of the Qball-X4.
Sensors 19 00046 g008
Figure 9. Attitude angle estimation of the Qball-X4 from 50 to 100 [s].
Figure 9. Attitude angle estimation of the Qball-X4 from 50 to 100 [s].
Sensors 19 00046 g009
Figure 10. Attitude tracking error of the Qball-X4 using a Complementary filter.
Figure 10. Attitude tracking error of the Qball-X4 using a Complementary filter.
Sensors 19 00046 g010
Figure 11. Attitude tracking error of the Qball-X4 using a Kalman filter.
Figure 11. Attitude tracking error of the Qball-X4 using a Kalman filter.
Sensors 19 00046 g011
Figure 12. Optimal attitude control inputs for the complementary filter.
Figure 12. Optimal attitude control inputs for the complementary filter.
Sensors 19 00046 g012
Figure 13. Optimal attitude control inputs for the Kalman filter.
Figure 13. Optimal attitude control inputs for the Kalman filter.
Sensors 19 00046 g013
Figure 14. Motor PWM control inputs v r .
Figure 14. Motor PWM control inputs v r .
Sensors 19 00046 g014
Figure 15. LS based estimate θ ^ φ of the uncertain inertia parameter θ φ * .
Figure 15. LS based estimate θ ^ φ of the uncertain inertia parameter θ φ * .
Sensors 19 00046 g015
Figure 16. PID vs. ALQT performance comparison: (a) attitude tracking error; (b) attitude control input.
Figure 16. PID vs. ALQT performance comparison: (a) attitude tracking error; (b) attitude control input.
Sensors 19 00046 g016
Figure 17. LS based estimate θ ^ φ of the uncertain inertia parameter θ φ * for the simulation.
Figure 17. LS based estimate θ ^ φ of the uncertain inertia parameter θ φ * for the simulation.
Sensors 19 00046 g017
Table 1. The ADIS16405 IMU Specifications [41].
Table 1. The ADIS16405 IMU Specifications [41].
GyroscopeAccelerometerMagnetometer
Range±305 (deg/s)±18 (g)± 3.5 (gauss)
Sensitivity0.05 (deg/s/LSB)3.33 (mg/LSB)0.5 (mgauss/LSB)
Table 2. The Qball-X4 quadrotor UAV dynamic parameters [48].
Table 2. The Qball-X4 quadrotor UAV dynamic parameters [48].
m (kg)l (m)K (N) K ψ (Nm)b (rad/s) J φ 0 (kg m 2 ) J ψ (kg m 2 )
1.40.21204150.030.04
Table 3. Mean square error of e φ .
Table 3. Mean square error of e φ .
ALQTRoll [rad]Pitch [rad]
with Kalman filter0.00120.0012
with comp. filter0.00270.0029
Table 4. Average battery consumption by u ^ φ * .
Table 4. Average battery consumption by u ^ φ * .
ALQTRoll [voltage/s]Pitch [voltage/s]
with Kalman filter0.000710.00066
with comp. filter0.000860.00140

Share and Cite

MDPI and ACS Style

Koksal, N.; Jalalmaab, M.; Fidan, B. Adaptive Linear Quadratic Attitude Tracking Control of a Quadrotor UAV Based on IMU Sensor Data Fusion. Sensors 2019, 19, 46. https://doi.org/10.3390/s19010046

AMA Style

Koksal N, Jalalmaab M, Fidan B. Adaptive Linear Quadratic Attitude Tracking Control of a Quadrotor UAV Based on IMU Sensor Data Fusion. Sensors. 2019; 19(1):46. https://doi.org/10.3390/s19010046

Chicago/Turabian Style

Koksal, N., M. Jalalmaab, and B. Fidan. 2019. "Adaptive Linear Quadratic Attitude Tracking Control of a Quadrotor UAV Based on IMU Sensor Data Fusion" Sensors 19, no. 1: 46. https://doi.org/10.3390/s19010046

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop