comp1001 computer hardware and softwareyiannisr/774/2014/lectures/19-control.pdf · 2014-12-04 ·...
TRANSCRIPT
![Page 1: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/1.jpg)
Ioannis Rekleitis
Control Theory
![Page 2: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/2.jpg)
2
The Complex Plane (review)
Imaginary axis (j)
Real axis
jyxu
x
y
jyxu (complex) conjugate
y
22
1
||||
tan
yxuru
x
yu
r
r
CSCE 774: Robotic Systems
![Page 3: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/3.jpg)
3
Basic Tool For Continuous Time: Laplace Transform
• Convert time-domain functions and operations into frequency-domain
– f(t) F(s) (tR, s C)
– Linear differential equations (LDE) algebraic expression in Complex plane
• Graphical solution for key LDE characteristics
• Discrete systems use the analogous z-transform
0
)()()]([ dttfesFtf stL
CSCE 774: Robotic Systems
![Page 4: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/4.jpg)
4
Laplace Transforms of Common Functions
Name f(t) F(s)
Impulse
Step
Ramp
Exponential
Sine
1
s
1
2
1
s
as
1
22
1
s
1)( tf
ttf )(
atetf )(
)sin()( ttf
00
01)(
t
ttf
CSCE 774: Robotic Systems
![Page 5: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/5.jpg)
5
Laplace Transform Properties
)(lim)(lim theoremvalueFinal
)(lim)0( theoremvalueInitial
)()()nConvolutio
)(1)(
)(nIntegratio
)0()()(ationDifferenti
)()()]()([calingAddition/S
0
0
2121
0
2121
ssFtf-
ssFf-
sFsFdτ(ττ)f(tf
dttfss
sFdttfL
fssFtfdt
dL
sbFsaFtbftafL
st
s
t
t
CSCE 774: Robotic Systems
![Page 6: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/6.jpg)
Differentiation
6CSCE 774: Robotic Systems
)()(
)()(
)()(
3
3
3
2
2
2
sFsdt
tfdL
sFsdt
tfdL
ssFdt
tdfL
![Page 7: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/7.jpg)
Integration
7CSCE 774: Robotic Systems
0
00
)(1)(
)( dttfss
sFdttfL
![Page 8: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/8.jpg)
8
Insights from Laplace Transforms
• What the Laplace Transform says about f(t)
– Value of f(0)• Initial value theorem
– Does f(t) converge to a finite value?• Poles of F(s)
– Does f(t) oscillate?• Poles of F(s)
– Value of f(t) at steady state (if it converges)• Limiting value of F(s) as s->0
CSCE 774: Robotic Systems
![Page 9: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/9.jpg)
Block Diagram
9CSCE 774: Robotic Systems
h(t)x(t) y(t)
Input Output
H(s)X(s) Y(s)
![Page 10: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/10.jpg)
10
Transfer Function
• Definition– H(s) = Y(s) / X(s)
• Relates the output of a linear system (or component) to its input
• Describes how a linear system responds to an impulse
• All linear operations allowed– Scaling, addition, multiplication
H(s)X(s) Y(s)
CSCE 774: Robotic Systems
![Page 11: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/11.jpg)
• Presented actuators and sensors, e.g.:
– Electrical motor
– Angular position encoder
• How to get the best precision/performance?
Actuators + Sensors
Electric Motor
CSCE 774: Robotic Systems 11
Potentiometer Optical Encoder
![Page 12: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/12.jpg)
Open-loop
Power
AmplifierElectric
MotorComputer
Vo
lta
ge
Angular
Velocity
CSCE 774: Robotic Systems 12
• Goal: move a differential drive robot
– spin motors at a given angular velocity
• How: apply a fixed voltage to it,
– and never check to see if it is rotating properly…
![Page 13: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/13.jpg)
Open-loop
CSCE 774: Robotic Systems 13
• Changing load on the motor?
– Output velocity will change!
torque t
speed no torque at max speed
stall torque
Fixed
Voltage
![Page 14: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/14.jpg)
• Let’s measure the actual angular velocities.
• Compensate for changes in load by feeding back some information.
Closing the loop
Power
AmplifierElectric
MotorComputer
Vo
lta
ge
Angular
Velocity
Position
Encoder
CSCE 774: Robotic Systems 14
![Page 15: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/15.jpg)
Control Theory
• Roots in another science: Cybernetics
CSCE 774: Robotic Systems 15
Cybernetics is the study of feedback and derived concepts such as communication and control in living organisms, machines and organizations.
• Expression was coined by Norbert Wiener in 1948.
(my academic great-great-grand-father)Norbert Wiener (1913 Harvard University)Amar Bose (1956 Massachusetts Institute of Technology)Alan Oppenheim (1964 Massachusetts Institute of Technology)Evangelos Milios (1986 Massachusetts Institute of Technology)Rekleitis, Ioannis (2003 McGill University)From http://genealogy.math.ndsu.nodak.edu/index.php
![Page 16: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/16.jpg)
Early Example of Feedback System
• James Watt’s “Centrifugal Governor” in 1788.
• Regulates the steam engine speed.
16CSCE 774: Robotic Systems
![Page 17: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/17.jpg)
Other Examples
• Body temperature regulation– If cold, shiver (muscles produce heat)
– If hot, sweat (evaporation takes away heat)
• Maintaining social peace– If a crime is found (sensor), the guilty party is
punished (actuator).
• Cruise control in cars
• Banking industry regulation
17CSCE 774: Robotic Systems
![Page 18: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/18.jpg)
Why Study Control Theory
• Used everywhere in robotics/mechatronics
• Systematic approach to analysis and design
• Taxonomy of controller concepts
18CSCE 774: Robotic Systems
![Page 19: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/19.jpg)
Control Systems
• Regulation
– Temperature (thermostat + heating)
• Tracking
– robot joint rotation
• Process Optimization
– maintaining best mix of chemicals
19CSCE 774: Robotic Systems
![Page 20: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/20.jpg)
Components of Feedback Systems
• Power amplification
– Neural signal power (mW) vs. muscle power output (tens of W)
– Means it is an active system, as opposed to passive.
• Actuator
• Feedback
– measurement (sensor)
• Error signal
• Controller
20CSCE 774: Robotic Systems
![Page 21: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/21.jpg)
Classic Feedback Control Diagram
Power
Amplification
Actuator
or PlantController
Sensor
Command
input
x(t)
Error
e(t) System
ouput
y(t)
External Disturbance
d(t)Actuator
command
u(t)
Sensor
Reading
b(t)
Sensor Noise n(t)
21CSCE 774: Robotic Systems
![Page 22: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/22.jpg)
Transfer Function
• Definition: H(s) = Y(s) / X(s)
• Relates the output of a linear system to its input.
• Describes how a linear system responds to an impulse… called impulse response
22CSCE 774: Robotic Systems
![Page 23: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/23.jpg)
Laplace Transform of Classic Feedback System
Actuator
A(s)
Controller
C(s)
Sensor
S(s)
Command
input
X(s)
Error
E(s) System
ouput
Y(s)
External Disturbance
D(s)Actuator
command
U(s)
Sensor
Reading
B(s)
23CSCE 774: Robotic Systems
![Page 24: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/24.jpg)
Key Transfer Functions
CSCE 774: Robotic Systems 24
Feedback
Feedforward
Actuator
A(s)
Controller
C(s)
Sensor
S(s)
Command
input
X(s)
Error
E(s) System
ouput
Y(s)
External
Disturbance
D(s)
Actuator
command
U(s)
Sensor
Reading
B(s)
)()()(
)( :dFeedforwar sAsC
sE
sY
)()()(1
)()(
X(s)
)( :Feedback
sSsAsC
sAsCsY
![Page 25: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/25.jpg)
First Order System
CSCE 774: Robotic Systems 25
K
1
Command
input
X(s) sT1
1System
output
Y(s)
1
1
1
11 }
1{
s
1slim1
lim 1 iserror stateSteady
Theorem Value Finalby given is valuestateSteady
0s
0s
KKK
K-
sTK
K
sU(s)H(s)
sTK
K
sX
sYsH
1)(
)()(
)(lim)(0
ssFfs
u(t) is step function
![Page 26: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/26.jpg)
Response of 1st Order System
CSCE 774: Robotic Systems 26
• Impulse
• Step
sTK
K
1
=
t
t
“step”
function
TsK
K
1s
1x
sT
K
K
K
K
sTsKs
K
1
)1()1(
1
)1(
t-
t
Tim
e D
om
ain
La
pla
ce
Do
ma
int
![Page 27: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/27.jpg)
• Step Response illustrates how a system response can be decomposed into two components:
– Steady-state part:
– Transient
Steady-State vs. Transient
t
CSCE 774: Robotic Systems 27
t
![Page 28: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/28.jpg)
1st Order System: P Controller
CSCE 774: Robotic Systems 28
![Page 29: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/29.jpg)
1st Order System: PD Controller
CSCE 774: Robotic Systems 29
![Page 30: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/30.jpg)
1st Order System: PI Controller
CSCE 774: Robotic Systems 30
![Page 31: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/31.jpg)
1st Order System: PID Controller
CSCE 774: Robotic Systems 31
![Page 32: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/32.jpg)
Second Order Response
CSCE 774: Robotic Systems 32
• Typical response to step input is:
t-
t t+
2% or 5%
settling time
overshoot
rise time
90%overshoot -- % of final value
exceeded at first oscillation
rise time -- time to span from
10% to 90% of the final value
settling time -- time to reach
within 2% or 5% of the final
value
K
1
Command
input
X(s)22
2
2NN
N
ss
System
output
Y(s)
![Page 33: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/33.jpg)
2nd Order System: P Controller
CSCE 774: Robotic Systems 33
![Page 34: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/34.jpg)
2nd Order System: PD Controller
CSCE 774: Robotic Systems 34
![Page 35: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/35.jpg)
2nd Order System: PID Controller
CSCE 774: Robotic Systems 35
![Page 36: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/36.jpg)
3rd Order System
K
1
Command
input
X(s) 12
1
23 sss
System
output
Y(s)
36CSCE 774: Robotic Systems
![Page 37: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/37.jpg)
3rd Order System: P Controller
CSCE 774: Robotic Systems 37
![Page 38: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/38.jpg)
3rd Order System: PD Controller
CSCE 774: Robotic Systems 38
![Page 39: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/39.jpg)
3rd Order System: PID Controller
39CSCE 774: Robotic Systems
![Page 40: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/40.jpg)
Basic Controller Functions
)(
)()()(:control alDifferenti
)(
)()()(:control Integral
)(
)()()(:control alProportion
0
sKsE
sUte
dt
dKtu
s
K
sE
sUdtteKtu
KsE
sUteKtu
dd
i
t
i
pp
40CSCE 774: Robotic Systems
![Page 41: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/41.jpg)
Effect of Controller Functions
• Proportional Action– Simplest Controller Function
• Integral Action– Eliminates steady-state error
– Can cause oscillations
• Derivative Action (“rate control”)– Effective in transient periods
– Provides faster response (higher sensitivity)
– Never used alone
41CSCE 774: Robotic Systems
![Page 42: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/42.jpg)
PID Tuning
How to get the PID parameter values ?
(1) If we know the transfer function, analytical methods can be
used (e.g., root-locus method) to meet the transient and steady-state
specs.
(2) When the system dynamics are not precisely known, we must
resort to experimental approaches.
Using only Proportional control, turn up the gain until the system oscillates
w/o dying down, i.e., is marginally stable. Assume that K and P are the
resulting gain and oscillation period, respectively.
Then, use
Ziegler-Nichols Tuning for
second or higher order
systems
for P control for PI control for PID control
Kp = 0.6 K
Ki = 2.0 / P
Kd = P / 8.0
Kp = 0.45 K
Ki = 1.2 / PKp = 0.5 K
Ziegler-Nichols Rules for Tuning PID Controller:
42CSCE 774: Robotic Systems
![Page 43: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/43.jpg)
Advanced Control Topics• Adaptive Control
– Controller changes over time (adapts).
• MIMO Control– Multiple inputs and/or outputs.
• Predictive Control– You measure disturbance and react before measuring change
in system output.
• Optimal Control– Controller minimizes a cost function of error and control
energy.
• Nonlinear systems– Neuro-fuzzy control.– Challenging to derive analytic results.
43CSCE 774: Robotic Systems
![Page 44: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/44.jpg)
Layered Approach to Control
44CSCE 774: Robotic Systems
• Robotic systems often have a layered approach to control:
Planner
Autopilot
Attitude
Controller
Flipper
Position
Controller
Motor
movie
![Page 45: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/45.jpg)
Multiple Loops
Angle
Motor
Position
Encoder
PID
Back-EMF
comp
d/dt
DCMotor module
Velocity PID
Robotd/dt
UnderwaterSwimmer
Gait
GenerationRate
IMU
Autopilot
Controller
Camera
Vision Tracker
Target
Detection
Target
Location
Desired
Target
Location
Target
Inner loops are generally “faster” that outer loop.
45CSCE 774: Robotic Systems
![Page 46: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/46.jpg)
Line Following
• Consider a 2D robot with pose (x, y, q) following a line. The robot is moving with constant speed v, and we control the angular velocity (turnrate).
CSCE 774: Robotic Systems 46
d
![Page 47: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/47.jpg)
Calculating the error
• Consider two error measures,
– d
–
• The orientation error is used to estimate when we are heading too much in the wrong direction
–
• The distance error is what we feed to our controller.
CSCE 774: Robotic Systems 47
bounded is 90 if
![Page 48: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/48.jpg)
P-Controller
CSCE 774: Robotic Systems 48
0 20 40 60 80 100 120 140 160 180 200
0
20
40
60
80
Casaded control
kp=1 ki=0 kd=0
0 50 100 150-10
0
10
Time (s)
Rota
tion C
om
mand
(deg/s
)
Gain too low
![Page 49: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/49.jpg)
P-Controller
CSCE 774: Robotic Systems 49
0 20 40 60 80 100 120 140 160 180 200
0
20
40
60
80
Casaded control
kp=4 ki=0 kd=0
0 100 200 300 400 500 600-50
0
50
Time (s)
Rota
tion C
om
mand
(deg/s
)
Gain high
![Page 50: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/50.jpg)
P-Controller
CSCE 774: Robotic Systems 50
0 20 40 60 80 100 120 140 160 180 200
0
20
40
60
80
Casaded control
kp=10 ki=0 kd=0
0 100 200 300 400 500 600-100
-50
0
50
Time (s)
Rota
tion C
om
mand
(deg/s
)
Gain too high
![Page 51: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/51.jpg)
Pd-Controller
• We are using also the derivative of the error:
–
to calculate the turnrate :
CSCE 774: Robotic Systems 51
dt
dde tt 1
ekdk dtp
![Page 52: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/52.jpg)
Pd-Controller
CSCE 774: Robotic Systems 52
0 20 40 60 80 100 120 140 160 180 200
0
20
40
60
80
Casaded control
kp=4 ki=0 kd=4
0 50 100 150 200 250 300 350 400-100
0
100
Time (s)
Rota
tion C
om
mand
(deg/s
)
![Page 53: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/53.jpg)
Pd-Controller
CSCE 774: Robotic Systems 53
0 20 40 60 80 100 120 140 160 180 200
0
20
40
60
80
Casaded control
kp=4 ki=0 kd=10
0 50 100 150 200 250 300 350-100
-50
0
50
Time (s)
Rota
tion C
om
mand
(deg/s
)
![Page 54: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/54.jpg)
Pd-Controller
CSCE 774: Robotic Systems 54
0 20 40 60 80 100 120 140 160 180 200
0
20
40
60
80
Casaded control
kp=4 ki=0 kd=20
0 50 100 150 200 250 300 350-100
-50
0
50
Time (s)
Rota
tion C
om
mand
(deg/s
)
![Page 55: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/19-Control.pdf · 2014-12-04 · 3 Basic Tool For Continuous Time: Laplace Transform • Convert time-domain functions](https://reader034.vdocuments.us/reader034/viewer/2022042210/5eaede36f9e214218d4f8f06/html5/thumbnails/55.jpg)
Pd-Controller
CSCE 774: Robotic Systems 55
0 20 40 60 80 100 120 140 160 180 200
0
20
40
60
80
Casaded control
kp=20 ki=0 kd=50
0 50 100 150 200 250 300 350-100
0
100
Time (s)
Rota
tion C
om
mand
(deg/s
)