Sei sulla pagina 1di 65

Nel primoc orso si studiava il sistema, si vedeva se era stabile, se non lo era lo si stabilizzava (uso del luogo delle

radici) quindi si metteva in cascata una secondo controllore per verificare le specifiche

Il luogo delle radici per non uno strumento sistematico di progetto! Se ad esempio avessi 30 poli?? Come
faccio?? Posso fare qualcosa che io possa codificare con una procedura di progetto?
Continuos--> tranfs function

Sources --> gradino

Posso farlo partire, ma devo mettere un visualizzatore per vedere il risultato!

Commonusle block--> scope

Aggiungendo lo scope posso vedere il risultato

Si pu dato lo stato di un sistema (A B C D) oppure la funzione di trasferimento, identico, l'importante


dare un input

Sistemi non lineari Pagina 1


Oltre alla sistematicit abbiamo un secondoproblemna
Si faceva riferimento ad un problema linearizzato intorno alla configurazione di equilibrio, chiaramente valeva
tutto se gli spostamenti sono piccoli! Il vero sistema per non lineare e se la perturbazione inziale pi grande
non detto che il modello lineare sia sufficientemente buono quindi che il controllore applicato stabilizzi il vero
sistema

Una volta fatto il controllo sul sistema linearizzato non detto che valga anche per il sistema non lineare.

Quanto la regione attorno all'equilibrio nominale che pu essere ricondondotta alle condizioni nominali
rispetto all'applicazione del controllore? In simulazione si pu risolvere questo problema.

Se non ho una funzione di trasferimento o uno spazio di stato (quindi tutto lineare) cosa ci metto nel mio
simulatore?

Supponiamo di avere un blocco dove possano entrare u ed x e come uscita mi esca f(x) ed u

f(x,u) mi da x punto quindi posso integrarlo e ributtarlo in f(x,u)!

l'integratore mi d la x dalla x punto quindi deve avere delle condizioni iniziali! li che le metter, quindi in
base a dove parto

Questa f(x,u) una funzione matlab (sistema non lineare) che sar una .m in cui accetto un ingresso (chiamo
in) e preparo un uscita (out). In saranno x ed u mentre out saranno x

Cos' x1 x2 e cos via quindi mi scrivo le funzioni non lineari in funzione delle variabili di stato.

Ha inziato a cambiare le condizioni iniziali, in pratica all'aumentare del teta iniziale

Una volta arrivati a perturbazioni troppo alte il controllore non pi in grado di stabilizzare il tutto, non ci
riesce perch esco dall'approssimazione lineare di troppo! Quindi tutto va nel casino.
Quando troppo? Come quantifico la regione valida?

Problema di osservabilit: ci sono cose che l'uscita pu mettere in luce e altre che non pu mettere in luce, ad
esempio posso stabilizzare un'asta rispetto al suo angolo, ma se questa montata su un carrello chi me lo dice
che il carrello fermo? Posso avere una velcoit dello stesso diversa da 0 ma l'asta perfettamente in equilibrio,

Sistemi non lineari Pagina 2


Sistemi non lineari Pagina 3
Stabilit

In base alle condizioni iniziali cambier il mio


moto
Per misurare queste differenze inserisco un concetto di norma Cos da valutare questa differenza
Sono due stati a caso, mentre x1 e x2 sono le componenti per definire lo stato
Da ora in poi assumo che u sia assegnato quindi non lo star nemmeno a mettere nelle variabili, in pi assumer
funzioni tempo invarianti, quindi non dipendenti direttamente dal tempo

In generale i due stati all'aumentare del tempo devono tendere ad avvicinarsi, quindi la norma della loro
differenza deve tendere a 0

Stabilit di Lyapunov: "movimenti che non si allontanano troppo da uno dato" dico che il movimento stabile se
tutti i movimenti che partono da sufficientemente vicino non si allontanano troppo dal movimento dato

Dico di essere stabile se (partendo da vicino a prima) la traiettoria non si stacca di tanto
dalla traiettoria iniziale

Devo dare delle condizioni sul punto di partenza, in pratico dico che se parto da abbastanza vicino allora
sono sicuro che il percorso non si distaccher mai di tanto dal percorso di partenza

Questa la stabilit di un moto non di un sistema

Partendo da un altro stato possibile che questo moto non abbia questa propriet? Certo! Io ho dato questa
definizione per quel moto (quindi con quelle condizioni iniziali), cambiando condizioni iniziali cambio il mio moto!
Pensa al pendolo non sempre stabile!!! Nei sistemi lineari se 1 stabile allora lo son tutti, nei sistemi non lineari
(appunto il pendolo) questo non vero!!!

Se due traiettorie rimangono molto vicine ma non vanno mai a coincidere rientro nel caso appena visto quindi
parler di stabilit
Attrattivit: supponiamo di partire sempre sufficientemente vicino, se le traiettorie tenderanno a sovrapporsi
alla traiettoria considerata, allora parler di attrattivit

Non detto che attragga qualsiasi moto, ma quelli sufficientemente vicini

Attrattivit e stabilit non detto che siano entrambi veri insieme! Se lo sono entrambi parler di stabilit
asintotica (quindi stabile e attrattivo), si parla comunque di MOTO stabile o instabile ecc NON DI SISTEMA

Instabilit: il moto instabile semplicemente se non stabile

Moto --> equilibrio

Allora stabile se
Bolla di raggio delta (come dire la norma)

Parto da una bolla verde e non esco mai dalla bolla rossa!!! Posso richiedere attrattivit chiedendo che converga
a x'

Stabilit Pagina 4
Generalmente una macchiana ha un evoluzione nello spazio di stato periodica.
Il sistema evolve lungo questo percorso

Voglio uno strumento che mi permetta di descrivere un ciclo di regime di


una macchina (esempio robot che cammina)

Orbita:

Tolgo il parametro t e mi rimane l'insieme percorso, orbita o


traiettoria

Devo definire una distanza dall'orbita, quindi dato un punto qualsiasi, chiamo
Distanza di un punto da un insieme

Orbita stabile: applicando la stessa definizione e utilizzando la distanza

Se parto da una distanza delta allora tutta la soluzione rimane ad una distanza massima da quella
presa a riferimento pari a epsilon

diverso stabilizzare il movimento dallo stabilizzare l'orbita, questo perch non vado a seguire un punto, ma
cerco di seguire il percorso di quel punto!

Da ora in poi studier la stabilit degli equilibri


Perch la stabilit delle orbite o dei moti pu
Essere ricondotto ad equilibri! (vedi dispense)

instabile perch se lo inizializzo con uno stato qualsiasi epsilon scelta non esiste mai un delta

Parto da una certa velocit, ma allora mi allontano all'infinito! Non stabile

Se aggiungo l'attrito invece

Adesso sono stabile! Posso rimanere all'interno della bolla epsilon!!! Si dice marginalmente
stabile

Se considero solo una molla sar ancora marginalmente stabile

Se metto lo smorzatore divento asintoticamente stabile

Stabilit Pagina 5
Lineare Tempo Invariante Tempo Continuo Se tutti gli autovalori di A sono a parte
reale negativa allora tutte le condizioni
Lineare Tempo Invariante Tempo Discreto iniziali convergono all'origine, quindi se
tutti gli autovalore

Avr diversi modi propri che possono essere esponenziali oppure

Con questi due riesco ad avere attrattivit e stabilit asintotica (basta nel secondo caso
partire da cond. Iniziali sufficientemente piccole da non far uscire il picco dalla bolla
epsilon)

Ma se tra gli autovalori ne ho almeno 1 a parte reale positiva allora lo stato diverse, questo vuol dire instabilit

N.B. STIAMO PARLANDO DI EQUILIBRIO NELL'ORIGINE!!!!!!

Un polo nell'origine associato ad un modo costante, cio una condizione iniziale che viene mantenuta
costante, ma allora non torner a 0! Poli nell'origine sono marginalmente stabili, non tendono a scappare ma
non tornano indietro!!!
Due autovalori nell'origine (poli) divergono perch sono un polinomio(?)

Facendo tutte le prove su b e k posso andare a vedere la parte reale degli autovalori
della matrice, quindi capire se sono stabili instabili o marginalmente stabili

Nel sistema lineare la stabilit dipende dagli autovalori di A

In questo esempio abbiamo una situazione che attrae


tutte le traiettorie, qualsiasi esse siano! Se nei sistemi
lineari esiste un equilibrio attrattivo questo unico ed
globalmente attrattivo

In un sistema lineare si pu avere pi di 1 equilibrio se la matrice A singolare, quindi ha almeno un autovalore


diverso da 0

Nei sistemi lineari posso avere 1 punto di equilibrio (anche attrattivo) oppure infiniti punti di equilibri, ma non
sono attrattivi

Eq. Attrattivo --> unico e globalmente attrattivo

Eq. Multipli --> esistono infiniti equilibri

Nei sistemi lineari questi non sono necessariamente verificati, in un pendolo (non lineare) ho 2 equilibri e sono
isolati l'uno dall'altro, non ha senso parlare di sistema!! Devo trattarli separatamente

Un' altra cosa che possono esserci equilibri attrattivi ma non stabili

Ho preso un sistema che definito sull'asse reale che definisce la sua dinamica in
modo diverso in base alla posizione (non lineare chiaramente). Se la sua
posizione iniziale al di fuori di -1 1 vengono attratti verso 0 altrimenti
raddoppiano al passo successivo

Non stabile perch se prendo epsilon <1 allora devo uscire da quella epsilon per
tornare nell'origine!

Stabilit Pagina 6
Vinograd
Esco sempre!!!!

Sistema instabile lineare diverge o esiste un polo a parte reale maggiore di 0 oppure un modo t o t2 che
lo fa divergere

Questa propriet non detto che succeda nei sistemi non lineari, ci pu essere un equilibrio instabile,
ma le traiettorie non si allontanano indefinitamente, semplicemente dall'equilibrio stabile posso
convergere all'equilibrio stabile senza andare ad infinito!

Da qualsiasi punto io parta alla fine cado sempre su questa orbita, questa un'orbita
asintoticamente stabile perch attrae moti che partono da vicino, solo 1 ovvero x=0
non viene attratto

Vinograd un po' particolare, ma questo molto importante anche tecnologicamente, tutte le cose che
oscillano studiata attraverso sistemi di questo genere, anche detto ciclo limite, sarebbe un' orbita
percorsa ciclicamente ed caratterizzato dall'essere isolato, non esiste chiaramente nei sistemi lineari

Esercitazione (conviene prendere f(x) come la derivata dello stato)

Mi scrivo una funzione matlab che fa queste funzioni!

Devo fare una funzione che si chiamer vinograd_1 che mi deve dare come uscita un vettore che sar
la mia velocit (derivata di x la posso chiamare come voglio: out dx p q) l'ingresso sar quello che
voglio, lo posso chiamare x

Function out = vinograd_1(in);

X1=in(1);
X2=in(2);
r=x1^2+x2^2;
q=1+(x1^2+x2^2)^2;
Dx(1,1)=x1^2*(x2-x1)+x2^5;
Dx(2,1)=x2^2*(x2-2*x1);
Out=dx/(r+q);

Adesso voglio rappresentare il tutto, quindi posso mettere uno scope

