• No results found

Quadrocopter Fuzzy Flight Controller

N/A
N/A
Protected

Academic year: 2021

Share "Quadrocopter Fuzzy Flight Controller"

Copied!
74
0
0

Loading.... (view fulltext now)

Full text

(1)

International Master’s Thesis

Quadrocopter Fuzzy Flight Controller

Muhammad Saad Shaikh

Technology

Studies from the Department of Technology at Örebro University 0 örebro 2011

(2)
(3)
(4)
(5)

Studies from the Department of Technology

at Örebro University 0

Muhammad Saad Shaikh

(6)

© Muhammad Saad Shaikh, 2011

Title: Quadrocopter Fuzzy Flight Controller

(7)

Abstract

Quadrocopter is an aerial vehicle platform which has become very popular among researchers in the recent past due to the advantages it offers over con-ventional helicopters. Quadrocopter is very simple and unique, but it is in-herently unstable from aerodynamics point of view. In recent past researchers have proposed many control schemes for quadrocopter. In this thesis we present fuzzy logic controller for quadrocopter. After brief introduction brief hardware details are given that is used in this thesis. After that design procedure for the fuzzy controller is presented. Then the designed fuzzy controller is tested in Hardware In Loop (HIL) setup. The experimentation to validate the function-ality and applicability of the designed controller were performed in contrained setup due to some technical problems. The results of the experiments were sat-isfactory and it is concluded that it is possible to stabilize quadrocopter with fuzzy logic controller.

(8)
(9)

Acknowledgements

I would like to thank those who helped during my thesis work. Without their support, I could have never accomplished this work.

I take this special occasion to thank my parents. I dedicate this work to my parents. It would have been simply impossible to start, continue and complete without the support of my parents who, unconditionally provided the resources to me.

I am eternally indebted to my supervisor Ivan Kalaykov for all the help, invaluable guidance and generous support throughout my thesis work. I have been very fortunate to be associated with such a kind and good person and it would take more than a few words to express my sincere gratitude.

I also like to thank Bo-lennart and Boyko Iliev for their enlightening sugges-tions and advices. Their professionalism, guidance, dedication and inspirasugges-tions will always serve me as an example in my professional life.

(10)
(11)

Contents

1 Introduction 1 1.1 Objectives . . . 1 1.2 Concept of Quadrocopter . . . 2 1.3 Brief History . . . 3 1.4 Modern Quadrocopters . . . 3

1.5 Advantages and disadvantages . . . 4

1.6 Outline of this document . . . 5

2 Hardware Description 7 2.1 The Quadrocopter at Orebro University . . . 7

2.2 Onboard System . . . 8

2.2.1 Micro-controller . . . 8

2.2.2 YGE motor controllers . . . 8

2.2.3 Motors . . . 9

2.2.4 Propellers . . . 9

2.2.5 Sensors on-board . . . 10

3 Background 15 3.1 Different control strategies used for quadrocopters. . . 15

3.2 Major Research/Educational Projects . . . 15

3.2.1 European Aeronautic Defense and Space Company . . . 15

3.2.2 Pennsylvania State University . . . 16

3.2.3 Middle East Technical University . . . 17

3.2.4 Australian National University . . . 17

3.2.5 University of British Columbia Vancouver, BC, Canada . 18 3.2.6 Cornell University . . . 19

3.2.7 Swiss Federal Institute of Technology . . . 19

3.2.8 University of Technology in Compiegne, France . . . 21

3.2.9 Stanford University . . . 22

(12)

vi CONTENTS

4 Controller design and Simulink model 27

4.1 Control Strategy . . . 27

4.2 Quadrocopter fuzzy controller design . . . 27

4.3 Implementation . . . 30

4.4 Complete description of Simulink model for experimentation . . 31

4.4.1 Data acquisition . . . 31

4.4.2 De-multiplexing. . . 32

4.4.3 Sensory data processing . . . 32

4.4.4 Controllers . . . 34

4.4.5 Normalizing of controllers singnals for motors . . . 35

4.4.6 Mixing of normalized controller signals. . . 35

4.4.7 PWM signal generation for motors . . . 36

5 Experimentation and results 39 5.1 Experimentation setup . . . 39

5.2 Results. . . 40

5.3 Limitations in experimentation . . . 46

6 Conclusions and future work 53 6.1 Conclusions . . . 53

6.2 Future works . . . 53

6.2.1 GPS integration . . . 53

6.2.2 Translation of Simulink model into C code . . . 54

6.2.3 Wireless connections . . . 54

6.2.4 On-board PWM signals generation . . . 54

(13)

List of Figures

1.1 Quadrocopter dynamics. . . 2

1.2 Early Quadrocopters . . . 3

1.3 Modern manned quadrocopters . . . 4

2.1 The experiment installation . . . 7

2.2 On-board computer . . . 9

2.3 HMC6352 compass module . . . 10

2.4 Timing diagrram of reading two bytes from the HMC6352 (slave) 11 2.5 ADXRS300 gyro sensors . . . 11

2.6 RATEOUT Signal Increases with Clockwise Rotation . . . 12

2.7 LIS3LV02DQ, a 3-DOF- acceleration sensor . . . 12

2.8 LIS3LV02DQ read and write operation timing diagram . . . 13

3.1 Quadrocopter developed by European Aeronautic Defense and Space Company 16 3.2 Quadrocopter in Pennsylvania State University. . . 17

3.3 Quadrocopter tracking with a camera. . . 18

3.4 Quadrocopter in Middle East Technical University . . . 19

3.5 X4-Flyer. . . 20

3.6 Experimental setup in University of British Columbia . . . 21

3.7 Quadrocopter designed in Cornell University . . . 22

3.8 Quadrocopter designed in Swiss Federal Institude of Technology 23 3.9 Quadrocopter designed in University of Technology in Compiegne, France 24 3.10 Stanford University quadrocopter projects . . . 24

4.1 Uniform membership functions for inputs . . . 29

4.2 input variable roll angle with high input gains . . . 30

4.3 input variable rate of angle change and angles . . . 30

4.4 Output of roll controller . . . 31

4.5 Fuzzy rules table . . . 32

4.6 Rules surface . . . 33

4.7 Simulink model for experimentation . . . 34

(14)

viii LIST OF FIGURES

4.8 Simulink model for processing gyro sensors readings. . . 35

4.9 Simulink model for processing accelearation sensors readings . . 35

4.10 Simulink model for processing heading sensor reading . . . 36

4.11 Simulink model for roll and pitch controllers . . . 36

4.12 Simulink model for Yaw, X, Y and Z axes controllers . . . 37

5.1 The experiment installation . . . 39

5.2 Stabilization time without operating motors . . . 41

5.3 Disturbence test with 35 percent power and controller gain 1 . . 42

5.4 Disturbence test with 35 percent power and multiple controller gain 43 5.5 Disturbence test with 60 percent power and controller gain 1 . . 44

5.6 Disturbence test with 15 percent power and controller gain 1 . . 45

5.7 Disturbence test with 15 percent power and controller gain 2 . . 46

5.8 Disturbence test with 15 percent power and controller gain 2.5 . 47 5.9 Disturbence test with 25 percent power and controller gain 1 . . 48

5.10 Disturbence test with 25 percent power and controller gain 2 . . 49

5.11 Disturbence test with 25 percent power and controller gain 2.5 . 50 5.12 Disturbence test with 35 percent power and controller gain 2 . . 51

(15)

List of Tables

(16)
(17)

List of Algorithms

(18)
(19)

Chapter 1

Introduction

