You are on page 1of 36

Overall controller design

1. Draw R.L. for G(s), hold graph


2. Draw desired region for closed-loop
poles based on desired specs
3. If R.L. goes through region, pick p
d
on
R.L. and in region. Go to step 7.
C(s) G
p
(s)
R(s) E(s) Y(s) U(s)
4. Pick p
d
in region (near corner but
inside region for safety margin)
5. Compute angle deficiency:


6. a. PD control, choose z
pd
such that



then
( )
d
p G Z =t |
( ) | = + Z
pd d
z p
( )
pd
z s s C + =
'
6. b. Lead control: choose z
lead
, p
lead
such
that



You can select z
lead
& compute p
lead
. Or
you can use the bisection method to
compute z and p.

Then
| =
+
+
Z
lead d
lead d
p p
z p
( )
lead
lead
p s
z s
s C
+
+
=
'
7. Compute overall gain:


8. If there is no steady-state error
requirement, go to 14.
9. With K from 7, evaluate error constant
that you already have:
( ) ( )
d
p s
s G s C
K
=
'
=
1
( ) ( ) s G s C K s K
s
a
'
=

-
* lim
0
a v p , ,
|
2 , 1 , 0
The 0, 1, 2 should match p, v, a

This is for lag control.

For PI:
( ) ( )
s
z s
s G s C K s K
pi
s
a
+

'
=

-
* lim
0
control. PI the is where
s
z s
pi
+
10. Compute desired error const. from
specs:


11. For PI : set K
*
a
= K
*
d
& solve for z
pi


For lag : pick z
lag
& let
ad vd pd
ss
K K K
e
1
or ,
1
or
1
1
+
=
d
a
lag lag
K
K
z p
-
-
=
( )
lag
lag pi
p s
z s
s
z s
s C
+
+ +
=
' '
or
12. Re-compute K



