Spazio di stato

Da Wikipedia, l'enciclopedia libera.

In ingegneria del controllo, una rappresentazione in spazio di stato è un modello matematico di un sistema fisico costituito da un insieme di ingressi, uscite e variabili di stato legate da equazioni differenziali del primo ordine. Gli ingressi, le uscite e gli stati vengono rappresentati tramite vettori e le equazioni algebriche differenziali sono scritte in forma matriciale (quest'ultima rappresentazione è possibile solo se il sistema dinamico è lineare e tempo invariante). La rappresentazione di stato (anche conosciuta come "approccio nel dominio del tempo") fornisce un modo compatto e conveniente di modellare e analizzare sistemi con più ingressi ed uscite (MIMO). Ad esempio utilizzando altre rappresentazioni come la trasformata di Laplace, con p ingressi e q uscite, dovremmo scrivere q \times p trasformate. Diversamente dai metodi nel dominio della frequenza, la rappresentazione in spazio di stato non è limitata a sistemi con componenti lineari e con condizioni iniziali nulle. La dicitura "spazio di stato" si riferisce all'iperspazio i cui assi sono costituiti dalle variabili di stato. Lo stato del sistema può quindi essere visto come un vettore in tale spazio.

Variabili di stato[modifica | modifica sorgente]

Diagramma a blocchi della rappresentazione in spazio di stato

Le variabili di stato interne sono il più piccolo sottoinsieme delle variabili del sistema che possono rappresentare l'intero stato del sistema ad ogni dato istante di tempo. Il minimo numero di variabili di stato richiesto per rappresentare un dato sistema, n, è di solito uguale all'ordine del sistema di equazioni differenziali che lo definiscono. Se il sistema è rappresentato con la sua funzione di trasferimento, il minimo numero di variabili di stato è uguale all'ordine del denominatore della funzione di trasferimento dopo che questa sia stata ridotta ad essere una frazione propria. È importante comprendere che la conversione della realizzazione in spazio di stato nella sua funzione di trasferimento porta ad una perdita di informazione riguardo al sistema (dovuto alle cancellazioni) e quindi potrebbe portare a una descrizione di un sistema che è stabile (per l'esattezza esternamente stabile, espressione italiana per la "BIBO stability"), quando la realizzazione in spazio di stato è instabile in certi punti. Condizione sufficiente affinché la stabilità esterna implichi la stabilità asintotica o stabilità secondo Lyapunov è che tutti gli autovalori della matrice A del sistema appaiono come poli della funzione di trasferimento[1]. Nei circuiti elettrici, il numero di variabili di stato è spesso pensato essere lo stesso del numero di elementi in grado di immagazzinare energia come, ad esempio, condensatori e induttori.

Sistemi lineari[modifica | modifica sorgente]

La più generica rappresentazione in spazio di stato di un sistema lineare con p ingressi e q uscite e n variabili di stato può essere scritta nella seguente forma:

\dot{\mathbf{x}}(t) = A(t) \mathbf{x}(t) + B(t) \mathbf{u}(t)
\mathbf{y}(t) = C(t) \mathbf{x}(t) + D(t) \mathbf{u}(t)

dove[2]:

\mathbf{x}(\cdot) è chiamato "vettore di stato",  \mathbf{x}(t) \in \mathbb{R}^n;
\mathbf{y}(\cdot) è chiamato "vettore di uscita",  \mathbf{y}(t) \in \mathbb{R}^q;
\mathbf{u}(\cdot) è chiamato "vettore di ingresso",  \mathbf{u}(t) \in \mathbb{R}^p;
A(\cdot) è la "matrice dinamica",  \operatorname{dim}[A(\cdot)] = n \times n,
B(\cdot) è la "matrice di ingresso",  \operatorname{dim}[B(\cdot)] = n \times p,
C(\cdot) è la "matrice di uscita",  \operatorname{dim}[C(\cdot)] = q \times n,
D(\cdot) è la "matrice di legame diretto ingresso-uscita" (nei casi in cui il sistema non abbia tale legame, D(\cdot) è una matrice nulla),  \operatorname{dim}[D(\cdot)] = q \times p,
\dot{\mathbf{x}}(t) := \frac{\operatorname{d}}{\operatorname{d}t} \mathbf{x}(t).