An unmanned aerial vehicle (UAV) is an unpiloted aircraft which can either fly autonomously or it can be remotely controlled based on program downloaded into on-board computers. Unmanned aerial vehicles have very vast area of ap-plications in military for missions that are too dull, dirty, or risky for human piloted aircraft. They are also used in a growing number of civil applications such as aireal inspection.

UAVs can be divided basically into two categories, fixed wing UAVs and ro-tatory wing UAVs. Roro-tatory wing (or helicopter) UAVs have some advantages over fixed wing UAVs that they can take off and land vertically, and that they also can maintain their position at a fixed point in 3D space. Maintaining a po-sition at a fixed point is called hovering. One very successful design for smaller UAVs is an helicopter with four horizontal rotors with no tailrotor, such an helicopter is called quadrocopter or quadrotor. Quadrocopters have some ad-vantages over conventional single blade helicopter that they can be controlled by changing the speed of the rotors and thus fixed-pitch blades are used that simplifies the design and controlling of the quadrocopters. Secondly, the use of four rotors allows each individual rotor to have a smaller diameter than the equivally capable single blade conventional helicopter rotor, for a given vehicle size, allowing them to attain less kinetic energy during flights. The most impor-tant advantage is that they can make manuevers that conventional helicopters can not make.

1.1

Objectives

The objective of this thesis is to design a fuzzy flight controller for a quadro-copter that will control quadroquadro-copter orientation in 3DOF namely; Pitch, Roll and YAW. The controller is tested in Hardware In Loop (HIL) simulation. To reach this objective:

• Three gyros, one 3DOF accelerometer, a heading sensor and a GPS mod-ule have to interfaced with the on-board micro-controller

(20)

2 CHAPTER 1. INTRODUCTION

• A simulink model for the fuzzy controller has to be developed and down-loaded into dSPACE computer

• A wired or wireless connection has to be made between on-board com-puter and dspace system

• An Experiment setup has to be developed that is used to limit the 6DOFs to 3DOFs namely; Pitch, Roll, and YAW

1.2

Concept of Quadrocopter

From the very first day in helicopter research, the quadrocopter configuration was considered as an alternative. In a conventional helicopter layout the torque produced by the main rotor is compensated by the tail rotor. When using two rotor configuration the torques created by the rotors are counteracted by each other. But two rotor configuration still has issues in control as the rotational and translational motions are highly dependant to each other. In four rotor configuration the control becomes simpler and the rotational motions are de-coupled for the gyroscopic effects. Translational motions can be achieved by tilting the vehicle.

In the most common design for quadrocopter, the two sets of rotors (1, 3) and (2, 4) rotate in opposite directions as shown in Fig. 1.1. By changing the rotor speeds, lift forces can be changed and motion can be created in de-sired direction. Changing the speeds of all four rotors generate vertical motion. Increasing or decreasing the speeds of rotor 2 and 4 conversely produces roll ro-tation coupled with lateral motion. Pitch roro-tation and the corresponding lateral motion result from from changing the speed of rotors 1 and 3. Yaw rotation re-sults from the difference in the counter-torque between the pairs of rotors [13].

Figure 1.1: Quadrocopter motion, the arrow width is proportional to propeller

(21)

1.3. BRIEF HISTORY 3

1.3

Brief History

Breguet Brothers were the first people who built the quadrocopter in 1907. they named their quadrocopter as Gyroplane. Their Gyroplane comprised of four long girders fixed in the form of a horizontal cross. The flights of the Gyroplane are considered to be the first human piloted flight of a helicopter, but not a free or untethered flight. The Gyroplane never flew properly because it lacked in stability and proper means of control.

The second attempt was made in 1922 when Georges de Bothezat built one of the largest helicopters of the time which was also a quadrocopter. He named his quadrocopter as Flying Octopus. His Flying Octopus flew successfully many times, at low altitudes with slow moving speeds. However, the project was cancelled because of low performance, high financial costs, and the increasing military interest in autogiros at that time.

In the same year Etienne Oemichen built his quadrocopter, the Oemichen No.2. It was equipped with four 2-blade paddle-shaped rotors of which the angles could be varied by warping. Additional rotors that were necessary for control and lateral movement, due to this the Oemichen No.2 exhibited, for its time, a good degree of stability and control, and it made about a thousand test flights during the early 1920s.

Figure 1.2: Early Quadrocopters

1.4

Modern Quadrocopters

After these early and initial attempts, engineers focus was shifted more on the single rotor helicopter configuration, because of the stability issues with the quadrocopter configuration. Interest in the quadrocopter configuration for manned flight reviveded when knowledge on control systems increased. Also the quadrocopter configuration with tiltable rotors became a choice to provide more benefits and faster forward flight. Such a design was named as ’Con-vertawings Model’.

Convertawings Model revived the concept of Oemichen and de Bothezat tried out in 1922. A first prototype was built in 1956. Despite complete testing and manufacturing, military support for the vehicle stopped after shortings in defence budget. However, the design, particularly its control technique, was

(22)

4 CHAPTER 1. INTRODUCTION

a basis for current research on vertical-rising aircraft designs that incorporate tiltable wings or a square configuration of four rotors or jets.

In order to develop a commercial passenger plane using four tilting rotors, the Curtiss X-19 was developed. The first test flight took place in November 1963, but the vehicle never completed transition between hover and forward moving flight because improper mechanical control characteristics [13].

On 14 September 2005 the team of Bell Helicopters and Boeing signed a contract with the U.S. military to built the Quad Tilt Rotor (QTR) aircraft, to fullfil the crucial need for long range, high speed, heavy lift without access to runways.The QTR is a tandem-wing, four propeller plane with a large cargo capacity.

Currently, the Moller company is working on several flying vehicles with the intension of building a aircraft to replace the cars as the common way of travelling and hover in a small areas. Their last invention is the M400 Skycar with four ducted propellers. This aircraft has a capacity of four passengers, and a cruise speed of around 400 km/h. However, they have still some issues with validation, but it is highly expected that these issues will be removed next year [1].

Figure 1.3: Modern manned quadrocopters

1.5

Advantages and disadvantages

As only rotors speed variation is used to change orientation and position, blade-pitch control of the rotors is not required and thus rotor mechanics are become easier, which makes the quadrocopter layout interesting for smaller sized Ver-tical/Short Take Off and Landing (V/STOL) UAVs. In addition to this, thrust

(23)

1.6. OUTLINE OF THIS DOCUMENT 5

is solely used to compensate for the gravity and not to counteract the torque, because the four rotors neutralize the gyroscopic effect, so thrust is completely used to produce the lift.

For micro quadrocopters, four rotors results in a very small rotor diameter, which decreases the efficiency and increases energy requirment to get equal lift. Also the dimensions and weight of a quadrocopter with equal payload is more than a conventional helicopter. The simplifications in developing and control which is offered by the design, makes it still a very favourable option for UAVs.

1.6

Outline of this document

In Chapter 2, brief details of hardware and software tools that are used in project are provided. In Chapter 3, related work is presented briefly. In Chap-ter 4, the design of the controller is presented. In ChapChap-ter 5, details of the experiment is provided and results are discussed. In Chapter 6, future works ideas are given, and this chapter also contains concluding remarks.

(24)
(25)

Chapter 2

Hardware Description

2.1

The Quadrocopter at Orebro University

This thesis can be regarded as the sequel of previous thesis work at AASS on quadrocopter titled as, "Modeling and Simulation of Quadrotor Aircraft" [7]. The purpose of that thesis at Orebro University and the Applied Autonomous Sensor Systems Lab (AASS) was to establish an experiment installation, which enables students of the program Automation Engineering to apply and test the skills they have gained in control engineering courses. The experiment instal-lation is depicted in Fig. 2.1. It is supposed to cover the development chain in control engineering reaching from mathematical modelling and control pa-rameter determination over a pure virtual simulation to hardware-in-the-loop simulation and testing. This thesis is about the hardware-in-the-loop simula-tion.