13.
14. Get closed-loop T.F. Do step response
analysis.
15. If not satisfactory, go back to 3 and
redesign.
( ) ( ) ( )
d
p s
s G s C s C
K
=
' ' '
=
1
( ) ( ) ( ) s C s C K s C
' ' '
=
If we have both PI and PD we have PID
control:
( )
s
z s
z s K
s
K
s K K s C
pi
pd
I
D P
+
+ =
+ + =
) (
K K
D
= : where
( )
pi pd P
z z K K + =
pi pd I
z Kz K =
If we have both Lead and Lag, we have
lead-lag control:
( )
lag
lag
lead
lead
p s
z s
p s
z s
K s C
+
+
+
+
=
lag lag lead lead
lag lag
lead lead
p z
0 p
0 z : where
> >> >
> >
> >
z p
z
p
Lead-lag design example






Too much overshoot, too slow & e
ss
to
ramp is too large.
( ) 984 . 1 25 . 0 at poles loop - closed , 1 With j s C =
125 . 0 = ,
C(s) G
p
(s)
R(s) E(s) Y(s) U(s)
) 5 . 0 (
4
) (
+
=
s s
s G
p
0 5 10 15 20 25
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
Time (sec)
A
m
p
l
i
t
u
d
e
Unit Step Response
ts=14.6 tp=1.57
Mp=67.3%
ess tolerance band: +-2%
td=0.628
tr=0.628
yss=1
ess=0
% 16 : Want s
p
M
sec 36 . 0 s
r
t
% 2 ramp to s
ss
e
5 . 0 % 16 : Sol > s ,
p
M
cone 60 i.e.
5
8 . 1
sec 36 . 0 > = s
r
n r
t
t e
% 2
1
% 2 s s
vd
ss
K
e
50 let =
vd
K
( ) 1 Type
Draw R.L. for G(s) & the desired region
3 . 4 5 . 2 j p
d
+ =
Clearly R.L. does not pass through
desired region.

need PD or lead.

Lets do lead.
Pick p
d
in region

( ) 3 . 4 3 picked have could j +


3 . 4 5 . 2 j p
d
+ =
: Compute |




Now choose z
lead
& p
lead
.
Could use bisection.
Lets pick z
lead
to cancel plant pole s + 0.5
( )
d
p G Z =t |
( ) = 235 t
= + = 55 235 180
5 . 0 let =
lead
z
Use our formula to get p
lead


Now compute K :



Now evaluate error constant K
va


021 . 5 =
lead
p
( )
26 . 6
1
= =
=
+
+
d
lead
lead
p s
p s
z s
s G
K
( ) s G
p s
z s
sK K
lead
lead
s
va
+
+
=
0
lim
s p s
s
lead
K s
/
+


/
=
4 1
0
lim
021 . 5
26 . 6 4 4
= =
lead
p
K
1 . 0
50 021 . 5
26 . 6 4
= =

vd
va
K
K
( )
20 ~ 5
5 . 2
20 ~ 5
Re
Pick

= =
d
lag
p
z
2 . 0 Pick =
lag
z
02 . 0 then = =
vd
va
lag lag
K
K
z p
Could re-compute K, but lets skip:







do step response.
( )
02 . 0
2 . 0
021 . 5
5 . 0
26 . 6
+
+

+
+
=
s
s
s
s
s C
( ) ( )
( )( ) 02 . 0 021 . 5
2 . 0
26 . 6
+ +
+
=
s s s
s
s G s C
( )
( )
( )( ) ( ) 2 . 0 26 . 6 02 . 0 021 . 5
2 . 0 26 . 6
. .
+ + + +
+
=
s s s s
s
s G
c
-6 -4 -2 0 2
-5
0
5
0.8
0.91
0.975
0.14 0.28 0.42 0.56 0.68
0.8
0.91
0.975
1 2 3 4 5 6
0.14 0.28 0.42 0.56 0.68
Root Locus
Real Axis
I
m
a
g
i
n
a
r
y

A
x
i
s
0 0.5 1 1.5 2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Step Response
Time (sec)
A
m
p
l
i
t
u
d
e
0 0.5 1 1.5 2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Step Response
Time (sec)
A
m
p
l
i
t
u
d
e
( )
( )
005 . 0
05 . 0
02 . 0
2 . 0
: from Lag Changing
+
+
=
+
+
=
s
s
s C
to
s
s
s C
Control System Implementation
C(s) G
p
(s)
R(s) E(s) Y(s) U(s)
Controller Actuator
Reference
Command
error
output
control
Plant
Sensor
disturbance
input
noise
+
_
plant
input
PC-in-the-loop Control
power
Amp
Actuator
Reference
Command
output
Plant
Sensor
disturbance
input
A/D
D/A

PC
I/O
I/O
All control algorithms implemented in PC (could be Matlab Real-Time)
Needs data acquisition system, including A/D and D/A
Needs power amplifier
Signal
Conditioner
and amplifier
-Controller based control
power
Amp
Actuator
Reference
Command
output
Plant
Sensor
disturbance
input

-Controller
I/O
I/O
Very similar architecture to PC-in-the-loop control
All control algorithms implemented in -controller
-controller has its own A/D and D/A, but make sure resolution is OK
Still needs power amplifier, because -controller outputs weak signal
Signal
Conditioner
and amplifier
Power electronic based control
Op Amp
circuit
Actuator
Reference
Command
output
Plant
Sensor
disturbance
input
Difference
amplifier
Analog operation, fast
Inexpensive
All algorithms in circuit hardware
No sampling and aliasing issues
Difference Amplifier
Example circuit:
e
R1
R2
R3
R4
+

r
y
Op-amp controller circuit:

1. Proportional:
e K e
R R
R R
u
P
= =
1 3
2 4
1 3
2 4
R R
R R
K
P
=

+

+
e
R1
R2
R3
R4
u
2. Integral:
1 3 1
4
C R R
R
K
I
=
( ) s e
s
K
I
= ( ) ( ) s e
s C R R
R
s u =
1 1 3
4
1

+

+
e
R1
C1
R3
R4
u
3. Derivative control:
1 2
3
4
C R
R
R
K
D
=
( ) s se K
D
= ( ) ( ) s e s C R
R
R
s u =
1 2
3
4

+

+
e
C1
R3
R4
u
R2
4. PD controller:
1 2
3
4
1 3
2 4
, C R
R
R
K
R R
R R
K
D P
= =
( ) ( ) s e s K K
D P
+ = ( ) ( ) ( ) s e s C R
R
R
R
R
s u 1
1 1
1
2
3
4
+ =

+

+
e
C1
R3
R4
u
R2
R1
5. PI controller:
2 1 3
4
1 3
2 4
1
,
C R R
R
K
R R
R R
K
I P
= =
( ) s e
s
K
K
I
P
|
.
|

\
|
+ =
( ) ( ) s e
s C R
s C R
R
R
R
R
s u
+
=
2 2
2 2
1
2
3
4
1

+

+
e
R1
C1
R3
R4
u
R2
6. PID controller:
2 1 3
4
1 2
3
4
2 2
1 1
1 3
2 4
, , 1
C R R
R
K C R
R
R
K
C R
C R
R R
R R
K
I D P
= =
|
|
.
|

\
|
+ =
( ) s e
s
K
s K K
I
D P
|
.
|

\
|
+ + =
( )
( )( )
( ) s e
s C R
s C R s C R
R
R
R
R
s u
+ +
=
2 2
2 2 1 1
1
2
3
4
1 1

+

+
e
R1
C2
R3
R4
u
R2
C1
7. Lead or lag controller:
2 2 1 1 2 3
1 4
1
,
1
,
C R
p
C R
z
C R
C R
K = = =
( ) ( ) ( ) s e
p s
z s
K s e
s C R
s C R
R R
R R
s u
+
+
=
+
+
=
1
1
2 2
1 1
1 3
2 4
( ) s e
C R s
C R s
C R
C R

+
+
=
2 2
1 1
2 3
1 4
1
1

+

+
e
R1
R3
R4
u
R2
C1
C2
If R
1
C
1
> R
2
C
2

then z < p
This is lead controller

If R
1
C
1
< R
2
C
2

then z > p
This is lag controller

8. Lead-lag controller:
( )
( )
( )
( ) s e
s C R R
s C R
s C R
s C R R
R R
R R
s u
+ +
+

+
+ +
=

lag
2 4 2
2 2
lead
1 1
1 3 1
3 5
4 6
1
1
1
1
( )
1 1 1 3 1
C R C R R > + ( )
2 4 2 2 2
C R R C R + <

+

+
e
R1
R3
R6
u
R2
C1
C2
R4
R5
( ) s e
p s
z s
p s
z s
K
2
2
1
1
+
+

+
+
=
4 2
2
1
3 1
3 5
4 6
R R
R
R
R R
R R
R R
K
+

+
=
( )
lead
1 1
1 1
1
1 3 1
1
C R
p
C R R
z = <
+
=
( )
lag
1 1
2 4 2
2
2 2
2
C R R
p
C R
z
+
= > =

You might also like