Sie sind auf Seite 1von 36

ulscreuzauon

Pans-euer Palvorsen, M.Sc.


1ransfer-
funks[oner
D|erens|a|
-||kn|nger
1.orden
2.orden
Lap|ace
8lokk-
dlagrammer
1llsLandsrom-
modeller
Speslalulfelle
Stab|||tets-
ana|yse
MaLhScrlpL
LabvlLW
uaLaverkLy
1. Systemets po|er
8odedlagram
Analyse/ueslgn
8eallserlng/
lmplemenLerlng
2. Irekvensrespons
D|skrenser|ng
kegu|er|ngssystem
Det komp|ekse p|an
ueL komplekse plan
AsympLousk sLabllL sysLem
MarglnalL sLabllL sysLem
usLabllL sysLem
AsympLousk sLabllL sysLem
MarglnalL sLabllL sysLem
usLabllL sysLem
1|dsp|anet
Alr PeaLer
1.orden med udsforslnkelse
1|dsp|anet S-p|anet
kegu|er|ngstekn|kk
k = lorsLerknlng
1=1ldskonsLanL
Sprang-
respons
Serle, arallel, leedback
D|skrenser|ng
1able of ConLenLs
1. WhaL ls ulscreLe Slgnals and ulscreuzauon?
2. Why ulscreuzauon?
3. ulscreuzauon MeLhods
Lu|er, 1usun, ZCP, eLc.
4. ulscreuzauon Lxamples
ulerenual Lquauons -> ulerence Lquauons
Conunous SLaLe-space models -> ulscreLe SLaLe-space models
3. ulscreuzauon ln MathScr|pt wlLh Lxamples
6. ulscreuzauon ln LabVILW wlLh Lxamples
7. ulscreLe Lowpass I||ter
ulscreLe AlgorlLhm
LabvlLW lmplemenLauon (Lxample)
8. ulscreLe I ConLroller
ulscreLe AlgorlLhm
LabvlLW lmplemenLauon (Lxample)
9. C-based Contro| System - LabvlLW Lxample
needed ln
Lhe ro[ecL
ulglLal Slgnals & values
1 0 1 0 0
L.g. 8 blL:
00000000 -> 0
.
.
.
11111111 -> 233
keso|unon:
L.g. 8 blL resoluuon
8esoluuon: 3v/236=0.0193v
8 blLs have 236
dlerenL comblnauons
or levels
8lnary values: 0" and 1"
Au ConverLer
uA ConverLer
MeasuremenL
Slgnal
ConLrol Slgnal
Au & uA ConverLers
AD - Analog Lo ulglLal
DA - ulglLal Lo Analog
Connnuous S|gna|
D|scret S|gna| A compuLer can only deal
wlLh dlscreLe slgnals
ulerenL ulscreLe Symbols
and meanlngs
resenL value:
revlous value:
nexL (luLure) value:
noLe! ulerenL noLauon ls used ln dlerenL llueraLure!
Sampllng and Allaslng
Crlglnal Slgnal
A||as|ng ("Nedfo|d|ng") -> 1he Samp||ng kate |s to |ow!
Sampllng 1lme
Sampllng lrequency
ulscreLe Approxlmauon of Lhe ume derlvauve
Luler backward meLhod:
Luler forward meLhod:
ulscreuzauon MeLhods
Lu|er forward method:
Lu|er backward method:
CLher meLhods are Zero Crder Pold (ZCP), 1usun's meLhod, eLc.
Slmpler Lo use!
More AccuraLe!
ulscreuzauon Lxample
Clven Lhe followlng conunuous sysLem:
We wlll use Lhe Luler forward meLhod :
SLudenLs:
en and paper: llnd Lhe dlerence equauon
(dlscreLe dlerenlual equauon) for Lhls
sysLem.
ulscreuzauon Lxample - Soluuons
Clven Lhe followlng conunuous sysLem:
We wlll use Lhe Luler forward meLhod :
D|screnzanon |n MathScr|pt - A|t. 1
% Simulation of discrete model
clear, clc

% Model Parameters
a = 0.25;b = 2;

% Simulation Parameters
Ts = 0.1; %s
Tstop = 20; %s
uk = 1; % Step in u
x(1) = 0; % Initial value

% Simulation
for k=1:(Tstop/Ts)
x(k+1) = (1-a*Ts).*x(k) + Ts*b*uk;
end

% Plot the Simulation Results
k=0:Ts:Tstop;
plot (k, x)
grid on
SLudenLs:
lmplemenL and SlmulaLe
Lhls sysLem ln MaLhScrlpL
D|screnzanon |n MathScr|pt - A|t. 2
% Find Discrete model
clear
clc

% Model Parameters
a = 0.25;
b = 2;
Ts = 0.1; %s

% State-space model
A = [-a];
B = [b];
C = [1];
D = [0];

model = ss(A,B,C,D)
model_discrete = c2d(model, Ts, 'forward')
step(model_discrete)
SLudenLs:
lmplemenL and SlmulaLe
Lhls sysLem ln MaLhScrlpL
We geL Lhe same answer as ln
prevlous example!
ulscreuzauon ln LabVILW uslng
Lhe Iormu|a Node
Lxamp|e (bacLerla populauon):
lmplemenung dlcreLe equauons ln
LabvlLW uslng C synLax
SLudenLs: lmplemenL and SlmulaLe Lhls sysLem ln LabvlLW uslng a Iormu|a Node
and a Ior Loop. A Subvl could be used Lo lmplemenL Lhe model.
We wlll slmulaLe Lhe number of bacLerla ln Lhe [ar aer 1 hour (slmulauon perlod),
assumlng LhaL lnlually Lhere are 100 bacLerla presenL (x(0)). SeL b=1, p=0.3. SeL 1s=0.01s.
SubVI
ulscreuzauon ln LabvlLW uslng Lhe lormula node
- Soluuons
Note! A Subvl ls
used Lo
lmplemenL Lhe
model.
8ecommended!!
Slmulauon 8esulLs:
Subvl:
noLe! 8lghL-Cllck and selecL roperues.
SeL Mulupller = 0.01 (=1s) ln Lhe Scales
1ab.
D|screte State-space Mode|s
Cr uslng anoLher noLauon:
ulscreLe SLaLe-space Models - Lxample
Clven Lhe followlng conunuous sysLem:
We wlll use Lhe Luler forward meLhod :
SLudenLs: SLudenLs: llnd Lhe
dlscreLe sLaLe-space model
(uslng pen and paper)
ulscreLe SLaLe-space Models - Lxample
(Soluuons)
Clven Lhe followlng conunuous sysLem:
We wlll use Lhe Luler forward meLhod :
ulscreLe SLaLe-space Models Lxample
ln MaLhScrlpL
Clven Lhe followlng conunuous sysLem:
% Properties
Ts = 0.1;

% Continuous System:
A = [0, -Ts; 0, 0];
B = [2*Ts, 0]';
C = [1 0];
D = [0];
ssmodel = ss(A, B, C, D);
figure(1)
step(ssmodel)

% Discrete System:
ssmodel_discete = c2d(ssmodel, Ts, 'forward)
figure(2)
step(ssmodel_discete)
MaLhScrlpL
SLudenLs: lmplemenL Lhe sysLem above and nd Lhe sLep response uslng MaLhScrlpL.
1ry wlLh dlerenL values for 1s!
ro[ecL
lmplemenL a ConLrol SysLem for Lhe Alr PeaLer wlLh
ulscreLe Lowpass lllLer and l ConLroller from ScraLch
lmplemenung a ConLrol SysLem
Whlle Lhe real process ls conunuous, normally Lhe ConLroller and Lhe lllLer ls
lmplemenLed ln a compuLer.
We are golng Lo nd dlscreLe algorlLhms for Lhe Lowpass I||ter and Lhe I Contro||er
and lmplemenL Lhem ln LabvlLW
Alr PeaLer
C-based ConLrol SysLem -
LabvlLW Lxample (PMl/Cul)
1ldsdlskreL (daLamasklnbaserL) lu-regulerlngsslyfe
Prosess
Sensor
y
SP e
PID-
regulator
y
d
y
m

Mlesty
y
mf

Automatiseringsutstyr
med mikroprosessor
AD
DA
Manuell
Auto
Pdrags-
omregning
Mleverdi-
omregning
Mle-
filter
Aktuator
u
man
u
t
y(t)
t
k
=kT
s
T
s
y
SP
(t
k
)
t
k
e(t
k
)
t
k
u(t
k
) u(t)
t
t
k
y
mf
(t
k
)
t
y
m
(t)
Lowpass I||ter
Lowpass lllLer 1ransfer funcuon:
SLudenLs: en and aper: llnd Lhe dlscreLe algorlLhm for Lhls
lLer, whlch can be lmplmenLed ln a programmlng language llke
C or LabvlLW lormula node
use Lhe Luler 8ackward meLhod:
D|screte Lowpass I||ter
We use Lhe Luler 8ackward meLhod:
lnverse Laplace glves Lhe dlerenual Lquauon:
1hls glves:
Lowpass lllLer 1ransfer funcuon:
We dene:
1hls glves:
1hls algorlLhm can be easly lmplemenLed
ln a rogrammlng language
lllLer ouLpuL
nolsy lnpuL slgnal
ulscreLe Lowpass lllLer - LabvlLW
SLudenLs: lmplemenL a ulscreLe
Lowpass lllLer and make sure Lo LesL lL
properly
Lxample of
lmplemenLauon
1esung Lhe ulscreLe Lowpass lllLer
I Contro||er
Conunuous l ConLroller:
SLudenLs: en and aper: llnd Lhe dlscreLe algorlLhm for Lhls l
conLroller, whlch can be lmplmenLed ln a programmlng language
llke C or LabvlLW lormula node
use Lhe Luler 8ackward meLhod:
D|screte I Contro||er
Conunuous l ConLroller:
We use Lhe Luler 8ackward meLhod:
We may seL:
1hls glves Lhe followlng dlscreLe l algorlLhm:
1hls algorlLhm can be easly lmplemenLed ln a
rogrammlng language
ulscreLe l ConLroller - LabvlLW
SLudenLs: lmplemenL a ulscreLe l ConLroller and make sure Lo LesL lL properly
Lxample of
lmplemenLauon
MaLhemaucal Model
of Lhe rocess
leedback node
1esL of ulscreLe l ConLroller ln LabvlLW
noLe! Make sure Lo compare
your l ConLroller wlLh Lhe bullL-
ln lu ConLroller!
C-based ConLrol SysLem -
LabvlLW Lxample (8eal process)
Subvl LhaL handles
Lhe l/C beLween
LabvlLW and Lhe
8eal rocess
Subvl:
Scallng: 1-3v
-> 20-30
degrees
Celslus
1s
1f
C-based ConLrol SysLem -
LabvlLW Lxample (PMl/Cul)
1esung your l ConLroller on Lhe Alr
PeaLer rocess
1est 1: Compare your l ConLroller wlLh one
of Lhe bullL-ln lu ConLrollers ln LabvlLW
1est 2: 1esL your l ConLroller when
changlng Lhe keference, Lo see lf you geL
good Lracklng (LhaL Lhe ouLpuL follows Lhe
reference)
1est 3: Make sure LhaL your l ConLroller can
handle changes ln Lhe D|sturbance (e.g.,
hold your hand ln fronL of Lhe Lube lnleL)
nans-euer na|vorsen, M.Sc.
1e|emark Un|vers|ty Co||ege
Iacu|ty of 1echno|ogy
Department of L|ectr|ca| Lng|neer|ng, Informanon 1echno|ogy and Cybernencs

L-ma||: hans.p.ha|vorsenQh|t.no
8|og: hup:]]home.h|t.no]~hansha]

36

Das könnte Ihnen auch gefallen