Lecture 4 Part 4xa
-
Upload
shivanshu-trivedi -
Category
Documents
-
view
219 -
download
0
Transcript of Lecture 4 Part 4xa
-
8/17/2019 Lecture 4 Part 4xa
1/21
Computer Vision Group
Prof. Daniel Cremers
Autonomous Navigation for Flying R
Lecture 4.4 :
PID Control
Jürgen Sturm
Technische Universität München
-
8/17/2019 Lecture 4 Part 4xa
2/21
Rigid Body Kinematics
Consider a rigid body
Free floating in 1D space, no gravity
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
3/21
Rigid Body Kinematics
System model
Initial state
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
4/21
Rigid Body Kinematics
In each time instant, we can apply a force
Results in acceleration Desired position
What will happen if we apply P-control?
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
5/21
P Control
Control law
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
6/21
PD Control
Proportional-derivative control
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
7/21
PD Control
Proportional-derivative control
What if we set lower gains for ?
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
8/21
PD Control
Proportional-derivative control
What if we set higher gains for ?
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
9/21
PD Control
What happens when we add gravity?
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
10/21
Gravity compensation
Add as an additional term in the control law
Any known (inverse) dynamics can be included
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
11/21
PD Control
What happens when we have systematic errors?
(control/sensor noise with non-zero mean) Example: unbalanced quadrotor, wind, …
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
12/21
PID Control
Idea: Estimate the system error (bias) by integrati
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
13/21
PID Control
Idea: Estimate the system error (bias) by integrati
For steady state systems, this can be reasonable
Otherwise, it may create havoc or even disaster (w
effect)
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
14/21
Example: Wind-up effect
Quadrotor gets stuck in a tree does not reach s
state What is the effect on the I-term?
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
15/21
De-coupled Control
So far, we considered only single-input, single-ou
systems (SISO) Real systems have multiple inputs + outputs
MIMO (multiple-input, multiple-output)
In practice, control is often de-coupled
Jürgen Sturm Autonomous Navigation for Flying Robots
Controller 1
Controller 2
System
-
8/17/2019 Lecture 4 Part 4xa
16/21
How to Choose the Coefficients?
Gains too large: overshooting, oscillations
Gains too small: long time to converge Heuristic methods exist
In practice, often tuned manually
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
17/21
Cascaded Control
Jürgen Sturm Autonomous Navigation for Flying Robots
Localization
Robot
Sensors Actuators
Quadrotor
Physical World
Kinematics
Dynamics
Position Control
Trajectory
Attitude Estimation Attitude Control
RPM Estimation Motor Speed Control10
R
1
10
0.1
-
8/17/2019 Lecture 4 Part 4xa
18/21
Assumptions of Cascaded Control
Dynamics of inner loops is so fast that it is not vis
outer loops Dynamics of outer loops is so slow that it appears
to the inner loops
Jürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
19/21
Example: Ardrone
Cascaded control
Inner loop runs on embedded PC and controls at Outer loop runs externally and implements positio
Jürgen Sturm Autonomous Navigation for Flying Robots
Inner loop MotorsOuter loop
Ardrone (=seen as the system by the ouLaptop
wireless, approx. 15Hz
onboard, 1000Hz
-
8/17/2019 Lecture 4 Part 4xa
20/21
Mechanical Equivalent
PD Control is equivalent to adding spring-dampe
the desired values and the current position
Run the demo from http://wiki.ros.org/tum_ardronJürgen Sturm Autonomous Navigation for Flying Robots
-
8/17/2019 Lecture 4 Part 4xa
21/21
Lessons Learned
P – proportional term
I – integral term D – derivative term
De-coupled control
Cascaded control
Jürgen Sturm Autonomous Navigation for Flying Robots