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 gainscheduling 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 Verifica osservabilità: Conclusione: Posso scegliere un controllore per il sistema linearizzato parametrizzato da cui poi ottenere la legge di controllo gain-scheduling Caso 1: L’osservabilità non dipende da 1.1: progetto 1.2: progetto Hurwitz 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: Il sistema con il controllore 1 sembra poter ottenere un tracking pratico del segnale di riferimento 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 wnC=10 wnO=50 deltaC=0.8 deltaO=0.7 Il valore a regime differisce da quello desiderato 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 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) Termini aggiuntivi Idea: implementare un’azione in avanti per assegnare gli zeri del sistema al variare di (anche soluzioni euristiche essendo il sistema complicato!) Caso 2 Gain-scheduling controller with FF Attraverso u influenzo entrambi i termini ATTENZIONE: a causa della presenza del termine di feed-forward altero l’equilibrio del sistema Caso 2 Analiticamente Imposizione degli zeri del sistema lineare di progetto (vedi teoria): Soluzione di un’equazione di progetto 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 Non sempre l’equazione è risolubile! 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 Progetto una retroazione dello stato Sistema completamente controllabile 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à NOTA: il sistema è in equilibrio Se x1 coincide con yR rank(ctrb(Ae,Be))=4 Sistema completamente controllabile 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 Requisito 4 Verificare in Matlab/Simulink le proprietà ottenute svolgendo considerazioni circa la robustezza delle differenti leggi di controllo Stimare la regione di attrazione del controllore variando lo stato iniziale del sistema Controlli LS Esercitazione 5 Linearizzazione del modello dinamico di una aereo a decollo verticale (VTOL) Modello VTOL VTOL (Vertical Take-Off and Landing) x 1 F TM M : massa del velivolo J : momento di inerzia 1 rispetto al centro di massa l : lunghezza alare l Mg y F Linearizzazione del modello Riscrivo il sistema non lineare: Equilibrio Linearizzazione del modello Cambio di variabili: Modello linearizzato: Linearizzazione modello Sistema lineare: