Identifikace a řízení nelineárního systému pomocí Hammersteinova modelu

25. Apríl, 2011, Autor článku: Brázdil Michal, Elektrotechnika
Ročník 4, číslo 4 This page as PDF Pridať príspevok

V praxi se často setkáváme s procesy, které nejsou lineární. V těchto případech nelze vyjádřit jejich statickou charateristiku y=f(u) lineární funkcí, přičemž u je vstupní veličina ovlivňující dynamický systém, y je veličina výstupní. Tyto procesy není možné optimálně řídit pomocí jednoduché lineární teorie řízení. Pro řízení nelineárních procesů je možné použít několik přístupů.

Základní přístupem je nalezení lineární oblasti statické charakteristiky a pro tuto oblast navrhnout regulátor. Další přístupem je linearizace statické charakteristiky po částech, tzn. rozdělení statické charakteristiky na několik částí, které budou lineární a pro každou část navrhnout regulátor. Nevýhodou tohoto přístupu je použití více regulátorů pro řízení procesu a tím i zvýšení náročnosti úlohy. Mnohem zajimavějším a hlavně jednodušším přístupem je použití Hammersteinova modelu pro návrh vhodného regulátoru.

Hammersteinuv model

Hammersteinův model je pravděpodobně nejznámější a nejpoužívanější přístup pro modelování nelineárních systémů. Spočívá v oddělení nelineární statické a lineární dynamické části procesu. Struktura Hammersteinova modelu, která je znázorněna na Obr. 1, se skládá z nelineární statické části a lineární dynamické části, které mohou být popsány rovnicemi

x(k) = g(u(k)) (1)

y(k) = b_1 x(k-1)+..+b_n x(k-n)-a_1 y(k-1)-..-a_n y(k-n) (2)


Obr. 1: Struktura Hammersteinova modelu

Tato struktura popisuje všechny systémy, kde se nachází dominantní nelineární akční člen (např. charakteristika ventilu, saturace, pásmo necitlivosti elektromagnetického motoru apod.), přičemž ostatní nelinearity jsou zanedbány. Z tohoto důvodu jsou Hammersteinovy modely oblíbené v řídicí technice. Navíc je snadné eliminovat statickou nelinearitu její inverzní funkcí, která se zařadí na výstup regulátoru. Velkou výhodou rozdělení systému na nelineární a lineární část je, že stabilita je určena výhradně lineární částí modelu, která může být snadno ověřena. Nicméně struktury procesů jsou velmi různorodé a proto je možné tuto metodu použít jen na omezenou třídu systémů.

Nelineární statickou charakteristiku je možné obecně aproximovat polynomem vhodného stupně. V některých případech je možné použít rovněž jiné aproximace. Pro efektivní identifikaci je doporučeno používat lineárně parametrizované koeficienty. Je nutné si uvědomit, že v případě systému s více vstupy bude nelineární statická charakteristika popsána funkcí ve tvaru matice. Rovnice nelineární statické charakteristiky polynomu druhého řádu (l=2) má tvar

x(k) = c_0 + c_1 u(k) + c_2 u^2(k) (3)

Dosazením rovnice (4) do rovnice (2) obdržíme pro systém druhého řádu bude vstupně / výstupní vztah ve tvaru

y(k) = b_1 c_0 + b_1c_1u(k-1) + b_2c_0 + b_2c_1u(k-2) + b_1c_2u^2(k-1) +

+ b_2c_2u^2(k-2) - a_1y(k-1) - a_2y(k-2) (4)

Hammersteinův model není možné identifikovat přímo. Abychom se vyhnuli použití nelineárních optimalizačních technik, pracuje se většinou s obecnou strukturou modelu. Obecný Hammersteinův model se reparametrizuje tak, aby výsledné parametry byly lineární. V rovnici (4) součiny b1c0 a b2c0 jsou absolutní členy, které znamenají posuny v souřadném systému, a proto mohou být sečteny. Proto mohou být nahrazeny jedním nezávislým parametrem (absolutním členem).

\theta_1 = b_1c_0 + b_2c_0 (5)

Pro l=2 a n=2 bude výstup obecného Hammersteinova modelu ve tvaru

y(k) = \theta_1 + \theta_2u(k-1) + \theta_3u(k-2) + \theta_4y(k-1) + \theta_5y(k-2) +

+ \theta_6u^2(k-1) + \theta_7u^2(k-2) (6)

jehož parametry mohou být odvozeny pomocí lineární optimalizace. Tento model může také popisovat zjednodušený parametrický Volterrův model bez ovlivňování mezi jednotlivými regresory, které jsou závislé na rozdílných dopravních zpožděních.

Originální Hammerteinův model má l+2n parametrů, zatímco u obecné verze je to n(l+1)+1. Pro výše uvedené příklady, obecný Hammersteinův model má jenom o jeden parametr více než originální, ale stupeň polynomu l a dynamický řád n roste. Obecný Hammersteinův model má podstatně více parametrů než originální model. Výpočet parametrů Hammersteinova modelu je možný aproximací obecného Hammersteinova modelu.

