m - Katedra ASR FEI STU
m - Katedra ASR FEI STU
m - Katedra ASR FEI STU
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Ústav stav riadenia a priemyselnej informatiky<br />
<strong>FEI</strong> <strong>STU</strong> Bratislava<br />
Riadenie iadenie neline nelineárnych<br />
rnych dynamických<br />
dynamick ch<br />
systémov syst mov umel umelými<br />
ými neurónovými<br />
neur novými<br />
sieťami sie ami<br />
Ing. Slavomír Slavom r KAJAN, KAJAN,<br />
PhD.
Základné štruktúry neurónových regulátorov<br />
Inverzné Inverzn riadenie (General ( General learning) learning<br />
Priame inverzné inverzn riadenie s učen u ením m (Direct ( irect Inverse nverse Control ontrol) )<br />
(Specialized Specialized learning) learning<br />
Robustné Robustn priame inverzné inverzn riadenie<br />
Internal nternal model odel control ontrol (IMC)<br />
Riadenie s referenčným referen ným modelom (Model ( odel Reference eference<br />
Control ontrol)<br />
Adaptívny Adapt vny regulátor regul tor s adaptívnym adapt vnym neurónovým neur novým modelom<br />
Prediktívny Predikt vny neurónový neur nový regulátor regul tor<br />
Prediktívny Predikt vny regulátor regul tor realizovaný neurónovou neur novou sieťou sie ou<br />
Samonastavujúci<br />
Samonastavuj ci sa prediktívny predikt vny neurónový neur nový regulátor regul tor
Základné štruktúry neurónových regulátorov<br />
Inverzné Inverzn riadenie (General ( General learning) learning :<br />
r Inverzný model u y<br />
Najjednoduchší riadiaci obvod<br />
Použitie inverzného modelu procesu<br />
(pri trénovaní NS je vstupom y a<br />
výstupom u)<br />
Zapojenie nie je vhodné pre systémy s<br />
integračným charakterom a nerieši<br />
prípadnú poruchu<br />
Zapojenie nepotláča chybu<br />
natrénovania modelu<br />
+<br />
-<br />
Proces<br />
u y<br />
Proces<br />
Inverzný model<br />
Schéma trénovania NS
Základné štruktúry neurónových regulátorov<br />
Priame inverzné inverzn riadenie s učen u ením m (DIC)<br />
(Špecializovan<br />
pecializované učenie enie - specialized learning) learning :<br />
priebežná adaptácia neurónovej siete na základe regulačnej<br />
odchýlky prípadne jej derivácií.<br />
Problémom je určenie pravidiel pre adaptáciu neurónovej siete, ak<br />
nie je známy matematický model procesu.<br />
Riadiaci algoritmus prebieha vždy v dvoch krokoch. V prvom<br />
kroku je pomocou neurónovej siete pri známych vstupoch určená<br />
veľkosť akčného zásahu a v druhom, spätnom kroku, sú<br />
optimalizované synaptické váhy neurónovej siete pri minimalizácii<br />
účelovej funkcie.
Riadenie dynamických systémov s UNS<br />
Priame Priame<br />
inverzné inverzn neurónov neur nové riadenie<br />
7 - 5
Riadenie dynamických systémov s UNS<br />
Robustné Robustn priame priame<br />
inverzné inverzn neurónov neur nové riadenie<br />
B je vstup do prahového neurónu<br />
β je adaptačné zosilnenie<br />
7 - 6
Základné štruktúry neurónových regulátorov<br />
Internal model control (IMC) :<br />
r Inverzný model u y<br />
+<br />
-<br />
Najčastejšie používané riadiace zapojenie s NS<br />
Proces<br />
Neurónový model<br />
Použitie inverzného modelu procesu (pri trénovaní NS je vstupom y a výstupom<br />
u)<br />
Zapojenie potláča chybu natrénovania modelu (zvyšuje robustnosť riadenia)<br />
Zapojenie sa dá použiť iba pre systémy stabilné v otvorenej slučke.<br />
- +<br />
V zápornej spätnej väzba môže byť zapojený filter na utlmenie skokových zmien
Základné štruktúry neurónových regulátorov<br />
Riadenie s referenčným referen ným modelom (MRC) :<br />
Referenčný<br />
model<br />
r u y<br />
Neurónový<br />
Proces<br />
regulátor<br />
Adaptačný<br />
mechanizmus<br />
Úlohou riadiaceho obvodu je aby výstup procesu sledoval výstup referenčného<br />
modelu<br />
Odchýlka medzi výstupmi procesu a modelu je použitá pre učenie regulátora<br />
Zapojenie je podobné ako inverné priame riadenie, ale lepšia robustnosť a on-line<br />
trénovanie regulátora<br />
+<br />
yr<br />
-<br />
7 - 8
Základné štruktúry neurónových regulátorov<br />
Samonastavujúci<br />
Samonastavuj ci regulátor regul tor s adaptívnym adapt vnym neurónovým neur novým modelom: modelom<br />
Využíva regulačnú odchýlku (a jej<br />
deriváciu) počítanú od výstupu<br />
neurónového modelu na<br />
optimalizáciu parametrov<br />
regulátora (priebežná adaptácia<br />
parametrov regulátora)<br />
V Zapojení je zapnutá on-line<br />
adaptácia neurónového modelu<br />
(adaptívny neurónový model)<br />
Regulátor v všeobecnom tvare<br />
u(k)=f(e(k),..,e(k-n),u(k-1),…,u(k-n))<br />
alebo v tvare<br />
u(k)=f(e(k),..,e(k-n))<br />
alebo PID tvar u(k)=<br />
Pe(k)+T*I*sum(e(k))+D(e(k)-e(k-1))/T<br />
Kriteriálna funkcia<br />
1<br />
′ =<br />
t<br />
2<br />
[ ( ) ( ) ] 2<br />
r t + 1 − y + 1<br />
J R<br />
m
Prediktívne algoritmy riadenia na báze UNS<br />
Model Predictive Control (MPC) - názov<br />
skupiny moderných metód riadenia<br />
• Explicitná predikcia chovania sa procesu v<br />
budúcnosti<br />
( y(<br />
k −1),....,<br />
y(<br />
k −n<br />
), u(<br />
k −1−d),...,<br />
u(<br />
k −n<br />
−d)<br />
+ v(<br />
) )<br />
ˆ( k)<br />
fˆ<br />
k<br />
y = y<br />
u−k<br />
• Výpočet postupnosti hodnôt riadiaceho zásahu<br />
zabezpečujúceho sledovanie referenčnej<br />
premennej výstupnou regulovanou veličinou<br />
7 - 10
Typické vlastnosti MPC prístupov :<br />
• využívajú model procesu, a to buď parametrický<br />
alebo neparametrický (impulzná alebo prechodová<br />
funkcia)<br />
• umožňujú zohľadniť dopravné oneskorenie,<br />
inverznú odozvu a pomerne zložitú dynamiku<br />
procesov<br />
• umožňujú kompenzovať vplyv merateľných<br />
a nemerateľných porúch (dopredné formy riadenia)<br />
• sú formulované ako optimalizačný problém<br />
účelovej funkcie pri zohľadnení ohraničujúcich<br />
podmienok (fyzikálne ohraničenia na vstupné a<br />
výstupné premenné).<br />
7 - 11
7 - 12
Štruktúra priameho prediktívneho neurónového regulátora<br />
Využíva priamy neurónový model na predikciu budúcich<br />
výstupov z procesu<br />
1. Riadiaci zásah je v každom kroku regulačného pochodu<br />
optimalizovaný tak, aby predikovaná hodnota výstupu y m<br />
dosiahla žiadanú hodnotu r.<br />
2. Pri vačšine zapojení je aktivovaná priebežná adaptácia<br />
neurónovej siete na základe odchýlky výstupu modelu a<br />
procesu.<br />
( y(<br />
k),<br />
K,<br />
y(<br />
k −n+<br />
1),<br />
u(<br />
k),<br />
u(<br />
k ) )<br />
y( k + 1)<br />
= g<br />
K −m<br />
7 - 13
Formulácia úlohy prediktívného riadenia<br />
1. Riadený proces je reprezentovaný nelineárnou diferenčnou rovnicou<br />
kde<br />
( y(<br />
k −1),....,<br />
y(<br />
k −n<br />
), u(<br />
k −1−<br />
d),...,<br />
u(<br />
k −n<br />
−d)<br />
+ v(<br />
) )<br />
y = y<br />
u−k<br />
( k)<br />
f<br />
k<br />
y ( k )<br />
=<br />
⎡<br />
⎢<br />
⎢<br />
⎢<br />
⎢<br />
⎢<br />
⎢<br />
⎣<br />
y<br />
y<br />
1<br />
p<br />
( k ) ⎤<br />
.<br />
⎥<br />
⎥<br />
. ⎥ ,<br />
⎥<br />
. ⎥<br />
( k ) ⎥<br />
⎦<br />
u ( k )<br />
⎡ u<br />
⎢<br />
⎢<br />
= ⎢<br />
⎢<br />
⎢<br />
⎢<br />
⎣u<br />
1<br />
m<br />
( k ) ⎤<br />
.<br />
⎥<br />
⎥<br />
. ⎥ ,<br />
⎥<br />
. ⎥<br />
( k ) ⎥<br />
⎦<br />
v ( k )<br />
⎡ v<br />
⎢<br />
⎢<br />
= ⎢<br />
⎢<br />
⎢<br />
⎢<br />
⎣ v<br />
Výstupy Vstupy Poruchy<br />
1<br />
p<br />
( k ) ⎤<br />
.<br />
⎥<br />
⎥<br />
. ⎥<br />
⎥<br />
. ⎥<br />
( k ) ⎥<br />
⎦<br />
p –počet výstupov, n y –počet minulých hodnôt výstupov<br />
m –počet vstupov, n u –počet minulých hodnôt vstupov<br />
f – je nelineárna funkcia<br />
( y(<br />
k −1),....,<br />
y(<br />
k − n ), u(<br />
k −1−<br />
d),...,<br />
u(<br />
k − n − d)<br />
+ v(<br />
) )<br />
ˆ( k)<br />
fˆ<br />
k<br />
y = y<br />
u−k<br />
7 - 14
Formulácia úlohy prediktívného riadenia<br />
2. Účelová funkcia (riadiace kritérium)<br />
Všeobecný tvar kvadratickej účelovej funkcie<br />
V<br />
V<br />
k<br />
=<br />
P<br />
∑<br />
i=<br />
1<br />
x<br />
T<br />
T<br />
T<br />
( k + i)<br />
Qx(<br />
k + i)<br />
+ u(<br />
k + i)<br />
Ru(<br />
k + i)<br />
+ ∆u(<br />
k + i)<br />
S∆u(<br />
k + i)<br />
P<br />
2<br />
( P , M ) = [ yˆ<br />
( k + i)<br />
− r ( k + i)<br />
] + ρ () i [ ∆u<br />
( k + i)<br />
]<br />
∑<br />
i = N<br />
M −1<br />
∑<br />
i=<br />
0<br />
[ ]<br />
Tvar kvadratickej účelovej funkcie pre vstupno/výstupný opis procesu s<br />
poznaním predikcie žiadanej (referenčnej) premennej r(k+i)<br />
Q, R, S sú kladne definitné váhové matice pre stavy procesu x,<br />
riadiaceho signálu u a jednotlivé zmeny riadiaceho signálu ∆u<br />
N – dolná hranica predikčného horizontu, P – horná hranica<br />
predikčného horizontu, M – holná hranica riadiaceho horizontu,<br />
ρ(i) – váhový faktor jednotlivých zmien riadiaceho signálu<br />
M<br />
∑<br />
i = 1<br />
2<br />
7 - 15
Základné štruktúry neurónových regulátorov<br />
Prediktívny Predikt vny neurónový neur nový regulátor regul tor:<br />
r u y<br />
Optimalizácia<br />
u’<br />
Využíva priamy neurónový model<br />
Na základe predikcie výstupu procesu z NS ym’ je hľadaný akčný<br />
zásah u’ optimalizáciou stanoveného kritéria<br />
V Zapojení je zapnutá on-line adaptácia neurónového modelu<br />
Nekompenzuje sa chyba modelu<br />
Proces<br />
Neurónový model<br />
y m’
Základné štruktúry neurónových regulátorov<br />
Prediktívny Predikt vny regulátor regul tor realizovaný neurónovou neur novou sieťou sie ou:<br />
r Neur. regulátor<br />
u y<br />
Optimalizácia<br />
u’<br />
Proces<br />
Neurónový model<br />
Využíva priamy neurónový model na nastavenie parametrov<br />
neurónového regulátora (off-line)<br />
Na základe predikcie výstupu procesu z NS ym’ a predpokladaného<br />
akčného zásahu u’ sú hľadané parametre regulátora optimalizáciou<br />
stanoveného kritéria<br />
V Zapojení je zapnutá on-line adaptácia neurónového modelu<br />
y m’
Základné štruktúry neurónových regulátorov<br />
Samonastavujúci<br />
Samonastavuj ci sa prediktívny predikt vny neurónový neur nový regulátor regul tor:<br />
Využíva nepriamy neurónový<br />
model na optimalizáciu akčného<br />
zásahu u<br />
Na základe predikcie výstupu<br />
procesu z NS ym’ a jej derivácie<br />
dym’/ du’ a predpokladaného<br />
akčného zásahu u’ sú hľadaný<br />
akčný zásah u optimalizáciou<br />
stanoveného kritéria<br />
V Zapojení je zapnutá on-line<br />
adaptácia neurónového modelu<br />
(adaptívny neurónový model)<br />
Kriteriálna funkcia<br />
1<br />
1<br />
' = α<br />
k +<br />
2<br />
2<br />
( ( ) ( ) ) [ ( ) ( ) ] 2<br />
2<br />
u k − u k −1<br />
+ r k + 1 − y 1<br />
J R<br />
M<br />
u(<br />
k)<br />
Nové<br />
∂J<br />
= u(<br />
k)<br />
Staré − λ<br />
∂u(<br />
k)<br />
r<br />
Staré<br />
∂ r '<br />
= α<br />
∂u(<br />
k )<br />
r u y<br />
Optimalizácia<br />
u’<br />
y m’ , dym’/du’<br />
Proces<br />
Adaptácia<br />
modelu<br />
Neurónový model<br />
-<br />
y m<br />
+<br />
( k + 1)<br />
⎤<br />
⎥⎦<br />
⎡ ∂y<br />
⋅ ⎢−<br />
⎣ ∂u(<br />
k )<br />
J M<br />
( u(<br />
k ) − u(<br />
k − 1)<br />
) + [ r(<br />
k + 1)<br />
− y M ( k + 1)<br />
]
Čo je predikcia z neurónového modelu?<br />
Máme me dynamický neurónový neur nový model NNARX<br />
ym(k)=f(y(k-1),...,y(k<br />
ym(k)=f(y(k 1),...,y(k-n),u(k n),u(k-1),...,u( 1),...,u(k-m)) ))<br />
Chceme predikovať predikova výstup procesu y s horizontom<br />
predikcie Np, Np,<br />
tj. tj.<br />
hodnotu y(k+Np y( k+Np)<br />
Potom predikcia výstupu y(k+ y( k+1) 1) sa vypočíta vypo ta<br />
ym(k+ ym k+1)=f(ym(k), 1)=f(ym(k), y(k-1),...,y(k<br />
y(k 1),...,y(k-n-1),u(k),...,u(k<br />
1),u(k),...,u(k-m-1)) 1))<br />
Predikcia výstupu y(k+ y( k+2) 2) sa vypočíta vypo ta<br />
ym(k+ ym k+2)=f(ym( 2)=f(ym(k+ k+1),ym(k), 1),ym(k), y(k-1),...,y(k<br />
y(k 1),...,y(k-n-2), 2),<br />
u(k+ u( k+1),...,u(k 1),...,u(k-m-2)) 2))<br />
7 - 19
Predpokladajme neurónový model s 3 minulými vstupmi u a y<br />
v tvare ym(k)=f(y(k-1), y(k-2),y(k-3),u(k-1), u(k-2),u(k-3))<br />
p=0,1,...,Np je počet vzoriek pri predikcii<br />
ym(k+Np-1)<br />
ym(k+Np-2)<br />
ym(k+Np-3)<br />
u(k +Np-1)<br />
u(k +Np-2)<br />
u(k +Np-3)<br />
Np ...<br />
6-3<br />
ym(k)<br />
y(k-1)<br />
y(k-2)<br />
u(k)<br />
u(k-1)<br />
u(k-2)<br />
1<br />
y(k-1)<br />
y(k-2)<br />
y(k-3)<br />
u(k-1)<br />
u(k-2)<br />
u(k-3)<br />
0<br />
NS<br />
model<br />
ym(k+Np)<br />
Np ...<br />
ym(k+1)<br />
Číslo vzorky vstupy (predikované) výstupy<br />
1<br />
ym(k)<br />
0<br />
7 - 20
% function [ypred,yproces]=prediktnn1(structnet,nu,ny,Np,datau,datay,ptype)<br />
maxindx=max([nu ny])+1; pocetvzoriek=length(datay)-maxindx-Np+1;<br />
ypred=zeros(pocetvzoriek,Np); yproces=zeros(pocetvzoriek,Np);<br />
vstupnn=zeros(nu+ny,pocetvzoriek);<br />
for indxNp=1:Np, % cyklus pre predikciu, Np – horizont predikcie<br />
if indxNp==1<br />
for k=1:nu,<br />
vstupnn(k,:)=datau(maxindx-k:end-k-Np);<br />
end<br />
else<br />
vstupnn(2:nu,:)=vstupnn(1:nu-1,:); % posuv vzoriek<br />
vstupnn(1,:)=datau(maxindx+indxNp-2:end-Np+indxNp-2); % zápis nových<br />
end<br />
if indxNp==1<br />
for k=1:ny,<br />
vstupnn(nu+k,:)=datay(maxindx-k:end-k-Np);<br />
end<br />
else<br />
vstupnn(nu+2:nu+ny,:)=vstupnn(nu+1:nu+ny-1,:); % posuv vzoriek<br />
vstupnn(nu+1,:)=ypred(:,indxNp-1)'; % zápis nových z výstupu NS<br />
end<br />
yproces(:,indxNp)=datay(maxindx+indxNp-1:end-Np+indxNp-1)';<br />
ypred(:,indxNp)=sim(structnet,vstupnn)'; % výpočet výstupu NS<br />
end<br />
7 - 21
% Demo na predikciu z NS modelu pre lin. system<br />
load datapred1 % nacitanie NS struktúry a meraných dát<br />
Npredikcie=20; % horizont predikcie<br />
% výpočet predikcie - pozri funkciu prediktnn1<br />
[ypred1,yproces1]=prediktnn1(net,3,3,Npredikcie,utest,ytest,0);<br />
% vypocet odchylky<br />
SSE=sum((ypred1(:,Npredikcie)-yproces1(:,Npredikcie)).^2)<br />
MSE=SSE/size(ypred1,1)<br />
figure, plot([yproces(:,Np) ypred(:,Np)])<br />
xlabel('vzorky'); ylabel('y');<br />
title('Predikcia z neuronoveho modelu')<br />
legend('proces','predikcia')<br />
7 - 22
Aplikácie a overenie inteligentných metód<br />
automatického riadenia<br />
Hydraulické Hydraulick systémy syst my<br />
Biotechnológie<br />
Biotechnol gie<br />
Polymerizácia<br />
Polymeriz cia<br />
Plynárenstvo<br />
Plyn renstvo<br />
Energetika<br />
7 - 23
y<br />
4<br />
3.5<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0.5<br />
Výsledky predikcie z NS pre SISO systém<br />
Neuronovy model<br />
proces<br />
NS model<br />
0<br />
0 200 400 600<br />
vzorky<br />
800 1000 1200<br />
y<br />
4<br />
3.5<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0.5<br />
Predikcia o 20 vzoriek<br />
Predikcia z neuronoveho modelu<br />
proces<br />
predikcia<br />
0<br />
0 200 400 600<br />
vzorky<br />
800 1000 1200<br />
SSE = 3.7026e-004 MSE = 3.1431e-007<br />
7 - 24
Výsledky modelovania MIMO systému (3x2) pomocou NS<br />
y<br />
1.8<br />
1.6<br />
1.4<br />
1.2<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
Neuronovy model<br />
proces<br />
NS model<br />
0<br />
0 500 1000 1500 2000<br />
vz ork y<br />
2500 3000 3500 4000<br />
SSE1=0.3652e-5<br />
SSE2=0.3542e-5<br />
Systém 3 vstupy a 2-výstupy, pre model použité 3-minulé hodnoty,<br />
1 skrytá vrstva s 15 neurónmi<br />
7 - 25
y<br />
Výsledky predikcie MIMO systému (3x2) pomocou NS<br />
1.8<br />
1.6<br />
1.4<br />
1.2<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
Predikcia z neuronoveho modelu<br />
proces<br />
predikcia<br />
0<br />
0 500 1000 1500 2000<br />
vzorky<br />
2500 3000 3500 4000<br />
SSE1=0.1066e-3<br />
SSE2=0.1215e-3<br />
Predikcia o 10 vzoriek<br />
SSE1=0.0629<br />
SSE2=0.7476<br />
7 - 26
Priame inverzné riadenie lin. systému<br />
- Lineárny systém 2. rádu s prenosovou funkciou<br />
- Vytvorenie neurónového a inverzného neurónového modelu<br />
7 - 27
y<br />
Priame inverzné riadenie lin. systému<br />
- Lineárny systém 2. rádu s prenosovou funkciou<br />
- Testovanie neurónového a inverzného neurónového modelu<br />
4<br />
3.5<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0.5<br />
Neuronovy model - testovanie<br />
0<br />
0 200 400 600<br />
vzorky<br />
800 1000 1200<br />
u<br />
4<br />
3.5<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0.5<br />
Inverzny neuronovy model - testovanie<br />
0<br />
0 200 400 600<br />
vzorky<br />
800 1000 1200<br />
7 - 28
w, y<br />
Priame inverzné riadenie lin. systému<br />
- Riadenie lineárneho systému 2. rádu s prenosovou funkciou<br />
3.5<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0 50 100 150<br />
cas [s]<br />
200 250 300<br />
- Riadenie iba v otvorenom reg. obvode<br />
- Nepotláča poruchu<br />
u<br />
w, y<br />
2.4<br />
2.2<br />
2<br />
1.8<br />
1.6<br />
1.4<br />
1.2<br />
10<br />
5<br />
0<br />
-5<br />
-10<br />
120 130 140 150 160 170<br />
cas [s]<br />
120 130 140<br />
cas [s]<br />
150 160 170<br />
7 - 29
% príprava dát – máme utrain, utest, ytrain, ytest<br />
% posunutie vzoriek pre inverzný model<br />
% in=[y(k) y(k-1) y(k-2) y(k-3) y(k-4) u(k-2) u(k-3) u(k-4)]<br />
uk1=utrain(4:end-1); uk2=utrain(3:end-2); uk3=utrain(2:end-3); uk3=utrain(1:end-4);<br />
yk1=ytrain(4:end-1); yk2=ytrain(3:end-2); yk3=ytrain(2:end-3); yk3=ytrain(1:end-4);<br />
yk=ytrain(5:end);<br />
in=[yk’; yk1’; yk2’; yk3’; yk4’; uk2’; uk3’; uk4’];<br />
% out=u(k-1)<br />
out=uk1’;<br />
% vytvorenie NS<br />
netinv=newff([zeros(8,1) 5*ones(8,1)],[9 1],{'tansig' 'purelin'},'trainlm');<br />
% trenovanie<br />
netinv.trainParam.goal=1e-10;<br />
netinv.trainParam.epochs=500;<br />
netinv=train(netinv,in,out);<br />
% simulácia výstupu<br />
ynet=sim(netinv,in);<br />
figure, plot([out' ynet'])<br />
% testovanie<br />
…<br />
7 - 30
Simulačná schéma priameho inverzného riadenia s UNS<br />
Ziadana hodnota<br />
w<br />
Clock<br />
Zero-Order<br />
Hold<br />
u(k-1)<br />
u(k-2)<br />
w<br />
To Workspace2<br />
u(k)<br />
u(k-3)<br />
Oneskorovac u<br />
p{1} y {1}<br />
Inverzny neuronovy<br />
model<br />
y(k-1)<br />
y(k-2)<br />
y(k-3)<br />
1<br />
4s 2+5s+1<br />
System<br />
y(k)<br />
Oneskorovac y<br />
t<br />
To Workspace3<br />
uvz<br />
To Workspace1<br />
yvz<br />
T o Workspace<br />
y<br />
To Workspace4<br />
3<br />
y(k-3)<br />
2<br />
y(k-2)<br />
1<br />
y(k-1)<br />
Tvz – perioda<br />
vzorkovania<br />
1<br />
z<br />
Unit Delay2<br />
1<br />
z<br />
Unit Delay1<br />
1<br />
z<br />
Unit Delay<br />
1<br />
y(k)<br />
7 - 31
Ziadana hodnota<br />
w<br />
Clock<br />
Simulačná schéma robustného priameho inverzného<br />
riadenia s UNS<br />
t<br />
Zero-Order<br />
Hold<br />
To Workspace3<br />
1<br />
a{1}<br />
u(k-1)<br />
u(k-2)<br />
u(k)<br />
u(k-3)<br />
Oneskorovac u<br />
2<br />
B<br />
p{1}<br />
B<br />
TDL<br />
Delays 1<br />
B<br />
y{1}<br />
Inverzny neuronovy<br />
model<br />
bias<br />
b{2}<br />
B<br />
To Workspace5<br />
w<br />
y<br />
Adaptacny clen<br />
B=1+beta(sum(w-y))<br />
weight<br />
LW{2,1}<br />
Product<br />
y(k-1)<br />
y(k-2)<br />
y(k-3)<br />
1<br />
4s 2+5s+1<br />
System<br />
Porucha<br />
p<br />
y(k)<br />
Oneskorovac y<br />
netsum<br />
purelin<br />
1<br />
a{2}<br />
1<br />
p{1}<br />
a{1}<br />
2<br />
B<br />
w<br />
yvz<br />
y<br />
uvz<br />
1<br />
B<br />
1<br />
-K-<br />
Beta<br />
p{1} a{1}<br />
Layer 1<br />
a{1}<br />
a{2}<br />
B<br />
Layer 2<br />
1<br />
z<br />
1 w<br />
2<br />
y<br />
a{1}<br />
1<br />
y{1}<br />
7 - 32
w, y<br />
Robustné priame inverzné riadenie<br />
- Riadenie lineárneho systému 2. rádu s prenosovou funkciou<br />
3.5<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0 50 100 150<br />
cas [s]<br />
200 250 300<br />
- Riadenie v otvorenom reg. obvode s pomocným<br />
adaptačným mechanizmom od reg. odchýlky<br />
-Potláča poruchu<br />
w, y<br />
u<br />
3<br />
2.5<br />
2<br />
1.5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
110 120 130 140<br />
cas [s]<br />
150 160 170<br />
110 120 130 140<br />
cas [s]<br />
150 160 170<br />
7 - 33
Simulačná schéma IMC s UNS<br />
Ziadana hodnota<br />
w<br />
Ze ro -O rd e r<br />
Hold<br />
p{1} y {1}<br />
Inverzny neuronovy<br />
model<br />
u(k-1)<br />
u(k-2)<br />
u(k)<br />
u(k-3)<br />
Oneskorovac u<br />
Ze ro -O rd e r<br />
Hold1<br />
Saturation<br />
y(k-1)<br />
y(k-2)<br />
y(k-3)<br />
y(k)<br />
Oneskorovac y<br />
p{1} y {1}<br />
Neuronovy model<br />
1<br />
4s 2 +5s+1<br />
System<br />
Porucha<br />
p<br />
1<br />
s+ 1<br />
Filter<br />
y<br />
To Workspace4<br />
porucha<br />
To Workspace6<br />
ym<br />
w<br />
To Workspace2<br />
yvz<br />
T o W o rksp a ce<br />
uvz<br />
To Workspace1<br />
To Workspace7<br />
Clock<br />
ey<br />
To Workspace5<br />
t<br />
To Workspace3<br />
7 - 34
w, y<br />
IMC riadenie s UNS<br />
- Riadenie lineárneho systému 2. rádu s prenosovou funkciou<br />
3.5<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0 50 100 150<br />
cas [s]<br />
200 250 300<br />
- Riadenie v otvorenom reg. obvode s pomocným<br />
adaptačným mechanizmom od reg. odchýlky<br />
-Potláča poruchu<br />
u<br />
w, y<br />
4<br />
3<br />
2<br />
1<br />
0<br />
3<br />
2.5<br />
2<br />
1.5<br />
120 140 160 180<br />
cas [s]<br />
120 140 160<br />
cas [s]<br />
180<br />
7 - 35
Prediktívne neurónové riadenie chemického<br />
reaktora<br />
Matematický model procesu:<br />
Vstupy procesu:<br />
w1 – prietok produktu 1, w1=0.1<br />
w2 - prietok produktu 2, riadiaci zásah<br />
Cb1 - koncentrácia produktu 1, Cb1=24.9<br />
Cb2 - koncentrácia produktu 2, Cb2=0.1<br />
Výstupy procesu:<br />
h – výška hladiny v reaktore (neriadi sa)<br />
Cb – výstupná koncentrácia produktu,<br />
riadená veličina
Prediktívne neurónové riadenie chemického<br />
reaktora<br />
N 1 – dolná hranica predikčného horizontu,<br />
N 2 – horná hranica predikčného horizontu,<br />
N u – horná hranica riadiaceho horizontu,<br />
ρ – váhový faktor jednotlivých zmien<br />
riadiaceho signálu<br />
srchbac - Backtracking hľadanie.<br />
srchbre - Brent's kombinácia zlatého rezu a<br />
kvadratickej interpolácii<br />
srchcha - Charalambous' kubická interpolácia<br />
srchgol - metóda zlatého rezu.<br />
srchhyb - Hybridné bisection/cubic hľadanie.<br />
7 - 37
Prediktívne neurónové riadenie chemického<br />
reaktora<br />
N 2 – horná hranica<br />
predikčného horizontu<br />
N u – horná hranica<br />
riadiaceho horizontu<br />
Použitá<br />
optimalizačná<br />
rutina pre<br />
hladanie u<br />
Identifikácia<br />
procesu<br />
pomocou NS<br />
Prediktívny<br />
neurónový<br />
regulátor<br />
ρ – váhový faktor zmien<br />
riadiaceho signálu u<br />
α – krok hladania u<br />
Počet iterácií hladania<br />
u za jednu Tvz<br />
7 - 38
Identifikácia procesu pomocou MLP<br />
Štruktúra siete - parametre<br />
Trénovacie data - generovanie<br />
Trénovanie siete
Prediktívne riadenie teploty v reaktore
Demonštračný príklad - Izotermický polymerizačný<br />
reaktor<br />
Radikálová polymerizácia s azo-bis-izobutyronitrilom ako<br />
iniciátorom a toluénom ako rozpúšťadlom.<br />
Pre zjednodušenie riešenia sa predpokladajú základné<br />
požiadavky:<br />
- izotermická reakcia dokonalé miešanie konštantná<br />
teplota<br />
- bez polymér vo vstupnom prúde<br />
- - bez želatínového efektu<br />
- - konštantný objem reaktora<br />
- - zanedbateľný prúd iniciátora<br />
7 - 41
T in C I in F I<br />
Monomer a Solvent<br />
F C m in T in<br />
Riadenie polymerizačného reaktora<br />
NAMW<br />
F C I D 1<br />
C m T D 0<br />
Bloková schéma polymerizačnej jednotky<br />
Prediktívny<br />
NN<br />
regulátor<br />
NAMW<br />
setpoint<br />
7 - 42
7 - 43<br />
Nelineárny dynamický model polymerizačného reaktora:<br />
( )<br />
( ) ( )<br />
( )<br />
V<br />
Fx<br />
T<br />
x<br />
P<br />
x<br />
e<br />
Z<br />
e<br />
Z<br />
M<br />
x<br />
V<br />
Fx<br />
T<br />
x<br />
P<br />
x<br />
e<br />
Z<br />
T<br />
x<br />
P<br />
e<br />
Z<br />
e<br />
Z<br />
x<br />
V<br />
FC<br />
V<br />
Fx<br />
x<br />
e<br />
Z<br />
x<br />
V<br />
FC<br />
V<br />
Fx<br />
T<br />
x<br />
P<br />
x<br />
e<br />
Z<br />
e<br />
Z<br />
x<br />
RT<br />
E<br />
fm<br />
RT<br />
E<br />
P<br />
m<br />
RT<br />
E<br />
fm<br />
RT<br />
E<br />
T<br />
RT<br />
E<br />
T<br />
I<br />
RT<br />
E<br />
I<br />
m<br />
RT<br />
E<br />
fm<br />
RT<br />
E<br />
P<br />
fm<br />
c<br />
T<br />
fm<br />
d<br />
T<br />
d<br />
c<br />
T<br />
c<br />
in<br />
I<br />
in<br />
fm<br />
P<br />
4<br />
2<br />
0<br />
1<br />
.<br />
4<br />
3<br />
2<br />
0<br />
1<br />
2<br />
2<br />
0<br />
.<br />
3<br />
2<br />
2<br />
.<br />
2<br />
1<br />
2<br />
0<br />
1<br />
.<br />
1<br />
,<br />
,<br />
,<br />
5<br />
.<br />
0<br />
,<br />
−<br />
⎥<br />
⎥<br />
⎦<br />
⎤<br />
⎢<br />
⎢<br />
⎣<br />
⎡<br />
+<br />
=<br />
−<br />
+<br />
⎥<br />
⎥<br />
⎦<br />
⎤<br />
⎢<br />
⎢<br />
⎣<br />
⎡<br />
+<br />
=<br />
+<br />
−<br />
−<br />
=<br />
+<br />
−<br />
⎥<br />
⎥<br />
⎦<br />
⎤<br />
⎢<br />
⎢<br />
⎣<br />
⎡<br />
+<br />
−<br />
=<br />
⎟<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎜<br />
⎝<br />
⎛ −<br />
⎟<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎜<br />
⎝<br />
⎛ −<br />
⎟<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎜<br />
⎝<br />
⎛ −<br />
⎟<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎜<br />
⎝<br />
⎛ −<br />
⎟<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎜<br />
⎝<br />
⎛ −<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎝<br />
⎛ −<br />
⎟<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎜<br />
⎝<br />
⎛ −<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎝<br />
⎛ −<br />
( )<br />
5<br />
.<br />
0<br />
2<br />
2<br />
0<br />
*<br />
2<br />
,<br />
⎥<br />
⎥<br />
⎥<br />
⎥<br />
⎦<br />
⎤<br />
⎢<br />
⎢<br />
⎢<br />
⎢<br />
⎣<br />
⎡<br />
+<br />
=<br />
⎟<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎜<br />
⎝<br />
⎛ −<br />
⎟<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎜<br />
⎝<br />
⎛ −<br />
⎟<br />
⎠<br />
⎞<br />
⎜<br />
⎝<br />
⎛ −<br />
RT<br />
E<br />
T<br />
RT<br />
E<br />
T<br />
RT<br />
E<br />
I<br />
Tc<br />
c<br />
d<br />
T<br />
d<br />
I<br />
e<br />
Z<br />
e<br />
Z<br />
e<br />
Z<br />
x<br />
f<br />
T<br />
x<br />
P
D1/D0<br />
3.5<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0.5<br />
4 x 10 4 Riadenie D1/D0<br />
w<br />
NMPC<br />
PID<br />
0<br />
0 1 2 3 4 5<br />
t<br />
6 7 8 9 10<br />
7 - 44
NARMA-L2 riadenie magnetickej levitácie<br />
vstup:<br />
i – prúd cievky<br />
výstup:<br />
y – vzdialenosť magnetu<br />
Matematický model procesu:<br />
7 - 45
NARMA-L2 riadenie magnetickej levitácie<br />
Neurónový model systému:<br />
Riadiaci<br />
zásah:<br />
7 - 46
NARMA-L2 riadenie magnetickej levitácie<br />
NARMA-L2<br />
regulátor<br />
Okno na identifikáciu<br />
NARMA-L2 modelom<br />
7 - 47
NARMA-L2 riadenie magnetickej levitácie<br />
7 - 48
Riadenie s referenčným modelom ramena robota<br />
vstup:<br />
u – moment motora<br />
výstup:<br />
Φ – uhol ramena<br />
Matematický model procesu:<br />
Matematický model referenčného modelu:<br />
7 - 49
Riadenie s referenčným modelom ramena robota<br />
7 - 50
Riadenie s referenčným modelom ramena robota<br />
Riadenie s<br />
referenčným<br />
modelom<br />
Okno na trénovanie<br />
regulátora<br />
7 - 51
Riadenie s referenčným modelom ramena robota<br />
7 - 52