You are on page 1of 17

# Elective in Robotics

(Marilena Vendittelli)

Introduction
Modeling
Control Problems
Models for control
Main control approaches
Elective in Robotics - Quadrotor Modeling (M.Vendittelli)

Hummingbird

DraganFlyer X4

Mesicopter

Stanford University

## Ascending Technologies GmbH

applications
surveying, maintenance
aerial transportation, manipulation
communication networks
search and rescue operations
all these activities require
vertical, stationary, slow flight
Pelican
high maneuverability
vertical take-off and landing (VTOL)
hovering capabilities

microdrones GmbH

STARMAC

Stanford University

...

KMel Robotics

## four motors located at the extremities of a cross-shaped frame

controlled by varying the angular speed of each rotor

## Elective in Robotics - Quadrotor Modeling (M.Vendittelli)

actuation

u = (T,u=, (T,
, ), , )

force distribution

f1

f2
R,2

R,1

!1

!2

2 1, . . . , 4
fi = b fi2i = bi=
i = 1, . . . , 4
i

R,i = di2 = d 2
R,i
i
f4

f3

## b thrust factor, d drag factor

both depend on the rotor

!4

!3

R,4

R,3

## geometry and profile, its disk area

and radius and on air density
can be determined by static
thrust test

motor control

!d

C(s)

configuration

s possible if we

x, y, z
xb , y b , z b
, ,
[X, Y, Z]T
p, t
V

## Inertial frame axes

Body frame axes
Euler angles Z,Y,X '
two steps. In a
Position vector w.r.t. an inertial frame
enerates control
xb
Pan
and
tilt
angles
SRB for actuated camera
aw control input
Vector of vehicle linear
w.r.t. an inertial frame
yb velocities
r the roll angle, x
#

Vector
of
vehicle
angular
velocities
w.r.t. an inertial frame
SRI
zb on image plane
y s = [s1 , s2 ]
Target coordinates
sd = [sd1 , sd2 ]
Target desired position on image plane
(16)
z
Tib
Transformation matrix from UAV body frame to inertial frame
Tbc
Transformation matrix from camera frame to UAV body frame
H
Transformation matrix from camera frame to point feature
g
Gravity acceleration
(17)
T
Aircraft speed along x body axis
B Analytical Jacobian
I
J
Ji
Interaction Matrix
we can close a
Jc
Jacobian sub-matrix relative to control inputs
e:
B
I
Jc
Right pseudo-inverse of Jc
Jd
Jacobian sub-matrix relative to variables causing drift
(18)

(x, y, z) position of SR

origin in SR

## by the block dision implements

ol stands for eq.

RB =

c c c s s s c c s c + s s
s c s s s + c c s s c s c
s
c s
c c

## Elective in Robotics - Quadrotor Modeling (M.Vendittelli)

w.r.t. SR

(22)