Identifikace nelineárního systému

V této části příspěvku bude ukázáno praktické využití Hammersteinova modelu pro identifikaci nelineární soustavy. Pro vypracování byl použit software MathWorks Matlab. Jako neznámý systém byl použit model ventilu. Blokové schéma je ukázáno na Obr. 2. Vstupní signál přiváděný na soustavu byl v rozsahu od 0 do 1.5 V. Jako výstupní signál byl měřen průtok, v ml/min, pomocí průtokoměru, který byl na vstupní straně ventilu. Před samotnou identifikací systému musela být nejprve změřena statická charakteristika, aby bylo možné rozhodnout o tom, zda se jedná o lineární či nelineární systém. Na vstup systému byl přiveden vstupní signál ve výše uvedeném rozsahu s krokem 0.01 V.


Obr. 2: Blokové schéma nelineárního systému

Na Obr. 3 je znázorněno simulinkové schéma pro měření statické charakteristiky.


Obr. 3: Simulinkové schéma pro měření statické charakteristiky

Z naměřených dat byla sestrojena statická charakteristika ventilu.


Obr. 4: Statická charakteristika ventilu

Z naměřené statické charakteristiky Obr. 4 bylo patrné, že se jedná o nelineární systém exponenciálního charakteru. Identifikace tohoto systému nemohla být provedena jako u lineárního systému. Bylo by to možné jen v případě, že by se zvolil pracovní bod v lineární oblasti statické charakteristiky, ale nebylo by možné využít celý rozsah výstupu ventilu.

Vzhledem k tomu, že byl využit celý rozsah vstupního signálu (0 až 1.5 V) bylo nutné k tomuto problému přistoupit jinak. Nabízí se využití Hammersteinova modelu tzn. rozdělení systému na nelineární statickou a lineární dynamickou část. Nelineární statická část systému byla určena ze statické charakteristiky tj. funkce, která co nejlépe sleduje křivku statické charakteristiky. Obecný zápis funkce, která aproximovala statickou charakteristiku byla ve tvaru

x(k) = A + Be^{Cu(k)} (7)

Pro nalezení koeficientu funkce (7) byla použita vestavěná funkce MATLABu fminsearch().

x(k) = 750.3625 -748.179 e^{-2.5577u(k)} (8)


Obr. 5: Aproximovaná statická charakteristika ventilu

Aby bylo možné nelineární systém řídit, je nutné vypočítat inverzní funkci k funkci (8)

x^{-1}(k) = \frac{ln \left ( \frac{u(k) - 750.3625}{-748.179} \right )}{-2.5577} (9)


Obr. 6: Přechodová charakteristika ventilu

Nyní mohla být provedena identifikace systému. Z průběhu přechodové charakteristiky na Obr. 6 bylo patrné, že se jednalo o systém prvního řádu. Na základě tohoto předpokladu byla určena perioda vzorkování podle pravidla

T_0 = \left ( \frac{1}{6} \div \frac{1}{15} \right ) T_{95} = 0.3s (10)

Na vstup systému byl přiveden pseudonáhodný binární signál (PNBS) Obr. 7 u(kT) s opakovací bezrozměrnou periodou

N = 2^m -1 (11)

, kde m=5 je počet bitů generátoru PNBS. Opakovací perioda generátoru je rovna

T_G = NT = 31*3s = 93s (12)

, kde T=3s je časová konstanta změny hodnoty u(kT).


Obr. 7. Pseudonáhodný binární signál

Na výstupu byla poté měřena odezva y(kT0) Obr. 8.


Obr. 8: Odezva signálu na pseudonáhodný signál

Pro identifikaci byla použita jednorázová metoda nejmenších čtverců, vestavěná funkce v MATLABu arx(). Před použitím této funkce musely být data upraveny pomocí rovnice (8), aby bylo možné identifikovat pouze lineární dynamickou část systému. Lineární identifikovaný přenos systému byl ve tvaru

G_s(z^{-1})=\frac{0.2594z^{-1}}{1-0.74z^{-1}}, T=0.3s (13)


Obr. 9: Hammersteinův model identifikovaného systému

Na Obr. 9 je znázorněno blokové schéma výsledného Hammerstinova modelu. Pokud by byla nelinearita systému zanedbána, výsledný přenos systému bude ve tvaru

G_s(z^{-1})=\frac{126.7z^{-1}}{1-0.7408z^{-1}}, T=0.3s (14)

Návrh regulátoru

Pro identifikovanou lineární část systému byl navržen regulátor s jedním stupněm volnosti (1 DOF). Přenos (13) obsahuje polynomy A(z-1) a B(z-1)

G_s(z^{-1})= \frac{B(z^{-1})}{A(z^{-1})} = \frac{b_1 z^{-1}}{1 - a_1 z^{-1}} = \frac{0.2594z^{-1}}{1-0.74z^{-1}}, T=0.3s (15)

Obecná diofantická rovnice má tvar