In questa formulazione generale, tutte le matrici possono essere tempo-varianti (cioè i loro elementi dipendono dal tempo); tuttavia, nel caso comune di sistemi lineari tempo invarianti, le matrici saranno tempo invarianti e quindi ad elementi costanti. La variabile temporale t può essere "continua" (cioè t \in \mathbb{R}) o "discreta" (cioè, t \in \mathbb{Z}). In quest'ultimo caso tale variabile temporale è spesso indicata con k. I sistemi ibridi presentano domini temporali che sono in parte discreti e in parte continui. A seconda dalle assunzioni fatte, la rappresentazione in spazio di stato può assumere le seguenti forme:

Tipo di sistema Modello in spazio di stato
Continuo tempo invariante \dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B \mathbf{u}(t)
\mathbf{y}(t) = C \mathbf{x}(t) + D \mathbf{u}(t)
Continuo tempo variante \dot{\mathbf{x}}(t) = \mathbf{A}(t) \mathbf{x}(t) + \mathbf{B}(t) \mathbf{u}(t)
\mathbf{y}(t) = \mathbf{C}(t) \mathbf{x}(t) + \mathbf{D}(t) \mathbf{u}(t)
Discreto tempo invariante \mathbf{x}(k+1) = A \mathbf{x}(k) + B \mathbf{u}(k)
\mathbf{y}(k) = C \mathbf{x}(k) + D \mathbf{u}(k)
Discreto tempo variante \mathbf{x}(k+1) = \mathbf{A}(k) \mathbf{x}(k) + \mathbf{B}(k) \mathbf{u}(k)
\mathbf{y}(k) = \mathbf{C}(k) \mathbf{x}(k) + \mathbf{D}(k) \mathbf{u}(k)
Dominio di Laplace per un sistema
continuo tempo invariante
s \mathbf{X}(s) = A \mathbf{X}(s) + B \mathbf{U}(s)
\mathbf{Y}(s) = C \mathbf{X}(s) + D \mathbf{U}(s)
Dominio Z per un sistema
discreto tempo invariante
z \mathbf{X}(z) = A \mathbf{X}(z) + B \mathbf{U}(z)
\mathbf{Y}(z) = C \mathbf{X}(z) + D \mathbf{U}(z)

Stabilità: esempio: Caso continuo LTI[modifica | modifica sorgente]

La stabilità e le caratteristiche della risposta di un sistema lineare a tempo continuo invariante (cioè lineare con matrici che sono costanti rispetto al tempo) possono essere studiate dagli autovalori della matrice A. La stabilità del sistema può essere determinata analizzando la sua funzione di trasferimento fattorizzata. Questa può apparire, ad esempio, come:

 \textbf{G}(s) = k \frac{ (s - z_{1})(s - z_{2})(s - z_{3})
                              }{ (s - p_{1})(s - p_{2})(s - p_{3})(s - p_{4})
                                }

Il denominatore della funzione è uguale al polinomio caratteristico trovato calcolando il determinante della matrice sI - A,

\mathbf{\lambda}(s) = |sI - A|.

Le radici di questo polinomio (gli autovalori di A) sono i poli di questa funzione di trasferimento (cioè le singolarità dove il modulo della funzione di trasferimento è illimitato). Questi poli possono essere utilizzati per vedere se il sistema è asintoticamente esponenzialmente stabile (a tempo continuo questo significa che i poli hanno tutti parte reale negativa) o marginalmente stabile (a tempo continuo questo significa che i poli hanno tutti parte reale non positiva e i poli a parte reale nulla sono semplici). Un altro approccio per analizzare la stabilità che non coinvolge il calcolo degli autovalori, è l'analisi della stabilità secondo Lyapunov.

Gli zeri del numeratore di \textbf{G}(s) possono essere similmente utilizzati per determinare se il sistema è o meno a fase minima.

Anche se il sistema non è asintoticamente stabile, potrebbe essere ancora esternamente stabile (BIBO stabile). Questo accade se i poli instabili sono cancellati dagli zeri durante il calcolo della funzione di trasferimento (cioè le sue singolarità sono rimovibili).

Controllabilità[modifica | modifica sorgente]

Exquisite-kfind.png Per approfondire, vedi Controllabilità.

La controllabilità implica che è possibile, attraverso l'uso di un ingresso ammissibile, portare lo stato del sistema a partire da qualsiasi valore iniziale fino a qualsiasi stato finale entro un tempo finito. La controllabilità di un sistema a tempo continuo LTI e di un sistema discreto la cui matrice A è non singolare, può essere verificata tramite la condizione necessaria e sufficiente di raggiungibilità (visto che nelle due condizioni suddette le due proprietà corrispondono)[3]:

\operatorname{rank}\begin{bmatrix}B& AB& A^{2}B& ...& A^{n-1}B\end{bmatrix} = n

