Quadrotor Proportional-Derivative Regulation for Nonzero Set Point on SO(3) with Disturbance Compensation

Disturbance compensation is a challenging problem in quadrotor control, especially in nonzero set point regulation. This paper presents proportional-derivative regulation for nonzero set point on SO(3) with disturbance compensation for quadrotor UAV. Quadrotor nonlinear kinematics and dynamics model in SO(3) are used to design the control law. Disturbance compensation is added to the control law by using the upper bound of the disturbance. The numerical simulation shows that the disturbance compensation is able to counter the disturbance effect and improve the bound of the state variables.


Introduction
Unmanned Aerial Vehicle (UAV) is popular flying machine for commercial, military, and academic purposes. Quadrotor is a famous UAV type because its mechanical structure is simple. In contrast to common single-rotor helicopter, quadrotor does not need complex swashplate to change the orientation rotor plane. Quadrotor controls its orientation in the air by manipulating the rotational speed of its four rotors. Because of this, quadrotor needs special control algorithm to control its rotors [1].
Generally, quadrotor attitude control can be divided into two approaches. The first approach, namely separate control, controls roll, pitch, and yaw (RPY) angles separately, while the second approach uses SO(3) control [2]. A drawback of the first approach (the separate control) is that it can not evade singularities of attitude representation. In the case of RPY angles, singularity occur when the pitch angle of UAV is 90 degrees [3].
The second approach considers quadrotor's motion in SO(3). Simply stated, SO(3) group is a mathematical group consisting of rotation matrices. In contrast to RPY representation, which represents a rotation by 3 consecutive rotations, SO(3) group uses single arbitrary axis in 3-dimension space. Some works that used this approach were the work of Yun Yu [2] and Yushu Yu [3]. Different from RPY representation that possesses singularity, SO(3) representation can avoid singularity.
Creating a control law that can neutralize disturbance is a challenging problem [4], especially in nonzero set point regulation. Some works modeled disturbance by calculating wind effects on quadrotor. The example of works that used this approach were conducted by Sydney [5] and Tran [6]. Sydney conducted wind effect estimation on quadrotor and used it to design a control law capable of countering disturbance. Tran modelled the studyied propeller-wind interaction, but made no disturbance compensation. Huang [7] considered aerodynamic effect in making a control law aggressively maneuvering quadrotor. He approached this problem by carefully considering blade flapping. However, all of them used separate roll, pitch, yaw control. Recent work that used control on SO(3) and taking disturbance into account was conducted by Fernando [8]. He used the upper bound of the disturbance to design disturbance compensation in the control law.
This research uses the form of disturbance compensation used in [8] and modifies it for regulation using nonzero setpoint. Using similar approach, the upper bound of disturbance magnitude is used to compensate the disturbance. The remainder of this paper is organized as follows. Section II explains quadrotor model in SO (3). This is continued by section III that describes proportional-derivative (PD) control with disturbance compensation. Next, the numerical simulation and analysis are presented in section IV. This paper ends with conclusion in section V.

Quadrotor Equations in SO(3)
This section explains the derivation of state-space equation based on [9], [10], and [11]. In exponential coordinates representation, the attitude representation is ζ = [ζ1 ζ2 ζ3] T , where ζ is the logarithm of the rotation matrix . The angular velocity is described in body frame axes, denoted as ωb = [p q r] T . The inertia matrix of the quadrotor is diagonal. The quadrotor's dynamics is defined by Euler equation: The quadrotor kinematics is written in terms of the angle ζ = log(R) ˅ [11]: . Therefore, the second order system of quadrotor UAV in SO (3) is defined as shows the benefit of using SO(3) for regulation since onversion from ωb, which is obtained from gyroscope sensor, to ζ  does not suffer from singularity. This is due to . On the other hand, in RPY representation, conversion from ωb to Θ  suffers from singularity when θ = π/2 (see [10] or [9] for details).

PD Control with Disturbance Compensation
Before disturbance compensation is taken into consideration, the simpler proportional-derivative (PD) control under no disturbance is explained. This control law uses the the result made by Bullo [11]. The control law to regulate the quadrotor to a nonzero set point ζd is where Kp and Kd are positive definite matrices. This control law is a modificatioin from [11]; the original control law uses zero set point. The proof of the control law's stabilizing ability, which invokes Lyapunov stability theorem, can be read at [11]. In reality, quadrotor flight encounters disturbance, which may be caused by parameter uncertainties, approximation or inaccuracy in aerodynamic effects modelling, and wind. The disturbance can be modelled by adding g into dynamics equation in the system: The magnitude of g has an upper bound of δ, where δ is a nonzero positive scalar. Under the influence of the disturbance, the closed-loop system dynamics becomes The disturbance compensation u is added to the control law: The disturbance compensation u is where k1 and k2 are positive constants. This compensation is modifed from [8].

Numerical Simulation and Analysis
The simulation is conducted by adding random disturbance to the system. The quadrotor model is based on [9] and [12].  Figure 1 shows the angle ζ with the control law without compensation, while Figure 2 shows the angle ζ under compensation effect. In Figure 1, after about 2 seconds, the angle values' divergence from the set point is close to 5°. In figure 2, the angle values after approximately 2 second does not diverge close to 5° (the divergence is well below 5°). The fluctuation of angle values in Figure 2 is smoother than it is in figure 2. It is apparent that, under disturbance influence, the disturbance compensation reduces the bound of state variables around the set point ζd, whose all elements equal 10°.
Possible future works following this research can be conducted in some areas. For example, it will be necessary to test the control algorithm in physical experiment. It may be also possible to make adaptive control law or design backstepping control law on SO(3) that can encounter disturbance.

Conclusion
The disturbance compensation reduces the bound of state variables. The bound of state variables is smaller with the compensation than it is without the compensation. The compensated control law can handle constant disturbance better than the uncompensated control law can.