A(z^{-1})K(z^-1)P(z^{-1}) + B(z^-1)Q(z^{-1}) = Q(z^{-1}) (16)

kde P(z-1), B(z-1) a D(z-1) jsou neznámé polynomy a musí být vypočítány

\partial P  = \partial B - 1 =0 \Rightarrow P(z^{-1}) = p_0 (17)

\partial Q  = \partial A + \partial K - 1 = 1 \Rightarrow Q(z^{-1}) = q_0 + q_1 z^{-1} (18)

\partial K(z^{-1}) = 1 - z^{-1} (19)

\partial D(z^{-1}) = 1 - 2 \alpha z^{-1} + \alpha^2 z^{-2} (20)

Do rovnice (16) byly dosazeny rovnice (17), (18), (19) a (20)

(1-a_1z^{-1})(1-z^{-1})p_0 = b_1z^{-1}(q_0+q_1z^{-1}) = 1-2 \alpha z^{-1} + \alpha^2 z^{-2} (21)

Roznásobením rovnice (21) a sepsání jednotlivých koeficientů mocnin z byly získány rovnice

p_0 + (a_1-1)p_0z^-1 - a_1p_0z^{-2} + b_1q_0z^{-1} + b_1q_1z^{-2} =

= 1-2 \alpha z^{-1} + \alpha^2 z^{-2} (22)

z^0: p_0 =1

z^{-1}: a_1-1+b_1q_0 = -2 \alpha \Rightarrow q_0 = \frac{-2 \alpha - a_1 +1}{b_1} (23)

z^{-2}: -a_1+b_1q_1=\alpha^2 \Rightarrow q_1 = \frac{\alpha^2+a_1}{b_1}

Parametr \alpha polynomu D(z-1) byl zvolen experimentálně

\alpha = 0.75 (24)

Výsledný přenos regulátoru byl ve tvar

G_R(z^{-1})=\frac{q_0+q_1z^{-1}}{1-z^{-1}} = \frac{0.9252-0.6843z^{-1}}{1-z^{-1}} (25)

Aby došlo k vyrušení nelinearity systému, musel být na výstup regulátoru zapojen blok s inverzní funkcí (9) Obr. 10. Poté bylo možné provést řízení průtoku pomocí ventilu.


Obr. 10: Zpětnovazební regulační obvod s použitím inverzní funkce


Obr. 11: Regulační pochod s použitím inverzní funkce

Stejný postup návrhu regulátoru byl použit pro identifikovaný přenos (14). Pro výpočet parametrů regulátoru byl použit stejný parametr \alpha = 0.75 .

G_R(z^{-1})=\frac{q_0+q_1z^{-1}}{1-z^{-1}} = \frac{0.0019-0.0014z^{-1}}{1-z^{-1}} (26)


Obr. 12: Zpětnovazební regulační obvod bez použití inverzní funkce


Obr. 13: Regulační pochod bez použití inverzní funkce

Závěr

Z regulačního pochodu, znázorněném na Obr. 11 bylo patrné, že pomocí Hammersteinova modelu byla nelinearita modelu vyrušena a tím bylo dosaženo stejného regulačního pochodu jako kdyby se jednalo o lineární systém. Naproti tomu regulační pochod, jehož průbéh je na Obr. 13, u kterého byla nelinearita systému zanedbána a identifikace byla prováděna jako by se jednalo o lineární systém, vykazoval sice rychlejší náběhy regulované veličiny, ale průběh akčního zásahu byl horší v důsledku zanedbání nelinearity systému.

Tento článek měl za cíl ukázat jeden z přístupů, jak je možné řešit identifikaci a následný návrh regulátoru pro nelineární systémy. Hammerteinův model je možné použít jen tehdy, kdy se jedná o jednoduchou nelinearitu. Při složitější nelinearitě je nutné zjistit, zda je možné nalézt inverzní funkci k funkci popisující nelineární statickou část systému.

Poděkování

Tato práce vznikla za podpory výzkumného záměru Ministerstva školství mládeže a tělovýchovy České Republiky MSM 7088352101 a grantu Univerzity Tomáše Bati ve Zlíně IGA/55/FAI/10/D.

Použitá literatura

  1. NELLES, Oliver. Nonlinear System Identification. Germany : Springer, 2001. 422 s.
  2. SÖDERSTRÖM, Torsten; STOICA, Petre. System identification. UK : Prentice Hall, 1989. 612 s.
  3. LJUNG, Lennart. System identification: Theory for the User. USA : P T R Prentice Hall, 1987. 519 s.
  4. GIRI, F., et al. HAMMERSTEIN MODEL IDENTIFICATION. MED 2002 [online]. 2002, č. 193, [cit. 2010-11-01]. Dostupný z WWW: <http://med.ee.nd.edu/MED10/pdf/193.pdf>.
  5. AL-DUWAISH, H; NAEEM, W. Nonlinear Model Predicitive Control of Hammerstein and Wiener Models Using Genetic Algorithms. IEEE Conference on Control Applications, Mexico. 2000

Napísať príspevok