Control Systems EE 4314

Control Systems
EE 4314
Lecture 29
May 5, 2015
Spring 2015
Indika Wijayasinghe
Numerical Integration
𝑑
β€’ What is the equivalent of the different operator ( or 𝑠) in
𝑑𝑑
terms of 𝑧?
Consider
π‘ˆ(𝑠)
𝐸(𝑠)
=𝐷 𝑠 =
1
𝑠
𝑇
𝑒 (π‘˜ + 1)𝑇 =
(π‘˜+1)𝑇
𝑒 𝑑 𝑑𝑑 +
0
𝑒 𝑑 𝑑𝑑
𝑇
= 𝑒 𝑇 + area under e t over the last T
Numerical Integration
Numerical Integration
Numerical Integration
β€’ Example: Using three (forward difference, backward
difference, Tustin method) approximation methods to find the
discrete equivalent for
10𝑠 + 1
𝐷 𝑠 =
𝑠+1
Numerical Integration
β€’ Example: Using three (forward difference, backward
difference, Tustin method) approximation methods to find the
discrete equivalent for
10𝑠 + 1
𝐢 𝑠 =
𝑠+1
Numerical Integration
β€’ Frequency responses for sampling periods T=0.5 and 1
Approximation is better for higher sampling rate (T=0.5). The sampling rate should be
at least 10 times higher than the highest frequency of interest. Tustin’s method is the
best approximation.
State Space Formulation
β€’ Find the state space model described by difference
equation
𝑦 π‘˜ + 2 = 𝑒 π‘˜ + 1.7𝑦 π‘˜ + 1 βˆ’ 0.72𝑦(π‘˜)
Discrete State Space Equation
β€’ Find the state space model described by difference equation
𝑦 π‘˜ + 2 = 𝑒 π‘˜ + 1.7𝑦 π‘˜ + 1 βˆ’ 0.72𝑦(π‘˜)
Solutions of Discrete State Space
Equation
β€’ Discrete state space equation
x k + 1 = Ax k + Bu k
y k = Cx k + Du k
Recursive solution
Solutions of Discrete State Space
Equation
β€’ Continue
Digital Controller Design
β€’ There are two techniques for finding the difference equations
for the digital controller
1.
Discrete equivalent: Design D(s) first, and then obtain equivalent
D(z) using Tustin’s method, Matched Pole-Zero (MPZ) method.
Discrete design: directly obtain the difference equation without
designing D(s) first. Obtain G(z) and design D(z).
2.
Digital controller
r(t)
r(kT)
T
+
e(kT)
Difference
equations
u(kT)
D/A and
hold
u(t)
plant
G(s)
clock
y(kT)
A/D
T
sensor
1
y(t)
Design Using Discrete Equivalent
β€’ Design by discrete equivalent
1.
2.
3.
Design a continuous compensation D(s) using continuous controller
design methods such as PID, lead/lag compensator.
Digitize the continuous compensation: D(s) οƒ  D(z)
Use discrete analysis, simulation or experimentation to verify the
design
Digitization Technique:
Tustin’s Method
β€’ Consider
π‘ˆ(𝑠)
𝐸(𝑠)
=𝐷 𝑠 =
1
𝑠
π‘˜π‘‡βˆ’π‘‡
𝑒 π‘˜π‘‡ =
𝐸(𝑠)
π‘ˆ(𝑠)
π‘˜π‘‡
𝑒 𝑑 𝑑𝑑 +
0
1
𝑠
𝑒 𝑑 𝑑𝑑
π‘˜π‘‡βˆ’π‘‡
= 𝑒 π‘˜π‘‡ βˆ’ 𝑇 + area under e t over the last T
𝑇
2
𝑒 π‘˜ = 𝑒 π‘˜ βˆ’ 1 + [𝑒 π‘˜ βˆ’ 1 + 𝑒 π‘˜ ] οƒŸ trapezoidal integration
Taking z-transform
π‘ˆ 𝑧
𝐸 𝑧
= 𝐷(𝑧) =
𝑠=
2 1βˆ’π‘§ βˆ’1
𝑇 1+𝑧 βˆ’1
𝑇 1+𝑧 βˆ’1
2 1βˆ’π‘§ βˆ’1
Trapezoidal integration
Digitization Technique:
Tustin’s Method
β€’ MATLAB command
1
𝐷 𝑠 =
𝑠
>> numD=[1];
denD=[1 0];
Ds=tf(numD,denD)
𝑇 1 + 𝑧 βˆ’1
𝐷(𝑧) =
2 1 βˆ’ 𝑧 βˆ’1
Dz=c2d(Ds,1,'tustin')
Dz =
Ds =
1
s
Continuous-time transfer function.
0.5 z + 0.5
----------z-1
Sample time: 1 seconds
Discrete-time transfer function.
Relationship between s and z
β€’ Consider
Im
𝑓 𝑑 = 𝑒 βˆ’π‘Žπ‘‘ , 𝑑 > 0
Laplace transform
𝐹 𝑠 =
1
,
𝑠+π‘Ž
and it has a pole at 𝑠 = βˆ’π‘Ž
𝐹 𝑧 =
𝑠 = βˆ’π‘Ž
S-plane
Z-transform
𝑧
,
π‘§βˆ’π‘’ βˆ’π‘Žπ‘‡
Re
and it has a pole at 𝑧 = 𝑒 βˆ’π‘Žπ‘‡
A pole at 𝑠 = βˆ’π‘Ž in the s-plane corresponds to a
pole at 𝑧 = 𝑒 βˆ’π‘Žπ‘‡
Im
1
Re
𝑧 = 𝑒 βˆ’π‘Žπ‘‡
Z-plane
Digitization Technique:
Matched Pole-Zero (MPZ) Method
β€’ MPZ technique applies the relation 𝑧 = 𝑒 𝑠𝑇 . This digitization
method is an approximation
1.
2.
3.
Map poles and zeros according to the relation 𝑧 = 𝑒 𝑠𝑇 .
If the numerator is of lower order than the denominator, add powers
of (z+1) to the numerator until numerator and denominator are of
equal.
Set the DC or low-frequency gain of D(z) equal to that of D(s).
The MPZ approximation of
𝐷 𝑠 =
𝑠+π‘Ž
𝐾𝑐
𝑠+𝑏
is 𝐷 𝑧 =
π‘§βˆ’π‘’ βˆ’π‘Žπ‘‡
𝐾𝑑
π‘§βˆ’π‘’ βˆ’π‘π‘‡
Digitization Technique:
Pole-Zero (MPZ) Method
β€’ Adjusting DC gain of D(z)
𝐷 𝑠 =
𝑠+π‘Ž
𝐾𝑐
𝑠+𝑏
𝐷 𝑧 =
π‘§βˆ’π‘’ βˆ’π‘Žπ‘‡
𝐾𝑑
π‘§βˆ’π‘’ βˆ’π‘π‘‡
Using the Final Value Theorem
π‘Ž
1 βˆ’ 𝑒 βˆ’π‘Žπ‘‡
𝐾𝑐 = 𝐾𝑑
𝑏
1 βˆ’ 𝑒 βˆ’π‘π‘‡
π‘Ž 1 βˆ’ 𝑒 βˆ’π‘π‘‡
𝐾𝑑 = 𝐾𝑐
𝑏 1 βˆ’ 𝑒 βˆ’π‘Žπ‘‡
The difference equation is
𝑒 π‘˜ = 𝑒 π‘˜ βˆ’ 1 + 𝐾𝑑 [𝑒 π‘˜ βˆ’ 𝑒 π‘˜ βˆ’ 1 ]
Final Value Theorem
β€’ Final value theorem for continuous system
lim π‘₯ 𝑑 = π‘₯𝑠𝑠 = lim 𝑠𝑋(𝑠)
π‘‘β†’βˆž
𝑠→0
β€’ Final value theorem for discrete system
lim π‘₯ π‘˜ = π‘₯𝑠𝑠 = lim (1 βˆ’ 𝑧 βˆ’1) 𝑋(𝑧)
π‘˜β†’βˆž
𝑧→1
Digitization Technique:
Matched Pole-Zero (MPZ) Method
β€’ For D(s) with a higher-order denominator, adds (z+1) to the
numerator
𝐷 𝑠 = 𝐾𝑐
𝑠+π‘Ž
𝑠(𝑠+𝑏)
(𝑧 + 1)(𝑧 βˆ’ 𝑒 βˆ’π‘Žπ‘‡ )
𝐷 𝑧 = 𝐾𝑑
(𝑧 βˆ’ 1)(𝑧 βˆ’ 𝑒 βˆ’π‘π‘‡ )
Digitization Technique:
Matched Pole-Zero (MPZ) Method
β€’ Example: Design a digital controller to have a closed-loop natural
frequency 𝑛 β‰… 0.3π‘Ÿπ‘Žπ‘‘/𝑠 and a damping ratio =0.7.
𝐸
𝑅+
π‘ˆ
1
𝑠2
𝐷 𝑠 = 0.81
𝑠+0.2
𝑠+2
𝐷(𝑠)
βˆ’
First step is to find the proper D(s)
π‘Œ
Digitization Technique:
Matched Pole-Zero (MPZ) Method
β€’
Example: Design a digital controller to have a closed-loop natural frequency 𝑛 β‰…
0.3rad/s and a damping ratio =0.7.
Second step is to obtain D(z)
Select sampling time T so that sample rate should be about 20 times 𝑛 . Thus 𝑠 =
2πœ‹
20𝑛 = 6rad/sec. Since sampling time 𝑇 =
= 1sec.
𝑠
𝑠+0.2
𝑠+2
0.389βˆ’0.319𝑧 βˆ’1
1βˆ’0.135𝑧 βˆ’1
MPZ digitization of 𝐷 𝑠 = 0.81
π‘§βˆ’0.82
is 𝐷 𝑧 = 0.389 π‘§βˆ’0.135 =
The difference equation is
𝑒 π‘˜ = 0.135𝑒 π‘˜ βˆ’ 1 + 0.389𝑒 π‘˜ βˆ’ 0.319𝑒(π‘˜ βˆ’ 1)
>> T=1;
numD=[1 0.2];
denD=[1 2];
Ds=0.81*tf(numD,denD);
Dz=c2d(Ds,T,'matched')
Dz =
0.3864 z - 0.3163
----------------z - 0.1353
Digitization Technique:
Matched Pole-Zero (MPZ) Method
β€’ Example: Design a digital controller to have a closed-loop
natural frequency 𝑛 β‰… 0.3rad/s and a damping ratio =0.7.
Discrete Design
β€’ Discrete design is an exact design method and avoids the
approximations inherent with discrete equivalent. The design
procedures are
– Finding the discrete model of the plant G(s)οƒ  G(z)
– Design the compensator directly in its discrete form D(z)
π‘Œ(𝑧)
A practical approach is to start the design using discrete
equivalents, then tune up the result using discrete
design.
Discrete Design
β€’ For a plant described by G(s) and precede by a ZOH, the
discrete transfer function is
𝐺(𝑠)
βˆ’1
𝐺 𝑧 = 1βˆ’π‘§ 𝑍
𝑠
The closed-loop transfer function
π‘Œ(𝑧)
𝐷 𝑧 𝐺(𝑧)
=
𝑅(𝑧) 1 + 𝐷 𝑧 𝐺(𝑧)
1 βˆ’ 𝑒 βˆ’π‘ π‘‡
𝑍𝑂𝐻 𝑠 =
𝑠
Mixed control system
Pure discrete system
Discrete Root Locus
π‘Ž
β€’ Consider 𝐺 𝑠 =
and 𝐷 𝑧 = 𝐾, discuss the implications
𝑠+π‘Ž
of the loci.
Z-transform table
Continuous system remains stable for all values of K, but
the discrete system becomes oscillatory with decreasing
damping ratio as z goes from 0 to -1 and eventually
becomes unstable.
Relationship b/w z-plane and s-plane
𝑧 = 𝑒 𝑠𝑇
n increase
 increase