Figure 2.1: The experiment installation with the quadrocopter helicopter

The Quadrocopter platform at Orebro University is a commercially avail-able UAVP. The main features of the kit are:

(26)

8 CHAPTER 2. HARDWARE DESCRIPTION

• a provided pre-programmed PIC micro-chip (saved for later use in further experiments)

• a 60cm full-carbon frame

• four YGE-30i Quadrocopter motor speed controllers • four brushless motors AXI 2217/20

• three gyro sensors Breakout ADXRS300 for measurement of angular ve-locities

• one Breakout LIS3LV02DQ three-axis linear acceleration sensor • two CCW and two CW propellers

• a pre-assembled circuit board

2.2

Onboard System

2.2.1

Micro-controller

PIC16F876A is used as the main processor on-board. All the sensors in the project are interfaced with this controller. Controller reads sensory data from sensors on every iteration of code burned into it. This data is sent to dspace computer in the form of 12 bytes, two bytes for each sensor reading. The com-munication between on-board computer and dSPACE computer is initialized by dSPACE.

2.2.2

YGE motor controllers

The YGE motor controllers are designed to convert the input value into an out-put PWM signal powering the motors and shifting phases on the motor inout-puts. Each motor has its own YGE controller. Each YGE controller is powered with a voltage 7.5-17V. The YGE controllers has the feature of undervoltage detection resulting in a reduced power of the motors for safe landing in case the supply voltage lies below a certain threshold.

The input PWM specification for the YGE controllers is 50Hz carrier fre-quency with pulses between 1.18ms and 1.8ms resembling zero throttle and full throttle. The duty cycle therefore ranges between 0.059 and 0.09.

When switching on the motor controllers the throttle has to be set to zero and the corresponding PWM values have to be send to the YGE. In this case the YGE initializes correctly and gives 3 ascending beeps.

The YGE motor controlles feature also an I2C bus input. This input can also

be used to communicate set values and also to programme the YGE controllers. This is currently not used.

(27)

2.2. ONBOARD SYSTEM 9

Figure 2.2: On-board computer

The YGE motor controllers can be programmed by moving the throttle and waiting for acknowledgement beeps of the YGE. The featured programming modes and options can be looked up in the YGE manual.

2.2.3

Motors

Since the motors are brushless, the phases of the AC supply have to be shifted circularly in the three supply wires in order to rotate the motor. Since the motor features not only three poles but 14, the motor rotation per 2π3 = 60◦ phase shift is 8.6◦, which has the similar effect as a gear box.

The motors are equipped with neodymmagnets and feature high torques in order to be used without gear box.

A motor carries out 840rpm per volt and is suitable for up to 3 LiPo cells re-sulting in a total voltage of 12.6V and a maximum rotation speed of 10080rpm. The maximum current drainage to the battery is 18A, where the range for best efficiency is 8-14A. The maximum torque is approximately 0.2Nm at 18A.

2.2.4

Propellers

The propellers in use are EPP1045 propellers by Maxx Ltd. out of compos-ite material with a length of 10 inches and a pitch of 4.5 inches per revolu-tion. Mounted are two sets of counter rotating propellers. The shaft diameter is 3mm.

(28)

10 CHAPTER 2. HARDWARE DESCRIPTION

2.2.5

Sensors on-board

Following is the brief description of sensors on-board:

Heading Sensor

A compass sensor allows absolute flight direction measurement and a perfectly long term stability of the yaw axis. For sensing exact heading position Hon-eywell HMC6352 compass module is used. The HonHon-eywell HMC6352 is a fully integrated compass module that combines 2-axis magneto-resistive sen-sors with the neccesary analog and digital support circuits, and algorithms for heading computation. By combining the sensor elements, processing electron-ics, and firmware in to a 6.5mm by 6.5mm by 1.5mm LCC package, it offers a complete, ready to use electronic compass.

Figure 2.3: HMC6352 compass module

The HMC6352 communicates via a two-wire I2C bus system as a slave

device. All bus transactions begin with the master device issuing the start se-quence followed by the slave address byte. The address byte contains the slave address; the upper 7 bits (bits7-1), and the Least Significant bit (LSb). The LSb of the address byte designates if the operation is a read (LSb=1) or a write (LSb=0). At the 9 th clock pulse, the recieving slave device will issue the ACK (or NACK). Following these bus events, the master will send data bytes for a write operation, or the slave will transmit back data for a read operation. All bus transactions are terminated with the master issuing a stop sequence.

The sensor is programmed to work on heading mode. In this mode HMC6352 the heading output data is sent to master device in tenths of degrees from zero to 3599 and provided in binary format over the two bytes. Figure 2.4shows how to read two bytes from the HMC6352 (slave). The slave continues to hold the SDA line low after the acknowledge bit because the first bit of the data bytes is zero.

(29)

2.2. ONBOARD SYSTEM 11

Figure 2.4: Timing diagrram of reading two bytes from the HMC6352 (slave)

Gyro Sensor

A stable hovering control requires 3 gyro sensors: Pitch, Roll, and Yaw. ADXRS300 gyro sensors by Analog Devices are found to be most suitable for UAV appli-cation, but not usable without special soldering equipment. Therefore already mounted sensors to break-out-PCBs are used.

Figure 2.5: ADXRS300 gyro sensors

ADXRS300 is an analog sensor. It outputs the rate of angle change as DC voltage range from 0 to 5V, corresponds to -300◦/sec to +300/sec, where 2.5V

corresponds to 0. To read gyroscopic data from ADXRS300s, internal analog to digital converter(ADC) of micro-controller is used.

Acceleration Sensor

For even more hovering stability, a 3-DOF- acceleration sensor is required, in addition to the gyro sensors. The LIS3LV02DQ is a three axes digital output linear accelerometer that includes a sensing element and an IC interface able to take the information from the sensing element and to provide the measured acceleration signals to the external world through an I2C/SPI serial interface.

(30)

12 CHAPTER 2. HARDWARE DESCRIPTION

Figure 2.6: RATEOUT Signal Increases with Clockwise Rotation

Figure 2.7: LIS3LV02DQ, a 3-DOF- acceleration sensor

The LIS3LV02DQ has a user selectable full scale of ±2g, ±6g and it is capable of measuring acceleration over a bandwidth of 640 Hz for all axes.

The device is programmed to sense accelaration in range of ±2g, and com-municates through SPI communication protocol. The micro-controller is pro-grammed to get six bytes on every iteration of code, two bytes for each axis acceleration reading.

The LIS3LV02DQ SPI is a bus slave. The SPI allows to write and read the registers of the device using 4 wires: CS, SPC, SDI and SDO. The figure 2.8

shows the timing diagram of read and write operations. The device is interfaced with micro-controller as per the information provided in figure2.8.

GPS Sensor

To fly autonomously a navigation technique is required. Global Positioning System (GPS) is found to be most simplest and appropriate for our application. LEA-5H-008 in-door GPS module is selected for the project. An external usb to UART converter is made to connect GPS module to on-board micro-controller.

(31)

2.2. ONBOARD SYSTEM 13

Figure 2.8: LIS3LV02DQ read and write operation timing diagram

the module can be configured to ubx or NMEA standards. However, it is con-figured to NMEA protocol. The C function downloaded into micro-controller can translate one of the nine NMEA messages namely, GPGGA. GPGGA mes-sage gives sufficient information for autonomous flight, for example: Longi-tude, Latitude and hight.

