Podręcznik

Strona: SEZAM - System Edukacyjnych Zasobów Akademickich i Multimedialnych
Kurs: Modelowanie obiektów nieliniowych
Książka: Podręcznik
Wydrukowane przez użytkownika: Gość
Data: niedziela, 5 stycznia 2025, 18:07

1. Równania stanu dla obiektów nieliniowych

Przykłady modelowania podane są w kolejnych podrozdziałąch.

1.1. Przykład modelowania układu trzech zbiorników

Kwestia modelowania obiektów nieliniowych zostanie najpierw omówiona na przykładzie układu trzech zbiorników (Rys. 1.1). W układzie trzech zbiorników ciecz dopływa do pierwszego zbiornika ze ze sterowanym natężeniem  Q_{we}(t) generowanym przez pompę.   Q_{we}(t) pełni zatem rolę sygnału sterującego lub sygnału wejściowego. Pod wpływem różnicy ciśnień słupa cieczy, ciecz przepływa  pomiędzy zbiornikiem pierwszym a zbiornikiem drugim z natężeniem  Q_{12}(t) oraz pomiędzy zbiornikiem drugim a trzecim z natężeniem  Q_{23}(t) . Wreszcie, również pod wpływem ciśnienia generowanego przez słup cieczy, ciecz wypływa ze zbiornika trzeciego z natężeniem  Q_{3}(t) . Ściany zbiorników są prostopadłe do ich podstaw, a pola podstaw zbiorników w naszym przykładzie wynoszą odpowiednio  A_1 = A ,  A_2 = A oraz  A_3 = 2A , gdzie  A > 0 jest stałą.


Rysunek 1.1 Schemat układu trzech zbiorników.

Naszym nadrzędnym celem jest regulacja poziomów cieczy w zbiornikach, które oznaczamy jako   H_1(t) ,   H_2(t) oraz   H_3(t) . Z tego względu zależy nam na sformułowaniu opisu zmian w czasie poziomów cieczy w zbiornikach. Jak się okaże w trakcie dalszych rozważań, dla obiektu z jednym sygnałem sterującym (w naszym przypadku   Q_{we} ) niemożliwa jest niezależna regulacja poziomów wody w każdym trzech zbiorników. Możemy swobodnie regulować poziom cieczy w jednym ze zbiorników, natomiast poziomy cieczy w pozostałych zbiornikach będą wynikały z własności układu. Ten poziom, który chcemy swobodnie zmieniać pełni rolę sygnału wyjściowego. Przyjmujemy, że sygnałem wyjściowym w naszym układzie jest poziom cieczy w trzecim zbiorniku   H_3(t) .

W niniejszym kursie skupiamy się na obiektach, które można opisać za pomocą układu równań różniczkowych zwyczajnych i właśnie taki opis sformułujemy dla układu trzech zbiorników. Proces tworzenia modelu obiektu zaczynamy od sformułowania równań fizycznych opisujących różne procesy zachodzące w obiekcie, a następnie przekształcamy te równania do dogodniejszej postaci. W przypadku układu trzech zbiorników trzon modelu stanowią równania bilansu objętości cieczy w każdym zbiorniku. Zakładamy, że ciecz jest nieściśliwa, dlatego równania bilansu objętości są równoważne z zasadą zachowania masy. Równania bilansu objętości formułujemy w postaci różniczkowej wg ogólnego schematu:

szybkość zmian objętości cieczy = natężenie dopływu cieczy - natężenie odpływu cieczy


Odpowiednie równania różniczkowe dla trzech zbiorników mają postać

 \begin{matrix}
\dfrac{dV_1(t)}{dt} &=& Q_{we}(t) - Q_{12}(t)  \qquad(1.1)\\
\dfrac{dV_2(t)}{dt} &=& Q_{12}(t) - Q_{23}(t) \qquad(1.2)\\
\dfrac{dV_3(t)}{dt} &=& Q_{23}(t) - Q_{3}(t) \qquad(1.3)
\end{matrix}

gdzie objętości cieczy $ V_1(t) $, $ V_2(t) $ oraz $ V_3(t) $ w zbiornikach wynoszą 

 \begin{matrix}

V_1(t) &=& A_1 H_1(t) = A\cdot H_1(t)  \qquad(1.4)\\

V_2(t) &=& A_2 H_2(t) = A\cdot H_2(t)  \qquad(1.5)\\

V_3(t) &=& A_3 H_3(t) = 2A\cdot H_3(t)  \qquad(1.6)

\end{matrix}

Kolejne równania określają przepływ cieczy pomiędzy zbiornikami. Przepływ cieczy /( Q /) przez przewód lub zawór jest zwykle modelowany za pomocą równania

 \begin{equation}

Q=k\sqrt{\Delta p}

\qquad(1.7)

\end{equation}

gdzie  \Delta p = p_a-p_b oznacza różnicę ciśnień na końcach  a i  b przewodu (lub zaworu), natomiast  k jest stałą zależną od właściwości cieczy i geometrii przewodu. Przepływy  Q_{12} ,  Q_{23} oraz  Q_{3} są wymuszane przez ciśnienia hydrostatyczne generowane przez słupy cieczy. Ciśnienie hydrostatyczne  p jest dane wzorem 

 \begin{equation}

p = p_{atm}+\rho g H

\qquad(1.8)

\end{equation}

gdzie  p_{atm} - ciśnienie atmosferyczne,  \rho - gęstość cieczy,  g - przyśpieszenie ziemskie,  H wysokość słupa cieczy.   Jeżeli wstawimy zależność (1.8) do równania (\1.7) to otrzymamy

 \begin{eqnarray}

Q&=&k\sqrt{\Delta p} = k\sqrt{p_a-p_b} = k\sqrt{p_{atm}+\rho g H_a-p_{atm}-\rho g H_b}  \qquad(1.9)\\ 

&=& k\sqrt{\rho g H_a-\rho g H_b} = k\sqrt{\rho g \Delta H} = k\sqrt{\rho g} \sqrt{ \Delta H} = \alpha \sqrt{ \Delta H} \qquad(1.10)

\end{eqnarray}

gdzie  \alpha = k\sqrt{\rho g}  jest stałą, a  \Delta H = H_a-H_b to różnica wysokości słupów cieczy na końcach  a i  b przewodu. Dla uproszczenia opisu zakładamy, że wszystkie przewody przepływowe (lub zawory) są identyczne i współczynnik  \alpha jest taki sam dla przepływów  Q_{12} ,  Q_{23} oraz  Q_{3} . Przepływy między zbiornikami są zatem dane wzorami

 \begin{eqnarray}

Q_{12}(t) &=& \alpha \sqrt{H_1(t)-H_2(t)} \qquad(1.11)\\

Q_{23}(t) &=& \alpha \sqrt{H_2(t)-H_3(t)} \qquad(1.12)\\

Q_{3}(t) &=& \alpha \sqrt{H_3(t)-0} = \alpha \sqrt{H_3(t)} \qquad(1.13) 

\end{eqnarray}

Powyższe wzory są prawidłowe pod warunkiem, że wyrażenia pod pierwiastkami są nieujemne. W przypadku, gdy znak wyrażenia pod pierwiastkiem mógłby się zmieniać należałoby zastosować wzór

 \begin{equation}

Q = sgn (\Delta H) \alpha \sqrt{| \Delta H|} \qquad(1.14)

\end{equation}

gdzie operator  sgn(\cdot) zwraca znak wyrażenia. Wykorzystanie wyrażenia  sgn(\cdot) wprowadza jednak nieciągłość do opisu obiektu. Dla naszych potrzeb zakładamy, że wyrażenia pod pierwiastkami we wzorach (1.11)-(1.13) są zawsze nieujemne. Jest to uzasadnione założenie, gdyż w układach regulacji rozważamy zachowanie układu w pobliżu punktu pracy, gdzie, jak zobaczymy w kolejnej sekcji, te warunki istotnie są spełnione. 

 Równania (1.1) - (1.6) oraz (1.11)-(1.13) dają nam pełny opis zjawisk fizycznych zachodzących w układzie trzech zbiorników. Zauważmy, że nie uwzględniliśmy w opisie obiektu wszystkich zjawisk np.: możliwego przelania się cieczy w zbiornikach, nieszczelności prowadzących do wycieków lub przytykania się zaworów. Stopień szczegółowości opisu obiektu jest uzależniony od tego, do jakich celów jest wykorzystywany model. Jeżeli model miałby być wykorzystywany do celów diagnostyki opis ww. zjawisk byłby niezbędny. Naszym celem jest jednak przestudiowanie procesu syntezy układu regulacji i do tego celu zaprezentowany sposób opisu układu jest wystarczający. 

Kolejnym krokiem przy formułowaniu modelu obiektu nieliniowego jest przekształcenie równań fizycznych do równoważnej, ale dogodniejszej postaci. W przypadku układów regulacji, jak i całej teorii sterowania równania różniczkowe są przedstawiane standardowo w postaci tzw. równań stanu. Teraz dokonamy przekształcenia równań fizycznych układu trzech zbiorników do postaci równań stanu, by następnie omówić cechy charakterystyczne tej postaci.

Wstawiając zależności (1.11)-(1.13) do równań (1.1)-(1.3) otrzymujemy

 \begin{eqnarray}

\frac{dV_1(t)}{dt} &=& Q_{we}(t) - \alpha \sqrt{H_1(t)-H_2(t)} \qquad(1.15) \\

\frac{dV_2(t)}{dt} &=& \alpha \sqrt{H_1(t)-H_2(t)} - \alpha \sqrt{H_2(t)-H_3(t)} \qquad(1.16)\\

\frac{dV_3(t)}{dt} &=& \alpha\sqrt{H_2(t)-H_3(t)} - \alpha \sqrt{H_3(t)} \qquad(1.17)

\end{eqnarray}

Ponieważ pole podstawy zbiornika jest stałe, pochodna objętości cieczy w każdym zbiorniku spełnia warunek

 \begin{equation}

\dfrac{dV(t)}{dt} = \dfrac{d(A\cdot H(t))}{dt} = A \cdot \dfrac{dH(t)}{dt}

\qquad(1.18)

\end{equation}

Wstawiając (1.18) do wzorów (1.15)-(1.17) otrzymujemy

 \begin{eqnarray}

A\frac{d H_1(t)}{dt}&=& Q_{we}(t) - \alpha \sqrt{H_1(t)-H_2(t)} \qquad(1.19) \\

A\frac{d H_2(t)}{dt} &=& \alpha \sqrt{H_1(t)-H_2(t)} - \alpha \sqrt{H_2(t)-H_3(t)} \qquad(1.20)\\

2A\frac{d H_3(t)}{dt} &=& \alpha\sqrt{H_2(t)-H_3(t)} - \alpha \sqrt{H_3(t)} \qquad(1.21)

\end{eqnarray}

Podzielmy jeszcze obie strony każdego równań (1.19)-(\1.21) przez wartość odpowiedniego pola powierzchni podstawy zbiornika, aby otrzymać równania stanu dla układu trzech zbiorników

 \begin{eqnarray}

\frac{d H_1(t)}{dt} &=& \frac{1}{A}Q_{we}(t) - \frac{\alpha}{A} \sqrt{H_1(t)-H_2(t)} \qquad(1.22) \\

\frac{d H_2(t)}{dt} &=& \frac{\alpha}{A}  \sqrt{H_1(t)-H_2(t)} - \frac{\alpha}{A}  \sqrt{H_2(t)-H_3(t)} \qquad(1.23) \\

\frac{d H_3(t)}{dt} &=& \frac{\alpha}{2A} \sqrt{H_2(t)-H_3(t)} - \frac{\alpha}{2A} \sqrt{H_3(t)} \qquad(1.24)

\end{eqnarray}

 Powyższe równania są równoważne równaniom fizycznym układu, jednak jest kilka cech wyróżniających równania stanu od innych równoważnych postaci. Po lewej stronie każdego z równań stanu znajduje się jedynie pochodna wysokości słupa cieczy w odpowiednim zbiorniku. Zmienne, których pochodne znajdują się po lewych stronach równań stanu nazywane są  zmiennymi stanu. Dla układu trzech zbiorników zmiennymi stanu są  H_1 ,  H_2 oraz  H_3 . Po prawej stronie każdego z równań stanu znajduje się (być może skomplikowana i nieliniowa) funkcja. Argumentami tej funkcji mogą być jedynie trzy kategorie zmiennych

  • zmienne stanu 
  • sygnały sterujące
  • stałe

W rozważanym przykładzie zmiennymi stanu są  H_1 ,  H_2 oraz  H_3 , sygnałem sterującym jest   Q_{we} , natomiast stałymi są   A oraz   \alpha . Z równań stanu zostały wyeliminowane inne zmienne (przepływy i objętości), pośrednio związane ww. zmiennymi. 

Aby rozwiązać równania stanu czy to analitycznie, czy numerycznie, konieczne jest określenie warunków początkowych dla zmiennych stanu tzn. wielkości   H_1(t_0) ,   H_2(t_0) oraz   H_3(t_0) , gdzie   t_0 jest wybraną chwilą początkową. Konieczna jest też znajomość wartości sygnału sterującego   Q_{we}(t) na całym rozważanym horyzoncie czasu. 

Równania stanu układu trzech zbiorników można rozwiązać numerycznie w środowisku MATLAB®. Na potrzeby symulacji przyjmujemy następujące wartości parametrów obiektu    A = 0.5   ,    \alpha = 1 . Na Rys. 1.2 przedstawiono przykładowe trajektorie stanów obiektu uzyskane dla stałego przepływu cieczy przez pompę    Q_{we}(t) =0.5 i zerowych warunków początkowych

Rysunek 1.2 Trajektorie poziomów cieczy w zbiornikach dla stałego sterowania i zerowych warunków początkowych.

Przedstawione przebiegi ilustrują proces napełniania zbiorników cieczą. Początkowo puste zbiorniki napełniają się do pewnych poziomów aż do momentu, w którym w obiekcie ustali się równowaga przepływów. Po ustaleniu się równowagi przepływów, nie następują już dalsze zmiany poziomów cieczy. 

Na Rys. 1.3 przedstawiono trajektorie sterowania i stanów obiektu uzyskane dla stałego przepływu cieczy przez pompę  Q_{we}(t) =0.5 i niezerowych warunków początkowych   H_1(t_0) =0.8 ,   H_2(t_0) =0.4 ,   H_3(t_0)=0.3 .

Rysunek 1.3 Trajektorie poziomów cieczy w zbiornikach dla stałego sterowania i niezerowych warunków początkowych.


Rysunek 1.4 Trajektorie zmiennych poziomów cieczy w zbiornikach dla niezerowych warunków początkowych i sterowania w kształcie fali prostokątnej.

Poziomy cieczy w zbiornikach zmieniają się aż do chwili w której powstanie w obiekcie równowaga przepływów. Po ustaleniu się równowagi przepływów, nie następują już dalsze zmiany poziomów cieczy. Zauważmy, że poziomy cieczy ustaliły się na takich samych wartościach jak w przypadku napełniania pustych zbiorników. Ponieważ tym razem zbiorniki są w chwili początkowej napełnione do pewnych niezerowych poziomów, to czas ustalenia się równowagi przepływów jest krótszy niż w przypadku napełniania pustych zbiorników. 

Na Rys. 1.4 przedstawione zostały trajektorie sterowań i stanów obiektu dla niezerowych warunków początkowych   H_1(t_0) =0.8 ,  H_2(t_0) =0.4 ,  H_3(t_0)=0.3 i sygnału sterującego typu fala prostokątna.

Amplituda wahań  Q_{we}(t) wokół wartości 0.5 wynosi 0.1. Wypełnienie fali wynosi 50\%, natomiast jej okres wynosi 2. Poziomy cieczy we wszystkich zbiornikach doznają wahań. Dla kolejnych zbiorników następuje stopniowe wygładzanie przebiegów i spadek amplitudy wahań. Symulacja numeryczna pozwala analizować zachowanie obiektu także dla innych przebiegów sygnału sterującego  Q_{we}(t) .

1.2. Przykład modelowania wahadła matematycznego

W niniejszej sekcji sformułujemy model odwróconego wahadła matematycznego w postaci równań stanu. Schemat wahadła został przedstawiony na Rys. 1.5.

Rysunek 1.5 Schemat wahadła matematycznego.

Masa  m jest osadzona na sztywnym przegubowym pręcie o długości  l (pomijamy masę pręta). W przegubie podawany jest sterowany moment siły  M , a na masę  m działa siła przyciągania ziemskiego ( g - przyciąganie ziemskie). W przegubie generuje się też moment tarcia proporcjonalny do prędkości kątowej wahadła. Kąt odchylenie pręta od osi pionowej jest oznaczony jako  \theta . Równanie fizyczne opisujące układ to równanie Newtona dla ruchu obrotowego. Ogólna postać tego równania to

 \begin{equation}

        I\epsilon(t) = \sum_{i} M_i(t)

        \qquad(1.25)

        \end{equation}

tzn. iloczyn momentu bezwładności ciała  I i przyśpieszenia kątowego  \epsilon jest równy sumie momentów sił  M_i działających na ciało. Moment bezładności wahadła obliczamy przy upraszczającym założeniu o punktowości masy  m i pomijalnej masie pręta. W takim przypadku mamy

 \begin{equation}

        I = ml^2

        \qquad(1.26)

        \end{equation}

przyśpieszenie kątowe jest równe drugiej pochodnej położenia kątowego

 \begin{equation}

        \epsilon(t) = \dfrac{d^2\theta(t)}{dt^2}

        \qquad(1.27)

        \end{equation}

Na ciało działa moment bezwładności w przegubie  M , moment tarcia  M_t oraz moment siły generowany przez siłę przyciągania ziemskiego  M_g

 \begin{equation}

        \sum_{i} M_i(t) = M(t) + M_t(t) + M_g(t) \qquad(1.28)

        \end{equation}

Moment tarcia jest proporcjonalny do prędkości kątowej  \omega , ze współczynnikiem proporcjonalności  D

 \begin{equation}

        M_t(t) = -D\omega(t) = -D\dfrac{d\theta(t)}{dt} \qquad(1.29)

        \end{equation}

Znak minus wskazuje na to, że moment tarcia działa przeciwnie do aktualnej prędkości kątowej. Moment siły od grawitacji jest równy iloczynowi siły ciążenia  F_g=mg , długości ramienia  l na którym działa siła grawitacji oraz sinusowi kąta pomiędzy ramieniem a wektorem siły 

 \begin{equation}

        M_g(t) = F_g\cdot l \cdot sin\theta(t) = mglsin\theta(t)

        \qquad(1.30)

        \end{equation}

Wstawiając zależności (1.26)-(1.30) do równania (1.25) otrzymujemy

 \begin{equation}

        ml^2 \dfrac{d^2\theta(t)}{dt^2} = mglsin\theta(t) - D \dfrac{d\theta(t)}{dt} + M(t) \qquad(1.31)

        \end{equation}

  Po podzieleniu obu stron równania przez  ml^2 otrzymujemy

 \begin{equation}

        \dfrac{d^2\theta(t)}{dt^2} = \dfrac{g}{l}sin\theta(t) - \dfrac{D}{ml^2} \dfrac{d\theta(t)}{dt} +\dfrac{1}{ml^2} M(t)

        \qquad(1.32)

        \end{equation}

Równanie różniczkowe (1.32) jest równaniem drugiego rzędu. Równania stanu są równaniami pierwszego rzędu. Możemy przekształcić równanie (1.32) do dwóch równań pierwszego rzędu poprzez wprowadzenie do równań zmiennej oznaczającej prędkość kątowej

 \begin{equation}

        \omega = \dfrac{d\theta(t)}{dt} \qquad(1.33)

        \end{equation}

Pierwsza pochodna prędkości kątowej jest równa drugiej pochodnej położenia kątowego 

 \begin{equation}

        \dfrac{d\omega(t)}{dt} = \dfrac{d^2\theta(t)}{dt^2} \qquad(1.34)

        \end{equation}

Wprowadzając powyższe zależności do (1.32) otrzymujemy równania stanu wahadła

 \begin{eqnarray}

        \dfrac{d\theta(t)}{dt} &=& \omega(t) \qquad(1.35)\\

        \dfrac{d\omega(t)}{dt} &=& \dfrac{g}{l}sin\theta(t) - \dfrac{D}{ml^2} \omega(t) +\dfrac{1}{ml^2} M(t) \qquad(1.36)

        \end{eqnarray}

W opisie wahadła zmiennymi stanu są  \theta oraz  \omega , sygnałem sterującym jest moment siły  M , natomiast stałymi są  g ,  l ,  m oraz  D . Jako sygnał wyjściowy z układu przyjmujemy położenie kątowe  \theta . Aby rozwiązać równania stanu, konieczne jest określenie warunków początkowych dla zmiennych stanu tzn. wielkości  \theta(t_0) oraz  \omega(t_0) , gdzie  t_0 jest wybraną chwilą początkową. Konieczna jest też znajomość wartości sygnału sterującego  M(t) na całym rozważanym horyzoncie czasu.

