Controller Design for the Rotational Dynamics of a Quadcopter

Researchers have shown their interests in establishing miniature flying robots to be utilized for, both, commercial and research applications. This is due to that fact that there appears to be a huge advancement in miniature actuators and sensors which depend on the MEMS (Micro Electro-Mechanical Systems) NEMS (Nano-Electro Mechanical Systems). This research underlines a detailed mathematical model and controller design for a quadcopter. The nonlinear dynamic model of the quadcopter is derived from the Newton-Euler method and Euler Lagrange method. The motion of a quadcopter can be classified into two subsystems: a rotational subsystem (attitude and heading) and translational subsystem (altitude and x and y motion). The rotational system is fully actuated whereas translational subsystem is under actuated. However, a quadcopter is 6 DOF (Degrees of Freedom) under actuated system. The controller design of a quadcopter is difficult due to its complex and highly nonlinear mathematical model where the state variables are strongly coupled and contain under actuated property. Nonlinear controller such as SMC (Sliding Mode Controller) is used to control altitude, yaw, pitch, and roll angles.Simulation results show that the robustness of the SMC design gives a better way to design a controller with autonomous stability flight with good tracking performance and improved accuracy without any chattering effect. The system states are following the desired trajectory as expected.


INTRODUCTION
Various linear and nonlinear control techniques such as fuzzy logic, LQR (Linear Quadric Regulator), PID (Proportional-Integral-Derivative) and feedback linearization have been used to control the quadcopter. Santos et. al. [1] worked on a smart fuzzy controller for a quadcopter. A fuzzy logic control system was designed and applied for controlling the dynamic model of a quadcopter. Simulation results show that the efficiency of this smart controller is satisfactory. However, the main drawback of this research was that its controller design was too complex. Li and Li [2] presented his model to examine the dynamic response and PID control algorithm for a quadcopter. This study elucidates the construction and dynamic model of a quadcopter. Apart from this, the study also proposed a controller which aims to control the controlled the quadcopter system using PID controller technique. In this paper, a state-space model was illustrated and for the ease of simulation the nonlinear mathematical models were altered to the Simulink based models [3]. Dief and Yoshida [4] solved asymmetry problem that is usually results from the motor. They also compared the responses of the quadcopter between classical controller such as PID and adaptive control. Peddle et. al. [5] proposed a model which controls the altitude, velocity, and position of a ductfan for VTOL using PI controller. In this paper, a large scale four-rotors machine was designed and instead of using electric motor, they used 04 gasoline engines to generate thrust force. This nature of engine speed variation resulted in an unstable system due to the gasoline engines.
Inaccuracy, uncertainty and nonlinearity of the system modeling are additionally the foremost problems. Hence, a flexible and a robust control design is needed. For nonlinear systems, sliding mode control is designed. Seshagiri and Promtun [6] computed the angle of attack command using sliding mode controller based on model linearization. Two types of sliding surfaces were compared; the 1 st order and the 2 nd order and their experimental results proved that the performance of the 2 nd order SMC was better. Koshkouei et.
al. [10] presented dynamic and higher order sliding mode control technique. Conditions for reaching to appropriate sliding surface were proposed in this paper. Herrera et. al. [7] described the application and control design of the quadcopter using SMC from a PD (Proportional-Derivative) sliding surface. However, some disturbances are included in this paper. Heba presented the detailed mathematical model of a quadcopter and different control approaches were used: PID, SMC, Back-stepping controller and Gain scheduling based PID controller [8]. The simulation showed huge degradation when the system was exposed to wind. In this study, overshoot and chattering effect occurred during translation and rotational maneuvering. Wang et. al. [11] proposed a cascade PID feedback control algorithm to stabilize the attitude of a quadcopter. Doukhi et. al. [12] designed a robust Self-Tuning PID controller based on fuzzy logic to adjust the external disturbances produced by the changes in the payload weight during the flight period.
The objective of this paper is to design an SMC based controller to control the rotational dynamics of a quadcopter.
The dynamics and kinematics of a quadcopter are developed using the Newton-Euler formalism and Euler-Langrange equations which incorporates the suitable criteria. The ultimate goal is to reduce the response time and to reduce the overshoot in the previously presented literature.
Reducing the chattering effect in the SMC is another factor which is covered in the controller design.

QUADCOPTER MATHEMATICAL MODEL
The The dynamics and kinematics of the quadcopter are derived from the research work presented in [8][9]. In the overall mathematical modeling, the following assumptions are made to preserve the simplicity of the system.
(1) The design frame is symmetrical and rigid.
(2) The CG of the quadcopter overlaps with the origin of body-fixed frame.
(4) Drag force and thrust force are function of the square of the speed of the propellers.
There are two reference frames acting on a quadcopter as shown in Fig. 1. The Earth-frame having N (North), E (East) and D (downward) axis and the body-frame with x, y, and z axis.
The body and inertial frame can be related by rotation matrix as: The rotation matrix is used to define the dynamics of quadcopter and represents the movement of the quadrotor model from the earth to the space.
The quadcopter has twelve states defined as: The state-vector describes the position of the quadcopter in space and it's linear as well as angular velocities.
The equations of motions are obtained using force and moment balance: Where the input signal U 1 represents total thrust, U 2 , U 3 and U 4 represent roll, pitch and yaw moments, m is the quadcopters's mass, J r defines the inertia of each rotor and, I xx , I yy and I zz are quadcopter's inertia in x, y, and z longitudinal positions respectively.
The required input signals from Equations (3-8) are defined as:

CONTROLLER DESIGN
SMC is a nonlinear control technique and it has remarkable properties due to its robustness, accuracy and implementation. SMC is type of VSC (Variable-Structure Controller) which uses a fast changing control law to drive the state trajectories to take after specified, userdefined surface in the state space and maintains the statetrajectories on this state. SMC objective consists of two parts as per Equation (13) The Lyapunov function is expressed as follows:     Similarly, the same method is applied to obtain the control inputs for roll, pitch and yaw.
The values of a 1 , a 2 , a 3 , a 4 , a 5 , b 1 , b 2 , and b 3 can be referred from [8].

SIMULATION RESULTS AND DISCUSSION
In this section, the response of the proposed quadcopter model with SMC based control law is simulated for various desired level of altitude (position in z-axis), desired level of roll, pitch, and yaw angles (angular position is three respective states). The physical parameters used for quadcopter are given in Table 1 [8]. The simulation is run for 2.5 sec for each state variable which is sufficient to analyze the response of the quadcopter model under given conditions. The desired values and the respective controller gains for SMC controller are given in Table 2. These gains yield the optimum and desired response of the quadcopter as shown in Figs. 3-6. The results from previous studies show the overshoot and delayed response under the same simulation conditions [8], whereas, it can be seen that the proposed model smoothly acquires the desired altitude level (position in z-axis) as shown in Fig. 3 without any overshoot, any unnecessary delay and steady-state error. Fig. 4