Vai al contenuto
Controllo Digitale

Allocazione dei poli e controllo deadbeat

Modello di stato discreto, formula di Ackermann, azzeramento dello stato in n passi dimostrato con Cayley-Hamilton, doppio integratore passo per passo, sforzo di controllo, azione integrale.

Nello spazio degli stati il controllo digitale ha una possibilità che nel continuo non esiste: portare lo stato esattamente a zero in un numero finito di passi con una legge di controllo lineare. È il controllo deadbeat (letteralmente “battito morto”). In questa lezione vediamo il modello di stato discreto, l’allocazione dei poli con la formula di Ackermann, la dimostrazione che il deadbeat annulla lo stato in n passi, l’esempio completo del doppio integratore, il prezzo da pagare in sforzo di controllo e l’aggiunta dell’azione integrale.

Il modello e la retroazione dello stato

Il processo \dot{x} = Ax + Bu, y = Cx, con il comando costante tra i campioni, diventa esattamente

    \[ x(k+1) = \Phi x(k) + \Gamma u(k),\qquad \Phi = e^{AT},\quad \Gamma = \int_0^T e^{A\tau}d\tau\,B \]

(lezione sui sistemi a tempo discreto di Teoria dei sistemi). Con la retroazione dello stato u(k) = -Kx(k) l’anello chiuso è x(k+1) = (\Phi - \Gamma K)x(k). Se il sistema è raggiungibile (lezione sulla raggiungibilità), gli autovalori di \Phi - \Gamma K si possono mettere dove si vuole (lezione sullo spazio degli stati di Controlli automatici). Per un solo ingresso, la formula di Ackermann dà il guadagno che realizza il polinomio caratteristico voluto p(z):

    \[ K = \begin{bmatrix} 0 & \cdots & 0 & 1 \end{bmatrix}\,\mathcal{R}^{-1}\,p(\Phi),\qquad \mathcal{R} = \begin{bmatrix} \Gamma & \Phi\Gamma & \cdots & \Phi^{n-1}\Gamma \end{bmatrix} \]

Una scelta naturale dei poli è z_i = e^{s_iT}, dove gli s_i sono i poli di un buon progetto continuo.

Il controllo deadbeat

Si mettono tutti i poli in z = 0.

Teorema. Se tutti gli autovalori di \Phi_c = \Phi - \Gamma K sono nulli, allora x(n) = 0 per ogni stato iniziale, dove n è l’ordine del sistema.

Dimostrazione. Il polinomio caratteristico di \Phi_c è z^n. Per il teorema di Cayley-Hamilton ogni matrice annulla il proprio polinomio caratteristico, quindi \Phi_c^n = 0. Allora x(n) = \Phi_c^nx(0) = 0. ∎

Nessun sistema continuo lineare può farlo: la soluzione è una combinazione di esponenziali, che si avvicinano a zero senza mai arrivarci. Nel discreto invece la matrice nilpotente “spegne” lo stato in n passi, e poi lo tiene a zero.

Esempio: il doppio integratore

Con \ddot{y} = u (una massa unitaria spinta da una forza), stato x = (y, \dot{y}):

    \[ \Phi = \begin{bmatrix} 1 & T \\ 0 & 1 \end{bmatrix},\qquad \Gamma = \begin{bmatrix} T^2/2 \\ T \end{bmatrix} \]

Il guadagno deadbeat è K = \begin{bmatrix} 1/T^2 & 3/(2T) \end{bmatrix}. Verifica:

    \[ \Phi - \Gamma K = \begin{bmatrix} 1 - \frac{1}{2} & T - \frac{3T}{4} \\ -\frac{1}{T} & 1 - \frac{3}{2} \end{bmatrix} = \begin{bmatrix} \frac{1}{2} & \frac{T}{4} \\ -\frac{1}{T} & -\frac{1}{2} \end{bmatrix} \]

con traccia 0 e determinante -\frac{1}{4} + \frac{1}{4} = 0: il polinomio caratteristico è z^2.

Controllo deadbeat del doppio integratore
Sopra la posizione y, che parte da 1 e arriva esattamente a zero al secondo campione, con un andamento continuo e senza oscillazioni; i punti rossi sono i campioni. Sotto il comando u: meno 1 nel primo periodo, più 1 nel secondo, poi zero.

Con T = 1 e stato iniziale x(0) = (1, 0): il primo comando è u(0) = -Kx(0) = -1, che porta a x(1) = (1 - \frac{1}{2},\ -1) = (\frac{1}{2}, -1); il secondo è u(1) = -(\frac{1}{2} - \frac{3}{2}) = 1, che porta a x(2) = (\frac{1}{2} - 1 + \frac{1}{2},\ -1 + 1) = (0, 0). La massa viene avviata verso lo zero con una spinta e fermata con una spinta uguale e contraria: è la strategia “bang-bang” che si userebbe a mano.

Il prezzo

Il deadbeat è il regolatore più veloce possibile, e se ne paga il prezzo:

  • sforzo di controllo: nel doppio integratore il guadagno è proporzionale a 1/T^2. Dimezzare il periodo, cioè chiedere di arrivare a zero in metà tempo, quadruplica il comando: con attuatori reali si arriva subito alla saturazione;
  • sensibilità: tutti i poli nello stesso punto rendono il sistema molto sensibile agli errori del modello e al rumore di misura;
  • oscillazioni tra i campioni: un deadbeat progettato sull’uscita invece che sullo stato può avere i campioni sul riferimento e l’uscita continua che oscilla (lezione sui sistemi a dati campionati), soprattutto se cancella zeri del modello vicini a z = -1.

In pratica il deadbeat si usa come limite di riferimento, o con un periodo scelto in modo che il comando resti entro i limiti; più spesso si mettono i poli in punti vicini all’origine ma distinti, o li si sceglie con il controllo ottimo (lezione sul controllo LQ e predittivo).

L’azione integrale

La retroazione dello stato non annulla l’errore a regime in presenza di disturbi costanti o errori di modello. Si aggiunge uno stato che integra l’errore:

    \[ x_i(k+1) = x_i(k) + r(k) - y(k) \]

e si progetta la retroazione sul sistema aumentato (x, x_i), di ordine n + 1, con u = -Kx - K_ix_i. Se il sistema aumentato è raggiungibile (il processo non deve avere zeri in z = 1), i poli si allocano come prima, e a regime x_i costante impone y = r.

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
0
Would love your thoughts, please comment.x
()
x