Prendo un workspace lo chiamo vin, la variabile a cui metter il risultato, lo collego all'uscita
dell'integratore, nel blocco ci sono varie cose da inserire, c' il nome, il formato in cui salvarlo, la cosa
pi semplice array (matrice) oppure roba with time (da gli stati e il tempo a cui li trova)

Vado sulla workspace vin.signal.values

Plot(vin.signals.values(:,1), vin.signals,values(:,2))

Avendolo fatto da dentro matlab posso ora sovrapporlo ad altri grafici mettere la griglia e via dicendo
con altri comandi

Stabilit Pagina 7
Metti la variabile che calcoli sullo spazio li lavoro e mettilo su un affare che si chiama vin, quindi mettilo in una
struttura con il tempo (quello detto prima) quindi la variabile struttura con il tempo, chiamo vin e lui mi dice che
co' (questo nella workspace!) il primo elemnto vettore, il secondo una struttura e il 3 un nome di blocco, posso
accedere a questi dati specificando dopo vin quale punto voglio vin.signals vado a prendere quella roba li.
Se nell'interfaccia scrivo vin e prima di premere vin premo tab lui mi da i possibili completamente, quindi scelgo
signals, metto il punto quindi di nuovo tab e mi da altri suggerimenti, ma io scelgo i valori, se gli do indio lui mi
dar una matrice di due colonne. La prima lo stato x1 e la seconda lo stato x2, adesso premendo hold on posso
cambiare le condizioni iniziali in simulink quindi fare di nuovo la lsimulazione e richiamare di nuovo vin, avr
nuova roba che potr elaborare insieme alla vecchia riplottando

Le condizioni iniziali posso anche darle parametriche e darle dallo spazio di lavoro

Stabilit Pagina 8
Metodo indiretto di Lyapunov

Inteso come sistema non lineare sia come tempo continuo che come tempo discreto

1) Preso un punto di un sistema vado a linearizzare intorno ad esso, se il sistema


lineare associato al sistema non lineare asintoticamente stabile allora l'origine
localmente asintoticamente stabile anche per il sistema originario

Si parla di origine perch anche se non lo fosse baster fare un cambio di variabile e riportarsi nell'origine

2) Se il sistema lineare ha almeno un modo esponenzialmente divergente allora l'origine instabile per il
sistema non linear

Se il sistema lineare non ha modi esp. Divergente, ma ne ha almeno 1 non convergente, in pratica se ho
autovalori sull'asse immaginario ho stabilit marginale perch i modi non crescono e non decrescono, ma
oscillano

Tutti i i(A) (autovalori di A) a parte reale <0


E un autovalore almeno a parte reale nulla per i tempo continui

Tutti gli autovalori con modulo non maggiore di 1 e almeno 1 autovalore a


modulo 1.

Questi due casi non rientrano nei due comportamenti visti prima

Una funzione di questo tipo si dice positiva definita (PD) se vale 0 nell'orgine (V(0)=0) e se
esiste un intorno Br nell'origine per cui si ha

Questa funzione si dice positiva semidefinita se

Si dice negativa definita (semidefinita) se semidefinita positiva

Globalmente PD se V(x)>0
Globalmente PSD se V(x)>0
Esempi
V(x)=x12+x22 questa globalmente definita positiva

V(x)=x12+x22-x13 PD (local) se prendo un intorno nell'origine questa funzione rimane positiva, ma non globalmente!!

V(x)=x12+sin2(x2) localmente PD mentre globalmente PSD perch va pi volte a 0

V(x)=x12(x) globalmente SDP perch vale 0 in tanti punti

FORME QUADRATICHE

Assumo P simmetrica senn questo non vale

Se P ha tutti gli autovalori positivi allora P sar PD


Se P ha tutti gli autovalori non negativi allora P sar SPD
Se tutti i minori principali di P hanno determinante positivo allora P PD
I minori principali sono le varie matrici quadrate che contengono sempre il
termine a11

Applicazione Lyapunov Pagina 9


Se P PD allora l'angolo tra x e Px strettamente minore di /2

Q una matrice invertibile e non


nulla

Metodo diretto di Lyapunov

Tempo continuo (TC)


Sia x=0 Punto di equilibrio per il sistema tempo invariante si consideri e si
consideri la sua derivata direzionale lungo il campo f(x)

Derivata direzionale

1) Se la derivata direzionale negativa semi-definita, l'origine stabile.


2) Se invece negativa definita, l'origine asintoticamente stabile (AS)
3) Se positiva definita l'origine instabile

Prendiamo V come una funzione che una generalizzazione dell'energia quindi in ogni punto del mio spazio di
stato mi dice l'energia del sistema, voglio quindi andare a vedere nel tempo come cambia quindi V(x)

Se nel tempo ho <0 allora il sistema oscilla quindi stabile


Se nel tempo ho <0 allora il sistema perde energia quindi ho uno smorzatore
Se nel tempo ho >0 allora instabile

Tempo discreto (TD)

Sia x=0 Punto di equilibrio per il sistema tempo invariante si consideri e si consideri
la sua differenza direzionale lungo il campo f(x)

1) Se la differenza direzionale negativa semi-definita, l'origine stabile.


2) Se invece negativa definita, l'origine asintoticamente stabile (AS)
3) Se positiva definita l'origine instabile

Dimostrazione TC stabilit

Considero un intorno sferico dell'origine B internamente o tutto contenuto in una regione S in cui la
derivata direzionale
Esiste questo valore M che il minimo di V(x) sul bordo
Essendo V continua e DP,

V(x)<M
Sulla bolla di epsilon la derivata direzionale semidefinita negativa per ipotesi, quindi su
questa bolla prendo il punto che ci da il valore minimo sulla frontiera (questo M
Ma allora prendo questa bolla B delta che avr tutti i valori minori di questa M

Quindi assumo per assurdo che Suppongo allora che esca da B al tempo t

Applicazione Lyapunov Pagina 10


Noi abbiamo dato ipotesi di semidefinita negativit (ovvero V<0)
Implica che V monotona non crescente nel tempo

Allontanandosi dall'origine V dovrebbe decrescere perch semidefinita negativa (quindi derivata


negativa) ma per questo assurdo se esco dalla bolla B di delta e arrivo alla B di epsilon allora la mia
funzione cresciuta, ecco l'assurdo

Si dice funzione di Lyapunov per il sistema x=f(x) nell'equilibrio considerato

Linearizzando col metodo indiretto non riesco ad avere nessuna informazione, quindi cambio metodo
Candidata di Lyapunov (perch va fatto a tentativi)

V(x)=x2 La candidata positiva definita

negativa definita

Questo per il teorema diretto una funzione stabile quindi V(x)=x2 non una candidata ma proprio
una funzione di Lyapunov, se non fosse venuto cos (una PD e l'altra NSD) dovevo provarne un'altra e
cos via

Per qualsiasi
V=x2 stabilizza tutte
queste

Se prendessi un'altra V in ogni caso non avrei problemi, basta che valga la regola che la derivata direzionale
diventi NSD

Altro esempio

Se valgono le hp del metodo diretto di Lyapunov e Allora l'equilibrio globalmente asintoticamente


stabile
Radialmente illimitata e in particolare che le sue
superfici di livello (curve di livello) sono chiuse

Alla fine la derivata non viene definita negativa!! Quindi niente devo
riprovare

Applicazione Lyapunov Pagina 11


Funzione di Lyapunov

Perfetto! Definita negativa Ma se vado a plottare le curve di livello della v(x)

PPLANE
Posso dare x punto = e y punto= quindi posso disegnare il
campo vettoriale, se faccio partire le mie soluzioni da un punto
abbastanza vicino all'origine vedo che le soluzioni convergono
all'origine, se mi allontano il sistema va un po' a caso Le curve di livello non sono chiuse quindi il limite
per non porta la V(x) ad infinito (curve di
livello significa che V costante).
In sostanza il sistema non globalmente
asintoticamente stabile, ma sar localmente
stabile nell'origine

RIASSUNTO
Derivata dello stato rispetto al tempo

Si considera sistemi tempo invarianti


Movimento: sequenza, successione di valori dello stato che dipende dalle condizioni iniziali e dagli
istanti di tempo considerati x(x0,t)
Poi si parlato di distanza tra due stati e con orbita
Alla fine si parlato di stabilit
Stabilit: per ogni epsilon esiste delta maggiore di 0 tale per cui se il movimento inizia in una condizione
x prima che diversa da x zero secondo una certa norma minore di delta allora il movimento che
partito da x prima sar meno distante dal movimento partito da x zero rispetto ad epsilon

Se parto da punti vicini pi o meno il movimento simile

Attrattivit: attrattivo se esiste delta maggiore di 0 tale per cui se il movimento inizia da una condizione iniziale
distante da x zero minore di delta allora il limite per t che va a infinito il movimento che parte da x primo
distante dal movimento che parte da x zero proprio 0

Se vale sia attrattivit che stabilit allora si parla di asintotica stabilit

Equilibrio: un movimento molto particolare, cio un movimento per cui x punto uguale a 0
Per i sistemi non lineari si possono concludere molto spesso soluzioni locali e non globali, si parla infatti di
equilibri. Per i sistemi lineari si pu parlare di propriet per il sistema

Regione di asintotica stabilit: regione dello spazio di stato dove posso perturbare le condizioni iniziale e
nonostante questo l'equilibrio per il sistema ancora asintoticamente stabile (per sistemi non lineari)

Se riesco a dimostrare l'asintotica stabilit globale allora la regione di asintotica stabilit tutto lo spazio di stato

Quindi abbiamo guardato i metodi per capire se un sistema stabile o meno

Metodo indiretto di Lyapunov che si basa sul linearizzato (MIND). Si pu concludere che:

1) Se linearizzando asintoticamente stabile allora il non lineare asintoticamente stabile (nel punto di
equilibrio studiato!!!!)
2) Se linearizzato instabile (ha almeno 1 polo a parte reale positiva), il non lineare instabile.

Questo metodo si applica facilmente, dato un sistema lineare si pu sempre studiare con semplicit, calcolando
gli autovalori del sistema linearizzato.
Questo per non permette di concludere molti casi, il 3 caso quello dove non si ricade in queste, se ho un
autovalore a parte reale nulla (modulo unitario se si parla di sistemi discreti)?

Applicazione Lyapunov Pagina 12


Metodo diretto: vado a studiare il sistema non lineare, quindi abbiamo introdotto nuove definizioni ,
funzione definita positiva (DP) o semidefinita positiva (SDP)
V(x) tale che V(0)=0 e V(x)>0 per ogni x appartenente a R
Allo stesso modo per le negative

Poi abbiamo parlato di funzione di Lyapunov dicendo che questa V(x) deve essere DP e la derivata
direzionale deve essere negativa semidefinita

Il metodo diretto fino ad ora mi permette di dare conclusioni locali come quello indiretto e sicuramente
di pi difficile applicazione, perch la derivata direzionale non semplice da fare.
Nel caso in cui si riesca a fare per si pu aggiungere una nuova ipotesi