(32)
(33)

Chapter 3

Background

3.1

Different control strategies used for

quadrocopters

For the control of UAVS there are several methodologies used in the literature. Control systems that are used for the control of a helicopter type flying ma-chine are: robust feedback controllers based on H∞techniques [14], fuzzy

con-trol, PD controllers [5], back-stepping controllers [5], Neural-Network Adap-tive Flight Control [5]. For the experimentation done on the Stanford dragan-flyer UAVS, nonlinear control methods are used that uses discrete-time dynamic inversion, under input saturation [10]. Another study done at the University of Pennsylvania showed another control example, which used a vision based control methodology for the control of UAVS [4].

3.2

Major Research/Educational Projects

In time the knowledge of control technology improved together with the ad-vancement in computing power and sensors that allowed the designing of un-manned quadrocoptors. Several research labs and institutions started their re-seach on quadrocoptors, but the development of complete autonomous flight in dynamic environment is still a challenge.

Recently, there have been number of different projects in the literature about quadrocoptors. These works used different control techniques, sensors and materials. Following is the brief description of the research projects that con-tributed in quadrocopter research:

3.2.1

European Aeronautic Defense and Space Company

The quadrocopter in figure3.1, named as Quattrocopter, is 65 cm electrically powered V/STOL with the ability of flying about 20 minutes. It weighs half

(34)

16 CHAPTER 3. BACKGROUND

kilogram. It can fly with in the range of one kilometer. Its IMU (Inertial Mea-surment Unit) comprised of six inertial sensors for its six degrees of freedom. In addition to these six sensors one GPS unit and air data sensors (gas sensors) is also interfaced. Total IMU weighing 65 grams, consumes about three watts at 5 V. The system can be stored in a small space, as the motors can be detached easily [20].

Figure 3.1: Quadrocopter developed by European Aeronautic Defense and Space

Com-pany

3.2.2

Pennsylvania State University

Pennsylvania State university have conducted two different studies on quadro-coptors [6] [4]. One is a master thesis work that was focused on a quadrocopter test bench, shown in figure3.2. The IMU for this quadrocopter was consist of three gyro sensors and one accelerometer. Attitude of the quadrocopter was controlled with PI control law.

Second work done in university of Pennsylvania used commercially avail-able DraganFlyer as a testbed. This quadrocopter setup has an external pan-tilt ground and on-board cameras in addition to the IMU. One camera was set on the ground to capture the motion of five 2.5 cm colored pointers attached un-derneath the DraganFlyer, to obtain pitch, roll and yaw angles and the position of the UAV by using a tracking algorithm. Algorithm routines ran in ground computer. GPS or other accelerometers could not be interfaced to the system due to the weight limitations. The controller used only cameras to obtain the relative positions and velocities. Figure3.3shows the experiment setup for this research.

Two control techniques were studied in this research, one using a series of mode-based, feedback linearizing controllers and the other using a

(35)

back-3.2. MAJOR RESEARCH/EDUCATIONAL PROJECTS 17

Figure 3.2: Quadrocopter designed in Pennsylvania State University

stepping control law. Simulations performed on Simulink showed the capacity of the proposed controller to perform output tracking control even when there are errors on state estimates.

3.2.3

Middle East Technical University

Researchers at Middle East Technical University utilized three orthogonal piezo-electric gyros in their quadrocopter setup to control the attitude of the quadro-copter [2]. The attitude was controlled by a LQR (Linear Quadratic Regulator) and PD controller. Frame was built of 45 cm rectangular aluminum profiles. Figure3.4shows the experiment setup for this research.

3.2.4

Australian National University

The testbed used in Australian National University (ANU) was named as X4-Flyer. The X4-Flyer [17] consists of a HC-12 a single board computer that was used as the signal conditioning system. This card uses two HC-12 proces-sors and outputs pulse width modulated (PWM) signals to control the speed of motors directly, inputs PWM signals from an R700 JR Slimline RC receiver allows direct plot input from a JP 3810 RF transmitter and has two separate RS232 serial ports, one is used to communicate with the inertial measurement unit (IMU) and the other is used as an asynchronous data linked to the ground computer.

In IMU, the most suitable unit considered was the EiMU embedded inertial measurement unit developed by the robotics group in QCAT, weighs 50 to 100

(36)

18 CHAPTER 3. BACKGROUND

Figure 3.3: Quadrocopter tracking with a camera

grams. Crossbow DMU-6 is also used in the prototype. It weighs about 500 grams

The pilot augmentation control system is used. A double lead compensator is used for the inner loop. The final setup is shown in Figure3.5.

3.2.5

University of British Columbia Vancouver, BC, Canada

The research on quadrocopter control in in University of British Columbia was initiated in the Department of Electrical and Computer Engineering [14]. This work was focused on the non-linear modelling of a quadrocopter. An exper-imental setup including a flying mill, a DSP system, a programmed micro-controller and a RF transmitter was used to test the flight micro-controller. Based on the nonlinear model, an H∞ loop shaping controller was designed for attitude

stabilization, speed, throttle and yaw control.

A PIC micro-controller, PIC16F877, was programmed to communicate the control data to a PWM signal in order to reduce significant CPU load which otherwise would have been associated with the DS1102. This signal is further used to control the motors of the quadrocopter via a 4 channel Futaba RF transmitter working in training mode.

To conduct flight control experiments, an experimental rig including a cus-tom designed flying mill, a personal computer, dSPACE DSP board, a micropro-cessor pulse modulator, a RF transmitter and the Draganflyer III was arranged. A picture of the flying mill is shown in Figure 3.6. The steel base and carbon fiber boom limit the flight route of the quadrocopter to a half sphericity of 1 meter radius.

(37)

3.2. MAJOR RESEARCH/EDUCATIONAL PROJECTS 19

Figure 3.4: Quadrocopter designed in Middle East Technical University

Based on the nonlinear model, a H∞ loop shaping controller is developed

for attitude stabilization, speed, throttle and yaw control. A constraint model based predictive controller (MBPC) was also implemented for longitudinal and lateral trajectory control.

3.2.6

Cornell University

Cornell University conducted a research on the Autonomous Flying Vehicle (AFV) project [15] to produce a reliable autonomous hovering vehicle.

To get enough thrust, MaxCim motors were used. The final vehicle weighed about 6.23 kg.

In the begining an Extended Kalman Filter was designed to handle the esti-mation of both the state and the six inertial sensor bias parameters. This filter found to be cumbersome to be implemented, due to extremely big and com-plex Jacobian terms and instead a square root implementation of a Sigma Point Filter (SRSPF) was used. The figure 3.7shows the final picture the developed UAV.

3.2.7

Swiss Federal Institute of Technology

In the research conducted at Swiss Federal Institude of Technology [18] the mechanical design, mathematicl modelling, inertial sensing, and control of an

(38)

20 CHAPTER 3. BACKGROUND

Figure 3.5: The X4-Flyer developed in FEIT, ANU

indoor V/STOL autonomous quadrocopter OS43 is presented. The movements of the quadrocopter were restricted to 3DOFs.

The quadrocopter was attached to PC through a standard RS232 port. The RS232 to I2C module was used to translate the serial signals to the I2C bus

mo-tor modules. These modules integers a PID regulamo-tor on a PIC16F876 micro-controller and are capable of open or closed loop operation in position, speed or torque control. The MT9-B8 IMU9 estimates with a Kalman filter the In-ertial sensory data and give the calibrated data of acceleration and angular velocity. It weights about 33g and communicates baudrate is 115kbps.

The cross is made up of carbon alloy profiles thus vehicle, the mass of which is around 240gm, is lightweight.The quadrocopter has four propulsion group, each composed of a 29g motor including magnetic encoders, a 6g-gear box and a 6g propeller.

