quadrotor modeling and control - carnegie mellon …€¦ · · 2014-12-01quadrotor modeling and...
TRANSCRIPT
Quadrotor Modeling and Control
16-311 Introduction to RoboticsGuest Lecture on Aerial Robotics
February 05, 2014
Nathan Michael
Lecture Outline
• Modeling:
• Dynamic model from first principles
• Propeller model and force and moments generation
• Control
• Attitude control (inner loop)
• Position control (outer loop)
• Current research challenges
Develop preliminary concepts required to enable autonomous flight:
D. Mellinger, N. Michael, and V. Kumar. Trajectory generation and control for precise aggressive maneuvers with quadrotors. Intl. J. Robot. Research, 31(5):664–674, Apr. 2012.
Lecture Objective
e2e1
e3
1. Vehicle model2. Attitude and position control3. Trajectory generation
Concept Review
Quadrotor Model
Newton-Euler equations:
total force
total torque
mass
F⌧
�=
m13 03
03 I3
� a↵
�+
! ⇥mv! ⇥ I3!
�
moment of inertia
linear acceleration
angular acceleration
angular velocity
linear velocity
Concept Review
Quadrotor Model
Rigid transformation:
rotation translation
Euler angle parameterization of rotation:
Reb
= Rz
( )Ry
(✓)Rx
(�) ZYX (321) form
pe = Rebpb + re
e1
e2
e3b2
b3
re
Reb
pb
b1
Concept Review
Quadrotor Model
Euler angle parameterization of rotation:
Reb
= Rz
( )Ry
(✓)Rx
(�)
yaw pitch roll
Ry(✓) =
2
4c✓ 0 s✓0 1 0
�s✓ 0 c✓
3
5Rx
(�) =
2
41 0 00 c� �s�0 s� c�
3
5 Rz( ) =
2
4c �s 0s c 00 0 1
3
5
e1
e2
e3b2
b3
re
Reb
pb
b1
Quadrotor ModelNewton-Euler equations:
F⌧
�=
m13 03
03 I3
� a↵
�+
! ⇥mv! ⇥ I3!
�
f =4X
i=1
fi
Total force:
along b3
Fb =
2
400f
3
5
COM
f1
f2f3
f4 b2
b3
b1
f1
f2f3
f4b2
b3
b1
Fe = RebFb �mg
Body:
Inertial: gravity
f1
f2f3
f4
e1
e2
e3b2
b3
b1re
Quadrotor ModelNewton-Euler equations:
F⌧
�=
m13 03
03 I3
� a↵
�+
! ⇥mv! ⇥ I3!
�
Total torque:⌧ = r⇥ FRecall:
f1
f2f3
f4 b2
b3
b1
f1
f2f3
f4b2
b3
b1d
⌧b1 = d (f2 � f4)
⌧b2 = d (f3 � f1)b2
b1
⌧+4⌧+2
⌧�3
⌧�1 ⌧b3 = �⌧1 + ⌧2 � ⌧3 + ⌧4
induced moments
propeller direction of rotation
f1
f2f3
f4
e1
e2
e3b2
b3
b1re
Quadrotor ModelEquations of motion:
⌧b1 = d (f2 � f4)
⌧b2 = d (f3 � f1)
⌧b3 = �⌧1 + ⌧2 � ⌧3 + ⌧4
Fe = RebFb �mg
m13 03
03 I3
� a↵
�+
! ⇥mv! ⇥ I3!
�=
Fe
⌧
�=
RebFb �mg
[⌧b1 , ⌧b2 , ⌧b3 ]T
�
Fb =
2
400f
3
5
Motor model:⌧i = ±cQ!̄
2i
fi = cT!̄2i Approximate relationship between propeller
speeds and generated thrusts and moments
2
664
f⌧b1
⌧b2
⌧b3
3
775 =
2
664
cT cT cT cT0 dcT 0 �dcT
�dcT 0 dcT 0�cQ cQ �cQ cQ
3
775
2
664
w̄21
w̄22
w̄23
w̄24
3
775b2
b1
⌧+4⌧+2
⌧�3
⌧�1
Lecture Outline
• Modeling:
• Dynamic model from first principles
• Propeller model and force and moments generation
• Control
• Attitude control (inner loop)
• Position control (outer loop)
• Current research challenges
Control System Diagram
R. Mahony, V. Kumar, and P. Corke. Multirotor aerial vehicles: Modeling, estimation, and control of quadrotor. IEEE Robot. Autom. Mag., 19(3):20–32, Sept. 2012.
Recent tutorial on quadrotor control:
TrajectoryPlanner
Position Controller
Motor Controller
Attitude Controller
Dynamic Model
Attitude Planner d
pd
Rd
u1 = fd
u2 =⇥⌧db1
, ⌧db2, ⌧db3
⇤T
!̄i
Inner Loop
Attitude Control
PD control law:
u2 = �kReR � k!e!
nonlinear e! = ! � !d
Rotation error metric:
eR =1
2
⇣�Rd
�TR�RTRd
⌘_
Inner Loop
Attitude Control
Linearize the nonlinear model about hover:
R0 = R (�0 = 0, ✓0 = 0, 0)
Rotation error metric:
after linearization
eR =1
2
⇣�Rd
�TR0 �RT
0 Rd⌘_
u
2
40 � ��✓
�� 0 ����✓ ��� 0
3
5_
= [��, �✓, � ]T
Rd = Rz
( 0 +� )Ryx
(��,�✓)
Inner Loop
Attitude Control
PD control law:
u2 = �kReR � k!e!
e! = ! � !d
eR = [��, �✓, � ]T
TrajectoryPlanner
Position Controller
Motor Controller
Attitude Controller
Dynamic Model
Attitude Planner d
pd
Rd
u1 = fd
u2 =⇥⌧db1
, ⌧db2, ⌧db3
⇤T
!̄i
Outer Loop
Position Control
PD control law:
ea + kdev + kpep = 0
Linearize the nonlinear model about hover:
Nominal input: u1 = mg
TrajectoryPlanner
Position Controller
Motor Controller
Attitude Controller
Dynamic Model
Attitude Planner d
pd
Rd
u1 = fd
u2 =⇥⌧db1
, ⌧db2, ⌧db3
⇤T
!̄i
u2 = 03⇥1
Outer Loop
Position Control
PD control law:
TrajectoryPlanner
Position Controller
Motor Controller
Attitude Controller
Dynamic Model
Attitude Planner d
pd
Rd
u1 = fd
u2 =⇥⌧db1
, ⌧db2, ⌧db3
⇤T
!̄i
u1 = mbT3
�g + ad +Kdev +Kpep
�
How do we pick the gains?ev = v � vd
ep = p� pd
Lecture Outline
• Modeling:
• Dynamic model from first principles
• Propeller model and force and moments generation
• Control
• Attitude control (inner loop)
• Position control (outer loop)
• Current research challenges
Current Research ChallengesHow should we coordinate multiple robots given network and vehicle limitations?
Current Research ChallengesHow do we estimate the vehicle state and localize in an unknown environment using only onboard sensing?
CameraGPS
Laser
IMU
Barometer
Cameras
IMU
Current Research ChallengesHow do we estimate the vehicle state and localize in an unknown environment using only onboard sensing?
Lecture Summary
• Modeling:
• Dynamic model from first principles
• Propeller model and force and moments generation
• Control
• Attitude control (inner loop)
• Position control (outer loop)
• Current research challenges
e2e1
e3
1. Vehicle model2. Attitude and position control3. Trajectory generation