GAS per il limite della norma di x che tende a infinito la V(x) deve andare ad infinito, lo abbiamo visto sul
grafico con le curve di livello l'equilibrio una particolare condizione
di un movimento
Questo metodo mi pu anche dare un'informazione sul globale
Orbita: curva nello spazio di stato
Nuovo concetto:
Teorema dell'insieme invariante massimo : c' una limitazione nel metodo diretto di Lyapunov, con questo
teorema possiamo concludere per l'asintotica stabilit
In generale le condizioni che si trovano per quanto riguarda sistemi non lineari sono sufficienti, quindi bisogna
stare molto attenti a questa cosa, il fatto che io possa concludere se la derivata direzionale sia definita positiva per
l'asintotica stabilit non detto che il sistema non sia asintoticamente stabile, semplicemente non ho gli
strumenti per poterlo dire.
Insieme invariante: se tutte le orbite che intersecano M sono interamente contenute in esso, quindi se un
movimento o un'orbita interseca M deve essere contenuto in M stesso, gli equilibri sono sistemi invarianti, i cicli
limite, le unioni di insieme invarianti lo sono a loro volta
M si dice invariante per un sistema dinamico se tutte le orbite del sistema che intersecano M sono interamente
contenute in M stesso

R un insieme di punti che verificano quella


condizione
In pratica il mio
movimento tende ad
M massimo insieme invariante incluso in R implica che andare all'elemento
di M pi vicino
all'elemento stesso

Durante l'evoluzione del sistema V non pu mai crescere e V limitata in basso perch definita positiva
quindi non posso avere evoluzioni divergenti.
Se l'insieme invariante massimo ha 1 unico elemento e quello un equilibrio allora l'equilibrio
asintoticamente stabile

Applicazione Lyapunov Pagina 13


Applichiamo ora il criterio dell'insieme invariante massimo

Oltre a dire che di equilibrio dico che se parto da qualsiasi punto compreso l andr a finire in m, quindi so
quanto posso perturbare le condizioni iniziali senza uscire dalla situazione di equilibrio

Applicazione Lyapunov Pagina 14


Sistemi non lineari

Stabilit
- M indiretto
- M diretto

Siam partiti da un sistema dinamico non lineare da una forma generale

Quindi metodo indiretto propriet del sistema linearizzato


Metodo diretto studio sul sistema di partenza, pu dare informazioni anche globali (in casi fortunati) derivata di
candidata di Lyapunov deve essere N.D per avere l'asintotica stabilit
Poi abbiamo visto che sfruttando il teorema dell' insieme invariante massimo possiamo cedere qualcosa rispetto
alla prima ipotesi, possiamo avere la derivata della candidata NSD, dobbiamo avere curve chiuse, prendiamo una
regione massima, troviamo l'insieme invariante massimo quindi c' un corollario che dice: se l'unico elemento
dell'insieme invariante massimo nell'origine allora esso asintoticamente stabile per il sistema

Tutto questo ci permette di fare una stima della zona di assoluta stabilit, in pratica perturbando il mio sistema
all'interno della mia regione posso comunque dire che converger in quell'equilibrio

Esempio 1

Primo step mi preoccupo degli equilibri sicuramente x1=0 x2=0

Applico metodo indiretto quindi faccio il linearizzato del mio sistema

michelebarnini@yahoo.it

Varie derivate delle due equazioni quindi sostituisco il punto di equilibrio


Vogliamo che la parte reale degli autovalori sia negativa!
Sistema localmente stabile

Come primo tentativo molto comodo usarla

Devo restringermi in una regione S dove LfV Semi Definita Negativa quindi mi metto
sul bordo della circonferenza e all'interno (

Le curve di V saranno radialmente limitate sicuramente, quindi avendo limitato la mia regione non ho altri
problemi.
Definisco ora = vado a cercare i punti dove la candidata di Lyapunov si annulla (insieme R)

sistemi affini del controllo^J uniciclo Pagina 15


Per azzerare la derivata della candidata mi devo mettere in x1=0 x2=0 quindi sar unico ma allora

M={x1=0,x2=0}

Per cercare di aumentare la zona di asintotica stabilit potrei cercare un'altra candidata di Lyapunov che mi
rendeva la regione S pi ampia (in questo caso impossibile dato che gi tutto S)

S viene definito sulla derivata direzionale, mentre viene definito sulla V(x), per definire questo valore devo
andare a tentativi, in pratica lo aumento progressivamente cercando di disegnare sullo stesso piano di stato la
curva V(x)= a confronto con il bordo di S, se si intersecano ho preso troppo grande

Es. 2

l'equilibrio dovr essere asintoticamente stabile per forza

Definisco lo stato

Metodo Indiretto
Non ci dice niente! Non ci sono modi
convergenti, abbiamo autoval in 0 quindi mi
fermo qua

Metodo diretto

S.D.N

Abbiamo almeno la stabilit, non asintotica ancora


Applico di nuovo teorema dell'insieme invariante massimo

Questa condizioni si studia con il limite della norma di x

Sempre S.D.N quindi va bene tutto


Il sistema asintoticamente stabile su tutto lo
spazio di stato dato che S non limitato
Globalmente Asintoticamente Stabile

Applicazione di questi sistemi ai controlli

Sistema affine del controllo un sistema di questa forma

Questo sistema molto studiato perch tanti sistemi si scrivono con una dinamica di questo tipo (esempio veicoli,
manipolatori ecc)
PROBLEMA
Trovare una legge U(x) (U funzione dello stato) tale che il sistema x=f(x)+g(x)*U(x) abbia l'origine asintoticamente
stabile

sistemi affini del controllo^J uniciclo Pagina 16


Questa la forma pi semplice di questo problema, poich assumo di fare una retroazione di tutto lo stato del
sistema, quindi sto assumendo che posso misurare tutto del mio stato
Il problema di fare un inseguimento di una traiettoria o riportare un sistema su un orbita pu essere riconducibile
alla stabilizzazione di un equilibrio quindi posso arrivare a sfruttare gli strumenti studiati fin ora (visto con Bicchi le
prime lezioni)
Provo ad applicare a questa struttura generale il metodo diretto di Lyapunov
Suppongo di aver scelto una candidata DP (non la specifico quale)

N.B. adesso metteremo il puntino come derivata direzionale, ma corrisponde alla Lf di prima, semplicemente
adesso non ho pi solo f, per non creare confusione smetteremo di scriverlo per intero
Devo trovare una candidata che per lo meno mi renda questa roba semi definita negativa
Questa legge estremamente generale, non ho specificato quasi niente, in pratica
semplice trovare una candidata positiva definita (per sistemi meccanici l'energia
meccanica un buon inizio) e questa legge mi garantisce che per una V(x) DP
quantomeno il sistema controllato stabile, poi andr a vedere per particolari
sistemi cosa potr riuscire o non riuscire a fare

Purtroppo non sempre sar applicabile

Es. UNICICLO

Sintesi di un controllore con Lyapunov

Applico ad un veicolo, quindi assumo che questo oggetto possa ruotare su se stesso ma
non possa traslare in direzione trasversale a V (immagino un veicolo con 1 ruota sola)

Per la dinamica di questo modello conviene parlare di velocit

Adesso definiamo gli stati e i controlli (quello che sfrutter per controllare il sistema)

Immagino un veicolo a V costante di cui mi interessa solo controllare lo sterzo

Consideriamo di voler inseguire una certa traiettoria, ma non una traiettoria dipendente dal tempo, voglio
seguire una traccia (path following)
Suppongo di voler portare il veicolo lungo l'asse x, da qualunque posizione io parta
Derivata nulla perch non voglio che solo la posizione sia fissa, ad ogni istante di tempo
deve essere vera questa cosa! Quindi anche velocit lungo y nulla

Le accelerazioni non le consideriamo perch la mia dinamica si ferma alle velocit, non ho inerzie, se le
avessi avute avrei dovuto mettere anche accelerazione lungo y=0.

Alla fine il mio stato deve essere

Se voglio regolare teta e y mi posso rifare alle equazioni 2 e 3 senza considerare la prima, tanto x non mi dar
problemi (semplicemente y e teta non dipendono direttamente da x quindi non devo calcolarmela), posso
considerare uno stato ridotto per semplificarmi i conti

sistemi affini del controllo^J uniciclo Pagina 17


Andiamo ad applicare tutta la roba gi vista

Questo problema affine del controllo, in particolare

Mi accorgo che [0 0] un equilibrio del mio sistema

Dobbiamo rendere asintoticamente stabile l'origine della roba scritta sopra che anche affine dei controlli

Adesso non definito negativo, ma posso


sfruttare una legge di controllo che mi faccia
avere una derivata negativa definita!!!

S.D.N. quindi funziona! (sempre perch su y non ho vincoli)

Teorema dell'insieme invariante massimo

Se questo unico allora avr stabilit


assoluta

possibile che il rapporto Lf/Lg dia problemi, in questo caso ad esempio Lg si annulla
ma il limite si sin (teta)/teta intorno all'origine fa 1

Possiamo concludere per la globale asintotica stabilit perch la mia V non ha problemi in R2

Considerazione sul modello dell' uniciclo fino ad arrivare a definire in modo coerente il nostro problema:
Data la dinamica di questo sistema (affine del controllo) con 2 stati teta e y rendere l'origine di quel sistema
dinamico un equilibrio asintoticamente stabile, quindi abbiamo preso una candidata di Lyapunov abbiamo
valutato la sua derivata, abbiamo preso una legge di controllo secondo le leggi generali (dimostrando che fosse
valida)
Quindi I.I.M; V radialmente illimitato, quindi vado a cercare i punti appartenenti a R2 (il nostro S appunto) dove
si annulla teta e teta punto, l'unico punto dello stato che soddisfa sia la dinamica del sistema che i vincoli per
appartenere all'insieme R proprio l'origine, quindi quel punto Globalmente Asintoticamente Stabile

l'unica restrizione su quindi dovr essere negativo! Maggiore sar questo valore pi rapidamente tendo ad
avvicinarmi all'equilibrio

sistemi affini del controllo^J uniciclo Pagina 18


Teoremi inversi

Serve a sapere i casi in cui ci sono o meno garanzie

Se l'origine asintoticamente stabile allora esiste una V(x) tale che la derivata direzionale di V(x) N.D

Teoremi di instabilit

Ci sono due teoremi che richiedono meno ipotesi rispetto al calcolo della candidata DP per poi derivarla
ecc

Definisco questo U quindi l'origine appartiene alla frontiera di U oppure a U

Se queste ipotesi sono vere allora l'equilibrio instabile


Es. applicazione

sistemi affini del controllo^J uniciclo Pagina 19


Controllo di un uniciclo con legge di controllo ricavata con Lyapunov

Legge di controllo

Abbiamo definito una serie di funzioni, tutto nella stessa cartella, quindi vado a preparare il modello simulink