Before testing on the real-time system, multiple simulations were performed on Simulink. The controller task was to stabilize the altitude while compen-sating the initial errors in the attitude of the vehicle. The real-time system had some unwanted but unavoidable delays and actuator saturation issues. The de-lays were mainly due to serial communications and the actuator time constant. To rectify these lacks, two Simulink discrete-step delay blocks were added in the feedback loop and on the actuators. Saturation level depends on the chosen actuators. Figure3.8depicts the experimental setup for this research.

(39)

3.2. MAJOR RESEARCH/EDUCATIONAL PROJECTS 21

Figure 3.6: Experimental setup in University of British Columbia

3.2.8

University of Technology in Compiegne, France

University of Technology in Compiegne used commercially available quadro-copter system, developed by the Draganfly Innovations Inc.for their research on quadrocopters [16]. The four control signals were transmitted by a Futaba Skysport 4 RF transmitter.

The transmitter and the ground computer were connected by data acquisi-tion cards (ADVANTECH PCL-818HG and PCL-726). The connecacquisi-tion in the radio is directly made to the joystick potentiometers for the collective attitude control. To simplify the tuning of the controller and for flight security , several switches were added in the PC-transmitter interface so that each control input can be operated either in manual mode or in automatic mode. Therefore the control inputs that are generated manually were selected by the human opera-tor while the other control inputs were generated by the ground PC.

The Polhemus was interfaced through RS232 to the PC. This type of sensor was reported to be very sensitive to electromagnetic noise and it was install as far as possible from the electric motors and their drivers. The quadrocopter had 3 onboard gyros that helped the vehicle stabilization.The proposed controller

(40)

22 CHAPTER 3. BACKGROUND

Figure 3.7: Quadrocopter designed in Cornell University

was based on Lyapunov analysis using a nested saturation algorithm. Figure3.9

shows the experimental setup for this research.

3.2.9

Stanford University

In 1999, Stanford University started a quadrocopter research project, named as Mesicopter [11,12] that ended in 2001. The purpose of the research was to study the feasibility of a centimetre scaled quadrocopter to use in huge numbers to investigate large areas or even planets. In this research an extensive study was done into the aerodynamics of a quadrocoptors. In the end a prototype was developed of which the rotors could rotate, but no lift off was achieved.

Second, the Stanford Testbed of Autonomous Rotorcraft for Multi-Agent Control (STARMAC) was started. This is a multi vehicle setup used to study new theories in multi agent control on a real-world environment [8,9]. STAR-MAC comprised of eight quadrocopters that are autonomously tracked and are given waypoint trajectory.

The project is divided into three parts. In the first part the UAVs and testbed were designed to verify the design, test fights were done. This part was success-fuly finished in September 2004 with the development of STARMAC I. In part two the complete vehicle and testbed is re-engineered to develpo a full function-ing testbed. In the final part the multi agent control is demostrated. Figure3.10

(41)

3.2. MAJOR RESEARCH/EDUCATIONAL PROJECTS 23

Figure 3.8: Quadrocopter designed in Swiss Federal Institude of Technology

STARMAC I

STARMAC I has a total of 1 kilogram of thrust and can hover for not more than ten minutes at full throttle. The onboard electronics were replaced with PCB to have complete control over motors, power supply and sensor readings. An upgrade to lipo batteries has increased both flight payload capacity and hovering time and has considerably enhanced the capacity of the system. For inertial measurement the Microstrain 3DM-G motion sensor was used, with 3-axis gyro, accelerometer and heading sensor information. For velocity and position measurement, a Trimble Lassen Low Power GPS receiver was used. To improve altitude information the downward-pointing SOnic Detection And Ranging (SODAR) the Devantech SRFO8 was used, specially for difficult tasks such as take off and landing.All of the onboard sensing is controlled through two Microchip 40 MHz micro-controllers. Position estimation uses both GPS position and velocity measurements, as well as orientation information in a Extended Kalman Filter (EKF) to update the position and velocity estimates at 10 Hz. The GPS data is used to compensate integration bias of the small angle approximated accelerations derived from the information from gyro sensors.

Attitude of the vehicle is controlled on board at 50 Hz and communicated to a base sta- tion on the ground, communicating via a Bluetooth Class II device with a range of over 150 feets. Designed to replace serial cable and therefore op-erates at a bandwidth of 115200bps. This bandwidth of 115.2 kbps is shared by all (of four) flyers. The base station on the ground performs Differential GPS (DGPS) and waypoint tracking tasks for all four flyers, and sends

(42)

appro-24 CHAPTER 3. BACKGROUND

Figure 3.9: Quadrocopter designed in University of Technology in Compiegne, France

Figure 3.10: Stanford University quadrocopter projects

priate attitude values to the flyers for stable flight. Human piloted flight and pre planned control is performed via the ground station laptop using Labview. To control height a sliding mode control is designed and the attitude loop was designed LQR techniques. Angular deviations were penalised more than rate deviations. Also, the pitch and roll loops were penalised identically, with a reduced penalty on the yaw deviations. On the STARMAC I platform also more advanced controller types are tested, such as integral sliding mode and reinforcement learning [21].

STARMAC II

The STARMAC II testbed is a sequel of first version with improvements at several points:

(43)

3.2. MAJOR RESEARCH/EDUCATIONAL PROJECTS 25

• Thrust capabilities: Old motors and propellers were replaced with Brush-less motors and more rigid plastic propellers to double the output and enhance the total thrust up to a total of 4 kilograms.

• On-board computation resources: With the increased lift capabilities, it became possible to increase onboard computing power. Computation and control are managed at two separate levels. The low level control that performs real-time control loop execution and control motor speeds, oc-curs on a micro-controller board based on the Atmega 128 processor. The high level planning, estimation and control occurs on a lightweight Cross- bow Stargate 1.0 single board computer (SBC) running embedded Linux. Alternatively an Advanced Digital Logic ADL855 PC104 running Kubuntu Linux can also be implemented, providing more computational power, at the cost of additional weight and hence shortened flight times. • Communication reliability and bandwidth: The old Bluetooth was

re-placed with a WiFi network, enables much greater bandwidth and im-proved communication channel management through a wireless router at the central ground station. This has shown considerable improvements in communication between the ground computer and quadrocopters as compared with the Bluetooth capabilities of first version.

• Position measurement accuracy: Three-dimensional position and velocity measurements are now done using a carrier phase differential Novatel Superstar II GPS unit with a resulting position accuracy of less than 2cm. For indoor flights, an overhead USB camera can be attached, with blob tracking software, to provide position sensing without GPS. The camera system gives less than 2 cm accuracy at 10 Hz rate, and provides a drop-in replacement for GPS input to the EKF.

Instead of the LQR used in the STARMAC I in the STARMAC II Proportional-Integral- Derivative (PID) control was implemented for attitude, altitude and position control. Not only the hardware was improved but also the mathemat-ical model of the quadrocopter. Three extra effects where quantified that relate to motion of the vehicle relative to the free stream.

(44)
(45)

Chapter 4

Controller design and Simulink

model

4.1

Control Strategy

Quadrocopter has became very popular among researchers due to the advan-tages it offers. Like conventional helicopters it can take off and land vertically. In addition to this, it can fly closer to obstacles than the conventional heli-copters, and it can make manuevers that the conventional helicopters cannot make. But from the aerodynamic point of view quadrocopter is inherently un-stable. To control the quadrocopter, many control schemes have been proposed. Robust feedback controllers based on H∞ techniques [14], fuzzy control, PD

