1. Introduction
Recently, the rapid development of unmanned aircraft vehicles (UAVs) has received significant attention in various applications, such as search-and-rescue, safety inspections for civil buildings, agriculture, and forest surveillance. Different types of UAVs exist, including those that can take-off and land vertically in limited spaces, as well as those that can easily hover over the desired target. Compared with a helicopter, a quadrotor is typically constructed using a symmetrical lightweight airframe, with four brushless direction current (BLDC) motors mounted on it, and four fixed-pitch propellers attached to the respective motors. A quadrotor offers better mobility in attitude change and path planning compared with helicopters. However, the design of the flight controller of a quadrotor is associated with at least two challenges. First, the quadrotor is a multiple-input multiple-output (MIMO) unstable nonlinear system. Second, quadrotors, similar to other types of UAVs, are always subjected to external and internal disturbances, model uncertainties, and parametric perturbation. Therefore, they are difficult to control accurately in terms of trajectory tracking. Hence, the design and implementation of a stable and robust quadrotor flight controller are essential [
1].
Proportional–integral–derivative (PID) control is a typical control technique that is typically used in industry. PID control involves many iterative trials for adjusting the parameters of the PID controller [
2]. In [
3], a nonlinear PID-type controller for the total thrust and torques was applied to perform trajectory tracking and the authors derived the adjustment guidelines. Meanwhile, in terms of the design of the flight controller of a V-tail quadrotor, Castillo–Zamora et al. performed the comparisons of tracking capability among a proportional-derivative (PD) controller, PID controller, and sliding mode controller (SMC) [
4]. In their study, the simulation results showed that the PD controller presented an error in the stable state that would not disappear. This can be problematic if an application with precision is required. Meanwhile, the SMC has a facile and rapid response that drives the quadrotor to converge to the desired point in space.
Model-based controllers have been shown to exhibit excellent performance in resolving nonlinear control system problems. Observer-based backstepping and SMC for the trajectory tracking of a quadrotor have been presented in many studies. In [
5], the authors designed an extended state observer (ESO) to estimate unmeasurable states and external disturbances. Wind gust and actuator faults can be considered as lumped disturbances, the disturbance torque caused by lumped disturbances happen suddenly, and cannot be estimated by traditional ESO. In order to alleviate lumped disturbances, high-order ESO have been applied. Nevertheless, higher observer orders will lead to higher control gains with fixed bandwidth, which will in return excite the sensor noise and introduce them into the control loop. Shi D. et al. proposed the super-twisting based ESO (ST-ESO) to estimate and attenuate the impact of lumped disturbances in finite time. In the same study, the super-twisting based SMC (ST-SMC) is also designed as the feedback controller to drive the attitude angle and angular velocity to their desired value in finite time [
6]. In [
7], the nonlinear disturbance observer (NDO) was used to compensate the disturbances and model-system errors. A backstepping SMC and observer-based fault estimation for a quadrotor was proposed in [
8], where a regular SMC was used for attitude control, and the backstepping SMC was utilized for position and yaw angle control. An observer-based fault estimation serves as an alarming module as well as provides an estimation of faults occurring during the take-off and hovering modes. In the same paper, a stability analysis of the overall system based on the Lyapunov stability theory was presented.
Actuator dynamics, including transient responses and control input constraints, directly affect and limit the torque inputs to the propeller rotation of a quadrotor. It is risky to design the controller when the actuator saturation situation is omitted. By incorporating the SMC and dynamic surface controller (DSC) into a backstepping-like framework, the authors of [
9,
10] proposed a backpropagating constraint-based controller to solve the constrained actuator dynamics problem.
The contribution of this study is the design and implementation of an integral backstepping sliding mode controller (IB-SMC) of a quadrotor for real-time trajectory tracking [
11,
12]. For the hardware design of the quadrotor, we used a PX4 module as the flight control board; it contains six degree-of-freedom (DOF) inertial measurement unit (IMU) sensors, i.e., a three-axis accelerometer and a three-axis gyroscope [
13]. A global positioning system (GPS) was used as the position estimator of the quadrotor. A radio frequency (RF) module was utilized to receive the control commands of the quadrotor from the user. The remainder of this paper is organized as follows:
Section 2 presents the kinematics and dynamical model of the quadrotor. In
Section 3, the design and stability analysis of the IB-SMC for the quadrotor are discussed.
Section 4 provides the simulations and experimental results of the IB-SMC of the quadrotor. The conclusions are presented in
Section 5.
2. Quadrotor Model
In navigation, guidance, and control of an aircraft or rotorcraft applications, several frame systems are used in design and analysis. These frame systems are the geodetic frame system, the earth-centered earth-fixed (ECEF) frame system, the local north-east-down (NED) frame system, the vehicle-carried NED frame system, and the body-fixed frame system. The geodetic frame system is widely used in GPS-based navigation. A coordinate point near the earth’s surface is characterized by longitude, latitude, and height. The ECEF frame system rotates with the earth around its spin axis, the origin of the ECEF frame system is located at the center of the earth. The local NED frame system is known as a navigation or ground coordinate system. It is a coordinate frame fixed to the earth’s surface and the origin of the local NED frame system is arbitrarily fixed to a point on the earth’s surface. The local NED frame plays an important role in flight control and navigation. Navigation of small-scale UAVs rotorcraft is normally carried out with this frame. The vehicle-carried NED frame system is associated with the flying vehicle and the origin of the vehicle-carried NED frame system is located at the center of gravity of the flying vehicle. The body-fixed frame system is vehicle-carried and is directly defined on the body of the flying vehicle. The origin of the body-fixed frame system is located at the center of gravity of the flying vehicle. The six DOFs IMU sensor is intensively used to capturing the rigid-body dynamics of unmanned systems [
14]. Due to the inherent mechanical design and power limitation of quadrotor, the applications of quadrotor are normally operated at low speeds in small regions, so the local NED frame and the body-fixed frame are considered in this article.
The structure of the quadrotor is depicted in
Figure 1a; the quadrotor has six DOFs and four control inputs. The six DOFs include translational motion in three directions and rotational motion around the three axes. Four rotors driven by a motor were mounted at the endpoint of two cross-shaped frames [
8].
To establish a mathematical model for the quadrotor, it is assumed that the quadrotor frame is a symmetric grid body, the center of mass is at the geometric center of the body, and the flapping dynamics of the frame are negligible. For describing the attitude and position of the quadrotor, the local NED frame, i.e., the inertial frame, and the body-fixed frame are introduced. The inertial frame denoted as and the body-fixed frame denoted as . The inertial frame is based on the Earth with its origin coinciding with the origin of the body-fixed frame prior to take-off. Frame B is fixed with the quadrotor, and the origin of frame B is at the center of mass of the body.
2.1. Kinematics
The linear position vectors of the quadrotor expressed in the inertial frame
E and body-fixed frame
B are
and
, respectively. The attitude representation can be described by the quaternions and the Euler angles. The advantages of the Euler angles are an intuitive way to represent the attitude and their physical meanings are quite clear. Based on Euler’s theorem, the rotation of a rigid body around one fixed point can be regarded as the composition of several finite rotations around the fixed point. Recently, quaternions are getting more and more attention due to the wide application of high-performance computer and the rapid development of the aircraft’s attitude control technologies [
15].
As shown in
Figure 1b, the attitude (i.e., angular position) of the quadrotor defined in frame
E is described by three Euler angles
, where
,
, and
denote the angles of roll, pitch, and yaw, respectively.
is the angle between planes
and
,
is the angle between planes
and
, and
is the angle between planes
and
. The angular velocity vector of the quadrotor is expressed as
. It is assumed that all attitude angles are limited between
. The linear position transformed from frame
E to frame
B is expressed as
, where the rotation matrix
is written as follows:
If is nonsingular, then the rotation matrix is an orthogonal matrix, and the inverse matrix is obtained via a simple transpose, i.e., . Hence, the linear position is transformed from frame B to frame E, expressed as .
Three-axis gyroscopes are generally used in the aerospace industry to measure body rotations. The relationship between time rates of change of the Euler angles and the body axis angular rates are required. Assume that the angular velocity of the quadrotor with respect to frame
B is
, where
,
, and
are the angular velocities of the roll, pitch, and yaw, respectively. Therefore, the transformation matrix
for the angular velocity from frame
E to frame
B is written as
The angular velocity from the body-fixed frame to the inertial frame is expressed as [
16,
17,
18,
19].
When the quadrotor executes many angular motions with low amplitude, can be assimilated to .
2.2. Dynamics
Newton’s translational motion equation and Euler’s rotational motion equation are used to describe the dynamics of a quadrotor.
2.2.1. Translational Dynamics
As depicted in
Figure 1a, the speed
of the rotor
generates a force
in the direction of the rotor axis and creates a torque
around the rotor axis. Hence,
where
is the thrust coefficient, and
is the drag force coefficient. The thrust
T in the z-axis direction of the body is obtained by the combined effect of forces generated by the four motors.
Subsequently, the thrust vector
of the quadrotor with respect to frame
B is written as
The moment is generated by creating a differential thrust across the two motors on the same arm of the quadrotor.
is defined as the rotational torque provided by the four rotors with respect to frame
B.
where
d is the distance between the center of the mass and the axis of the propeller. Based on Equation (7), the roll movement is obtained by decreasing the rotor velocity of the second motor and increasing the rotor velocity of the fourth motor. The pitch movement is obtained by decreasing the first rotor velocity and increasing the third rotor velocity. The yaw movement is obtained by increasing the angular velocities of the two opposite rotors and decreasing the velocities of the other two rotors [
17]. Combining Equations (6) and (7), the matrix in Equation (8) shows the relationships among the vertical thrust
along the z-axis, rotational torques associated with the thrust difference of each rotor pair, i.e.,
,
and
, and the angular velocities of the four propellers.
According to Newton’s second law of motion, the translational dynamics model of the quadrotor in frame
E is expressed as follows:
where
is the linear velocity along the three axes in the inertial frame;
is the total mass of the quadrotor;
is the rotation matrix derived from Equation (1);
is the lift force from Equation (6);
is gravity, where
is the acceleration due to gravity;
is the drag force caused by translational motions of the quadrotor, where,
,
and
are the air drag coefficients. Substituting Equations (1) and (6) into Equation (9) yields
Using Equations (6) and (10), we can extract the expressions for the pitch angle, roll angle, and thrust
T, as follows:
2.2.2. Rotational Dynamics
The quadrotor is a symmetric structure with four arms aligned with the body’s x- and y-axes. Based on Euler’s second law of motion, the rotational dynamics model of the quadrotor in frame
B is expressed as follows:
where
is the torque in Equation (7);
is the symmetric positive definite constant matrix expressed in Equation (15);
is the angular acceleration of the inertia;
is the centripetal force, where the notation
denotes the cross product;
is the resultant torque due to gyroscopic effects;
is the resultant aerodynamic friction torque. The expressions for
and
are shown in Equation (16) and Equation (17), respectively [
8,
17,
18,
20,
21].
where
,
, and
in Equation (15) are the rotary inertia for the x-, y-, and z-axes of the body, respectively;
in Equation (16) is the moment of inertia of each rotor;
,
, and
in Equation (17) are the aerodynamic drag coefficients.
Considering that
is nonsingular and substituting Equations (16) and (17) into Equation (14), we obtain
where
represents the overall speed of the quadrotor rotor. As shown in Equation (3), the angular acceleration vector in frame
E is obtained from the angular acceleration in frame
B comprising the transformation matrix,
, and its time derivative is expressed as
By substituting Equations (3) and (18) into Equation (19), we obtain
2.3. Model Simplification
The motions of the quadrotor are generated by combining a series of forces and moments from different physical effects. The model developed using Equations (10) and (20) describes the differential equation of the quadrotor system. In order to implement the flight controller in the resource limited microcontroller and consider the requirements of the dynamic response for the attitude controller which is 4 to 10 times faster than that of the position controller, it is assumed that the quadrotor is operated in a hovering state, so the models of quadrotor are linearized and the high-order effects of the force and moment models of the quadrotor can be simplified. Hence, the drag force
in Equation (9) and the aerodynamic friction torque
in Equation (14) were disregarded, and the thrust coefficient
and drag force coefficient
in Equation (4) were assumed to be constants [
20]. The quadrotor system can be rewritten in the state-space form
. The following input vector
and state vector
were selected:
The state representations of the system expressed in Equations (10) and (20) were simplified to the following
Subsequently, Equations (11) and (13) can be rewritten as
The revolutions per minute (rpm) to throttle conversion between the angular velocity of the rotors and the inputs is written as
5. Conclusions and Future Works
In this study, the design of the IB-SMC of a quadrotor for trajectory position tracking was investigated. A GPS and six-axis IMU sensors, which constituted the Pixhawk module, were utilized to measure the position and attitude of the quadrotor. Theoretical analysis and numerical simulations for designing the IB-SMC were provided. Finally, experiments were performed to validate the feasibility and effectiveness of the proposed IB-SMC for a quadrotor.
For designing the next generation of the quadrotor, the quadrotor with the capabilities of obstacle avoidance, slug-payload are two main research topics. For obstacle detection and collision avoidance approaches, the readouts of the ultrasonic sensor, millimeter-Wave (mmWave) radar sensor and Light-detection and ranging (LIDAR) sensor can be integrated by the multi-sensor fusion algorithm and then pattern recognition technologies are used to identify objects by utilizing the machine learning algorithms [
22,
23,
24]. For aerial transportation applications, delivering cargo via quadrotor is a new trend. However, a quadrotor with a slug-payload system is an underactuated, strong coupling, and nonlinear system. How to achieve the quadrotor with precise positioning, maximum payload, and minimum oscillation of suspended load simultaneously needs be investigated in the future [
25]. Moreover, for extending the operating time of quadrotor, power management strategies need to be carefully planned further.