Algoritmus stavového prediktívneho riadenia
V každom kroku výpočtu sú počítané predikované hodnoty výstupu na N2 krokov dopredu a riadiace zásahy pre nasledujúcich Nu krokov dopredu, ako môžete vidieť na Obr. 2.
Obr. 2 Princíp prediktívneho horizontu pre systém s jedným vstupom a jedným výstupom
Kriteriálnu funkciu pre výpočet optimálneho riadenia v k-tom kroku si môžeme vyjadriť v tvare:
kde:
Pri odvodení stavového MPC regulátora pre nelineárny systém s m výstupmi a n vstupmi uvažujeme zlinearizovaný model systému v okolo pracovného prevedený do diskrétneho stavového opisu v nasledujúcom tvare:
Prediktor na Np krokov dopredu môžeme zapísať v maticovom tvare:
kde:
Vektor optimálnych riadiacich zásahov sa vypočita podľa vzťahu:
kde:
Výsledkom tejto rovnice je trajektória tvorená riadiacimi zásahmi, z ktorých prvých n prvkov vektora u je aplikovaných na proces. Pre systém s obmedzením hodnoty akčnej veličiny u(k) alebo hodnoty výstupu y(k) sa vypočítavá vektor u pomocou funkcie quadprog (Quadratic Programing) z Optimization Toolboxu jazyka Matlab.
Algoritmus výpočtu hodnoty akčného zásahu v k-tom kroku výpočtu má tvar:
- Načítanie matíc A, B, C, D stavového modelu systému, vektora referenčných hodnôt výstupu systému r a váhových koeficientov mi a ll pre i=1,...,n a l=1,...,m,
- Zostavenie váhových matíc M a L,
- Výpočet matice silovej odozvy G a matice voľnej odozvy S,
- Ak je požiadavka na obmedzenie u(k) alebo y(k) potom pokracuj bodom 7.,
- Výpočet vektora predikcie akčného zásahu u podľa vyššie uvedeného vzťahu,
- Pokračuj bodom 8.,
- Výpočet vektora predikcie akčného zásahu u s použitím funkcie quadprog,
- u(k) je prvých n prvkov vektora u,
- Výpocet sa opakuje pre další krok výpočtu od bodu 1.
Podrobné odvodenie algoritmu MPC sa nachádza v článku:
JADLOVSKÁ, Anna - KABAKOV, Nikola - ZOLOTOVÁ, Iveta: Predictive control algorithm based on state space models of dynamic systems - internet approach, In: Acta Electrotechnica et Informatica. roč. 7, č. 3 (2007), s. 46-52,Internet: http://www.aei.tuke.sk, ISSN 1335-8243 (pdf)