controllers [5], back-stepping controllers [5] and Neural-Network Adaptive Flight Control [5] are just few examples of the control schemes proposed for controlling quadrocopter. For the experimentation done on the Stanford dra-ganflyer UAVs, nonlinear control methods were chosed that uses discrete-time dynamic inversion, under input saturation [10]. Another study done at the Uni-versity of Pennsylvania showed another control example, which used a vision based control methodology for the control of UAVs [4].

All of the above stated control schemes expects the designers to have exten-sive understanding of the mathematical equations that governs the dynamics of the quadrocopter. To avoid the design complexities associated with above men-tioned control schemes, we decided to design the fuzzy controller for quadro-copter and analyze how it perform with quadroquadro-copter as it has never been tested on quadrocopter.

4.2

Quadrocopter fuzzy controller design

To design the fuzzy controller, we took article [3] as starting point. Article [3] reports the design of fuzzy controller for two degrees of freedom, namely; pitch and roll. The deigned fuzzy controller was then used on quadrocopter

(46)

28 CHAPTER 4. CONTROLLER DESIGN AND SIMULINK MODEL

ulation. The article [3] reports the use of three inputs namely; acceleration, velocities and accumulation of past commands around two horizontal axes X and Y to maintain quadrocopter in hovering position. To design the fuzzy con-troller we adopted a different approach than the one proposed in article [3]. We took the quadrocopter angles and the rates of angle change as input to our fuzzy controllers. And we did not use any third input as used in article [3]. And unlike article [3] we tested our controller on quadrocopter in HIL simulation setup.

In design process of fuzzy controller, designers usually try to inject the exper-tise of experienced human operator into their controller so that, their controller control the plant in a same way as experienced human operator do. To design the fuzzy controller for quadrocopter we found a set of guidelines presented in article [3] that describe how human operators control the quadrocopter. These guidelines were formulated after interviewing experienced quadrocopter operators. These guidelines were written for how human operators perceive the velocities and acceleration along different axes, and how they control the quadrocopter based on their perception. Despite we are not using velocities and accelerations as inputs, but we can use the same set of guidelines for our controller with angles and the rates of angle of change as inputs as the veloci-ties and accelerations are directly propotional to the angles and rates of angle change respectively. So we can mold the presented guidlines for our controller with angles and rates of angle change as inputs.

The molded guidelines are given below:

1. Control of quadrocopter is done by observing the bank angles and the rate of change of bank angles of the vehicle from the point of view of the observer.

2. Only qualitative information of the bank angles and the rate of change of bank angles are available to the external pilot.

3. Except in high aerobatic maneuvers roll, pitch and yaw control of the vehicle are handled separately and independently.

4. When the observed angles of the vehicle are small (i.e. near hovering point) more attention is paid to the angles of the quadrocopter than the rate of change.

5. When the observed angles of the quadrocopter are large more attention is paid to the vehicle angle change rate and more effort goes in to com-pensating the rate than that to the angles.

6. Control commands issued by the human operator could be any of the four quantitative commands namely roll, pitch, thrust and yaw.

(47)

4.2. QUADROCOPTER FUZZY CONTROLLER DESIGN 29

7. Observable angles and the rates of angle change are understood by the human operator as either small, medium or big. Accumulation of control commands is perceived as zero, small, medium and big.

We started designing the fuzzy controller for the quadrocopter in the light of above stated guidelines. Guideline 1 defines the inputs of the controller, namely the angles and the rate at which angles change. Guideline 7 suggest five mem-bership functions for each input. We used triangular or trapezoidal shapes for membership functions to avoid computational and programming complexities, as there is a plan to translate the designed controller to C language in future. We started with uniform distribution of membership functions as shown in Fig.4.1. Then in search of better performance we increased the input gains by contracting the membership function closer to zero as shown in Fig.4.2. But for this setting we got oscillatory response, plus too high input gains also amplifies the noise and can cause serious disturbances specially when the input values are small. So, to rectify oscillations and avoid noise amplification we started re-ducing input gains by stretching membership functions gradually. After testing the system with several membership functions settings, the input membership functions setting presented in Fig. 4.3were found best. The same procedure was repeated for the second input and we got best results at the same settings used for the first input.

Figure 4.1: Uniform membership functions for inputs

The same design process was repeated for output membership function. Guideline 7 suggest seven membership functions for output of each controller. We started with uniform distribution of all seven membership functions. Then we increased output gains gradually to minmize the steady state error. But on high output gains we got oscillatory response. So we had to find the settings where the steady state error is minimized without oscillatory behavior. Fig-ure 4.4shows the settings for output membership functions where we found such response.

(48)

30 CHAPTER 4. CONTROLLER DESIGN AND SIMULINK MODEL

Figure 4.2: input variable roll angle with high input gains

Figure 4.3: input variable rate of angle change and angles

The rule base of the controller was also designed in the light of the above guidelines. Guidelines 5, 6 and 7 suggest a subset of the rule base for the fuzzy logic controller. We used 25 rules in our rule base that are presented in Fig.4.5

Figure 4.6shows the control surface produced by the rules presented in Fig

4.5.

The implemented fuzzy controller is an equivalent of position PD controller as clear from Fig.4.5. But it can be seen how easily it is designed, even without mathematical model of the quadrocopter. In addition to this it has a big advan-tage over conventional PD controller that it is non-linear. The same controller can be regarded as equivalent to velocity PI controller.

Pitch and yaw axes controllers are designed in a same way as roll controller.

4.3

Implementation

The fuzzy logic controller and sensory data processing are modeled in Matlab using Simulink. The Simulink model are then downloaded to dSPACE computer before experimentation. We prefered to use Mamdani type fuzzy controller as it is the simplest and more intuitive [19] specially when controller design is based on a set of guidelines describing the human behavior. Guideline 3 suggests that

(49)

4.4. COMPLETE DESCRIPTION OF SIMULINK MODEL FOR

EXPERIMENTATION 31

Figure 4.4: Output of roll controller

the controller for each axes can be designed separately. So, we designed three similar fuzzy controllers for the pitch, yaw and roll axis of the quadrocopter.

4.4

Complete description of Simulink model for

experimentation

The Simulink model for experimentation in Fig.4.7is divided into seven steps as follows:

1. Data acquisition 2. De-multiplexing 3. Sensory data processing 4. Controllers

5. Normalizing of controllers singnals for motors 6. Mixing of normalized controller signals 7. PWM signal generation for motors

Following are the details of each steps:

4.4.1

Data acquisition

dSPACE RTI toolbox provides two blocks namely; "Serial setup" and "Serial recieve" that are used to recieve sensory data from on-board computer. These blocks recieve 12 bytes data in every program cycle. They keep the data into buffer until all 12 bytes are recieved. When all 12 bytes are recieved the data is forwarded serially as per FIFO scheme.

(50)

32 CHAPTER 4. CONTROLLER DESIGN AND SIMULINK MODEL

Figure 4.5: Fuzzy rules table

4.4.2

De-multiplexing

A very commonly used block "Demux" is used for de-multiplexing of data. The block recieves 12 bytes serially, and it sends them forward in parallel fashion.

4.4.3

Sensory data processing

Gyro sensors data processing

Two subsystem blocks namely; "Roll gyro" and "Pitch gyro" are used to pro-cesses the data from roll and pitch gyro sensors, respectively. The internal wok-ing of these two blocks are exactly same. Figure 4.8shows the internal working of one of these blocks. The gyro sensor reading is composed of two bytes which are sent to these blocks. The significant byte is multiplied by 256 to shift 8 bits left side then the second byte is added into it. The data represents voltages from 0 to 5V. 10 bits are used in ADC process, so the readings are multiplied