Równania stanu dla wahadła można rozwiązać numerycznie w środowisku MATLAB®. Na potrzeby symulacji przyjmujemy następujące wartości parametrów obiektu  m = 0.1 ,  l = 1 ,  g = 10 ,  D = 0.1 . Na Rys. 1.6 przedstawiono przykładowe trajektorie stanów obiektu uzyskane dla stałego momentu  M(t) = -0.5 i warunków początkowych  \theta(t_0) = \dfrac{\pi}{2} ,  \omega(t_0) = 0

Rysunek 1.6 Trajektorie położenia i prędkości kątowej wahadła dla stałego sterowania.

Wahadło znajdujące się początkowo w położeniu horyzontalnym spada w dół, gdyż moment od siły ciążenia przeważa nad momentem generowanym w przegubie. Następnie, ze względu na obecność tarcia w przegubie, wahadło wykonuje oscylacje gasnące. Wreszcie wahadło stabilizuje się w położeniu, w którym moment od siły ciążenia i  M wyrównują się. Po ustabilizowaniu się wahadła w pewnym położeniu kątowym, jego prędkość kątowa wynosi 0. 

Na Rys. 1.7 przedstawione zostały trajektorie stanów obiektu dla  warunków początkowych  \theta(t_0) = \dfrac{\pi}{2} ,  \omega(t_0) = 0 i sygnału sterującego typu fala prostokątna. Amplituda wahań  M(t) wokół wartości -0.5 wynosi 0.1. Wypełnienie fali wynosi 50 %, natomiast jej okres wynosi 2. Po początkowej fazie przejściowej wahadło wykonuje oscylacje o ustalonej amplitudzie.

Rysunek 1.7 Trajektorie położenia i prędkości kątowej wahadła dla sterowania w kształcie fali prostokątnej.



1.3. Równania stanu w postaci ogólnej

Standardowo zmienne stanu są oznaczane jako  x_1,x_2,\cdots,x_j,\cdots,x_n
, natomiast zmienne sterujące jako  u_1,u_2,\cdots,u_k,\cdots,u_m . W naszych rozważaniach odnośnie układów regulacji nie będziemy badać wpływu wartości stałych na własności modelu (tzw. {\bf analiza wrażliwościowa}), dlatego nie trzeba osobno oznaczać stałych i można je traktować jako część definicji funkcji prawych stron. Równania stanu mają w ogólnym przypadku postać

 \begin{eqnarray}

\dfrac{dx_1(t)}{dt} &=& f_1(x_1(t),\cdots,x_j(t),\cdots,x_n(t),u_1(t),\cdots,u_k(t),\cdots,u_m(t)) \qquad(1.37) \\

&\vdots& \\

\dfrac{dx_i(t)}{dt} &=& f_i(x_1(t),\cdots,x_j(t),\cdots,x_n(t),u_1(t),\cdots,u_k(t),\cdots,u_m(t)) \qquad(1.38) \\

&\vdots& \nonumber \\

\dfrac{dx_n(t)}{dt} &=& f_n(x_1(t),\cdots,x_j(t),\cdots,x_n(t),u_1(t),\cdots,u_k(t),\cdots,u_m(t)) \qquad(1.39)

\end{eqnarray}

gdzie  f_1,\cdots,f_i,\cdots,f_n oznaczają (w ogólnym przypadku nieliniowe) funkcje prawych stron równań stanu.

 Dla skrócenia zapisu tworzy się wektory zmiennych stanu oraz zmiennych sterujących

 \begin{equation}

x(t) = \left(

               \begin{array}{c}

               x_1(t)\\ \vdots\\ x_j(t) \\ \vdots\\ x_n(t)

               \end{array}

\right),\

u(t) = \left(

               \begin{array}{c}

               u_1(t)\\ \vdots\\ u_k(t) \\ \vdots\\ u_m(t)

               \end{array}

\right) \qquad(1.40) \end{equation}

Równania stanu (1.37)-(1.39}) przyjmują wtedy postać

 \begin{eqnarray}

\dfrac{dx_1(t)}{dt}  &=& f_1(x(t),u(t)) \qquad(1.41) \\

&\vdots& \nonumber \\

\dfrac{dx_i(t)}{dt} &=& f_i(x(t),u(t))  \qquad(1.42)\\

&\vdots& \nonumber \\

\dfrac{dx_n(t)}{dt} &=& f_n(x(t),u(t)) \qquad(1.43)

\end{eqnarray}

Jeżeli wprowadzimy nowe wektory

 \begin{equation}

\dfrac{dx(t)}{dt} = \left(

\begin{array}{c}

\dfrac{dx_1(t)}{dt} \\ \vdots\\ \dfrac{dx_i(t)}{dt}  \\ \vdots\\ \dfrac{dx_n(t)}{dt}

\end{array}

\right),\

f(x(t),u(t)) = \left(

\begin{array}{c}

f_1(x(t),u(t))\\ \vdots\\ f_i(x(t),u(t)) \\ \vdots\\ f_n(x(t),u(t))

\end{array}

\right)

\end{equation}\qquad(1.44)

to równania (1.41)-(1.43) upraszczają się do postaci

 \begin{equation}

\dfrac{dx(t)}{dt} = f(x(t),u(t)) \label{eq:ch1:rownaniaStanuWektorowo}\qquad(1.45

\end{equation})

Często pomija się także podawanie czasu jako argumentu zmiennych stanu i sterowań, i równania stanu przyjmują postać

 \begin{equation}

\dfrac{dx}{dt} = f(x,u) \qquad(1.46)

\end{equation}

Można również rozważać równania stanu, w których zmienna czasu występuje w sposób jawny

 \begin{equation}

\dfrac{dx(t)}{dt} = f(x(t),u(t),t)  \qquad(1.47)

\end{equation}

W takim przypadku w równaniach stanu oprócz zmiennych stanu, sterowań i stałych mogą pojawiać się funkcje czasu np.:  sin(\dfrac{t}{1+t^2})
. Obiekty w których opisie jawnie występuje zmienna  t nazywamy  niestacjonarnymi, natomiast obiekty w których opisie nie występuje jawnie zmienna  t nazywamy stacjonarnymi. W naszych rozważaniach skupiamy się na obiektach stacjonarnych, ale analogiczne rozważania można przeprowadzić także dla układów niestacjonarnych.

Aby rozwiązać równania stanu w postaci ogólnej, konieczne jest określenie warunków początkowych dla zmiennych stanu tzn. wielkości 
x_1(t_0) ,..., x_j(t_0) ,..., x_n(t_0) , gdzie  t_0 jest wybraną chwilą początkową. Warunki początkowe można zapisać w postaci wektorowej wprowadzając oznaczenie

 \begin{equation}

x(t_0) = \left(

\begin{array}{c}

x_1(t_0)\\ \vdots\\ x_j(t_0) \\ \vdots\\ x_n(t_0)

\end{array}

\right) \qquad(1.48)

\end{equation}

Równania stanu dla układu trzech zbiorników

 \begin{eqnarray}

\dfrac{d H_1(t)}{dt} &=& \dfrac{1}{A}Q_{we}(t) - \dfrac{\alpha}{A} \sqrt{H_1(t)-H_2(t)} \qquad(1.49) \\

\dfrac{d H_2(t)}{dt} &=& \dfrac{\alpha}{A}  \sqrt{H_1(t)-H_2(t)} - \dfrac{\alpha}{A}  \sqrt{H_2(t)-H_3(t)} \qquad(1.50) \\

\dfrac{d H_3(t)}{dt} &=& \dfrac{\alpha}{2A} \sqrt{H_2(t)-H_3(t)} - \dfrac{\alpha}{2A} \sqrt{H_3(t)} \qquad(1.51)

\end{eqnarray}

można zapisać w  ogólnej postaci wektorowej (1.45) poprzez wprowadzenie oznaczeń

 \begin{eqnarray}

x(t)  &=& \left(

\begin{array}{c}

x_1(t)\\ x_2(t) \\ x_3(t)

\end{array}

\right)

 = \left(

\begin{array}{c}

H_1(t)\\ H_2(t) \\ H_3(t)

\end{array}

\right) \qquad(1.52)\\

x(t_0)  &=& \left(

\begin{array}{c}

x_1(t_0)\\ x_2(t_0) \\ x_3(t_0)

\end{array}

\right)

= \left(

\begin{array}{c}

H_1(t_0)\\ H_2(t_0) \\ H_3(t_0)

\end{array}

\right) \qquad(1.53)\\

\dfrac{dx(t)}{dt} &=& \left(

\begin{array}{c}

\dfrac{dx_1(t)}{dt} \\ \dfrac{dx_2(t)}{dt}  \\ \dfrac{dx_3(t)}{dt}

\end{array}

\right) = \left(

\begin{array}{c}

\dfrac{dH_1(t)}{dt} \\ \dfrac{dH_2(t)}{dt}  \\ \dfrac{dH_3(t)}{dt}

\end{array}

\right) \qquad(1.54)\\

u(t) &=& \left(u_1(t)\right) = \left(Q_{we}(t)\right)\qquad(1.55)

\end{eqnarray}

oraz

 \begin{eqnarray}

f(x(t),u(t)) &=& \left(

\begin{array}{c}

f_1(x_1(t),x_2(t),x_3(t),u_1(t)) \\

f_2(x_1(t),x_2(t),x_3(t),u_1(t)) \\

f_3(x_1(t),x_2(t),x_3(t),u_1(t))

\end{array}

\right) \\ &=& \left(

\begin{array}{c}

f_1(H_1(t),H_2(t),H_3(t),Q_{we}(t)) \\

f_2(H_1(t),H_2(t),H_3(t),Q_{we}(t)) \\

f_3(H_1(t),H_2(t),H_3(t),Q_{we}(t))

\end{array}

\right) = \nonumber\\

&=&\left(

\begin{array}{c}

\dfrac{1}{A}Q_{we}(t) - \dfrac{\alpha}{A} \sqrt{H_1(t)-H_2(t)} \\  \dfrac{\alpha}{A}  \sqrt{H_1(t)-H_2(t)} - \dfrac{\alpha}{A}  \sqrt{H_2(t)-H_3(t)} \\  \dfrac{\alpha}{2A} \sqrt{H_2(t)-H_3(t)} - \dfrac{\alpha}{2A} \sqrt{H_3(t)}

\end{array}

\right) \qquad(1.56)

\end{eqnarray}

 Równania stanu dla wahadła

 \begin{eqnarray}

\dfrac{d\theta(t)}{dt} &=& \omega(t) \qquad(1.57) \\

\dfrac{d\omega(t)}{dt} &=& \dfrac{g}{l}sin\theta(t)  - \dfrac{D}{ml^2} \omega(t) +\dfrac{1}{ml^2} M(t) \qquad(1.58)

\end{eqnarray}

można zapisać w postaci ogólnej (1.45) poprzez wprowadzenie oznaczeń

 \begin{eqnarray}

x(t) &=& \left(

\begin{array}{c}

x_1(t)\\ x_2(t)

\end{array}

\right) = \left(

\begin{array}{c}

\theta(t)\\ \omega(t)

\end{array}

\right) \qquad(1.59)\\

x(t_0) &=& \left(

\begin{array}{c}

x_1(t_0)\\ x_2(t_0)

\end{array}

\right) = \left(

\begin{array}{c}

\theta(t_0)\\ \omega(t_0)

\end{array}

\right) \qquad(1.60)\\

\dfrac{dx(t)}{dt} &=& \left(

\begin{array}{c}

\dfrac{dx_1(t)}{dt} \\ \dfrac{dx_2(t)}{dt} 

\end{array}

\right) = \left(

\begin{array}{c}

\dfrac{d\theta(t)}{dt} \\ \dfrac{d\omega(t)}{dt} 

\end{array}

\right) \qquad(1.61)\\

u(t) &=& \left(u_1(t)\right) = \left(M(t)\right)\qquad(1.62)

\end{eqnarray}

oraz

 \begin{eqnarray}

f(x(t),u(t)) &=& \left(

\begin{array}{c}

f_1(x_1(t),x_2(t),u_1(t)) \\  f_2(x_1(t),x_2(t),u_1(t))

\end{array}

\right) \\

&=& \left(

\begin{array}{c}

f_1(\theta(t),\omega(t),M(t)) \\  f_2(\theta(t),\omega(t),M(t))

\end{array}

\right) \nonumber \\

&=& \left(

\begin{array}{c}

\omega(t) \\  \dfrac{g}{l}sin\theta(t)  - \dfrac{D}{ml^2} \omega(t) +\dfrac{1}{ml^2} M(t)

\end{array}

\right) \nonumber

\end{eqnarray}


W przykładzie z wahadłem musieliśmy przekształcić równanie różniczkowe wyższego rzędu do układu równań różniczkowych pierwszego rzędu.

Ogólne równanie różniczkowe wyższego rzędu

 \begin{equation}

\dfrac{d^{n} x}{dt^{n}} = f(x,\dfrac{dx}{dt},\dfrac{d^2 x}{dt^2},\cdots,\dfrac{d^{n-1} x}{dt^{n-1}})

\qquad(1.64)

\end{equation}

z warunkami początkowymi  x(t_0), \dfrac{dx(t_0)}{dt}, \cdots,
\dfrac{d^{n-1} x(t_0)}{dt^{n-1}} można przekształcić do układu równań pierwszego rzędu poprzez wprowadzenie nowych zmiennych

 \begin{equation}

x_1 = x, x_2 = \dfrac{dx}{dt}, \cdots, x_n = \dfrac{d^{n-1} x}{dt^{n-1}} \qquad(1.65)

\end{equation}

Równanie (1.64) jest równoważne następującemu układowi równań

 \begin{eqnarray}

\dfrac{dx_1}{dt} &=& x_2 \qquad(1.66)\\ \dfrac{dx_2}{dt} &=& x_3\qquad(1.67) \\ &\vdots& \nonumber \\ \dfrac{dx_i}{dt} &=& x_{i+1} \qquad(1.68)\\ &\vdots& \nonumber 

\\ \dfrac{dx_{n-1}}{dt} &=& x_{n} \qquad(1.69)\\  \dfrac{dx_{n}}{dt} &=& f(x_1,x_2,\cdots,x_i,\cdots,x_n)\qquad(1.70)

\end{eqnarray}

z warunkami początkowymi

 \begin{equation}

x_1(t_0) = x(t_0), x_2(t_0) = \dfrac{dx(t_0)}{dt}, \cdots, x_n(t_0) = \dfrac{d^{n-1} x(t_0)}{dt^{n-1}} \qquad(1.71)

\end{equation}

1.4. Równania wyjść

Uzupełnieniem równań stanu są {\bf równania wyjść}. Wyjścia układu są zwykle oznaczane jako  y_1,\cdots,y_i,\cdots,y_p . Równania wyjść są równaniami algebraicznymi, a argumentami funkcji wyjść są zmienne stanu. Układ równań wyjść ma następującą ogólną postać 

 \begin{eqnarray}

y_1(t) &=& g_1(x_1(t),\cdots,x_j(t),\cdots,x_n(t)) \qquad(1.72) \\

&\vdots& \nonumber \\ 

y_i(t) &=& g_i(x_1(t),\cdots,x_j(t),\cdots,x_n(t)) \qquad(1.73) \\

&\vdots& \nonumber \\ 

y_p(t) &=& g_p(x_1(t),\cdots,x_j(t),\cdots,x_n(t)) \qquad(1.74)

\end{eqnarray}

Wprowadzając wektor zmiennych stanu  x(t) = (x_1(t), \cdots, x_j(t), \cdots, x_n(t))^T otrzymujemy

 \begin{eqnarray}

y_1(t) &=& g_1(x(t)) \qquad(1.75) \\

&\vdots& \nonumber \\ 

y_i(t) &=& g_i(x(t)) \qquad(1.76) \\

&\vdots& \nonumber \\ 

y_p(t) &=& g_p(x(t)) \qquad(1.77) 

\end{eqnarray}

Jeżeli wprowadzimy nowe wektory

 \begin{equation}

y(t) = \left(

\begin{array}{c}

y_1(t)\\ \vdots\\ y_i(t) \\ \vdots\\ y_p(t)

\end{array}

\right),\ 

g(x(t)) = \left(

\begin{array}{c}

g_1(x(t))\\ \vdots\\ g_i(x(t)) \\ \vdots\\ g_p(x(t))

\end{array}

\right)\qquad(1.78)

\end{equation}

to równania wyjść można zapisać w postaci wektorowej

 \begin{equation}

y(t) = g(x(t))

\qquad(1.79)

\end{equation}

 Można rozważać układy w których zmienne wyjściowe zależą jawnie od sygnałów sterujących

 \begin{equation}

y(t) = g(x(t), u(t))

\end{equation}\qquad(1.80)

w naszych układach skupiamy się jednak na układach w których wyjścia zależą jedynie od stanów obiektu. 

Równania wyjść w przykładowych obiektach są wyjątkowo proste. Dla układu trzech zbiorników mamy

 \begin{eqnarray}

y(t) &=& (y_1(t)) = (H_3(t)) \qquad(1.81)\\

y(t) &=& g(x(t)) = (g_1(x_1(t),x_2(t),x_3(t))) = (g_1(H_1(t),H_2(t),H_3(t))) = (H_3(t))\qquad(1.82)

\end{eqnarray}

Dla wahadła mamy

 \begin{eqnarray}

y(t) &=& (y_1(t)) = (\theta(t))\qquad(1.83) \\

y(t) &=& g(x(t)) = (g_1(\theta(t),\omega(t))) = (\theta(t))\qquad(1.84)

\end{eqnarray}

 


2. Charakterystyka statyczna

Charakterystyka statyczna

2.1. Przykłady wyznaczania charakterystyki statycznej

  W układach regulacji interesuje nas zachowanie obiektu w pobliżu tzw. punktu równowagi obiektu. Potocznie przez punkt równowagi rozumiemy taki stan obiektu, w którym obiekt samoczynnie pozostaje (tzn. "nic się w układzie nie zmienia"). Przypomnijmy równania stanu układu trzech zbiorników 

 \begin{eqnarray}

        \frac{d H_1(t)}{dt} &=& \frac{1}{A}Q_{we}(t) - \frac{\alpha}{A} \sqrt{H_1(t)-H_2(t)} \qquad(1.85)\\

        \frac{d H_2(t)}{dt} &=& \frac{\alpha}{A} \sqrt{H_1(t)-H_2(t)} - \frac{\alpha}{A} \sqrt{H_2(t)-H_3(t)} \qquad(1.86) \\

        \frac{d H_3(t)}{dt} &=& \frac{\alpha}{2A} \sqrt{H_2(t)-H_3(t)} - \frac{\alpha}{2A} \sqrt{H_3(t)} \qquad(1.87)

        \end{eqnarray}

W punkcie równowagi sygnały sterujące muszą mieć stałą wartość. W przeciwnym razie zmiany sygnału sterującego będą wymuszać zmiany zmiennych stanu. Oznaczmy wartość sterowania w punkcie pracy jako  Q_{we0} . Punktem równowagi dla układu trzech zbiorników nazwiemy taki stan w którym  H_1(t) ,  H_2(t) oraz  H_3(t) pozostają stałe. Jeżeli wysokości słupów cieczy pozostają stałe, to ich pochodne w punkcie równowagi się zerują. Oznaczmy wartości zmiennych stanu w punkcie równowagi jako  H_{10} ,  H_{20} oraz  H_{30} . Zauważmy, że  H_{10} ,  H_{20} oraz   H_{30} nie są funkcjami czasu, ale stałymi. Z równań stanu obiektu (1.85)-(1.87) i warunku zerowania się pochodnej otrzymujemy

 \begin{eqnarray}

        0 &=& \frac{1}{A}Q_{we0} - \frac{\alpha}{A} \sqrt{H_{10}-H_{20}} \qquad(1.88) \\

        0 &=& \frac{\alpha}{A} \sqrt{H_{10}-H_{20}} - \frac{\alpha}{A} \sqrt{H_{20}-H_{30}} \qquad(1.89) \\

        0 &=& \frac{\alpha}{2A} \sqrt{H_{20}-H_{30}} - \frac{\alpha}{2A} \sqrt{H_{30}} \qquad(1.90)

        \end{eqnarray}

 Powyższe równania mają także prostą interpretację fizyczną. Punkt równowagi w układzie jest wtedy, gdy przepływy  Q_{we} ,  Q_{12} ,  Q_{23} oraz  Q_3 są sobie równe. 

Układ równań algebraicznych (1.88)-(1.90) składa się z trzech równań, w których mamy cztery niewiadome  Q_{we0} ,  H_{10} ,  H_{20} oraz  H_{30} . Oznacza to, że układ posiada więcej niż jeden punkt równowagi. Zbiór wszystkich możliwych punktów równowagi obiektu nazywamy  charakterystyką statyczną obiektu