Prima scrivo "inizializzazione" quindi invio per mettere le condizioni iniziali e resettare tutto (c' un file che si
chiama cos

Fai partire adesso il file pathfollowing e si vede la macchinina che corre

matlab uniciclo Pagina 20


La regione di asintotica stabilit quella regione dello spazio dove se il sistema viene perturbato torna
all'origine

Sistemi lineari tempo continuo: stabilit con Lyapunov

Equazione di Lyapunov: ha la particolarit che

Presa una Q definita positiva esister e sar unica una P definita positiva se e solo se tutti gli
autovalori di A sono a parte reale minore di 0

NON includo l'asse immaginario

La funzione lyap in matlab fa proprio questo calcolo

Sfrutto Jordan!!!

Se ho m autovalori nell'origine uso


jordan, quindi mi vado a studiare solo la
parte rimanente!

Alla fine studio solo questi blocchi quindi posso andare a cercare la candidata qua

matlab uniciclo Pagina 21


Sistestemi lineari tempo discreti

Eq di Lyapunov in tempo discreto

Soluzione esiste ed unica se e solo se lo spettro di A minore di 1

matlab uniciclo Pagina 22


Fin ora sappiamo fare il controllore di questa roba lineare!

Come faccio a sapere se il nuovo sistema stabile? (sistema + controllore)

Il sistema deve essere stabile, il controllore assumo di averlo progettato


per bene!

Quindi con Lyapunov indiretto

Applico per l'insieme invariante massimo per capire quanto effettivamente posso perturbare il sistema

Gradiente uscente dalla curva di livello e retta tangente alla curva


di livello

Il prodotto scalare tra queste due


quantit minore di 0 quindi
angolo maggiore di 90

Una curva di livello contenuta nella regione completamente far parte della RAS
Aumenter quindi le dimensioni della mia V fino ad arrivare ad essere tangente

Per modificare la mia RAS potrei comunque cambiare la mia V con diverse curve di livello con diverse regioni dove
V<0 aumentando le dimensioni dell'area di assoluta stabilit.

Ma una volta aggiunto il controllore devo aggiungere anche questo al sistema!

Dove A barrato tutto quello visto prima (AR) + una parte di residui f
tilde

Cerchiamo una funzione di Lyapunov per il sistema linearizzato, questa sar sicuramente una funzione di
Lyapunov anche per il vero sistema! Almeno localmente

Quindi vado a valutare la V studiando il linearizzato (quello scritto sopra appunto l'approssimazione
linearizzata del mio sistema)

Ripeto questa fuzione di Lyapunov vale anche per il sistema non lineare, ma solo localmente, baster
capire quanto mi posso allontanare (appunto RAS)

Il primo termine sicuramente minore di 0 ma il secondo? Il residuo non lineare mi potrebbe rendere la funzione
positiva! Ma se faccio uno studio lineare (intorno all'origine) gli ordini superiori li elimino, quindi tutta la roba non

Ripasso controllabilit Pagina 23


Lineare si andrebbe a trascurare. Ma quanto lontano dall'origine vera questa cosa?

Studiare analiticamente la seconda equazione difficile, in pi siamo su


dimensioni alte (dimensione data dal sistema + controllore).
Tipicamente la dimensione del controllore pari a quella del sistema, quindi
siamo a dimensione doppia in totale (molte variabili).
Si pu provare a fare numericamente, non avr le stesse garanzie di farlo
analiticamente, ma meglio di nulla

Ho il sistema, faccio il controllore, definisco il nuovo sistema, quindi calcolo Q, ecco che ora va studiata la seconda
parte di V

Andr a generare molti punti sulla curva di livello che voglio studiare, cerco di fare una griglia molto fitta di punti
Faccio una politica per bisezione, prendo come candidata una certa curva di livello (in realt un superficie di
livello!!! Quindi servono un botto di punti)
Calcolo calcolo calcolo e alla fine mi viene un punto dove la derivata di V viene>0. TUTTI QUELLI PRIMA LI
SCARTO!
Quindi ripartiamo da capo con un'altra curva e fino a che tutti i punti non stanno dentro non mi fermo

Se voglio cambiare la regione posso cambiare Q e ricavarmi un'altra V

Esercizio

l'idea che dobbiamo valutare un po' di punti casuali su una curva di livello

Prendiamo x come un vettore random di dimensione n dove n la dimensione del sistema, quindi lo
normalizziamo per avere ampiezza pari a radice di R

In pratica sono tanti punti


tutti quanti sulla curva di
livello R

Il grafico rosso la regione di asintotica stabilit calcolata analiticamente (questo non si pu fare praticamente
mai), quindi posso vedere come cambia la RAD che calcolo io, ma sto sempre dentro alla linea rossa

Ripasso controllabilit Pagina 24


Qual il problema che ci poniamo? I miei sistemi in generale sono del tipo:

Ipotizzo di partire da uno stato iniziale e voglio farlo arrivare ad uno stato finale
controllando la sua evoluzione cos da raggiungere i valori desiderati.

In generale voglio portare il sistema da uno stato iniziale ad uno stato finale,
questo problema che si chiama di raggiungibilit (voglio poter raggiungere lo
stato finale partendo dall'inizio) consiste nel trovare il controllo U tale da

Dipender dal tipo di attuatore che ho a disposizione

Ma allora u deve appartenere ad un insieme di funzioni ammissibili U ad esempio imponendo che u <M, in
pratica do limiti sull'attuatore ad esempio dicendo che la mia automobile pu andare fino ad un tot, oppure
norma 2, che significa non voler spendere troppo, in sostanza ci possono essere vincoli sul controllore.
Per il momento cercher di studiare il problema senza questi vincoli, poi li riconsidereremo.

Ho il sistema
Situazione iniziale
Il mio controllo
Quindi la situazione finale che voglio ottenere

Calcolo un controllo u che messo li dentro mi porti il sistema dallo stato iniziale a quello finale.

Questa una possibile soluzione del problema


Si chiama feeforward, in pratica non dipende
da quello che successo fin ora

Faccio feedback! Invece di parlare di una u(t) faccio una u(y) ovvero una u
dipendente dallo stato, quindi una retroazione! Oppure ancora meglio

Feedback e feedforward (pianificazione) devono stare insieme. Nella pratica usare solo feedback
spesso impossibile.

Vorrei preparare una pianificazione con vincoli e ottima, quella che costa meno.

Raggiungibilit nei sistemi tempo invarianti tempo discreti

Dato il sistema lineare e un ingresso u applico una sequenza di ingressi u dati da:

Definisco l'insieme dei punti raggiungibili al tempo t e l'insieme delle x( spazio di


stato di dimensione n) tale per cui esiste una sequenza u nell'insieme ammissibile
per la quale x a partire da x0 con questa sequenza u al tempo t vale proprio x

Raggiungibilit e controllabilit Pagina 25


Dico che:

Da x0 arrivo ad Ax0 quindi conoscendo


com' diretto B posso dire che
dipendentemente da u posso cascare in
un qualsiasi punto sulla retta blu
R1 lo spazio raggiungibile

Ma allora se definisco una seconda B2 (matrice B composta da 2 colonne) possibile definire tutto lo spazio di
stato come risultato finale!
Ma questo molto difficile riuscire ad ottenerlo di solito le variabili sono molto di pi rispetto alle colonne
della mia B
Quindi ipotizzo di fare 2 passi

Al passo 2 definisco u(1) diversa da u(0) quindi torno alla situazione precedente senza dover avere una
matrice B con 2 colonne, semplicemente svolgendo 2 passi invece di 1

Al tempo t generico la soluzione di questo sistema la conosco

Evoluzione libera sistemi lineari tempo discreti

In sostanza al tempo t generico ho una grandezza fissa A tX0 moltiplicata per un sistema lineare

La matrice Rt detta la matrice di raggiungibilit in t passi

Da ora in poi supponiamo sempre di avere x 0=0 quindi avremo che


Lo spazio raggiungibile quindi l'immagine della matrice di raggiungibilit

Quando aumento il tempo se ho la matrice R t

Sicuramente tutte le immagini della matrice al tempo t sono


comprese in quelle della matrice di t+1, pu solo crescere la
dimensione! Al pi rimarr uguale.

Chiaramente con 1 passo in pi per forza miglioro la situazione


Alla fine potr arrivare al passo n ovvero la dimensione della mia variabile di stato, ma se ci arrivassi prima allo
stato finale?
Appena la successione dei sottospazi cessa di crescere posso sospendere i passi

La mia tesi che

Se l'ho calcolato in n passi calcolarlo in n+1 passi non mi deve dare nessun risultato in pi! In pratica
aggiungo colonne combinazione lineari delle precedenti, questo discende dal teorema di Kaili Hamilton?

Raggiungibilit e controllabilit Pagina 26


Il polinomio caratteristico della matrice
Se applico la matrice A al posto di lambda

Combinazione lineare di tutta la roba vecchia! Quindi non ha senso aumentare a n+1

l'insieme raggiungibile in n passi per dimensione n

Vedo che provare con n=4 non avrebbe senso per il teorema visto prima, quindi mi fermer
qua, il sistema non completamente raggiungibile, questo sar il sottospazio con x 3=0. con una
condizione iniziale diversa

Adesso ipotizzo lo stesso sistema ma con m=2

Cambiando il controllore vedo che gi al secondo passo arrivo ad ottenere

Prima abbiamo detto che oltre n inutile andare, ma possiamo arrivarci anche prima di n a tutto lo spazio

Stessa matrice A con un'altra B diventato completamente raggiungibile

Altro esempio
Matrice a rango pieno e quadrata quindi
invertibile

Quale ingresso mi ci porta in 3 passi?

Cos ricavo sempre il tutto

Raggiungibilit e controllabilit Pagina 27


Adesso immagino di aggiungere R 4

Se voglio risolvere questo problema di pianificazione le cose cambiano!

Cos ricavo sempre il tutto

Ma questa come la faccio? Sembra un problema, in realt non lo ! La soluzione esiste ma non unica, ha uno
spazio nullo quindi qualsiasi vettore di ingresso che sta nello spazio nullo mi dar soluzione, quindi scelgo quella
che mi costa meno! Esistono funzioni che automaticamente mi danno la soluzione che costa di meno

pseudoinversa

Tra tutti i valori della sequenza di ingressi u che mi portano al risultato desiderato, sceglier quello che mi coster
meno

Potrei ad esempio fare una scelta in funzione della norma 2 di u

In pratica la matrice W ha dei pesi sulla diagonale che pesano le diverse


componenti del vettore degli ingressi u, in questo modo posso andare ad
assegnare una diversa importanza alle varie u i
Ecco che voglio minimizzare questa norma

l'argomento del minimo valore della norma 2 pesata

Ecco come si risolve

Si usa la Lagrangiana quindi si valutano le derivate rispetto a


ue
in sostanza vado a mettere in relazione le due equazioni

Rt non quadrata se vado oltre n, W sicuramente invertibile

Dove t il numero di passi e m il numero di ingressi

Raggiungibilit e controllabilit Pagina 28


Ipotizzo di avere R di dimensione n quindi quadratra e invertibile

Proprio l'inversa di Rt e infatti non poteva essere altrimenti

Ma se non invertibile allora dir che quella roba sar la pseudoinversa di R t o di Moore-Pentose
Questa definita come l'inversa che mi dar la minima norma

In matlab posso calcolare la pseudoinversa con pinv(R)

Se m=1 si pu considerare W diagonale pesando i termini di nostro interesse.


Se m=2 per cambiano le cose

Quando ho 2 ingressi comunque il vettore a singola colonna, ma raddoppia la dimensione

Le grandezze trattate possono essere molto diverse, ad esempio posso avere su A una forza
e su B una tensione, quindi quando vado a mettere tutto nella roba vista prima mi serve
una matrice W che aggiusti le grandezze tra loro

Alla fine se ho uno spazio nullo sulla mia Rt la soluzione che costa meno sar per R+=W-1Rt(RtW-1RtT)-1

Torniamo alla raggiungibilit per sistemi tempo continui

Voglio trovare insieme dei punti raggiungibili dato un certo ingresso

Raggiungibilit e controllabilit Pagina 29


l'indice delle u indietro rispetto all'indice dei fattoriali,
in pratica si tratta dell'integrale!

Potendo scegliere liberamente u(t) allora posso anche scegliere il suo integrale primo secondo e cos via ad
ogni istante di tempo quindi nessun problema quel termine.

Ma quante colonne di B AB A2B e cos via metto? Ne metto n! andare oltre non avrebbe senso

Ma allora ottengo lo stesso risultato della matrice di raggiungibilit vista nel tempo discreto

Allora il sistema completamente raggiungibile

Ho fatto dipendere tutto da t perch ho imposto nei calcoli di voler raggiungere il mio stato dopo quel valore, ma
usando t' non mi cambia nulla! Il sistema comunque raggiungibile per un t differente (al posto di t metto t/2 ad
esempio in tutti i passaggi fatti!)

Se non mettiamo limitazioni sulle u posso avere raggiungibilit indipendentemente dal tempo che scelgo

Applicando direttamente la formula di prima dovremmo metterci a calcolare i valori degli integrali dell'ingresso,
ma non molto pratico!

Problema di pianificazione per LTITC

Insieme dei valori che pu assumere questo integrale


Dico che appartiene all'insieme di raggiungibilit (l'ho visto prima che vero)

Adesso non c' la sommatoria, siamo nel


continuo

Raggiungibilit e controllabilit Pagina 30


Gt invertibile se e solo se la matrice di raggiungibilit ha Im=

per vero che una matrice pu essere pi o meno invertibile, dipendentemente dal malcondizionamento, pi
malcondizionata servono grandi controlli anche per muovermi di poco

La pianificazione del tempo continuo la faremo campionando il sistema quindi riafacendoci ad un sistema tempo
discreto

cambio di coordinate

Raggiungibilit

suppongo di avere un cambio di coordinate

vediamo che si semplificano tutti i T


con T-1
la raggiungibilit non cambia cambiando le coordinate, quindi la raggiungibilit una propriet importante, detta
propriet strutturale

un'altra osservazione : supponiamo di conoscere la matrice di raggiungibilit di un sistema in 2 coordinate


diverse, come faccio a ricavare la relazione tra i due sistemi di riferimento?

1) singolo ingresso (
Se raggiungibile allora R invertibile

2) Multipli ingressi
Raggiungibile --> rango R=n
rango Rz=n
premoltiplico per il trasposto per far venir fuori una matrice quadrata

