Modeling and Simulation For Adaptive Control of Quadcopters: Me - 440 Major Project

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 31

MODELING AND SIMULATION FOR ADAPTIVE

CONTROL OF QUADCOPTERS
ME 440 MAJOR PROJECT
Abid S 13ME107
Guide : Aravind R Varma 13ME216
Prof. Vijay Desai Arjun R 13ME217
Harikrishnan S 13ME141
1
Contents
1. Introduction
2. Objectives
3. Mathematical model for quadcopter
4. Attitude Controller
5. Position Controller
6. Image processing
7. Simulation and results
8. Further work
9. References

2
RUNNER DESIGN
Intake runner delivers air from the intake
manifold to the cylinder.

Runner Length Tuning


Effect of Acoustic waves phenomenon.
Objectiveis to optimize the length for the RPM
targeted for improved air flow.
Improves Volumetric efficiency and Peak
torque.
Infinitely adjustable.
There are two models used to calculate the
runner length
Pressure wave tuning
Helmholtz resonator model
3
RUNNER LENGTH TUNING
Air is initially stagnant in the runner
When intake valve opens, rarefaction
occurs at the back of the valve.
Once the valve is closed, compression
takes place.
Alternating
high-low pressure is
propagated and is reflected back.
Corresponding to the valve opening
timing, the reflected wave must return to
the opening as a compression wave.
Thusairflow is maximized and peak
torque is attained for the chosen rpm.

4
PRESSURE WAVE TUNING
Basedon using the pressure wave pulses
created by the valve timing
tunedlength is set to coincide with intake
valve opening
The
calculation is from the velocity of an air
wave in a pipe where velocity =distance/time
L = ((ECD 0.25 V 2) (rpm RV)) - D
Where, ECD is the effective cam duration
(portion of cycle)
V = speed of sound @85 F (chosen as the
average measure intake temp)
RV = reflective value (count of each pulse
from one end of pipe and back)
D = runner diameter (in)

5
PRESSURE WAVE TUNING
The runner lengths obtained for the corresponding engine speeds
chosen are tabulated below :

6
PRESSURE WAVE TUNING
It is observed that all the test cases were not peaking at the required
tuned rpm. This led to the discardation of this method.

7
Objectives

Develop a trajectory tracking controller and attitude controller


for a quadcopter, to follow the commands provided by the
trajectory planner.

Determine the coordinates of the landing points in the inputted


map using image processing and identify the landing point
nearest to the point of failure.

Implement an optimal trajectory planning algorithm towards the


goal location or the landing point as per the situation of the
quadcopter.

8
Mathematical model of a quadcopter

Inertial frame { O } - = [ X Y Z
]T
=[ ]
T

Body frame { B } - V = [ VX VY
VZ ] T
12 States of a quadcopter are defined in a mixed frame
= [ P {QM R
} ]T
{ X Y Z P Q R }

Transformation from { B } to { O } is given by the rotation matrix R1


9
Mathematical model - Dynamics
Net external force and T =K i2
moment vectors M = L * ( T4 T 2 )
FB = [ 0 0 T ] T
M = L * ( T3 T1)
MB = [ M M M ] T
M = B (- 12 + 22 32 +
Assumptions
42)
1. Symmetrical structure for quadcopter

2. Lumped parameter approach -


Thrust by a single motor-propeller system T1 =K 12
Opposing torque on propellers caused by drag M1 = B
1 2

3. Neglected body drag forces, blade flapping, surrounding wind


10
velocities etc.
Mathematical model - Dynamics
Newton-Euler equations

11
In Matlab
In Simulink

LEVEL-2 S-
FUNCTION

12
Attitude controller - Architecture

13
Attitude controller Algorithm
Used to stabilize orientation about inertial frame

For this, a PID controller is used

Pitch

Similarly

Roll

Yaw

Height
14
Attitude controller Rotor speed calculations

Inverti
ng

15
Trajectory controller
The problem of trajectory control

Position, velocity, acceleration and angular orientations are


controlled within specified limits.

Achieved by adjusting and by varying rotor speeds.