Aby znaleźć równania charakterystyki statycznej przyjmujemy jedną z niewiadomych jako parametr i rozwiązujemy układ równań  (1.88)-(1.90) względem pozostałych niewiadomych. Ponieważ naszym ostatecznym celem jest regulacja wielkości wyjściowej, to przyjmujemy jako parametr \( H_{30} \( i wyznaczamy wartości  Q_{we0} ,  H_{10} oraz  H_{20} jako funkcje  H_{30}

Równania  (1.88)-(1.90) są nieliniowe, jednak ich rozwiązanie nie jest trudne. Rozpocznijmy rozwiązywanie układu równań od równania (1.90). Różnica dwóch wyrażeń jest równa zero, tylko wtedy gdy te wyrażenia są sobie równe

 \begin{equation}

        \frac{\alpha}{2A} \sqrt{H_{20}-H_{30}} = \frac{\alpha}{2A} \sqrt{H_{30}}

        \end{equation}\qquad(1.91)

Jeżeli wymnożymy obie strony równania przez  \dfrac{2A}{\alpha} to otrzymamy

 \begin{equation}

        \sqrt{H_{20}-H_{30}} = \sqrt{H_{30}}

        \end{equation}\qquad(1.92)

Po podniesieniu obu stron równania do kwadratu otrzymujemy

 \begin{equation}

        H_{20}-H_{30} = H_{30}

        \end{equation}\qquad(1.93)

czyli 

 \begin{equation}

        H_{20} = 2H_{30}

        \qquad(1.94)

        \end{equation}

Okazuje się, że w stanie ustalonym wysokość słupa cieczy w drugim zbiorniku jest dwa razy wyższa niż wysokość wody w trzecim zbiorniku.

Przejdźmy do rozwiązania równania (1.89). Różnica dwóch wyrażeń jest równa zero, tylko wtedy gdy te wyrażenia są sobie równe

 \begin{equation}

        \frac{\alpha}{A} \sqrt{H_{10}-H_{20}} = \frac{\alpha}{A} \sqrt{H_{20}-H_{30}}

        \end{equation}\qquad(1.95)

Jeżeli wymnożymy obie strony równania przez  \dfrac{A}{\alpha} to otrzymamy

 \begin{equation}

        \sqrt{H_{10}-H_{20}} = \sqrt{H_{20}-H_{30}}

        \end{equation}\qquad(1.96)

Po podniesieniu obu stron równania do kwadratu otrzymujemy

 \begin{equation}

        H_{10}-H_{20} = H_{20}-H_{30}

        \end{equation}\qquad(1.97)

czyli 

 \begin{equation}

        H_{10} = 2H_{20}-H_{30}

        \end{equation}\qquad(1.98)

Korzystając z (1..94) mamy

 \begin{equation}

        H_{10} = 2H_{20}-H_{30} = 2\cdot2H_{30}-H_{30} = 3H_{30}

        \qquad(1.99)

        \end{equation}

Okazuje się, że w stanie ustalonym wysokość słupa cieczy w pierwszym zbiorniku jest trzy razy wyższa niż wysokość wody w trzecim zbiorniku.

Przejdźmy do rozwiązania równania (1.88). Różnica dwóch wyrażeń jest równa zero, tylko wtedy gdy te wyrażenia są sobie równe

 \begin{equation}

        \dfrac{1}{A}Q_{we0} = \dfrac{\alpha}{A} \sqrt{H_{10}-H_{20}}

        \end{equation}\qquad(1.100)

Jeżeli wymnożymy obie strony równania przez  A to otrzymamy

 \begin{equation}

        Q_{we0} = \alpha\sqrt{H_{10}-H_{20}}

        \end{equation}\qquad(1.101)

Korzystając z (1.94) oraz (1.99) mamy

 \begin{equation}

        Q_{we0} = \alpha\sqrt{H_{10}-H_{20}} = \alpha\sqrt{3H_{30}-2H_{30}} = \alpha\sqrt{H_{30}}

        \qquad(1.102)

        \end{equation}

Zapiszmy razem równania (1.94), (1.99) oraz (1.102)

 \begin{eqnarray}

        H_{20} &=& 2H_{30} \qquad(1.103) \\

        H_{10} &=& 3H_{30} \qquad(1.104)\\

        Q_{we0} &=& \alpha\sqrt{H_{30}} \qquad(1.105)

        \end{eqnarray}

Definiują one charakterystykę statyczną dla układu trzech zbiorników, gdzie parametrem jest  H_{30} . Często pod pojęciem charakterystyki statycznej obiektu rozumie się zależność wyjść obiektu od wejść obiektu w stanie ustalonym.  Z równania (1.105) mamy

 \begin{equation}

        H_{30} = \dfrac{1}{\alpha^2}Q_{we0}^2

        \end{equation}\qquad(1.106)

Na Rys. 1.8 przedstawiono wejściowo-wyjściową charakterystykę statyczną dla układu trzech zbiorników.


Rysunek 1.8 Wykres charakterystyki statycznej wejściowo-wyjściowej dla układu trzech zbiorników.


Należy jednak pamiętać, że nawet jeżeli w pewnej chwili  t mamy  Q_{we}(t) = Q_{we0} oraz  H_3(t) = \dfrac{1}{\alpha^2}Q_{we0}^2 to obiekt nie musi znajdować się w punkcie równowagi bo możemy mieć  H_1(t) \neq H_{10} lub  H_2(t) \neq H_{20} .  

Mając równania charakterystyki statycznej możemy przeprowadzić symulację zachowania obiektu w wybranym punkcie równowagi. Przyjmujemy parametry obiektu  A = 0.5 ,  \alpha = 1 . Wybieramy punkt równowagi odpowiadający  H_{30}=0.25 . Z równań charakterystyki statycznej otrzymujemy  H_{20}=0.75 ,  H_{20}=0.5 oraz  Q_{we0} = 0.5 . Na Rys. 1.9 przedstawiono trajektorie stanów obiektu dla stałego sterowania  Q_{we}(t) = Q_{we0} = 0.5 i warunków początkowych równych wartościom stanów w wybranym punkcie równowagi  H_1(t_0) =H_{30}=0.75 ,  H_2(t_0) =H_{20}=0.5 ,  H_3(t_0)=H_{30}=0.25  


Rysunek 1.9 Trajektorie poziomów cieczy w zbiornikach w punkcie równowagi.

Zgodnie z oczekiwaniami w punkcie równowagi nie następują zmiany poziomów cieczy w zbiornikach. Zauważmy, że trajektorie stanu na Rys. 1.2 i 1.3 dążą dokładnie do wartości obliczonych z charakterystyki statycznej obiektu. Z kolei na Rys. 1.4 poziomy cieczy w zbiornikach wykonują oscylacje wokół wartości poziomów w punkcie równowagi. 

 \begin{eqnarray}

        \frac{d\theta(t)}{dt} &=& \omega(t) \qquad(1.107) \\

        \frac{d\omega(t)}{dt} &=& \frac{g}{l}sin\theta(t) - \frac{D}{ml^2} \omega(t) +\frac{1}{ml^2} M(t) \qquad(1.108)

        \end{eqnarray}

Oznaczmy wartość sterowania w punkcie pracy jako  M_0 . Punktem równowagi dla wahadła nazwiemy taki stan w którym  \theta(t) oraz  \omega(t) pozostają stałe, a ich pochodne się zerują. Oznaczmy wartości zmiennych stanu w punkcie równowagi jako  \theta_0 oraz  \omega_0 . Z równań stanu obiektu (1.107)-(1.108) i warunku zerowania się pochodnej otrzymujemy

 \begin{eqnarray}

        0 &=& \omega_0 \qquad(1.109) \\

        0 &=& \frac{g}{l}sin\theta_0 - \frac{D}{ml^2} \omega_0 +\frac{1}{ml^2} M_0 \qquad(1.110)

        \end{eqnarray}

Powyższe równania mają następującą interpretację fizyczną. W punkcie równowagi wahadło się nie porusza, a momenty sił działające na wahadło się równoważą.

Układ równań algebraicznych (1.109)-(1.110)) składa się z dwóch równań, w których mamy trzy niewiadome  M_0 ,  \theta_0 oraz  \omega_0 . Przyjmujemy jako parametr wielkość wyjściową  \theta_0 i wyznaczamy wartości  M_0 oraz  \omega_0 jako funkcje  \theta_0

Z równania (1.109))

 \begin{equation}

        \omega_0 = 0

        \end{equation}\qquad (1.111)

Z równania (1.110) 

 \begin{equation}

        0 = \frac{g}{l}sin\theta_0 - \frac{D}{ml^2} \omega_0 +\frac{1}{ml^2} M_0

        \end{equation}\qquad(1.112)

Korzystając z (1.111)) otrzymujemy

 \begin{equation}

        0 = \dfrac{g}{l}sin\theta_0 +\dfrac{1}{ml^2} M_0

        \end{equation}\qquad(1.113)

i stąd mamy

 \begin{equation}

        \frac{1}{ml^2} M_0 = -\frac{g}{l}sin\theta_0

        \end{equation}\qquad(1.114)

Mnożąc obie strony powyższego równania przez  ml^2 otrzymujemy

 \begin{equation}

        M_0 = -mglsin\theta_0

        \qquad(1.115)

        \end{equation}

Zapiszmy razem równania (1.111) oraz (1.115)) 

 \begin{eqnarray}

        \omega_0 &=& 0 \qquad(1.116)\\

        M_0 &=& -mglsin\theta_0 \qquad(1.117)

        \end{eqnarray}

Definiują one charakterystykę statyczną dla wahadła. Równanie charakterystyki statycznej typu wejście-wyjście otrzymujemy z równania (1.115)) 

 \begin{equation}

        sin\theta_0 = -\dfrac{1}{mgl}M_0

        \end{equation}\qquad(1.118)

Z powyższego warunku mamy, że dla  | M_0| > mgl układ nie ma punktów równowagi (moment siły  M jest tak duży, że powoduje ciągłe obracanie się wahadła). Z kolei jeżeli  | M_0| < mgl to układ ma dwa punkty równowagi

 \begin{eqnarray}

        \theta_0 &=& arcsin \left(-\frac{1}{mgl}M_0\right) \qquad(1.119)\\

        \theta_0 &=& \pi - arcsin \left(-\frac{1}{mgl}M_0\right)\qquad(1.120)

        \end{eqnarray}

Na Rys. 1.10 przedstawiono wejściowo-wyjściową charakterystykę statyczną dla wahadła.

Rysunek 1.10Wykres charakterystyki statycznej wejściowo-wyjściowej dla wahadła.


Należy jednak pamiętać, że nawet jeżeli w pewnej chwili  t mamy  M(t) = M_0 oraz  sin\theta_0 = \frac{1}{mgl}M_0 to obiekt nie musi znajdować się w punkcie równowagi bo możemy mieć  \omega(t) \neq \omega_0 = 0 .

