Robot manipulátor - formulácia úlohy optimálneho riadenia
Predpokladáme, že matematický model riadeného dynamického systému je vyjadrený vektorovou rovnicou v tvare:
kde:
je m-rozmerný vektor riadenia v čase t
je n-rozmerná známa funkcia
je definičný interval systému
Úlohou optimálneho riadenia je určiť taký vektor (U je množina prípustných riadení), aby dynamický systém (1.11) prešiel z daného počiatočného stavu do určeného konečného stavu a aby kritérium optimálneho riadenia v tvare:
nadobudlo minimálnu hodnotu, kde je daná funkcia. Takýto vektor riadenia a jemu zodpovedajúcu trajektóriu nazývame optimálnymi
Problém optimálneho riadenia môžeme rozdeliť na 2 úlohy:
Programové optimálne riadenie (POR)
Nech je dané:
- Stavová rovnica riadeného dynamického systému (1.11)
- počiatočný čas t = t0,časový interval < t0, T > >a počiatočný stav riadeného systému
- koncový stav systému
- kritérium optimálneho riadenia (1.12) a množina prípustných riadení
Úlohou programového optimálneho riadenia je nájsť také riadenie, ktoré prevádza dynamický systém z počiatočného stavu do požadovaného koncového stavu a minimalizuje kritérium optimálneho riadenia (1.12)
Problém sledovania pomocou dopredných a inverzných neurónových modelov v riadiacej štruktúre s dopredným regulátorom
V tejto časti za zameriame na aplikáciu neurónovej siete typu MLP v riadiacej štruktúre s dopredným regulátorom na riešenie problému sledovania optimálnej trajektórie (Optimal Neuro-Tracking Problem) pre nelineárny systém - robot - manipulator, ktorého model dynamiky budeme uvažovať v stavovom priestore.
Úlohy optimálneho sledovania trajektórie manipulátora s dvoma stupňami vožnosti pozostáva z dvoch etáp:
- z výpočtu nominálnych trajektórií pohybu xref a riadiacich zásahov uref pomocou iteračných metód programového optimálneho riadenia (POR), konkrétne algoritmom gradientnej metódy využitím korekčných funkcií
- z LQ návrhu deterministického regulátora v spätnej väzbe spočívajúceho v riešení systému Riccatiho nelineárnych diferenciálnych rovníc s časovo-premenlivými koeficientami algoritmom spätnoväzobného optimálneho riadenia (SOR), ktorý zabezpečuje korekciu odchýliek skutočnej polohy koncového bodu robota od daných (off-line) vypočítaných nominálnych trajektórií xref , uref ,
Na obr. 1.1 je znázornená riadiaca štruktúra s neurónovým regulátorom, ktorý sa skladá z dvoch neurónových sietí typu MLP:
Obr. 1.1 Štruktúra zapojenia s neurónovým regulátorom
kde:
uref(k)
dx(k)
du(k)
u(k)
x(k)
vektor optimálnych riadiecich zásahov
vektor odchýliek od predpísanej trajektórie
korekcia vektora riadiaceho zásahu
aktuálny vektor riadiaceho zásahu
reálny výstup nelineárneho dynamického systému robota-manipulátora.
Ako trénovaciu množinu dát pre neurónovú sieť NN1, ktorá je trénovaná ako inverzný model v zapojení "general learning" (obr. 1.2) použijeme výsledky POR, t.j. vektor riadiacich zásahov uref a vektor nominálnych trajektórií pohybu xref , ktoré sú riešením dvojbodovej okrajovej úlohy algoritmom korekčných funkcií.
Obr. 1.2 Trénovanie neurónovej siete NN1
Popis algoritmu programového optimálneho riadenia:
- Inicializácia počiatočných hodnôt parametrov
- parametre robota - manipulátora(hmotnosti, momenty zotrvačnosti, konštanty akčných veličín), ktoré predstavujú koeficienty sústavy nelineárnych diferenciálnych rovníc
- počiatočné podmienky dynamického systému - robota
- počiatočné podmienky kovektora
- počiatočné podmienky citlivostných rovníc Uij(0)=0 , Vij(0)=1 ak i=j, inač Vij(0)=0
- požadovaný koncový stav systému
- parametre pre vlastný podprogram, ktorý rieši sústavu diferenciálnych rovníc metódou Runge-Kuta (počiatočný a koncový čas výpočtu, integračný krok)
- požadovaná presnosť dosiahnutia koncového stavu
- Riešenie systému združených diferenciálnych rovníc a citlivostných rovníc
- Zapamätanie si hodnôt vektora koncového stavu dosiahnutého v dannej iterácií z aktuálnych počiatočných podmienok
- Test na presnosť medzi vypočítaným a vektorom a požadovaným vektorom stavu
- Ak nie je splnená predpísaná presnosť dosiahnutia koncového stavu potom:
- vypočítamé korekcie, ktoré sú riešením algebraických rovníc:
- vykonáme opravu počiatočných podmienok kovektora podľa:
- Ak predpísaná presnosť dosiahnutia koncového stavu je dodržaná:
- vypočítame optimálne trajektórie
- grafické znázornenie optimálnych trajektórií a odpovedajúceho optimálneho riadenia
Spätnoväzobné optimálne riadenie (SOR)
Pri reálnych priemyselných robotoch, kde kde nieje splnený predpoklad o konštantnosti parametrov (nepresnosť modelu), je nutné určiť také riadenie, ktoré zabezpečí pohyb dynamického systému (robota-manipulátora) v určitom okolí optimálnej trajektórie. Riadenie získame, ka použijeme korekčný člen - regulátor v spätnej väzbe, čiže riešime úlohu spätnoväzobného optimálneho riadenia
Z uvedeného vyplýva, že skutočný vstup - do riadeného systému je je rôzny od naminálneho vstupu. Teda definujeme nasledovné vzťahy:
vektor odchýlky stavu:
a vektor korekcie riadenia:
Predpokladajme, že nelineárny dynamický systém (robot - manipulátor) sa dá vyjadriť vektorovou stavovou diferenciálnou rovnicou:
Ak pravá stranu vzťahu (3.3) rozvinieme do Taylorovho radu v okolí , a vyjadríme v maticovom tvare dostaneme:
kde:
je matica typu (n,n), ktorú získame z prvkov Jacobiánu matice
je matica typu (n,m), ktorú získame z prvkov Jacobiánu matice
Linearizovaný perturbačný model získame, ak zanedbáme vyššie členy Taylorovho radu v rovnici (3.4)
Navrhovaný regulátor v spätnej väzbe viaže veličiny vektor odchýlky stavu a vektor korekcie riadenia lineárnou časovo-premennou väzbou:
kde je matica riadenia
Riešenie deterministického lineárne kvadratického problému vedie na návrh deterministickej spätnej väzby, ktorej úlohou je udržať minimálnu odchýlku od optimálnej trajektórie pohybu.
Štruktúra deterministickej spätnej väzby sa dá znázorniť regulačným obvodom na obr.1:
Obr.1 Štruktúra deterministického riadiaceho systému
Aplikáca neurónovej siete
Neurónová sieť NN2 v zapojení podľa obr. 1.1 plní úlohu zodpovedajúcu deterministickému regulátoru v spátnej väzbe navrhnutého pri klasickom spätnoväzobnom optimálnom riadení.
Trénovanie neurónovej siete (NN) prebiehalo na základe známeho správania sa navrhnutého deterministického regulátora v spätnej väzbe pre zvolené diagonálne matice Q, R. Schéma zapojenia známeho regulátora a NN2 vo fáze učenia je na obr. 1.3
Obr 1.3 Trénovanie neurónovej siete NN2
Toto zapojenie sa v mnohých literatúrach označuje ako priama identifikácia systému, pričom v tomto našom prípade pod identifikovaným systémom budeme rozumieť známy regulátor.
Popis algoritmu spätnoväzobného optimálneho riadenia robota
- Inicializácia počiatočných hodnôt robota manipulátora
- parametre robota - manipulátora
- počiatočné podmienky dynamického systému - robota
- počiatočné podmienky Riccatiho diferenciálnych rovníc K(0)
- parametre pre vlastný podprogram, ktorý rieši sústavu diferenciálnych rovníc metódou Runge-Kuta (počiatočný a koncový čas výpočtu, integračný krok)
- Načítanie optimálnych trajektórií a odpovedajúcich optimálnych riadení, ktoré boli získané pri programovom optimálnom riadení
- Výber váhových matíc Q, R
- Výpočty OFF-LINE
- zo známych optimálnych trajektórií a optimálneho riadenia vypočítame matice A(t), B(t) pre časovo-variantný prípad podľa (3.7)-(3.8) a matíc A, B pre časovo-invariantný prípad podľa (3.15)
- matice A,B predstavujú koeficienty maticovej Riccatiho algebraickej rovnice (3.20), ktorej riešením je konštantná matica K výpočet matice riadenia G
- Simulovanie regulačného obvodu s uvažovaním poruchy a výpočet regulačných odchýlok
- Výpočet korekcií riadenia
- Výpočet riadenia
- Ak čas simulácie regulačného obvodu t=T:
- grafické znázornenie priebehu regulácie
- výpočet integrálneho kritéria sledovania optimálnych trajektórií
- Ak čas simulácie t <>T pokračuj kokom 5