ELE620 Systemidentifikasjon, 2015. Innhold 3 Systemidentifikasjon

Transcription

ELE620 Systemidentifikasjon, 2015. Innhold 3 Systemidentifikasjon
Stavanger, 2. juli 2015
Det teknisknaturvitenskapelige fakultet
ELE620 Systemidentifikasjon, 2015.
Generell informasjon om faget er tilgjengelig fra fagets nettside,
og for øvinger brukes It’s learning.
Innhold
3 Systemidentifikasjon fra sprangrespons.
3
1
3.1
De simulerte data . . . . . . . . . . . . . . . . . . . . . . . . . .
2
3.2
Sprangrespons for førsteordens system . . . . . . . . . . . . . .
2
3.3
To førsteordens system i sekvens . . . . . . . . . . . . . . . . . .
4
3.4
Verifisering av modell . . . . . . . . . . . . . . . . . . . . . . . .
4
Systemidentifikasjon fra sprangrespons.
I denne oppgaven skal en, som i øving 1, identifisere et system ut fra inngang og utgangssignalene. Her har vi imidlertid oppgitt at systemet er et
førsteordenssystem, eller to førsteordenssystem i sekvens, og en liten forsinkelse. Simulink er brukt for å generere simuleringsdata, og skal også brukes for
å teste deres modell av systemet mot data.
Karl Skretting, Institutt for data- og elektroteknikk (IDE), Universitetet i Stavanger (UiS), 4036 Stavanger.
Sentralbord 51 83 10 00. Direkte 51 83 20 16. E-post: [email protected].
To Workspace
ELE620 systemidentifikasjon, øving 3
Simulerer sprang på en prosess.
ov3datas
Denne for å lage verifiseringsdata
Prosessen inkluderer støy!
Repeating
Sequence
y
u
Step
vifte
pådrag (gul)
og utgang (rosa)
Manual Switch
Simulert
prosess
Scope1
Figur 1: Simulinkmodellen ov3sim13.mdl som ble brukt for å generere data.
Dette er en modell av vifte-systemet på laboratoriet.
3.1
De simulerte data
Data som ligger i fila ov3datas.mat er generet med simulink modellen som
viser i figur 1. Data er simulert i 30 sekunder, samplingstid er 10 millisekund.
I prosessen legges det til litt prosesstøy og litt målestøy. Last inn data og lag
en figur i Matlab med inngangssignal u og utgangssignal y mellom 8 og 15
sekund.
3.2
Sprangrespons for førsteordens system
Anta at systemet kan modelleres med
h(s) =
K
e−τ s
Tr s + 1
(1)
1. Finn sprangresponsen for et generelt førsteordenssystem med transferfunksjon som over. Det vil si finn y(t), og gjerne også ẏ(t). Lag er figur
som plotter y(t).
2. Forklar hvordan en ut fra et plott av en sprangrespons for et førsteordenssystem kan finne K og Tr .
3. Forhåpentligvis er det en viss likhet mellom de to figurene du har lagt
hittil. Bruk figuren fra oppgave 3.1 og bestem K, Tr og τ ut fra det en
ser.
4. Gjør relevant forbehandling av data, så som translasjon (trekke fra en
passende verdi fra alle signalverdiene), filtrering (glatting) for å dempe
noe av målestøyen, og valg av et passende område. Lag så data som et
iddata objekt. Svar skal inneholde en kort begrunnelse for de valg du
gjør og Matlab-kode som brukes.
2
Step
vifte
ELE620 systemidentifikasjon, øving 3
Start for løsning...
To Workspace
ov3result
ustep
u
ov3inn
usim
From
Workspace
ysim
u
y
Modell prosess
ymod
pådrag (gul)
og utgang (rosa)
og simulert (blå)
Scope1
Figur 2: Simulinkmodellen ov3del2.mdl som kan brukes i besvarelsen.
5. Studer dokumentasjonen for Matlab-kommandoen pem (idproc/pem).
Bruk så denne for å estimere parametrene K, Tr og τ i en førsteordens
modell av prosessen med litt forsinkelse.
6. Lag en simulink modell av prosessen og kjør den med samme data som ble
brukt i simulering. Du kan ta utgangspunkt i modellen ov3del2.mdl som
viser i figur 2. Besvarelsen skal være en figur som viser en førsteordens
Simulink modell som representerer systemet.
Merk at for å få utgangssignalet på riktig nivå må en legge til en konstant på utgangen etter modellen (eller i slutten av modellen). Verdier
på konstanter som inngår kan være de en fant i spørsmål 5. Om en vil
kan en også prøve med verdiene en fant i spørsmål 3, dere kan da se hvor
mye avvikene i verdiene har å si for resultatet.
7. Plot (relevant del) av signalene som viser i skopet når systemet kjøres.
Plottet kan enten tas direkte fra Simulink eller resultatdata kan plottes
i Matlab Bruk verdier på konstanter fra svaret i spørsmål 5.
8. Plott frekvensresponsen for førsteordens modellen av systemet. Vis amplitudeforsterkning og faseforskyvning for frekveser mellom 0 og 2 Hz.
Bruke gjerne Matlab-funksjonen freqs eller bode i CST (som gir logaritmisk plott). Hvordan påvirker forsinkelsen frekvensresponsen? Hva er
knekkfrekvensen for modellen?
3
3.3
To førsteordens system i sekvens
Anta at systemet kan modelleres med
h(s) =
K
1
e−τ s
T1 s + 1 T2 s + 1
(2)
1. Bruk Matlab-kommandoen pem igjen for å estimere parametrene K,
T1 , T2 og τ i denne modellen av prosessen.
2. Prøv å forklare hvor mye bedre denne modellen treffer simuleringsdata,
du kan sammeligne Loss function og FPE for denne modellen og modellen i forrige oppgave.
3. Lag igjen en simulink modell av prosessen og kjør den med samme data
som ble brukt i simulering. Besvarelsen skal være en figur som viser
Simulink modellen for systemet.
4. Plot (relevant del) av signalene som viser i skopet når systemet kjøres.
Plottet kan enten tas direkte fra Simulink eller resultatdata kan plottes
i Matlab.
3.4
Verifisering av modell
Dere skal nå verifisere modellene dere har har funnet i del 3.2 og del 3.3 med
data fra fila ov3datav.mat.
1. Bruk modellen deres med ett førsteordenssystem og kjør dette i simulink
med inngangsdata som i ov3datav.mat. Sammenlign utgangssignalet fra
ov3datav.mat og fra deres modell. Svar bør være en figur som viser
utgangssignalene fra 9 til 21 sekunder.
2. Bruk modellen deres med to førsteordenssystem i sekvens og kjør dette i
simulink med inngangsdata som i ov3datav.mat. Sammenlign utgangssignalet fra ov3datav.mat og fra deres modell. Svar bør være en figur
som viser utgangssignalene fra 9 til 21 sekunder.
4