Mając równania charakterystyki statycznej możemy przeprowadzić symulację zachowania obiektu w wybranym punkcie równowagi. Przyjmujemy parametry obiektu  m = 0.1 ,  l = 1 ,  g = 10 ,  D = 0.1 . Wybieramy punkt równowagi odpowiadający  \theta=\frac{5\pi}{6} . Z równań charakterystyki statycznej otrzymujemy  \omega_0=0 oraz  M_{0} = -0.5 . Na Rys. 1.11 przedstawiono trajektorie stanów obiektu dla stałego sterowania  M(t) = M_{0} = -0.5 \( i warunków początkowych równych wartościom stanów w wybranym punkcie równowagi \( \theta(t_0) =\theta_0=\frac{5\pi}{6} , \( \omega(t_0) =\omega_0=0 \(

Rysunek 1.11 Trajektorie położenia i prędkości kątowej wahadła w punkcie równowagi.

Zgodnie z oczekiwaniami w punkcie równowagi wahadło nie zmienia swojego położenia, a jego prędkość kątowa wynosi 0. Zauważmy, że trajektorie stanu na Rys. 1.6 dążą dokładnie do wartości obliczonych z charakterystyki statycznej obiektu. Z kolei na Rys. 1.7 zmienne stanu wykonują oscylacje wokół odpowiednich wartości w punkcie równowagi.


2.2. Charakterystyka statyczna - sformułowanie ogólne

  Dla równań stanu w postaci ogólnej

 \begin{eqnarray}

\frac{dx_1(t)}{dt} &=& f_1(x_1(t),\cdots,x_j(t),\cdots,x_n(t),u_1(t),\cdots,u_k(t),\cdots,u_m(t)) \qquad(1.121) \\

&\vdots& \nonumber \\ 

\frac{dx_i(t)}{dt} &=& f_i(x_1(t),\cdots,x_j(t),\cdots,x_n(t),u_1(t),\cdots,u_k(t),\cdots,u_m(t)) \qquad(1.122) \\

&\vdots& \nonumber \\ 

\frac{dx_n(t)}{dt} &=& f_n(x_1(t),\cdots,x_j(t),\cdots,x_n(t),u_1(t),\cdots,u_k(t),\cdots,u_m(t)) \qquad(1.123) 

\end{eqnarray}

równania charakterystyki statycznej uzyskujemy poprzez warunek zerowania pochodnych zmiennych stanu. Oznaczmy wartości stanów i sterowań w punkcie równowagi jako  x_{10}, x_{20}, ..., x_{j0}, ..., x_{n0} oraz  u_{10}, u_{20} ,..., u_{k0} ,..., u_{m0} . Równania punktu równowagi przyjmują postać

 \begin{eqnarray}

0 &=& f_1(x_{10},\cdots,x_{j0},\cdots,x_{n0},u_{10},\cdots,u_{k0},\cdots,u_{m0}) \qquad(1.124) \\

&\vdots& \nonumber \\ 

0 &=& f_i(x_{10},\cdots,x_{j0},\cdots,x_{n0},u_{10},\cdots,u_{k0},\cdots,u_{m0}) \qquad(1.125) \\

&\vdots& \nonumber \\ 

0 &=& f_n(x_{10},\cdots,x_{j0},\cdots,x_{n0},u_{10},\cdots,u_{k0},\cdots,u_{m0}) \qquad(1.126) 

\end{eqnarray}

Wprowadźmy wektory zmiennych stanu oraz zmiennych sterujących w punkcie równowagi

 \begin{equation}

x_0 = \left(

\begin{array}{c}

x_{10}\\ \vdots\\ x_{j0} \\ \vdots\\ x_{n0}

\end{array}

\right),\ 

u_0 = \left(

\begin{array}{c}

u_{10}\\ \vdots\\ u_{k0} \\ \vdots\\ u_{m0}

\end{array}

\right)

\end{equation}  \qquad(1.127)

Równania punktu równowagi (1.124)-(\1.126) przyjmują wtedy postać

 \begin{eqnarray}

0 &=& f_1(x_0,u_0) \qquad(1.128) \\

&\vdots& \nonumber \\ 

0 &=& f_i(x_0,u_0) \qquad(1.129)  \\

&\vdots& \nonumber \\ 

0 &=& f_n(x_0,u_0) \qquad(1.130)  

\end{eqnarray}

Jeżeli wprowadzimy oznaczenie

 \begin{equation}

f(x_0,u_0) = \left(

\begin{array}{c}

f_1(x_0,u_0)\\ \vdots\\ f_i(x_0,u_0) \\ \vdots\\ f_n(x_0,u_0)

\end{array}

\right)

\end{equation} \qquad(1.131)

to równania punktu równowagi (1.128)-(1.130) upraszczają się do postaci

 \begin{equation}

0 = f(x_0,u_0) \qquad(1.132)

\end{equation}

gdzie 0 po lewej stronie równania oznacza wektor zerowy o długości  n . Zbiór wszystkich rozwiązań układu równań (1.132) tworzy charakterystykę statyczną obiektu. 

Równania punktu równowagi dla układu trzech zbiorników

 \begin{eqnarray}

0 &=& \frac{1}{A}Q_{we0} - \frac{\alpha}{A} \sqrt{H_{10}-H_{20}} \qquad(1.133) \\

0 &=& \frac{\alpha}{A}  \sqrt{H_{10}-H_{20}} - \frac{\alpha}{A}  \sqrt{H_{20}-H_{30}} \qquad(1.134) \\

0 &=& \frac{\alpha}{2A} \sqrt{H_{20}-H_{30}} - \frac{\alpha}{2A} \sqrt{H_{30}} \qquad(1.135)

\end{eqnarray}

można zapisać w  ogólnej postaci wektorowej (1.132) poprzez wprowadzenie oznaczeń 

 \begin{equation}

x_0  = \left(

\begin{array}{c}

x_{10}\\ x_{20} \\ x_{30}

\end{array}

\right) 

= \left(

\begin{array}{c}

H_{10}\\ H_{20}\\ H_{30}

\end{array}

\right),\

u_0 = \left(u_{10}\right) = \left(Q_{we0}\right)

\end{equation} \qquad(1.136)

oraz 

 \begin{eqnarray}

f(x_0,u_0) &=& \left(

\begin{array}{c}

f_1(x_{10},x_{20},x_{30},u_{10}) \\

f_2(x_{10},x_{20},x_{30},u_{10}) \\

f_3(x_{10},x_{20},x_{30},u_{10}) 

\end{array}

\right) \\ &=& \left(

\begin{array}{c}

f_1(H_{10},H_{20},H_{30},Q_{we0}) \\

f_2(H_{10},H_{20},H_{30},Q_{we0}) \\

f_3(H_{10},H_{20},H_{30},Q_{we0}) 

\end{array}

\right) = \nonumber\\

&=&\left(

\begin{array}{c}

\frac{1}{A}Q_{we0} - \frac{\alpha}{A} \sqrt{H_{10}-H_{20}} \\

\frac{\alpha}{A}  \sqrt{H_{10}-H_{20}} - \frac{\alpha}{A}  \sqrt{H_{20}-H_{30}} \\

\frac{\alpha}{2A} \sqrt{H_{20}-H_{30}} - \frac{\alpha}{2A} \sqrt{H_{30}} 

\end{array}

\right)\nonumber

\end{eqnarray}\qquad(1.137)


Równania punktu równowagi dla wahadła

 \begin{eqnarray}

0 &=& \omega_0 \qquad(1.138)\\

0 &=& \frac{g}{l}sin\theta_0  - \frac{D}{ml^2} \omega_0 +\frac{1}{ml^2} M_0 \qquad(1.140)

\end{eqnarray}

można zapisać w postaci ogólnej (1.132}) poprzez wprowadzenie oznaczeń

 \begin{equation}

x_0 = \left(

\begin{array}{c}

x_{10}\\ x_{20}

\end{array}

\right) = \left(

\begin{array}{c}

\theta_0\\ \omega_0

\end{array}

\right),\ 

u_0 = \left(u_{10}\right) = \left(M_0\right)

\end{equation} \qquad(1.140)

oraz 

 \begin{eqnarray}

f(x_0,u_0) &=& \left(

\begin{array}{c}

f_1(x_{10},x_{20},u_{10}) \\  f_2(x_{10},x_{20},u_{10})

\end{array}

\right) \\

&=& \left(

\begin{array}{c}

f_1(\theta_0,\omega_0,M_0) \\  f_2(\theta_0,\omega_0,M_0)

\end{array}

\right) \nonumber \\

&=& \left(

\begin{array}{c}

\omega_0 \\  \frac{g}{l}sin\theta_0  - \frac{D}{ml^2} \omega_0 +\frac{1}{ml^2} M_0

\end{array}

\right) \nonumber

\end{eqnarray}\qquad(1.141)

Jeżeli chcemy wyznaczyć charakterystykę statyczną wejściowo-wyjściową, należy najpierw rozwiązać układ równań punktu równowagi (1.132), aby znaleźć zależność wektora stanu w punkcie równowagi  x_0 od wektora sterowań w punkcie równowagi  u_0 . Układ równań może nie mieć rozwiązań, mieć jedno, kilka lub nieskończenie wiele rozwiązań, dlatego rozstrzygnięcie problemu rozwiązywalności układu równań jest niemożliwe w ogólnym przypadku. Dla układu trzech zbiorników równania punktu równowagi miały jednoznaczne rozwiązania, przynajmniej w dziedzinie w której określone są funkcje definiujące równania stanu (patrz funkcja pierwiastka). Dla wahadła równanie 

 \begin{equation}

sin\theta_0 = -\frac{1}{mgl}M_0

\end{equation}\qquad(1.142)

może mieć jedno, dwa lub nie mieć wcale rozwiązań  \theta_0 , w zależności od wartości  M_0

Jeżeli jednak możliwe jest rozwiązanie układu równań (1.132) względem  x_0 i uzyskanie rozwiązania postaci

 \begin{equation}

x_0 = f^u(u_0)


\end{equation}  \qquad(1.143)

to aby uzyskać charakterystyka statyczną wejściowo-wyjściową należy do równania wyjść w punkcie równowagi 

 \begin{equation}

y_0 = g(x_0)

\end{equation}\qquad(1.144)

wstawić zależność (1.143)

 \begin{equation}

y_0 = g(f^u(u_0)) = g^u(u_0)

\end{equation}\qquad(1.145)

gdzie przyjęto następujące oznaczenia

 \begin{equation}

y_0 = \left(

\begin{array}{c}

y_{10}\\

\vdots  \\ 

y_{i0}\\

\vdots  \\ 

y_{p0}

\end{array}

\right),\ 

g(x_0) = \left(

\begin{array}{c}

g_1(x_{10},\cdots,x_{j0},\cdots,x_{n0}) \\

\vdots  \\ 

g_i(x_{10},\cdots,x_{j0},\cdots,x_{n0})\\

\vdots  \\ 

g_p(x_{10},\cdots,x_{j0},\cdots,x_{n0})

\end{array}

\right)

\end{equation}\qquad(1.146)

oraz

 \begin{equation}

f^u(u_0) = \left(

\begin{array}{c}

f_1^u(u_{10},\cdots,u_{k0},\cdots,u_{m0}) \\

\vdots  \\ 

f_i^u(u_{10},\cdots,u_{k0},\cdots,u_{m0})\\

\vdots  \\ 

f_n^u(u_{10},\cdots,u_{k0},\cdots,u_{m0})

\end{array}

\right),\

g^u(u_0) = \left(

\begin{array}{c}

g_1^u(u_{10},\cdots,u_{k0},\cdots,u_{m0}) \\

\vdots  \\ 

g_i^u(u_{10},\cdots,u_{k0},\cdots,u_{m0})\\

\vdots  \\ 

g_p^u(u_{10},\cdots,u_{k0},\cdots,u_{m0})

\end{array}

\right)

\end{equation}

\qquad(1.147)

Dla układu trzech zbiorników funkcja  f^u ma postać

 \begin{equation}

f^u(u_0) = f^u(Q_{we0}) = \left(

\begin{array}{c}

f_1^u(Q_{we0}) \\ 

f_2^u(Q_{we0}) \\ 

f_3^u(Q_{we0})

\end{array}

\right) = 

\left(

\begin{array}{c}

3\frac{1}{\alpha^2}Q_{we0}^2 \\ 

2\frac{1}{\alpha^2}Q_{we0}^2 \\ 

\frac{1}{\alpha^2}Q_{we0}^2 

\end{array}

\right)

\end{equation} \qquad(1.148)

Wektor wyjść w punkcie równowagi ma postać

 \begin{equation}

y_0 = (H_{30})

\end{equation}\qquad(1.149)

natomiast funkcja  g^u ma postać 

 \begin{equation}

g^u(u_0) = g^u(Q_{we0}) = \left( g_1^u(Q_{we0}) \right) = \left( \frac{1}{\alpha^2}Q_{we0}^2 \right)

\end{equation} \qquad(1.150)


Dla wahadła istnieją dwie gałęzie rozwiązań równania punktu równowagi. Funkcja  f^u dla pierwszej gałęzi rozwiązań ma postać 

 \begin{equation}

x_0 = f^u(u_0) = f^u(M_0) = \left(

\begin{array}{c}

f_1^u(M_0) \\ 

f_2^u(M_0) 

\end{array}

\right) = \left(

\begin{array}{c}

arcsin \left(-\frac{1}{mgl}M_0\right) \\

0 

\end{array}

\right)

\end{equation} \qquad(1.151)

Wektor wyjść w punkcie równowagi ma postać

 \begin{equation}

y_0 = (\theta_0)

\end{equation}\qquad(1.152)

natomiast funkcja  g^u ma postać

 \begin{equation}

g^u(u_0) = g^u(M_0) = \left( g_1^u(M_0) \right) = \left( arcsin \left(- \frac{1}{mgl}M_0 \right)  \right)

\end{equation} \qquad(1.153)

Funkcja  f^u dla drugiej gałęzi rozwiązań ma postać 

 \begin{equation}

x_0 = f^u(u_0) = f^u(M_0) = \left(

\begin{array}{c}

f_1^u(M_0) \\ 

f_2^u(M_0) 

\end{array}

\right) = \left(

\begin{array}{c}

\pi - arcsin \left(-\frac{1}{mgl}M_0\right)  \\ 0

\end{array}

\right)

\end{equation} \qquad(1.154)

natomiast funkcja  g^u ma postać

 \begin{equation}

g^u(u_0) = g^u(M_0) = \left( g_1^u(M_0) \right) = \left( \pi - arcsin \left( -\frac{1}{mgl}M_0 \right)  \right)

\end{equation}  \qquad(1.155)


3. Linearyzacja równań modelu obiektu

  

3.1. Istota linearyzacji

Nieliniowe równania stanu mają ogólną postać

 \begin{eqnarray}

\frac{dx_1(t)}{dt} &=& f_1(x_1(t),\cdots,x_j(t),\cdots,x_n(t),u_1(t),\cdots,u_k(t),\cdots,u_m(t)) \qquad(1.156) \\

&\vdots& \nonumber \\ 

\frac{dx_i(t)}{dt} &=& f_i(x_1(t),\cdots,x_j(t),\cdots,x_n(t),u_1(t),\cdots,u_k(t),\cdots,u_m(t)) \qquad(1.157) \\

&\vdots& \nonumber \\ 

\frac{dx_n(t)}{dt} &=& f_n(x_1(t),\cdots,x_j(t),\cdots,x_n(t),u_1(t),\cdots,u_k(t),\cdots,u_m(t)) \qquad(1.158)

\end{eqnarray}

Szczególnym przypadkiem równań nieliniowych są równania liniowe

 \begin{eqnarray}

\frac{dx_1(t)}{dt} &=& a_{11}x_1(t)+\cdots+a_{1j}x_j(t),\cdots+a_{1n}x_n(t) \qquad(1.159)\\

&& + b_{11}u_1(t)+\cdots+b_{1k}u_k(t)+\cdots+b_{1m}u_m(t) \nonumber \\

&\vdots& \nonumber\\ 

\frac{dx_i(t)}{dt} &=& a_{i1}x_1(t)+\cdots+a_{ij}x_j(t),\cdots+a_{in}x_n(t) \qquad(1.160)\\

&& + b_{11}u_1(t)+\cdots+b_{ik}u_k(t)+\cdots+b_{im}u_m(t) \nonumber  \\

&\vdots&  \nonumber \\ 

\frac{dx_n(t)}{dt} &=& a_{n1}x_1(t)+\cdots+a_{nj}x_j(t),\cdots+a_{nn}x_n(t) \qquad(1.161)  \\

&& + b_{11}u_1(t)+\cdots+b_{nk}u_k(t)+\cdots+b_{nm}u_m(t) \nonumber 

\end{eqnarray}

gdzie  a_{11} ,...,  a_{nn} ,  b_{11} ,..., b_{nm} są stałymi współczynnikami.


Równania (1.159)-(1.161) można zapisać w postaci macierzowej

 \begin{eqnarray}

\left(

\begin{array}{c}

\frac{dx_1(t)}{dt} \\ \vdots\\ \frac{dx_i(t)}{dt}  \\ \vdots\\ \frac{dx_n(t)}{dt} 

\end{array}

\right) &=& 

\left(

\begin{array}{ccccc}

a_{11} & \cdots & a_{1j} & \cdots & a_{1n} \\

\vdots & & \vdots & & \vdots \\

a_{i1} & \cdots & a_{ij} & \cdots & a_{in} \\

\vdots & & \vdots & & \vdots \\

a_{n1} & \cdots & a_{nj} & \cdots & a_{nn} 

\end{array}

\right)

\left(

\begin{array}{c}

x_1(t)\\ \vdots\\ x_j(t) \\ \vdots\\ x_n(t)

\end{array}

\right) \\ & & +

\left(

\begin{array}{ccccc}

b_{11} & \cdots & b_{1k} & \cdots & b_{1m} \\

\vdots & & \vdots & & \vdots \\

b_{i1} & \cdots & b_{ik} & \cdots & b_{im} \\

\vdots & & \vdots & & \vdots \\

b_{n1} & \cdots & b_{nk} & \cdots & b_{nm} 

\end{array}

\right)

 \left(

\begin{array}{c}

u_1(t)\\ \vdots\\ u_k(t) \\ \vdots\\ u_m(t)

\end{array}

\right) \nonumber

\end{eqnarray}\qquad(1.162)

Standardowo stosuje się następujące oznaczenia macierzy

 \begin{equation}

A = \left(

\begin{array}{ccccc}

a_{11} & \cdots & a_{1j} & \cdots & a_{1n} \\

\vdots & & \vdots & & \vdots \\

a_{i1} & \cdots & a_{ij} & \cdots & a_{in} \\

\vdots & & \vdots & & \vdots \\

a_{n1} & \cdots & a_{nj} & \cdots & a_{nn} 

\end{array}

\right),\ 

B = \left(

\begin{array}{ccccc}

b_{11} & \cdots & b_{1k} & \cdots & b_{1m} \\

\vdots & & \vdots & & \vdots \\

b_{i1} & \cdots & b_{ik} & \cdots & b_{im} \\

\vdots & & \vdots & & \vdots \\

b_{n1} & \cdots & b_{nk} & \cdots & b_{nm} 

\end{array}

\right)

\end{equation} \qquad(1.163)

Liniowe równania stanu można wtedy zapisać w postaci wektorowej

 \begin{equation}

\dfrac{dx(t)}{dt} = Ax(t)+Bu(t)

\end{equation}\qquad(1.164)

Uzupełnieniem liniowych równań stanu są liniowe równania wyjść

 \begin{eqnarray}

y_1(t) &=& c_{11}x_1(t)+\cdots+c_{1j}x_j(t),\cdots+c_{1n}x_n(t) \qquad(1.165) \\

&\vdots& \nonumber  \\ 

y_i(t) &=& c_{i1}x_1(t)+\cdots+c_{ij}x_j(t),\cdots+c_{in}x_n(t) \qquad(1.166)\\

&\vdots& \nonumber  \\ 

y_p(t) &=& c_{p1}x_1(t)+\cdots+c_{pj}x_j(t),\cdots+c_{pn}x_n(t) \qquad(1.167)   

\end{eqnarray}

gdzie  c_{11} ,...,  c_{pn} są stałymi współczynnikami.

Równania wyjść można zapisać w postaci macierzowej

 \begin{equation}

\left(

\begin{array}{c}

y_1(t) \\ \vdots\\ y_i(t)  \\ \vdots\\ y_p(t)

\end{array}

\right) = 

\left(

\begin{array}{ccccc}

c_{11} & \cdots & c_{1j} & \cdots & c_{1n} \\

\vdots & & \vdots & & \vdots \\

c_{i1} & \cdots & c_{ij} & \cdots & c_{in} \\

\vdots & & \vdots & & \vdots \\

c_{p1} & \cdots & c_{pj} & \cdots & c_{pn} 

\end{array}

\right)

\left(

\begin{array}{c}

x_1(t)\\ \vdots\\ x_j(t) \\ \vdots\\ x_n(t)

\end{array}

\right) 

\end{equation}\qquad(1.168)

Standardowo stosuje się następujące oznaczenie macierzy

 \begin{equation}

C = \left(

\begin{array}{ccccc}

c_{11} & \cdots & c_{1j} & \cdots & c_{1n} \\

\vdots & & \vdots & & \vdots \\

c_{i1} & \cdots & c_{ij} & \cdots & c_{in} \\

\vdots & & \vdots & & \vdots \\

c_{p1} & \cdots & c_{pj} & \cdots & c_{pn} 

\end{array}

\right)

\end{equation} \qquad(1.169)

Równanie wyjść można wtedy zapisać w postaci wektorowej

 \begin{equation}

y(t) = Cx(t)

\end{equation}\qquad(1.170)

Znalezienie rozwiązania nieliniowego układu równań różniczkowych jest możliwe tylko w szczególnych przypadkach. Także analiza obiektów opisanych nieliniowymi równaniami stanu nastręcza wielu trudności. Przeciwnie, liniowe układy równań różniczkowych są zasadniczo możliwe do rozwiązania z dowolną dokładnością. Również analiza własności obiektów liniowych jest dużo łatwiejsza niż obiektów nieliniowych. 

Istota linearyzacji polega na przybliżeniu modelu nieliniowego poprzez model zlinearyzowany (liniowy), analizie układu zlinearyzowanego i  wnioskowaniu o własnościach układu nieliniowego na podstawie własności układu zlinearyzowanego. Proces linearyzacji opiera się na na rozwinięciu w szereg Taylora nieliniowych funkcji prawych stron równań stanu i pominięciu wyrazów wyższego rzędu. Wynikają stąd pewne ograniczenia. Po pierwsze należy wybrać pewien określony punkt w pobliżu którego dokonujemy linearyzacji. Ponieważ w niniejszym podręczniku skupiamy się na regulacji stałowartościowej to punktem w którym będziemy dokonywać linearyzacji jest punkt równowagi obiektu. Jeżeli zmieniamy punkt linearyzacji to zmienia się także model zlinearyzowany. Po drugie model zlinearyzowany (podobnie jak szereg Taylora) dobrze przybliża model nieliniowy jedynie w pobliżu punktu linearyzacji. Jeżeli trajektorie stanu lub sterowań oddalą się zbytnio od punktu linearyzacji, to model zlinearyzowany przestaje przybliżać model nieliniowy z zadowalającą dokładnością. W tej sekcji szczegółowo omówimy proces linearyzacji na przykładach, a następnie przedstawimy model zlinearyzowany w postaci ogólnej.

 


3.2. Przykład 1 linearyzacji równań modelu obiektu

  Przypomnijmy równania stanu dla układu trzech zbiorników

 \begin{eqnarray}

\frac{d H_1(t)}{dt} &=& \frac{1}{A}Q_{we}(t) - \frac{\alpha}{A} \sqrt{H_1(t)-H_2(t)} \qquad(1.171) \\

\frac{d H_2(t)}{dt} &=& \frac{\alpha}{A}  \sqrt{H_1(t)-H_2(t)} - \frac{\alpha}{A}  \sqrt{H_2(t)-H_3(t)} \qquad(1.172)\\

\frac{d H_3(t)}{dt} &=& \frac{\alpha}{2A} \sqrt{H_2(t)-H_3(t)} - \frac{\alpha}{2A} \sqrt{H_3(t)} \qquad(1.173)

\end{eqnarray}

Linearyzacja polega na rozwinięciu nieliniowych funkcji prawych stron równań stanu w szereg Taylora w punkcie równowagi z pominięciem wyrazów rzędu wyższego niż liniowy. Funkcja prawych stron z pierwszego równania stanu ma postać

 \begin{equation}

f_1(H_1,H_2,H_3,Q_{we}) = \frac{1}{A}Q_{we} - \frac{\alpha}{A} \sqrt{H_1-H_2}

\end{equation}\qquad(1.174)

Dla skrócenia zapisu pomijamy w zapisie argument czasu  (t) . Pamiętamy jednak, że zmienne stanu i sterowania są funkcjami czasu.

Rozwinięcie funkcji  f_1 w szereg Taylora wokół punktu równowagi  (H_{10},H_{20},H_{30},Q_{we0}) ma postać

 \begin{eqnarray}

f_1(H_1,H_2,H_3,Q_{we}) &\simeq& f_1(H_{10},H_{20},H_{30},Q_{we0}) \\

&&+ \frac{\partial f_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_1} (H_1-H_{10}) \nonumber \\

&&+ \frac{\partial f_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_2} (H_2-H_{20}) \nonumber \\

&&+ \frac{\partial f_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_3} (H_3-H_{30}) \nonumber \\

&&+ \frac{\partial f_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial Q_{we}} (Q_{we}-Q_{we0}) \nonumber

\end{eqnarray}\qquad(1.175)

gdzie np.:  \frac{\partial f_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_1} oznacza wartość pochodnej cząstkowej funkcji  f_1 względem  H_1 obliczoną w punkcie równowagi  (H_{10},H_{20},H_{30},Q_{we0}) .

Obliczmy wartości pochodnych cząstkowych funkcji  f_1 względem zmiennych stanu i sterowań w punkcie równowagi. Dla przypomnienia pochodna funkcji pierwiastek kwadratowy wynosi

 \begin{equation}

\left(\sqrt{x}\right)' = \frac{1}{2\sqrt{x}}

\end{equation}\qquad(1.176)

Korzystając w razie potrzeby ze standardowych własności pochodnej dostajemy

 \begin{eqnarray}

\frac{\partial f_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_1} &=& -\frac{\alpha}{A} \cdot \frac{1}{2\sqrt{H_{10}-H_{20}}} \qquad(1.177) \\ 

&=& \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} \nonumber \\

\frac{\partial f_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_2} &=& -\frac{\alpha}{A} \cdot \frac{1}{2\sqrt{H_{10}-H_{20}}} \cdot (-1) \qquad(1.178)  \\ 

 &=& \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}}  \nonumber \\  

\frac{\partial f_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_3} &=& 0 \qquad(1.179)  \\  

\frac{\partial f_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial Q_{we}} &=& \frac{1}{A} \qquad(1.180) 

\end{eqnarray}

Rozwinięcie funkcji  f_1 w szereg Taylora wynosi zatem

 \begin{eqnarray}

f_1(H_1,H_2,H_3,Q_{we}) &=& \frac{1}{A}Q_{we} - \frac{\alpha}{A} \sqrt{H_1-H_2} \\

&\simeq& \frac{1}{A}Q_{we0} - \frac{\alpha}{A} \sqrt{H_{10}-H_{20}} \nonumber \\

&&+ \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} (H_1-H_{10}) \nonumber \\

&&+ \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} (H_2-H_{20}) \nonumber \\

&&+ 0\cdot (H_3-H_{30}) \nonumber \\

&&+ \frac{1}{A} (Q_{we}-Q_{we0})\nonumber 

\end{eqnarray}\qquad(1.181)

Funkcja prawych stron z drugiego równania stanu ma postać

 \begin{equation}

f_2(H_1,H_2,H_3,Q_{we}) = \frac{\alpha}{A}  \sqrt{H_1-H_2} - \frac{\alpha}{A}  \sqrt{H_2-H_3}

\end{equation}\qquad(1.182)

Rozwinięcie funkcji  f_2 w szereg Taylora wokół punktu równowagi  (H_{10},H_{20},H_{30},Q_{we0}) ma postać

 \begin{eqnarray}

f_2(H_1,H_2,H_3,Q_{we}) &\simeq& f_1(H_{10},H_{20},H_{30},Q_{we0}) \\

