FUZZY LOGIC BASED QUADROTOR FLIGHT CONTROLLER Syed Ali Raza and Wail Gueaieb School of Information Technology and Engineering, University of Ottawa 800 King Edward Avenue, Ottawa, ON, Canada syedali.raza@uottawa.ca, wgueaieb@site.uottawa.ca Keywords: Quadrotor, Fuzzy Logic, Flight Controller. Abstract: Quadrotor unmanned aerial vehicles (UAVs) have gained a lot of research interest in the past few years, due to the clear advantages posed by their vertical take-off and landing (VTOL), hovering capability, and slow precise movements. These characteristics make quadrotors an ideal candidate for applications that require traversing through difficult environments with many obstacles. Belonging to the helicopter rotorcraft class, quadrotors are highly nonlinear systems that are difficult to stabilize. This paper proposes a fuzzy logic based flight con- troller for an autonomous quadrotor. Two types of fuzzy logic controllers are implemented. The developed flight controllers are tested in a quadrotor simulator and simulation results are presented to demonstrate the performance of each controller. The controllers performances are also benchmarked against conventional con- trol based techniques such as input-output linearization, backstepping and sliding mode control. In comparison with other conventional control techniques mostly designed for indoor applications, the proposed fuzzy logic based controllers showed satisfactory control of the quadrotor in the presence of various disturbances such as sensor noise and high wind conditions. NOMENCLATURE The following notations are used in the paper: F n represents the reference frame where the subscript n ∈{i, b, v , φ, θ}. () F n represents a point or a vector in reference frame F n . ˙ (), ¨ () represent first and second time derivatives, re- spectively. R F 2 F 1 R n×n is the rotation matrix that maps frame F 1 to frame F 2 . sθ = sin θ, cθ = cos θ. I is the identity matrix. COG is the quadrotor’s center of gravity. P T =[ p x p y p z ] is the position of the quadrotor’s COG. M is the mass of quadrotor (including the motors). m is the mass of one motor. l is the length of the arms of quadrotor. J T =[ j x j y j z ] is the moment of inertia vector of the quadrotor. φ, θ, ψ are the quadrotor’s roll, pitch, and yaw angles, respectively. T =[φθψ] is the quadrotor’s orientation vector. K T and K τ are motor constants. T motor , τ motor , PWM motor are thrust, drag and PWM value for motor ∈{ f , r , b, l }, the subscripts f , r, b, and l , denote front, right, back, and left, motors re- spectively. 1 INTRODUCTION The motivation for employing robots in search and rescue operations is multifaceted. However, the tech- nology is still in its infancy and there are many issues which need to be addressed. Search and rescue mis- sions, as well as simulations, have demonstrated sev- eral areas in which robot contributions need to be im- proved (Fincannon et al., 2004). Advances in comput- ing, MEMS inertial measurement sensors, and com- munications technology make it possible to achieve autonomous performance and coordination of these vehicles in test environments (Waslander et al., 2005). But, achieving complete autonomous performance in real environments is a milestone yet to be reached. A quadrotor, as depicted in Figure 1, is a rotary wing UAV, consisting of four rotors located at the ends of a cross structure. By varying the speeds of each rotor, the flight of the quadrotor is controlled. Quadrotor vehicles possess certain essential charac- teristics, which highlight their potential for use in search and rescue applications. Characteristics that 105