se avessi k=0 e b=0

Raggiungibilit e controllabilit Pagina 31


vediamo che il sistema non raggiungibile

posso raggiungere gli stati per x 1 e x3 ovvero posso controllare la posizione e la velocit della prima massa e basta!
questo ha senso, le coordinate della seconda massa non sono raggiungibili

ho una parte raggiungibile e una parte non raggiungibile, ci permette di spiegare molto facilmente, questa una
propriet di tutti i sistemi in generale, possiamo fare un'analisi della parte raggiungibile e quella no.

Scomposizione Standard di raggiungibilit

Sistemi lineari: insieme raggiungibile (dell'origine) un Sotto Spazio

arbitrariamente scelta
se non fosse uguale a 0 vorrebbe dire che ho una componente nel complemento!

se scrivo un vettore in un sottospazio con le coordinate adattate a quel sottospazio avr una serie di valori e poi
tanti zeri
se ho un vettore che posso descrivere con 2 coordinate, ma voglio scriverlo con 3 coordinate per forza la terza
verr 0, ecco il concetto

se il vettore di partenza appartiene al sottospazio allora anche la sua immagine in A


appartiene a quel sottospazio

sono tutti invarianti! anche gli autospazi sono invarianti

ho tanti zeri quante sono le dimensioni in meno del nuovo sistema di


riferimento

Raggiungibilit e controllabilit Pagina 32


ci concentriamo sul minore, quindi ho un sistema non completamente raggiungibile

scomposizione standard di raggiungibilit

adesso posso scrivere le equazioni una per una

data la condizione all'ingresso questa equazione posso determinarla senza ingressi! questa
parte del sistema non dipender dagli ingressi

se provo a fare R della seconda equazione avendo B=0 ho che R=0 quindi sistema irraggiungibile

la parte sopra invece completamente raggiungibile? questa la mia ipotesi

nel cambio di coordinate invece?

il rango sar sempre nr perch abbiamo visto che non cambia il rango se faccio un cambio di coordinate,
ma allora tutte le colonne saranno non dipendenti tra loro quindi avr n-nr righe di zeri

abbiamo un sottosistema irraggiungibile che va per conto suo! per il rapporto ingresso uscita la parte
irraggiungibile non contribuisce

se non fosse stato strettamente proprio (matrice D che unisce direttamente ingresso ad uscita)

voglio trovare la funzione di trasferimento

adesso guardiamo che succede quando cambio le coordinate

Raggiungibilit e controllabilit Pagina 33


queste due funzioni di traferimento non cambiano se cambio le coordinate per lo stato!!!! quindi dovranno per
forza essere uguali

da una parte i poli della funzione di trasferimento sono gli autovalori di A nell'altro caso AR

ma la prima ha n poli mentre la seconda nr<n poli!!!

Esempio

ma il rango 1! il sistema non completamente raggiungibile quindi faccio il cambio di coordinate per come
avevo detto

adesso cambio il sistema di riferimento

i poli si sono semplificati! quando ho una cancellazione significa che quel polo corrisponde ad un autovalore, un
sottosistema non raggiungibile ( una delle cause della cancellazione)

N.B. le matrici cambiano ma la geometria la stessa! la forma standard deve rimanere la solita, l'autovalore del
sottosistema raggiungibile sempre quello! anche cambiando la seconda parte di T per capirsi

Per un sistema SISO Forma Canonica di Controllo

la funzione di trasferimento di queste matrici scritta cos

si chiama forma canonica di controllo perch

la sua matrice di raggiungibilit fatta cos

Raggiungibilit e controllabilit Pagina 34


ho tutti 1 sulla controdiagonale quindi invertibile, ma allora questo sistema completamente raggiungibile!
questa matrice

quindi un sistema con matrici scritte in questa forma AC,BC,CC

ha questo polinomio caratteristico

potr essere possibile trovare un cambiamento di coordinate se il polinomio di A lo stesso,


cio se A ha gli stessi autovalori di AC

questa si chiama forma canonica di controllo perch si possono scriver ein questa forma tutti e soli i sistemi
raggiungibili e che hanno quel particolare polinomio caratteristico. tutti gli altri sistemi che sono raggiungibili e
hanno questi autovalori sono riconducibili a questo con un cambio di coordinate!

dato un sistema A,B come lo porto in forma canonica di controllo?

calcolo polinomio caratteristico di A e scrivo i suoi


coefficienti sull'ultima riga di AC, anche BC banale

si dimostra che viene cos quindi posso ricavare T che mi permette


di mettermi nella forma canonica di controllo

passiamo ai sistemi tempo discreti


A e B cambiano per forza, basta pensare che nel primo caso devo avere
autovalori minori di 0 mentre nel discreto dvo stare al centro del cerchio
unitario, quindi parametri diversi! per passare in tempo discreto quindi cambio
matrice

K sta per k volte Ts dove Ts il tempo di campionamento!

u(t) la posso campionare in modo da far tornare che il punto discretizzato vada
a coin cidere con il punto vero (lo decido io!!!) facendo cos per ottengo una
x(k) che non sar sempre riconducibile alla x(t) del sistema continuo

se il controllo che entra nel sistema effettivamente fatto costante a tratti

in questo caso allora ricavando la x campionata posso affermare che corrisponder


alla funzione campionata della x(t)

Raggiungibilit e controllabilit Pagina 35


se u non fosse stata costante da tratto a tratto all'interno dell'integrale avrei dovuto valutare anche la variazione
di u in funzione del tempo intyegrandola! qua la difficolt, ma allora tornando al caso semplificato

come faccio quell'integrale?

considero una matrice scritta cos a blocchi e faccio l'esponenziale moltiplicandolo per Ts

adesso vediamo perch succede questo! (questa la tesi)

ma questo lo sviluppo in serie dell'integrale dell'esponenziale, quindi


questo elemento mi calcola esattamente BZ

quindi calcolando questo esponenziale di matrice ricavo A Z e BZ!

Se i valori dell'ingresso costante a tratti allora questi valori ottenuti sono esattamente quelli che otterrei nel
caso continuo a quell'istante di tempo campionato, altrimenti no

cambio max step per una questione di integrazione! in questo modo son sicuro che il mio tempo di
campionamento non porter a problemi di integrazione

x finale e x iniziale

matrice di ingressi dove il primo l'ultimo che andiamoa dare

Raggiungibilit e controllabilit Pagina 36


questo prende un ingresso dalla tavola di lavoro, quindi gli dico il tempo di
campionamento, levo l'interpolazione e dico che devo mantenere lo stato

adesso voglio imporre che una volta arrivati al risultato lo mantenga (vedi script)

in p passi ottengo
se al passo successivo voglio stare qua allora devo imporre che

se voglio mantenerlo ad un certo stato devo cambiare il modo in cui calcolo il vettore degli ingressi
anche ai passi precedenti

ma come faccioa dire che nei passi successivi rimanga in x f?

questo il prossimo passo (dopo xf)

prendendo queste 2 equazioni e mettendole in 1 sola abbiamo che

oggi cerchiamo la migliore soluzione per arrivare al risultato

come gi visto, nel vettore dei controlli pi lungo il tempo di raggiungimento pi bassi sono i valori, e questo
logico, supponiamo adesso

lsqlin: ottimizza funzioni di certo tipo ( roba quadratica con vincoli lineari)

fino ad ora abbiamo fatto

questo sarebbe il mio problema con questo vincolo

non lo stato del sistema! vogliamo solo ottimizzare questa cosa quindi x una roba per minimizzare

C la considero l'identit mentre d=0 quindi x coincide con la mia u! user questa funzione matlab

le righe sono il numero di vincoli, quindi per aumentarne il numero pi grandi sono le matrice

posso voler aggiungere un vincolo sugli stati

del sistema conosco le matrici A B C D e lo stato iniziale

se voglio calcolare la velocit del mio sistema

Raggiungibilit e controllabilit Pagina 37


x al passo k sar come calcolare x al passo p !

se voglio ottimizzare ad esempio la velocit (o comunque mettere un


vincolo) questa la devo poter conoscere per ogni k

questo il nostro vettore velocit! lsqlin lo pu sempre gestire!! A*x<b

impongo vincolo sulla velcoit

se invece avessi un vincolo sul minimo della Y? essendo una disequazione basta moltiplicare tutto per -1

ma se voglio dare sia un limite inferiore che superiore allora

possiamoa nche usare qualcosa di un po' pi versatile

fmincon questa generica! assume che sia tutto non lineare


questa per locale! non un minimo globale, adesso abbiamo x0 ovvero il punto di partenza da cui far partire
l'ottimizzazione, un valore del vettore up da cui inizio.

suppongo di voler ottimizzare ad esempio l'accelerazione subita da questo carrellino (ad esempio comfort per
gente dentro)