&&+ \frac{\partial f_2(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_1} (H_1-H_{10})\nonumber \\

&&+ \frac{\partial f_2(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_2} (H_2-H_{20})\nonumber \\

&&+ \frac{\partial f_2(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_3} (H_3-H_{30})\nonumber \\

&&+ \frac{\partial f_2(H_{10},H_{20},H_{30},Q_{we0})}{\partial Q_{we}} (Q_{we}-Q_{we0}) \nonumber

\end{eqnarray}\qquad(1.183)

Obliczmy wartości pochodnych cząstkowych funkcji  f_2 względem zmiennych stanu i sterowań w punkcie równowagi

 \begin{eqnarray}

\frac{\partial f_2(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_1} &=& \frac{\alpha}{A} \cdot \frac{1}{2\sqrt{H_{10}-H_{20}}}  \qquad(1.184)\\ 

&=& \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} \nonumber \\ 

\frac{\partial f_2(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_2} &=&  \frac{\alpha}{A} \cdot \frac{1}{2\sqrt{H_{10}-H_{20}}} \cdot (-1) - \frac{\alpha}{A} \cdot \frac{1}{2\sqrt{H_{20}-H_{30}}}   \qquad(1.185) \\

&=&  \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} +  \frac{-\alpha}{2A\sqrt{H_{20}-H_{30}}} \\  

\frac{\partial f_2(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_3} &=& - \frac{\alpha}{A} \cdot \frac{1}{2\sqrt{H_{20}-H_{30}}} \cdot (-1)  \qquad(1.186)\\  

&=&  \frac{\alpha}{2A\sqrt{H_{20}-H_{30}}} \nonumber \\ 

\frac{\partial f_2(H_{10},H_{20},H_{30},Q_{we0})}{\partial Q_{we}} &=& 0  \qquad(1.187)

\end{eqnarray}

Rozwinięcie funkcji  f_2 w szereg Taylora wynosi zatem

 \begin{eqnarray}

f_2(H_1,H_2,H_3,Q_{we}) &=& \frac{\alpha}{A}  \sqrt{H_1-H_2} - \frac{\alpha}{A}  \sqrt{H_2-H_3} \\

&\simeq& \frac{\alpha}{A}  \sqrt{H_{10}-H_{20}} - \frac{\alpha}{A}  \sqrt{H_{20}-H_{30}} \nonumber\\

&&+ \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} (H_1-H_{10}) \nonumber\\

&&+ \left( \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} +  \frac{-\alpha}{2A\sqrt{H_{20}-H_{30}}} \right) (H_2-H_{20}) \nonumber \\

&&+ \frac{\alpha}{2A\sqrt{H_{20}-H_{30}}} (H_3-H_{30})\nonumber \\

&&+ 0 \cdot (Q_{we}-Q_{we0}) \nonumber

\end{eqnarray}\qquad(1.188)

Funkcja prawych stron z trzeciego równania stanu ma postać

 \begin{equation}

f_3(H_1,H_2,H_3,Q_{we}) = \frac{\alpha}{2A} \sqrt{H_2-H_3} - \frac{\alpha}{2A} \sqrt{H_3}

\end{equation}\qquad(1.189)

Rozwinięcie funkcji  f_3 w szereg Taylora wokół punktu równowagi  (H_{10},H_{20},H_{30},Q_{we0}) ma postać

 \begin{eqnarray}

f_3(H_1,H_2,H_3,Q_{we}) &\simeq& f_3(H_{10},H_{20},H_{30},Q_{we0}) \\

&&+ \frac{\partial f_3(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_1} (H_1-H_{10})\nonumber \\

&&+ \frac{\partial f_3(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_2} (H_2-H_{20})\nonumber \\

&&+ \frac{\partial f_3(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_3} (H_3-H_{30})\nonumber \\

&&+ \frac{\partial f_3(H_{10},H_{20},H_{30},Q_{we0})}{\partial Q_{we}} (Q_{we}-Q_{we0})\nonumber 

\end{eqnarray}\qquad(190)

Obliczmy wartości pochodnych cząstkowych funkcji  f_3 względem zmiennych stanu i sterowań w punkcie równowagi

 \begin{eqnarray}

\frac{\partial f_3(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_1} &=& 0  \qquad(1.191)\\ 

\frac{\partial f_3(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_2} &=&  \frac{\alpha}{2A} \cdot \frac{1}{2\sqrt{H_{20}-H_{30}}}\qquad(1.192) \\  

 &=&  \frac{\alpha}{4A\sqrt{H_{20}-H_{30}}} \nonumber \\  

\frac{\partial f_3(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_3} &=&  \frac{\alpha}{2A} \cdot \frac{1}{2\sqrt{H_{20}-H_{30}}} \cdot (-1) - \frac{\alpha}{2A} \cdot \frac{1}{2\sqrt{H_{30}}}   \nonumber \\ 

&=&  \frac{-\alpha}{4A\sqrt{H_{20}-H_{30}}} +  \frac{-\alpha}{4A\sqrt{H_{30}}}  \qquad(1.193) \\  

\frac{\partial f_3(H_{10},H_{20},H_{30},Q_{we0})}{\partial Q_{we}} &=& 0  
\qquad(1.194)
\end{eqnarray}

Rozwinięcie funkcji  f_3 w szereg Taylora wynosi zatem

 \begin{eqnarray}

f_3(H_1,H_2,H_3,Q_{we}) &=& \frac{\alpha}{2A} \sqrt{H_2-H_3} - \frac{\alpha}{2A} \sqrt{H_3} \\

&\simeq& \frac{\alpha}{2A} \sqrt{H_{20}-H_{30}} - \frac{\alpha}{2A} \sqrt{H_{30}} \nonumber\\

&&+ 0 \cdot (H_1-H_{10}) \nonumber\\

&&+\frac{\alpha}{4A\sqrt{H_{20}-H_{30}}} (H_2-H_{20}) \nonumber \\

&&+ \left( \frac{-\alpha}{4A\sqrt{H_{20}-H_{30}}} +  \frac{-\alpha}{4A\sqrt{H_{30}}} \right) (H_3-H_{30}) \nonumber \\ 

&&+ 0 \cdot (Q_{we}-Q_{we0}) \nonumber

\end{eqnarray} \qquad(1.195)

Obliczyliśmy rozwinięcia w szereg Taylora wszystkich funkcji prawych stron. Przepiszmy zatem jeszcze raz równania stanu, ale zamiast funkcji użyjmy przybliżeń wynikających z szeregu Taylora

 \begin{eqnarray}

\frac{dH_1}{dt} &\simeq& \frac{1}{A}Q_{we0} - \frac{\alpha}{A} \sqrt{H_{10}-H_{20}}  + \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} (H_1-H_{10}) \qquad(1.196) \\

&&+ \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} (H_2-H_{20}) + 0\cdot (H_3-H_{30}) + \frac{1}{A} (Q_{we}-Q_{we0})\nonumber  \\

\frac{dH_2}{dt} &\simeq& \frac{\alpha}{A}  \sqrt{H_{10}-H_{20}} - \frac{\alpha}{A}  \sqrt{H_{20}-H_{30}} + \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} (H_1-H_{10})\qquad(1.197) \\

&&+ \left( \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} +  \frac{-\alpha}{2A\sqrt{H_{20}-H_{30}}} \right) (H_2-H_{20}) \nonumber \\

&&+ \frac{\alpha}{2A\sqrt{H_{20}-H_{30}}} (H_3-H_{30})+ 0 \cdot (Q_{we}-Q_{we0}) \nonumber

\\

\frac{dH_3}{dt} &\simeq& \frac{\alpha}{2A} \sqrt{H_{20}-H_{30}} - \frac{\alpha}{2A} \sqrt{H_{30}} + 0 \cdot (H_1-H_{10}) \\

&&+\frac{\alpha}{4A\sqrt{H_{20}-H_{30}}} (H_2-H_{20}) + \left( \frac{-\alpha}{4A\sqrt{H_{20}-H_{30}}} +  \frac{-\alpha}{4A\sqrt{H_{30}}} \right) (H_3-H_{30}) \qquad(1.198)\\ 

&&+ 0 \cdot (Q_{we}-Q_{we0}) \nonumber

\end{eqnarray}

Zauważmy, że na podstawie warunków na punkt równowagi następujące wyrażenia zerują się

 \begin{eqnarray}

0 &=& f_1(H_{10},H_{20},H_{30},Q_{we0}) = \frac{1}{A}Q_{we0} - \frac{\alpha}{A} \sqrt{H_{10}-H_{20}} \qquad(1.199)\\

0 &=& f_2(H_{10},H_{20},H_{30},Q_{we0}) = \frac{\alpha}{A}  \sqrt{H_{10}-H_{20}} - \frac{\alpha}{A}  \sqrt{H_{20}-H_{30}}\qquad(1.200)\\

0 &=& f_3(H_{10},H_{20},H_{30},Q_{we0}) = \frac{\alpha}{2A} \sqrt{H_{20}-H_{30}} - \frac{\alpha}{2A} \sqrt{H_{30}}\qquad(1.201)

\end{eqnarray}

Wynika z tego, że możemy pominąć wyrazy stałe w rozwinięciu w szereg Taylora

 \begin{eqnarray}

\frac{dH_1}{dt} &\simeq&  \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} (H_1-H_{10})  + \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} (H_2-H_{20}) \\ &&+ 0\cdot (H_3-H_{30}) + \frac{1}{A} (Q_{we}-Q_{we0})\qquad(1.202) \\

\frac{dH_2}{dt} &\simeq& \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} (H_1-H_{10}) \\

&&+ \left( \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} +  \frac{-\alpha}{2A\sqrt{H_{20}-H_{30}}} \right) (H_2-H_{20}) \qquad(1.203)\\

&&+ \frac{\alpha}{2A\sqrt{H_{20}-H_{30}}} (H_3-H_{30})+ 0 \cdot (Q_{we}-Q_{we0}) \nonumber \\

\frac{dH_3}{dt} &\simeq& 0 \cdot (H_1-H_{10}) +\frac{\alpha}{4A\sqrt{H_{20}-H_{30}}} (H_2-H_{20}) \\ &&+ \left( \frac{-\alpha}{4A\sqrt{H_{20}-H_{30}}} +  \frac{-\alpha}{4A\sqrt{H_{30}}} \right) (H_3-H_{30}) + 0 \cdot (Q_{we}-Q_{we0}) \qquad(1.204)

\end{eqnarray}

Wprowadźmy następujące oznaczenia

 \begin{eqnarray}

\Delta H_1 &=& H_1-H_{10} \qquad(1.205)\\ 

\Delta H_2 &=& H_2-H_{20} \qquad(1.206)\\ 

\Delta H_3 &=& H_3-H_{20} \qquad(1.207)\\ 

\Delta Q_{we} &=& Q_{we}-Q_{we0} \qquad(1.208)

\end{eqnarray}

Zmienne  \Delta H_1 ,  \Delta H_2 ,  \Delta H_3 oraz  \Delta Q_{we}  określają przyrosty wartości    H_1 ,   H_2 ,   H_3 oraz   Q_{we}  w stosunku do ich wartości w punkcie pracy  H_{10} ,  H_{20} ,  H_{30} oraz  Q_{we0} .  

Możemy teraz zapisać przybliżenia w równaniach stanu

 \begin{eqnarray}

\frac{dH_1}{dt} &\simeq&  \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} \Delta H_1 + \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} \Delta H_2 + 0\cdot \Delta H_3 + \frac{1}{A} \Delta Q_{we}  \qquad(1.209)\\

\frac{dH_2}{dt} &\simeq& \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} \Delta H_1 + \left( \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} +  \frac{-\alpha}{2A\sqrt{H_{20}-H_{30}}} \right) \Delta H_2   \\

&&+ \frac{\alpha}{2A\sqrt{H_{20}-H_{30}}} \Delta H_3 + 0 \cdot \Delta Q_{we}

\qquad(1.210) \\

\frac{dH_3}{dt} &\simeq& 0 \cdot \Delta H_1 + \frac{\alpha}{4A\sqrt{H_{20}-H_{30}}} \Delta H_2   \\

&&+ \left( \frac{-\alpha}{4A\sqrt{H_{20}-H_{30}}} +  \frac{-\alpha}{4A\sqrt{H_{30}}} \right) \Delta H_3 + 0 \cdot \Delta Q_{we} \qquad(1.211)

\end{eqnarray}

Obliczmy ile wynoszą pochodne zmiennych  \Delta H_1 ,  \Delta H_2 oraz  \Delta H_3 .

 \begin{eqnarray}

\frac{d\Delta H_1}{dt} &=& \frac{d (H_1-H_{10})}{dt} = \frac{d H_1}{dt} - \frac{d H_{10}}{dt} = \frac{d H_1}{dt} \qquad(1.212)\\

\frac{d\Delta H_2}{dt} &=& \frac{d (H_2-H_{20})}{dt} = \frac{d H_2}{dt} - \frac{d H_{20}}{dt} = \frac{d H_2}{dt} \qquad(1.213)\\

\frac{d\Delta H_3}{dt} &=& \frac{d (H_3-H_{30})}{dt} = \frac{d H_3}{dt} - \frac{d H_{30}}{dt} = \frac{d H_3}{dt} \qquad(1.214)

\end{eqnarray}

ponieważ  \frac{d H_{10}}{dt} = 0 ,  \frac{d H_{20}}{dt}=0 oraz  \frac{d H_{30}}{dt}=0 jako pochodne funkcji stałych. Wprowadźmy zatem do przybliżeń wielkości  \frac{d\Delta H_1}{dt} ,  \frac{d\Delta H_2}{dt} oraz  \frac{d\Delta H_3}{dt} zamiast  \frac{d H_1}{dt} ,  \frac{d H_2}{dt} oraz  \frac{d H_3}{dt} .

 \begin{eqnarray}

\frac{d\Delta H_1}{dt} &\simeq&  \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} \Delta H_1 + \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} \Delta H_2 + 0\cdot \Delta H_3 + \frac{1}{A} \Delta Q_{we}  \qquad(1.215)\\

\frac{d\Delta H_2}{dt} &\simeq& \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} \Delta H_1 + \left( \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} +  \frac{-\alpha}{2A\sqrt{H_{20}-H_{30}}} \right) \Delta H_2  \\

&&+ \frac{\alpha}{2A\sqrt{H_{20}-H_{30}}} \Delta H_3 + 0 \cdot \Delta Q_{we} 

\qquad(1.216) \\

\frac{d\Delta H_3}{dt} &\simeq& 0 \cdot \Delta H_1 + \frac{\alpha}{4A\sqrt{H_{20}-H_{30}}} \Delta H_2 \\

&&+ \left( \frac{-\alpha}{4A\sqrt{H_{20}-H_{30}}} +  \frac{-\alpha}{4A\sqrt{H_{30}}} \right) \Delta H_3  + 0 \cdot \Delta Q_{we} \qquad(1.217)

\end{eqnarray}

Zauważmy, że współczynniki stojące przy  \Delta H_1 ,  \Delta H_2 ,  \Delta H_3 , oraz  \Delta Q_{we} pomimo swojej skomplikowanej postaci są stałymi, ponieważ są obliczane w punkcie równowagi. 

Powyższe zależności są spełnione w przybliżeniu. Aby utworzyć równania zlinearyzowane wprowadzamy nowe wielkości  \tilde{H}_1 ,  \tilde{H}_2 ,  \tilde{H}_3 oraz  \tilde{Q}_{we} oraz definiujemy równania  zlinearyzowane w następujący sposób

 \begin{eqnarray}

\frac{d\tilde{H}_1}{dt} &=&  \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} \tilde{H}_1 + \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} \tilde{H}_2 \qquad(1.218) \\

&&+ 0\cdot \tilde{H}_3 + \frac{1}{A} \tilde{Q}_{we} \nonumber \\

\frac{d\tilde{H}_2}{dt} &=& \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} \tilde{H}_1 + \left( \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} +  \frac{-\alpha}{2A\sqrt{H_{20}-H_{30}}} \right) \tilde{H}_2 \qquad(1.219)  \\

&&+ \frac{\alpha}{2A\sqrt{H_{20}-H_{30}}} \tilde{H}_3 + 0 \cdot \tilde{Q}_{we} 
 \\

\frac{d\tilde{H}_3}{dt} &=& 0 \cdot \tilde{H}_1 + \frac{\alpha}{4A\sqrt{H_{20}-H_{30}}} \tilde{H}_2   \\

&&+ \left( \frac{-\alpha}{4A\sqrt{H_{20}-H_{30}}} +  \frac{-\alpha}{4A\sqrt{H_{30}}} \right) \tilde{H}_3 + 0 \cdot \tilde{Q}_{we} \qquad(1.220)

\end{eqnarray}

Są to równania w ścisłym sensie, gdyż zamiast znaku przybliżenia  \simeq pojawia się znak równości. Przydatność linearyzacji opiera się na następującym postulacie.

 Postulujemy, że jeżeli zachodzą następujące warunki 

  •  w pewnym ustalonym przedziale czasu  t\in [ t_0, t_1 ] funkcja sterowań  \tilde{Q}_{we}(t) jest dokładnie równa przyrostowi zmiennej  Q_{we}(t)

 \begin{equation} \tilde{Q}_{we}(t) = \Delta Q_{we}(t) = Q_{we}(t)-Q_{we0} \end{equation} \qquad(1.221)

  • warunki początkowe dla zmiennych  \tilde{H}_1 ,  \tilde{H}_2 , \( \tilde{H}_3 \( są dokładnie równe przyrostom zmiennych  H_1 ,  H_2 oraz  H_3 w chwili początkowej

 \begin{eqnarray}

	\tilde{H}_1(t_0) &=& \Delta H_1(t_0) = H_1(t_0)-H_{10} \qquad(1.222) \\ 

	\tilde{H}_2(t_0) &=& \Delta H_2(t_0) = H_2(t_0)-H_{20} \qquad(1.223)\\

	\tilde{H}_3(t_0) &=& \Delta H_3(t_0) = H_3(t_0)-H_{30} \qquad(1.224)

	\end{eqnarray}

  • w pewnym ustalonym przedziale czasu  t\in [ t_0, t_1 ] rozwiązania nieliniowych równań stanu   H_1(t) ,  H_2(t) oraz  H_3(t) pozostają w otoczeniu punktu równowagi  (H_{10},  H_{20}, H_{30}) ( C_{H_1}, C_{H_2}, C_{H_3} -- stałe dodatnie)

 \begin{eqnarray}

	| H_1(t)-H_{10} | &=& | \Delta H_1(t) | \leq C_{H_1} \qquad(1.225) \\ 

	| H_2(t)-H_{20} | &=& | \Delta H_2(t) | \leq C_{H_2} \qquad(1.226)  \\

	| H_3(t)-H_{30} | &=& | \Delta H_3(t) | \leq C_{H_3} \qquad(1.227) 

	\end{eqnarray}

to rozwiązania  \tilde{H}_1(t) ,  \tilde{H}_2(t) oraz  \tilde{H}_3(t) liniowych równań stanu (1.218)-(1.220) dobrze przybliżają przyrosty zmiennych stanu dla  t\in [ t_0, t_1 ] tzn. w tym przedziale czasu zachodzi przybliżony warunek

 \begin{eqnarray}

\tilde{H}_1(t) &\simeq& \Delta H_1(t)  \qquad(1.228)\\ 

\tilde{H}_2(t) &\simeq& \Delta H_2(t)  \qquad(1.229)\\

\tilde{H}_3(t) &\simeq& \Delta H_3(t) \qquad(1.230)

\end{eqnarray}

Przybliżenie to jest tym lepsze im bliżej wybranego punktu równowagi pozostają rozwiązania nieliniowych równań stanu tzn. im mniejsze są stałe  C_{H_1}, C_{H_2}, C_{H_3} w równaniach (1.225})-(1.226).   

Ścisły dowód tego postulatu wymaga zaawansowanego aparatu matematycznego, dlatego nie będzie zaprezentowany w tym opracowaniu. Intuicyjnie postulat ten jest jednak zrozumiały. Oczekujemy, że rozwiązania zlinearyzowanych równań stanu będą dobrze przybliżały przyrosty zmiennych stanu obiektu nieliniowego w stosunku do ich wartości w wybranym punkcie równowagi, przynajmniej w pewnym otoczeniu tego punktu. Bardzo istotna jest obserwacja, że rozwiązania zlinearyzowanych równań stanu przybliżają przyrosty zmiennych stanu obiektu nieliniowego, a nie same zmienne stanu. 

Funkcja wyjść dla układu trzech zbiorników ma postać

 \begin{equation}

y_1 = g_1(H_1,H_2,H_3) = H_3

\end{equation}\qquad(1.231)

Linearyzacja funkcji wyjść ma postać

 \begin{eqnarray}

g_1(H_1,H_2,H_3) &\simeq& g_1(H_{10},H_{20},H_{30},Q_{we0}) \\

&&+ \frac{\partial g_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_1} (H_1-H_{10}) \nonumber \\

&&+ \frac{\partial g_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_2} (H_2-H_{20}) \nonumber \\

&&+ \frac{\partial g_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_3} (H_3-H_{30}) \nonumber 

\end{eqnarray}\qquad(1.232)

Wartości pochodnych cząstkowych funkcji  g_1 względem zmiennych stanu i sterowań w punkcie równowagi wynoszą

 \begin{eqnarray}

\frac{\partial g_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_1} &=& 0 \qquad(1.233)\\ 

\frac{\partial g_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_2} &=& 0 \qquad(1.234)\\  

\frac{\partial g_1(H_{10},H_{20},H_{30},Q_{we0})}{\partial H_3} &=& 1  \qquad(1.235)

\end{eqnarray}

Rozwinięcie funkcji wyjść w szereg Taylora wynosi zatem

 \begin{equation}

y_1 \simeq y_{10} + 0 \cdot (H_1-H_{10}) +  0 \cdot (H_2-H_{20}) + 1 \cdot (H_3-H_{30}) 

\end{equation}\qquad(1.236)

gdzie  y_{10} = g_1(H_{10},H_{20},H_{30})

Jeżeli przeniesiemy  y_{10} na drugą stronę przybliżenia dostajemy

 \begin{equation}

y_1- y_{10} \simeq  0 \cdot (H_1-H_{10}) +  0 \cdot (H_2-H_{20}) + 1 \cdot (H_3-H_{30})

\end{equation}\qquad(1.237)

Jeżeli teraz wprowadzimy do przybliżenia zmienne przyrostowe, to otrzymujemy

 \begin{equation}

\Delta y_1 \simeq  0 \cdot \Delta H_1 +  0 \cdot \Delta H_2 + 1 \cdot \Delta H_3 

\end{equation}\qquad(1.238)

gdzie 

 \begin{equation}

\Delta y_1 = y_1-y_{10}

\end{equation}\qquad(1.239)

Aby zdefiniować zlinearyzowane równanie wyjść wprowadzamy zmienną  \tilde{y}_1 . Zlinearyzowane równanie wyjść ma postać

 \begin{equation}

\tilde{y}_1 = 0 \cdot \tilde{H}_1 +  0 \cdot \tilde{H}_2 + 1 \cdot \tilde{H}_3 

\end{equation}\qquad(1.240)

Postulując takie same warunki jak w przypadku równań stanu oczekujemy, że rozwiązanie równania wyjść  \tilde{y}_1 będzie dobrze przybliżać przyrost zmiennej wyjściowej  y_1

 \begin{equation}

\tilde{y}_1 \simeq \Delta y_1 = y_1-y_{10}

\end{equation}\qquad(1.241)

Zlinearyzowane równania stanu i wyjść mogą zostać przedstawione w postaci wektorowej

 \begin{eqnarray}

\left(

\begin{array}{c}

\frac{d\tilde{H}_1}{dt}\\ \frac{d\tilde{H}_2}{dt}  \\  \frac{d\tilde{H}_3}{dt}

\end{array}

\right) &=& 

\left(

\begin{array}{ccc}

\frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} & \frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} & 0 \\

\frac{\alpha}{2A\sqrt{H_{10}-H_{20}}} &   \frac{-\alpha}{2A\sqrt{H_{10}-H_{20}}} + \frac{-\alpha}{2A\sqrt{H_{20}-H_{30}}}  &   \frac{\alpha}{2A\sqrt{H_{20}-H_{30}}} \\

0 &  \frac{\alpha}{4A\sqrt{H_{20}-H_{30}}} &  \frac{-\alpha}{4A\sqrt{H_{20}-H_{30}}} +  \frac{-\alpha}{4A\sqrt{H_{30}}} 