16
Trajectory controller Algorithm 1
P-D controller is proposed for trajectory control

Desired path is provided as a function of time

Deviations from the desired values is used to calculate the control


input

17
Trajectory controller Algorithm 1
Using these control inputs, the thrust as well as the desired values of
and are calculated.

The desired values of and are then fed into the attitude
controller

18
Trajectory Controller Algorithm 1
Controller calculates Xc, Yc and Zc at each point.

This involves computing the derivatives of Xd, Yd and Zd continuously

Presence of non-differentiable points in the path function may cause


the controller to fail.

Path need to be smooth. Sharp edges, sudden change in trajectory


etc may cause failure.

19
Trajectory controller Algorithm 2
Error in X and Y is transformed from the fixed to body frame

Error in X in body frame =


Error in Y in body frame =

These errors are assumed to be the desired velocities


The desired velocities in the body frame are used to compute the
desired attitude
= Error in X in body = Error in Y in body
frame frame
=

20
Trajectory controller Algorithm 2
The desired attitudes are passed on to the attitude controller.

Overcomes the shortcomings of Position Controller 1 as the


derivative of the desired position is not a part of the control law.

Fig. Simulink Block Diagram of


the controller 21
Image processing Algorithm 1
Landing points are identified using MATLAB function
Position of quadcopter at the time of failure is passed

Raw Image Available Landing Points

22
Image processing Algorithm 2
A new MATLAB function which could detect a desired feature( a
black circle) from an image as landing points

23
Simulation The complete model

24
Simulation Parameters and Values
Quadcopter structure Attitude controller Attitude controll
Parameter Value Unit
g 9.81 m/s2
L 0.2223 m 6 1.5 1.75
6 1.5
m 1.023 kg 6 1.5 1.75
6 1.5
1.4865*10
6 1.5 1.75
6 1.5
K -7

2.9250*10 15 5 10
15 5
B -9

IXX Position controller
0.0095 kg m2
IYY 0.0095 kg m2 KP KD KI
IZZ 0.0186 kg m2 Roll 6 1.75 1.5
3.7882*10
Pitch 6 1.75 1.5
IR -6
kg m2
Yaw 6 1.75 1.5
Height 15 10 5

25
Simulation Input and solver

After 50s From image


processing

26
Simulation Results
Trajectory following
( X vs Xd and Y
vs Yd )

27
Simulation Results
Attitude control ( Attitude variables vs time )

28
Further work
Developing a Simulink model for the new image processing Matlab
function

Developing a trajectory planner based on given way-points and


optimizing the generated trajectory

A detailed study of different failures occurring in high speed rotors

Creating a rotor failure detection module to trigger the image


processing block and generate trajectory to the nearest landing point

Developing a control algorithm to combat rotor failure, stabilize the


attitude and guide the quadcopter to the computed landing point

29
References
Luukkonen, Teppo. "Modelling and control of quadcopter."Independent research
project in applied mathematics, Espoo(2011).
Dikmen, I. Can, Aydemir Arisoy, and Hakan Temeltas. "Attitude control of a
quadrotor."Recent Advances in Space Technologies, 2009. RAST'09. 4th
International Conference on. IEEE, 2009.
Mahony, Robert, Vijay Kumar, and Peter Corke. "Multirotor aerial vehicles:
Modeling, estimation, and control of quadrotor."IEEE robotics & automation
magazine19.3 (2012): 20-32.
Hossain, M. Raju, D. Geoff Rideout, and D. Nicholas Krouglicof. "Bond graph
dynamic modeling and stabilization of a quad-rotor helicopter."Proceedings of
the 2010 Spring Simulation Multiconference. Society for Computer Simulation
International, 2010.
Lanzon, Alexander, Alessandro Freddi, and Sauro Longhi. "Flight control of a
quadrotor vehicle subsequent to a rotor failure."Journal of Guidance, Control,
and Dynamics37.2 (2014): 580-591.
Mueller, Mark W., and Raffaello D'Andrea. "Stability and control of a
30
quadrocopter despite the complete loss of one, two, or three propellers."2014
THANK YOU

31

You might also like