(51)

4.4. COMPLETE DESCRIPTION OF SIMULINK MODEL FOR

EXPERIMENTATION 33

Figure 4.6: Rules surface

by 0.00488. As 0 value is represented by 2.5V we subtract 2.5 from the reading in next step. And in the last step we multiply reading with 100 to get final rate of angle change.

Accelearation sensor data processing

Three subsystem blocks namely; "X new", "Y new" and "Z new" are used to process accelearation sensor data for x,y and z axes, respectively. The internal woking of these three blocks are exactly same. Figure 4.9shows the internal working of one of these blocks. Same as gyro sensor reading, Accelearation sensor reading is also composed of two bytes which are sent to these blocks. The significant byte is multiplied by 256 to shift 8 bits left side then the second byte is added into it. The data is represented as signed integer, so we use type conversion block to convert signed integers to unsigned integers.

Heading sensor data processing

The subsystem block "heading" is used to process compass sensor data for heading. Figure 4.10shows the internal working of the block. Same as gyro and Accelearation sensors reading, heading sensor reading is also composed of two bytes which are sent to this blocks. The significant byte is multiplied by 256 to shift 8 bits left side then the second byte is added into it. As the data

(52)

34 CHAPTER 4. CONTROLLER DESIGN AND SIMULINK MODEL

Figure 4.7: Simulink model for experimentation

represents tenths of degrees, so data is divided by 10 to get heading from 0 to 359.9 degrees.

4.4.4

Controllers

Pitch and Roll controllers

In step 4, two fuzzy controllers are implemented in two subsystem blocks namely; "Roll controller" and "Pitch controller" to control roll and pitch an-gles, respectively. The internal working of these two blocks are exactly same, shown in Fig. 4.11. The processed output of gyros are fed to these blocks that is rate of angle change which is directly fed to fuzzy controller as input. The second input is the angle that is determined by passing the rate of angle change through integral block.

Yaw, X, Y and Z axes controllers

Four fuzzy controllers are implemented in two subsystem blocks namely; "X controller", "Y controller", "Z controller" and "Yaw controller" to control X, Y, Z and yaw axes respectively. The internal working of all these blocks are exactly same, shown in Fig. 4.12. The processed outputs of compass and accelearation sensor are fed to yaw controller and x, y, z blocks respectively.

(53)

4.4. COMPLETE DESCRIPTION OF SIMULINK MODEL FOR

EXPERIMENTATION 35

Figure 4.8: Simulink model for processing gyro sensors readings

Figure 4.9: Simulink model for processing accelearation sensors readings

4.4.5

Normalizing of controllers singnals for motors

In step 5, only gains blocks are used with a value of 0.00031 to scale the output of the controllers between the range of 0.059 and 0.09, because YGE motor drivers takes 0.059 and 0.09 as stop and full throttle, respectively. That is the reason every controller output is multiplied by a factor of 0.0031 to lie with in range understood by YGE motor drivers. The controllers may generate signal of value 20 at maximum. The remaining 80 percent of power is in user hands.

4.4.6

Mixing of normalized controller signals

All the outputs of the controllers and user inputs are mixed before generating PWM signals for motors. As YGE motor controllers consider 0.059 as 0, a direct input of 0.059 is fed to all the motors. In addition to this, user can give input to the system to produce 80 percent of thrust through dSPACE GUI. The output of Y controllers are fed to all motors as to control altitude all motors are required to produce more thrust equally to increase altitude or reduce equally to decrease altitude. The outputs of X controller and roll controllers are fed to motors 2 and 4 with a sign change.The outputs of Y controller and pitch

(54)

36 CHAPTER 4. CONTROLLER DESIGN AND SIMULINK MODEL

Figure 4.10: Simulink model for processing heading sensor reading

Figure 4.11: Simulink model for roll and pitch controllers

controllers are fed to motors 1 and 3 with a sign change. And the output of Yaw controller is fed to all motors, motor 1 and 3 are fed with opposite sign as of motor 2 and 4.

4.4.7

PWM signal generation for motors

After mixing all the control signals and user input, PWM signals has to be gen-erated for motors to operate them in a desired way. To generate PWM signals "DS1103SL DSP PWM" block, provided by dSPACE RTI toolbox in simulink, is used.

(55)

4.4. COMPLETE DESCRIPTION OF SIMULINK MODEL FOR

EXPERIMENTATION 37

(56)
(57)

Chapter 5

Experimentation and results

The installation of the experiment follows the scheme depicted in figure 5.1. The wired connections between the dSPACE RTI and the QAP chassis have been established and function correctly.

Figure 5.1: The experiment installation with the quadrocopter helicopter

5.1

Experimentation setup

Due to some major technical problems with the hardware in the last days of thesis work, we are not able to perform experiments to the extent to satisfy

(58)

40 CHAPTER 5. EXPERIMENTATION AND RESULTS

the objectives of the thesis. The YGE controller for motor 1 has burned out, so motor 1 cannot be operated. As motor 1 cannot be operated, we have to stop motor 3. With remaining two motors it is certainly not possible to perform experiments for any of 6 axes except roll axes. To perform experiment for roll axis, we built an experiment setup with the intension to limit the DOF to only one axis that is the roll axis. The setup we built for experimentation is shown in Fig.5.1in which it can be seen the quadrocopter is tied with ropes from top and from down. Only the roll axes is left free.

5.2

Results

As stated in the last section that due to the technical problems the experimenta-tion plan was effected badly. With only two motors we could test our controller for roll axis. We performed several tests to validate the functionality and ap-plicability of our fuzzy controller. We are including some selected experiments among the several we performed during thesis work.

The experimentation setup we built allows the quadrocopter to be stabi-lized without motors in few seconds, if it is disturbed along roll axis. Here we can give the example of pendulum. If pendulum is disturbed from its point of stability, it stabilized back to this point after some oscillations. But there is a difference between our system and pendulum. The point of stability for pendu-lum is fixed, where pendupendu-lum attains minimum potential energy. But this is not the case with our system. When we disturb the quadrocopter along roll axis, the eight threads used to limit the movements around other axes change their adjusments that results in a slight change in the angle of stability for the tied quadrocopter.

We performed the first experiment to analyze, how much time it takes the quadrocopter to get stabilized without motors. The results of this experiment is shown in Fig.5.2.

In Fig.5.2, it is shown that the quadrocopter is destabilized by an external force at around 11th second of the experiment. The quadrocopter became sta-bilized after around 8 seconds. Here we can see the difference between the angle of stability before the occurence of external disturbence and after it. This slight shift in the angle of stability for the quadrocopter is due to the re-adjustment of the threads tied to quadrocopter, as stated earlier.

After performing experiment without motors we performed an experiment with motors to analyze how the newly designed controller works to stabilize the quadrocopter in our constrained experimentation setup. The results of this experiment are shown in Fig.5.3.

In Fig.5.3it is shown that when the experiment was started the roll angle of the quadrocopter was around -4 degrees, means that the quadrocopter was tilted -4 degrees towards motor 2. At around 4th second of the experiment the motors were started with the power of 35 percent. The controller is started at around 7th second. The activity of the motors can be seen in the second graph

(59)

5.2. RESULTS 41

Figure 5.2: Stabilization time without operating motors

of Fig. 5.3, where the red line represents the power plus controller signal to motor 2 and blue line represents the power plus controller signal to motor 4. At around 13th second we disturbed the quadrocopter along roll axis to 32 degrees.After that controller stabilized the quadrocopter in less than 4 seconds that is the half of the time it took in last experiment.