\end{array}

\right)

\left(

\begin{array}{c}

\tilde{H}_1\\  \tilde{H}_2 \\  \tilde{H}_3

\end{array}

\right) \nonumber \\

&&+

\left(

\begin{array}{c}

\frac{1}{A} \\ 0 \\ 0

\end{array}

\right)

\left( \tilde{Q}_{we} \right)

\end{eqnarray}\qquad(1.242)

 \begin{eqnarray}

\left( y_1 \right) &=& 

\left(

\begin{array}{ccc}

0 & 0 & 1 

\end{array}

\right)

\left(

\begin{array}{c}

\tilde{H}_1\\  \tilde{H}_2 \\  \tilde{H}_3

\end{array}

\right) 

\end{eqnarray}

\qquad(1.243)



3.3. Przykład 1: Porównanie przebiegów czasowych modeli

  Aby przetestować zdolność modelu zlinearyzowanego do przybliżania dynamiki obiektu nieliniowego porównajmy przebiegi czasowe zmiennych stanu dla obu modeli. Przyjmujemy parametry obiektu  A = 0.5 ,  \alpha = 1 . Wybieramy punkt równowagi  H_{10}=0.75 ,  H_{20}=0.5  H_{30}=0.25 oraz  Q_{we0} = 0.5 . Aby porównać zachowanie modelu nieliniowego i zlinearyzowanego rozważamy dwa scenariusze. W pierwszym scenariuszu zakładamy, że w chwili początkowej obiekt nie znajduje się w punkcie równowagi. 

Ponadto przyjmujemy, że sterowanie obiektu jest stałe i równe sterowaniu w punkcie równowagi  Q_{we}(t) = Q_{we0}. Ze wzoru (1.221) wynika, że sterowanie obiektu zlinearyzowanego wynosi

 \begin{equation} \tilde{Q}_{we}(t) = Q_{we}(t)-Q_{we0} = Q_{we0}-Q_{we0}=0 \end{equation}\qquad(1.244)

Zmienne stanu obiektu zlinearyzowanego  \tilde{H}_1(t) ,  \tilde{H}_2(t) oraz  \tilde{H}_3(t) przybliżają przyrosty zmiennych stanu obiektu nieliniowego  \Delta H_1(t) ,  \Delta H_2(t) ,  \Delta H_3(t) . Wykonamy symulacje dla czterech zestawów warunków początkowych. Warunki początkowe dla przyrostów zmiennych stanu wynoszą

  •  \Delta H_1(t_0) = 0.2 ,  \Delta H_2(t_0) = -0.2 ,  \Delta H_3(t_0) = 0
  • \Delta H_1(t_0) = 0.1 ,  \Delta H_2(t_0) = -0.1 ,  \Delta H_3(t_0) = 0
  •  \Delta H_1(t_0) = 0.04 ,  \Delta H_2(t_0) = -0.04 ,  \Delta H_3(t_0) = 0
  •  \Delta H_1(t_0) = 0.02 ,  \Delta H_2(t_0) = -0.02 ,  \Delta H_3(t_0) = 0

Warunki początkowe dla zmiennych przyrostowych zmniejszają się proporcjonalnie dla kolejnych zestawów. Spodziewamy się, że dla coraz mniejszych początkowych przyrostów, trajektorie zmiennych stanu obiektu zlinearyzowanego będą coraz lepiej przybliżać trajektorie przyrostów stanu obiektu nieliniowego. Zgodnie z (1.222)-(1.224}) warunki początkowe dla modelu zlinearyzowanego wynoszą

 \begin{equation} \tilde{H}_1(t_0) = \Delta H_1(t_0),\ \tilde{H}_2(t_0) = \Delta H_2(t_0),\ \tilde{H}_3(t_0) = \Delta H_3(t_0) \end{equation}\qquad(1.245)


Na Rys. 1.12 przedstawiono porównanie trajektorii zmiennej przyrostowej  \Delta H_3(t) obiektu nieliniowego i zmiennej  \tilde{H}_3(t) obiektu zlinearyzowanego dla ww. zestawów warunków początkowych. Wyraźnie widzimy, że im bliżej punktu równowagi w chwili początkowej znajduje się obiekt, tym lepiej zmienna  \tilde{H}_3(t) przybliża przebieg zmiennej  \Delta H_3(t) .

W drugim scenariuszu zakładamy, że w chwili początkowej obiekt znajduje się w punkcie równowagi. Taka sytuacja odpowiada zerowym warunkom początkowym

 \begin{equation} \tilde{H}_1(t_0) = \Delta H_1(t_0) = 0,\ \tilde{H}_2(t_0) = \Delta H_2(t_0) = 0,\ \tilde{H}_3(t_0) = \Delta H_3(t_0) = 0 \end{equation}\qquad(1.246)

Badamy teraz zachowanie układu w odpowiedzi na zmienne sterowanie  Q_{we}(t). Porównajmy trajektorie obiektu nieliniowego i zlinearyzowanego dla sygnału sterującego typu fala prostokątna oscylującego wokół wartości w punkcie równowagi  Q_{we0}=0.5 . Wypełnienie fali wynosi 50%, natomiast jej okres wynosi 2. Amplituda wahań fali prostokątnej dla czterech testowanych przypadków wynosi odpowiednio 0.25, 0.125, 0.05, 0.025.  

Sterowanie obiektu zlinearyzowanego w każdym przypadku wynosi

 \begin{equation} \tilde{Q}_{we}(t) = Q_{we}(t)-Q_{we0} \end{equation}\qquad(1.247)


a) \Delta H_1(t_0) = 0.2 ,  \Delta H_2(t_0) = -0.2 ,  \Delta H_3(t_0) = 0  


b) \Delta H_1(t_0) = 0.1 ,  \Delta H_2(t_0) = -0.1 ,  \Delta H_3(t_0) = 0


c) (\Delta H_1(t_0) = 0.04 \),  \Delta H_2(t_0) = -0.04 ,  \Delta H_3(t_0) = 0


d) \Delta H_1(t_0) = 0.02 ,  \Delta H_2(t_0) = -0.02 ,  \Delta H_3(t_0) = 0


Rysunek 1.12 Porównanie trajektorii  \Delta H_3(t) obiektu nieliniowego oraz trajektorii  \tilde{H}_3(t) obiektu zlinearyzowanego w odpowiedzi na niezerowe warunki początkowe.


a) Amplituda fali prostokątnej 0.25


b) Amplituda fali prostokątnej 0.125


c) Amplituda fali prostokątnej 0.05


d) Amplituda fali prostokątnej 0.025


Rysunek 1.13 Porównanie trajektorii  \Delta H_3(t) obiektu nieliniowego oraz trajektorii  \tilde{H}_3(t) obiektu zlinearyzowanego w odpowiedzi na sygnał sterujący typu fala prostokątna.}

Spodziewamy się, że im mniejsza będzie amplituda zmian sygnału sterującego, tym lepiej trajektorie zmiennych stanu obiektu zlinearyzowanego będą przybliżać trajektorie przyrostów stanu obiektu nieliniowego. Na Rys. 1.13  przedstawiono porównanie trajektorii zmiennej przyrostowej \( \Delta H_3(t) \( obiektu nieliniowego i zmiennej  \tilde{H}_3(t) obiektu zlinearyzowanego dla sygnałów sterujących w kształcie fali prostokątnej o zmniejszającej się amplitudzie. Wyraźnie widzimy, że im mniejsza jest amplituda sygnału sterującego, tym lepiej zmienna  \tilde{H}_3(t) przybliża przebieg zmiennej  \Delta H_3(t) .


3.4. Przykład 2 linearyzacji równań modelu obiektu

Wyprowadźmy teraz zlinearyzowane równania stanu dla wahadła. Przypomnijmy równania stanu dla wahadła

 \begin{eqnarray}

        \frac{d\theta(t)}{dt} &=& \omega(t) \qquad(1.248)\\

        \frac{d\omega(t)}{dt} &=& \frac{g}{l}sin\theta(t) - \frac{D}{ml^2} \omega(t) +\frac{1}{ml^2} M(t)
        \qquad(1.249)
        \end{eqnarray}

Funkcja prawych stron z pierwszego równania stanu ma postać

 \begin{equation}

        f_1(\theta, \omega, M) = \omega

        \end{equation}\qquad(1.250)

Dla skrócenia zapisu pomijamy w zapisie argument czasu 
    (t) .

Rozwinięcie funkcji  f_1 w szereg Taylora wokół punktu równowagi  (\theta_0, \omega_0, M_0) ma postać

 \begin{eqnarray}

        f_1(\theta, \omega, M) &\simeq& f_1(\theta_0, \omega_0, M_0) + \frac{\partial f_1(\theta_0, \omega_0, M_0)}{\partial \theta} (\theta-\theta_0) \\

        &&+ \frac{\partial f_1(\theta_0, \omega_0, M_0)}{\partial \omega} (\omega-\omega_0) + \frac{\partial f_1(\theta_0, \omega_0, M_0)}{\partial M} (M-M_0) \qquad(1.251)

        \end{eqnarray}

Obliczmy wartości pochodnych cząstkowych funkcji  f_1 względem zmiennych stanu i sterowań w punkcie równowagi

 \begin{eqnarray}

        \frac{\partial f_1(\theta_0, \omega_0, M_0)}{\partial \theta} &=& 0 \qquad(1.252)\\

        \frac{\partial f_1(\theta_0, \omega_0, M_0)}{\partial \omega} &=& 1 \qquad(1.253)\\

        \frac{\partial f_1(\theta_0, \omega_0, M_0)}{\partial M} &=& 0\qquad(1.254)

        \end{eqnarray}

Rozwinięcie funkcji  f_1 w szereg Taylora wynosi zatem

 \begin{equation}

        f_1(\theta, \omega, M) \simeq \omega_0 + 0 \cdot (\theta-\theta_0) + 1 \cdot (\omega-\omega_0) + 0 \cdot (M-M_0)

        \end{equation}\qquad(1.255)

Funkcja prawych stron z drugiego równania stanu ma postać

 \begin{equation}

        f_2(\theta, \omega, M) = \frac{g}{l}sin\theta - \frac{D}{ml^2} \omega +\frac{1}{ml^2} M

        \end{equation}\qquad(1.256)

Rozwinięcie funkcji  f_2 w szereg Taylora wokół punktu równowagi  (\theta_0, \omega_0, M_0) ma postać

 \begin{eqnarray}

        f_2(\theta, \omega, M) &\simeq& f_2(\theta_0, \omega_0, M_0) + \frac{\partial f_2(\theta_0, \omega_0, M_0)}{\partial \theta} (\theta-\theta_0) \\

        &&+ \frac{\partial f_2(\theta_0, \omega_0, M_0)}{\partial \omega} (\omega-\omega_0) + \frac{\partial f_2(\theta_0, \omega_0, M_0)}{\partial M} (M-M_0) \qquad(1.257)

        \end{eqnarray}

Obliczmy wartości pochodnych cząstkowych funkcji  f_2 względem zmiennych stanu i sterowań w punkcie równowagi

 \begin{eqnarray}

        \frac{\partial f_2(\theta_0, \omega_0, M_0)}{\partial \theta} &=& \frac{g}{l}cos\theta_0 \qquad(1.258)\\

        \frac{\partial f_2(\theta_0, \omega_0, M_0)}{\partial \omega} &=& -\frac{D}{ml^2} \qquad(1.259)\\

        \frac{\partial f_2(\theta_0, \omega_0, M_0)}{\partial M} &=& \frac{1}{ml^2}\qquad(1.260)

        \end{eqnarray}

Rozwinięcie funkcji  f_2 w szereg Taylora wynosi zatem

 \begin{eqnarray}

        f_2(\theta, \omega, M) &\simeq& \frac{g}{l}sin\theta_0 - \frac{D}{ml^2} \omega_0 +\frac{1}{ml^2} M_0 + \frac{g}{l}cos\theta_0 (\theta-\theta_0) \\

        && - \frac{D}{ml^2} (\omega-\omega_0) + \frac{1}{ml^2} (M-M_0) \nonumber

        \end{eqnarray}\qquad(1.261)

Obliczyliśmy rozwinięcia w szereg Taylora wszystkich funkcji prawych stron. Przepiszmy zatem jeszcze raz równania stanu, ale zamiast funkcji użyjmy przybliżeń wynikających z szeregu Taylora

 \begin{eqnarray}

        \frac{d\theta}{dt} &\simeq& \omega_0 + 0 \cdot (\theta-\theta_0) + 1 \cdot (\omega-\omega_0) + 0 \cdot (M-M_0) \\

        \frac{d\omega}{dt} &\simeq& \frac{g}{l}sin\theta_0 - \frac{D}{ml^2} \omega_0 +\frac{1}{ml^2} M_0 + \frac{g}{l}cos\theta_0 (\theta-\theta_0) \qquad(1.262)\\

        &&- \frac{D}{ml^2} (\omega-\omega_0) + \frac{1}{ml^2} (M-M_0) \\qquad(1.263)

        \end{eqnarray}

Zauważmy, że na podstawie warunków na punkt równowagi następujące wyrażenia zerują się

 \begin{eqnarray}

        0 &=& f_1(\theta_0, \omega_0, M_0) = \omega_0 \qquad(1.264)\\

        0 &=& f_2(\theta_0, \omega_0, M_0)= \frac{g}{l}sin\theta_0 - \frac{D}{ml^2} \omega_0 +\frac{1}{ml^2} M_0\qquad(1.265)

        \end{eqnarray}

Wynika z tego, że możemy pominąć wyrazy stałe w rozwinięciu w szereg Taylora

 \begin{eqnarray}

        \frac{d\theta}{dt} &\simeq& 0 \cdot (\theta-\theta_0) + 1 \cdot (\omega-\omega_0) + 0 \cdot (M-M_0) \qquad(1.266)\\

        \frac{d\omega}{dt} &\simeq& \frac{g}{l}cos\theta_0 (\theta-\theta_0) - \frac{D}{ml^2} (\omega-\omega_0) + \frac{1}{ml^2} (M-M_0)\qquad(1.267)

        \end{eqnarray}

Wprowadźmy następujące oznaczenia

 \begin{eqnarray}

        \Delta \theta &=& \theta-\theta_0\qquad(1.268)\\

        \Delta \omega &=& \omega-\omega_0\qquad(1.269)\\

        \Delta M &=& M-M_0\qquad(1.270)

        \end{eqnarray}

Zmienne  \Delta \theta ,  \Delta \omega oraz 
    \Delta M  określają przyrosty wartości    \theta ,  
    \omega oraz   M  w stosunku do ich wartości w punkcie pracy  \theta_0 ,  \omega_0 oraz  M_0 . Możemy teraz zapisać przybliżenia w równaniach stanu jako

 \begin{eqnarray}

        \frac{d\theta}{dt} &\simeq& 0 \cdot \Delta \theta + 1 \cdot \Delta \omega + 0 \cdot \Delta M \qquad(1.271)\\

        \frac{d\omega}{dt} &\simeq& \frac{g}{l}cos\theta_0 \Delta \theta - \frac{D}{ml^2} \Delta \omega + \frac{1}{ml^2} \Delta M \qquad(1.272)

        \end{eqnarray}

Pochodne zmiennych przyrostowych \Delta \theta oraz 
    \Delta \omega są równe pochodnym zmiennych oryginalnych

 \begin{eqnarray}

        \frac{d\Delta \theta}{dt} &=& \frac{d (\theta-\theta_0)}{dt} = \frac{d \theta}{dt} - \frac{d \theta_0}{dt} = \frac{d \theta}{dt} \qquad(1.273)\\

        \frac{d\Delta \omega}{dt} &=& \frac{d (\omega-\omega_0)}{dt} = \frac{d \omega}{dt} - \frac{d \omega_0}{dt} = \frac{d \omega}{dt}\qquad(1.274)

        \end{eqnarray}

Wprowadźmy zatem do przybliżeń wielkości  \frac{d\Delta
    \theta}{dt} oraz  \frac{d\Delta \omega}{dt} zamiast  \frac{d
    \theta}{dt} oraz  \frac{d \omega}{dt} .

 \begin{eqnarray}

        \frac{d\Delta \theta}{dt} &\simeq& 0 \cdot \Delta \theta + 1 \cdot \Delta \omega + 0 \cdot \Delta M \qquad(1.275)\\

        \frac{d\Delta \omega}{dt} &\simeq& \frac{g}{l}cos\theta_0 \Delta \theta - \frac{D}{ml^2} \Delta \omega + \frac{1}{ml^2} \Delta M
        \qquad(1.276)
        \end{eqnarray}

 

Powyższe zależności są spełnione w przybliżeniu. Aby utworzyć równania zlinearyzowane wprowadzamy nowe wielkości  \tilde{\theta} , 
    \tilde{\omega} , oraz  \tilde{M} oraz definiujemy równania  zlinearyzowane w następujący sposób

 \begin{eqnarray}

        \frac{d\tilde{\theta}}{dt} &=& 0 \cdot \tilde{\theta} + 1 \cdot \tilde{\omega} + 0 \cdot \tilde{M} \qquad(1.277) \\

        \frac{d\tilde{\omega}}{dt} &=& \frac{g}{l}cos\theta_0 \tilde{\theta} - \frac{D}{ml^2} \tilde{\omega} + \frac{1}{ml^2} \tilde{M} \qquad(1.278)

        \end{eqnarray}

Są to równania w ścisłym sensie, gdyż zamiast znaku przybliżenia  \simeq pojawia  się znak równości. Postulujemy, że jeżeli zachodzą następujące warunki

  • w pewnym ustalonym przedziale czasu  t\in [ t_0, t_1 ] funkcja sterowań 
            \tilde{M}(t) jest dokładnie równa przyrostowi zmiennej  M(t)

 \begin{equation}

        \tilde{M}(t) = \Delta M(t) = M(t)-M_0 \qquad(1.279)

        \end{equation}

  • warunki początkowe dla zmiennych  \tilde{\theta} ,  \tilde{\omega} są dokładnie równe przyrostom zmiennych  \theta oraz  \omega w chwili początkowej

 \begin{eqnarray}

        \tilde{\theta}(t_0) &= &\Delta \theta(t_0) = \theta(t_0) - \theta_0 \qquad(1.280) \\

        \tilde{\omega}(t_0) &= &\Delta \omega(t_0) = \omega(t_0) - \omega_0 \qquad(1.281)

        \end{eqnarray}

  • w pewnym ustalonym przedziale czasu  t\in [ t_0, t_1 ] rozwiązania nieliniowych równań stanu   \theta(t) oraz  \omega(t) pozostają w otoczeniu punktu równowagi  (\theta_0,
        \omega_0) ( C_{\theta}, C_{\omega} -- stałe dodatnie)

 \begin{eqnarray}

        | \theta(t)-\theta_0 | &=& | \Delta \theta(t) | \leq C_{\theta} \qquad(1.282) \\

        | \omega(t)-\omega_0 | &=& | \Delta \omega(t) | \leq C_{\omega} \qquad(1.282)

        \end{eqnarray}

to rozwiązania  \tilde{\theta}(t) oraz 
    \tilde{\omega}(t) liniowych równań stanu (1.277)-(1.278) dobrze przybliżają przyrosty zmiennych stanu dla  t\in [ t_0, t_1 ] tzn. w tym przedziale czasu zachodzą przybliżone warunki

 \begin{eqnarray}

        \tilde{\theta}(t) &\simeq& \Delta \theta(t) \qquad(1.284)\\

        \tilde{\omega}(t) &\simeq& \Delta \omega(t) \qquad(1.285)

        \end{eqnarray}

Przybliżenie to jest tym lepsze im bliżej wybranego punktu równowagi pozostają rozwiązania nieliniowych równań stanu tzn. im mniejsze są stałe  C_{\theta}, C_{\omega}  w równaniach (1.282)-(1.283).

Funkcja wyjść dla wahadła ma postać

 \begin{equation}

        y_1 = g_1(\theta,\omega) = \theta

        \end{equation}\qquad(1.286)

Linearyzacja funkcji wyjść ma postać

 \begin{equation}

        g_1(\theta,\omega) \simeq g_1(\theta_0,\omega_0) + \frac{\partial g_1(\theta_0,\omega_0)}{\partial \theta} (\theta-\theta_0) + \frac{\partial g_1(\theta_0,\omega_0)}{\partial \omega} (\omega-\omega_0)

        \end{equation}\qquad(1.287)

Wartości pochodnych cząstkowych funkcji  g_1 względem zmiennych stanu i sterowań w punkcie równowagi wynoszą

 \begin{eqnarray}

        \frac{\partial g_1(\theta_0,\omega_0)}{\partial \theta} &=& 1 \qquad(1.288)\\

        \frac{\partial g_1(\theta_0,\omega_0)}{\partial \omega} &=& 0 \qquad(1.289)

        \end{eqnarray}

Rozwinięcie funkcji wyjść w szereg Taylora wynosi zatem

 \begin{equation}

        y_1 \simeq y_{10} + 1 \cdot (\theta-\theta_0)+ 0 \cdot (\omega-\omega_0)

        \end{equation}/qquad(1.290)

gdzie  y_{10} = g_1(\theta_0,\omega_0) .

Jeżeli przeniesiemy  y_{10} na drugą stronę przybliżenia dostajemy

 \begin{equation}

        y_1- y_{10} \simeq 1 \cdot (\theta-\theta_0)+ 0 \cdot (\omega-\omega_0)

        \end{equation}\qquad(1.291)

Jeżeli teraz wprowadzimy do przybliżenia zmienne przyrostowe, to otrzymujemy

 \begin{equation}

        \Delta y_1 \simeq 1 \cdot \Delta \theta + 0 \cdot \Delta \omega

        \end{equation}\qquad(1.292)

gdzie

 \begin{equation}

        \Delta y_1 = y_1-y_{10}

        \end{equation}\qquad(1.293)

Aby zdefiniować zlinearyzowane równanie wyjść wprowadzamy zmienną  \tilde{y}_1 . Zlinearyzowane równanie wyjść ma postać

 \begin{equation}

        \tilde{y}_1 = 1 \cdot \tilde{\theta} + 0 \cdot \tilde{\omega}

        \end{equation}\qquad(1.294)

Postulując takie same warunki jak w przypadku równań stanu oczekujemy, że rozwiązanie równania wyjść  \tilde{y}_1 będzie dobrze przybliżać przyrost zmiennej wyjściowej  y_1

 \begin{equation}

        \tilde{y}_1 \simeq \Delta y_1 = y_1-y_{10}

        \end{equation}\qquad(1.295)

Zlinearyzowane równania stanu i wyjść mogą zostać przedstawione w postaci wektorowej

 \begin{equation}

        \left(

        \begin{array}{c}

        \frac{d\tilde{\theta}}{dt}\\ \frac{d\tilde{\omega}}{dt}

        \end{array}

        \right) =

        \left(

        \begin{array}{cc}

        0 & 1 \\

        \frac{g}{l}cos\theta_0 & -\frac{D}{ml^2}

        \end{array}

        \right)

        \left(

        \begin{array}{c}

        \tilde{\theta}\\ \tilde{\omega}

        \end{array}

        \right) +

        \left(

        \begin{array}{c}

        0 \\ \frac{1}{ml^2}

        \end{array}

        \right)

        \left( \tilde{M} \right)

        \end{equation}\qquad(1.296)

 \begin{eqnarray}

        \left( y_1 \right) &=&

        \left(

        \begin{array}{cc}

        1 & 0

        \end{array}

        \right)

        \left(

        \begin{array}{c}

        \tilde{\theta}\\ \tilde{\omega}

        \end{array}

        \right)

        \end{eqnarray}\qquad(1.297)

 Aby przetestować zdolność modelu zlinearyzowanego do przybliżania dynamiki obiektu nieliniowego porównajmy przebiegi czasowe zmiennych stanu dla obu modeli. Przyjmujemy parametry obiektu  m = 0.1 , 
        l = 1 ,  g = 10 ,  D = 0.1 . Wybieramy punkt równowagi odpowiadający 
        \theta_0=\frac{5\pi}{6} ,  \omega_0=0 oraz  M_{0} = -0.5 . W pierwszym scenariuszu zakładamy, że w chwili początkowej obiekt nie znajduje się w punkcie równowagi.

Ponadto przyjmujemy, że sterowanie obiektu jest stałe i równe sterowaniu w punkcie równowagi  M(t) = M_0. Ze wzoru (1.279) wynika, że sterowanie obiektu zlinearyzowanego wynosi

 \begin{equation}

        \tilde{M}(t) = M(t)-M_0 = M_0-M_0=0

        \end{equation}\qquad(1.298)

Zmienne stanu obiektu zlinearyzowanego  \tilde{\theta}(t) , oraz  \tilde{\omega}(t) przybliżają przyrosty zmiennych stanu obiektu nieliniowego  \Delta \theta ,  \Delta \omega . Wykonamy symulacje dla czterech zestawów warunków początkowych. Warunki początkowe dla przyrostów zmiennych stanu wynoszą

  •  \Delta
        \theta(t_0) = -\frac{\pi}{3} ,  \Delta \omega(t_0) = -1
  • \Delta
        \theta(t_0) = -\frac{\pi}{6} ,  \Delta \omega(t_0) = -0.5
  • \Delta
        \theta(t_0) = -\frac{\pi}{15} ,  \Delta \omega(t_0) = -0.2
  • \Delta
        \theta(t_0) = -\frac{\pi}{30} ,  \Delta \omega(t_0) = -0.1

Warunki początkowe dla zmiennych przyrostowych zmniejszają się proporcjonalnie dla kolejnych zestawów. Spodziewamy się, że dla coraz mniejszych początkowych przyrostów, trajektorie zmiennych stanu obiektu zlinearyzowanego będą coraz lepiej przybliżać trajektorie przyrostów stanu obiektu nieliniowego. Zgodnie z (1.280})-(1.281) warunki początkowe dla modelu zlinearyzowanego wynoszą

 \begin{equation}

        \tilde{\theta}(t_0) = \Delta \theta(t_0),\ \tilde{\omega}(t_0) = \Delta \omega(t_0)

        \end{equation}\qquad(1.299)

 

Na Rys. 1.14  przedstawiono porównanie trajektorii zmiennej przyrostowej  \Delta \theta(t) obiektu nieliniowego i zmiennej  \tilde{\theta}(t) obiektu zlinearyzowanego dla ww. zestawów warunków początkowych. Wyraźnie widzimy, że im bliżej punktu równowagi w chwili początkowej znajduje się obiekt, tym lepiej zmienna  \tilde{\theta}(t) przybliża przebieg zmiennej  \Delta \theta(t).

 

                              a) \Delta
    \theta(t_0) = -\frac{\pi}{3} ,  \Delta \omega(t_0) = -1


                              b) \Delta
    \theta(t_0) = -\frac{\pi}{6} ,  \Delta \omega(t_0) = -0.5 


                              c) \Delta
    \theta(t_0) = -\frac{\pi}{15} ,  \Delta \omega(t_0) = -0.2


                              d) \Delta
    \theta(t_0) = -\frac{\pi}{30} ,  \Delta \omega(t_0) = -0.1 