per minimizzare la norma dell'accelerazione quindi

l'eccelerazione non altro che la differenza finita del mio vettore delle velocit

vel lo abbiamo gi trovato prima

Raggiungibilit e controllabilit Pagina 38


partiamo da questo sistema, vogliamo capire quanto sia robusto questo sistema!

esempio

questo sistema instabile sia in tempo discreto che in


tempo continuo
ma il sistema controllabile quindi lo posso mettere in forma canonica di controllo, solo i sistemi completamente
raggiungibili possono essere messi in questa forma, dato il polinomio caratteristico esiste una sola forma che mi
porta in quella forma

queste le posso calcolare


facilmente, sto solo facendo un
cambio di coordinate! x=Txc

dalla forma canonica di controllo passo diretto alla funzione di trasferimento

fino a qua tutto facile

adesso posso ipotizzare di fare una retroazione, scrivere il controllo u come funzione degli stati

il sistema veramente sar scritto cos

dico che la mia attuazione dipende dalla misura dell'uscita e da un secondo parametro v
Retroazione dell'uscita

questo quello che si faceva, ma c' un modo sistematico per risolvere questo
problema? prima si usava il luogo delle radici e un monte di roba che non
sempre funziona! immagino ora di poter fare una retroazione dello stato

Retroazione dello stato

trattiamo sistemi lineari (che poi sono sistemi linearizzati) la legge di linearizzazione me la scelgo lineare quindi

H in realt una cosa in pi si mette prima dell'ingresso per pesare i valori di v, faccio in modo di farla
venire invertibile quindi! in molti casi la metter pari all'identit e bon.
la matrice K ha un'importanza molto pi marcata

Controllo dello stato Pagina 39


torniamo un attimo indietro quindi faccio questa retroazione prendo la u e la sostituisco

son cambiati i poli della funzione di trasferimento! ma non cambia la raggiungibilit

la nuova matrice A sar A + BK !!

tutto questo si pu scrivere come

conta solo questa parte! quindi la raggiungibilit non cambia effettivamente

rimane diagonale a blocchi quinid gli autovalori sono quelli dei vari
blocchi

autovalori di AR sono cambiati mentre quelli di AN no!!! ma allora gli autovalori non raggiungibili sono invarianti
per retroazione!!!! questo sistema indipendente dall'ingresso quindi posso fare tutte le retroazioni che mi pare
sull'ingresso, non gliene frega nulla.

se avr un'instabilit su autovalori irraggiungibili allora non potr mai stabilizzarli! prima dovrei renderlo
raggiungibile!! ad esempio mettendo un altro attuatore, motore, qualcosa che mi permetta di controllare quella
parte che non sto controllando.

l'altra parte invece possiamo completamente raggiungerla, qua la retroazione pu fare quello che voglio, potr
rendere stabile qualsiasi sistema instabile. sulla parte completamente raggiungibile posso spostare gli autovalori
dove voglio

N.B. se ho una parte irraggiungibile che asintoticamente stabile non devo per forza buttare via tutto! quelle
variabili seguiranno una loro evoluzione, ma alla fine vanno a 0

suppongo che A B sia raggiungibile completamente (se non lo fosse porto in forma canonica prendo
parte non raggiungibile guardo se stabile e non lo provo a stabilizzarla)

caso con 1 ingresso, quindi assumo A e B in forma canonica di controllo (se non lo sono ce li metto)

in pratica la matrice A nuova sempre in


forma canonica, potr quindi far cascare
gli autovalori dove voglio !!!!

Controllo dello stato Pagina 40


quindi voglio ottenere questo polinomio caratt.

questa matrice scritta in forma canonica di controllo! se voglio tornare nelle


condizioni del sistema di partenza non in forma canonica devo fare il cambio di
coordinate

tutto questo detto allocazione dei poli o degli autovalori , i poli sono un sottoinsieme degli autovalori del
sistema

Algoritmo di allocazione

poli del sistema di partenza

dove voglio spostare i poli

questa K mi definisce una retroazione positiva, basta mettere un - accanto per definire la retroazione negativa

se la matrice R ha qualche valore molto piccolo (quasi singolare) quando la inverto avr valori molto grandi,
questo potrebbe significare valori dell'attuatore molto elevati!!! in pratica posso avere parti pi o meno
raggiungibili.

questa soluzione non ben posta quando per piccole variazioni dei dati di ingresso si hanno valori molto diversi in
uscita, questa formula pu diventare instabile quando scelgo Pd in maniera sbagliata, se scelgo i poli desiderati
del sistema ad essere tutti molto vicini tra di loro , ad esempio

questo algoritmo diventa instabile numericamente!

la matrice K pu essere calcolata anche con un altro comando in matlab

questo funziona sempre

se posso applicare un controllo K volte x in base a quanto x sar distante da quello precedente avr una K grande,
questo comporter un controllo pi forte quindi attuatori pi forti!

Controllo dello stato Pagina 41


Cc non cambia, gli zeri quindi sono invarianti per retroazione, posso fare delle cancellazioni, ma in questo
modo la raggiungibilit del mio sistema non cambia

per capire se un sistema ha una parte ragg e una irragg. basta fare una K casuale quindi guardo gli autovalori di
A + BK se ce n' qualcuno uguale agli autovalori di A con probabilit 1 quelli sono del sistema non raggiungibile! se
non si sono mossi con una K qualsiasi. esiste una sola K che mi far mantenere fermo un autovalore che farebbe
parte della parte raggiungibile quindi se ne prendo una casuale non c' rischio di cadere proprio in quella

ADESSO SISTEMI MIMO

riorganizzo questa matrice in questo modo

in questo modo ho la raggiungibilit dei singoli ingressi! quindi applico gli algoritmi di prima, provando i vari
autovalori uno alla volta e ne trovo 1 che da solo mi porta la raggiungibilit allora sicuramente usandoli tutti
posso solo migliorare. il caso peggiore quando nessuno degli ingressi da solo controlla l'intero sistema, mettere
pi ingressi significa mettere pi attuatori

scelgo questa KHi in modo che accostandoci Bi il tutto venga completamente raggiungibile

Heymann dice che questo fattibile!

sostanzialmente ha un interesse teorico per dimostrare che possibile, ma non ha interesse pratico,
una procedura per costruire KHi

la versione migliore la seguente


invece di scegliere KHi come dice Heymann (che dice che esiste sempre!!!) prendo un'altra

mettendo una matrice K casuale ho sempre raggiungibilit! per non avere


questo dovrei avere la seguente cosa

dovrei beccare proprio una K che mi rende


il det=0!!! quasi impossibile

sto comunque andando ad usare una sola colonna di B quindi sto facendo il contorllore usando solo quello!

Controllo dello stato Pagina 42


il problema che sto sempre parlando di 1 solo controllore! devo usarli tutti e con un certo peso per capire quale
conviene usare di pi.
il peso sar dato in base al costo (vero e proprio in soldi) e in base al peso che avranno sul sistema (certi attuatori
avranno un'importnaza maggiore)

questo mi dar la soluzione migliore quindi praticamente uso questo, ma sotto quale
criterio?
il programma dar il solito peso a tutti gli ingressi sicuramente, quindi dovr fare qualcosa di meglio

da queste cose posso ricavare lo stato?

se riuscissi a ricavare lo stato solo dall'uscita non avrebbe senso studiare la dinamica (Dx) quindi sfrutto
anche la dinamica, devo vedere l'uscita in tanti istanti diversi nel tempo!

ad ogni istante di tempo avr p equazioni

in tempo continuo invece ad ogni istante ho p equazioni, ma dovr guardare in un certo intervallo (finito) ad
esempio tra 0 e T quindi infinite equazioni!

stato e uscita che dipendono da una certo istante iniziale da un certo ingresso ad un tempo t

posso trovare la x del tempo 0 osservando l'uscita? oppure trovarla al tempo t?

problema di osservabilit
problema di ricostruibilit
sono due problemi un pochino diversi

dal punto di vista puramente matematico non c' una distinzione, se sono in grado di ricavare lo stato iniziale
posso (conoscendo la dinamica) ricostruire il modo ottenendo lo stato al tempo t e viceversa.

nei sistemi tempo discreto non tutte le traiettorie sono ricostruibili all'indietro quindi cambia un pochino la
questione
questa ha uno spazio nullo, vuol dire che esistono pi stati iniziali che mi
portano a questo stato finale! quindi non c' biunivocit

Se ho due condizioni iniziali diverse che danno al stessa uscita su tutta una sequenza di istanti allora sar
impossibile dall'uscita trovare lo stato. chiamo indistinguibili due stati iniziali che hanno questa propriet

se sono indistinguibili anche per ogni t

posso definire l'insieme indistinguibile di x

Controllo dello stato Pagina 43


quindi considero uno stato iniziale x e uno x'

valuto la differenza

questa differenza non dipende dall'ingresso!

al tempo t=0 se la differenza tra i due stati iniziali sta nel nullo della matrice C (va nel ker) allora i due stati
porteranno ad una stessa uscita

al tempo t=1 dovrebbe stare nel nullo dio CA

passo t (fine intervallo)

l'insieme indistinguibile in t passi di x fatto come segue

se tutti questi sono 0 allora i due stati di partenza sono indistinguibili

matrice di osservabilit in t passi

in pratica se esiste un intersezione di tutti questi spazi nulli avr un insieme indistinguibile, altrimenti dico che il
mio sistema osservabile

i vari ker devono essere intersecati tra loro quindi la dimensione non pu crescere! comunque un sottospazio
lineare che chiamer sottospazio di inosservabilit

posso andare avanti quanto voglio, ma ad un certo punto avr CAn che combinazione lineare delle precedenti
quindi se non riesco a distinguere gli stati iniziali dopo n-1 passi non ci riuscir mai dopo

Matrice di osservabilit (quella di prima era in t passi)

osservabilit e raggiungibilit dei sistemi non lineari molto pi complicata rispetto ai sistemi lineari, la cosa
buona che gli ingressi non contano!
la osservabilit aumenta con il numero di passi che considero fino al passo n-1 (sono n passi perch il primo 0)

es.

Controllo dello stato Pagina 44


questo sistema non completamente osservabile, vediamo che al passo n-1=2 non otteniamo completa
osservabilit quindi

tutti i punti che cadono su questa retta andranno a generare la stessa uscita per ogni t

adesso proviamo nel continuo

tutte le derivate dovranno essere nulle

non considero nemmeno u tanto si


semplifica come si visto

quindi perch le uscite siano identiche tra i due punti:

anche qua k sarebbe infinito ma tanto non ha senso andare oltre n-1 sempre per lo stesso motivo.
N.B. qua non si parla di passi! questo a prescindere dalla lunghezza temporale del mio intervallo. quello che
osservabile in 1 secondo lo anche in 1 millisecondo.

osservabilit e ricostruibilit nei sistemi tempo continuo sono sinonimi

Controllo dello stato Pagina 45


abbiamo trovato delle condizioni che dicono quando il problema che ci interessa risolubile:
date le y posso ricostruire x?

abbiamo trovato che pur essendo diversi i tempo discreti e i tempo continui hanno la stessa caratterizzazione dello
spazio di osservabilit

sottospazio di

cambio coordinate

sto moltiplicando per una


matrice a rango pieno quindi la
dimensione del ker sar la
stessa! sar solo scritto in un
mi metto in una forma comoda come facevo per la raggiungibilit sistema diverso

per la raggiungibilit calcolavo i raggiungibili e complementavo con i non


raggiungibili

il pi grande sottospazio A invariante che appartiene al nullo di C

FORMA STANDARD DI OSSERVABILIT

se porto tutto in questa forma sistinguo due sistemi,

distinguo sottosistema osservabile e sottosistema non osservabile

l'uscita una parte del sistema non la vede proprio. ogni sottosistema ha i propri autovalori (autovalori esterni al
sottospazio di osservabilit cio quelli non osservabili e quelli interni al sottospazio di osservabilit quindi quelli
osservabili)