nalytical
Jacobian
, ]sd2s
] Target
Target
desired
position
on image
plane
s s s(16)
+ c csssd==[s
s[s
c
c
(22)
d1

,
s
coordinates
on
image
plane
1 2
teraction
Matrix
Tib
Transformation
matrix from
body
frame to inertial fram
fUAV
1
c
s
c
c
s
=
[s
,
s
]
Target
desired
position
on
image
plane

f
d
d1 d2
2
R,1frame to UAV body fram
(16)
cobian
sub-matrix
relative
inputs
Tbc to control
Transformation
matrix from camera
Tib
Transformation matrix from UAV body frame to inertial

,2
Transformation matrix from camera frame to point feature
of
JH
ght pseudo-inverse

c
Tbc
matrix from !
camera
frame to UAV body
! Transformation
1
1
0
s

g
Gravity
acceleration
2
cobian sub-matrix relative to variables
causing drift '
H
Transformation
matrix
fromaxis
camera frame to point featur

c c s T
= 0(17)
Aircraft (23)
speed along
x body
xb
g
Gravity
acceleration

J
Analytical Jacobian
SRB
0
s
c
c

f4
(17)
T Ji
Aircraft
speed
alongybx body axis
f
3
Interaction
Matrix
x

#
can
close
a

Jacobian
c s s SR
sI c c sJJcc + sAnalytical
sJacobian
sub-matrix relative to control inputs

zb
y J
Matrix of Jc !4
Jc
sclose
sInteraction
cRight
(22)
!3 pseudo-inverse
c
s sa+ c c s si

relativetotovariables
control causing
inputs drift
Jacobian sub-matrix
sub-matrix relative
(18)
VIc=
zy,
z)
JcJdc c Jacobian
s(x,
Jc R,3
Right pseudo-inverse of Jc
R,4
c cJacobian
s c crelative
s
s

c s ssub-matrix

s c +
e block

diaJ
to
variables
causing drift
(18)
I d

equation of motion

M
+a rigid

Jbody
(24)
0
s
dynamics
with
mass
m
subject
s
c
s
s
s
s s c forces
s c applied
B =1J of
R
=
(22)to the

+ c cto
external
B
implements

cmass
s
to
= for0ofeq.
(23)
s c s sc
ccc+ s s
c
center
according
Newton-Eulero
formalism
c
c
c
c
s
s s

ands
block di0 s cI R
cB = s c s
s s + c c s s c s c
(22)
plements
FI = mV I
(23)
translational dynamics in SRI
s
c s
c c
ds for eq. 1
=
FI applied to the com and expressed in SRI
FVI Iexternal
force
m
T
expressed
in SRI
=
(
x,

y,

z)

## VI = (vx , vy , vz ) velocity of theVcom

I

+ J
M
=
J
(23)
rotational
dynamics
in
SR
B
B
1

J MB )
(24)
JMB (= J +
J +
MB, J resp. external moment around com and inertia tensor expressed in SRB

1
in SR
=( p, q, r) rotational velocity expressed
V I (25)
=
FI B
m
Elective in Robotics
Modeling
(M.
Vendittelli)
1

c c c s s s c c s c + s s
ented by the
block
diLmatrix
rotational
M
+ and
+ IAR+B=

B =
D
inertia
svelocity
s c
c s s s + c c s s c
inversion 0implements

s
c s
c c
control stands for eq.

p
1 0
s
Ix 0 0

= q = 0 c c s
J = 0 Iy 0
r
0 s c c
0 0 Iz

control inputs

f2

T = f1+f2+f3+f4

d method

R,2

VI = (x,
y,
z)
T
MB = J +

J f1

R,1

!1

1
' F
T
V I =
I
mxb
SRB
f4
f3
yb
= J 1 ( J +#
MB )

=
l(f
f
)
'
2
4
n, the Visual servoing

## (note the substitution

# = l(f1f3)

zb

=( p, q,l r)T

T = R,1 +R,2R,3+R,4 ,3
(19)

)
(p, q, r)
( , ,
in Robotics - Quadrotor Modeling (M.Vendittelli)
Elective
R

R,4

applied forces

)
T(p, q, r)
(

,
,
and
=( p, moments
q, r)

(25)

0
0

,I)
r)
0 ( ,+
0 + FA + FD
FI =
RB( (p,
, ,q,)
mg
T

0
0 + F + F

0weight+ I RL
FI =
(
,
,
)
B
A
D
actuation
aerodynamics
disturbances
MB = L + T+ A + D
mg
0

L

Ix 0 0
MB = L + + A + D
J0 = 0 Iy 0
L
0 0 Iz

Ix 0 0
gyroscopicJeffects
= 0 Iy 0
'
T
0 0 Iz

## Elective in Robotics - Quadrotor Modeling (M.Vendittelli)

Iy Ix

Ix

Iy

mathematical
model
of
the
system
= =
=

I
y =

x = vx

=
Iz

y = vy
z = vz
v x = FA,x

T
(cos() sin() cos() + sin() sin())
m

v y = FA,y

## (sin() sin() cos()

v z = FA,z + g

cos() cos()

sin()r

Ir
q
Ix

r +

q = A,y +

Ir
p
Iy

r +

Ix

Iy

r = A,z +

Iz

= f ( ) +g(
= f) u
( ) + g( ) u
state

= x,
(x,
vx,
, vy,
, vp,
,r)
, , p, q, r)
z , q,
y, z,
y,
y,z,
z,,

u = (T, u, = ,(T,
) , , )
r

p = A,x +

Iy

Iz

qr +

Ix

Ix

pr +

Iy

Ix
Iz
Iy

pq +

m
T =
[g
cos() cos()

Iz

= f ( ) + g( ) u

= f ( ) + g( ) u

inputs

T
m

= cos()q

=
Iz

T
=m(x,

sin() cos())

Iz

Iy

## Elective in Robotics - Quadrotor Modeling (M.Vendittelli)

Kzp (zd

z)

m
T =
[g Kzp (zd
cos() cos()
xd (t) = cos t
yd (t) = sin t

t
zd (t)xd (t)
= 1=
+ cos t
10

yd (t)

sin t
10

=( p, q, r)
simplified
model
for
control
design
section, the Visual servoing
action
(note the substitution assuming
negligible

r): aerodynamics
(

,
,
)
(p, q, r)
small
'
and
#
)

symmetric
shape
effects

gyroscopic

T
negligible disturbances

0
0
Jd
(19)

I
T
0
0
F
=
+
RB ( , , )
I sin() sin())
x
= (cos() sin() cos() +

mg m
T
0
K >0
T
p /2

y = (sin() sin() cos() sin() cos())
>0

m L

0
MB = L + + A
T
z = cos()
orm a circular trajectory
we cos() m + g
0

=
is such that:
Ix
/2

=
Iy(20)
0
0

Iz

11

## control and planning problems

attitude control
eight control
position control
trajectory planning
trajectory tracking
sensor-based control
Elective in Robotics - Quadrotor Modeling (M.Vendittelli)

12

control system

attitude
control

', #,

'd, #d, d

position
control

## Elective in Robotics - Quadrotor Modeling (M.Vendittelli)

xd, yd, zd

13

fi =control
attitude
2
b i

i = 1, . . . , 4

determine the torques ', #, necessary to obtain a stable desired attitude 'd, #d, d

R,i = d i2
= [Kp (d ) + Kd ( d

= [Kp (d

= [K

) + Kd ( d

p (d

) + K

d (d

)]

)]

)]

height control
determine the thrust T necessary to bring and keep the quadrotor to a desired
height zd ) from the z dynamics:

m
T =
[g + zd + Kzp (zd
cos(#) cos(')

z) + Kzd (zd

IMU = + b + 2 SRB

z)]

14

' error

# error

error

z error

16
15

'

16

## advanced nonlinear control techniques guarantee better

convergence and robustness performance
exteroceptive sensors (camera, laser, sonar) allow
indoor flight and can be used to obtain an accurate
estimation of the system state

References
R. Mahony, V. Kumar, P. Corke, "Multirotor Aerial Vehicles: Modeling, Estimation, and Control of
Quadrotor," IEEE Robotics & Automation Magazine, vol.19, no.3, pp. 20-32, Sept. 2012.

17