560 likes | 674 Views
Controlli LS. Esercitazione 4 Prima Parte. Esempio 11.6 (Khalil). Si consideri il sistema del secondo ordine dove y è l’uscita misurata del sistema Si vuole che y=y R dove y R è un opportuno segnale di riferimento Problema di tracking mediante output feedback.
E N D
Controlli LS Esercitazione 4 Prima Parte
Esempio 11.6 (Khalil) • Si consideri il sistema del secondo ordine dove y è l’uscita misurata del sistema • Si vuole che y=yR dove yR è un opportuno segnale di riferimento • Problema di tracking mediante output feedback
Controllore gain-scheduling • IDEA: utilizzare yR come scheduling variable e implementare una legge di controllo gain-scheduling per il sistema non lineare • Utilizzo il procedimento visto a lezione • HP1 (da teoria): con costante • 1: cerco le soluzioni del sistema • dove:
Controllore gain-scheduling • R1: • 2: Linearizzazione
Controllore gain-scheduling • 2: Linearizzazione • Infatti:
Controllore gain-scheduling • R2: Sistema linearizzato • Verifica controllabilià: La controllabilità non dipende da
Controllore gain-scheduling L’osservabilità non dipende da • Verifica osservabilità: • Conclusione: • Posso scegliere un controllore per il sistema linearizzato parametrizzato da cui poi ottenere la legge di controllo gain-scheduling • Caso 1: • 1.1: progetto Hurwitz • 1.2: progetto Hurwitz
Caso 1 • 1: progetto analitico di • impongo autovalori: Equazione caratteristica:
Caso 1 • impongo autovalori: • Equazione caratteristica desiderata: • Da cui: • Risultato: posso assegnare una coppia desiderata di poli complessi coniugati per il controllore
Caso 1 • 1: progetto analitico di • impongo autovalori: Equazione caratteristica:
Caso 1 • impongo autovalori: • Equazione caratteristica desiderata: • Da cui: • Risultato: posso assegnare una coppia desiderata di poli complessi coniugati per l’osservatore
Caso 1 • Legge di controllo: • Legge di controllo complessiva: • Controllore gain-scheduling: Osservatore
Caso 1 • Per il controllore sintetizzato vale la proposizione generale del gain scheduling • Esercizio: valutare le proprietà di robustezza della legge di controllo ottenuta • Perturbo i parametri del sistema:
Caso 1: prove Simulink • Assegno la dinamica del sistema: • wnC=1 wnO=6 deltaC=0.8 deltaO=0.7 • Osservo uscita del sistema: (SIMULINK) • wnC=1 wnO=6 deltaC=0.8 deltaO=0.7 • Il valore a regime differisce da quello desiderato • wnC=10 wnO=50 deltaC=0.8 deltaO=0.7 • Il valore a regime è più vicino a quello desiderato • wnC=100 wnO=400 deltaC=0.8 deltaO=0.7 • Il valore a regime è ancora più vicino a quello desiderato ma il transitorio peggiora Il sistema con il controllore 1 sembra poter ottenere un tracking pratico del segnale di riferimento
Caso 2 • Implementazione di una legge di controllo di tipo integrale • Sistema lineare (yR = cost.) • Legge di controllo:
Caso 2 • Sistema esteso: • Verifica controllabilià: Controllabile per ogni >0
Caso 2 • Guadagni suggeriti • Autovalori: • Controllore: • Osservatore:
Caso 2 (Simulazioni) • Verifica comportamento ottenuto al gradino e alla rampa (vedi SIMULINK) • Prova di robustezza: • Sistema perturbato: • Risultato: la legge di controllo garantisce inseguimento asintotico anche in presenza di incertezze • Tracking asintotico di segnali costanti
Caso 2 (Simulazioni) • Prova SIMULINK: • Gradino di 0.6 e successivo gradino di 0.2 (sovrapposizione) • OSSERVAZIONE: • la risposta del secondo gradino è oscillatoria! • Patologia dovuta agli zeri del sistema • Possibile instabilità del sistema a fronte di perturbazioni • Confrontare successione di gradini: • 0.6, 0.2 • 1, 0.2
Caso 2 • Studio del sistema lineare (di sintesi) closed loop • riscrivo: (r=yR- , costante)
Caso 2 • Sistema esteso:
Caso 2 • Gain-scheduling controller • Non-linear system: • Da teoria: • La linearizzazione attorno all’equilibrio differisce nella sola matrice B
Caso 2 • Linearizzazione sistema non lineare (con ingresso forzante u=r) • Idea: implementare un’azione in avanti per assegnare gli zeri del sistema al variare di (anche soluzioni euristiche essendo il sistema complicato!) Termini aggiuntivi
Caso 2 • Gain-scheduling controller with FF • ATTENZIONE: a causa della presenza del termine di feed-forward altero l’equilibrio del sistema Attraverso u influenzo entrambi i termini
Caso 2 • Analiticamente • Imposizione degli zeri del sistema lineare di progetto (vedi teoria): • Soluzione di un’equazione di progetto • Non sempre l’equazione è risolubile! • Imposizione analitica degli zeri • Soluzione di una nuova equazione di progetto che tenga conto della nuova scelta di zeri desiderata • Scelta euristica dell’azione in feed-forward • Mediante considerazioni analitiche e prove sperimentali • Utile solo nei casi in cui analiticamente è difficile risolvere il problema • Esistono alti schemi per la soluzione del problema in casi “complicati” (vedere Khalil)
Caso 2 (prove simulative) • Verificare come imponendo un termine aggiuntivo nella legge di controllo funzione di yR il transitorio del sistema si modifica. • Cercare (verificando empiricamente) un’azione di feed-forward che migliori il transitorio • Esempio: • uff = -2yR • uff = +7yR-12yR2
Controlli LS Esercitazione 4 Seconda Parte
Esercizio 11.5 (Khalil) • Obiettivi: • Progetto di un regolatore per un levitatore magnetico (sistema non lineare) mediante linearizzazione • Verifica delle proprietà di robustezza del sistema ottenuto Tipologie di controllo: • Azione integrale • LQR • ...
Modello del sistema • 1 DOF Magnetic Bearing: Controllore v y yR
Modello del sistema • Equazione del moto della palla: • m = massa, y distanza dall’induttore (y=0 implica pallina prossima all’induttore), k coefficiente di attrito viscoso, F(y ,i) forza elettromagnetica generata dal magnete con corrente sull’induttore pari a i.
Modello del sistema • Induttanza del magnete: • L1, L0 e a costanti positive • Nota: l’induttanza cresce quando la pallina è vicina all’induttore • Energia accumulata nell’elettromagnete:
Modello del sistema • Forza sulla pallina: • Legge di Kirchhoff • R è la resistenza del circuito e è il flusso del campo magnetico
Modello del sistema • Variabili di stato: • Ingresso del sistema: • Modello non lineare:
Requisito 1 • Sia yR>0 la posizione desiderata per la pallina, trovare i valori Iss e Vss della corrente e del voltaggio necessari per mantenere la posizione y=yR a regime. • Steady-state y=yR
Requisito 1 • 1.1: • 1.2:
Requisito 2 • Analizzare la stabilità del punto di equilibrio ottenuto ponendo u = vss
Requisito 2 • Sistema lineare ottenuto: • dove:
Requisito 2 • Utilizzo Teorema Indiretto di Lyapunov • Studio degli autovalori della matrice A • L’espressione di A è complicata..... • Introduzione al Symbolic Toolbox di Matlab: • Scopo: calcolo di espressioni letterali • Defizione di una variabile letterale: • Comando syms • Es: syms x; solve(x^2+2*x+1)
Requisito 2 • Non tutte le funzioni Matlab sono compatibili con variabili simboliche! • Esempio di funzioni utili compatibili: • solve, eig, det • Idea1: • Applico il comando eig sulla matrice A definita mediante variabili di tipo simbolico • L’espressione ottenuta è comunque molto complicata!
Requisito 2 • Idea2: • Definisco un sistema benchmark: • Dalla condizione necessaria del criterio di Routh deduco che l’equazione non ha soluzioni tutte con parte reale negativa. Devo verificare che non siano possibili soluzioni con autovalori sull’asse immaginario.
Requisito 3.1 • Progetto controllore lineare per il sistema:
Requisito 2 • Tabella di Routh: Almeno in questa posizione cambia segno!
Requisito 2 • Dal criterio di Routh deduco che un autovalore della matrice A ha parte reale positiva: • Dal teorema indiretto di Lyapunov deduco che l’equilibrio è instabile
Requisito 3 • Progettare un controllore per linearizzazione nel punto di equilibrio che corrisponde al valore di yR desiderato. • Utilizzare state-feedback • Dati del problema: • m=0.01 kg, k=0.001 N/m/s, a=0.005 m, L0 = 0.01 H, L1= 0.02 H, R =10 Ohm yR = 0.05 m • Posso utilizzare differenti modalità di sintesi del controllore! • Controllo lineare per assegnamento degli autovalori • Controllo integrale • LQR
Requisito 3.1 • Verifica controllabilità • rank(ctrb(A,B))=3 • Sistema completamente controllabile • Progetto una retroazione dello stato • con K progettato secondo un qualche criterio (pole placement, LQR, etc) • Controllore ottenuto:
Requisito 3.1 • Verifica delle proprietà di robustezza della legge di controllo ottenuta • Si supponga che la massa m sia differente da quella nominale • Verificare in Matlab cosa accade alla variabile di interesse y(t) • La legge di controllo non è robusta! A fronte di incertezze il valore a regime differisce da quello desiderato (osservare non robustezza intrinseca della data a regime dal controllo) • IDEA: estensione del sistema con un integratore
Requisito 3.2 • Confronto schemi di controllo: (nominal case) • 1: • 2: • 3: • 4: NOTA: siccome è possibile imporre le condizioni iniziali dell’integratore è possibile rendere equivalenti i 3 schemi di controllo! (VEDI SIMULiNK)
Requisito 3.2 • Sistema esteso: • Verifica controllabilità • rank(ctrb(Ae,Be))=4 • Sistema completamente controllabile NOTA: il sistema è in equilibrio Se x1 coincide con yR
Requisito 3.2 • Progetto una retroazione dello stato • Legge di controllo completa: • Nota: la legge di controllo per migliorare le prestazioni include sia il termine di feedforward dovuto all’azione integrale che quello nominale
Requisito 3.2 • K=[K1 K2] progettato secondo un qualche criterio (pole placement, LQR, etc.) • In particolare consideriamo un regolatore ottimo stazionario con Q=eye(4), R=1 • Imponiamo inoltre un margine di stabilità di 0.1 per garantire autovalori a parte reale sufficientemente negativa