Rysunek 1.14 Porównanie trajektorii  \Delta \theta(t) obiektu nieliniowego oraz trajektorii 
        \tilde{\theta}(t) obiektu zlinearyzowanego w odpowiedzi na niezerowe warunki początkowe.

Wartości sterowania  M_{0} = -0.5 odpowiada także drugi punkt równowagi  \theta_0=\frac{\pi}{6} ,  \omega_0=0 . Ponownie wykonujemy symulacje dla czterech zestawów warunków początkowych. Warunki początkowe dla przyrostów zmiennych stanu wynoszą

  •  \Delta
        \theta(t_0) = \frac{\pi}{3} ,  \Delta \omega(t_0) = -1
  • \Delta
        \theta(t_0) = \frac{\pi}{30} ,  \Delta \omega(t_0) = -0.1
  •  \Delta
        \theta(t_0) = \frac{\pi}{300} ,  \Delta \omega(t_0) = -0.01
  •  \Delta
        \theta(t_0) = \frac{\pi}{3000} ,  \Delta \omega(t_0) = -0.001

Warunki początkowe dla zmiennych przyrostowych zmniejszają się proporcjonalnie dla kolejnych zestawów. Zgodnie z (1.280)-(1.281) warunki początkowe dla modelu zlinearyzowanego wynoszą

 \begin{equation}

        \tilde{\theta}(t_0) = \Delta \theta(t_0),\ \tilde{\omega}(t_0) = \Delta \omega(t_0)

        \end{equation}\qquad(1.300)

Na Rys. 1.15 przedstawiono porównanie trajektorii zmiennej przyrostowej  \Delta \theta(t) obiektu nieliniowego i zmiennej  \tilde{\theta}(t) obiektu zlinearyzowanego dla ww. zestawów warunków początkowych. Tym razem zachowanie obiektu nieliniowego i zlinearyzowanego są diametralnie różne. Dla każdego zestawu warunków początkowych wahadło najpierw spada ( \theta(t) rośnie), następnie wykonuje oscylacje wokół położenia kątowego  \theta =
    \frac{5\pi}{6}  , by wreszcie ustabilizować się w tym położeniu. Niezależnie od tego jak blisko położenia równowagi  \theta_0 = \frac{\pi}{6} znajduje się obiekt w chwili początkowej, wahadło trwale oddala się od tego położenia i stabilizuje się w innym położeniu równowagi. Trajektoria  \tilde{\theta}(t) z kolei rośnie w bardzo szybkim tempie (jak funkcja  e^t ) i nie wykazuje żadnych drgań.

Różnica pomiędzy zachowaniem obiektu nieliniowego i zlinearyzowanego w tym przypadku wynika z niespełnienia warunków (1.282)-(1.283) na rozważanym horyzoncie czasu. Trajektorie zmiennych stanu trwale oddalają się od pierwotnego punktu równowagi niezależnie od tego jak blisko punktu równowagi znajdują się warunki początkowe.

Zauważmy jednak, że dla początkowego przedziału czasu, gdy trajektorie zmiennych stanu znajdują się jeszcze blisko punktu równowagi, trajektorie modelu zlinearyzowanego dobrze przybliżają trajektorie modelu nieliniowego. Jest to bardzo ważna cecha linearyzacji. Dopóki nie oddalamy się zbytnio od punktu równowagi, model zlinearyzowany dobrze przybliża zachowanie modelu nieliniowego. Jeżeli jednak oddalimy się zbytnio od punktu równowagi, wtedy nie możemy oczekiwać od modelu zlinearyzowanego dobrego przybliżenia dynamiki modelu nieliniowego. Oba modele mogą w takiej sytuacji dawać kompletnie odmienne rezultaty.

W drugim scenariuszu zakładamy, że w chwili początkowej obiekt znajduje się w punkcie równowagi  \theta_0=\frac{5\pi}{6} , 
    \omega_0=0 oraz  M_{0} = -0.5 . Taka sytuacja odpowiada zerowym warunkom początkowym

 \begin{equation}

        \tilde{\theta}(t_0) = \Delta \theta(t_0) = 0,\ \tilde{\omega}(t_0) = \Delta \omega(t_0) = 0

        \end{equation}\qquad(1.301)

 

a) \Delta
        \theta(t_0) = \frac{\pi}{3} ,  \Delta \omega(t_0) = -1 


b) \Delta
    \theta(t_0) = \frac{\pi}{30} ,  \Delta \omega(t_0) = -0.1 


c) \Delta
    \theta(t_0) = \frac{\pi}{300} ,  \Delta \omega(t_0) = -0.01 


d) \Delta
    \theta(t_0) = \frac{\pi}{3000} ,  \Delta \omega(t_0) = -0.001 


               Rysunek 1.5 Porównanie trajektorii  \Delta \theta(t) obiektu nieliniowego oraz trajektorii 
    \tilde{\theta}(t) obiektu zlinearyzowanego w odpowiedzi na niezerowe warunki początkowe.

 

a) Amplituda fali prostokątnej 0.25


b) Amplituda fali prostokątnej 0.125


c) Amplituda fali prostokątnej 0.05


d) Amplituda fali prostokątnej 0.025


              Rysunek 1.16 Porównanie trajektorii  \Delta H_3(t) obiektu nieliniowego oraz trajektorii 
    \tilde{H}_3(t) obiektu zlinearyzowanego w odpowiedzi na sygnał sterujący typu fala prostokątna.


Badamy teraz zachowanie układu w odpowiedzi na zmienne sterowanie  M(t). Porównajmy trajektorie obiektu nieliniowego i zlinearyzowanego dla sygnału sterującego typu fala prostokątna oscylującego wokół wartości w punkcie równowagi  M_0=-0.5 . Wypełnienie fali wynosi 50%, natomiast jej okres wynosi 2. Amplituda wahań fali prostokątnej dla czterech testowanych przypadków wynosi odpowiednio 0.25, 0.125, 0.05, 0.025.

Sterowanie obiektu zlinearyzowanego w każdym przypadku wynosi

 \begin{equation}

        \tilde{M}(t) = M(t)-M_{0}

        \end{equation}\qquad(1.302)

Na Rys. 1.16 przedstawiono porównanie trajektorii zmiennej przyrostowej  \Delta \theta(t) obiektu nieliniowego i zmiennej  \tilde{\theta}(t) obiektu zlinearyzowanego dla sygnałów sterujących w kształcie fali prostokątnej o zmniejszającej się amplitudzie. Tym razem trajektorie układu nieliniowego pozostają w pobliżu punktu równowagi na całym horyzoncie czasu. Im mniejsza jest amplituda sygnału sterującego, tym lepiej zmienna  \tilde{\theta}(t) przybliża przebieg zmiennej  \Delta \theta(t) .


3.5. Linearyzacja równań modelu obiektu - przypadek ogólny

Rozważamy równania w postaci ogólnej

 \begin{eqnarray}

        \frac{dx_1}{dt} &=& f_1(x_1,\cdots,x_j,\cdots,x_n,u_1,\cdots,u_k,\cdots,u_m) \qquad(1.303) \\

        &\vdots& \nonumber \\

        \frac{dx_i}{dt} &=& f_i(x_1,\cdots,x_j,\cdots,x_n,u_1,\cdots,u_k,\cdots,u_m) \qquad(1.304) \\

        &\vdots& \nonumber \\

        \frac{dx_n}{dt} &=& f_n(x_1,\cdots,x_j,\cdots,x_n,u_1,\cdots,u_k,\cdots,u_m) \qquad(1.305)

        \end{eqnarray}

Linearyzacja  i -tej funkcji prawych stron w pobliżu punktu równowagi  (x_0,u_0) ma postać

 \begin{eqnarray}

        && f_i(x_1,\cdots,x_j,\cdots,x_n,u_1,\cdots,u_k,\cdots,u_m) \simeq \\

        &&\qquad (1.306)f_i(x_{10},\cdots,x_{j0},\cdots,x_{n0},u_{10},\cdots,u_{k0},\cdots,u_{m0}) \nonumber \\

        &&\qquad + \frac{\partial f_i(x_0,u_0)}{\partial x_1}(x_1-x_{10}) + \cdots \frac{\partial f_i(x_0,u_0)}{\partial x_j}(x_j-x_{j0}) + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial x_n}(x_n-x_{n0}) \nonumber \\

        \nonumber \\

        &&\qquad + \frac{\partial f_i(x_0,u_0)}{\partial u_1}(u_1-u_{10}) + \cdots \frac{\partial f_i(x_0,u_0)}{\partial u_k}(u_k-u_{k0}) + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial u_m}(u_m-u_{m0}) \nonumber

        \end{eqnarray}

gdzie dla skrócenia zapisu wprowadzamy oznaczenia

 \begin{eqnarray}

        \frac{\partial f_i(x_0,u_0)}{\partial x_j} &=& \frac{\partial f_i(x_{10},\cdots,x_{j0},\cdots,x_{n0},u_{10},\cdots,u_{k0},\cdots,u_{m0})}{\partial x_j} \qquad(1.307)\\

        \frac{\partial f_i(x_0,u_0)}{\partial u_k} &=& \frac{\partial f_i(x_{10},\cdots,x_{j0},\cdots,x_{n0},u_{10},\cdots,u_{k0},\cdots,u_{m0})}{\partial u_k}\qquad(1.308)

        \end{eqnarray}

Przybliżenie dla  i -tego równania stanu można zapisać jako

 \begin{eqnarray}

        \frac{dx_i}{dt} &\simeq& f_i(x_{10},\cdots,x_{j0},\cdots,x_{n0},u_{10},\cdots,u_{k0},\cdots,u_{m0}) \\

        && + \frac{\partial f_i(x_0,u_0)}{\partial x_1}(x_1-x_{10}) + \cdots \frac{\partial f_i(x_0,u_0)}{\partial x_j}(x_j-x_{j0}) + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial x_n}(x_n-x_{n0}) \nonumber \\

        \qquad(1.309) \\

        && + \frac{\partial f_i(x_0,u_0)}{\partial u_1}(u_1-u_{10}) + \cdots \frac{\partial f_i(x_0,u_0)}{\partial u_k}(u_k-u_{k0}) + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial u_m}(u_m-u_{m0}) \nonumber

        \end{eqnarray}

Z warunku na punkt równowagi mamy

 \begin{equation}

        f_i(x_{10},\cdots,x_{j0},\cdots,x_{n0},u_{10},\cdots,u_{k0},\cdots,u_{m0}) = 0

        \end{equation}\qquad(1.310)

i przybliżenie  i -tego równania stanu może zostać zapisane jako

 \begin{eqnarray}

        \frac{dx_i}{dt} &\simeq& \frac{\partial f_i(x_0,u_0)}{\partial x_1}(x_1-x_{10}) + \cdots \frac{\partial f_i(x_0,u_0)}{\partial x_j}(x_j-x_{j0}) + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial x_n}(x_n-x_{n0}) \nonumber \\

        && + \frac{\partial f_i(x_0,u_0)}{\partial u_1}(u_1-u_{10}) + \cdots \frac{\partial f_i(x_0,u_0)}{\partial u_k}(u_k-u_{k0}) + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial u_m}(u_m-u_{m0}) \qquad(1.311)\\

        \end{eqnarray}

Wprowadzamy zmienne przyrostowe dla zmiennych stanu 

 \begin{equation}

        \Delta x_j = x_j - x_{j0},\ j = 1,\cdots,n

        \end{equation}\qquad(1.312)

oraz zmiennych sterujących

 \begin{equation}

        \Delta u_k = u_k - u_{k0},\ k = 1,\cdots,m

        \end{equation}\qquad(1.313)

Przybliżenie  i -tego równania stanu możemy zapisać jako

 \begin{eqnarray}

        \frac{dx_i}{dt} &\simeq& \frac{\partial f_i(x_0,u_0)}{\partial x_1}\Delta x_1 + \cdots \frac{\partial f_i(x_0,u_0)}{\partial x_j} \Delta x_j + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial x_n}\Delta x_n \\

        && + \frac{\partial f_i(x_0,u_0)}{\partial u_1}\Delta u_1 + \cdots \frac{\partial f_i(x_0,u_0)}{\partial u_k}\Delta u_k + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial u_m}\Delta u_m \nonumber

        \end{eqnarray}\qquad(1.314)

Ponieważ pochodna funkcji stałej jest równa zero to mamy 
    \frac{d x_{i0}}{dt} =0 . Pochodna zmiennej przyrostowej \Delta x_i jest zatem  równa pochodnej zmiennej x_i

 \begin{equation}

        \frac{d\Delta x_i}{dt} = \frac{d (x_i-x_{i0})}{dt} = \frac{d x_i}{dt} - \frac{d x_{i0}}{dt} = \frac{d x_i}{dt}

        \end{equation}\qquad(1.315)

Przybliżenie  i -tego równania stanu możemy teraz zapisać jako

 \begin{eqnarray}

        \frac{d\Delta x_i}{dt} &\simeq& \frac{\partial f_i(x_0,u_0)}{\partial x_1}\Delta x_1 + \cdots \frac{\partial f_i(x_0,u_0)}{\partial x_j} \Delta x_j + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial x_n}\Delta x_n \\

        && + \frac{\partial f_i(x_0,u_0)}{\partial u_1}\Delta u_1 + \cdots \frac{\partial f_i(x_0,u_0)}{\partial u_k}\Delta u_k + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial u_m}\Delta u_m \nonumber

        \end{eqnarray}\qquad(1.316)

Powyższa zależność jest spełniona w przybliżeniu. Aby utworzyć równania zlinearyzowane wprowadzamy nowe wielkości

 \begin{eqnarray}

        \tilde{x}_j,\ j =1,\cdots, n\ \tilde{u}_k,\ k =1,\cdots, m

        \end{eqnarray}\qquad(1.317)

oraz definiujemy  i -te równanie  zlinearyzowane w następujący sposób

 \begin{eqnarray}

        \frac{d\tilde{x}_i}{dt} &=& \frac{\partial f_i(x_0,u_0)}{\partial x_1}\tilde{x}_1 + \cdots \frac{\partial f_i(x_0,u_0)}{\partial x_j} \tilde{x}_j + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial x_n}\tilde{x}_n \\

        && + \frac{\partial f_i(x_0,u_0)}{\partial u_1}\tilde{u}_1 + \cdots \frac{\partial f_i(x_0,u_0)}{\partial u_k}\tilde{u}_k + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial u_m}\tilde{u}_m \qquad(1.318)

        \end{eqnarray}

