TIPO 1 — Analisi di stabilità in retroazione al variare di k
Cosa chiede l'esercizio
Hai una \(F(s)\) ad anello aperto (retroazione negativa unitaria) che contiene un parametro \(k\):
$$F(s)=k\cdot\frac{N_F(s)}{D_F(s)}$$Devi determinare per quali valori di \(k\) il sistema retroazionato è asintoticamente stabile (AS), semplicemente stabile (SS) o instabile (I). La FdT ad anello chiuso è:
$$W(s)=\frac{F(s)}{1+F(s)}=\frac{N_F(s)}{D_F(s)+N_F(s)}$$Lo strumento principe richiesto è il criterio di Nyquist, da confermare con Routh e/o luogo delle radici.
Schema operativo standard (l'ordine giusto in cui procedere)
Passo 0 — Conta i poli instabili di F(s). Definisci \(n_F^{+}\) = numero di poli di \(F(s)\) con \(\mathrm{Re}>0\). Questo numero decide quale forma del criterio userai. Annota anche i poli in \(s=0\) o immaginari puri (servono per le chiusure).
Passo 1 — Disegna i diagrammi di Bode di F(jω) per k=1. Bode è il punto di partenza di tutto: da lì ricavi sia Nyquist sia i margini.
Passo 2 — Costruisci il diagramma di Nyquist (ddN) qualitativo da Bode, con le chiusure all'infinito.
Passo 3 — Applica il criterio di Nyquist contando i giri attorno a \((-1,0)\) e ragionando su come la variazione di \(k\) scala/ruota il diagramma.
Passo 4 — Trova i valori critici k* (dove il ddN passa per \(-1\)). Qui usi Routh (più preciso) o il calcolo simbolico di Re/Im di \(F(j\omega)\).
Passo 5 — Conferma con il luogo delle radici se richiesto.
Passo 6 — Errore a regime per il \(k\) scelto, se richiesto.
① Diagrammi di Bode (fatti bene)
Metti \(F(s)\) in forma costanti di tempo (poli/zeri come \((1+s\tau)\), non come \((s+a)\)). Sostituisci \(s\to j\omega\). I termini possibili sono 4:
| Termine | Modulo (dB) | Fase |
|---|---|---|
| Guadagno \(K\) | \(20\log_{10}|K|\) costante | \(0°\) se \(K>0\), \(-180°\) se \(K<0\) |
| Monomio \(s^{p}\) (p poli/zeri in 0) | retta \(\mp 20p\) dB/dec, passa per 0 dB in \(\omega=1\) | \(\mp 90°\cdot p\) costante |
| Binomio \((1+j\omega\tau)^{\pm p}\) | 0 fino a \(\omega_r=1/\tau\), poi \(+20p\) dB/dec (zero) o \(-20p\) (polo) | da 0° a \(\pm 90°p\), transizione su decade centrata in \(\omega_r\) |
| Trinomio \(\left(1+\dfrac{2\zeta}{\omega_n}j\omega+\left(\dfrac{j\omega}{\omega_n}\right)^{2}\right)^{\pm 1}\) | 0 fino a \(\omega_n\), poi \(\pm 40\) dB/dec; picco di risonanza se \(\zeta<0{,}707\) | da 0° a \(\pm 180°\), salto su \(\omega_n\) |
Procedura: (1) identifica le pulsazioni di rottura \(\omega_r=1/\tau\) (e \(\omega_n\) per i trinomi); (2) parti da bassa frequenza con pendenza data dai poli/zeri in 0 e quota fissata dal guadagno; (3) a ogni rottura cambia pendenza di ±20 dB/dec (zero/polo) o ±40 (trinomio); (4) la fase parte da \(-90°\cdot(\text{poli in }0)\) e ruota di ±90° per decade attorno a ogni rottura.
② Dal Bode al Nyquist (ddN)
Il ddN è la curva \(F(j\omega)\) nel piano complesso per \(\omega:0^{+}\to+\infty\) (poi simmetrico per ω negative). Si costruisce leggendo da Bode modulo e fase a poche pulsazioni chiave:
Partenza (\(\omega\to 0^{+}\)):
- Fase iniziale: \(\angle F(0^{+})=-90°\cdot V\) dove \(V\) = numero di poli (meno zeri) in \(s=0\); per \(k<0\) aggiungi \(-180°\).
- Se \(F\) ha poli in \(s=0\) (tipo ≥ 1), il modulo \(\to\infty\): il ddN parte all'infinito con quella fase. Servono chiusure all'infinito: un polo in \(s=0\) richiede una semicirconferenza all'infinito che spazza \(-90°\) in senso orario (idem per ogni polo immaginario puro, come la coppia \(\pm j\omega_n\) — vedi esercizio con poli in \(\pm 3j\), dove servono 3 chiusure).
Arrivo (\(\omega\to\infty\)):
- Se \(F\) è strettamente propria (grado den > grado num): il ddN finisce nell'origine.
- Se è propria (gradi uguali): finisce nel punto \((K',0)\).
- Fase d'arrivo: \(-(n-m)\cdot 90°\) (per \(k>0\)).
Convenzione fasi sul piano di Nyquist: la fase si conta in senso orario da semiasse reale positivo. \(0°\) → semiasse +x; \(-90°\) → semiasse −y; \(-180°\) → semiasse −x; \(-270°\) → semiasse +y.
Effetto di k sul ddN: \(k>0\) scala il diagramma (ingrandisce se \(|k|>1\), riduce se \(|k|<1\)) senza ruotarlo. \(k<0\) lo ruota di 180° oltre a scalarlo.
③ Criterio di Nyquist (CdN) — interpretazione
Definisci \(N_F\) = numero di giri del ddN attorno al punto critico \((-1,0)\), positivi se orari.
Relazione fondamentale (criterio completo): il sistema retroazionato è AS se e solo se
- il ddN non passa per \((-1,0)\), e
- \(N_F=-\,n_F^{+}\)
cioè il ddN deve compiere \(n_F^{+}\) giri in senso antiorario attorno a \(-1\) (tanti quanti i poli instabili ad anello aperto).
Criterio ridotto (caso \(n_F^{+}=0\), \(F\) priva di poli a parte reale positiva): il sistema è AS se e solo se il ddN non circonda affatto \((-1,0)\), cioè \(N_F=0\).
Casi degeneri:
- Se il ddN passa esattamente per \((-1,0)\): il sistema ha poli sull'asse immaginario → SS o I (vedi Passo 4 per discriminare).
- Se la condizione 2 è violata → instabile, con numero di poli instabili di \(W(s)\) ricavabile dalla relazione \(n_W^{+}=N_F+n_F^{+}\).
④ Studio per k negativo
Due strade equivalenti:
- Nyquist ruotato: \(k<0\) ruota il ddN di 180°; equivale a studiare i giri attorno a \((-1,0)\) del diagramma ruotato (ovvero contare attorno a \(+1\) il diagramma originale).
- Luogo negativo: traccia direttamente il luogo delle radici per \(k<0\) (vedi sotto).
⑤ Criterio di Bode (CdB) — scorciatoia quando applicabile
Applicabile solo se \(n_F^{+}=0\) (F ad anello aperto AS, al più un polo in \(s=0\)) e il margine di fase \(m_\varphi\) è definito univocamente (cioè una sola pulsazione di attraversamento \(\omega_t\), dove \(|F(j\omega_t)|=1\) = 0 dB).
Allora il sistema retroazionato è AS se e solo se:
$$m_\varphi>0\ \text{ e }\ k_F>0$$dove \(m_\varphi=180°+\angle F(j\omega_t)\) (margine di fase) e \(k_F\) è il guadagno di Bode.
⑥ Criterio di Routh — per trovare i k* esatti
Costruisci il denominatore ad anello chiuso \(D_W(s)=D_F(s)+N_F(s)\) (che conterrà \(k\)) e applica Routh.
Tabella: disponi i coefficienti su righe alternate \(s^{n},s^{n-1},\dots\); ogni elemento successivo è
$$-\frac{\det\begin{pmatrix}\text{due righe sopra}\end{pmatrix}}{a_{\text{sopra}}}$$Condizione di AS: tutti gli elementi della prima colonna strettamente positivi (e dello stesso segno). Imponendo questo ottieni le disuguaglianze su \(k\) → gli intervalli di stabilità.
Casi singolari:
- Zero in prima colonna (ma riga non tutta nulla): sostituisci con \(\varepsilon\to 0^{+}\) e prosegui studiando i segni al limite.
- Riga tutta nulla: indica radici simmetriche rispetto all'origine (tipicamente coppia immaginaria pura → il caso limite di stabilità). Costruisci l'equazione ausiliaria con la riga precedente, derivala e usa i coefficienti per proseguire. Le radici dell'equazione ausiliaria danno direttamente i poli immaginari sull'asse — utile per trovare \(\omega\) dell'attraversamento e il \(k^{*}\) corrispondente.
I valori di \(k\) che annullano un elemento della prima colonna sono i critici.
⑦ Discriminare SS da I nei punti critici
Quando il ddN passa per \((-1,0)\) (cioè \(k=k^{*}\)), il sistema ha poli su \(j\omega\). Per capire se è SS o I: guarda il denominatore ad anello chiuso in \(k=k^{*}\). Se ha una coppia di radici distinte immaginarie pure e tutte le altre a parte reale negativa → semplicemente stabile. Se ci sono radici a parte reale positiva o coppie multiple in \(j\omega\) → instabile.
(Esempio classico del corso: per un certo \(k\) il denominatore ad anello chiuso diventa \(6s^{2}+6\), radici semplici \(\pm j\) → SS.)
⑧ Stabilità regolare vs condizionata
- Regolare: esiste un unico valore soglia \(k^{*}\); per un lato è AS, per l'altro I. Si verifica quando il ddN ha una sola intersezione col semiasse reale negativo (e quindi una sola \(\omega_t\)).
- Condizionata: ci sono più \(k^{*}\) che alternano AS/I/AS/I. Si riconosce quando \(n_F^{+}=0\) e il ddN ha più intersezioni col semiasse reale negativo (equivalentemente: la fase di Bode attraversa più volte la retta a −180°). Tipico esempio del corso: intervalli \(0
k_3^{*}\) (I), con valori come \(k_1\approx 42{,}4\), \(k_2\approx 11063\), \(k_3\approx 644973\).
La causa fisica frequente: presenza di poli lontani trascurati nel modello, oppure forte azione anticipatrice in fase di sintesi, che fanno attraversare più volte i −180°.
⑨ Luogo delle radici (per conferma)
Equazione del luogo (ELR): \(\prod_{i=1}^{n}(s-p_i)+k\prod_{j=1}^{m}(s-z_j)=0\). Regole essenziali:
- R1–R2 (asse reale): un punto dell'asse reale appartiene al luogo positivo se ha alla sua destra un numero dispari di poli+zeri reali (al negativo: numero pari).
- Da ogni polo parte un ramo; gli arrivi sono sugli zeri o all'infinito lungo gli asintoti.
- Asintoti: ci sono \(n-m\) asintoti, con angoli \(\dfrac{(2h+1)180°}{n-m}\) (positivo) o \(\dfrac{h\cdot 360°}{n-m}\) (negativo).
- Centro asintoti: $$s_0=\frac{\sum_i p_i-\sum_j z_j}{n-m}$$
- R5 (punti singolari): al più \(n+m-1\), dati dalle radici reali-in-k di $$\sum_{i=1}^{n}\frac{1}{s-p_i}-\sum_{j=1}^{m}\frac{1}{s-z_j}=0$$ (equivalente a risolvere il sistema \(D_W(s)=0,\ \frac{dD_W}{ds}=0\)). Vanno aggiunti i poli/zeri multipli.
- R6: in un punto singolare di molteplicità µ si incontrano \(2\mu\) rami, alternativamente entranti/uscenti, con tangenti a stella regolare.
- Versi di percorrenza: al crescere di \(k\) le radici si muovono dai poli verso zeri/asintoti.
- Attraversamenti dell'asse immaginario: sono i \(k^{*}\) critici; coincidono con Routh. Si trovano imponendo \(s=j\omega\) in ELR o, comodamente, dall'equazione ausiliaria di Routh.
La conferma consiste nel verificare che gli intervalli di AS letti dal luogo (porzioni di rami nel semipiano sinistro) coincidano con quelli di Nyquist/Routh.
⑩ Errore a regime (se richiesto, scelto un k che rende AS)
Premessa obbligatoria: l'errore a regime esiste solo se il sistema retroazionato è AS, quindi prima scegli un \(k\) che garantisca AS.
Definisci la FdT del sistema d'errore: \(W_e(s)=k_d-W(s)\) (con \(k_d=1\) in retroazione unitaria), cioè \(W_e(s)=\dfrac{1}{1+F(s)}\).
Per riferimento \(r(t)=t^{k}/k!\) (gradino k=0, rampa k=1, parabola k=2), per il teorema del valore finale:
$$e_\infty=\lim_{s\to 0}s\,W_e(s)\,R(s)=\left[\frac{W_e(s)}{s^{k}}\right]_{s=0}$$Tipo del sistema = numero di poli in \(s=0\) di \(F(s)\). Tabella errori (retroazione unitaria, \(K_F\) = guadagno di Bode di F):
| Tipo \ ingresso | gradino (k=0) | rampa (k=1) | parabola (k=2) |
|---|---|---|---|
| 0 | \(\dfrac{1}{1+K_F}\) | ∞ | ∞ |
| 1 | 0 | \(\dfrac{1}{K_F}\) | ∞ |
| 2 | 0 | 0 | \(\dfrac{1}{K_F}\) |
In generale: errore finito e non nullo quando tipo = grado dell'ingresso; nullo quando tipo > grado; infinito quando tipo < grado.
Checklist mentale da spuntare in sede d'esame
- \(n_F^{+}\) = ? poli in 0 / immaginari = ? → quante chiusure
- Bode di \(F(j\omega)\) per k=1 (modulo + fase fatti bene)
- ddN qualitativo con partenza/arrivo/chiusure
- Giri attorno a −1 → CdN (\(N_F=-n_F^{+}\)); se \(n_F^{+}=0\), criterio ridotto / CdB con \(m_\varphi\)
- Routh sul denominatore ad anello chiuso → intervalli e \(k^{*}\) esatti
- Nei \(k^{*}\): SS o I? (guarda le radici su \(j\omega\))
- Regolare o condizionata?
- (se richiesto) Luogo per conferma; errore a regime per il k scelto
Vuoi che adesso ti svolga un esercizio completo del TIPO 1 preso da una delle tue prove intermedie, applicando tutto questo passo-passo? Dimmi pure se preferisci che parta da una traccia specifica (es. ProvaIntermedia2425) oppure che ne scelga una rappresentativa.
TIPO 2 — Progetto in frequenza (sintesi nel dominio della frequenza)
Cosa chiede l'esercizio
Dato un processo \(P(s)\), devi progettare il controllore \(G(s)\) (in retroazione, di solito unitaria) che soddisfi simultaneamente specifiche su tre fronti:
- Precisione a regime: errore \(e_k\) per ingressi canonici, tipo del sistema, astatismo rispetto ai disturbi.
- Transitorio: pulsazione di attraversamento \(\omega_t\) o banda passante \(B_3\), eventualmente tempo di salita \(t_s\approx 1{,}8/\omega_t\), modulo alla risonanza \(M_r\).
- Robustezza/stabilità: margine di fase \(m_\varphi\) e/o margine di guadagno \(m_g\).
La consegna standard richiede (1) la spiegazione delle scelte, (2) lo schema a blocchi con i segnali nominati come da traccia, (3) l'espressione di \(G(s)\), (4) i diagrammi di Bode prima e dopo compensazione.
L'idea di fondo: tradurre le specifiche ad anello chiuso in specifiche sulla risposta armonica ad anello aperto \(F(j\omega)=P(j\omega)G(j\omega)\), poi modellare \(F\) con un controllore strutturato.
Struttura universale del controllore
Il controllore si cerca sempre in questa forma:
$$G(s)=\frac{K_G}{s^{h}}\,R(s)$$con \(R(s)\) a guadagno unitario (così il guadagno di \(G\) coincide con \(K_G\)). I tre blocchi hanno ruoli distinti e separati:
- \(K_G\) (guadagno statico): serve a soddisfare le specifiche sull'entità dell'errore a regime \(e_k\) o sulla risposta ai disturbi \(y_z\).
- \(1/s^{h}\) (\(h=0,1,2,\dots\)): poli nell'origine, servono a conseguire il tipo richiesto o l'astatismo rispetto ai disturbi.
- \(R(s)\) (rete correttrice, guadagno unitario): modifica i diagrammi di Bode di \(F(j\omega)\) per garantire AS e le specifiche sul transitorio (\(\omega_t\), \(m_\varphi\)). È prodotto di anticipatrici/attenuatrici.
- (eventuale) elementi risonanti puri \(\dfrac{1}{s^{2}+\omega_0^{2}}\), aggiunti se serve riproduzione/reiezione di riferimenti/disturbi sinusoidali a \(\omega_0\) (modello interno).
La sintesi procede in due fasi nettamente separate: prima fissi \(K_G\) e \(h\) dalle specifiche di regime (ottenendo il processo modificato \(\hat F\)), poi progetti \(R(s)\) dalle specifiche di transitorio.
Fase A — Specifiche di regime (fissa \(K_G\) e \(h\))
A1. Scelta di \(h\) (tipo del sistema)
Il tipo del sistema = numero di poli in \(s=0\) nel ramo diretto. Conta i poli in 0 già presenti in \(P(s)\), e aggiungi tanti \(1/s\) in \(G(s)\) (cioè h) quanti ne servono per raggiungere il tipo richiesto.
Regola: per avere errore finito e non nullo all'ingresso \(t^{k}/k!\) serve tipo \(=k\); per errore nullo serve tipo \(>k\). Esempi: errore nullo al gradino → tipo ≥1; errore finito alla rampa → tipo =1; errore nullo alla rampa → tipo ≥2.
A2. Calcolo di \(K_G\) dalla specifica sull'errore
La FdT del sistema d'errore è \(W_e(s)=k_d-W(s)\) (retroazione unitaria \(\Rightarrow k_d=1\)). L'errore a regime per \(r=t^{k}/k!\) vale:
$$e_k=\lim_{s\to 0}\frac{W_e(s)}{s^{k}}$$Tabella operativa (retroazione unitaria, \(K_F=K_P\cdot K_G\) guadagno d'anello):
| Tipo | gradino | rampa | parabola |
|---|---|---|---|
| 0 | \(\dfrac{1}{1+K_F}\) | ∞ | ∞ |
| 1 | 0 | \(\dfrac{1}{K_F}\) | ∞ |
| 2 | 0 | 0 | \(\dfrac{1}{K_F}\) |
Da qui isoli \(K_G\). Esempio tipico: tipo 1, specifica alla rampa \(|e_1|\le\varepsilon\ \Rightarrow\ |e_1|=\dfrac{1}{K_P K_G}\le\varepsilon\ \Rightarrow\ K_G\ge\dfrac{1}{K_P\,\varepsilon}\).
A3. Astatismo rispetto ai disturbi
Si studia ponendo \(r=0\). Un SdC è astatico rispetto a \(z\) se la risposta a regime \(y_z\) al disturbo costante \(\bar z\) è nulla — cioè \(W_z(s)\) deve avere uno zero in \(s=0\). Le condizioni dipendono dal punto di accesso del disturbo:
Caso 1 — disturbo sul ramo diretto (con \(F=F_1\cdot F_2\), disturbo tra \(F_1\) e \(F_2\)): astatismo se
- (a) \(F_2(s)\) ha uno zero in \(s=0\), oppure
- (b) \(F_1(s)\) ha un polo in \(s=0\) (integratore) a monte del disturbo.
→ La regola pratica più usata: serve un integratore a monte del punto di ingresso del disturbo. Se il disturbo entra all'ingresso del processo \(P(s)\), basta mettere il polo in 0 dentro \(G(s)\) (che è a monte). Questo è il caso più frequente in esame.
Caso 2 — disturbo sul ramo di reazione (disturbo di misura): qui \(W_z(s)=\dfrac{-k_d F(s)}{1+F(s)}=-k_d W(s)\). L'astatismo richiederebbe uno zero in 0 di \(W(s)\) (caso patologico). I disturbi di misura subiscono lo stesso trattamento del riferimento e vanno per quanto possibile evitati: non si reiettano in modo statico.
Disturbo sinusoidale a \(\omega_0\): per reiezione a regime serve \(W_z(j\omega_0)=0\), ottenuto inserendo nel ramo diretto a monte una coppia di poli immaginari \(\dfrac{1}{s^{2}+\omega_0^{2}}\) (modello interno).
A4. Processo modificato
Definisci il processo modificato (processo + parte di \(G\) che soddisfa il regime):
$$\hat F(s)=\frac{K_G}{s^{h}}\,P(s)$$Da qui in poi lavorerai su \(\hat F\) per progettare \(R(s)\), con \(F(s)=\hat F(s)\,R(s)\).
Fase B — Specifiche di transitorio (progetta \(R(s)\))
B1. Traduci le specifiche ad anello chiuso in specifiche su \(F(j\omega)\) (carta di Nichols)
Le specifiche su \(B_3\) e \(M_r\) (ad anello chiuso) vanno convertite in specifiche su \(\omega_t\) e \(m_\varphi\) (ad anello aperto) tramite la carta di Nichols. Regole euristiche del corso (valide per sistemi con \(m_\varphi<90°\)):
$$\omega_t\le B_3\le 2\,\omega_t\quad(\text{spesso }B_3\approx 1{,}5\div 1{,}7\,\omega_t)$$ $$t_s\approx\frac{1{,}8}{\omega_t}$$Il modulo alla risonanza \(M_r\) si traduce in un margine di fase minimo \(m_\varphi^{*}\) (es. \(M_r\le 2\) dB \(\to m_\varphi^{*}\approx 55°\); \(M_r\le 4\) dB \(\to m_\varphi^{*}\approx 40°\)). Da \(B_3\) ricavi la pulsazione di attraversamento desiderata \(\omega_t^{*}\) (es. se \(B_3=50\) e \(\omega_t\le B_3\le 2\omega_t\), scegli \(\omega_t^{*}\approx 30\)).
B2. Leggi lo stato attuale: \(\hat\omega_t\) e \(\hat m_\varphi\)
Traccia i diagrammi di Bode di \(\hat F(j\omega)\) e leggi, in corrispondenza di \(\omega_t^{*}\):
$$|\hat F(j\omega_t^{*})|\ \text{in dB}\quad\text{e}\quad\angle\hat F(j\omega_t^{*})$$Da questi capisci di quanto devi alzare/abbassare il modulo e quanto anticipo di fase serve.
B3. Le funzioni compensatrici elementari
Entrambe hanno guadagno unitario, uno zero e un polo.
Anticipatrice (aumenta la fase):
$$R_a(s)=\frac{1+s\tau_a}{1+s\frac{\tau_a}{m_a}},\qquad\tau_a>0,\ m_a>1$$- zero in \(1/\tau_a\), polo in \(m_a/\tau_a\) (più a destra)
- amplificazione massima (in alta frequenza): \(m_a\) → in dB \(20\log_{10}m_a\)
- anticipo massimo: \(\arcsin\dfrac{m_a-1}{m_a+1}\), centrato in \(\omega=\dfrac{\sqrt{m_a}}{\tau_a}\) (pulsazione normalizzata \(\omega\tau_a=\sqrt{m_a}\))
- beneficio: anticipo di fase in banda; effetto collaterale: amplificazione di modulo oltre una certa frequenza (tende a spostare \(\omega_t\) verso destra).
Attenuatrice (riduce il modulo):
$$R_i(s)=\frac{1+s\frac{\tau_i}{m_i}}{1+s\tau_i},\qquad\tau_i>0,\ m_i>1$$- polo in \(1/\tau_i\), zero in \(m_i/\tau_i\)
- attenuazione massima: \(-20\log_{10}m_i\) dB
- effetto collaterale: introduce un ritardo di fase nella zona di transizione (da limitare).
B4. I diagrammi universali (come si leggono)
Sono i diagrammi di Bode normalizzati dell'anticipatrice, una curva per ogni valore di \(m_a\), in funzione della pulsazione normalizzata \(\omega\tau\). Sull'asse delle ascisse leggi \(\omega\tau_a\), sulle ordinate trovi due grafici: modulo (dB) e fase (anticipo in gradi). Gli stessi diagrammi valgono per l'attenuatrice attribuendo segno negativo alle ordinate (e leggendo in ascissa \(\omega\tau_i\)).
Procedura di lettura (anticipatrice):
- Sai quanto anticipo \(\Delta\varphi\) serve in \(\omega_t^{*}\).
- Sul diagramma della fase, l'anticipo \(\Delta\varphi\) è ottenibile per varie coppie \((m_a,\ \omega\tau_a)\).
- A ciascuna coppia corrisponde una diversa amplificazione di modulo (letta sul diagramma superiore). Scegli quella che produce l'effetto desiderato sul modulo:
- se vuoi lasciare \(\omega_t\) inalterata → scegli la \(\omega\tau_a\) più piccola (minima amplificazione);
- se vuoi aumentare \(\omega_t\) → scegli \(\omega\tau_a\) più grande (sfrutti l'amplificazione).
- Collochi l'anticipo in \(\omega_t^{*}\) imponendo \(\omega_t^{*}\cdot\tau_a=(\omega\tau_a)_{\text{scelta}}\), da cui ricavi \(\tau_a\).
Analogo per l'attenuatrice: scegli \(m_i\) per l'attenuazione richiesta e \(\omega\tau_i\) abbastanza grande (es. \(\sim 10^{2}\)) da relegare il ritardo di fase lontano da \(\omega_t^{*}\); poi \(\tau_i=(\omega\tau_i)/\omega_t^{*}\).
I 4 casi tipici di compensazione
Caso 1 — Aumentare \(m_\varphi\) senza modificare \(\omega_t\) (\(\omega_t^{*}\approx\omega_t\)).
La fase va anticipata in \(\omega_t\) di almeno \(m_\varphi^{*}-m_\varphi=m_\varphi^{*}-180°-\angle\hat F(j\omega_t)\), senza amplificare troppo il modulo. → Anticipatrice con \(m_a\) sufficiente all'anticipo e \(\omega\tau_a\) piccola (minima amplificazione), centrata in \(\omega_t\).
Caso 2 — Aumentare \(\omega_t\) (\(\omega_t^{*}>\omega_t\)).
Serve alzare il modulo. → Prima un guadagno \(K_G''>1\) (entro i limiti); se la fase in \(\omega_t^{*}\) non basta, aggiungi un'anticipatrice centrata in \(\omega_t^{*}\) con \(\omega\tau_a\) scelta per sfruttare anche l'amplificazione.
Caso 3 — Ridurre \(\omega_t\) (\(\omega_t^{*}<\omega_t\), fase in \(\omega_t^{*}\) già adeguata).
Devi solo abbassare il modulo (non con un guadagno <1, che violerebbe il regime). → Attenuatrice con \(\omega\tau_i\) "oltre" \(\omega_t^{*}\) (a destra), così l'attenuazione cade in \(\omega_t^{*}\) riportando il modulo a 0 dB e spostando l'attraversamento.
Caso 4 — Ridurre/lasciare \(\omega_t\) ma la fase in \(\omega_t^{*}\) è insufficiente.
Combinazione anticipatrice + attenuatrice, entrambe centrate in \(\omega_t^{*}\):
- Anticipatrice con \(m_a\) tale da fornire l'anticipo richiesto più un margine (per compensare il ritardo dell'attenuatrice che seguirà) e \(\omega\tau_a\) piccola;
- Attenuatrice con \(m_i\) tale da recuperare l'amplificazione introdotta dall'anticipatrice e da portare il modulo a 0 dB in \(\omega_t^{*}\), con \(\omega\tau_i\) grande quanto basta a limitare il ritardo.
(Per le attenuazioni di disturbi in bande specificate: si impongono vincoli su \(|W_z(j\omega)|\) — o equivalentemente sul modulo di \(F\)/della sensibilità — nelle bande di frequenza indicate dalla traccia, scegliendo \(K_G\) e \(R(s)\) di conseguenza.)
Fase C — Verifica e stesura finale
C1. Verifica effettiva
Traccia i Bode di \(F(j\omega)=\hat F(j\omega)R(j\omega)\) e controlla:
- \(\omega_t\) effettiva (intersezione di \(|F|\) con 0 dB) ≈ \(\omega_t^{*}\);
- \(m_\varphi=180°+\angle F(j\omega_t)\) effettivo ≥ specifica;
- AS via Criterio di Bode (se applicabile: \(n_F^{+}=0\), \(\omega_t\) unica, \(m_\varphi>0\), \(k_F>0\)) o, in caso di ambiguità, via Nyquist;
- se richiesto \(M_r\) / \(B_3\), conferma sulla carta di Nichols o sul Bode di \(|W(j\omega)|\).
Spesso l'anticipatrice sposta \(\omega_t\) lievemente verso destra: va bene, perché l'aumento di \(\omega_t\) è compensato dal maggior anticipo che la rete fornisce per \(\omega\tau>1\).
C2. Espressione finale del controllore
$$G(s)=\frac{K_G}{s^{h}}\,R_a(s)\,R_i(s)\,(\cdots)$$Verifica che sia propria (realizzabilità): se serve, aggiungi poli lontani a parte reale negativa senza alterare la zona di \(\omega_t\).
C3. Schema a blocchi
Con i segnali esattamente nominati nella traccia (\(r\), \(e\), \(u\), \(y\), \(z/d\), \(1/k_d\) sul ramo di reazione se presente).
Schema sintetico da seguire in esame
- Tipo / astatismo → fissa \(h\) (poli in 0; modello interno se disturbo sinusoidale).
- Errore a regime → calcola \(K_G\) (lascia \(K_G''\) di riserva).
- Scrivi \(\hat F(s)=\dfrac{K_G}{s^{h}}P(s)\).
- Carta di Nichols: da \(B_3, M_r\) → \(\omega_t^{*}\) e \(m_\varphi^{*}\) (\(t_s\to\omega_t\)).
- Traccia Bode di \(\hat F\), leggi \(|\hat F(j\omega_t^{*})|\) e \(\angle\hat F(j\omega_t^{*})\).
- Identifica il caso (1–4) e scegli anticipatrice/attenuatrice dai diagrammi universali (scegli \(m\) e \(\omega\tau\), poi \(\tau=(\omega\tau)/\omega_t^{*}\)).
- Componi \(G(s)\), rendilo proprio.
- Verifica \(\omega_t\), \(m_\varphi\), AS (CdB/CdN); traccia Bode prima e dopo.
- Disegna lo schema a blocchi con i segnali della traccia.
Vuoi che adesso ti svolga per intero un esercizio TIPO 2 preso dalle tue tracce (per esempio il Problema 2 della ProvaIntermedia 2018/19, che ho davanti: \(P(s)=10\,\dfrac{s-1}{s(s+100)}\) con astatismo al disturbo, \(e\le 0{,}01\) alla rampa, \(\omega_t\approx 1\), \(m_\varphi\ge 15°\)), applicando passo-passo diagrammi universali e verifica?
TIPO 3 — Progetto nel dominio di Laplace (LdR) e controllore a dimensione minima
Cosa chiede l'esercizio
Dato un processo \(P(s)\) (talvolta da ricavare dallo spazio di stato come \(W(s)=C(sI-A)^{-1}B\)), devi progettare un controllore \(G(s)\) di dimensione minima (= grado del denominatore di \(G\)) che garantisca:
- specifiche di precisione (tipo/astatismo/errore a regime),
- AS del sistema retroazionato,
- eventualmente collocazione dei poli ad anello chiuso in una zona (es. \(\mathrm{Re}\le -1\)) o assegnazione esatta.
Strumento principe: il luogo delle radici (LdR), spesso da tracciare prima e dopo compensazione, e/o l'equazione diofantina. La consegna standard richiede (1) spiegazione scelte, (2) schema a blocchi con i segnali della traccia, (3) espressione di \(G(s)\), (4) i luoghi delle radici di interesse.
Struttura del controllore (filosofia di Laplace)
Il controllore si progetta nella forma:
$$G(s)=\frac{K_G}{s^{h}}\,R(s)$$I ruoli (identici alla frequenza, ma qui \(R\) serve a collocare i poli):
- \(s^{h}\): poli in 0 per il tipo richiesto o l'astatismo ai disturbi.
- elementi risonanti puri \(\dfrac{1}{s^{2}+\omega_0^{2}}\): se serve reiezione/riproduzione di segnali sinusoidali a \(\omega_0\) (modello interno).
- \(R(s)\): modifica \(F(s)=G(s)P(s)\) affinché i poli di \(W(s)\) cadano nella zona desiderata (AS + collocazione).
- \(K_G\) (e/o guadagno di \(R\)): si aggiusta alla fine per le specifiche a regime su \(e_k\) o \(y_z\).
Due strade alternative per progettare \(R\) e \(K_G\): (A) approccio LdR (sposti centro asintoti + alzi il guadagno), (B) approccio diofantino (imponi direttamente il polinomio caratteristico). Scegli in base a cosa chiede la traccia.
① Dimensione minima del controllore — la regola
Questa è la parte che richiede più attenzione. La regola del corso:
- Se è richiesta la sola AS: scegli la struttura di dimensione più bassa possibile, sfruttando le procedure standard (vedi sotto fase minima/non minima). Non serve la formula.
- Se è richiesta l'assegnazione di autovalori: il numero di parametri liberi del controllore deve essere $$\text{n. parametri}=d_W\ (=d_F\text{ se }H=1)$$ dove \(d_W\) = grado di \(D_W\) (denominatore ad anello chiuso) e \(d_F\) = grado di \(D_F\).
Correzioni a \(d_F\) (cruciali):
- +1 per ogni equazione aggiuntiva generata da una specifica a regime (es. \(W(0)=1\), errore prescritto): quella specifica "consuma" un parametro, quindi te ne serve uno in più.
- −1 per ogni parametro libero già presente nel processo (o già fissato altrove): quel parametro è "gratis".
Esempio dal materiale: assegnare \(d_W\) autovalori con un vincolo a regime \(W(0)=1\) e → servono \(d_W=d_F+2\) parametri → struttura con polinomi di grado adeguato. Si contano i parametri liberi residui (es. b, c, d) e non quelli già fissati (es. a già scelto).
Tabella strutture standard (parametri / dimensione):
| n. parametri | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| \(G(s)\) | \(a\) | \(\dfrac{a}{s+c}\) o \(as+b\) | \(\dfrac{as+b}{s+c}\) | \(\dfrac{as+b}{s^{2}+cs+d}\) | \(\dfrac{as^{2}+bs+c}{s^{2}+ds+l}\) |
| dimensione | 0 | 1 | 1 | 2 | 2 |
Risultati teorici pratici da ricordare (compaiono anche come V/F):
- Per assegnare arbitrariamente tutti i poli ad anello chiuso serve un controllore di dimensione \(n-1\) (n = ordine del processo).
- Se aggiungi anche riproduzione esatta di riferimenti costanti (1 polo in 0 + \(n-1\) poli liberi), la dimensione diventa \(n\) (cioè \(1+(n-1)\) poli liberi → dim \(n\)... attenzione: dim = 3 in un esempio con n=2 perché 1 polo origine + 2 liberi).
- Per sistema a fase minima, esiste sempre un controllore stabilizzante di dimensione 2 (procedura: zero per ridurre \(n-m\) a 2 + coppia polo-zero per spostare \(s_0\) a sinistra + polo lontano per realizzabilità).
- Se eccesso poli-zeri \(n-m=2\) → basta dimensione 1 (coppia polo-zero) o anche 0 (solo guadagno) se i rami sono già a sinistra.
- Se \(\sum p_i-\sum z_j<0\) (centro asintoti già negativo) → controllore di dim 1 può dare AS + tipo 1.
② Strutture standard di \(G(s)\) in funzione delle specifiche
- Tipo k → polo k-uplo in \(s=0\): inserisci \(1/s^{k}\) in \(G\).
- Astatismo a disturbo costante sull'ingresso del processo → polo in \(s=0\) in \(G\) a monte del disturbo (vedi TIPO 2, caso 1).
- Reiezione disturbo sinusoidale a \(\omega_0\) → coppia di poli in \(\dfrac{1}{s^{2}+\omega_0^{2}}\) in \(G\) (modello interno): così \(|W_z(j\omega_0)|=0\). Esempio: \(G(s)=\dfrac{K_G}{s(s^{2}+1)}R(s)\) per reiettare un disturbo a \(\omega_0=1\).
- Fase non minima (zeri a \(\mathrm{Re}\ge 0\)) → aggiunta di zeri/poli per portare \(n-m=2\) con centro asintoti a sinistra (vedi ④).
③ Approccio LdR — sistemi a fase minima
Premessa teorica: per \(k\to+\infty\), m rami del LdR⁺ convergono sugli zeri (a sinistra, perché fase minima), gli altri \(n-m\) rami convergono sugli asintoti. Gli asintoti giacciono interamente nel semipiano sinistro solo se:
- (a) \(n-m=1\), oppure
- (b) \(n-m=2\) e centro asintoti \(s_0<0\).
Quindi stabilizzare = ricondursi a uno di questi due casi e poi usare \(K_G\) sufficientemente grande.
Procedura standard (dal libro, fase minima):
- Inserisci in \(R(s)\) tanti zeri a parte reale negativa quanti servono a ridurre \(n-m\) a 2.
- Aggiungi una coppia polo/zero (entrambi a \(\mathrm{Re}<0\)) per spostare il centro degli asintoti \(s_0\) a sinistra dell'asse immaginario.
- Con il criterio di Routh determina un \(K_G\) che garantisca AS ad anello chiuso (per fase minima, \(K_G\) positivo e abbastanza grande funziona sempre).
- Se necessario, aggiungi poli a \(\mathrm{Re}<0\) per rendere \(G(s)\) almeno propria (realizzabilità). I poli vanno scelti abbastanza lontani da non compromettere l'AS al \(K_G\) scelto.
Centro asintoti: \(s_0=\dfrac{\sum_i p_i-\sum_j z_j}{n-m}\). Quando aggiungi una coppia polo-zero \(\dfrac{s+z}{s+p}\) con \(p>z>0\), sposti \(s_0\) verso sinistra di \(\dfrac{z-p}{n-m}\) (effetto attrattivo del polo).
④ Procedura per sistemi a fase non minima
Quando \(P(s)\) ha zeri a parte reale \(\ge 0\), non puoi cancellarli (sarebbe una cancellazione instabile → autovalore nascosto a destra → sistema non AS). Procedura:
- Aggiungi zeri stabili (a \(\mathrm{Re}<0\)) in \(R(s)\) per ridurre \(n-m\) a 2 — gli zeri aggiunti devono stare nel semipiano sinistro per preservare/migliorare le proprietà del luogo.
- Aggiungi una coppia polo/zero (entrambi a \(\mathrm{Re}<0\), con \(p\) sufficientemente \(>z\) e \(z>0\)) per spostare il centro degli asintoti \(s_0\) nel semipiano sinistro.
- Scegli \(K_G\) sufficientemente grande per l'AS, verificando con Routh (qui la verifica è obbligatoria: a differenza della fase minima, l'AS non è garantita automaticamente — uno zero a destra attira un ramo a destra).
- Aggiungi eventuale polo lontano a \(\mathrm{Re}<0\) per la realizzabilità (\(G\) propria).
⑤ Approccio diofantino — assegnazione dei poli
Quando vuoi assegnare esattamente il polinomio caratteristico ad anello chiuso. Con \(F(s)=G(s)P(s)=\dfrac{N_G N_P}{D_G D_P}\):
$$D_W(s)=D_F(s)+N_F(s)=D_G D_P+N_G N_P\ \overset{!}{=}\ D^{*}(s)$$dove \(D^{*}(s)\) è il polinomio caratteristico desiderato (es. \((s+1)^{4}\), oppure \((s+2)^{5}\), oppure radici distinte \((s+1)(s+2+j)(s+2-j)(s+10)\)).
Metodo: scrivi \(G(s)=\dfrac{N_G(s)}{D_G(s)}\) con coefficienti incogniti (in numero pari a quello dato dalla regola di dimensione), espandi \(D_G D_P+N_G N_P\), e applica il principio di identità dei polinomi (uguagliando coefficiente per coefficiente). Ottieni un sistema lineare nelle incognite.
Avvertenze:
- Se \(D^{*}\) ha grado pari ai parametri disponibili, il sistema ha soluzione unica.
- A volte \(D_G D_P+N_G N_P\) non monico: aggiungi \(D^{*}(s)=e\cdot(s+1)^{4}\) con \(e\) come incognita extra se il polinomio ad anello chiuso non è monico.
- Scelta dei poli desiderati: preferisci poli distinti a poli multipli. Un punto singolare multiplo nel LdR ha sensibilità altissima ai parametri: piccole perturbazioni di \(K\) spostano molto i poli effettivi.
- Il \(G(s)\) risultante può essere instabile o a fase non minima: va bene purché non ci siano cancellazioni con \(P(s)\) (la stabilità ad anello chiuso è comunque garantita dall'identità imposta).
⑥ Cancellazioni polo-zero controllore-processo
- Cancellare un polo/zero di \(P(s)\) con uno zero/polo di \(G(s)\) genera un autovalore nascosto (non compare in \(W(s)\) ma resta nel polinomio caratteristico del sistema complessivo).
- Cancellazione stabile (\(\mathrm{Re}<0\)): autovalore nascosto stabile → ammissibile, non compromette l'AS.
- Cancellazione instabile (\(\mathrm{Re}\ge 0\)): autovalore nascosto a destra → sistema non AS anche se \(W(s)\) sembra stabile. Vietata.
- Cancellazione polo(processo)-zero(controllore): autovalore nascosto raggiungibile e inosservabile. Cancellazione zero(processo)-polo(controllore): irraggiungibile e osservabile.
Nel polinomio caratteristico complessivo devi includere tutti gli autovalori: \(P_c(s)=D_W(s)\cdot\{\text{autovalori nascosti}\}\), specificando per ciascuno R/O.
⑦ Luogo delle radici — regole operative (per il tracciamento richiesto)
Equazione (ELR): \(\prod(s-p_i)+k\prod(s-z_j)=0\). Sintesi delle regole:
- Asse reale: punto del LdR⁺ se ha a destra un numero dispari di poli+zeri reali.
- \(n-m\) asintoti; centro \(s_0=\dfrac{\sum p_i-\sum z_j}{n-m}\).
- Punti singolari: al più \(n+m-1\), da \(\sum\dfrac{1}{s-p_i}-\sum\dfrac{1}{s-z_j}=0\) (o sistema \(D_W=0,\ D_W'=0\)); tieni solo le radici con \(k\) reale.
- In un punto singolare di molteplicità \(\mu\): \(2\mu\) rami a stella regolare.
- Versi: da poli (k=0) verso zeri/asintoti (k→∞).
- Attraversamenti asse immaginario = \(k^{*}\) critici (da Routh o equazione ausiliaria).
- LdR negativo (k<0): asse reale con numero pari a destra; asintoti ad angoli diversi.
Congruenza: dopo aver progettato \(G\), traccia il LdR di \(F(s)=G(s)P(s)\) e verifica che la collocazione dei poli effettivamente ottenuta (per il \(K_G\) scelto) sia coerente con l'assegnazione/zona richiesta.
⑧ Errore a regime dopo compensazione
Come nel TIPO 1/2: \(W_e(s)=1-W(s)=\dfrac{1}{1+F(s)}\), e
$$e_k=\lim_{s\to 0}\frac{W_e(s)}{s^{k}}$$Verifica che il tipo conseguito (poli in 0 di \(F\)) e il guadagno \(K_F=K_P K_G\) rispettino le specifiche numeriche. Aggiusta \(K_G\) (o il guadagno di \(R\)) alla fine, controllando di non perdere l'AS (ri-verifica Routh/LdR al nuovo guadagno).
Schema sintetico da seguire in esame
- Se \(P\) è in spazio di stato → ricava \(P(s)=C(sI-A)^{-1}B\).
- Specifiche di regime → fissa \(h\) (tipo/astatismo) ed eventuali risonanti \(\dfrac{1}{s^{2}+\omega_0^{2}}\). Annota le equazioni a regime (es. \(W(0)=1\)).
- Dimensione minima: conta i parametri necessari = (autovalori da assegnare) + (equazioni a regime) − (parametri liberi del processo). Scegli la struttura dalla tabella.
- Scegli l'approccio:
- LdR (zona/AS): fase minima → riduci \(n-m\) a 2, sposta \(s_0<0\), Routh per \(K_G\), polo lontano. Fase non minima → idem ma con verifica Routh obbligatoria e attenzione allo zero a destra.
- Diofantino (assegnazione esatta): imponi \(D_G D_P+N_G N_P=D^{*}(s)\), identità polinomi, risolvi il sistema lineare.
- Cancellazioni: assicurati che siano solo a sinistra.
- Errore a regime: verifica/aggiusta \(K_G\).
- Polinomio caratteristico complessivo con R/O di ogni autovalore (inclusi i nascosti).
- LdR prima e dopo + schema a blocchi con i segnali della traccia.
Vuoi che ora ti svolga per intero un esercizio TIPO 3 dalle tue tracce? Ne ho due ottimi sott'occhio: il Problema 3 della ProvaIntermedia 2018/19 (\(P(s)=\dfrac{s+2}{s(s-1)}\), controllore di dimensione 2, inseguimento di \(r\) costante con reiezione di disturbo \(d\) costante — caso fase non minima/instabile), oppure un caso con diofantina pura. Dimmi quale preferisci.
TIPO 5 — Assegnazione autovalori con retroazione dallo stato (AA-RS)
Cosa chiede l'esercizio
Dato il processo \(\dot x=Ax+Bu\), \(y=Cx\) (di dimensione \(n\)), con lo stato \(x\) misurabile, devi trovare una matrice di retroazione \(K\) tale che la legge \(u=Kx\) renda la matrice ad anello chiuso \(A+BK\) dotata di autovalori assegnati (in \(-1\), coincidenti, in \(\{-1,-2,-3\}\), con \(\mathrm{Re}\le -1\), ecc.).
Poiché \(x\) è misurabile, basta un controllore statico (la matrice costante \(K\)). Lo schema è \(\dot x=(A+BK)x+Br\), \(y=Cx\) — vedi schema a blocchi a fine sezione.
Spesso la traccia mette parametri (\(\alpha,\beta,a,b\)) in \(A\) o \(B\) e chiede per quali valori il problema è risolubile: questa è la parte di analisi (raggiungibilità/stabilizzabilità) che precede il calcolo di \(K\).
① Condizione di risolubilità — analisi preliminare
Se si chiede solo la stabilizzazione (S-RS, tutti gli autovalori a \(\mathrm{Re}<0\), non necessariamente in posizioni precise), la condizione è più debole: la coppia \((A,B)\) deve essere stabilizzabile = tutti gli autovalori non raggiungibili hanno \(\mathrm{Re}<0\).
Raggiungibilità
Costruisci la matrice di raggiungibilità:
$$P=\begin{bmatrix}B & AB & A^{2}B & \cdots & A^{n-1}B\end{bmatrix}$$La coppia \((A,B)\) è completamente raggiungibile \(\iff\mathrm{rango}(P)=n\) \(\iff\det P\ne 0\) per ingresso scalare.
Stabilizzabilità — due modi di verificarla
Modo (a) — decomposizione strutturale rispetto alla R: porta il sistema in forma canonica, isola la sottomatrice \(A_{22}\) (= dinamica non raggiungibile) e controlla che i suoi autovalori abbiano tutti \(\mathrm{Re}<0\).
Modo (b) — PBH test: individua tutti gli autovalori con \(\mathrm{Re}\ge 0\) e per ciascuno verifica
$$\mathrm{rango}\,[\,A-\lambda I\ \big|\ B\,]=n$$Se il rango è pieno → quell'autovalore è raggiungibile (quindi spostabile, ok). Se è \( Il PBH è il modo più rapido nei problemi con parametri: imposti \(\mathrm{rango}[A-\lambda I\,|\,B] Esempio tipico con parametri (dal materiale): sistema in forma canonica rispetto alla R, autovalore \(\beta\) non raggiungibile → serve \(\beta<0\) per stabilizzabilità; inoltre \(\det P_1=\det(B_1\ A_{11}B_1)=1-\alpha\ne 0\iff\alpha\ne 1\). Se \(\alpha=1\) compare un secondo autovalore NR (in questo caso positivo) → non stabilizzabile. Conclusione: risolubile \(\iff\alpha\ne 1\) e \(\beta<0\). Attenzione alla convenzione del corso (segni). Il corso usa \(A+BK\) (non \(A-BK\)). La formula di Ackermann nelle convenzioni di Oriolo è: dove: (Il segno \(-\) deriva dalla convenzione \(u=Kx\) con \(\dot x=(A+BK)x\). Nei testi che usano \(A-BK\) il \(-\) sparisce. Verifica sempre quale convenzione usa lo schema della traccia.) Fondamento (Cayley-Hamilton): funziona perché ogni matrice annulla il proprio polinomio caratteristico; la struttura di \(P^{-1}\) porta il sistema in forma compagna dove l'ultima riga controlla i coefficienti del polinomio. Quando \((A,B)\) non è completamente R ma è stabilizzabile, non applichi Ackermann al sistema intero. Procedi così (procedura del corso, S-RS): Questo perché: gli autovalori NR (\(\tilde A_{22}\)) restano inalterati, quelli R diventano quelli scelti. Validità della trasformazione: \(\tilde A+\tilde B\tilde K=T(A+BK)T^{-1}\), quindi \(A+BK\) ha gli stessi autovalori di \(\tilde A+\tilde B\tilde K\) (le trasformazioni di similitudine conservano lo spettro). Quando si chiede spettro coincidente in \(\lambda\) (es. "tutti in \(-2\)"): Esempio: \(n=3\), tutti in \(-2\) → \(p^{*}(s)=(s+2)^{3}\), e \(p^{*}(A)=(A+2I)^{3}\). Poi \(K=-\mu(A+2I)^{3}\). Approccio parametrico utile: se devi assegnare una famiglia (es. \(\lambda_1=-1\), \(\lambda_{2,3}=-\alpha\pm j\frac{\sqrt 3}{2}\) con \(\alpha\) variabile), conviene tenere \(\alpha\) simbolico, calcolare \(K(\alpha)=-\mu\,p^{*}_\alpha(A)\) una volta sola, e poi valutare per i vari \(\alpha\) richiesti. FdT ad anello chiuso: \(W(s)=C(sI-(A+BK))^{-1}B\). Scorciatoia: in una retroazione dallo stato il numeratore di \(W\) coincide con quello ad anello aperto \(C(sI-A)^{-1}B\) (salvo cancellazioni), e il denominatore è esattamente il \(p^{*}(s)\) assegnato. Quindi puoi scrivere \(W\) senza rifare l'inversione. Errore a regime nullo per riferimento a gradino (domanda frequente "come completare lo schema?"): la retroazione dallo stato da sola non garantisce \(W(0)=1\). Si aggiunge un guadagno di prefiltro sul riferimento, oppure — meglio — si include un integratore nello schema (sistema esteso con \(\dot u=m\)), riconducendosi a un'assegnazione sul sistema aumentato. Questo rende il sistema di tipo 1 e robusto alle variazioni parametriche. Confronto banda passante (altra domanda tipica): tra più assegnazioni, quella con autovalori più "veloci" (più a sinistra / modulo maggiore) dà banda passante più elevata e risposta più pronta, ma a costo di sforzo di controllo maggiore. Lo schema standard AA-RS: con il ramo di retroazione \(u=Kx+r\) (il blocco \(K\) preleva lo stato \(x\), lo moltiplica, e somma al riferimento). Equazioni: \(\dot x=(A+BK)x+Br\), \(y=Cx\). Nomina i segnali come da traccia (\(r\), \(u\), \(x\), \(y\)). Vuoi che ti svolga per intero un esercizio TIPO 5? Ho davanti l'Esercizio 4.1 del libro (\(A=\begin{pmatrix}1&2&-1\\1&1&1\\0&0&-1\end{pmatrix}\), \(B=\begin{pmatrix}0\\0\\1\end{pmatrix}\), \(C=(1\ 1\ 0)\)) con assegnazione di quattro terne di autovalori via Ackermann, oppure un caso con parametri (\(\alpha,\beta\)) in cui si discute la risolubilità prima di calcolare \(K\). Quale preferisci?② Casistica (come la traccia ti mette alla prova)
③ Formula di Ackermann — calcolo di \(K\) (caso completamente R)
Procedura passo-passo
④ Procedura per il caso NR ma stabilizzabile (sottosistema R)
⑤ Autovalori coincidenti
⑥ Dopo l'assegnazione — completamenti tipici
⑦ Schema a blocchi
Schema sintetico da seguire in esame
TIPO 6 — Osservatore asintotico (rilevatore) dello stato
Cosa chiede l'esercizio
Dato un processo \(\dot x=Ax+Bu\), \(y=Cx\) in cui lo stato \(x\) non è misurabile (misuri solo \(y\)), devi costruire un osservatore — un sistema dinamico ausiliario che produce una stima \(\xi(t)\) dello stato tale che l'errore di stima \(e(t)=x(t)-\xi(t)\to 0\) asintoticamente, cioè \(\xi\to x\).
Domande tipiche: "esiste un osservatore?" / "qual è la massima velocità di convergenza conseguibile?" / "costruire la matrice \(G\)" / "assegnare autovalori coincidenti alla dinamica dell'errore".
Il problema è il duale dell'AA-RS (TIPO 5): tutto ciò che lì valeva per \((A,B)\) e raggiungibilità, qui vale per \((A,C)\) e osservabilità.
① Struttura dell'osservatore — le equazioni
L'osservatore è una copia del processo (stessi \(A\), \(B\)) più un termine correttivo proporzionale allo scarto tra uscita misurata e uscita stimata:
$$\dot\xi=A\xi+Bu+G\,(y-C\xi)$$dove:
- \(A\xi+Bu\) = copia della dinamica del processo,
- \(y-C\xi\) = errore di uscita (residuo): è ciò che misuri per correggere la stima,
- \(G\) = matrice di forzamento (o guadagno dell'osservatore), l'incognita da progettare (dimensione \(n\times p\), con \(p\) = numero di uscite; per uscita scalare è un vettore colonna \(n\times 1\)).
Dinamica dell'errore
Definisci \(e=x-\xi\). Derivando e sostituendo:
$$\dot e=\dot x-\dot\xi=(Ax+Bu)-(A\xi+Bu+G(Cx-C\xi))=(A-GC)\,e$$Quindi \(e(t)=e^{(A-GC)t}e(0)\). L'errore converge a zero (per ogni \(e(0)\)) se e solo se tutti gli autovalori di \(A-GC\) hanno parte reale negativa. Il problema di progetto è dunque: scegliere \(G\) per assegnare gli autovalori di \(A-GC\).
Esempio scalare (dal formulario): \(A=1\), \(C=2\), \(G=2\) → \(A-GC=1-4=-3\), quindi \(e(t)=e^{-3t}e(0)\).
② Condizioni di esistenza e di assegnabilità
Due domande distinte, due condizioni distinte (attenzione a non confonderle — è un classico d'esame):
Sintesi:
- Completamente osservabile → osservatore esiste e velocità arbitraria.
- Solo rilevabile (non O, ma autovalori NO a \(\mathrm{Re}<0\)) → osservatore esiste, ma velocità limitata (vedi ⑥). In questo caso si parla di ricostruttore asintotico (dizione del corso quando la dinamica dell'errore non è assegnabile arbitrariamente).
- Non rilevabile (esiste autovalore NO con \(\mathrm{Re}\ge 0\)) → osservatore non esiste.
Osservabilità
Matrice di osservabilità:
$$Q=\begin{bmatrix}C\\ CA\\ CA^{2}\\ \vdots\\ CA^{n-1}\end{bmatrix}$$Completamente osservabile \(\iff\mathrm{rango}(Q)=n\) \(\iff\det Q\ne 0\) per sistema quadrato.
PBH test per osservabilità
Un autovalore \(\lambda\) (di \(A\)) è osservabile \(\iff\)
$$\mathrm{rango}\begin{bmatrix}A-\lambda I\\ C\end{bmatrix}=n$$Se il rango è \(
③ Dualità — il principio che riconduce tutto all'AA-RS
Gli autovalori di una matrice coincidono con quelli della sua trasposta:
$$\text{autovalori}(A-GC)=\text{autovalori}((A-GC)^{T})=\text{autovalori}(A^{T}-C^{T}G^{T})$$Ponendo \(A'=A^{T}\), \(B'=C^{T}\), \(K'=-G^{T}\), l'assegnazione degli autovalori di \(A^{T}+C^{T}K'\) è esattamente un problema di AA-RS sulla coppia \((A^{T},C^{T})\). Quindi:
| AA-RS (TIPO 5) | Osservatore (TIPO 6) |
|---|---|
| \(A+BK\) | \(A-GC\) |
| raggiungibilità di \((A,B)\) | osservabilità di \((A,C)\) |
| matrice \(P=[B\ AB\ \dots]\) | matrice \(Q=[C;\ CA;\ \dots]\) |
| \(\mu\) = ultima riga di \(P^{-1}\) | \(\eta\) = ultima colonna di \(Q^{-1}\) |
| \(K=-\mu\,p^{*}(A)\) | \(G=p^{*}(A)\,\eta\) |
Il problema O-U (osservazione dall'uscita) è risolubile con velocità arbitraria se e solo se il processo è osservabile — duale del "AA-RS risolubile ⟺ raggiungibile".
④ Calcolo di \(G\) — versione duale di Ackermann
Per assegnare a \(A-GC\) il polinomio caratteristico desiderato \(p^{*}(s)\) (con le radici = autovalori voluti per la dinamica dell'errore):
$$\boxed{G=p^{*}(A)\,\eta}$$dove:
- \(\eta\) = ultima colonna di \(Q^{-1}\),
- \(p^{*}(A)\) = matrice ottenuta sostituendo \(A\) a \(s\) in \(p^{*}(\cdot)\).
Procedura passo-passo
- Verifica osservabilità: calcola \(Q\), controlla \(\mathrm{rango}(Q)=n\).
- Calcola \(Q^{-1}\) ed estrai \(\eta\) = sua ultima colonna.
- Scrivi \(p^{*}(s)=\prod(s-\lambda_i)\) dagli autovalori desiderati per l'errore.
- Calcola \(p^{*}(A)\).
- \(G=p^{*}(A)\,\eta\).
- Verifica: gli autovalori di \(A-GC\) devono coincidere con i desiderati.
Nota di segno: qui non compare il segno meno che c'era in \(K=-\mu\,p^{*}(A)\), perché la dinamica dell'errore è \(A-GC\) (già con il meno interno). Verifica sempre coerenza calcolando \(A-GC\) alla fine.
⑤ Autovalori coincidenti
Se si chiede errore con autovalori tutti coincidenti in \(\lambda<0\):
$$p^{*}(s)=(s-\lambda)^{n}$$Esempio: dinamica dell'errore in \(-3\) doppio → \(p^{*}(s)=(s+3)^{2}\), poi \(G=(A+3I)^{2}\eta\). Valgono le stesse avvertenze di sensibilità del TIPO 5 (autovalori multipli = alta sensibilità ai parametri).
⑥ Caso solo rilevabile (non completamente O) — velocità limitata
Quando il processo non è completamente osservabile ma è rilevabile (autovalore inosservabile \(\lambda_{NO}\) con \(\mathrm{Re}<0\)):
- L'osservatore esiste comunque.
- L'autovalore inosservabile \(\lambda_{NO}\) compare inalterato nella dinamica dell'errore: non puoi spostarlo con \(G\) (è invisibile alla correzione, che passa per \(C\)).
- Quindi la massima velocità di convergenza dell'errore è limitata dall'autovalore inosservabile a parte reale più grande (il più vicino all'asse immaginario): l'errore decade non più rapidamente di \(e^{\mathrm{Re}(\lambda_{NO})\,t}\).
Come si costruisce \(G\) in questo caso (procedura del corso, dagli esami):
- Nel polinomio caratteristico desiderato per \(A-GC\) deve obbligatoriamente comparire l'autovalore inosservabile: \(\det[sI-(A-GC)]=(s-\lambda_{\text{assegn}})(s-\lambda_{NO})\).
- Gli altri autovalori (quelli osservabili) li scegli liberi, con \(\mathrm{Re}<\mathrm{Re}(\lambda_{NO})\) per non ridurre ulteriormente la velocità già limitata da \(\lambda_{NO}\).
Esempio tipico d'esame: processo con autovalore inosservabile in \(-1\). L'osservatore esiste ma la velocità di convergenza non può superare \(e^{-t}\). Si costruisce \(G\) imponendo \(\det[sI-(A-GC)]=(s-\lambda_a)(s+1)\) con \(\lambda_a<-1\).
Il modo più rapido per vederlo: se il sistema è già scomposto (sottosistema O + sottosistema NO), l'errore sulla componente osservabile obbedisce a una dinamica assegnabile, mentre quello sulla componente inosservabile evolve con \(\lambda_{NO}\) fisso, indipendentemente da \(G\).
⑦ Decomposizione strutturale rispetto alla O (quando serve)
Se il sistema non è completamente O, per progettare \(G\) conviene decomporre. Trova la trasformazione \(T\) (colonne = base che separa osservabile/inosservabile) che porta a:
$$\tilde A=\begin{bmatrix}\tilde A_o & 0\\ * & \tilde A_{no}\end{bmatrix},\qquad \tilde C=(\tilde C_o\ \ 0)$$Cerchi \(\tilde G\) nella forma che agisce solo sul sottosistema osservabile \((\tilde A_o,\tilde C_o)\), applichi Ackermann duale lì, e torni in coordinate originali con \(G=T^{-1}\tilde G\) (perché \(A-GC=T^{-1}(\tilde A-\tilde G\tilde C)T\), che conserva lo spettro).
⑧ Schema a blocchi
L'osservatore è graficamente una replica del processo che riceve lo stesso ingresso \(u\), con in più un anello di correzione:
$$u\ \longrightarrow\ \boxed{\text{copia: }\dot\xi=A\xi+Bu}\ \overset{\xi}{\longrightarrow}\ \boxed{C}\ \overset{\hat y=C\xi}{\longrightarrow}\ \ominus\ \longleftarrow\ y$$Il residuo \(y-C\xi\) passa per \(G\) e rientra nella copia. Nomina i segnali come da traccia (\(u\), \(y\), \(\xi\), \(\hat y=C\xi\), residuo \(y-\hat y\)).
Schema sintetico da seguire in esame
- Dimensione \(n\); scrivi \(A, B, C\).
- Osservabilità: \(Q=[C;\ CA;\ \dots;\ CA^{n-1}]\), rango/det. (Con parametri: trova i valori che fanno perdere rango; PBH sugli autovalori critici.)
- Esistenza: processo rilevabile? (autovalori NO a \(\mathrm{Re}<0\)). Se un autovalore NO ha \(\mathrm{Re}\ge 0\) → osservatore non esiste, fermati.
- Assegnabilità velocità: completamente O → arbitraria; solo rilevabile → limitata da \(\lambda_{NO}\) (massima velocità \(\approx e^{\mathrm{Re}(\lambda_{NO})t}\)).
- Calcolo di \(G\):
- completamente O → Ackermann duale (\(G=p^{*}(A)\eta\), \(\eta\) = ultima colonna di \(Q^{-1}\)), oppure identità polinomi per \(n\) piccolo;
- solo rilevabile → imponi \(p^{*}\) contenente \(\lambda_{NO}\), gli altri autovalori a sinistra di \(\lambda_{NO}\); oppure decomponi e lavora sul sottosistema O.
- Scrivi \(p^{*}(s)\) (coincidenti → \((s-\lambda)^{n}\)).
- Verifica spettro di \(A-GC\).
- Schema a blocchi dell'osservatore (copia + termine correttivo \(G(y-C\xi)\)).
Vuoi che ti svolga per intero un esercizio TIPO 6? Ho davanti due casi ottimi dal materiale: l'Esercizio 4.2 del libro (costruzione di \(G\) sia per via diretta sia con Ackermann duale, con discussione del caso \(\alpha=0\) solo rilevabile), oppure il Problema 3 di un esame (processo con autovalore inosservabile in \(-1\): esistenza sì, velocità limitata a \(e^{-t}\), impostazione di \(G\)). Quale preferisci?
TIPO 7 — Retroazione dall'uscita: osservatore + retroazione dallo stato stimato (AA-RU)
Cosa chiede l'esercizio
Dato \(\dot x=Ax+Bu\), \(y=Cx\) con solo \(y\) misurabile (non lo stato \(x\)), devi costruire un controllore dinamico dall'uscita che assegni gli autovalori ad anello chiuso (o stabilizzi). Poiché lo stato non è disponibile, non puoi usare \(u=Kx\); costruisci quindi un osservatore che stima \(x\) con \(\xi\), e retroazioni lo stato stimato: \(u=K\xi\).
Il fondamento teorico è il principio di separazione, che garantisce di poter progettare \(K\) (TIPO 5) e \(G\) (TIPO 6) indipendentemente, e poi comporli.
Varianti tipiche: "per quali \(\alpha,\beta\) è possibile?", "dimostra che si risolve lo stesso problema dall'uscita", "calcola la FdT del controllore dinamico", "tutti gli autovalori coincidenti".
① Condizione di risolubilità
Due domande, due condizioni:
- Assegnare arbitrariamente tutti gli autovalori ad anello chiuso dall'uscita → il processo deve essere completamente raggiungibile E completamente osservabile.
- Solo stabilizzare dall'uscita (autovalori a \(\mathrm{Re}<0\), non in posizioni precise) → il processo deve essere stabilizzabile E rilevabile.
Questo perché la parte \(K\) richiede R (o stabilizzabilità), la parte \(G\) richiede O (o rilevabilità). Servono entrambe.
Nei problemi con parametri, il primo passo è sempre: calcolare \(P=[B\ AB\ \dots]\) e \(Q=[C;\ CA;\ \dots]\), trovare per quali valori dei parametri si perde R o O, e usare PBH sugli autovalori critici. Solo per i valori che garantiscono R+O (o stabilizzabile+rilevabile) il problema è risolubile.
② Principio di separazione — enunciato
Cioè: gli autovalori del processo controllato (\(A+BK\), scelti tramite \(K\)) e quelli della dinamica di osservazione (\(A-GC\), scelti tramite \(G\)) si assegnano separatamente e non si influenzano. Puoi progettare \(K\) e \(G\) come due problemi indipendenti (TIPO 5 e TIPO 6) e comporli.
③ Dimostrazione del principio di separazione (tema teorico frequente)
Questo è un classico tema d'esame — impara a derivarlo. Si parte dalle equazioni del processo e dell'osservatore, e si sceglie come cambio di coordinate lo stato \(x\) e l'errore di ricostruzione \(e=x-\xi\).
Equazioni ad anello chiuso (con \(u=K\xi\) e osservatore \(\dot\xi=A\xi+Bu+G(y-C\xi)\)):
Dinamica dell'errore:
$$\dot e=\dot x-\dot\xi=(Ax+Bu)-(A\xi+Bu+G(Cx-C\xi))=(A-GC)\,e$$Dinamica dello stato (sostituendo \(\xi=x-e\) in \(u=K\xi=K(x-e)\)):
$$\dot x=Ax+BK(x-e)+Br=(A+BK)x-BKe+Br$$Scrivendo il sistema nelle coordinate \((x,e)\):
$$\begin{bmatrix}\dot x\\ \dot e\end{bmatrix}=\begin{bmatrix}A+BK & -BK\\ 0 & A-GC\end{bmatrix}\begin{bmatrix}x\\ e\end{bmatrix}+\begin{bmatrix}B\\ 0\end{bmatrix}r,\qquad y=(C\ \ 0)\begin{bmatrix}x\\ e\end{bmatrix}$$La matrice dinamica \(2n\times 2n\) è triangolare a blocchi. Gli autovalori di una matrice triangolare a blocchi sono l'unione degli autovalori dei blocchi diagonali:
$$\text{autovalori}=\text{autovalori}(A+BK)\ \cup\ \text{autovalori}(A-GC)\quad\blacksquare$$Il blocco fuori diagonale \(-BK\) non influisce sugli autovalori proprio per la struttura triangolare. Questo dimostra che le due assegnazioni sono indipendenti.
④ Equazioni del controllore dinamico
Il controllore è un sistema dinamico di ordine \(n\) (l'osservatore) con uscita \(u=K\xi\). Sostituendo \(u=K\xi\) e \(y-C\xi\) nell'osservatore:
$$\boxed{\ \dot\xi=(A+BK-GC)\,\xi+G\,y,\qquad u=K\,\xi\ }$$(Attenzione al segno di \(y\): nello schema con sommatore il segnale d'ingresso all'osservatore è l'errore di uscita \(r-y\) o \(-y\); il corso cambia opportunamente il segno per preservare la forma canonica \(\dot e=(A-GC)e\). Segui la convenzione dello schema della traccia.)
⑤ Funzione di trasferimento del controllore
Dalla rappresentazione di stato del controllore (\(\dot\xi=(A+BK-GC)\xi+Gy\), \(u=K\xi\)):
$$G_c(s)=K\,(sI-A-BK+GC)^{-1}\,G$$Cancellazioni tipiche: spesso \(G_c(s)\) presenta cancellazioni polo-zero (ammissibili) che riflettono la struttura del problema. Esempio dal libro: un controllore risulta \(G_c(s)=\dfrac{20(s+1)(s+2)(s+3)}{(s+1)(s+2)(s+3)(s+7)}=\dfrac{20}{s+7}\), con triplice cancellazione consistente con la scomposizione di Kalman (dinamica R∩O di dimensione ridotta).
⑥ Procedura operativa standard
La sintesi si spezza in due fasi indipendenti (grazie alla separazione):
- Fase 1 — progetta \(K\) (come TIPO 5): assegna gli autovalori del processo controllato (\(A+BK\)) nelle posizioni desiderate (es. tutti in \(-2\)). Usa Ackermann \(K=-\mu\,p_K^{*}(A)\) o identità polinomi.
- Fase 2 — progetta \(G\) (come TIPO 6): assegna gli autovalori della dinamica di osservazione (\(A-GC\)). Usa Ackermann duale \(G=p_G^{*}(A)\,\eta\) o identità polinomi.
- Fase 3 — componi: \(u=K\xi\) con l'osservatore, scrivi le equazioni del controllore e/o la sua FdT.
⑦ Criteri per la scelta degli autovalori
Contropartita: osservatore molto veloce → \(G\) grande → forte amplificazione del rumore di misura. Compromesso pratico.
Nel caso non completamente R/O (solo stabilizzabile+rilevabile):
- Gli autovalori non raggiungibili compaiono inalterati (non spostabili da \(K\)).
- Gli autovalori non osservabili compaiono inalterati (non spostabili da \(G\)).
- Devono comunque avere \(\mathrm{Re}<0\) perché il tutto sia AS. Nel \(p^{*}\) desiderato vanno inclusi obbligatoriamente questi autovalori fissi.
⑧ Caso con parametri (\(\alpha,\beta,a,b\))
Schema tipico d'esame (es. Esercizio 4.2 del libro, \(C=(1\ \ \alpha)\), \(B=(1\ \ \beta)^{T}\)):
- Raggiungibilità: \(\det P\) in funzione dei parametri → valori che la annullano. (Es. \(\det P=\beta-1\), R per \(\beta\ne 1\).)
- Osservabilità: \(\det Q\) in funzione dei parametri → valori che la annullano. (Es. \(\det Q=\alpha(1+\alpha)\), O per \(\alpha\ne 0,-1\).)
- Per i valori che danno R+O → problema risolubile con assegnazione arbitraria. Fuori → controlla se gli autovalori NR/NO persi sono comunque a \(\mathrm{Re}<0\) (allora solo stabilizzazione, non velocità arbitraria).
- Se richiesto "velocità almeno \(e^{-2t}\)": nel caso solo rilevabile, verifica che l'autovalore NO abbia \(\mathrm{Re}\le -2\); altrimenti la specifica non è soddisfacibile.
⑨ Inclusione del riferimento e robustezza (completamento frequente)
La retroazione dall'uscita così costruita non garantisce \(W(0)=1\) (errore nullo al gradino) in modo robusto: una perturbazione di \(A,B,C,K\) dà \(W(0)\ne 1\). Due rimedi:
- Prefiltro sul riferimento con \(\gamma=1/W(0)\) — semplice ma non robusto a variazioni parametriche.
- Azione integratrice sul ramo diretto (soluzione preferibile): si estende il sistema con un integratore \(\dot u=m\), ottenendo il sistema esteso \(P_e\) (matrici \(A_e,B_e,C_e\)), su cui si applica il principio di separazione. Questo rende il sistema di tipo 1 e mantiene errore nullo al gradino anche sotto variazioni parametriche (purché resti AS).
⑩ Schema a blocchi
Processo \(P\) in avanti; il compensatore dinamico (osservatore + \(K\)) sul ramo di reazione (o sul ramo diretto se c'è azione integratrice). L'osservatore riceve \(u\) e \(y\), produce \(\xi\); il blocco \(K\) genera \(u=K\xi\). Nomina i segnali come da traccia (\(r\), \(y\), \(u\), \(\xi\)).
Schema sintetico da seguire in esame
- Scrivi \(A, B, C\); dimensione \(n\).
- Proprietà strutturali: \(P\) (R?) e \(Q\) (O?). Con parametri: valori critici via det + PBH.
- Risolubilità: R+O → assegnazione arbitraria; stabilizzabile+rilevabile → solo stabilizzazione. Altrimenti non risolubile.
- Fase 1 — \(K\): assegna autovalori di \(A+BK\) (Ackermann o identità polinomi).
- Fase 2 — \(G\): assegna autovalori di \(A-GC\) (Ackermann duale o identità), scelti più rapidi.
- Componi: controllore \(\dot\xi=(A+BK-GC)\xi+Gy\), \(u=K\xi\).
- FdT del controllore se richiesta: \(G_c(s)=K(sI-A-BK+GC)^{-1}G\) (segnala cancellazioni).
- Verifica: autovalori complessivi = \(\{A+BK\}\cup\{A-GC\}\) (principio di separazione).
- Eventuale integratore per errore nullo robusto al gradino.
- Schema a blocchi con i segnali della traccia.
Vuoi che ti svolga per intero un esercizio TIPO 7? Ho due candidati ottimi dal materiale: l'Esercizio 4.1 di "EserciziSenzaSol" (\(A=\begin{pmatrix}1&1&0\\-1&-1&1\\3&1&-2\end{pmatrix}\), \(B=(1\ 2\ 1)^{T}\), \(C=(1\ 0\ 0)\), tutti gli autovalori in \(-2\) dall'uscita + FdT del controllore), oppure l'Esercizio 4.2 con parametri (discussione di risolubilità al variare dei parametri + velocità osservazione \(\ge e^{-2t}\)). Quale preferisci?
TIPO 8 — Decomposizione di Kalman e analisi strutturale
Cosa chiede l'esercizio
Analizzare le proprietà strutturali di un sistema: quali autovalori sono raggiungibili/osservabili, quali sono "nascosti", per quali valori dei parametri il sistema è stabilizzabile/rilevabile, e scrivere il polinomio caratteristico complessivo classificando ogni autovalore.
Compare in due contesti: come punto B/C/D di un problema nel dominio del tempo (dopo aver progettato un controllore), oppure nelle prove intermedie come richiesta di specificare R/O degli autovalori del sistema complessivo dopo una sintesi con cancellazioni.
Domande tipiche: "per quali parametri il processo è stabilizzabile?", "qual è l'autovalore nascosto?", "quali coppie di autovalori sono assegnabili?", "polinomio caratteristico complessivo con R/O di ciascun autovalore".
① I quattro sottospazi di Kalman
Ogni sistema \((A,B,C)\) si decompone in quattro sottosistemi, definiti dall'intersezione tra il sottospazio raggiungibile \(\mathcal P=\mathrm{Im}(P)\) e quello inosservabile \(\mathcal Q=\mathrm{Ker}(Q)\):
| Sottospazio | Natura | Nascosto? |
|---|---|---|
| \(X_1\) | R ∩ NO (raggiungibile, inosservabile) | sì |
| \(X_2\) | R ∩ O (raggiungibile, osservabile) | no |
| \(X_3\) | NR ∩ NO (non raggiungibile, inosservabile) | sì |
| \(X_4\) | NR ∩ O (non raggiungibile, osservabile) | sì |
Relazioni che definiscono i sottospazi (con \(\oplus\) = somma diretta):
$$\mathcal P\cap\mathcal Q=X_1,\quad X_1\oplus X_2=\mathcal P,\quad X_1\oplus X_3=\mathcal Q,\quad X_1\oplus X_2\oplus X_3\oplus X_4=\mathbb R^{n}$$Costruzione (procedura operativa)
- Calcola \(P=[B\ AB\ \dots\ A^{n-1}B]\); \(\mathcal P=\mathrm{Im}(P)\) (span delle colonne indipendenti).
- Calcola \(Q=[C;\ CA;\ \dots;\ CA^{n-1}]\); \(\mathcal Q=\mathrm{Ker}(Q)\) (sottospazio inosservabile).
- Trova basi di \(X_1=\mathcal P\cap\mathcal Q\), poi completa \(X_2\) (in \(\mathcal P\)), \(X_3\) (in \(\mathcal Q\)), \(X_4\) (il resto). Esprimi le basi nella forma più semplice possibile.
- Matrice di trasformazione: \(T^{-1}\) ha per colonne le basi di \(X_1,X_2,X_3,X_4\) nell'ordine; \(T=(T^{-1})^{-1}\).
- \(\tilde A=TAT^{-1}\), \(\tilde B=TB\), \(\tilde C=CT^{-1}\) mostrano la struttura a blocchi con i quattro sottosistemi.
② FdT e autovalori nascosti
La funzione di trasferimento \(W(s)=C(sI-A)^{-1}B\) "vede" solo il sottosistema \(X_2\) (R∩O). Quindi:
$$\text{poli di }W(s)=\text{autovalori di }X_2$$Gli autovalori di \(X_1,X_3,X_4\) non compaiono in \(W(s)\): sono nascosti. Questo spiega perché passando dallo spazio di stato alla FdT si "perdono" autovalori: quelli non R∩O si cancellano.
Distinzione:
- nascosti intrinseci: emergono passando dalla forma matriciale/implicita alla \(P(s)\) esplicita (se il processo è dato in spazio di stato).
- nascosti da interconnessione: emergono quando si considera processo + controllore, cioè calcolando \(F(s)=G(s)P(s)\).
③ PBH test — classificare un singolo autovalore
Per stabilire se l'autovalore \(\lambda\) di \(A\) è R/NR e O/NO:
$$\mathrm{rango}\,[\,A-\lambda I\ \big|\ B\,]\ \begin{cases}=n\ \Rightarrow\ \lambda\ \text{raggiungibile}\\④ Cancellazioni polo-zero e autovalori generati
Quando controllore e processo condividono un polo/zero, la cancellazione genera sempre un autovalore nascosto (da interconnessione). Regole precise:
- Cancellazione zero(controllore)–polo(processo): genera un autovalore irraggiungibile e osservabile (NR∩O, tipo \(X_4\)).
- Cancellazione polo(controllore)–zero(processo): genera un autovalore raggiungibile e inosservabile (R∩NO, tipo \(X_1\)).
(Convenzione del corso: nella scrittura della cancellazione il primo termine è il controllore, il secondo il processo.)
Effetto sulla stabilità
Un autovalore nascosto non è modificabile con la retroazione (né dallo stato né dall'uscita: è "invisibile"). Quindi:
- Cancellazione stabile (\(\mathrm{Re}<0\)): l'autovalore nascosto è stabile → ammissibile, non compromette l'AS.
- Cancellazione instabile (\(\mathrm{Re}\ge 0\)): l'autovalore nascosto ha \(\mathrm{Re}\ge 0\) → il sistema complessivo non è mai AS, anche se \(W(s)\) sembra stabile. Vietata.
Gli autovalori assegnati con equazione diofantina sono invece sempre R∩O (non nascosti), perché compaiono in \(D_W\).
⑤ Stabilizzabilità e rilevabilità (le domande sui parametri)
- Stabilizzabile (dallo stato) \(\iff\) tutti gli autovalori non raggiungibili hanno \(\mathrm{Re}<0\).
- Rilevabile (dall'uscita) \(\iff\) tutti gli autovalori inosservabili hanno \(\mathrm{Re}<0\).
Procedura con parametri (schema tipico d'esame):
- Se il sistema è già in forma canonica di Kalman rispetto a R (o O), l'autovalore fuori dal blocco raggiungibile è immediatamente identificabile come NR (o NO).
- Calcola \(\det P\) (o \(\det Q\), o i minori "ristretti") in funzione dei parametri → valori che fanno perdere rango.
- Per ciascun valore critico, usa PBH per capire quale autovalore diventa NR/NO e dove si trova.
- Stabilizzabile \(\iff\) l'autovalore NR ha \(\mathrm{Re}<0\); rilevabile \(\iff\) l'autovalore NO ha \(\mathrm{Re}<0\).
Esempio dal materiale (istruttivo): \(A=\begin{bmatrix}a&1\\0&b\end{bmatrix}\), \(B=\begin{bmatrix}1\\0\end{bmatrix}\), \(C=(1\ 0)\). In forma canonica rispetto a R, \(b\) è NR → stabilizzabile dallo stato \(\iff b<0\). È sempre osservabile → l'osservatore esiste sempre. Se invece la stessa struttura ha \(b\) NO, allora l'osservatore esiste \(\iff b<0\).
Esempio con doppia dipendenza: \(\det P_1=1-\alpha\) (R per \(\alpha\ne 1\)), autovalore NR \(=\beta\) (stabilizzabile \(\iff\beta<0\)). Se \(\alpha=1\) compare un secondo NR (in un autovalore positivo) → non stabilizzabile. Conclusione: stabilizzabile \(\iff\alpha\ne 1\) e \(\beta<0\).
⑥ Quali coppie di autovalori sono assegnabili
Domanda tipica: dato un processo con certi autovalori R/NR, quali spettri sono ottenibili in retroazione?
Regola (teorema di assegnazione): con \(u=Kx\) si possono assegnare arbitrariamente gli \(m=\mathrm{rango}(P)\) autovalori raggiungibili; i restanti \(n-m\) autovalori (non raggiungibili) restano inalterati per qualsiasi \(K\).
Esempio dal formulario: processo con autovalore \(-1\) irraggiungibile e osservabile, e \(+2\) raggiungibile e inosservabile. In retroazione dallo stato il \(-1\) resta fisso, il \(+2\) è spostabile. Quindi tra le coppie \(\{-1,-1\}\), \(\{-1,-2\}\), \(\{-2,-2\}\): assegnabili sono quelle che contengono il \(-1\) fisso e spostano l'altro → \(\{-1,-1\}\) e \(\{-1,-2\}\) sì; \(\{-2,-2\}\) no (richiederebbe di spostare il \(-1\) irraggiungibile).
Dualmente, con l'osservatore (\(A-GC\)) puoi spostare solo gli autovalori osservabili; quelli inosservabili restano fissi.
⑦ Polinomio caratteristico complessivo
Il polinomio caratteristico del sistema complessivo (processo + controllore) deve includere tutti gli autovalori, nascosti e non:
$$P_c(s)=D_W(s)\cdot\{\text{autovalori nascosti}\}$$dove \(D_W(s)\) contiene gli autovalori R∩O (quelli "visibili" in \(W(s)\)), e va aggiunto il fattore per ogni autovalore nascosto generato da cancellazioni o già presente nel processo.
Procedura per rispondere alla domanda "polinomio caratteristico + R/O di ciascun autovalore":
- Identifica gli autovalori assegnati/visibili (radici di \(D_W\)) → sono R∩O (o "R e O").
- Identifica gli autovalori nascosti dalle cancellazioni: classificali con la regola ④ (zero-polo → NR∩O; polo-zero → R∩NO).
- Scrivi \(P_c(s)\) come prodotto di tutti i fattori.
- Per ciascun fattore, specifica la natura (R/NR, O/NO).
Esempio dal materiale: dopo una sintesi, \(P_c(s)=(s^{3}-as^{2}+Ks+K)(s+3)\) dove le tre radici del blocco tra parentesi sono R e O, mentre l'autovalore \(-3\) è R e inosservabile (generato da cancellazione polo-zero). Altro esempio: \((s+1)^{5}\) con due autovalori in \(-1\) R e inosservabili e quattro in \(-1\) R e osservabili.
Schema sintetico da seguire in esame
- Contesto: processo in spazio di stato → decomposizione completa; processo in Laplace → gli autovalori nascosti nascono solo da cancellazioni con il controllore.
- R e O: calcola \(P\) e \(Q\), ranghi. Se non pieni → decomponi.
- Classifica gli autovalori (PBH o struttura canonica): R∩O (\(X_2\), visibili), R∩NO (\(X_1\)), NR∩NO (\(X_3\)), NR∩O (\(X_4\)) → i nascosti sono \(X_1,X_3,X_4\).
- Parametri: trova i valori che fanno perdere R/O; stabilizzabile \(\iff\) NR a \(\mathrm{Re}<0\); rilevabile \(\iff\) NO a \(\mathrm{Re}<0\).
- Cancellazioni (se c'è un controllore): zero-polo → NR∩O; polo-zero → R∩NO. Verifica che siano stabili (altrimenti sistema non AS).
- Assegnabilità: solo gli autovalori R spostabili con \(K\); solo gli O spostabili con \(G\).
- Polinomio caratteristico complessivo \(P_c(s)=D_W(s)\cdot\{\text{nascosti}\}\), con R/O di ogni autovalore.
Vuoi che ti svolga per intero un esercizio TIPO 8? Ho davanti l'Esercizio 4.3 del libro (sistema \(4\times 4\) con decomposizione di Kalman completa: \(\mathrm{rango}(P)=\mathrm{rango}(Q)=2\), costruzione dei quattro sottospazi e della matrice \(T\), poi stabilizzazione dall'uscita), oppure un caso da esame con cancellazioni (dove classifichi gli autovalori nascosti e scrivi \(P_c(s)\) con R/O). Quale preferisci?
TIPO 9 — Stabilità di sistemi non lineari (Lyapunov)
Cosa chiede l'esercizio
Dato un sistema autonomo \(\dot x=f(x)\), devi trovare i punti di equilibrio e studiarne la stabilità. Le varianti: "determina tutti gli equilibri", "studia la stabilità nel modo più approfondito possibile" (= parti dall'indiretto, se è critico passa al diretto, se \(\dot V\) è solo SDN applica LaSalle), "dimostra che l'origine è l'unico equilibrio", "stima il bacino di attrazione".
① Punti di equilibrio
Si trovano risolvendo il sistema algebrico \(f(x_e)=0\). Attenzione alle soluzioni multiple: metti a zero un'equazione alla volta, distingui i casi (es. \(x_1=0\) oppure un fattore \(=0\)), e incrocia con le altre equazioni.
Esempio di metodo (dal materiale): da \(x_1(x_2^{2}+k)=0\) ricavi \(x_1=0\) oppure \(x_2=\pm\sqrt{-k}\); sostituendo nella seconda equazione scarti le soluzioni incompatibili e trovi che l'origine è l'unico equilibrio (se \(k\ne 0\)).
Inferenza indiretta (domanda "dimostra che l'origine è l'unico equilibrio"): se dimostri che l'origine è globalmente asintoticamente stabile, allora non possono esistere altri equilibri (un secondo equilibrio contraddirebbe la convergenza globale all'origine). Viceversa, se esiste un secondo equilibrio, l'origine non può essere GAS.
② Definizioni di stabilità
Per un punto di equilibrio \(x_e\):
- Stabile (semplice): traiettorie che partono vicino a \(x_e\) restano vicine (∀ε ∃δ...).
- Asintoticamente stabile (AS): stabile e attrattivo (le traiettorie vicine convergono a \(x_e\)).
- Locale: la proprietà vale in un intorno di \(x_e\).
- Globale (GAS): vale per ogni condizione iniziale in \(\mathbb R^{n}\).
- Instabile: non stabile.
③ Criterio indiretto (linearizzazione) — primo tentativo
Calcola la Jacobiana \(J(x)=\dfrac{\partial f}{\partial x}\) e valutala nell'equilibrio: \(J(x_e)\). Studia i suoi autovalori:
| Autovalori di \(J(x_e)\) | Conclusione |
|---|---|
| tutti a \(\mathrm{Re}<0\) (Hurwitz) | \(x_e\) localmente AS |
| almeno uno a \(\mathrm{Re}>0\) | \(x_e\) instabile |
| almeno uno a \(\mathrm{Re}=0\), nessuno a \(\mathrm{Re}>0\) | caso critico → indecidibile, serve il criterio diretto |
Nel caso critico (\(\mathrm{Re}=0\)) non si può dedurre nulla: il comportamento dipende dai termini non lineari trascurati nella linearizzazione. Esempio tipico: \(J(x_e)\) con autovalori \(\pm j\sqrt 2\) → critico → si passa al diretto.
④ Criterio diretto di Lyapunov — quando l'indiretto fallisce
Assumi \(x_e=0\) (altrimenti trasla con \(z=x-x_e\)). Cerca una funzione candidata di Lyapunov \(V(x)\in C^{1}\):
- \(V(x)\) è definita positiva (DP): \(V(x_e)=0\), \(V(x)>0\) per \(x\ne x_e\);
- \(\dot V(x)=\nabla V\cdot f(x)\le 0\) è semidefinita negativa (SDN),
Versione globale. Se \(V\) è DP e radialmente illimitata (\(V\to\infty\) per \(\|x\|\to\infty\)) e \(\dot V\) è DN in tutto \(\mathbb R^{n}\), allora \(x_e\) è globalmente AS.
Punti chiave:
- L'esistenza di una funzione di Lyapunov è condizione sufficiente (per sistemi stazionari a dimensione finita è anche necessaria).
- Se la scelta \(V\) non funziona (non risulta di Lyapunov), non si conclude nulla: potrebbe esisterne un'altra migliore. Riprova con un'altra candidata.
- Se \(V\) è di Lyapunov, lo è anche \(V'=\beta V^{\gamma}\) (\(\beta>0,\ \gamma>1\)).
- La radiale illimitatezza serve a garantire che gli insiemi di livello \(\Omega_\alpha=\{V(x)<\alpha\}\) siano limitati (necessario per le conclusioni globali).
⑤ Costruzione della funzione di Lyapunov
Strategie, in ordine di convenienza:
(a) Quadratica semplice — sempre il primo tentativo consigliato:
$$V(x)=\tfrac{1}{2}(x-x_e)^{T}(x-x_e)=\tfrac{1}{2}\|x-x_e\|^{2}$$DP e radialmente illimitata per costruzione. Calcola \(\dot V=x^{T}\dot x\) e verifica il segno. Spesso i termini incrociati si cancellano magicamente (è il caso di molti esercizi d'esame).
(b) Quadratica pesata per cancellare termini incrociati:
$$V(x)=\tfrac{1}{2}\left(x_1^{2}+\alpha x_2^{2}\right)$$scegli \(\alpha>0\) in modo che i termini misti in \(\dot V\) si elidano. Esempio dal materiale: \(V=\tfrac12(x_1^{2}+2x_2^{2})\) dà \(\dot V=-x_1^{4}-5x_1^{2}x_2^{2}-4x_2^{4}\), DN → origine GAS.
(c) Energia totale (sistemi meccanici/elettrici): energia cinetica + potenziale. Interpretazione fisica immediata, ma non sempre è la scelta migliore.
(d) Quadratica da equazione di Lyapunov (quando la parte lineare è AS): risolvi
$$PA+A^{T}P=-Q\quad(Q\text{ simmetrica DP, es. }Q=I)$$per \(P\) simmetrica DP, poi \(V=\tfrac12 x^{T}Px\). (Fondamentale nel TIPO 10 per stimare il bacino dopo stabilizzazione lineare.)
(e) Metodo di Krasovskii (alternativa quando le altre non funzionano): prova \(V(x)=f^{T}(x)f(x)\) (DP se \(x_e\) è isolato). Se \(F(x)=J(x)+J^{T}(x)\) è DN in un intorno → AS; se DN in tutto \(\mathbb R^{n}\) e \(V\) radialmente illimitata → GAS. (Usa il criterio di Sylvester su \(-F(x)\) per verificare la definitezza.)
Verifica della definitezza (Sylvester): una matrice simmetrica \(M\) è DP se tutti i minori principali di testa sono \(>0\); DN se \(-M\) è DP (segni alternati dei minori). Per forme non quadratiche, ragiona sui segni termine per termine.
⑥ Teorema dell'insieme invariante (Krasovskii–LaSalle)
Serve quando la scelta \(V\) ha \(\dot V\) solo SDN (non DN): il criterio diretto dà solo stabilità semplice, ma spesso il sistema è in realtà AS. LaSalle permette di concludere AS lo stesso.
Definizione: un insieme \(G\subset\mathbb R^{n}\) è invariante se ogni traiettoria che parte in \(G\) resta in \(G\) per sempre. (Generalizza il concetto di equilibrio.)
- \(V\) è DP in un insieme \(D\) che contiene \(x_e\) all'interno;
- \(\dot V\) è SDN in \(D\);
- il massimo insieme invariante \(M\) contenuto in \(\mathcal P=\{x\in D:\dot V=0\}\) contiene solo \(x_e\).
Versione globale (GAS). Se \(V\) è DP e radialmente illimitata in tutto \(\mathbb R^{n}\), \(\dot V\) SDN ovunque, e il massimo insieme invariante in \(\{\dot V=0\}\) è solo \(x_e\), allora \(x_e\) è GAS.
Procedura pratica (come si applica):
- Trovato \(\dot V\) SDN, individua \(\mathcal P=\{x:\dot V=0\}\).
- Studia la dinamica residua del sistema ristretta a \(\mathcal P\): imponi che la traiettoria resti in \(\mathcal P\) e vedi cosa forza il sistema.
- Se l'unico modo per restare in \(\mathcal P\) è stare in \(x_e\) (ogni altro punto costringe la traiettoria a uscire da \(\mathcal P\)), allora \(M=\{x_e\}\) → AS/GAS.
Esempio dal materiale: \(\dot V\) si annulla su \(\mathcal P=\{x_2^{2}=x_3^{2}\}\); la dinamica residua (\(\dot x_1=x_2,\ \dot x_2=-x_1,\ \dot x_3=0\)) mostra che se \(x_1\ne 0\) allora \(\dot x_2\ne 0\), quindi la traiettoria esce da \(\mathcal P\) → l'unico insieme invariante è l'origine → GAS.
⑦ Stima del bacino (dominio) di attrazione
Quando \(x_e\) è AS ma non GAS, si cerca una stima del bacino:
- Prendi la funzione di Lyapunov \(V\) per cui \(\dot V<0\) in un insieme \(D\) attorno a \(x_e\).
- Determina l'insieme \(\{\dot V<0\}\).
- La stima è la curva di livello \(\Omega_\alpha=\{V(x)\le\alpha\}\) più ampia completamente contenuta in \(\{\dot V<0\}\) (deve essere una regione chiusa/limitata, quindi invariante).
- Scegli \(\alpha\) come il più grande valore per cui \(\Omega_\alpha\) resta dentro \(\{\dot V<0\}\) (tipicamente \(\alpha\) = minimo valore di \(V\) sul bordo di \(\{\dot V=0\}\)).
La regione interna a \(\Omega_\alpha\) è una stima per difetto (conservativa) del bacino reale.
⑧ Caso instabile
Se il criterio indiretto trova un autovalore a \(\mathrm{Re}>0\) → \(x_e\) instabile, e ti fermi (non serve Lyapunov). Se invece sei nel critico e sospetti instabilità, puoi cercare una direzione lungo cui \(V\) cresce, oppure mostrare che \(\dot V\) è indefinita/positiva lungo certe traiettorie. Esempio dal materiale: con \(k>0\), \(J\) ha autovalore \(\lambda=k>0\) → instabilità diretta senza Lyapunov.
Schema sintetico da seguire in esame
- Equilibri: risolvi \(f(x_e)=0\), attento alle soluzioni multiple.
- Criterio indiretto: \(J(x_e)\), autovalori.
- Hurwitz → AS locale (fine, salvo bacino).
- Un autovalore \(\mathrm{Re}>0\) → instabile (fine).
- Critico (\(\mathrm{Re}=0\)) → prosegui col diretto.
- Criterio diretto: scegli \(V\) (prima \(\tfrac12\|x-x_e\|^{2}\); poi pesata; poi energia/Lyapunov-eq/Krasovskii).
- \(\dot V\) DN → AS (globale se \(V\) rad. illimitata e \(\dot V\) DN ovunque).
- \(\dot V\) SDN → stabilità semplice → LaSalle.
- LaSalle: \(\mathcal P=\{\dot V=0\}\), dinamica residua, massimo insieme invariante \(M\). Se \(M=\{x_e\}\) → AS/GAS.
- Bacino (se AS non globale): curva di livello \(\Omega_\alpha\) più ampia dentro \(\{\dot V<0\}\).
- Unicità equilibrio: se GAS → unico equilibrio.
Vuoi che ti svolga per intero un esercizio TIPO 9? Ho diversi casi ottimi dalle soluzioni del corso: uno con caso critico + \(V\) pesata che dà GAS (autovalori \(\pm j\sqrt 2\)), uno con LaSalle (\(\dot V\) SDN, analisi dell'insieme invariante), oppure uno al variare del parametro \(k\) (equilibri e stabilità che cambiano con il segno di \(k\)). Quale preferisci?
TIPO 10 — Stabilizzazione di sistemi non lineari
Cosa chiede l'esercizio
Dato \(\dot x=f(x,u)\), devi progettare una legge di controllo \(u=u(x)\) (retroazione dallo stato) che renda un punto di equilibrio — spesso l'origine, oppure un \(x_d\) assegnato — asintoticamente stabile. Le due tecniche del corso sono la stabilizzazione via approssimazione lineare (locale) e la linearizzazione esatta (globale, ma solo cenni).
Varianti: "stabilizza localmente via approssimazione lineare", "stabilizza globalmente con legge non lineare", "stima il bacino di attrazione", "stabilizza il pendolo intorno a \(\theta_d\)" (cambio coordinate), "come si muove il sistema a regime?".
① Metodo 1 — Stabilizzazione via approssimazione lineare
Idea di base: calcola l'approssimazione lineare del sistema attorno all'equilibrio, stabilizzala con una retroazione lineare, e — per il criterio indiretto di Lyapunov — l'origine sarà localmente AS anche per il sistema non lineare.
Procedura
Assumi che \((x_e,u_e)\) sia un equilibrio (\(f(x_e,u_e)=0\); per l'origine non forzata \((0,0)\)).
- Linearizza calcolando le Jacobiane nell'equilibrio: $$A=\left.\frac{\partial f}{\partial x}\right|_{(x_e,u_e)},\qquad B=\left.\frac{\partial f}{\partial u}\right|_{(x_e,u_e)}$$ ottenendo \(\dot{\tilde x}=A\tilde x+B\tilde u\) (con \(\tilde x=x-x_e\), \(\tilde u=u-u_e\)).
- Verifica stabilizzabilità della coppia \((A,B)\) (matrice \(P=[B\ AB\ \dots]\); se non completamente R, gli autovalori NR devono avere \(\mathrm{Re}<0\)).
- Progetta \(K\) con tecniche lineari (Ackermann o identità polinomi) tale che \(A+BK\) sia AS (autovalori a \(\mathrm{Re}<0\)).
- Applica la retroazione al sistema non lineare: $$u=u_e+K(x-x_e)$$ Questo rende \(x_e\) localmente AS per il sistema non lineare.
Perché funziona: il sistema non lineare ad anello chiuso ha come approssimazione lineare \(\dot{\tilde x}=(A+BK)\tilde x\), che è AS per costruzione. Il criterio indiretto garantisce AS locale.
Natura locale / semiglobale (fondamentale)
La stabilità ottenuta è locale: il dominio di attrazione è limitato. Esempio istruttivo dal corso: \(\dot x=ax^{2}+u\) (\(a>0\)), approssimazione \(\dot x=u\), controllo \(u=-kx\) (\(k>0\)) → anello chiuso \(\dot x=ax^{2}-kx\):
- ha un secondo equilibrio in \(x=k/a\) e diverge per \(x>k/a\) → bacino \(\Omega=\{x:x
- semiglobalità: aumentando \(k\) (es. \(k>ar\)) si può includere in \(\Omega\) qualsiasi intorno \(\{|x|
- semiglobalità: aumentando \(k\) (es. \(k>ar\)) si può includere in \(\Omega\) qualsiasi intorno \(\{|x|
Caso non stabilizzabile
Se \((A,B)\) ha autovalori critici (es. \(\mathrm{Re}=0\) non raggiungibili), nessuna retroazione lineare stabilizza l'approssimazione lineare. Ma questo non esclude che una retroazione (anche lineare) stabilizzi il sistema non lineare. Esempio del corso: \(\dot x=u^{3}\) ha approssimazione lineare \(\dot x=0\) (non stabilizzabile), ma \(u=-x\) dà \(\dot x=-x^{3}\), con origine GAS.
② Stima del bacino di attrazione (dopo stabilizzazione lineare)
Una volta stabilizzato con \(K\), si stima il dominio di attrazione usando come funzione di Lyapunov del sistema non lineare una funzione di Lyapunov dell'approssimazione lineare.
Procedura
- Risolvi l'equazione di Lyapunov per il sistema lineare ad anello chiuso: $$P(A+BK)+(A+BK)^{T}P=-Q$$ con \(Q\) simmetrica DP arbitraria (tipicamente \(Q=I\)). Poiché \(A+BK\) è AS, esiste un'unica soluzione \(P\) simmetrica DP.
- Costruisci la candidata: $$V(x)=\tfrac{1}{2}(x-x_e)^{T}P\,(x-x_e)$$ DP e radialmente illimitata.
- Calcola \(\dot V\) lungo il sistema NON LINEARE ad anello chiuso (non quello lineare!): \(\dot V=\nabla V\cdot f_{cl}(x)\), dove \(f_{cl}\) è la dinamica non lineare con \(u=u_e+K(x-x_e)\). Per costruzione \(\dot V\) è DN vicino all'equilibrio (il termine lineare dà \(-\tfrac12(x-x_e)^{T}Q(x-x_e)\)), ma i termini non lineari possono renderla positiva lontano.
- Determina l'insieme \(\{\dot V<0\}\).
- Stima = la curva di livello di \(V\) più ampia (\(V(x)\le\alpha\)) completamente contenuta in \(\{\dot V<0\}\). La regione interna a \(\Omega_\alpha\) è la stima (per difetto) del bacino.
Esempio numerico dal corso (pendolo, \(a=c=1\), \(b=0\), \(\theta_d=\pi/2\), \(k_1=k_2=-1\)): \(A+BK=\begin{bmatrix}0&1\\-1&-1\end{bmatrix}\); l'equazione di Lyapunov con \(Q=I\) dà \(P=\begin{bmatrix}3/2&1/2\\1/2&1\end{bmatrix}\) DP, quindi \(V=\tfrac12 x^{T}Px\). Da qui si determina \(\{\dot V<0\}\) e si prende la curva di livello contenuta.
③ Metodo 2 — Linearizzazione esatta (cenni)
Motivazione: l'approssimazione lineare garantisce convergenza solo in un bacino limitato, a volte inaccettabile. La linearizzazione esatta cancella algebricamente le non linearità, ottenendo un sistema esattamente lineare e stabilizzabile globalmente.
Idea per sistemi nella forma opportuna
Per sistemi del tipo \(\dot x=Ax+B\beta(x)(u-\alpha(x))\), la legge di controllo:
$$u=\alpha(x)+\beta^{-1}(x)\,v$$cancella la non linearità e rende il sistema esattamente lineare:
$$\dot x=Ax+Bv$$poi si stabilizza globalmente con \(v=Kx\) (\(A+BK\) AS).
Esempio scalare (dal corso)
\(\dot x=ax^{2}+u\). Il controllo \(u=-ax^{2}-kx\) ha due componenti: \(-ax^{2}\) linearizza (cancella la non linearità), \(-kx\) stabilizza. Anello chiuso: \(\dot x=-kx\), esattamente lineare, origine GAS.
Due criticità importanti (spesso chieste)
(a) Robustezza: la cancellazione richiede la conoscenza esatta dei parametri (\(\alpha,\beta\)). Il controllo \(u=-ax^{2}-kx\) contiene \(a\): se \(a\) è noto male, la cancellazione è imperfetta. L'approssimazione lineare \(u=-kx\) non dipende da \(a\) → più robusta. Quindi la linearizzazione esatta ha un potenziale problema di robustezza.
(b) Cancellazione di termini benefici: la linearizzazione esatta può cancellare non linearità che aiutavano la stabilizzazione, con spreco di controllo. Esempio: \(\dot x=ax-bx^{3}+u\) (\(a,b>0\)). Il controllo "esatto" \(u=-kx+bx^{3}\) cancella \(-bx^{3}\), che era una forza di richiamo verso l'origine. Il semplice \(u=-kx\) dà \(\dot x=-(k-a)x-bx^{3}\), comunque GAS e con convergenza più rapida, e con sforzo di controllo molto minore lontano dall'origine. → Spesso conviene progettare con il criterio diretto di Lyapunov (interpretazione fisica) senza cancellare.
④ Caso pendolo — cambio di coordinate e compensazione gravità
Schema ricorrente: stabilizzare il pendolo attorno a \(\theta_d\) (es. \(\pi/2\) o \(\pi\)). Modello: \(\ddot\theta=-a\sin\theta-b\dot\theta+cu\).
Passo 1 — Sposta l'equilibrio nell'origine
Cambio di coordinate \(z_1=\theta-\theta_d\), \(z_2=\dot\theta\), così l'equilibrio desiderato \((\theta_d,0)\) diventa l'origine in \(z\):
$$\dot z_1=z_2,\qquad \dot z_2=-a\sin(z_1+\theta_d)-bz_2+cu$$Passo 2 (via approssimazione lineare)
Linearizza in \(z=0\): ottieni \(A,B\), verifica R, progetta \(K\). La retroazione risulta \(u=u_{fb}+u_{ff}\):
$$u=\underbrace{k_1(\theta-\theta_d)+k_2\dot\theta}_{u_{fb}}+\underbrace{\frac{a}{c}\sin\theta_d}_{u_{ff}}$$con \(k_1<\frac{a}{c}\cos\theta_d\) e \(k_2<\frac{b}{c}\) per avere \(A+BK\) Hurwitz.
Interpretazioni fisiche (spesso chieste):
- \(u_{fb}\) simula una molla angolare (\(k_1\)) che richiama il pendolo verso \(\theta_d\) e uno smorzatore viscoso (\(k_2\)) che dissipa energia.
- \(u_{ff}=\frac{a}{c}\sin\theta_d\) è il termine di compensazione della gravità: la coppia costante necessaria a bilanciare il peso nella posizione \(\theta_d\).
Passo 2' (via linearizzazione esatta)
La seconda equazione è l'unica con non linearità. Scegli:
$$u=\frac{a}{c}\sin(z_1+\theta_d)+\frac{v}{c}$$che cancella \(-a\sin(\cdot)\) e rende la dinamica esattamente lineare:
$$\dot z_1=z_2,\qquad \dot z_2=-bz_2+v$$completamente raggiungibile → stabilizzabile globalmente con \(v=k_1z_1+k_2z_2\). Il controllo finale:
$$u=\frac{a}{c}\sin\theta+\frac{1}{c}\left(k_1(\theta-\theta_d)+k_2\dot\theta\right)$$dove tutti i termini sono in retroazione: all'equilibrio il primo termine diventa automaticamente la coppia di compensazione della gravità.
⑤ Comportamento a regime
Domanda tipica: "come si muove il sistema a regime?". A regime (\(x\to x_e\), \(\dot x=0\)), la legge di controllo assume il valore \(u_{eq}=u(x_e)\): la componente di feedback si annulla (perché \(x-x_e\to 0\)) e resta solo il termine di compensazione (es. la coppia anti-gravità \(\frac{a}{c}\sin\theta_d\) per il pendolo).
Per sistemi con dinamica residua non controllata (es. cart-pendulum: il carrello), analizza come evolve la parte non stabilizzata direttamente: a regime il pendolo è fermo in \(\theta_d\), ma il carrello può muoversi di moto uniforme o restare fermo a seconda del valore di \(u_{eq}\) e della struttura del sistema. Vai a vedere l'equazione del sottosistema non pilotato e valuta il suo comportamento con \(u=u_{eq}\) costante.
Schema sintetico da seguire in esame
- Equilibrio: identifica \((x_e,u_e)\); se \(\ne\) origine, cambia coordinate (\(z=x-x_e\)) per portarlo nell'origine.
- Scegli il metodo:
- Approssimazione lineare (locale): \(A=\partial f/\partial x\), \(B=\partial f/\partial u\) in \((x_e,u_e)\); verifica stabilizzabilità; progetta \(K\); \(u=u_e+K(x-x_e)\).
- Linearizzazione esatta (globale): metti in forma \(\dot x=Ax+B\beta(x)(u-\alpha(x))\); \(u=\alpha(x)+\beta^{-1}(x)v\); \(v=Kx\). Discuti robustezza e possibili cancellazioni inutili.
- Bacino (se richiesto, metodo lineare): risolvi \(P(A+BK)+(A+BK)^{T}P=-Q\) (\(Q=I\)); \(V=\tfrac12(x-x_e)^{T}P(x-x_e)\); calcola \(\dot V\) sul non lineare ad anello chiuso; \(\Omega_\alpha\) = curva di livello più ampia in \(\{\dot V<0\}\).
- Interpretazione fisica (pendolo): molla+smorzatore (\(u_{fb}\)), compensazione gravità (\(u_{ff}\)).
- Regime: \(u\to u_{eq}=u(x_e)\); analizza la dinamica residua.
- Attenzione ai casi speciali: \((A,B)\) non stabilizzabile → può ancora esistere un controllo non lineare (es. \(\dot x=u^{3}\to u=-x\)).
Con questo abbiamo coperto tutti i tipi da 1 a 10 che mi hai chiesto. Se vuoi, posso ora svolgere per intero un esercizio TIPO 10 dal materiale — ho il pendolo attorno a \(\theta_d=\pi/2\) con stima del bacino via equazione di Lyapunov (quello con \(P=\begin{bmatrix}3/2&1/2\\1/2&1\end{bmatrix}\)), oppure un caso scalare che confronta approssimazione lineare vs linearizzazione esatta. Restano scoperti il TIPO 4 (Vero/Falso) e il TIPO 11 (modellistica): vuoi che proceda con quelli o preferisci un esercizio svolto?
TIPO 11 — Modellistica fisica
Cosa chiede l'esercizio
Dato un sistema fisico (pendolo, ascensore, carrello con molla, automobile, motore DC, asservimento di posizione), devi ricavare il modello dinamico (equazione differenziale + rappresentazione in spazio di stato \(\dot x=f(x,u)\)) e/o la funzione di trasferimento \(P(s)=y(s)/u(s)\). È spesso il primo problema anteposto a un progetto di controllo (TIPO 2/3/5/7/10): il modello che ricavi qui è l'input per la sintesi.
① Leggi fisiche fondamentali
Meccanica traslazionale (2ª legge di Newton):
$$\sum F=m\ddot x$$Le forze tipiche: forza motrice/trazione \(f\) o \(u\), attrito viscoso \(-b\dot x\), molla elastica \(-kx\) (lineare) o \(-kx^{3}\) (non lineare), gravità \(-mg\).
Meccanica rotazionale (equazione della torsione):
$$\sum\tau=I\ddot\theta$$con \(I\) momento d'inerzia. Coppie tipiche: coppia motrice \(\tau\) o \(u\), attrito viscoso rotazionale \(-d\dot\theta\), coppia di gravità sul pendolo \(-mg\ell\sin\theta\).
Elettrica (per motori DC): legge di Kirchhoff sulla maglia d'armatura (\(v=Ri+L\frac{di}{dt}+e\), con f.c.e.m. \(e=k_e\dot\theta\)), e coppia \(\tau=k_t i\).
② Procedura standard
- Diagramma di corpo libero: identifica tutte le forze/coppie agenti e i loro segni.
- Scrivi l'equazione di bilancio (Newton o torsione): \(\sum F=m\ddot x\) o \(\sum\tau=I\ddot\theta\).
- Linearizza attorno all'equilibrio di interesse se ci sono non linearità (vedi ③).
- Scegli le variabili di stato: tipicamente posizione e velocità, \(x_1=\) posizione, \(x_2=\dot x_1\).
- Scrivi \(\dot x=f(x,u)\) riducendo l'equazione del 2° ordine a due del 1° ordine.
- Calcola \(P(s)\): trasforma secondo Laplace (condizioni iniziali nulle) e forma \(P(s)=y(s)/u(s)\).
③ Linearizzazione attorno a un equilibrio
Quando compaiono termini non lineari (tipicamente \(\sin\theta\) nel pendolo), si linearizza attorno all'equilibrio \(\theta_0\):
$$\sin\theta\approx\sin\theta_0+\cos\theta_0\,(\theta-\theta_0)$$Casi particolari:
- piccole oscillazioni attorno a \(\theta_0=0\) (verticale verso il basso o pendolo inverso in alto): \(\sin\theta\approx\theta\), \(\cos\theta\approx 1\).
- attorno a \(\theta_0=\pi\) (pendolo in alto/basso a seconda della convenzione): \(\sin\theta\approx-(\theta-\pi)\).
- attorno a \(\theta_d\) generico: usa lo sviluppo completo; il termine costante \(\sin\theta_0\) diventa la coppia di compensazione gravità all'equilibrio (collegamento diretto al TIPO 10).
④ Casi notevoli ricorrenti (con derivazione)
Pendolo attuato (verso il basso, stabile)
Equazione del moto con attrito: \(m\ell^{2}\ddot\theta+d\dot\theta+mg\ell\sin\theta=\tau\). Senza attrito e per piccole oscillazioni:
$$\ddot\theta+\omega^{2}\theta=\tau,\qquad \omega^{2}=\frac{g}{\ell}$$Stato \(x=(\theta,\dot\theta)\): \(\dot x_1=x_2\), \(\dot x_2=-\omega^{2}x_1+\tau\). FdT:
$$P(s)=\frac{1}{s^{2}+\omega^{2}}$$(due poli immaginari puri \(\pm j\omega\) → oscillatore non smorzato). Per oscillazioni grandi resta il \(\sin\theta\) → sistema non lineare (TIPO 9/10).
Pendolo inverso (verso l'alto, instabile)
La coppia di gravità allontana dall'equilibrio verticale. Per piccoli scostamenti (\(\sin\vartheta\approx\vartheta\)), l'equazione del corpo è \(M\ell^{2}\ddot\vartheta=Mg\ell\,\vartheta+u\), da cui:
$$\ddot\vartheta=\frac{g}{\ell}\,\vartheta+\frac{1}{M\ell^{2}}\,u$$Stato \(x=(\vartheta,\dot\vartheta)\): \(\dot x_1=x_2\), \(\dot x_2=\frac{g}{\ell}x_1+\frac{1}{M\ell^{2}}u\), \(y=x_1\). FdT:
$$P(s)=\frac{1/(M\ell^{2})}{s^{2}-\dfrac{g}{\ell}}$$Due poli reali \(\pm\sqrt{g/\ell}\): uno a parte reale positiva → sistema instabile ad anello aperto (deve essere stabilizzato).
Cart-pendulum (pendolo inverso su carrello)
Per piccoli \(\varphi\), l'evoluzione del pendolo è descritta (forma del corso) da:
$$\ddot\varphi=a\varphi-bf$$con \(a,b>0\) dipendenti da masse e lunghezza, \(f\) forza motrice sul carrello. Stato \(x=(\varphi,\dot\varphi)\): \(\dot x_1=x_2\), \(\dot x_2=ax_1-bf\). FdT tra \(f\) e \(\varphi\):
$$P(s)=\frac{-b}{s^{2}-a}$$Sistema a fase non minima / instabile (polo a \(+\sqrt a\), guadagno negativo). Domanda tipica associata: "come si muove il carrello a regime?" → analizzi la dinamica residua del carrello con il controllo all'equilibrio (a regime il pendolo è verticale, il carrello può traslare di moto uniforme).
Ascensore / massa in traslazione con gravità
\(m\ddot y+b\dot y=u-mg\) (forza motrice \(u\), attrito viscoso, peso). Trascurando/compensando il peso costante, la parte dinamica dà, con \(y\) uscita:
$$P(s)=\frac{1}{s(ms+b)}$$Un polo nell'origine (integratore, la posizione è integrale della velocità) e uno in \(-b/m\). Tipo 1 naturale.
Cruise control (regolazione di velocità)
\(m\dot v=f_t-bv-f_r\) (forza di trazione, attrito, resistenza). Con uscita \(v\) e \(f_t=u\):
$$P(s)=\frac{v(s)}{u(s)}=\frac{1}{ms+b}$$Un solo polo (il sistema è del 1° ordine nella velocità; per controllare la posizione si aggiunge un integratore).
Asservimento di posizione — motore DC
Modello semplificato (trascurando l'induttanza \(L\)): la dinamica meccanica \(I\ddot\theta+d\dot\theta=k_t i\) combinata con la parte elettrica dà, tra tensione \(u\) e posizione \(\theta\):
$$P(s)=\frac{\theta(s)}{u(s)}=\frac{k}{s(Js+b)}$$Struttura tipo 1 (integratore + polo). Con retroazione di velocità (tachimetro): si aggiunge un anello interno che retroaziona \(\dot\theta\), modificando il polo meccanico e aumentando lo smorzamento; senza, si controlla solo dalla posizione.
Carrello con molla (senza attrito)
\(M\ddot x+Kx=f\) (molla \(-Kx\), forza \(f\), no attrito). FdT tra \(f\) e \(x\):
$$P(s)=\frac{1/M}{s^{2}+K/M}$$Oscillatore non smorzato (poli \(\pm j\sqrt{K/M}\)). Il sensore può misurare \(x\) oppure \(\dot x\) (non entrambe) → influenza l'osservabilità e la scelta di \(C\).
⑤ Dallo stato alla FdT (e viceversa)
Da \(\dot x=Ax+Bu\), \(y=Cx\):
$$P(s)=C\,(sI-A)^{-1}B$$Viceversa, data \(P(s)\), costruisci una realizzazione in forma canonica di controllo (o di osservazione) — utile quando il progetto richiede lo spazio di stato (TIPO 5/6/7) partendo da una FdT.
⑥ Collegamento al progetto (perché lo fai)
Il modello ricavato determina la natura del problema di controllo a valle:
- poli immaginari puri (pendolo attuato, molla) → serve reiezione/smorzamento;
- polo a \(\mathrm{Re}>0\) (pendolo inverso, cart-pendulum) → sistema instabile, va stabilizzato (spesso a fase non minima → TIPO 3 procedura fase non minima);
- integratore naturale (ascensore, motore) → tipo 1 già presente, incide sul calcolo dell'errore a regime (TIPO 1/2).
Quando l'equilibrio da stabilizzare non è l'origine (es. pendolo attorno a \(\theta_d\)), il cambio di coordinate \(z_1=\theta-\theta_d\) va fatto già in fase di modellistica, così il progetto lavora sull'origine (collegamento TIPO 10).
Schema sintetico da seguire in esame
- Corpo libero: elenca forze/coppie e segni.
- Bilancio: \(\sum F=m\ddot x\) o \(\sum\tau=I\ddot\theta\).
- Linearizza se serve (\(\sin\theta\approx\theta\) attorno all'equilibrio giusto; attento al segno gravità → stabile vs inverso).
- Stato: \(x_1=\) posizione, \(x_2=\dot x_1\); scrivi \(\dot x=f(x,u)\), \(y=Cx\).
- FdT: Laplace a CI nulle → \(P(s)=y/u\) (oppure \(C(sI-A)^{-1}B\)).
- Interpreta: poli, instabilità, integratori → prepara il terreno per il progetto.
- Se l'equilibrio \(\ne\) origine → cambio coordinate \(z=x-x_e\).
Con questo abbiamo completato tutti i tipi da 1 a 11 (resta solo il TIPO 4, i Vero/Falso teorici, e i temi teorici della Parte III, se li vuoi). Se preferisci, posso ora svolgere per intero un esercizio TIPO 11 collegato a un progetto: ad esempio il pendolo inverso dell'Esercizio 1.8 (ricavo \(P(s)\) e poi lo stabilizzo con \(G(s)=K_G\frac{s+z}{s+p}\)), oppure il cart-pendulum della ProvaFinale 2024/25 (modello + osservatore da \(\dot\varphi\) + stabilizzazione, con la domanda sul moto del carrello a regime). Quale preferisci?