caso con cambio di sistema di riferimento

Controllo dello stato Pagina 46


no<n in pratica ho le due funzioni di trasferimento uguali, semplicemente nella seconda
alcuni poli si sono cancellati

nel cambio di coordinate troviamo tutti e soli gli autovalori interni al sottospazio di osservabilit e non interni
al sottospazio di non osservabilit

ipotizi: compeltamente osservabile

forma canonica di osservabilit!

forma compagna verticale destra

matrici ottenute per qualit dal polinomio caratteristico, in qualunque modo le abbia ottenute posso vedere
che rela

Iniezioni delle uscite sugli ingressi!

Controllo dello stato Pagina 47


Si dimostra per la forma canonica di osservabisnlit

il duale della raggiungibilit!!

se voglio trovare una L che piaza i poli nella posizione desiderata basta fare

uso gli stessi conti per la matrice di raggiungibilit e traspongo il tutto


tanto il modo di calcolarlo il solito

Controllo dello stato Pagina 48


la misurazione delle uscite non perfetta ma affetta da errore! ma questa cosa non stata considerata
fin ora
errore di modello, errore del sensore oppure semplicemente non posso apprezzare fino al punto che voglio
(sensibilit sensore bassa), situazioni tempo invarianti e non considerazioni di variabili quali pressione
temperatura ecc
per una pi corretta scelta per determinare lo stato iniziale devo introdurre un elemnto in pi nel mio modello,
ovvero un errore di misura

pi informazioni ho su questo delta y meglio sar!

T.D.

noti ingressi e modello possiamo dire di avere


l'evoluzione forzata

dobbiamo sempre ricavare


abbiamo molte pi equazioni linearmente indipendenti che variabili! quindi non risolvibile

posso trovare il valore di variabili che minimizza l'errore che otterr

problema ai minimi quadrati

Esercitazione Manolo Pagina 49


abbiamo visto che osservabilit e raggiungibilit sono propriet del sistema, anche cambiando il sistfema di
riferimento non cambia nulla

pu essere fatta questa divisione per entrambe le caratteristiche contemporaneamente

spazi di Raggiungibilit e non Osservabilit

dette TR e TO basi del sorrospazio R e O

voglio trovare le che appartengono al nullo di quella matrice

quindi queste due matrici che sono uguali sono entrmabe una possibile base
dello spazio intersezione tra lo spazio raggiungibile e quello inosservabile
N sono basi dello spazio raggiungibile e spazio dello spazio inosservabile

function P = base_intersect(M,N)

%p base di Im(M) Im(N)

p = null([M,N])
rm = size(M,2) %considero le colonne di M
p = M*p(1:rm,:)
p = orth(p); %non necessaria ma rende la matrice meglio condizionata

function P = base_compl(M,N) %M un sottospazio N una parte di quel sottospazio

%Im(N) Im(M)
%p

p = orth([N,M])
rn = rank(N)
p = p(:,rn+1:end) %togliendo le prime rango di n colonne ottengo una base complementare a quella dello spazio
iniziale
p = orth(p); %non necessaria ma rende la matrice meglio condizionata

avendo la base inosservabile posso trovare

divido lo spazio in sottospazi (in totale 4) R-O R-O R-O R-O

per la raggiungibilit

Osservabilit Raggiungibilit Pagina 50


scrivo questa T in questo modo

i pedici dicono da dove parte l'ingresso a quale parte arrivo, se


abbiamo 1 solo pedici (esempio RO) vuol dire che parte da l e
torna l

un sistema scritto in questo modo mi da informazioni


dirette sul sistema! in particolare le parti raggiungibili e
osservabili mi collegano l'ingresso con l'uscita

i blocchi sulla diagonale sono triangolari a blocchi quindi possiamo


valutare pi o meno (sI-A)-1

forma canonica di Calman


e da qua si vede che solo la parte osservabile e raggiungibile collega
ingresso e uscita

se eccito l'ingresso guardando l'uscita posso arrivare ad avere informazioni sul sistema, ma solo la parte
raggiungibile e osservabile!

andando a cancellare i poli con gli zeri ottengo una funzione di trasferimento detta COPRIMA

ma le funzioni di trasferimento sono non uniche per rappresentare lo stesso rapporto ingresso uscita!

abbiamo perso qualcosa

la funzione di trasferimento non rappresenta tutto! ci rappresenta il rapporto ingresso uscita, poasso avere due
sistemi (una massa spinta o un disco sollecitato a momento) possono dare la stessa t.f. ma effettivamente essere
fisicamente diversi.

qual la pi piccola forma di stato (numero di stati minore) che mi permette


di realizzare questa funzione di trasferimento?

data quindi una funzione di trasferimento COPRIMA avr bisogno almeno di un sistema con n(dimensione della
parte raggiungible osservabile) stati questi sono un sottoinsieme dello stato del sistema, nello specifico quelli
raggiungibili e osservabili

una realizzazione minima osservabile e raggiungibile

Osservabilit Raggiungibilit Pagina 51


se k1=0 cosa succede? come se togliessi la molla

infatti vediamo che dalla raggiungibilit posso agire solo sulla prima massa senza influenzare la seconda
guardando l'osservabilit mi rimane solo posizione e velocit della prima massa. questo ragionando sulla prima
uscita, guardiamo la seconda.

sempre sistema rango 2 per ragg e rango 2 per osservabilit, ma quello che posso osservare distinto da quello
che posso raggiungere! TRO vuota in questo caso. e infatti se provo a valutare la funzione di trasferimento

adesso la massa 2 non la vedo! cosa ha perso? osservabilit


raggiungibilit o entrambe? non posso vederlo da qua

in questo caso ottengo un sistema di ordine 4, p2 e p3 mi diventano


uguali quindi li posso raccogliere dalla funzione di trasferimento e
semplificare
in pratica significa che il corpo di sotto ha lo stesso moto del corpo di sopra indipendentemente dalla forza che
applico, sono per forza uguali perch hanno la stessa risposta in frequenza

per capire se ho perso osservabilit o raggiungibilit devo portarli nella forma di Callaman!!!

Osservabilit Raggiungibilit Pagina 52


quando si progettavano i controllori si scrivevano come funzione di trasferimento, ma poi andavano messi sul
sistema di stato!
ce ne sono infinite per molti motivi, se ho una realizzazione del mio sistema e aggiungo una parte non
raggiungibile o non osservabile in ogni caso quella rimane una realizzazione della mia funzione di trasferimento.
se faccio una realizzazione che completamente raggiungibile e osservabile questa quella che ha il minor
numero di stati possibili nella mia funzione di trasferimento.

se parto da una funzione di trasferimento in forma coprima con m poli mi dir che il mio stato avr dimensione m
(sistema in forma minima che sar raggiungibile e osservabile) ci sono molti modi per realizzare la f.d.t., nel caso
SISO abbiamo visto 2 metodi:

forma canonica di raggiungibilit


forma canonica di osservabilit

non sempre a priori so se una fdt coprima o no, in certi casi lo vedo, quindi semplifico poli con zeri e bon, ma in
altri non posso vedere!

porto nella forma canonica di raggiungibilit ad esempio quindi mi metto a studiare la raggiungibilit e vedo
subito se ci sono degli spazi non raggiungibili.

per cercare radici comuni ai due polinomi basta cercare lo spazio inosservabile quindi gli autovalori della matrice
di non osservabilit

la seguente operazione in grado di allocare gli autovalori nel sottosistema raggiungibile

un'operazione nella quale sommiamo alla forma di stato

questo termine non cambia la raggiungibilit, trasla solo gli autovalori

quando retroaziono l'uscita sugli ingressi non altero n raggiungibilit n osservabilit. questo non vuol dire che
non si muovano gli autovalori

se SISO esattamente come quello


visto allo scorso esame in anello chiuso

Osservatore Pagina 53
i poli tenderanno ad andare negli zeri all'aumentare del guadagno (in questo
caso corrisponde proprio ad L)

noi possiamo comandare u, i nostri attuatori motori e via dicendo dobbiamo fare una retroazione delle
uscite sugli ingressi

COMPOSIZIONE DI SISTEMI

possiamo metterli in serie o in parallelo

non detto che questo nuovo sistema sia completamente raggiungibile e osservabile, per quanto sia
partito da due sistemi coprimi

posso ragiunare sul rapporto ingresso uscita

numero di stati pari a n1+n2 dove n la


dimensione della matrice A

se si cancella tra uno zero di 2 e un polo di 1 ho per forza perso in osservabilit perch la raggiungibilit
rimane,

se provo il contrario la raggiungibilit che non pi valida (zero del primo con polo nel secondo)

tutto questo partendo anche da due sistemi raggiungibili e osservabili completamente

secondo caso connessione parallela

ricavo la R

Osservatore Pagina 54
facciamo approccio pi semplice

si sommano se nessuna cancellazione avr ordine del


primo pi il secondo polinomio quindi n1 +
n2

se non ci sono cancellazioni allora questa rappresentazione minima, adesso discuto le possibili cancellazioni

se si cancella una radice di d1, di sopra ho gi d1 quindi nei due addendi devo avere la stessa radice, in n1 non ci
pu essere perch coprimo con d1 quindi se c' una matrice comune tra d1 e d2 allora avr una cancellazione.
stesso identico discorso vale nel caso cancellassi un polo da d2

immagino che si cancelli per s=p allora

d1=d1(s-p)
d2=d2(s-p) questo che si cancellato corrisponde ad un autovalore, che propriet mi fa perdere? perdo
sia raggiungibilit che osservabilit!!!

quando guardo questo sistema complessivamente

se provo a fare R dei due autovalori solo 1 raggiungibile! la cancellazione ha


sicuramente tolto la raggiungibilit

lo riscrivo cos, quindi scrivo una realizzazione nello spazio di stato

quindi ho perso anche l'osservabilit

retroazione dei due sistemi

di solito almeno uno dei due 0

Osservatore Pagina 55
anche in questo caso si perde raggiungibilit e osservabilit

posso riscrivere il sistema cos

conosco la y ma non conosco la x quindi provo a stimarla, posso pensare di ottenerla attraverso un metodo che
usa l'uscita per darmi

Osservatore di Luenberyer
mi costruisco un altro sistema con le stesse matrici

sto usando solo modello ed ingresso, se non uso l'uscita non


faccio nulla di determinante!

uso l'uscita dicendo che: voglio che ci sia un termine che guidi questa stima e che dipenda dall'uscita
intera e da quella stimerei in base a questa e

il mio modello copia avr

differenza uscita vera e quella della stima