Pełny układ równań zlinearyzowanych ma postać

 \begin{eqnarray}

        \frac{d\tilde{x}_1}{dt} &=& \frac{\partial f_1(x_0,u_0)}{\partial x_1}\tilde{x}_1 + \cdots \frac{\partial f_1(x_0,u_0)}{\partial x_j} \tilde{x}_j + \cdots + \frac{\partial f_1(x_0,u_0)}{\partial x_n}\tilde{x}_n \qquad(1.319) \\

        && + \frac{\partial f_1(x_0,u_0)}{\partial u_1}\tilde{u}_1 + \cdots \frac{\partial f_1(x_0,u_0)}{\partial u_k}\tilde{u}_k + \cdots + \frac{\partial f_1(x_0,u_0)}{\partial u_m}\tilde{u}_m \\

        &\vdots& \nonumber\\

        \frac{d\tilde{x}_i}{dt} &=& \frac{\partial f_i(x_0,u_0)}{\partial x_1}\tilde{x}_1 + \cdots \frac{\partial f_i(x_0,u_0)}{\partial x_j} \tilde{x}_j + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial x_n}\tilde{x}_n \qquad(1.320)\\

        && + \frac{\partial f_i(x_0,u_0)}{\partial u_1}\tilde{u}_1 + \cdots \frac{\partial f_i(x_0,u_0)}{\partial u_k}\tilde{u}_k + \cdots + \frac{\partial f_i(x_0,u_0)}{\partial u_m}\tilde{u}_m \nonumber \\

        &\vdots& \nonumber \\

        \frac{d\tilde{x}_n}{dt} &=& \frac{\partial f_n(x_0,u_0)}{\partial x_1}\tilde{x}_1 + \cdots \frac{\partial f_n(x_0,u_0)}{\partial x_j} \tilde{x}_j + \cdots + \frac{\partial f_n(x_0,u_0)}{\partial x_n}\tilde{x}_n \qquad(1.321)\\

        && + \frac{\partial f_n(x_0,u_0)}{\partial u_1}\tilde{u}_1 + \cdots \frac{\partial f_n(x_0,u_0)}{\partial u_k}\tilde{u}_k + \cdots + \frac{\partial f_n(x_0,u_0)}{\partial u_m}\tilde{u}_m \nonumber

        \end{eqnarray}

Są to równania w ścisłym sensie, gdyż zamiast znaku przybliżenia  \simeq pojawia się znak równości.

Postulujemy, że jeżeli zachodzą następujące warunki

  • w pewnym ustalonym przedziale czasu  t\in [ t_0, t_1 ] funkcje sterowań \tilde{u}_1(t),\cdots, (\tilde{u}_k(t),\cdots,\) \tilde{u}_m(t) są dokładnie równe przyrostom zmiennych u_1(t),\cdots,u_k(t),\cdots,  u_m(t)

 \begin{equation}

            \tilde{u}_k(t) = \Delta u_k(t) = u_k(t)-u_{k0},\ k=1,\cdots,m

            \end{equation}\qquad(1.322)

  • warunki początkowe dla zmiennych \tilde{x}_j(t),\cdots,\tilde{x}_j(t),\cdots,\tilde{x}_n(t)
            są dokładnie równe przyrostom zmiennych x_1(t),\cdots,x_j(t),\cdots,x_n(t)
            w chwili początkowej

 \begin{equation}

            \tilde{x}_j(t_0) = \Delta x_j(t_0),\ j=1,\cdots,n

            \end{equation} \qquad(1.323)

  • w pewnym ustalonym przedziale czasu  t\in [ t_0, t_1 ] rozwiązania nieliniowych równań stanu  x_1(t),\cdots,x_j(t),\cdots,x_n(t)
            pozostają w otoczeniu punktu równowagi  (x_0, u_0)

 \begin{equation}

        | x_j(t)-x_{j0} | = | \Delta x_j(t) | \leq C_{j} \qquad(1.324)

        \end{equation}

               gdzie   C_{j},\ j =1,\cdots,n są stałymi dodatnimi

to rozwiązania \tilde{x}_j(t),\cdots,\tilde{x}_j(t),\cdots,\tilde{x}_n(t)
        zlinearyzowanych równań stanu (1.319)-(1.321) dobrze przybliżają przyrosty zmiennych stanu dla  t\in [ t_0, t_1 ] tzn. w tym przedziale czasu zachodzą przybliżone warunki

 \begin{eqnarray}

        \tilde{x}_j(t) \simeq \Delta x_j(t),\ j=1,\cdots,n

        \end{eqnarray}/qquad(1.325)

Przybliżenie to jest tym lepsze im bliżej wybranego punktu równowagi pozostają rozwiązania nieliniowych równań stanu tzn. im mniejsze są stałe   C_{j},\ j =1,\cdots,n w (1.324). 

Podobnie rozważmy układ równań wyjść w ogólnej postaci

 \begin{eqnarray}

        y_1 &=& g_1(x_1,\cdots,x_j,\cdots,x_n) \qquad(1.326) \\

        &\vdots& \nonumber \\

        y_i &=& g_i(x_1,\cdots,x_j,\cdots,x_n) \qquad(1.327) \\

        &\vdots& \nonumber \\

        y_p &=& g_p(x_1,\cdots,x_j,\cdots,x_n) \qquad(1.328)

        \end{eqnarray}

Linearyzacja  i -tej funkcji prawych stron w pobliżu punktu równowagi  (x_0,u_0) ma postać

 \begin{eqnarray}

        && g_i(x_1,\cdots,x_j,\cdots,x_n) \simeq g_i(x_{10},\cdots,x_{j0},\cdots,x_{n0}) \nonumber \\

        &&\qquad + \frac{\partial g_i(x_0)}{\partial x_1}(x_1-x_{10}) + \cdots \frac{\partial g_i(x_0)}{\partial x_j}(x_j-x_{j0}) + \cdots + \frac{\partial g_i(x_0)}{\partial x_n}(x_n-x_{n0}) \nonumber

        \end{eqnarray}

gdzie dla skrócenia zapisu wprowadzamy oznaczenie

 \begin{equation}

        \dfrac{\partial g_i(x_0)}{\partial x_j} = \dfrac{\partial g_i(x_{10},\cdots,x_{j0},\cdots,x_{n0})}{\partial x_j}

        \end{equation}\qquad(1.329)

Przybliżenie dla  i -tego równania wyjść można zapisać jako

 \begin{equation}

        y_i \simeq y_{i0} + \frac{\partial g_i(x_0)}{\partial x_1}(x_1-x_{10}) + \cdots \frac{\partial g_i(x_0)}{\partial x_j}(x_j-x_{j0}) + \cdots + \frac{\partial g_i(x_0)}{\partial x_n}(x_n-x_{n0})

        \end{equation}\qquad(1.330)

gdzie

 \begin{equation}

        y_{i0} = g_i(x_{10},\cdots,x_{j0},\cdots,x_{n0})

        \end{equation}\qquad(1.331)

Jeżeli przeniesiemy  y_{i0} na drugą stronę przybliżenia to otrzymamy

 \begin{equation}

        y_i - y_{i0} \simeq \dfrac{\partial g_i(x_0)}{\partial x_1}(x_1-x_{10}) + \cdots \dfrac{\partial g_i(x_0)}{\partial x_j}(x_j-x_{j0}) + \cdots + \dfrac{\partial g_i(x_0)}{\partial x_n}(x_n-x_{n0})

        \end{equation}\qquad(1.332)

Wprowadźmy zmienne przyrostowe

 \begin{equation}

        \Delta y_i = y_i - y_{i0},\ i = 1,\cdots,p

        \end{equation}\qquad(1.333)

Przybliżenie dla  i -tego równania wyjść można teraz zapisać jako

 \begin{equation}

        \Delta y_i \simeq + \dfrac{\partial g_i(x_0)}{\partial x_1}\Delta x_1 + \cdots \dfrac{\partial g_i(x_0)}{\partial x_j}\Delta x_j + \cdots + \dfrac{\partial g_i(x_0)}{\partial x_n}\Delta x_n

        \end{equation}\qquad(1.334)

Aby zdefiniować zlinearyzowane równanie wyjść wprowadzamy zmienne  \tilde{y}_i,\ i = 1,\cdots,p .  i -te zlinearyzowane równanie wyjść ma postać

 \begin{equation}

        \tilde{y}_i = \dfrac{\partial g_i(x_0)}{\partial x_1}\tilde{x}_1 + \cdots \dfrac{\partial g_i(x_0)}{\partial x_j}\tilde{x}_i + \cdots + \dfrac{\partial g_i(x_0)}{\partial x_n}\tilde{x}_n

        \end{equation}\qquad(1.335)

Układ zlinearyzowanych równań wyjść ma postać

 \begin{eqnarray}

        \tilde{y}_1 &=& \dfrac{\partial g_1(x_0)}{\partial x_1}\tilde{x}_1 + \cdots \dfrac{\partial g_1(x_0)}{\partial x_j}\tilde{x}_i + \cdots + \dfrac{\partial g_1(x_0)}{\partial x_n}\tilde{x}_n \qquad(1.336)\\

        &\vdots& \\

        \tilde{y}_i &=& \dfrac{\partial g_i(x_0)}{\partial x_1}\tilde{x}_1 + \cdots \dfrac{\partial g_i(x_0)}{\partial x_j}\tilde{x}_i + \cdots + \dfrac{\partial g_i(x_0)}{\partial x_n}\tilde{x}_n \qquad(1.337\\

        &\vdots& ) \\

        \tilde{y}_n &=& \dfrac{\partial g_n(x_0)}{\partial x_1}\tilde{x}_1 + \cdots \dfrac{\partial g_n(x_0)}{\partial x_j}\tilde{x}_i + \cdots + \dfrac{\partial g_n(x_0)}{\partial x_n}\tilde{x}_n \qquad(1.338)

        \end{eqnarray}

Postulując takie same warunki jak w przypadku równań stanu oczekujemy, że rozwiązania równań wyjść  \tilde{y}_1,\cdots,\tilde{y}_i,\cdots,\tilde{y}_p  będą dobrze przybliżać przyrosty zmiennych wyjściowych  y_1,\cdots,y_i,\cdots,y_p

 \begin{equation}

        \tilde{y}_i \simeq \Delta y_i = y_i-y_{i0},\ i = 1,\cdots,p

        \end{equation}\qquad(1.339)

Zlinearyzowane równania stanu i wyjść mogą zostać przedstawione w postaci wektorowej

 \begin{eqnarray}

        \left(

        \begin{array}{c}

        \dfrac{d\tilde{x}_1}{dt} \\ \vdots \\ \dfrac{d\tilde{x}_i}{dt} \\ \vdots \\ \dfrac{d\tilde{x}_n}{dt}

        \end{array}

        \right) &=&

        \left(

        \begin{array}{ccccc}

        \dfrac{\partial f_1(x_0,u_0)}{\partial x_1} & \cdots & \dfrac{\partial f_1(x_0,u_0)}{\partial x_j} & \cdots & \dfrac{\partial f_1(x_0,u_0)}{\partial x_n} \\

        \vdots & & \vdots & & \vdots \\

        \dfrac{\partial f_i(x_0,u_0)}{\partial x_1} & \cdots & \dfrac{\partial f_i(x_0,u_0)}{\partial x_j} & \cdots & \dfrac{\partial f_i(x_0,u_0)}{\partial x_n} \\

        \vdots & & \vdots & & \vdots \\

        \dfrac{\partial f_n(x_0,u_0)}{\partial x_1} & \cdots & \dfrac{\partial f_n(x_0,u_0)}{\partial x_j} & \cdots & \dfrac{\partial f_n(x_0,u_0)}{\partial x_n}

        \end{array}

        \right)

        \left(

        \begin{array}{c}

        \tilde{x}_1 \\ \vdots \\ \tilde{x}_j \\ \vdots \\ \tilde{x}_n

        \end{array}

        \right) \\

        &&+

        \left(

        \begin{array}{ccccc}

        \dfrac{\partial f_1(x_0,u_0)}{\partial u_1} & \cdots & \dfrac{\partial f_1(x_0,u_0)}{\partial u_k} & \cdots & \dfrac{\partial f_1(x_0,u_0)}{\partial u_m} \\

        \vdots & & \vdots & & \vdots \\

        \dfrac{\partial f_i(x_0,u_0)}{\partial u_1} & \cdots & \dfrac{\partial f_i(x_0,u_0)}{\partial u_k} & \cdots & \dfrac{\partial f_i(x_0,u_0)}{\partial u_m} \\

        \vdots & & \vdots & & \vdots \\

        \dfrac{\partial f_m(x_0,u_0)}{\partial u_1} & \cdots & \dfrac{\partial f_m(x_0,u_0)}{\partial u_k} & \cdots & \dfrac{\partial f_m(x_0,u_0)}{\partial u_m}

        \end{array}

        \right)

        \left(

        \begin{array}{c}

        \tilde{u}_1\\ \vdots \\ \tilde{u}_k \\ \vdots \\ \tilde{u}_m

        \end{array}

        \right) \nonumber

        \end{eqnarray}
        \qquad(1.340)

 \begin{eqnarray}
        \left(
        \begin{array}{c}
        \tilde{y}_1 \\ \vdots \\ \tilde{y}_i \\ \vdots \\ \tilde{y}_p
        \end{array}
        \right) &=&
        \left(
        \begin{array}{ccccc}
        \dfrac{\partial g_1(x_0)}{\partial x_1} & \cdots & \dfrac{\partial g_1(x_0)}{\partial x_j} & \cdots & \dfrac{\partial g_1(x_0)}{\partial x_n} \\
        \vdots & & \vdots & & \vdots \\
        \dfrac{\partial g_i(x_0)}{\partial x_1} & \cdots & \dfrac{\partial g_i(x_0)}{\partial x_j} & \cdots & \dfrac{\partial g_i(x_0)}{\partial x_n} \\
        \vdots & & \vdots & & \vdots \\
        \dfrac{\partial g_n(x_0)}{\partial x_1} & \cdots & \dfrac{\partial g_n(x_0)}{\partial x_j} & \cdots & \dfrac{\partial g_n(x_0)}{\partial x_n}
        \end{array}
        \right)
        \left(
        \begin{array}{c}
        \tilde{x}_1 \\ \vdots \\ \tilde{x}_j \\ \vdots \\ \tilde{x}_n
        \end{array}
        \right)
        \end{eqnarray}

Jeżeli wprowadzimy następujące oznaczenia wektorów

 \begin{equation}

        \tilde{x} = \left(

        \begin{array}{c}

        \tilde{x}_1\\ \vdots\\ \tilde{x}_j \\ \vdots\\ \tilde{x}_n

        \end{array}

        \right),\

        \dfrac{d\tilde{x}}{dt} = \left(

        \begin{array}{c}

        \dfrac{d\tilde{x}_1}{dt} \\ \vdots \\ \dfrac{d\tilde{x}_i}{dt} \\ \vdots \\ \dfrac{d\tilde{x}_n}{dt}

        \end{array}

        \right),\

        \tilde{u} = \left(

        \begin{array}{c}

        \tilde{u}_1\\ \vdots\\ \tilde{u}_k \\ \vdots\\ \tilde{u}_m

        \end{array}

        \right),\

        \tilde{y} = \left(

        \begin{array}{c}

        \tilde{y}_1\\ \vdots\\ \tilde{y}_i \\ \vdots\\ \tilde{y}_p

        \end{array}

        \right)

        \end{equation} \qquad(1.342)

oraz macierzy

 \begin{eqnarray}

        \dfrac{\partial f(x_0,u_0)}{\partial x} &=& \left(

        \begin{array}{ccccc}

        \dfrac{\partial f_1(x_0,u_0)}{\partial x_1} & \cdots & \dfrac{\partial f_1(x_0,u_0)}{\partial x_j} & \cdots & \dfrac{\partial f_1(x_0,u_0)}{\partial x_n} \\

        \vdots & & \vdots & & \vdots \\

        \dfrac{\partial f_i(x_0,u_0)}{\partial x_1} & \cdots & \dfrac{\partial f_i(x_0,u_0)}{\partial x_j} & \cdots & \dfrac{\partial f_i(x_0,u_0)}{\partial x_n} \\

        \vdots & & \vdots & & \vdots \\

        \dfrac{\partial f_n(x_0,u_0)}{\partial x_1} & \cdots & \dfrac{\partial f_n(x_0,u_0)}{\partial x_j} & \cdots & \dfrac{\partial f_n(x_0,u_0)}{\partial x_n}

        \end{array}

        \right)\qquad(1.343)\\

        \dfrac{\partial f(x_0,u_0)}{\partial u} &=& \left(

        \begin{array}{ccccc}

        \dfrac{\partial f_1(x_0,u_0)}{\partial u_1} & \cdots & \dfrac{\partial f_1(x_0,u_0)}{\partial u_k} & \cdots & \dfrac{\partial f_1(x_0,u_0)}{\partial u_m} \\

        \vdots & & \vdots & & \vdots \\

        \dfrac{\partial f_i(x_0,u_0)}{\partial u_1} & \cdots & \dfrac{\partial f_i(x_0,u_0)}{\partial u_k} & \cdots & \dfrac{\partial f_i(x_0,u_0)}{\partial u_m} \\

        \vdots & & \vdots & & \vdots \\

        \dfrac{\partial f_m(x_0,u_0)}{\partial u_1} & \cdots & \dfrac{\partial f_m(x_0,u_0)}{\partial u_k} & \cdots & \dfrac{\partial f_m(x_0,u_0)}{\partial u_m}

        \end{array}

        \right) \qquad(1.344)\\

        \dfrac{\partial g(x_0)}{\partial x} &=& \left(

        \begin{array}{ccccc}

        \dfrac{\partial g_1(x_0)}{\partial x_1} & \cdots & \dfrac{\partial g_1(x_0)}{\partial x_j} & \cdots & \dfrac{\partial g_1(x_0)}{\partial x_n} \\

        \vdots & & \vdots & & \vdots \\

        \dfrac{\partial g_i(x_0)}{\partial x_1} & \cdots & \dfrac{\partial g_i(x_0)}{\partial x_j} & \cdots & \dfrac{\partial g_i(x_0)}{\partial x_n} \\

        \vdots & & \vdots & & \vdots \\

        \dfrac{\partial g_n(x_0)}{\partial x_1} & \cdots & \dfrac{\partial g_n(x_0)}{\partial x_j} & \cdots & \dfrac{\partial g_n(x_0)}{\partial x_n}

        \end{array}

        \right)\qquad(1.345)

        \end{eqnarray}

To zlinearyzowane równania stanu i wyjść mogą zostać zapisane w postaci zwartej

 \begin{eqnarray}

        \dfrac{d\tilde{x}}{dt} &=& \dfrac{\partial f(x_0,u_0)}{\partial x}\tilde{x} + \dfrac{\partial f(x_0,u_0)}{\partial u}\tilde{u} \qquad(1.346)\\

        \tilde{y} &=& \dfrac{\partial g(x_0,u_0)}{\partial x}\tilde{x} \qquad(1.347)

        \end{eqnarray}

Przepiszmy jeszcze raz powyższe równania, ale tym razem z argumentem czasu

 \begin{eqnarray}

        \dfrac{d\tilde{x}(t)}{dt} &=& \dfrac{\partial f(x_0,u_0)}{\partial x}\tilde{x}(t) + \dfrac{\partial f(x_0,u_0)}{\partial u}\tilde{u}(t) \qquad(1.348)\\

        \tilde{y}(t) &=& \dfrac{\partial g(x_0,u_0)}{\partial x}\tilde{x}(t) \qquad(1.349)

        \end{eqnarray}

Należy pamiętać, że w równaniach   \tilde{x}(t),  \tilde{u}(t) oraz  \tilde{y}(t) są funkcjami czasu, natomiast macierze pochodnych cząstkowych  \dfrac{\partial f(x_0,u_0)}{\partial x} ,  \dfrac{\partial f(x_0,u_0)}{\partial u} oraz  \dfrac{\partial g(x_0,u_0)}{\partial x} są stałe, ponieważ pochodne cząstkowe są obliczane w jednym wybranym punkcie równowagi  (x_0,u_0) .

Równanie równowagi dla zlinearyzowanych równań stanu ma postać

 \begin{equation}

        0 = \dfrac{\partial f(x_0,u_0)}{\partial x}\tilde{x}_0 + \dfrac{\partial f(x_0,u_0)}{\partial u}\tilde{u}_0

        \end{equation}\qquad(1.350)

Powyższy układ równań ma zawsze co najmniej jedno rozwiązanie

 \begin{equation}

        \tilde{x}_0 = 0,\ \tilde{u}_0 = 0

        \end{equation}\qquad(1.351)

Punkt równowagi układu zlinearyzowanego  (\tilde{x}_0,\tilde{u}_0) = (0,0) odpowiada punktowi równowagi  (x_0,u_0) układu nieliniowego. Jeżeli bowiem zachodzi

 \begin{equation}

        x(t) = x_0,\ u(t) = u_0

        \end{equation} \qquad(1.352)

to warunki początkowe dla układu zlinearyzowanego wynoszą

 \begin{equation}

        \tilde{x}(t_0) = \Delta x(t_0) = x(t_0) - x_0 = x_0 - x_0 = 0

        \end{equation}\qquad(1.353)

a sterowania w układzie zlinearyzowanym wynoszą

 \begin{equation}

        \tilde{u}(t) = \Delta u(t) = u(t) - u_0 = u_0 - u_0 = 0

        \end{equation}\qquad(1.354)

W takim przypadku rozwiązanie układu zlinearyzowanego wynosi

 \begin{equation}

        \tilde{x}(t) = 0,\ \tilde{u}(t) = 0

        \end{equation}\qquad(1.355)

tzn. układ zlinearyzowany pozostaje w punkcie równowagi  (\tilde{x}_0,\tilde{u}_0) = (0,0)