The red line in the first graph of Fig. 5.3represents the set point for the roll angle. The controller should stabilize the quadrocopter at the set point. But it can be seen in Fig. 5.3 that roll angle never reached to the set point. On the other hand, we see in the second graph of Fig.5.3that the controller continously tried to overcome the error by increasing the speed of motor 2 and by decreasing the speed of motor 4, but still the roll angle remained unchanged. This is due to the limitations associated with our experimentation setup. With two motors we cannot perform experiments with high motor speeds, because the torque produced by two motors destabilize the whole setup. And at lower motor speeds we need high controller gains to stabilize the quadrocopter at

(60)

42 CHAPTER 5. EXPERIMENTATION AND RESULTS

set point. And when we use higher controller gains, it results in uncontrolled oscillations.

Figure 5.3: Disturbence test with 35 percent power and controller gain 1

To support our arguments we performed an experiment. The results of this experiment are shown in Fig. 5.4. In this experiment we operated mo-tors with 30 percent of power. And we used multiple gains to find what value for controllers gain is most suitable to overcome steady state error. The GUI we designed on Control Desk for experimentation allow us to change the motor speeds and controller gains during experiments.

In Fig.5.4, it is shown that the roll angle was around -5 degrees when the experiment was started. we powered up motors with 30 percent of maximum power at around 6th second of the experiment that can be seen in second graph of Fig.5.4. The controller was activated at around 12th second of the experi-ment. To overcome the error the controller speeded up the motor 2 and reduced the speed of motor 4, but the controller gain was insufficient to overcome the error. Then we increased the controller gain to 2 at 19th second that resulted in no change in roll angle. Then we gradually increased the controller gain till 11 at around 104th second of the experiment, but we did not observe any sig-nificant change in roll angle. Then quadrocopter suddenly started to oscillate severly, so we stop our controller. The oscillations we saw in Fig 5.4 usually happened at gains above 3 if quadrocopter is destabilized by an external force.

(61)

5.2. RESULTS 43

This experiment demonstrates the limitations of our experimentation setup and the difficulties of experimentation with only two motors.

Figure 5.4: Disturbence test with 30 percent power and multiple controller gain

We made another argument that we cannot perform experiments at higher speeds. If we do so, the torque produced by the motors destabilizes the whole setup. To demonstrate this behaviour we are including the results of an experi-ment that we performed at 60 percent of maximum power with controller gain eqaul to 1. Figure5.5shows the results for this experiment.

In Fig.5.5, it can be seen that despite the right signals from the controller the quadrocoter is keeps on tilting towards the motor 4. We observed such behaviour whenever we operated motors at more than 40 percent of power. This is due to the torque produced by motors. The torque produced by the anti-clock wise motors is normaly cancelled out by the torque produced by clock wise motors. But in our case the clock wise motors are not working. We

(62)

44 CHAPTER 5. EXPERIMENTATION AND RESULTS

Figure 5.5: Disturbence test with 60 percent power and controller gain 1

used threads to limit the movements around other axes other than the roll axis, but this is not the real solution. These threads also interfare with the movement along roll axis.

After performing several experiments with different power settings and troller gains, we found that operating motors at 35 percent power with con-troller gain of 1 results in best performance for our tightly constrained exper-imental setup. To find these settings, we performed several experiments. We started from low power settings to high, with different values for gain. The Fig.5.6show the results for 15 percent power and controller gain equals to 1. As this was one the earliest experiment, we could not classify it as good or bad. Then we tried higher gains at lower power settings. Fig.5.7is an example of it. It represents the results for the experiment performed at 15 percent power and gain value equals to 2.

Then we performed the experiment with 15 percent power with 2.5 con-troller gain. The results for this experiment are shown in Fig.5.8. By compar-ing the results of the experiments performed at 15 percent power with different

(63)

5.2. RESULTS 45

Figure 5.6: Disturbence test with 15 percent power and controller gain 1

controller gain values, we found that higher gains at lower power settings cause higher and more oscillations.

Then we increased power to 25 percent and test our controller with gain equals to 1. The results for this experiment is shown in Fig.5.9.

Then we performed experiment with same power settings but with different controller gain values. Experiment shown in Fig.5.10was performed with 25 percent power with controller gain value equals to 2.

Then we performed another experiment with same power setting of 25 per-cent with controller gain value equals to 2.5. The results for this experiment are shown in Fig. 5.11. We noticed the same trend with 25 percent power as we noticed for 15 percent. But we found that the over all performance of the system with 25 percent is better than performance with 15 percent power.

In the search of better power and gain settings for our system, we increased the power to 35 percent. And we found that the power of 35 percent with controller gain values equals to 1 result in best performance for our system. The results of experiment with these power and gain settings are shown in Fig.5.3.

(64)

46 CHAPTER 5. EXPERIMENTATION AND RESULTS

Figure 5.7: Disturbence test with 15 percent power and controller gain 2

We tested higher gain values in combination with 35 percent powers. The results for these experiments are shown in Fig. 5.12and in Fig.5.13. But we noticed that higher gain values result in oscillatory behaviour.

5.3

Limitations in experimentation

The experiments we performed, we noticed that in all the experiments we had a common issue that despite the right signals from the controller, the quadro-copter was never stabilized to set point. As stated earlier, we believe that this issue is associated with our experimentation setup and harware problems. The setup we built for limiting the movements along other axes also affect the mo-tion along roll axis. In addimo-tion to this we cannot operate motors at high speed to avoid having excess clock wise torque. We also have problems in setting gains for controllers. With lower gains the quadrocopter cannot be stabilized to the set point, simply because the controller signals are not enough to over-come the friction between the platform and the threads and to lift the one side of quadrocopter. And with higher controller gain values we have uncontrolled

(65)

5.3. LIMITATIONS IN EXPERIMENTATION 47

Figure 5.8: Disturbence test with 15 percent power and controller gain 2.5

oscillations as demonstrated in experiments. But, after analyzing the controller actions in several experiments, we can safely assume that if this newly designed fuzzy controller is tested on the quadrocopter with all motors working and no contrained experimentation setup, it will perform well to maintain quadro-copter in hovering position.

(66)

48 CHAPTER 5. EXPERIMENTATION AND RESULTS

(67)

5.3. LIMITATIONS IN EXPERIMENTATION 49

(68)

50 CHAPTER 5. EXPERIMENTATION AND RESULTS

(69)

5.3. LIMITATIONS IN EXPERIMENTATION 51

(70)

52 CHAPTER 5. EXPERIMENTATION AND RESULTS

References

Related documents

In queste pagine abbiamo descritto come rea- lizzare un’applicazione Android minimale che possiamo già usare; tuttavia per dotarla di funzio- nalità aggiuntive che la rendano

Finally, some days after the daily questionnaire phase of the study had concluded, the researchers assessed participants' recall of their menstrual symptoms.. Participants were asked

Eleverna kommer att genomföra en övernattning så det kan vara bra att redan nu informera ledare och tränare i olika föreningar och klubbar att dessa elever inte kommer att finnas

Häll olja i den stora grytan och lägg i lök och vitlök och låt det fräsa en liten stund utan att det blir bränt2. Krydda med lite salt, svartpeppar

Ni får lite information om detta projekt redan nu eftersom vi kommer att genomföra en

Ni kommer att få ett nytt mail angående paddlingen i augusti där ni får tillgång till telefonnummer till oss lärare och lite annan

Eleverna kommer att genomföra en övernattning så det kan vara bra att redan nu informera ledare och tränare i olika föreningar och klubbar att dessa elever inte kommer att

I bild 1 cyklar flickan till höger i bilden, på en väg som går från vänster till höger, detta hjälper till att konnotera att hon är på väg bortåt och gör att bilden blir