16-311 Introduction to Robotics Guest Lecture on Aerial Robotics Quadrotor Modeling and Control Nathan Michael February 05, 2014
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
Lecture Objective Develop preliminary concepts required to enable autonomous flight: e 3 e 1 e 2 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. 1. Vehicle model 2. Attitude and position control 3. Trajectory generation
Quadrotor Model Newton-Euler equations: Concept Review total force mass linear acceleration apple F = apple m13 0 3 0 3 I 3 apple a + apple! mv! I 3! linear velocity total torque moment of inertia angular velocity angular acceleration
Quadrotor Model Concept Review Rigid transformation: p e = R eb p b + r e R eb p b b 3 e 3 b 2 b 1 r e rotation translation e 1 e 2 Euler angle parameterization of rotation: R eb = R z ( )R y ( )R x ( ) ZYX (321) form
Quadrotor Model Concept Review Euler angle parameterization of rotation: R eb p b b 3 e 3 b 2 R eb = R z ( )R y ( )R x ( ) yaw pitch roll r e e 1 e 2 b 1 R x ( )= 2 1 0 0 40 c s 0 s c 3 2 c 0 3 s 5 R y ( ) = 4 0 1 05 R z ( ) = s 0 c 2 c s 3 0 4s c 05 0 0 1
Quadrotor Model Newton-Euler equations: apple F = apple m13 0 3 0 3 I 3 apple a + apple! mv! I 3! f 4 f 3 b 3 f 2 e 3 b 2 f 1 f 3 b 3 Total force: Body: f 2 f 4 b 2 f 1 b 1 f 1 4X f = i=1 f i f 3 COM b 3 f 2 f 4 b 2 b 1 along b 3 F b = 2 3 0 405 f r e e 1 e 2 b 1 Inertial: F e = R eb F b mg gravity
Quadrotor Model Newton-Euler equations: F m13 = 03 f3 f4 03 I3 a! mv +! I3! b2 b3 f2 f1 f1 b1 f4 ) b2 = d (f3 f1 ) f1 1 2+ 4+ 3 b1 e1 induced moments b1 b2 b2 b1 d b1 = d (f2 b 3 f2 e2 b2 f4 Total torque: Recall: = r F e3 f4 re f3 b 3 f2 f3 b 3 = 1 + 2 propeller direction of rotation 3 + 4
Quadrotor Model Equations of motion: apple apple apple apple m13 0 3 a! mv Fe 0 3 I 3 +! I 3! = = apple Reb F b mg [,, ] T b1 b2 b3 F e = R eb F 2 b 3 0 F b = 405 f mg b1 = d (f 2 f 4 ) b2 = d (f 3 f 1 ) b3 = 1 + 2 3 + 4 Motor model: b 1 1 b 2 2 + 4 + 3 f i = c T! 2 i 2 6 4 i = ±c Q! 2 i f b1 b2 b3 3 7 5 = 2 6 4 Approximate relationship between propeller speeds and generated thrusts and moments 3 2 c T c T c T c T 0 dc T 0 dc T 7 6 dc T 0 dc T 0 5 4 c Q c Q c Q c Q w 1 2 w 2 2 w 2 3 w 2 4 3 7 5
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 p d Position u 1 = f d Motor! i Dynamic Model Trajectory Planner d Attitude Planner R d Attitude u 2 = d b 1, d b 2, d b 3 T Recent tutorial on quadrotor control: 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.
Attitude Control Inner Loop PD control law: u 2 = k R e R k! e! Rotation error metric: nonlinear e! =!! d e R = 1 2 R d T R R T R d _
Attitude Control Inner Loop Linearize the nonlinear model about hover: Rotation error metric: after linearization R 0 = R ( 0 =0, 0 =0, 0 ) R d = R z ( 0 + ) R yx (, ) e R = 1 2 u 4 R d T R 0 R0 T R d _ 3 0 0 5 0 =[,, ] T _
Attitude Control Inner Loop PD control law: u 2 = k R e R k! e! e R =[,, ] T e! =!! d p d Position u 1 = f d Motor! i Dynamic Model Trajectory Planner d Attitude Planner R d Attitude u 2 = d b 1, d b 2, d b 3 T
Position Control Outer Loop PD control law: e a + k d e v + k p e p =0 Linearize the nonlinear model about hover: Nominal input: u 1 = mg u 2 = 0 3 1 p d Position u 1 = f d Motor! i Dynamic Model Trajectory Planner d Attitude Planner R d Attitude u 2 = d b 1, d b 2, d b 3 T
Position Control Outer Loop PD control law: u 1 = mb T 3 g + a d + K d e v + K p e p e p = p e v = v p d v d How do we pick the gains? p d Position u 1 = f d Motor! i Dynamic Model Trajectory Planner d Attitude Planner R d Attitude u 2 = d b 1, d b 2, d b 3 T
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 Challenges How should we coordinate multiple robots given network and vehicle limitations?
Current Research Challenges How do we estimate the vehicle state and localize in an unknown environment using only onboard sensing? Camera GPS Laser IMU Barometer Cameras IMU
Current Research Challenges How 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 e 3 Control Attitude control (inner loop) Position control (outer loop) Current research challenges e 1 e 2 1. Vehicle model 2. Attitude and position control 3. Trajectory generation