Relationship b/w z-plane and s-plane
Discrete Controllers
β€’ Proportional
β€’ Derivative
β€’ Integral
β€’ Lead Compensation
Discrete Design
β€’ Example: Design a digital controller to have a closed-loop natural
frequency 𝑛 β‰… 0.3rad/s and a damping ratio =0.7. Use a discrete
design method.
𝐸
𝑅+
𝐷(𝑠)
βˆ’
β€’ From 𝐺 𝑧 = 1 βˆ’ 𝑧 βˆ’1 𝑍
π‘ˆ
1
𝑠2
𝐺(𝑠)
𝑠
𝑇2 𝑧 + 1
𝐺 𝑧 =
2 (𝑧 βˆ’ 1)2
When T=1, 𝐺 𝑧 =
1 𝑧+1
2 (π‘§βˆ’1)2
π‘Œ
οƒŸ Z-transform table
1
𝑇 2 𝑧(𝑧 + 1)
β†’
𝑠3
2 (𝑧 βˆ’ 1)3
Discrete Design
β€’ Example: Design a digital controller to have a closed-loop natural
frequency 𝑛 β‰… 0.3π‘Ÿπ‘Žπ‘‘/𝑠 and a damping ratio =0.7. Use a discrete
design method.
Becomes unstable as K increases
Z-plane locus with proportional
controller D z = K
Z-plane locus with PD controller
D z =𝐾
(π‘§βˆ’0.85)
𝑧
Digital Control
𝐺(𝑠)
𝐷(𝑠)
𝐸
𝑅+
βˆ’
𝑠 + 0.2
0.81
𝑠+2
π‘ˆ
1
𝑠2
𝐺(𝑧)
π‘Œ
𝐸
𝑅(𝑧) +
𝐷(𝑧)
π‘ˆ(𝑧)
βˆ’
π‘Œ(𝑧)
𝑇2 𝑧 + 1
2 (𝑧 βˆ’ 1)2
Continuous control
Discrete equivalent
Discrete design
sysGs=tf(1,[1 0 0]);
sysDs=tf(0.81*[1 0.2],[1 2]);
sysGDs=sysGs*sysDs;
sysCLs=feedback(sysGDs,1);
step(sysCLs);
sysGs=tf(1,[1 0 0]);
sysDs=tf(0.81*[1 0.2],[1 2]);
sysGs=tf(1,[1 0 0]);
T=1;
sysDz=c2d(sysDs,T,'matched')
sysGz=c2d(sysGs,T,'zoh');
sysDGz=sysGz*sysDz;
sysCLz=feedback(sysDGz,1)
step(sysCLz)
T=1;
sysGz=c2d(sysGs,T,'zoh');
sysDz=tf(0.374*[1 -.85],[1 0],T)
sysDGz=sysGz*sysDz;
sysCLz=feedback(sysDGz,1)
step(sysCLz)
Step Responses of the Continuous and
Digital Systems
Step Response
1.5
Amplitude
1
Continuous
Discrete equivalent
0.5
Discrete design
0
0
5
10
15
20
Time (seconds)
25
30
35