copio il sistema dinamico, non importante come fatto, pu essere anche un programma! basta che le
matrici siano le stesse del sistema dinamico, basta che l'uscita del sistema sia uguale a 0 in quel caso
allora lo avr emulato perfettamente

lo stato complessivo fatto da n+n variabili

Osservatore Pagina 56
la dinamica dell'errore e data da

se il sistema osservabile allora per ogni e(0) allora e(t) tender a 0

questo algoritmo rimpiazza l'idea di stima ottima, consiste nel copiare il sistema, chiaramente il sistema lo devo
conoscere quindi misuro le stime faccio una stima, controllo con le uscite nello stato attuale, alla fine se le uscite
coincidono significa gli stati sono uguali, questi potrebbero essere diversi solo se ci sono componenti non
osservabili

quindi ipotesi di OSSERVABILITA'

come si definisce la matrice L. pi a sinistra li metto pi velociemente raggiungo una buona stima dello stato,
questo lo posso fare anche in teoria in tempi arbitrariamente piccoli, se esagero in questo senso per (autoval di
A+LC).
se sposto molto gli autovalori di A+LC rispetto ad A devo fare L grande, ma il valore di L grande quindi: nella
vera uscita non ho solo il modello reale, ho anche effetto di disturbi delta (errori di misura) ma io non posso
metterlo nel mio sistema! se lo conoscessi on sarebbe un disturbo , in pratica L moltiplica anche l'effetto di
questo disturbo ritrovandomi una dinamica dell'errore LC nella stima del mio errore

avr dei limiti sulla scelta dei poli dell'osservatore, ovvero i poli di LC

detto tutto questo una volta fatto il sistema osservatore posso fare retroazione con x

cambio di sistema di coordinate per portarmi in una situazione pi comoda da studiare

Osservatore Pagina 57
gli autovalori del sistema ottenuto sono gli autovalori dei blocchi
quindi autovalori di A+BK e A+LC, scegliendo in modo giusto K e L
posso far cascare gli autovalori dove mi pare! quel sistema con
osservatore di leimberger pu essere stabile semplicemente
scegliendo K e L, l'idea pu quindi funzionare.

prendere lo stato osservato e usarlo come lo stato vero per fare la retroazione!!!

si pu costruire in tempo discreto un regolatore che mandi a 0 l'errore, non ad un asintoto! si pu


proprio mandare a 0.

vedi esempio pag. 140

guadagni

Osservatore Pagina 58
definiamo prima la funzione di trasferimen to quindi definiamo l'equazione di stato [num,den]

principio di separazione, posso studiare le due parti separatamente!

utilizzare solo retroazione non adeguato, quando diamo un gradino al sistema questo risponder con una sua
dinamica, all'inizio avremo un grande errore, quindi all'inizio abbiamo forti attuazioni.

dato un certo sistema in forma di stato e assegnato un certo andamento desiderato si possono ricavare "ottimi"
rispettando alcuni vincoli.
quando ho risolto questa parte vedo che si pu risparmiare! tutto in anello aperto

vorrei che questa y tendesse a quella ottimale!

quando y-y tende a zero il regolatore non entrer pi in gioco (entra 0) quindi
abbiamo raggiunto l'equilibrio

questo in anello aperto lo facevo, adesso lo riporto in anello chiuso

Pianificazione ottima:

si parte da definizione di sistema continuo quindi si passa a sistema discreto scelgiendo tempo di
campionamento e metodo di discretizzazione.
passo da una condizione iniziale ad una finale, nel caso di oggi vediamo una pianificazione a minimo costo si
vedr con il metodo della pseudoinversa e non ci preoccupiamo di altri problemi su ingressi o uscite

una volta calcolata la pianificazione ottima la applichiamo al sistema

per passare dal tempo continuo al tempo discreto si pu usare c2d (continuo to discreto)
c2d(sys,Ts,'zoh'); sistema tempo continuo, tempo di campionamento, metodo "zoh"

Esercitazione Pagina 59
mi serve il sistema nella forma di stato, quindi situazione iniziale x 0 e lo stato finale xf per arrivare al sistema in
tempo discreto.

la pianificazione ottima: nel sistema tempo discreto x al passo successivo pu essere determianto dalla dinamica
del sistema dallo stato precedente + il controllo

x1=ADx0+BDu0

questo lo faccio ricorsivamente ad ogni passo

devo quindi ricavare la matrice di raggiungibilit (ad esempio con un ciclo for ricorsivo)

il sistema partendo dalle condizioni iniziali X0 arriva ad Xf non abbiamo garanzie sul fatto che rimanga in
quello stato
possimao chiedere che lo stato al passo N e allo stato N+1 rimanga lo stesso

aggiungo quindi un nuovo passo (ipotizzo di arrivare con n+1 passi)

calcolare x di n+1 imporre che sia uguale a xf

quindi prendo la matrice di ragigungibilit al passo precedente e aggiunger A per l'ultima colonna
calcolata in n passi e questa la devo comporre in modo corretto con

Esercitazione Pagina 60
Abbiamo sistemi fortemente non lineari:

abbiamo parlato di stabilit di raggiungibilit osservabilit e regolazione.

la stabilit l'abbiamo studiata per sistemi non lineari

Robot di due tipi:

- robot articolati
- Veicoli robitici

configurazioni lagrangiane
forze generalizzate
attuatori
spazio operazionale (dove il compito viene svolto)

se ho configurazioni di questo tipo allora avr una energia cinetica

Altro esempio veicolo a 2 ruote

potrei avere pi soluzioni che mi risolvono il problema


(questa cinematica diretta)

posso trovarmi di fronte a 2 casi:

- senza vincoli

gli attuatori posso anche essere nulli, ad esempio potrei avere il secondo attuatore (tau 2) nullo.

se F(q) ha pieno rango il sistema completamente attuato altrimento sarebbe sottoattuato

Controlli di robot Pagina 61


le ruote le considero un vincolo cinematico ideale

alla fine importante che la velocit in direzione assiale delle ruote venga 0

fisicamente non possibile trovare una forma del tipo

se avessi una gamma di q potrei trovare 1 in funzione delle altre 2 quindi vorrebbe dire che le vere configurazioni
indipendenti di questo veicolo sarebbero 2 non 3, ma allora guardando la fisica questo veicolo vero che non pu
traslare in direzione assiale, ma non posso descriverlo con 2 coordinate! ho sempre bisogno di dare tutte e 3 le
condizioni separatamente. il vincolo sulle velocit e non integrabile, un vincolo anolonomo, se fosse stato
integrabile sarebbe stato olonomo

in pratica non si pu scrivere la dinamica

qua ho tutto generalizzato (ipotizzo n coordinate quindi n forze generalizzate)

ipotizzo di conoscere q e q punto e di non conoscere la derivata pi alta, in pi le forze generalizzate tante
quanti sono i vincoli

poi ho un'altra equazione quelle che mi mancano a risolvere

le velcoit possibili del mio sistema meccanico sono quelle che stanno nel nullo di A(q) quindi al suo ker, se
deve appartenere ad un sottospazio significa che lo posso costruire come una combinazione di una base di
questo sottospazio, quindi dico

dimensionalmente una velocit, ma integrandola non detto che ottenga qualcosa di sensato
fisicamente

S sono le direzioni lasciate libere dai vincoli

posso farlo perch le ruote non lo faccio girare, quindi lo


slittamento lo conto molto piccolo

ma in realt riesco a tenere tutto fermo se blocco gli attuatori! quindi il prblema
completamente attuato!! il confronto va fatto sulle forze generalizzate proiettate lungo i vincoli!

Controlli di robot Pagina 62


Controllo di postura

Controllo di Traiettoria

Controllo su percorso (path)

voglio che il robot arrivi ad una configurazione desiderata, ad esempio nel braccio dico che il mio braccio vada a
prendere un oggetto

nel secondo caso abbiamo una configurazione costante che per funzione del tempo, quindi inseguo un
percorso e voglio che ogni istante il mio robot sia in un punto diverso

ultimo chiedo che la configurazione del robot tenda ad un insieme in cui si verifica una certa equazione, ad
esempio una superficie in cui si annulla una certa equazione. ad esempio voglio che il braccio robotico segua un
percorso circolare per fare un taglio.

controllo di postura: mki chiedo, data una posizione desiderata del braccio robotico cosa posso fare

l'equazione dinamica

ipotizzo di conoscere la velocit, in pratica sarebbe il contrario, conosco gli attuatori e di conseguenza la
cinematica del problema, ma qua sto facendo un'astrazione

sicuramente non verr mai zero a causa di questa u

con qujesta scelta di aggiornamento delle velocit la dinamica dell'errore lineare


esponenzialmente convergente se k maggiore di 0 tanto pi ghrande k tanto pi
rapidamente converge l'esponenziale a 0

questo metodo funziona per risolvere il prblema della cinematica inversa perch posso ricavare una q, in
questo modo ricavo quel valore di q tale che

CLIK ( closed loop inverse kinematich)

Metodo di Levemberg-Marquardt

quando lambda grande nell'inversa viene l'identit quindi verrebbe


praticamente JTe

per lambda zero torno al caso precedente

si ricade nei due casi precedenti.

Controlli di robot Pagina 63


controllo cinematico su umanoide

cinematica diretta rispetto alle variabili di giunto q

candidata di Lyapunov e derivata vettoria che deve essere definita negativa

controllo molto semplice da impostare

legge di controllo JR rappresenta la pseudoinversa destra dello jacopiano

Ns deve appartenere al nullo di J

primo task ad esempio porta baricentro in un certo punto, secondo task porta la mano in quel punto, se ho N
appartenente al nullo di J allora i due task non entrano in conflitto

I+J1+J1 questa deve apparnere al nullo di J1

quindi il secondo task va


nel nullo del primo, in realt non una base del ker, per se premoltiplico
per un qualsiasi vettore mi andr nel vettore nullo

nella funzione cinematica diretta si trova gli elementi che servono per definire la funzione Q quindi la
posizione dei vari link

uguale per il centro di massa, si fa una media pesata

adesso vengono calcolati i jacobiani (derivata vettoriale)

getframe (estrapola video)

come risultato abbiamo le traiettorie dei vari giunti per controllare quello che voglio controllare. questo
sarebbe possibile farlo se avessimo accesso alle velocit, ma cos non ! abbiamo contorllo delle correnti
sui motori, devo sutidare la legge che porta da queste correnti alle velocit. quando controllo le
accelerazioni devo controllare il modello lagrangiano (6X6)

Controlli di robot Pagina 64


da un lato abbiamo la prestazione, vorremmo andare ai valori desiderati il pi rapidamente possibile, ma
non vogliamo spendere troppo per far questo quindi vediamo una tecnica (mi propongo un indice)

ho due parametri che mi pesano l'uscita e il controllo, voglio l'integrale pi piccolo possibile!

se ho un sistema mimo posso pesare con una matrice R

quale k mi permette di ottimizzare


quell'indice definito prima?

problema LQR dato p trovo K, ma quale p devo scegliere?

facendo lo studio sulla dinamica linearizzata non si vedranno gli effetti del secondo ordine!

la corrente che ho all'istante iniziale uguale a quella valutata all'istante finale

Nuova sezione 1 Pagina 65

Potrebbero piacerti anche