Reprezentacja w przestrzeni stanów przepisuje układ dynamiczny jako zestaw równań pierwszego rzędu. Zamiast pracować z jednym równaniem różniczkowym wyższego rzędu, śledzisz wektor stanu zawierający informacje potrzebne do przewidzenia, co stanie się dalej.

Jeśli szukasz sposobu, jak przekształcić równanie różniczkowe do postaci przestrzeni stanów, to właśnie jest główna idea: wybierz zmienne stanu, zapisz równanie dla pochodnej każdej z nich i utrzymaj model w postaci pierwszego rzędu.

Reprezentacja w przestrzeni stanów w jednej definicji

Ogólnie model w przestrzeni stanów można zapisać jako

x(t)=f(x(t),u(t),t)x'(t) = f(x(t), u(t), t)

Tutaj x(t)x(t) jest wektorem stanu, a u(t)u(t) jest wejściem, jeśli układ je ma. Jeśli układ jest liniowy i niezmienny w czasie, tę samą ideę zapisuje się w postaci macierzowej

x(t)=Ax(t)+Bu(t),y(t)=Cx(t)+Du(t)x'(t) = Ax(t) + Bu(t), \qquad y(t) = Cx(t) + Du(t)

Ta wersja macierzowa jest powszechna w teorii sterowania i równaniach różniczkowych, ale przestrzeń stanów jest pojęciem szerszym niż przypadek liniowy.

Co oznacza stan

Stan to zbiór bieżących wielkości, który pozwala wyznaczyć przyszłe zachowanie układu, gdy znane jest wejście. Dla poruszającego się obiektu samo położenie zwykle nie wystarcza. Położenie i prędkość razem często już tak.

Właśnie dlatego reprezentacja w przestrzeni stanów jest użyteczna. Zamienia problem ewolucji w czasie na standardową postać pierwszego rzędu, którą łatwiej analizować, symulować i łączyć z metodami macierzowymi.

Dlaczego przepisuje się układ w ten sposób

Wiele modeli zaczyna się od równań różniczkowych wyższego rzędu. Postać przestrzeni stanów przepisuje je bez zmiany samej dynamiki układu.

To ważne, ponieważ układy pierwszego rzędu pasują do jednej wspólnej struktury. Gdy model ma już taką postać, łatwiej w spójny sposób mówić o warunkach początkowych, wejściach, wyjściach i stabilności.

Przykład: przekształcenie równania drugiego rzędu do postaci przestrzeni stanów

Zacznij od

y+3y+2y=u(t)y'' + 3y' + 2y = u(t)

Tutaj u(t)u(t) jest wejściem. Wybierz zmienne stanu, które opisują bieżący stan układu:

x1=y,x2=yx_1 = y, \qquad x_2 = y'

Teraz zapisz równanie pierwszego rzędu dla każdej zmiennej stanu. Ponieważ x1=yx_1 = y,

x1=x2x_1' = x_2

Ponieważ x2=yx_2 = y', mamy też x2=yx_2' = y''. Po przekształceniu oryginalnego równania dostajemy

y=3y2y+u(t)y'' = -3y' - 2y + u(t)

Podstaw y=x1y = x_1 oraz y=x2y' = x_2:

x2=2x13x2+u(t)x_2' = -2x_1 - 3x_2 + u(t)

Zatem równania stanu mają postać

x1=x2x2=2x13x2+u(t)\begin{aligned} x_1' &= x_2 \\ x_2' &= -2x_1 - 3x_2 + u(t) \end{aligned}

W postaci wektorowej, przy

x=(x1x2),x = \begin{pmatrix} x_1 \\ x_2 \end{pmatrix},

otrzymujemy

x=(0123)x+(01)u(t)x' = \begin{pmatrix} 0 & 1 \\ -2 & -3 \end{pmatrix} x + \begin{pmatrix} 0 \\ 1 \end{pmatrix} u(t)

Jeśli wyjściem jest oryginalna wielkość yy, to

y=(10)xy = \begin{pmatrix} 1 & 0 \end{pmatrix} x

Kluczowym krokiem jest przejście od jednego równania drugiego rzędu do dwóch równań pierwszego rzędu. To właśnie stanowi sedno reprezentacji w przestrzeni stanów.

Na co zwrócić uwagę w tym przykładzie

Zmienne stanu zostały wybrane nieprzypadkowo. Dzięki nim można zapisać model jako układ pierwszego rzędu.

Zauważ też, że wyjście yy nie jest tym samym co pełny wektor stanu. W tym przykładzie y=x1y = x_1, podczas gdy pełny stan to (x1,x2)(x_1, x_2). Te pojęcia mogą się pokrywać, ale nie są automatycznie identyczne.

Typowe błędy przy przekształcaniu do postaci przestrzeni stanów

Mylenie stanu z wyjściem

Stan zawiera zmienne wewnętrzne potrzebne do opisu ewolucji układu. Wyjście to dowolna wielkość, którą chcesz obserwować. Czasem się pokrywają, ale nie są automatycznie tym samym.

Zakładanie, że reprezentacja jest jednoznaczna

Zwykle tak nie jest. Różne wybory zmiennych stanu mogą opisywać tę samą dynamikę, o ile zawierają wystarczającą ilość informacji.

Zapominanie o wymogu pierwszego rzędu

Model w przestrzeni stanów zapisuje się jako równania pierwszego rzędu względem zmiennych stanu. Jeśli nadal pozostaje pochodna drugiego rzędu którejś zmiennej stanu, przekształcenie nie jest jeszcze zakończone.

Traktowanie każdego modelu jako liniowego

Postać macierzowa z AA, BB, CC i DD ma zastosowanie tylko wtedy, gdy równania są liniowe względem wybranych zmiennych stanu. Układy nieliniowe także opisuje się w przestrzeni stanów, ale zapisuje się je za pomocą funkcji zamiast stałych macierzy.

Gdzie stosuje się reprezentację w przestrzeni stanów

Reprezentacja w przestrzeni stanów pojawia się w równaniach różniczkowych, teorii sterowania, przetwarzaniu sygnałów, robotyce i fizyce. Jest szczególnie użyteczna wtedy, gdy interesuje Cię, jak układ zmienia się w czasie i jak wejścia wpływają na tę zmianę.

Jeśli model jest liniowy, metody macierzowe stają się szczególnie przydatne. Na przykład wartości własne macierzy AA mogą pomóc opisać wzrost, zanik lub oscylacje, ale tylko przy założeniach wbudowanych w model.

Spróbuj samodzielnie

Weź

y+4y+5y=0y'' + 4y' + 5y = 0

i wybierz x1=yx_1 = y, x2=yx_2 = y'. Przepisz równanie jako układ pierwszego rzędu, a następnie wyznacz macierz AA. Jeśli to stanie się jasne, spróbuj podobnego zadania z członem wejściowym i zobacz, jak pojawia się macierz BB.

Potrzebujesz pomocy z zadaniem?

Prześlij pytanie i otrzymaj zweryfikowane rozwiązanie krok po kroku w kilka sekund.

Otwórz GPAI Solver →