Title: PID Control
1PID Control
- spring-mass-damper problem
2In an experiment, the following output was
obtained and the system parameters were found to
be ? c/(2(k1m1)1/2)0.1203, ?n (k1/m1)1/2
18.81 rad/sec m1 0.5773 kg, k1 204.25 N/m, c
2.6135 N sec/m x1(0) ? 0.025 m 2.5 cm, from
rest.
3- lets model this system using Simulink
- governing differential equation
- for our case, f(t) 0, (0) 0, x1(0) 0.025
m - thus
4(No Transcript)
5(No Transcript)
6new case ? 0.938, ?n 10.43 rad/sec 1.66
cycles/sec
7- suppose the mass is initially positioned at the
free length and is at rest - we want to move the mass to the position x 0.3
m - how do we determine f(t)?
8- proportional controller for the underdamped case
- f(t) (1 N/m) e(t)
large steady state error large settling
time never gets close to the desired position
x, m
Simulink
time, sec
9Kp 10,000 N/m
x, m
Kp 1000 N/m
Kp 100 N/m
Kp 10
time, sec
as proportional gain Kp increases steady state
error improves rise time improves settling time
worsens overshoot and frequency of oscillation
worsens
10free response
overdamped system new case ? 10.43, ?n
10.43 rad/sec 1.66 cycles/sec
was 4.5 N sec/m
underdamped case
this overdamped case
11- proportional controller for the overdamped case
Kp 1 N/m
underdamped case
x, m
Kp 1 N/m
this overdamped case
Simulink
time, sec
12Kp 10,000 N/m
Kp 1000 N/m
Kp 100 N/m
Kp 10
proportional controller looks pretty good for
overdamped case when gain value is high
13Kp 10,000,000 N/m
Kp 1,000,000 N/m
Kp 100,000 N/m
response can overshoot for overdamped case if
gain value Kp becomes too large
14- suppose we have a critically damped system (?1)
15critically damped case, Kp 1
Simulink
16critically damped case for various Kp
Kp 100,000 N/m
Kp 10,000 N/m
Kp 1000 N/m
Kp 100 N/m
Kp 10
17Kp 1 N/m for all 3 cases
c 4.5 N sec/m, ? 0.094
c 47.9583 N sec/m, ? 1
c 500 N sec/m, ? 10.43
all cases (underdamped, critically damped, and
overdamped) have the same steady state error
18- apparent rules of thumb for a 2nd order system
using only a proportional controller - for all three cases, increasing Kp reduces the
steady state error - if Kp gets too large you will getoscillations
- proportional controller can workpretty well,
unless the system isunderdamped
underdamped
overdamped
critically damped
19underdamped
overdamped
critically damped
20- how can we do better?
- lets try to reduce the steady state error
- next try ? PI controller
- we will add a new term to f(t)
- this will be proportional to the time integral of
the error
- what about the limits of the integration?
- do we integrate from tdinosaur age to current
time?
- - usually only add together the last n error
terms - note that e(t) may be positive or negative
- if it stays positive or negative for a long time,
the contribution to f(t) can become significant - so, if there is a steady state error, eventually
this error will add up and give a boost to f(t)
21- lets look at the underdamped system again
22underdamped system
Kp 1 N/m, Ki 1 N sec/m
Kp 1 N/m, Ki 0
23underdamped system
Kp 1 N/m, Ki 100 N sec/m
Kp 1 N/m, Ki 300 N sec/m
Kp 1 N/m, Ki 500 N sec/m
24underdamped system
Kp 0.1 N/m, Ki 250 N sec/m
Kp 5 N/m, Ki 250 N sec/m
Kp 50 N/m, Ki 250 N sec/m
Kp 500 N/m, Ki 250 N sec/m
25overdamped system
Kp 1 N/m, Ki 1 N sec/m
Kp 1 N/m, Ki 0
26overdamped system
Kp 1 N/m, Ki 100 N sec/m
Kp 1 N/m, Ki 300 N sec/m
Kp 1 N/m, Ki 500 N sec/m
27critically damped system
Kp 1 N/m, Ki 1 N sec/m
Kp 1 N/m, Ki 0
28critically damped system
Kp 1 N/m, Ki 100 N sec/m
Kp 1 N/m, Ki 300 N sec/m
Kp 1 N/m, Ki 500 N sec/m
29critically damped system
Kp 1 N/m, Ki 1000 N sec/m
Kp 1 N/m, Ki 2000 N sec/m
Kp 1 N/m, Ki 5000 N sec/m
30overdamped system
underdamped system
critically damped system
critically damped system w/ larger Ki values
Kp 1 N/m, Ki 100 N sec/m
Kp 1 N/m, Ki 300 N sec/m
Kp 1 N/m, Ki 500 N sec/m
31- Can we decrease the overshoot and the settling
time?
32- lets look at the underdamped case againKp 100
N/m
33underdamped case, Kp 100 N/m
x (position)
m
error
time, sec
how can we reduce the oscillations ?
34underdamped case, Kp 100 N/m
x (position)
x (position)
error
m
derivative of error
error
derivative of the error
time, sec
lets look at the derivative of the error if we
have a positive error, and is positive, then
the error is getting worse ! so, whenever we
have a positive error and is positive, lets
add more to f(t) lets add Kd ? , where Kd is
some constant
35e(t) xdesired - x
lets look at all the possible cases
I
II
III
IV
36underdamped case, Kp 100 N/m
xdesired 0.3 m
x (position)
m
derivative of error / 3
I
II
I
II
time, sec
for this example, the error is always positive,
but goes positive and negative lets look at
a proportional and derivative controller (PD)
37underdamped case, Kp 100 N/m
xdesired 0.3 m
Kd 0
Kd 10 N/m-sec
m
Kd 100
time, sec
the Kd term helped tremendously with the
oscillations, but didnt change the steady state
error
38In Summary
39In Summary
40PID Controller
41PID Controller
underdamped case, Kp 100 N/m, Ki 250 N sec/m
xdesired 0.3 m
Kd 0
m
Kd 10 N/m-sec
Kd 100
time, sec
42General Tips for Designing a PID Controller
?
- Obtain an open-loop response and determine what
needs to be improved - Add a proportional control to improve the rise
time - Add a derivative control to improve the overshoot
- Add an integral control to eliminate the
steady-state error - Adjust each of Kp, Ki, and Kd until you obtain a
desired overall response. (TUNING!)
?
?
?
?
43PI Control with Velocity Feedback
44underdamped system PI controller
45underdamped system PI controller with velocity
feedback
46underdamped system PI controller with velocity
feedback
Kp 5 Ki 250
Kv 0
Kv 1
m
Kv 5
Kv 10 N-sec/m
time, sec
47underdamped system
Kp 5 Ki 250
m
Kv 10 N-sec/m
time, sec