siec-l2
DESCRIPTION
SIeC-L2TRANSCRIPT
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 1 acse.pub.ro, 2014
Laborator 2 Identificare si validare experimentala [1]
Obiectiv laborator
In cadrul acestui laborator se vor reaminti elemente de baza privind identificarea numerica
a proceselor liniare si neliniare si anume : dimensionare semnal de excitatie, proceduri de
identificare experimentala, proceduri de validare a modelului obtinut.
Context
Identificarea este determinarea modelului unui sistem dinamic din date de intrare/iesire.
Cunoasterea modelului este necesara la proiectarea si implementarea unui sistem de
reglare performant.
Modelele de cunoastere bazate pe legile fizicii sunt in general prea complexe pentru
realizarea unui sistem de reglare. Din acest motiv s-au dezvoltat tehnici de identificare
directa a sistemelor dinamice (pentru control) din setul de date experimentale.
Avem doua tipuri de modele dinamice:
Modele neparametrice (ex: raspunsul in frecventa, raspunsul indicial);
Modele parametrice (ex: functii de transfer, ecuatii diferentiale sau cu diferente).
In Figura 2. 1 Procedeul clasic de identificare este prezentat un exemplu de identificare
printr-un model neparametric.
Figura 2. 1 Procedeul clasic de identificare
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 2 acse.pub.ro, 2014
Identificarea sistemelor este formata din 5 etape:
1. Achizitia de date de intrare/iesire printr-un experiment;
a. Determinare perioada de esantionare (Te) ;
b. Dimensionare Semnal de comanda SPAB (N, u0, u, [L], [d]) ;
c. Aplicare semnal SPAB si colectare semnal de iesire y ;
d. Prelucrari preliminare ale semnalului achizitionat .
2. Selectia modelului si estimarea complexitatii
a. Selectie model
i. Tipuri de modele
b. Estimarea complexitatii
3. Estimarea parametrilor modelului(identificarea propriu-zisa)
4. Validarea modelului identificat
5. Analiza modelului identificat
2.1. Experimentul de achizitie de date intrare/iesire
2.1.1. Alegere perioada de esantionare
Aceasta se alege in functie de constantele de timp caracteristice ale procesului. In cazul
unui proces necunoscut perioada se poate alege in urma stimularii procesului cu un semnal de tip
treapta.
Figura 2. 2 Alegere Te
Unde este timpul de crestere, iar N reprezinta numarul de esantioane care sa prinda regimul
tranzitoriu al procesului. N poate fi ales in intervalul [3...20].
O alta varianta ar fi ca N sa fie ales ca un divizor al timpului mort identificat in urma achizitionarii
raspunsului indicial al sistemului.
! Nu exista un algoritm unic de estimare a parametrilor care sa conduc ntotdeauna la un model valid. Identificarea sistemelor este o procedura iterativa !
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 3 acse.pub.ro, 2014
2.1.2. Dimensionare semnal de comanda SPAB
Trebuie ales un semnal de excitare cu un spectru al frecventelor bogat pentru a acoperi
banda de frecvente a procesului identificat dar cu amplitudine mica deoarece in practica
variatiile de amplitudine ale semnalului de intrare sunt constranse puternic.
Parametrii definitorii pentru un semnal SPAB :
N Dimensiune registru poate fi considerat identic cu cel
din sectiunea Alegere Perioada
Esantionare
L Lungime Secventa Semnal Perioada completa a semnalului
L= p(2N -1).
u0 Comanda SPAB nominala O valoare intre 0-100.
u Amplitudine semnal SPAB O valoare intre 0-100
p Parametru registru de
deplasare
p=1,2,3 sau 4.
Texpr Durata experiment Texpr=L Te.
2.1.2.1. Generare Secventa Pseudo-Aleatoare Binara (SPAB)
Utilizeaza un registru de shiftare.
Lungimea maxima: Lmax = 2N-1 (N numarul de celule ale registrului) se obtine numai
pentru anumite alegeri ale bitilor intre care se face functia sau exclusiv:
N L=2N-1 Biti adunati modulo 2
2 3 1 si 2
3 7 1 si 3
4 15 3 si 4
5 31 3 si 5
6 63 5 si 6
7 127 4 si 7
8 255 2, 3, 4 si 8
9 511 5 si 9
10 1023 7 si 10
Durata experimentului trebuie sa fie cel putin egala cu durata secventei pentru a acoperi
intregul spectru de frecventa generat de SPAB.
Pentru a nu avea o durata prea lunga se poate alege un divizor de frecvente:
fSPAB=fs/p (p=1,2,3,4).
Urmatorul tabel prezinta o comparatie intre modificarile aduse asupra lungimii maxime a
secventei de date I/O si asupra duratei maxime a unui puls (perioada in care semnalul
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 4 acse.pub.ro, 2014
SPAB sta in 1) de cresterea numarului de biti ai registrului de shiftare (coloana 1) si de
divizarea frecventei cu d (coloana 2).
NN+n fs fs/p
Lungimea maxima L 2nL L pL
Durata maxima a unui puls NTe (N+n)Te NTe pNTe Tabel 2. 1 Redimensionare SPAB
Observatii:
Se recomanda d 4.
Amplitudinea SPAB-ului trebuie sa fie mai mare decat cea a zgomotului.
Cresterea prea puternica a amplitudinii SPAB are efecte nedorite asupra
liniaritatii sistemului identificat (in general ne intereseaza identificarea unui
sistem liniar in jurul unui punct de functionare).
Figura 2. 3 SPAB, p=1, spectru complet
Figura 2. 4 SPAB, p=2, Spectru limitat superior
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 5 acse.pub.ro, 2014
2.1.3. Aplicare semnal SPAB si achizitie semnal de identificare
Trebuie asigurat ca etapele precedente au fost realizate corect:
- Alegerea corecta a perioadei de esantionare
- Dimensionarea corecta a SPAB ( lungimea semnalului L convenabila, acopera intreg
domeniul de frecvente, timpul de experimentare nu e prea lung).
- Semnalul y recuperat se supune unor prelucrari suplimentare (a se vedea sectiunea
urmatoare).
2.1.4. Prelucrari primare a semnalului achizitionat
Prelucrari asupra datelor sunt necesare precum eliminarea componentelor
continue, a offset-urilor sau a unor caracteristici liniare. In acest fel modelele liniare pot
fi estimate mult mai corect. Modelele de estimare vor descrie relatiile dintre schimbarile
in iesire si schimbarile in intrare.
Pot exista proceduri/functii care sa identifice automat ce prelucrari ar trebui
aplicate semnalelor achizitionate.
In cazul caracteristicilor liniare ar fi de remarcat cazul semnalelor de tip integrator.
Alte prelucrari posibile:
1. Tratarea cazurilor in care apar date lipsa sau eronate (din cauza unor
defecte de senzor). In acest caz acele secvente se pot scoate din setul de
date.
2. Filtrarea perturbatiilor cu frecvente in afara intervalului de interes . O
solutie poate fi chiar si reesantionarea/extrapolarea datelor.
3. Combinarea datelor de identificare din mai multe experimente. De
exemplu se face o medie a mai multor experimente.
4. Rescalarea datelor (daca este cazul).
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 6 acse.pub.ro, 2014
2.2 Selectia modelului si estimarea complexitatii
2.2.1 Selectia modelului
A. O prima alegere este data de cata informatie dispunem despre proces :
In cazul identificarii Black Box : nu se cunosc aprioric relatii fizice sau
parametrice intre intrare si iesire. Prin urmare alegerea unui model de identificare
poate fi extrem de variata.
In cazul identificarii Grey Box : pe baza unei explorari anterioare se
cunoaste modelul sau dinamicile caracteristice ale procesului. In acest caz se
cunoaste ce tip de model este potrivit dar nu se cunosc parametrii. Identificarea se
va axa doar pe parametrii modelului. Se poate vorbi aici de ecuatii diferentiale,
ecuatii cu diferente de tip liniar si neliniar, modele pe stare sau functii de transfer.
B. In cazul Black Box :
Trebuie identificat in prima etapa daca avem de a face cu un model liniar
sau neliniar. Pentru acest lucru fie se analizeaza cu algoritmi specifici setul de
date experimentale fie se stimuleaza sistemul cu semnale tip treapta pozitiva si
negativa.
Daca se observa ca amplificarea statica a procesului (
) are
valori diferite pentru amplitudini diferite ale semnalului treapta, sau daca timpii de
crestere sunt diferiti (in cazul unor trepte diferite atat pozitive si negative) atunci
avem de a face cu un model neliniar.
! Daca se cunoaste care este tipul de neliniaritate acesta in anumite situatii
poate fi eliminat. De exemplu daca iesirea depinde proportional cu patratul intrarii
atunci se realizeaza o transformare a datelor a.i. dependenta intre intrare-iesire sa
fie liniara !
! Este recomandat tot timpul sa se inceapa identificarea cu modelele cele
mai simple. Prin urmare se prefera utilizarea de modele liniare decat neliniare.
u BLACK BOX y u GREY BOX y
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 7 acse.pub.ro, 2014
C. Tipuri de modele utilizabile in identificare
Modele Liniare
(LTI)
Model Stare
MATLAB
Continuu :
Discret :
Model
Polinomial
MATLAB
WinPim
numarul de intrari numar esantioane intarzieri pe canalul de intrare i dimensiune polinom A, B, C, D, F Componenta A (autoregresiva) este comuna modelului si
zgomotului ; Componentele B si F sunt componentele
modelului masurat ; C si D componente asociate
modelului de zgomot ;
Subclase :
ARX : (Structura 1 in WinPim)
OE : (Structura 2 in WinPim)
ARMAX : (Structura 3 in WinPim)
ARIMAX : (Structura 4 in WinPim)
cu BJ - Box-Jenkins
Model
Functie de
Transfer
MATLAB
Atat in discret cat si in continuu. Nu considera model
pentru zgomot ;
Model de
Proces
MATLAB
Atat in discret cat si in continuu. Se considera si o functie
de transfer atasata zgomotului ;
Modele gri
MATLAB
Modelde de stare, parametrizate ;
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 8 acse.pub.ro, 2014
Modele Neliniare
(NLTI)
Nonlinear
ARX
MATLAB
- Bazat pe o extensie a modelului ARX liniar
Hammerstein-
Wiener
MATLAB
Descriu sisteme dinamice folosind una sau dou blocuri neliniare statice n serie cu un bloc liniar. Blocul liniar
este o funcie de transfer discret i reprezint componenta dinamic a modelului. Se pot utiliza pentru a capta efectele neliniare fizice din
senzori i actuatori care afecteaz intrarea i ieirea dintr-un sistem liniar, cum ar fi zonele moarte i de saturaie.
Model Gri
neliniar
MATLAB
- Bazat pe modelul de stare neliniar
2.2.2 Estimarea complexitatii
In functie de clasa de modele aleasa exista proceduri specifice pentru estimarea
complexitatii modelului. De asemenea se estimeaza si timpul mort.
Estimarea se poate face pe baza datelor de intrare iesire achizitionate sau se pot
face cateva determinari suplimentare :
- Raspunsul indicial la treapta (se poate estima foarte bine timpul mort) - Raspunsul impulsional acesta va da informatii despre filtrul sistemlului.
2.2.2.1. In cazul Sistemelor pe stare :
- Se pune problema estimarii dimensiunii vectorului x. In Matlab se poate utiliza comanda :
>> n4sid(data,nx), unde nx=1 :1 :3 -> diferite valori, si se va returna
ordinul optim ;
>> data reprezinta un obiect de identificare intrare/iesire (creat cu functia
iddata).
2.2.2.2. In cazul Modelelor Polinomiale :
Estimarea consta in a determina nA, nB si d (timpul mort).
Indicatie: se poate face o prima identificare cu d = 0. Ulterior acesta este crescut, d = di,
daca 1 0.15 , 1,
ii d ib b i d . Apoi se reidentifica sistemul !
Pentru a determina grdele maxime ale polinoamelor A si B se porneste de la valori mici
apoi sunt crescute alternativ gr(A) si gr(B) si se calculeaza varianta erorii de predictie:
*
2 2
*1
10
N
i
R E t tN
Daca Rnou(0) 0.8 Rvechi(0), nu se recomanda cresterea gradului polinomului. Ordinul sistemului discret este n = max(nA, nB+d).
In WinPIM se poate introduce valoarea minima a timpului mort (daca aceasta este
cunoscuta, de exemplu din raspunsul indicial al sistemului) si ordinul maxim al
sistemului. Sunt disponibile 4 metode de estimare a complexitatii.
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 9 acse.pub.ro, 2014
Se recomanda folosirea metodei 3, Instrumental Variable with Delayed Inputs.
Metoda 1 (Least Squares - CMMP) este sensibila la perturbatii si poate da estimatii
gresite in cazul proceselor afectate de zgomote.
In MATLAB se pot utiliza succesiv functiile : struc, arxstruc si selstruc, iar
pentru intarziere : delayest.
2.2.2.3.In cazul sistemelor cu functii de transfer si a sistemelor de proces se utilizeaza in
MATLAB functiile : tfest, respectiv procest.
2.3. Identificarea Modelului
! Dupa ce s-a ales structura si ordinele de complexitate respectiv valoarea intarzierii
se merge la procedura de identificare.
In cazul modelelor polinomiale identificarea se face dupa principiul din figura urmatoare :
Figura 2. 5 Princiupiu identificare recursiva
. .
Vectorul Vectorul Matrice Vectorul Eroare
parametrilor parametrilor de adaptare marimilor de predictie
nou estimati est la pasul prec parametrica masurate scalar
1 1 1 1
1 11
1 1 1
( 1) 1 1
T
T
T
k k F k k k
F k k k F kF k F k
k F k k
k y k k k
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 10 acse.pub.ro, 2014
Fiecare model ales are metode proprii de identificare.
Nu exista o structura si o metoda de identificare care sa functioneze in toate cazurile. Mai
multe trebuie sa fie incercate pentru a o gasi pe cea corecta!
Observatii:
Structura 3 -ARMAX corespunde in practica la putin sub doua treimi
din cazuri, structura 2- OE la aproximativ o treime iar ce ramane
reprezinta alte structuri.
In anexa sunt atasate metodele de identificare folosite in WinPIM.
In MATLAB sunt doi algoritmi de baza folositi: ARX (care foloseste metoda estimatiilor
cu cele mai mici patrate si factorizarea QR) si IV4 (metoda variabilelor instrumentale).
Recomandarea este ca ARX sa fie folosit in cazul zgomotelor albe, iar in cazul
zgomotelor colorate1 metoda IV4.
! De asemenea a nu se uita ca in metodele recursive de identificare o alta problema
centrala este data de conditiile initiale. Exista metode care ofera estimatii pentru conditiile
initiale.
2.4. Metode de validare
2.4.1. Validarea modelelor de tip ARMAX si BJ (WinPim structurile 1,3,4)
Principiu: daca structura aleasa este cea corecta iar gradele nA, nB, nC si d sunt corecte,
atunci eroare de predictie tinde asimptotic spre un zgomot alb:
lim 0
1,2,3,...; 1, 2, 3,...
tE t t i
i
Validarea se face pe un nou set de date:
1. Se calculeaza y t
2. Se calculeaza t
3. Testul de albire (necorelare)
Testul de albire:
Fie t secventa centrata a erorilor de predictie. Se calculeaza:
*
*
2
*1
*1
010 ; 0 1
0
1;
0
N
t
N
t
RR t RN
N R
R iR i t t i RN i
N R
1 Un zgomot colorat ar putea fi definit si ca un zgomot alb filtrat. De obicei culoarea unui zgomot da
informatii asupra aspectului spectrului sau. In cazul zgomotului alb spectrul sau este plat.
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 11 acse.pub.ro, 2014
Testul ideal de validare ar fi RN(0) = 1 si RN(i) = 0, pt i 1. In realitate nu se indeplineste.
Testul practic de validare este RN(0) = 1 si *
2.17RN i
N pt i 1.
Observatie: un criteriu indeplinit prea bine sugereaza faptul ca se pot face simplificari in modelul de identificare.
2.4.2. Validarea modelelor identificate de tip OE (WinPim structura 2)
Principiu: daca perturbatia si intrarea sunt independente (E{w(t)u(t)}=0), structura este
corect aleasa, metoda buna iar nA, nB, d sunt corect determinate atunci iesirea predictata
cu un model de tip OE:
1 1 ( ) ( )dA q y k q B q u k este asimptotic necorelata cu eroarea de predictie:
*
*1
1 0, 1,2,3,...
N
t
E t y t i t y t i iN
Se calculeaza:
*
* *
*1
1/2
2 2
* *1 1
max
max
1 ;
1 1
0,1,2,...,
max( , )
N
t
N N
t t
A B
R i t y t iN
R iRN i
t y tN N
i i
i n n d
Criteriul de validare este acelasi ca la testul de albire a erorii de predictie.
2.5. Analiza modelului validat
Dupa validare modelul poate fi analizat suplimentar:
- se studiaza harta poli-zerouri si se face o analiza a stabilitatii modelului
obtinut;
- se studiaza raspunsul sistemului la diferite tipuri de intrari
- se studiaza functiile de sensibilitate ale sistemului in prezenta diferitelor tipuri
de perturbatii;
Catre meniu
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 12 acse.pub.ro, 2014
Aplicatii
1. De ce pentru un proces de identificare numerica este important un semnal de intrare de tip SPAB ?
2. Ce informatii utile pentru identificare se pot obtine pe baza raspunsului indicial ? 3. Generare semnal SPAB : Se considera registrul de shiftare al SPAB cu n biti, si cu un divizor p=1. Se considera
secventele de initializare urmatoare :
Se dau :
n =
d =
Se cere :
a) Sa se determine primele 15 valori ale semnalului SPAB. b) Sa se reprezinte grafic cum arata comanda de tip SPAB, tinand cont ca
amplitudinea SPAB este u = [%], iar valoarea comenzii initiale u0= [%]. (h perioada de esantionare)
Figura 3. Reprezentarea unei semnal tip SPAB
c) Cum arata semnalul daca p=2 ? d) Pentru ambele cazuri plotati spectrul semnalului generat. (In Matlab folositi
functia periodogram).
t
u(t) 100
80
60
40
20
0
0 h 2h 3h 4h 5h 6h 7h 8h 9h 10h 11h 12h 13h 14h 15h 16h
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 13 acse.pub.ro, 2014
4. Identificare model.
Folosind programul WinPIM identificati modelul unui proces necunoscut. Pe acest proces
s-a efectuat un experiment de identificare prin aplicarea unui semnal SPAB, setul de date
intrare-iesire fiind salvat in fisierul aero.c . Perioada de esantionare folosita este de 5
secunde (trebuie incarcata la meniul Sampling period). a. Folosind Data Files Management incarcati fisierul de date de la locatia
specificata mai sus. Aveti grija sa eliminati componenta continua (Filter -> Add
-> Removing DC component apoi Filter->Validate si in final salvati cu numele
aero.dat). b. Estimati complexitatea cu Estimation of Complexity! Cat este N, nA, nB si
timpul mort?
c. Pasul urmator consta in identificarea parametrica. Incercati diferite structuri pentru gasirea unui model valid. Validarea se face la Model Validation. Ce structura a functionat pentru gasirea unui model valid? Ce tip de validare ati
folosit? Care sunt ordinele acestui model?
d. Care este functia de transfer gasita ? Trasati graficul raspunsului in timp al acestui model si cel al raspunsului in frecventa (Time/Frequency Domain Analysis->Compute). Care sunt amplificarea de regim stationar si timpul de crestere al procesului? Este sistemul stabil ?
Bibliografie
1. Digital Control Systems, Ioan D. Landau, G. Zito, Springer, 2006
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 14 acse.pub.ro, 2014
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 15 acse.pub.ro, 2014
Catre meniu
-
Sisteme
Ierarhizate de Conducere An IV, dir. B
Department of Automatic Control and Systems Engineering Politehnica University of Bucharest | Faculty of Automatic Control and Computers
Splaiul Independentei 313, Sector 6, Bucharest, 060042, ROMANIA pg. 16 acse.pub.ro, 2014
Catre meniu
MeniuExperimentAchizitieAlegerePerEsantionareDimensionareSPABOLE_LINK4AplicareSemnalSPABConditonareSemnalSelectieModelSelectieModelSectionTipuriModeleEstimareComplexitateIdentificareModelMetodeValidareAnalizaModelOLE_LINK5