(il rango è il numero massimo di righe o colonne di una matrice linearmente indipendenti.)

Osservabilità[modifica | modifica sorgente]

Exquisite-kfind.png Per approfondire, vedi Osservabilità.

L'osservabilità quantifica in che misura è possibile ricavare lo stato del sistema a partire dalla sua uscita. L'osservabilità e la raggiungibilità di un sistema sono matematicamente duali[4] (la seconda ci dice che da un qualsiasi stato iniziale si va in un qualsiasi stato finale e la prima che dalla conoscenza dell'uscita si può risalire allo stato iniziale del sistema).

Un sistema continuo (e in questo caso anche discreto[5]) LTI è osservabile se e solo se

\operatorname{rank}\begin{bmatrix}C\\ CA\\ ...\\ CA^{n-1}\end{bmatrix} = n

Funzione di trasferimento[modifica | modifica sorgente]

La "funzione di trasferimento" della rappresentazione in spazio di stato di un sistema continuo LTI può essere ricavata nel seguente modo:

Si calcola la trasformata di Laplace di

\dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B \mathbf{u}(t)

ottenendo

s\mathbf{X}(s) = A \mathbf{X}(s) + B \mathbf{U}(s)

Risolvendo rispetto a \mathbf{X}(s), si ha

(s\mathbf{I} - A)\mathbf{X}(s) = B\mathbf{U}(s)
\mathbf{X}(s) = (s\mathbf{I} - A)^{-1}B\mathbf{U}(s)

Sostituendolo \mathbf{X}(s) nell'equazione di uscita

\mathbf{Y}(s) = C\mathbf{X}(s) + D\mathbf{U}(s), ottenendo
\mathbf{Y}(s) = C((s\mathbf{I} - A)^{-1}B\mathbf{U}(s)) + D\mathbf{U}(s)

Dal momento che la funzione di trasferimento \mathbf{G}(s) è definita come il rapporto tra l'uscita e l'ingresso del sistema, si ha \mathbf{G}(s) = \mathbf{Y}(s) / \mathbf{U}(s) e sostituendo la precedente espressione di \mathbf{Y}(s) si ha

\mathbf{G}(s) = C(s\mathbf{I} - A)^{-1}B + D

Chiaramente \mathbf{G}(s) avrà dimensione q per p e quindi avrà un totale di qp elementi. Quindi per ogni ingresso ci sono q funzioni di trasferimento, ovvero una per ogni uscita. Per questo motivo la rappresentazione in spazio di stato è molto usata per sistemi a più ingressi e più uscite (sistemi MIMO).

Realizzazioni canoniche: funzioni di trasferimento strettamente proprie[modifica | modifica sorgente]

Ogni funzione di trasferimento, che è strettamente propria, può facilmente essere rappresentata in spazio di stato tramite il seguente approccio mostrato con esempio (sistema SISO a 4 dimensioni):

Data una funzione di trasferimento, espanderla in modo da avere tutti i coefficienti del denominatore e del numeratore. Si dovrebbe avere una forma di questo tipo:

 \textbf{G}(s) = \frac{n_{1}s^{3} + n_{2}s^{2} + n_{3}s + n_{4}}{s^{4} + d_{1}s^{3} + d_{2}s^{2} + d_{3}s + d_{4}}.

I coefficienti possono ora essere inseriti direttamente nel modello in spazio di stato con il seguente approccio:

\dot{\textbf{x}}(t) = \begin{bmatrix}
                               -d_{1}& -d_{2}& -d_{3}& -d_{4}\\
                                1&      0&      0&      0\\
                                0&      1&      0&      0\\
                                0&      0&      1&      0
                             \end{bmatrix}\textbf{x}(t) + 
                             \begin{bmatrix} 1\\ 0\\ 0\\ 0\\ \end{bmatrix}\textbf{u}(t)
 \textbf{y}(t) = \begin{bmatrix} n_{1}& n_{2}& n_{3}& n_{4} \end{bmatrix}\textbf{x}(t).

Questa realizzazione è chiamata forma canonica di controllore, perché per il sistema risultante è garantita la controllabilità.

I coefficienti della funzione di trasferimento possono essere utilizzati per costruire anche un'altra forma canonica:

\dot{\textbf{x}}(t) = \begin{bmatrix}
                               -d_{1}&   1&  0&  0\\
                               -d_{2}&   0&  1&  0\\
                               -d_{3}&   0&  0&  1\\
                               -d_{4}&   0&  0&  0
                             \end{bmatrix}\textbf{x}(t) + 
                             \begin{bmatrix} n_{1}\\ n_{2}\\ n_{3}\\ n_{4} \end{bmatrix}\textbf{u}(t)
 \textbf{y}(t) = \begin{bmatrix} 1& 0& 0& 0 \end{bmatrix}\textbf{x}(t).

Questa realizzazione è chiamata forma canonica di osservatore, perché per il sistema risultante è garantita l'osservabilità. Esistono anche altre forme canoniche (di raggiungibilità, di osservabilità).

Realizzazioni canoniche: funzioni di trasferimento proprie[modifica | modifica sorgente]

Le funzioni di trasferimento che sono solamente proprie (e non strettamente) possono ancora essere realizzate abbastanza facilmente. La strategia è separare la funzione in due parti: una costante e una parte strettamente propria.

 \textbf{G}(s) = \textbf{G}_{SP}(s) + \textbf{G}(\infty)

La funzione di trasferimento strettamente propria può essere rappresentata in spazio di stato utilizzando le tecniche viste precedentemente. La rappresentazione in spazio di stato della costante è banalmente \textbf{y}(t) = \textbf{G}(\infty)\textbf{u}(t). Si ottiene così una rappresentazione con le matrici A, B e C determinate dalla parte strettamente propria e la matrice D determinata dalla costante.

Segue un esempio chiarificatore:

 \textbf{G}(s) = \frac{s^{2} + 3s + 3}{s^{2} + 2s + 1}
                      = \frac{s + 2}{s^{2} + 2s + 1} + 1

che porta alla seguente realizzazione:

\dot{\textbf{x}}(t) = \begin{bmatrix}
                               -2& -1\\
                                1&      0\\
                             \end{bmatrix}\textbf{x}(t) + 
                             \begin{bmatrix} 1\\ 0\end{bmatrix}\textbf{u}(t)
 \textbf{y}(t) = \begin{bmatrix} 1& 2\end{bmatrix}\textbf{x}(t) + \begin{bmatrix} 1\end{bmatrix}\textbf{u}(t)

Si può notare come l'uscita dipenda direttamente dall'ingresso. Questo è dovuto alla costante \textbf{G}(\infty) nella funzione di trasferimento.

Realizzazioni canoniche: funzioni di trasferimento improprie[modifica | modifica sorgente]

Dal momento che la funzione di trasferimento di un sistema LTI è razionale propria, non può esistere una realizzazione di una funzione di trasferimento impropria[6].

Retroazione o feedback[modifica | modifica sorgente]

Exquisite-kfind.png Per approfondire, vedi Retroazione.
Tipico modello in spazio di stato con retroazione.

Un metodo comune per rendere la retroazione è moltiplicare l'uscita del sistema per una matrice K e settare l'ingresso del sistema: \mathbf{u}(t) = K \mathbf{y}(t). Dato che il valore di K è arbitrario, può essere negato, così da avere una retroazione negativa. La presenza del segno negativo ha un mero significato notazionale e la sua assenza non ha influenza sul risultato finale. Il sistema:

\dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B \mathbf{u}(t)
\mathbf{y}(t) = C \mathbf{x}(t) + D \mathbf{u}(t)

diventa

\dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B K \mathbf{y}(t)
\mathbf{y}(t) = C \mathbf{x}(t) + D K \mathbf{y}(t)

risolvendo l'equazione di uscita per \mathbf{y}(t) e sostituendoci l'equazione dello stato si ha

\dot{\mathbf{x}}(t) = \left(A + B K \left(I - D K\right)^{-1} C \right) \mathbf{x}(t)
\mathbf{y}(t) = \left(I - D K\right)^{-1} C \mathbf{x}(t)

Il vantaggio di questo approccio è che gli autovalori di A possono essere controllati settando K appropriatamente attraverso la decomposizione di \left(A + B K \left(I - D K\right)^{-1} C \right). Questo è possibile se il sistema in open-loop è controllabile o se tutti gli autovalori di A possono essere resi stabili attraverso un'appropriata scelta di K (stabilizzabilità).

Una semplificazione comune di questo sistema assume D nulla e C uguale all'identità. In questo modo le equazione di riduce a:

\dot{\mathbf{x}}(t) = \left(A + B K \right) \mathbf{x}(t)
\mathbf{y}(t) = \mathbf{x}(t)

Così da dover decomporre solamente A + B K.

Retroazione con riferimento in ingresso[modifica | modifica sorgente]

Retroazione con riferimento.

Alla retroazione può essere aggiunto un riferimento r(t) in questo modo \mathbf{u}(t) = -K \mathbf{y}(t) + \mathbf{r}(t). Il sistema:

\dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B \mathbf{u}(t)
\mathbf{y}(t) = C \mathbf{x}(t) + D \mathbf{u}(t)

diventa

\dot{\mathbf{x}}(t) = A \mathbf{x}(t) - B K \mathbf{y}(t) + B \mathbf{r}(t)
\mathbf{y}(t) = C \mathbf{x}(t) - D K \mathbf{y}(t) + D \mathbf{r}(t)

risolvendo l'equazione di uscita per \mathbf{y}(t) e sostituendoci l'equazione dello stato si ha

\dot{\mathbf{x}}(t) = \left(A - B K \left(I + D K\right)^{-1} C \right) \mathbf{x}(t) + B \left(I -  K \left(I + D K\right)^{-1}D \right) \mathbf{r}(t)
\mathbf{y}(t) = \left(I + D K\right)^{-1} C \mathbf{x}(t) + \left(I + D K\right)^{-1} D \mathbf{r}(t)

Una semplificazione comune è la rimozione del termine D, che riduce le equazioni a

\dot{\mathbf{x}}(t) = \left(A - B K C \right) \mathbf{x}(t) + B \mathbf{r}(t)
\mathbf{y}(t) = C \mathbf{x}(t)

Note[modifica | modifica sorgente]

  1. ^ O. M. Grasselli, L. Menini, S. Galeani, 2008, Sistemi dinamici - Introduzione all'analisi e primi strumenti di controllo, capitolo 4.7 pag. 249.
  2. ^ O. M. Grasselli, L. Menini, S. Galeani, 2008, Sistemi dinamici - Introduzione all'analisi e primi strumenti di controllo, capitolo 2 pag. 31.
  3. ^ O. M. Grasselli, L. Menini, S. Galeani, 2008, Sistemi dinamici - Introduzione all'analisi e primi strumenti di controllo, capitolo 5 pag. 272.
  4. ^ O. M. Grasselli, L. Menini, S. Galeani, 2008, Sistemi dinamici - Introduzione all'analisi e primi strumenti di controllo, capitolo 6 pag. 364.
  5. ^ O. M. Grasselli, L. Menini, S. Galeani, 2008, Sistemi dinamici - Introduzione all'analisi e primi strumenti di controllo, capitolo 6 pag. 341.
  6. ^ O. M. Grasselli, L. Menini, S. Galeani, 2008, Sistemi dinamici - Introduzione all'analisi e primi strumenti di controllo, capitolo 7.3 pag. 413.

Bibliografia[modifica | modifica sorgente]

Libri in lingua italiana:

  • E. Fornasini, G. Marchesini Appunti di teoria dei sistemi, Ed progetto Padova, 2013
  • O. M. Grasselli, L. Menini, S. Galeani, 2008, Sistemi dinamici - Introduzione all'analisi e primi strumenti di controllo

Libri in lingua inglese:

  • Antsaklis, P.J. and Michel, A. N. 2007. A Linear Systems Primer, Birkhauser. (ISBN 978-0-8176-4434-50)
  • Chen, Chi-Tsong 1999. Linear System Theory and Design, 3rd. ed., Oxford University Press (ISBN 0-19-511777-8)
  • Khalil, Hassan K. 2001 Nonlinear Systems, 3rd. ed., Prentice Hall (ISBN 0-13-067389-7)
  • Nise, Norman S. 2004. Control Systems Engineering, 4th ed., John Wiley & Sons, Inc. (ISBN 0-471-44577-0)
  • Hinrichsen, Diederich and Pritchard, Anthony J. 2005. Mathematical Systems Theory I, Modelling, State Space Analysis, Stability and Robustness. Springer. (ISBN 978-3-540-44125-0)
  • Sontag, Eduardo D. 1999. Mathematical Control Theory: Deterministic Finite Dimensional Systems. Second Edition. Springer. (ISBN 0-387-98489-5) (available free online)
  • Friedland, Bernard. 2005. Control System Design: An Introduction to State Space Methods. Dover. (ISBN 0-486-44278-0).
  • Zadeh, Lofti A. and Desoer, Charles A. 1979. Linear System Theory, Krieger Pub Co. (ISBN 978-0-88275-809-1)
  • Durbin, J. and S. Koopman (2001). Time series analysis by state space methods. Oxford University Press, Oxford.

Voci correlate[modifica | modifica sorgente]