Stabilit`a
Transcript
Stabilit`a
SysDin [Ed. 2014, V 4.1 - PV - UniPG] - 4-169 Capitolo 4 Stabilità 4.1 Introduzione Una delle proprietà qualitative più importanti nello studio dei sistemi dinamici è quella di stabilità, che corrisponde alla discussione della seguente domanda: come reagisce un sistema dinamico che, trovandosi in uno stato di quiete (stato di equilibrio), viene sottoposto ad una perturbazione che lo sposta da tale stato? Lo studio della stabilità ha le sue origine nei lavori pionieristici, ed indipendenti, di A.M. Lyapunov1 e di J.H. Poincaré2, agli inizi del secolo scorso. L’idea principale dei due ricercatori è quella di studiare le proprietà qualitative di un insieme di soluzioni di un’equazione differenziale, senza procedere all’effettivo calcolo delle soluzioni stesse, sia in forma chiusa sia in forma numerica. 4.2 Definizione di stabilità Lo studio della stabilità è centrato intorno al concetto di punto di equilibrio. Un punto xe dello spazio di stato di un sistema dinamico è punto di equilibrio o stato di equilibrio se il sistema rimane in quiete nel punto indefinitamente, eventualmente sotto l’effetto di un segnale di ingresso costante. Si consideri il sistema dinamico non lineare: ẋ = f (x, u), x ∈ Rn , (4.1) e sia x(t) = x(t, t0 , x0 , u(·)) lo stato del sistema (cioè, la soluzione dell’equazione differenziale) all’istante t, a partire dallo stato x0 all’istante iniziale t0 , sotto l’effetto del segnale di ingresso u(·). Un punto xe è punto di equilibrio per il sistema dinamico (4.1), sotto l’effetto del segnale di ingresso costante u(t) = ue , ∀t ≥ t0 , se e solo se: xe = x(t, t0 , xe , ue ), ∀t ≥ t0 . (4.2) Se xe è punto di equilibrio, la condizione (4.2) implica, per un sistema dinamico a tempo continuo, ẋe = 0, e quindi i punti di equilibrio del sistema (4.1), per ingresso costante ue , sono tutte, e sole, le soluzione reali dell’equazione algebrica: f (xe , ue ) = 0. (4.3) Commento 4.1 Si noti che il caso di un sistema dinamico caratterizzato da un punto di equilibrio xe distinto dall’origine e relativo ad un segnale di ingresso costante non nullo ue , può sempre essere ricondotto al caso di un sistema dinamico autonomo (cioè, senza forzamento) con equilibrio nell’origine. Infatti, sia xe 6= 0 punto di equilibrio per il sistema (4.1) per ingresso ue 6= 0. Si consideri come nuovo vettore di stato z := x − xe e come nuovo ingresso il segnale v := u − ue . Il sistema dinamico ż = f¯(z, v), f¯(z, v) := f (z + xe , v + ue ) (4.4) ha quindi un punto di equilibrio nell’origine relativo ad ingresso nullo, poiché f¯(0, 0) = f (xe , ue ) = 0. Non è insomma restrittivo limitare l’analisi al caso di un sistema autonomo con equilibrio nell’origine. La precedente affermazione diviene particolarmente importante nei sistemi lineari, come si vedrà più avanti. 1 Aleksandr 2 Jules Michajlovič Ljapunov (Jaroslavl, 1857 - Odessa, 1918) Henry Poincaré, Nancy, 1854 - Parigi, 1912) Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-170 Analogamente a quanto visto nella condizione (4.3), i punti di equilibrio di un sistema dinamico a tempo discreto descritto dall’equazione alle differenze finite: x(t + 1) = f (x(t), u(t)), x ∈ Rn , t ∈ Z, (4.5) per i quali vale ancora la condizione di equilibrio (4.2), possono essere determinati sulla base delle soluzioni reali dell’equazione algebrica: xe = f (xe , ue ). (4.6) Anche in questo caso, l’analisi può essere limitata al caso di un equilibrio nell’origine per un sistema autonomo. Nel seguito, per semplicità di notazione, il generico sistema dinamico di interesse, sia a tempo continuo sia a tempo discreto, verrà indicato con la notazione unificata: ∆x(t) = f (x, u), x ∈ Rn , t ∈ T . (4.7) Nel caso di un sistema a tempo continuo l’operatore ∆ indica la derivata prima rispetto al tempo e T = R, nel caso di un sistema a tempo discreto l’operatore ∆ indica un anticipo temporale di un passo e T = Z. Con abuso di notazione, si scriverà anche f (xe , ue ) = ∆xe per indicare una condizione di equilibrio sia a tempo continuo sia a tempo discreto. La coppia di valori (xe , ue ) verrà indicata anche con il termine punto di lavoro del sistema. L’evoluzione del sistema (4.7) a partire da una generica condizione iniziale x0 6= xe , interpretata come una perturbazione rispetto all’equilibrio, sotto l’effetto del segnale di ingresso costante ue tale che f (xe , ue ) = ∆xe , e descritta dalla relazione generale x(t) = x(t, t0 , x0 , ue ), verrà chiamata evoluzione perturbata o traiettoria perturbata ed indicata brevemente come xp (t), xp (t) := x(t, t0 , x0 , ue ). La stabilità di un punto di equilibrio di un sistema dinamico concerne il comportamento del sistema stesso se perturbato rispetto al suo stato di equilibrio. La domanda principale cui fornisce risposta la teoria della stabilità è: cosa accade al moto di un sistema dinamico, in quiete in un punto di equilibrio, se il sistema, per effetto di una piccola perturbazione, viene spostato dallo stato dall’equilibrio? Un esempio classico è quello di una massa puntiforme posta su di una superficie con minimi e massimi locali, come indicato in figura 4.1. Nel caso di una massa in quiete in corrispondenza di un minimo, una piccola perturbazione dello stato del sistema, ad esempio una lieve variazione della posizione o della velocità, porta ad un moto che non si allontanerà molto dalla posizione di equilibrio, e tale moto sarà tanto più prossimo all’equilibrio quanto minore sarà la perturbazione iniziale. Un comportamento di questo tipo corrisponde ad un equilibrio stabile. Se inoltre il moto del punto materiale tende a tornare, asintoticamente, sul punto di equilibrio, ad esempio perchè il sistema è caratterizzato anche da forze dissipative, come l’attrito, si parla di punto di equilibrio asintoticamente stabile. Figura 4.1: Punti di equilibrio Viceversa, una perturbazione, comunque piccola, allo stato di una massa puntiforme in equilibrio in corrispondenza di un massimo produrrà un moto che si allontanerà in modo definito dall’equilibrio stesso, senza alcuna possibilità di rimanere confinato in un intorno del punto di equilibrio. Un comportamento di questo tipo corrisponde ad un equilibrio non stabile, o instabile. Si noti che, nell’esempio citato, l’evoluzione perturbata relativa ad un equilibrio instabile potrebbe finire in prossimità di un equilibrio stabile: l’instabilità insomma non implica necessariamente comportamenti che tendono ad infinito. Le precedenti definizione informali di punti di equilibrio stabili, asintoticamente stabili ed instabili possono essere poste in termini formali, nel contesto della stabilità á la Lyapunov. Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-171 Le definizioni che seguono in questa sezione sono applicabili sia al caso dei sistemi a tempo continuo che a quello dei sistemi a tempo discreto. La norma utilizzata nel seguito si può assumere essere la consueta norma L2 (Euclidea), sebbene tutte le norme siano equivalenti (in spazi finito dimensionali). Definizione 4.1 (Equilibrio stabile) Un punto di equilibrio xe di un sistema ∆x = f (x, u) è detto punto di equilibrio stabile se, per ogni ǫ > 0, esiste un δ > 0 tale che, per ogni condizione iniziale x0 : kx0 − xe k < δ, ne segue che kxp (t) − xe k < ǫ, ∀t > t0 , xp (t) := x(t, t0 , x0 , ue ). x(t) ǫ x0 xe δ Figura 4.2: Punto di equilibrio stabile Un secondo concetto importante è quello di convergenza. Definizione 4.2 (Equilibrio convergente) Un punto di equilibrio xe di un sistema ∆x = f (x, u) è detto punto di equilibrio convergente se esiste un δ > 0, tale che, per ogni condizione iniziale x0 : kx0 − xe k < δ, ne segue che limt→∞ kxp (t) − xe k = 0, xp (t) := x(t, t0 , x0 , ue ). x(t) δ x0 xe Figura 4.3: Punto di equilibrio convergente La proprietà di convergenza descrive un comportamento asintotico, senza fornire indicazioni sul comportamento transitorio: un punto convergente non è necessariamente stabile. Definizione 4.3 (Equilibrio asintoticamente stabile) Un punto di equilibrio xe di un sistema ∆x = f (x, u) è detto punto di equilibrio asintoticamente stabile se è sia stabile sia convergente. Definizione 4.4 (Equilibrio non stabile) Un punto di equilibrio xe di un sistema ∆x = f (x, u) è detto punto di equilibrio non stabile (o instabile) se non è stabile. Concetti di stabilità analoghi a quelli visti per punti di equilibrio possono essere introdotti anche per moti e traiettorie. In queste note ci si limita allo studio di punti, rimandando ad altri testi per tali estensioni. Sulla base delle definizioni di stabilità date, possono essere introdotti criteri di stabilità di diversa natura. Nel seguito verranno presentati criteri validi per sistemi dinamici lineari, e poi si passerà allo studio di sistemi non lineari. Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-172 x(t) ǫ x0 xe δ Figura 4.4: Punto di equilibrio asintoticamente stabile 4.3 Stabilità di sistemi lineari Si consideri un sistema lineare a tempo continuo, stazionario: ẋ = Ax + Bu, x ∈ Rn , u ∈ Rm . (4.8) I punti di equilibrio di tale sistema sono dati dalla soluzione del sistema omogeneo algebrico: Axe + Bue = 0. (4.9) Nel caso particolare di un sistema omogeneo, e quindi descritto da ẋ = Ax, x ∈ Rn , (4.10) la totalità dei punti di equilibrio è data dalle soluzioni del sistema omogeneo: Axe = 0, (4.11) tra le quali è sempre presente la soluzione nulla, e quindi l’origine è sempre punto di equilibrio di un sistema lineare, a tempo continuo, omogeneo. L’esistenza di ulteriori punti di equilibrio è legata alla dimensione del nucleo della matrice A: se tale sottospazio ha dimensione non nulla, il sistema ha infiniti punti di equilibrio. Si noti che tale sottospazio coincide con l’autospazio associato all’autovalore nullo. Si può enunciare il seguente lemma: Lemma 4.1 In un sistema lineare, a tempo continuo, stazionario ed omogeneo, l’origine è sempre punto di equilibrio, ed è unico se il sistema non ha autovalori nulli. Se il sistema ha uno o più autovalori nell’origine, esso ammette infiniti punti di equilibrio, dati dall’intero autospazio associato all’autovalore nullo. Nel caso dei sistemi a tempo discreto si ha una situazione simile. Dato un sistema LSTD: x(t + 1) = Ax + Bu, x ∈ Rn , u ∈ Rm , t ∈ Z, (4.12) i sui punti di equilibrio sono dati dalla soluzione del sistema omogeneo algebrico: Axe + Bue = xe . (4.13) Nel caso particolare di un sistema omogeneo, e quindi descritto da x(t + 1) = Ax, x ∈ Rn , t ∈ Z, (4.14) la totalità dei punti di equilibrio è data dalle soluzioni del sistema omogeneo: Axe = xe ⇔ (I − A)xe = 0, (4.15) tra le quali è sempre presente la soluzione nulla, e quindi l’origine è sempre punto di equilibrio di un sistema lineare, a tempo discreto, omogeneo. L’esistenza di ulteriori punti di equilibrio è legata alla dimensione del nucleo della matrice (I − A): se tale sottospazio ha dimensione non nulla, il sistema ha infiniti punti di equilibrio. Si noti che tale sottospazio coincide con l’autospazio associato all’autovalore pari ad uno. Si può enunciare il seguente lemma: Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-173 Lemma 4.2 In un sistema lineare, a tempo discreto, stazionario ed omogeneo, l’origine è sempre punto di equilibrio, ed è unico se il sistema non ha autovalori unitari. Se il sistema ha uno o più autovalori unitari (λ = 1), esso ammette infiniti punti di equilibrio, dati dall’intero autospazio associato all’autovalore pari ad uno. Nel caso dei sistemi lineari, la forma della soluzione dell’equazione differenziale può essere determinata nel caso generale, ed è data dalla ben nota funzione esponenziale matriciale: x(t) = e At x0 , t ∈ R, (4.16) nel caso a tempo continuo e dalla forma “esponenziale” corrispondente: x(t) = At x0 , t ∈ Z, (4.17) nel caso dei sistemi a tempo discreto. In entrambi i casi, l’esponenziale di matrice contiene tutti i modi naturali del sistema. Il comportamento transitorio ed asintotico della soluzione dipende quindi, come già ben noto, dalle caratteristiche di convergenza dei modi naturali. Si ricordi che la condizione iniziale x0 , che descrive l’effetto della perturbazione iniziale, appare come termine moltiplicativo della risposta libera nello stato. La definizione (4.1) di stabilità di un punto di equilibrio, specializzata al caso dell’origine, diviene: Definizione 4.5 (Stabilità dell’origine per un sistema lineare omogeneo) L’origine xe = 0 è punto di equilibrio stabile per un sistema lineare omogeneo ∆x = Ax se per ogni ǫ > 0 esiste un δ > 0 tale che, per ogni condizione iniziale kx0 k < δ, si abbia kxp (t)k < ǫ, ∀t ≥ t0 . La traiettoria perturbata in questo caso corrisponde ad una risposta libera nello stato. Intuitivamente, si avrà il comportamento descritto nella definizione se, e solo se, tutti i modi naturali del sistema sono limitati o convergenti. Più precisamente, indicata con kM k la norma indotta3 sulla matrice M dalla norma vettoriale in uso, e ricordando che kM vk ≤ kM k · kvk, si può scrivere: kxp (t)k kxp (t)k = k expAt x0 k ≤ k expAt kkx0 k, ∀t ≥ t0 , t ∈ R, = kAt x0 k ≤ kAt kkx0 k, ∀t ≥ t0 , t ∈ Z. (4.18) (4.19) Sia nel caso dei sistemi a tempo continuo, sia nel caso dei sistemi a tempo discreto, ne segue che l’origine è un punto di equilibrio stabile se la norma dell’esponenziale di matrice è limitata per tutti i valori del tempo. Poichè tale matrice contiene tutti i modi naturali del sistema, la presenza anche di un solo modo divergente rende non limitata la norma, e quindi non stabile l’origine. Ne segue il seguente criterio: Lemma 4.3 (Criterio di stabilità dell’origine per un sistema lineare omogeneo) L’origine dello spazio di stato è punto di equilibrio stabile per un sistema lineare omogeneo ∆x = Ax se e solo se tutti i modi naturali del sistema sono limitati o convergenti. Il criterio può essere specializzato al caso dei sistemi a tempo continuo e di quelli a tempo discreto per il tramite delle seguenti formulazioni specifiche. Si ricorda che lo spettro di una matrice A, indicato con sp(A), costitutisce l’insieme di tutti i suoi autovalori, che la molteplicità algebrica di un autovalore è indicata con µ e la molteplicità geometrica con ν. Teorema 4.1 (Criterio di stabilità dell’origine per sistemi lineari omogenei a tempo continuo) L’origine dello spazio di stato è punto di equilibrio stabile per un sistema lineare omogeneo a tempo continuo ẋ = Ax se e solo se tutti i modi naturali del sistema sono limitati o convergenti, e cioè se e solo se valgono entrambe le condizioni: Re(λ) ≤ 0, ∀λ ∈ sp(A), (4.20a) ∀λ ∈ sp(A) : Re(λ) = 0, ⇒ µ = ν. 3 Assunta una norma kvk per i vettori di uno spazio kAvk maxv = maxkvk=1 kAvk kvk Rn , si dice norma indotta di una matrice M ∈ (4.20b) Rn×n la quantità: Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-174 Infatti, ad autovalori con parte reale negativa corrispondono modi naturali convergenti, per la presenza di un termine esponenziale reale con parametro pari proprio alla parte reale dell’autovalore, e ad autovalori con parte reale nulla e molteplicità algebrica e geometrica uguali corrispondono modi naturali limitati (funzioni a gradino o funzioni co/sinusoidali). In modo analogo, per i sistemi a tempo discreto. Teorema 4.2 (Criterio di stabilità dell’origine per sistemi lineari omogenei a tempo discreto) L’origine dello spazio di stato è punto di equilibrio stabile per un sistema lineare omogeneo a tempo discreto x(t+ 1) = Ax se e solo se tutti i modi naturali del sistema sono limitati o convergenti, e cioè se e solo se valgono entrambe le condizioni: |λ| ≤ 1, ∀λ ∈ sp(A), ∀λ ∈ sp(A) : |λ| = 1, ⇒ µ = ν. (4.21a) (4.21b) Infatti, ad autovalori con modulo minore di uno corrispondono modi naturali convergenti, per la presenza di un termine “esponenziale a tempo discreto” reale, del tipo σ t , con parametro pari proprio al modulo dell’autovalore, e ad autovalori con modulo unitario e molteplicità algebrica e geometrica uguali corrispondono modi naturali limitati (funzioni a gradino o funzioni periodiche). Si consideri ora la definizione di punto di equilibrio convergente, adattandola allo studio dell’origine di un sistema lineare. Definizione 4.6 (Convergenza dell’origine per un sistema lineare omogeneo) L’origine xe = 0 è punto di equilibrio convergente per un sistema lineare omogeneo ∆x = Ax se esiste un δ > 0 tale che, per ogni condizione iniziale kx0 k < δ, ne segue che limt→∞ kxp (t)k = 0. Intuitivamente, si avrà il comportamento descritto nella definizione se, e solo se, tutti i modi naturali del sistema sono convergenti. Ricordando le relazioni (4.18) e (4.19), si trova che, sia nel caso dei sistemi a tempo continuo, sia nel caso dei sistemi a tempo discreto, l’origine è un punto di equilibrio convergente se la norma dell’esponenziale di matrice è convergente a zero asintoticamente. Poichè tale matrice contiene tutti i modi naturali del sistema, la presenza anche di un solo modo divergente o limitato rende non convergente la norma, e quindi non convergente l’origine. Ne segue il seguente criterio: Lemma 4.4 (Criterio di convergenza dell’origine per un sistema lineare omogeneo) L’origine dello spazio di stato è punto di equilibrio convergente per un sistema lineare omogeneo ∆x = Ax se e solo se tutti i modi naturali del sistema sono convergenti. Si noti che la classe di sistemi per i quali l’origine è convergente è strettamente contenuta nella classe dei sistemi per i quali l’origine è punto di equilibrio stabile. Ne consegue che, limitatamente ai sistemi lineari, la convergenza implica la stabilità, e quindi la stabilità asintotica. Ciò è sintetizzato dal seguente risultato. Lemma 4.5 (Criterio di stabilità asintotica dell’origine per un sistema lineare omogeneo) L’origine dello spazio di stato è punto di equilibrio asintoticamente stabile per un sistema lineare omogeneo ∆x = Ax se e solo se tutti i modi naturali del sistema sono convergenti. Il criterio precedente può essere specializzato al caso dei sistemi stazionari a tempo continuo (TC) e di quelli a tempo discreto (TD) per il tramite delle seguenti formulazioni specifiche. Teorema 4.3 (Criterio di stabilità asintotica dell’origine per sistemi omogenei LSTC) L’origine dello spazio di stato è punto di equilibrio asintoticamente stabile per un sistema lineare stazionario omogeneo a tempo continuo ẋ = Ax se e solo se tutti i modi naturali del sistema sono convergenti, e cioè se e solo se vale la condizione: Re(λ) < 0, ∀λ ∈ sp(A). (4.22) In modo analogo, per i sistemi a tempo discreto. Teorema 4.4 (Criterio di stabilità asintotica dell’origine per sistemi omogenei LSTD) L’origine dello spazio di stato è punto di equilibrio asintoticamente stabile per un sistema lineare stazionario omogeneo a tempo discreto x(t + 1) = Ax se e solo se tutti i modi naturali del sistema sono convergenti, e cioè se e solo se vale la condizione: |λ| < 1, ∀λ ∈ sp(A). (4.23) Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-175 Commento 4.2 Si noti come, nel caso dei sistemi lineari, le proprietà di stabilità siano globali, e in particolare la perturbazione impressa allo stato iniziale, caratterizzata dal reale δ nelle definizioni, possa essere arbitrariamente grande. Nel caso dei sistemi lineari, specializzando il contenuto del commento 4.1, è facile vedere che se un sistema, anche non omogeneo, ammette molti (e quindi infiniti) punti di equilibrio, questi hanno tutti le stesse proprietà di stabilità dell’origine del sistema omogeneo associato. Ne segue che, limitatamente al caso lineare, le proprietà di stabilità dell’origine vengono attribuite anche all’intero sistema, e si parla quindi di sistemi stabili, sistemi asintoticamente stabili e sistemi instabili, in funzione della collocazione degli autovalori nel piano complesso definita nei criteri di stablità dell’origine riportati in precedenza. 4.3.1 L’equazione di Lyapunov Per lo studio della stabilità di sistemi lineari à disponibile anche un risultato che si rivela interessante in sede di progetto di controllori stabilizzanti, sia per sistemi lineari sia per sistemi non lineari: l’equazione di Lyapunov. Si ricorda la seguente definizione. Definizione 4.7 (Matrice definita positiva) Una matrice quadrata, reale e simmetrica M , di dimensioni n × n, è detta definita positiva se la forma quadratica xT M x, x ∈ Rn , è definita positiva. Si consideri il sistema LSTC omogeneo in (4.10). Si ha il seguente teorema. Teorema 4.5 (Equazione di Lyapunov per sistemi LSTC omogenei) Il sistema lineare, stazionario, a tempo continuo, omogeneo ẋ = Ax, x ∈ Rn , (4.24) è asintoticamente stabile se e solo se, per ogni matrice Q simmetrica e definita positiva, l’equazione matriciale lineare: AT P + P A = −Q (4.25) nella matrice incognita P , quadrata, reale, simmetrica e definita positiva, ammette una soluzione simmetrica e definita positiva. L’equazione (4.25) è detta appunto equazione di Lyapunov a tempo continuo. Per i sistemi a tempo discreto vale un risultato analogo. La corrispondente equazione è detta equazione di Lyapunov a tempo discreto. Teorema 4.6 (Equazione di Lyapunov per sistemi LSTD omogenei) Il sistema lineare, stazionario, a tempo discreto, omogeneo x(k + 1) = Ax, x ∈ Rn , (4.26) è asintoticamente stabile se e solo se, per ogni matrice Q simmetrica e definita positiva, l’equazione matriciale lineare: AT P A − P = −Q (4.27) nella matrice incognita P , quadrata, reale, simmetrica e definita positiva, ammette una soluzione simmetrica e definita positiva. 4.4 Il criterio ridotto di Lyapunov per sistemi non lineari Lo studio della stabilità di punti di equilibrio per sistemi non lineari può essere condotta, in prima approssimazione, studiando il comportamento, intorno al punto stesso, di una versione approssimata del sistema dinamico. Si consideri un sistema non lineare ∆x = f (x, u), x ∈ Rn , u ∈ Rm , (4.28) e sia xe un punto di equilibrio per tale sistema, cioè, tale che ∆xe = f (xe , ue ). Il punto di equilibrio xe può essere preso come punto iniziale per un’espansione in serie di Taylor della funzione f (x, u). Indicati con δx := x − xe Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-176 e δu = u − ue gli scostamenti rispetto all’equilibrio dello stato interno del sistema e del segnale di ingresso, lo sviluppo in serie di Taylor della funzione vettoriale f (x, u) è dato da: ∂f (x, u) ∂f (x, u) δx + δu + r(δx, δu, xe , ue ) (4.29) f (x, u) = f (xe , ue ) + ∂x x=xe ∂u x=xe u=ue u=ue dove r(δx, δu, xe , ue ) indica il resto dello sviluppo in serie. Poiché esso contiene solo termini di ordine superiore al primo in δx e δu, costituisce un infinitesimo di ordine superiore rispetto ai due incrementi, e cioè: lim δx→0 kr(δx, δu, xe , ue )k = 0, kδxk lim δu→0 kr(δx, δu, xe , ue )k = 0. kδuk (4.30) ∂f (x, u) , di dimensioni n×n, è detta matrice jacobiana della funzione vettoriale (più precisamente, ∂x ∂f (x, u) , di dimensioni n×m, è detta matrice jacobiana del campo vettoriale) f (x, u) rispetto ad x, ed il termine ∂u della funzione vettoriale f (x, u) rispetto ad u. Valutando le due matrici jacobiane in corrispondenza del punto di lavoro (xe , ue ) si ottengono due matrici ad elementi reali, indicate con A e B per analogia con il caso lineare: ∂f (x, u) ∂f (x, u) , B := . (4.31) A := ∂x x=xe ∂u x=xe Il termine u=ue u=ue Il campo vettoriale f (x, u), in un intorno del punto di lavoro, può quindi essere approssimato come: f (x, u) ≃ f (xe , ue ) + Aδx + Bδu. (4.32) Ne consegue che il sistema non lineare (4.28), in un intorno del punto di lavoro (xe , ue ), è descritto dal modello lineare approssimato: ∆δx = Aδx + Bδu, (4.33) ed i particolare ˙ = Aδx + Bδu, δx (4.34) δx(t + 1) = Aδx + Bδu, (4.35) per un sistema a tempo continuo e per un sistema a tempo discreto. Commento 4.3 Si precisa che i modelli lineari (4.34) e (4.35) descrivono l’evoluzione approssimata dello scostamento δx tra l’andamento effettivo dello stato x(t) del sistema nonlineare ed il corrispondente punto di equilibrio. Di per sé, quindi, l’utilizzo dello stesso simbolo δx nelle (4.34) e (4.35) e nella definizione δx := x − xe non è completamento corretto. Si procede nel modo proposto per semplicità di notazione. Le proprietà di stabilità dell’approssimazione lineare (più formalmente, della sua origine), possono essere utilizzate per caratterizzare, per piccole perturbazioni, le proprietà di stabilità del punto di equilibrio del sistema non lineare originale. L’idea alla base di tale risultato deriva dal fatto che, in un intorno sufficientemente piccolo dell’origine, un termine lineare non identicamente nullo cresce più velocemente di qualsiasi termine polinomiale di ordine superiore al primo. Purtroppo, se tale termine lineare è nullo (cioè, con coefficiente angolare nullo), la crescita è imposta dai termini di ordine superiore. Tali idee qualitative possono essere raccolte nel seguente teorema, detto criterio ridotto di Lyapunov, formulabile come segue per un generico sistema, e specializzato nel seguito tenendo conto della natura del tempo. Teorema 4.7 (Criterio ridotto di Lyapunov) Sia (xe , ue ) un punto di lavoro per un sistema non lineare ∆x = f (x, u), e sia ∆δx = Aδx l’approssimazione lineare di tale sistema intorno al punto di lavoro, calcolata secondo le relazioni (4.31). Allora, il punto xe è punto di equilibrio: 1. asintoticamente stabile, se tutti i modi naturali dell’approssimazione lineare sono convergenti (cioè, se l’approssimazione lineare è asintoticamente stabile); 2. instabile, se l’approssimazione lineare ha almeno un modo naturale divergente (cioè, se l’approssimazione lineare è instabile); Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-177 3. critico (caso critico) se l’approssimazione lineare ha uno o più modi naturali limitati e gli altri convergenti (cioè, se l’approssimazione lineare è semplicemente stabile). Si precisa che la dizione caso critico indica che il criterio ridotto non è in grado di fornire risposte significative, poiché il comportamento del sistema in un intorno del punto di lavoro è caratterizzato dai termini di ordine superiore al primo, che sono stati trascurati nella costruzione della approssimazione lineare. Si vedano, in proposito, i successivi esempi 4.1 ed 4.2. Il criterio ridotto può essere formulato in modo più specifico in funzione della natura dei sistemi. Per la classe dei sistemi non lineari a tempo continuo si ha il seguente teorema. Teorema 4.8 (Criterio ridotto di Lyapunov per sistema a tempo continuo) ˙ = Aδx l’approssimazione Sia (xe , ue ) un punto di lavoro per un sistema non lineare ẋ = f (x, u), e sia δx lineare di tale sistema intorno al punto di lavoro, calcolata secondo le relazioni (4.31). Allora, il punto xe è punto di equilibrio: 1. asintoticamente stabile, se tutti gli autovalori dell’approssimazione lineare hanno parte reale negativa (cioè, se l’approssimazione lineare è asintoticamente stabile); 2. instabile, se almeno un autovalore dell’approssimazione lineare ha parte reale positiva (cioè, se l’approssimazione lineare è instabile); 3. critico (caso critico) se l’approssimazione lineare ha uno o più autovalori con parte reale nulla e tutti gli altri con parte reale negativa (cioè, se l’approssimazione lineare è semplicemente stabile). Nel caso dei sistemi non lineari a tempo discreto si ha invece il seguente teorema. Teorema 4.9 (Criterio ridotto di Lyapunov per sistema a tempo discreto) Sia (xe , ue ) un punto di lavoro per un sistema non lineare x(t + 1) = f (x, u), e sia δx(t + 1) = Aδx l’approssimazione lineare di tale sistema intorno al punto di lavoro, calcolata secondo le relazioni (4.31). Allora, il punto xe è punto di equilibrio: 1. asintoticamente stabile, se tutti gli autovalori dell’approssimazione lineare hanno modulo minore di uno (cioè, se l’approssimazione lineare è asintoticamente stabile); 2. instabile, se almeno un autovalore dell’approssimazione lineare ha modulo maggiore di uno (cioè, se l’approssimazione lineare è instabile); 3. critico (caso critico) se l’approssimazione lineare ha uno o più autovalori con modulo unitario e tutti gli altri con modulo minore di uno (cioè, se l’approssimazione lineare è semplicemente stabile). 4.5 Il metodo diretto di Lyapunov per sistemi non lineari Lo studio delle proprietà di stabilità di punti di equilibrio può essere condotto anche utilizzando il metodo diretto di Lyapunov, o secondo metodo di Lyapunov, cosı̀ chiamato perché basato direttamente sulla equazione differenziale che regola il moto, e non sulla sua soluzione. L’idea del metodo deriva (probabilmente, [9]) da un risultato di Lagrange, intorno al 1800: se in una certa posizione di riposo un sistema meccanico conservativo ha un minimo di energia potenziale, allora l’equilibrio è stabile; se la posizione di equilibrio non corrisponde ad un minimo dell’energia potenziale, allora l’equilibrio è instabile (si veda la citata figura 4.1). Il criterio diretto di Lyapunov estende le considerazioni qualitative sulla energia potenziale di un sistema, introducendo una sorta di generalizzazione della funzione energia, detta funzione candidata di Lyapunov. Nel seguito, senza perdere di generalità in base a quanto già detto nel commento 4.1, si tratterà solo il caso di equilibrio nell’origine per sistemi non lineari omogenei. I teoremi di stabilità di Lyapunov sono basati su particolari classi di funzioni, ben definite in segno. Nel seguito, W indicherà un intorno dell’origine dello spazio vettoriale Rn . Di norma i risultati saranno locali, appunto validi solo in un intorno dell’origine. In alcuni casi, può accadere che l’intorno possa essere esteso all’intero spazio di stato: in tal caso i risultati sono detti globali. Definizione 4.8 (Funzione definita positiva) Una funzione continua V (x) : W → R è detta definita positiva (d.p.) nell’insieme W contenente l’origine, se: Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-178 1. V (0) = 0, 2. V (x) > 0, per tutti i punti x 6= 0, x ∈ W. Definizione 4.9 (Funzione semidefinita positiva) Una funzione continua V (x) : W → R è detta semidefinita positiva (s.d.p.) nell’insieme W contenente l’origine, se: 1. V (0) = 0, 2. V (x) ≥ 0, per tutti i punti x 6= 0, x ∈ W. Definizione 4.10 (Funzione definita negativa) Una funzione continua V (x) : W → R è detta definita negativa (d.n.) nell’insieme W contenente l’origine, se la funzione −V (x) è definita positiva, e quindi se: 1. V (0) = 0, 2. V (x) < 0, per tutti i punti x 6= 0, x ∈ W. Definizione 4.11 (Funzione semidefinita negativa) Una funzione continua V (x) : W → R è detta semidefinita negativa (s.d.n.) nell’insieme W contenente l’origine, se la funzione −V (x) è semidefinita positiva. Le considerazioni qualitative sulla variazione dell’energia generalizzata, a fronte di una perturbazione, implicano lo studio della variazione di tale funzione. Tale studio viene condotto utilizzando la conoscenza della derivata temporale, nel caso dei sistemi a tempo continuo, il calcolo diretto della variazione nei sistemi a tempo discreto. L’idea, nel caso dei sistemi a tempo continuo, viene concretizzata utilizzando lo strumento della derivata di una funzione scalare lungo una funzione vettoriale. Si consideri un sistema dinamico autonomo ẋ = f (x), x ∈ Rn . (4.36) Si consideri inoltre una funzione scalare V (x) : W → R, V (x) ∈ C 1 , cioè con derivate prime continue. Definizione 4.12 (Derivata rispetto ad un campo vettoriale) La derivata V̇ di una funzione V (x) : W → R rispetto al campo vettoriale f (x) è definita dal prodotto scalare: V̇ :=< grad V (x), f (x) >= ∂V (x) ∂V (x) f1 (x) + · · · + fn (x). ∂x1 ∂xn (4.37) Si noti che V̇ si calcola direttamente dalla conoscenza di V (x) e del campo vettoriale f (x), senza necessità di risolvere l’equazione differenziale relativa, cioè l’equazione ẋ = f (x). Come già accennato in precedenza, questo è uno dei principali punti di forza del metodo diretto. La notazione V̇ indica una derivata temporale. Infatti la derivata di V lungo f descrive la variazione temporale della funzione V (x) quando calcolata lungo una soluzione x(t) dell’equazione differenziale. Utilizzando la regola di derivazione di funzioni composte, se la funzione V (x) viene valutata lungo la traiettoria x(t) = x(t, t0 , x0 , u(·)), si trova: V̇ = ∂V (x) ∂V (x) ∂V (x) ∂V (x) ẋ1 + · · · + ẋn = f1 (x) + · · · + fn (x). ∂x1 ∂xn ∂x1 ∂xn (4.38) E’ ora possibile enunciare i principali teoremi di stabilità (ed instabilità) di Lyapunov per l’origine di sistemi non lineari, a tempo continuo, omogenei. Teorema 4.10 (Teorema di stabilità di Lyapunov) Sia l’origine, xe = 0, punto di equilibrio del sistema non lineare ẋ = f (x). Se esiste una funzione scalare definita positiva (d.p.) V (x) : W → R, V (x) ∈ C 1 , con W intorno dell’origine, tale che V̇ sia semidefinita negativa (s.d.n.) in W per il sistema ẋ = f (x), allora l’origine è punto di equilibrio stabile di tale sistema. Teorema 4.11 (Teorema di stabilità asintotica di Lyapunov) Sia l’origine, xe = 0, punto di equilibrio del sistema non lineare ẋ = f (x). Se esiste una funzione scalare definita positiva (d.p.) V (x) : W → R, V (x) ∈ C 1 , con W intorno dell’origine, tale che V̇ sia definita negativa (d.n.) in W per il sistema ẋ = f (x), allora l’origine è punto di equilibrio asintoticamente stabile di tale sistema. Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-179 Vi è anche un teorema di instabilità. Teorema 4.12 (Teorema di instabilità di Lyapunov) Sia l’origine, xe = 0, punto di equilibrio del sistema non lineare ẋ = f (x). Se esiste una funzione scalare definita positiva V (x) : W → R, V (x) ∈ C 1 , con W intorno dell’origine, tale che V̇ sia definita positiva in W, allora l’origine dello spazio di stato è punto di equilibrio instabile di tale sistema. Una funzione scalare V (x) : W → R, che sia definitiva positiva ed abbia derivate prime continue, è detta funzione candidata di Lyapunov. Una funzione candidata di Lyapunov che soddisfi ad uno dei due teoremi 4.10 o 4.11 è detta funzione di Lyapunov per il sistema corrispondente. Lo studio della stabilità dell’origine per sistemi non lineari a tempo discreto può essere condotta in modo analogo, salvo utilizzare la variazione finita della funzione candidata di Lyapunov in luogo della sua derivata temporale. Sia quindi x(t + 1) = f (x), x ∈ Rn (4.39) un sistema non lineare a tempo discreto, omogeneo, con l’origine punto di equilibrio del sistema (xe = 0), e cioè f (0) = 04 . Sia V (x) : W → R una funzione definita positiva in un opportuno intorno W dell’origine. La variazione δV := V (x(t+ 1))− V (x(t)) di tale funzione lungo le traiettorie del sistema si può calcolare facilmente come: δV = V (x(t + 1)) − V (x(t)) = V (f (x) − V (x)) (4.40) Sulla base di tale variazione della funzione candidata, possono essere formulati tre teoremi, del tutto analoghi ai corrispondenti a tempo continuo. Teorema 4.13 (Teorema di stabilità di Lyapunov a tempo discreto) Sia l’origine, xe = 0, punto di equilibrio del sistema non lineare x(t + 1) = f (x). Se esiste una funzione scalare definita positiva (d.p.) V (x) : W → R, con W intorno dell’origine, tale che la sua variazione δV sia semidefinita negativa (s.d.n.) in W per il sistema x(t + 1) = f (x), allora l’origine è punto di equilibrio stabile di tale sistema. Teorema 4.14 (Teorema di stabilità asintotica di Lyapunov a tempo discreto) Sia l’origine, xe = 0, punto di equilibrio del sistema non lineare a tempo discreto x(t + 1) = f (x). Se esiste una funzione scalare definita positiva (d.p.) V (x) : W → R, con W intorno dell’origine, tale che la sua variazione δV sia definita negativa (d.n.) in W per il sistema x(t + 1) = f (x), allora l’origine è punto di equilibrio asintoticamente stabile di tale sistema. Vi è anche un teorema di instabilità. Teorema 4.15 (Teorema di instabilità di Lyapunov a tempo discreto) Sia xe = 0 punto di equilibrio del sistema non lineare a tempo discreto x(t + 1) = f (x). Se esiste una funzione scalare definita positiva V (x) : W → R, con W intorno dell’origine, tale che la sua variazione δV sia definita positiva in W, allora l’origine dello spazio di stato xe = 0è punto di equilibrio instabile di tale sistema. Alcuni commenti. Commento 4.4 Si noti che i teoremi non forniscono alcuna informazione circa la costruzione della funzione candidata di Lyapunov. Ciò costituisce la principale difficoltà nell’applicazione del criterio. Commento 4.5 I teoremi forniscono condizioni sufficienti di stabilità. Tali condizioni non sono necessarie. Esistono tuttavia dei teoremi inversi (converse Lyapunov theorems), che affermano l’esistenza di una funzione di Lyapunov per un punto di equilibrio (asintoticamente) stabile di un sistema non lineare. Commento 4.6 Le condizioni di stabilità sono locali. In alcuni casi, l’intorno dell’origine considerato potrebbe essere anche molto piccolo. In particolare nel teorema 4.11 l’intorno W, che descrive perturbazioni iniziali che danno luogo a moti convergenti, potrebbe essere anche molto piccolo. La seguente definizione è importante in molte applicazioni della teoria della stabilità á la Lyapunov alla teoria del controllo. 4 In questo caso, e solo in questo caso, le condizioni di equilibrio per sistemi a tempo continuo e a tempo discreto coincidono. Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-180 Definizione 4.13 (Regione di convergenza (o Bacino di attrazione)) Sia xe un punto di equilibrio asintoticamente stabile per un sistema dinamico ∆x = f (x, u). La regione dello spazio di stato Bxe tale che: ∀x0 ∈ Bxe , lim x(t, t0 , x0 , ue ) = xe , t→∞ (4.41) è detta Regione di Convergenza o Bacino di Attrazione per il punto di equilibrio xe . Per completezza, si riporta il criterio di Lyapunov nella formulazione globale. Teorema 4.16 (Teorema di Lyapunov di stabilità globale asintotica) Sia xe = 0 punto di equilibrio del sistema non lineare ẋ = f (x). Se esiste una funzione scalare definita positiva (d.p.) V (x) : Rn → R, V (x) ∈ C 1 , tale che V̇ sia definita negativa (d.n.) in Rn per il sistema ẋ = f (x), allora l’origine è punto di equilibrio globalmente asintoticamente stabile di tale sistema. 4.6 Esempi Esempio 4.1 Si consideri il sistema dinamico: ẋ = −x3 , x ∈ R. (4.42) Il sistema ammette come unico punto di equilibrio l’origine. Applicando il criterio ridotto di Lyapunov per studiare la stabilità si trova: d 3 A= x |x=0 = (−3x2 )|x=0 = 0, (4.43) dx e quindi si ha un caso critico. 1 Si consideri la funzione candidata di Lyapunov V (x) = x2 . Si trova: 2 V̇ = xẋ = −x4 , d.n. (4.44) che è definita negativa, e quindi l’origine è punto di equilibrio asintoticamente stabile. ▽ Esempio 4.2 Si consideri il sistema dinamico: ẋ = +x3 , x ∈ R. (4.45) Il sistema ammette come unico punto di equilibrio l’origine. Applicando il criterio ridotto di Lyapunov per studiare la stabilità si trova: d 3 A= x |x=0 = (3x2 )|x=0 = 0, (4.46) dx e quindi si ha un caso critico. 1 Si consideri la funzione candidata di Lyapunov V (x) = x2 . Si trova: 2 V̇ = xẋ = +x4 , d.p. (4.47) che è definita positiva, e quindi l’origine è punto di equilibrio instabile. ▽ Esempio 4.3 Si consideri il modello dinamico di un pendolo, ricavato nella sezione 1.6 e sotto riportato nel caso particolare di parametri tutti unitari, salvo il coefficiente di attrito viscoso, indicato qui con α, α ≥ 0, in luogo di kv . θ x2 ẋ = f (x, u), x = , (4.48) , f (x, u) = − sin(x1 ) − αx2 + u ω dove x1 = θ indica la posizione angolare del pendolo, x2 = ω la corrispondente velocità angolare ed u il segnale esterno, cioè, la coppia motrice esercitata sul pendolo da un azionamento opportuno. Il sistema omogeneo, intuitivamente, ha molti punti di equilibrio, corrispondenti alla posizione con massa verso il basso, caratterizzata da x1,e = k2π, con k intero, ed alla posizione con massa verso l’alto, caratterizzata da x1,e = k3/2π, con k intero. Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-181 Sempre da un punto di vista intuitivo, le posizioni con massa verso il basso sono punti di equilibrio stabili (ed asintoticamente stabili se α > 0), le posizioni con massa verso l’alto sono punti di equilibrio instabili. Si proceda con il calcolo dei punti di equilibrio. Dalla relazione f (xe , ue ) = 0, considerando il sistema omogeneo, si ha: kπ x2,e = 0 ⇒ xe = , ∀k ∈ Z, (4.49) f (xe , 0) = 0 − sin(x1,e ) − αx2,e come atteso dalla valutazione qualitativa. Per una analisi formale della stabilità, si consideri il criterio ridotto di Lyapunov. Si trova (per il sistema omogeneo): ∂f (x) 0 1 = (4.50) − cos(x1 ) −α ∂x e quindi, nel punto di equilibrio xe = 0, rappresentativo di tutti i punti di equilibrio “pendolo in basso”, si trova la matrice dell’approssimazione lineare: ∂f (x) 0 1 0 1 A0 = = = , (4.51) − cos(x1 ) −α x =0 −1 −α ∂x xe =0 e √ 2 il cui polinomio caratteristico vale: det(λI − A0 ) = λ2 + αλ + 1, le cui radici valgono λ1,2 = − α2 ± α2 −4 , e sono a parte reale positiva per tutti i valori strettamente positivi del parametro α. Se il sistema quindi dissipa energia, l’origine è punto di equilibrio asintoticamente stabile. Se invece il sistema non dissipa energia, e quindi α = 0, l’approssimazione lineare ha un polinomio caratteristico pari a λ2 + 1, e quindi ha due autovalori con parte reale nulla: si è nella situazione di caso critico, ed il criterio ridotto non è in grado di fornire indicazioni. Nel caso del punto di equilibrio xe = (π, 0)T , posizione in alto, si trova: ∂f (x) 0 1 0 1 = = Aπ = , (4.52) − cos(x1 ) −α x =(π,0)T +1 −α ∂x xe =(π,0)T e il cui polinomio caratteristico vale: det(λI − A0 ) = λ2 + αλ − 1, le cui radici valgono λ1,2 = − α2 ± sono di segno discorde. Il punto di equilibrio quindi è punto di equilibrio non stabile, o instabile. √ α2 +4 , 2 e ▽ Esempio 4.4 Si consideri ancora il modello dinamico di un pendolo: θ x2 ẋ = f (x, u), x = , f (x, u) = , ω − sin(x1 ) − αx2 + u (4.53) Si consideri la funzione: 1 V (x) = (1 − cos(x1 )) + x22 . (4.54) 2 La funzione ha derivate prime continue, è definita positiva nell’intorno dell’origine W = {(x1 , x2 ) : −π < x1 < π} e quindi è utilizzabile come funzione candidata di Lyapunov. Si noti come, in questo caso, l’intorno W determini una validità locale, ma in “grande”: il risultato cioè non vale solo per perturbazioni molto piccole, infinitesime, ma anche per perturbazioni finite. Applicando il teorema di stabilità di Lyapunov all’origine si trova, per il sistema omogeneo: V̇ (x) = x˙1 sin(x1 ) + x˙2 x2 = sin(x1 )x2 − (sin(x1 ) + αx2 )x2 = −αx22 (4.55) che è semi-definita negativa per ogni valore non negativo del parametro α (e quindi per ogni valore fisicamente possibile). Ne consegue che l’origine è punto di equilibrio (semplicemente) stabile per il sistema in esame. Si noti come il risultato appena derivato sia in apparente contraddizione con il precedente esempio 4.3, dal quale si ricava stabilità asintotica per valori strettamente positivi del parametro α. La inconsistenza in effetti non esiste, poiché, come detto nel commento 4.5, il metodo diretto di Lyapunov fornisce condizioni sufficienti: se una specifica funzione candidata fornisce un risultato di stabilità, si è certi del fatto che il punto di equilibrio non è instabile, ma rimane la possibilità che sia asintoticamente stabile. Una diversa funzione candidata potrebbe consentire di mostrare questa seconda proprietà, più forte. ▽ Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-182 Esempio 4.5 Si consideri ancora il modello dinamico di un pendolo, con valore unitario del parametro α: θ x2 ẋ = f (x, u), x = , f (x, u) = , (4.56) ω − sin(x1 ) − x2 + u e si consideri la funzione: 1 1 (4.57) V (x) = 2(1 − cos(x1 )) + x22 + (x1 + x2 )2 . 2 2 Analogamente al caso del precedente esempio, la funzione ha derivate prime continue, è definita positiva nell’intorno dell’origine W = {(x1 , x2 ) : −π < x1 < π} e quindi è utilizzabile come funzione candidata di Lyapunov. Applicando il teorema di stabilità di Lyapunov all’origine del sistema omogeneo, e quindi con u = 0, si trova: V̇ (x) = 2x˙1 sin(x1 ) + x˙2 x2 + (x˙1 + x˙2 )(x1 + x2 ) (4.58a) = 2 sin(x1 )x2 − (sin(x1 ) + x2 )x2 + (x2 − sin(x1 ) − x2 )(x1 + x2 ) == −x1 sin(x1 ) − x22 (4.58b) che è definita negativa, poiché per valori piccoli di x1 , si ha che sin(x1 ) ≃ x1 . Ne consegue che l’origine è punto di equilibrio asintoticamente stabile per il sistema in esame. Questo risultato illustra ulteriormente il commento alla fine del precedente esempio. ▽ Esempio 4.6 Si consideri il modello dinamico non lineare a tempo discreto: x(t + 1) = x(t) − x(t)2 + α, α ∈ R+ . (4.59) Il calcolo dei punti di equilibrio mostra che: xe = xe − x2e + α √ ⇒ xe = ± α (4.60) e quindi il sistema ha due punti di equilibrio, pari alle due √ radici quadrate del parametro reale positivo α. Le proprietà di stabilità, ad esempio del punto xe = + α, posso essere studiate tramite il criterio ridotto di Lyapunov per sistemi a tempo discreto. Per il gradiente del campo si trova: f (x) = x(t) − x(t)2 + α, ⇒ ∂f (x) = 1 − 2x, ∂x e quindi l’approssimazione lineare intorno al punto di equilibrio vale √ δx(t + 1) = aδx, a = 1 − 2 α. (4.61) (4.62) Il parametro a (e cioè l’autovalore) ha modulo minore di uno √ per tutti i valori di α minori di uno e positivi. Per tali valori del parametro quindi, il punto di equilibrio xe = α del sistema (4.59) è asintoticamente stabile. Tale sistema è quindi un possibile algoritmo per il calcolo della radice quadrata. ▽ Esempio 4.7 Si consideri il modello dinamico non lineare a tempo discreto: x(t + 1) = x(t) − x(t)2 − α , 2x(t) α ∈ R+ . (4.63) Il calcolo dei punti di equilibrio mostra che: xe = xe − x2e − α xe √ ⇒ xe = ± α (4.64) e quindi il sistema ha due punti di equilibrio, pari alle due radici quadrate del parametro reale positivo α, analogamente al sistema nel precedente esempio. √ Le proprietà di stabilità, ad esempio del punto xe = + α, posso essere studiate tramite il criterio ridotto di Lyapunov per sistemi a tempo discreto. Per il gradiente del campo si trova: f (x) = x(t) − x(t)2 − α , 2x(t) ⇒ x2 − α ∂f (x) 2x x2 − α = , =1− + 2 ∂x 2x x x2 (4.65) Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-183 e quindi l’approssimazione lineare intorno al punto di equilibrio vale δx(t + 1) = aδx, a = 0. (4.66) √ L’approssimazione lineare ha autovalore nullo, e quindi il punto di equilibrio xe = α del sistema (4.63) è asintoticamente stabile per tutti i valori del parametro, cioè del numero del quale si vuole calcolare la radice quadrata: anche il sistema (4.63) è un possibile algoritmo per il calcolo della radice quadrata. ▽ 4.7 Stabilità esterna Il tema della stabilità esterna è solo accennato. Per una trattazione completa si rimanda ad altri testi e alle lezioni in aula. Definizione 4.14 (Stabilità esterna) Un sistema dinamico LTCS o LTDS del tipo: ∆x = Ax + bu, y = Cx x ∈ Rn , (4.67a) (4.67b) è detto esternamente stabile o anche stabile in senso BIBO (BIBO: Bounded Input Bounded Output) se e solo se ad ogni segnale limitato applicato in ingresso corrisponde una rispota forzata limitata. La proprietà può essere verificata per mezzo di uno dei due criteri seguenti, in funzione del tipo di sistema in esame. Teorema 4.17 Un sistema dinamico stazionario a tempo continuo, è stabile esternamente, o in senso BIBO, se e solo se tutti i poli della funzione di trasferimento hanno parte reale negativa. Teorema 4.18 Un sistema dinamico stazionario a tempo discreto, è stabile esternamente, o in senso BIBO, se e solo se tutti i poli della funzione di trasferimento hanno modulo strettamente minore di uno. 4.8 Retroazione La sezione sulla retroazione non è ancora stata scritta. Si rimanda ad altri testi che verranno citati a lezione. Capitolo 4: Stabilità 4.9 [Ed. 2014, V 4.1 - PV - UniPG] - 4-184 Analisi di circuiti con OpAmp Lo scopo di queste note è lo studio delle caratteristiche dinamiche di un amplificatore operazionale nelle tipiche configurazioni non invertente ed invertente. Ancor più precisamente, lo scopo è quello di esemplificare, per il tramite degli amplificatori operazionali, il comportamento di sistemi dinamici e gli effetti della retroazione su tali sistemi. I risultati che emergeranno dalle considerazioni seguenti possono infatti essere astratti ed applicati a qualsiasi sistema dinamico. Lo studio verrà condotto solo dal punto di vista del legame ingresso-uscita e delle corrispondenti caratteristiche dinamiche, senza alcun cenno né alla struttura interna di un OpAmp né alla maggior parte delle sue caratteristiche di non idealità. Per questi aspetti si rimanda agli specifici corsi di area elettronica. 4.9.1 Modelli ideali per un OpAmp I circuiti (i sistemi dinamici) basati su amplificatori operazionali vengono abitualmente analizzati facendo ricorso a modelli ideali, di accuratezza via via crescente. Il sistema illustrato in figura 4.5 è detto anche sistema in catena aperta. i+ vD i− + − vOUT Figura 4.5: Amplificatore operazionale: componente base Il modello più semplice per un amplificatore operazione è quello qui chiamato modello ideale: Modello Ideale Il guadagno ingresso-uscita dell’OpAmp è infinito, quindi, per tensioni di uscita finite, la tensione differenziale vD ai capi dei morsetti di ingresso è nulla. La corrente che scorre nella porta di ingresso è nulla, la corrispondente impedenza di ingresso è infinita. Poiché l’interesse di queste note è relativo agli effetti della retroazione, e quindi è relativo allo studio di particolari forme del segnale di ingresso, in luogo del precedente modello, estremamente ideale, verrà considerato il modello a guadagno costante: la tensione vOUT in uscita al componente è proporzionale alla tensione in ingresso vD tramite una costante di guadagno g molto grande (figura 4.5). Modello a Guadagno Costante La relazione ingresso-uscita dell’OpAmp è data da: vOUT = gvD . (4.68) La corrente che scorre nella porta di ingresso è nulla, la corrispondente impedenza di ingresso è infinita. Valori tipici per g sono nell’ordine di 105 ÷ 106 . La relazione (4.68) descrive bene il guadagno in continua (e alla “basse” frequenze), ma non descrive bene il comportamento per frequenze (sufficientemente) alte: come tutti i sistemi reali, anche un OpAmp ha un guadagno variabile con la frequenza. Si consideri quindi, in luogo del modello a guadagno costante (4.68), un modello a polo dominante, caratterizzato da una funzione di trasferimento del primo ordine: Modello a Polo Dominante Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-185 La relazione ingresso-uscita dell’OpAmp è dato da: W (s) = b , s+a (4.69) o dal corrispondente modello nello spazio di stato: ẋ y = −ax + bvD , = x, vOUT = y x∈R (4.70a) (4.70b) La corrente che scorre nella porta di ingresso è nulla, la corrispondente impedenza di ingresso è infinita. In merito al modello precedente, si noti che il guadagno in continua vale W (0) = b/a, e quindi il legame tra i due modelli con guadagno finito è dato da: g = b/a. Valori tipici per il parametro b del modello sono nell’intervallo 106 ÷ 107 s−1 e per a dell’ordine di 10 ÷ 20 Hz. Un tipico diagramma di Bode per un OpAmp a ciclo aperto (in altre discipline si usa la locuzione a “catena aperta”) è riportato nella figura seguente: OpAmp: diagramma di Bode dei moduli 95 90 Magnitude (dB) 85 80 75 70 65 60 0 10 1 10 2 10 3 10 Frequency (rad/sec) Figura 4.6: Diagramma di Bode dei moduli per un OpAmp a ciclo aperto . Sulla base dei due modelli con guadagno finito illustrati, è possibile analizzare semplici circuiti basati su amplificatori operazionali. 4.9.2 OpAmp in configurazione non invertente Il circuito riportato nella figura 4.7 è la ben nota configurazione non invertente per un amplificatore operazionale. Il partitore costituito dalle due resistenze R1 ed R2 costituisce la rete di retroazione, che fissa il guadagno in continua dell’intero circuito. Sulla base delle ipotesi di idealità che caratterizzano il modello a guadagno costante, per la maglia di ingresso del sistema in configurazione non invertente in fig. 4.7 si trova: vIN = vD + vR1 , (4.71) Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-186 + − vD vIN vOUT R2 R1 Figura 4.7: Amplificatore operazionale in configurazione non invertente mentre per la maglia di uscita si trova: vOUT = vR1 + vR2 . (4.72) Tenendo conto dell’ipotesi di idealità che implica corrente nulla nella porta di ingresso e della (4.72), la corrente iR che scorre nei due resistori R1 ed R2 risulta pari a: vOUT , (4.73) iR = R1 + R2 da cui, insieme alla (4.71), per la tensione differenziale vD in ingresso all’amplificatore operazionale si trova: vD = vIN − R1 vOUT . R1 + R2 (4.74) L’equazione (4.74) mostra chiaramente come il partitore resistivo R1 , R2 induca una retroazione: la tensione differenziale vD applicata in ingresso all’OpAmp dipende anche dal segnale di uscita vOUT allo stesso componente. Tenendo conto del modello in catena aperta a guadagno costante dato dalla (4.68), per il legame ingresso-uscita dell’intera rete si trova: 1 R1 vIN = + vOUT . (4.75) g R1 + R2 Poiché il guadagno in catena aperta g è molto grande, nell’equazione precedente il termine 1/g può essere 1 , ottenendo il legame ingresso uscita: trascurato rispetto al termine R1R+R 2 R2 vOUT = 1 + vIN . (4.76) R1 La precedente equazione è il più semplice modello di OpAmp in configurazione non invertente. Descrive bene il guadagno in continua (e alla “basse” frequenze), ma non descrive bene il comportamento per frequenze (sufficientemente) alte: come tutti i sistemi reali, anche un OpAmp ha un guadagno variabile in frequenza. Utilizzando il più accurato modello a polo dominante nella forma di spazio di stato (4.70), applicando il segnale di ingresso (4.74) calcolato sopra, e tenendo conto del fatto che il segnale di uscita vOUT coincide con il segnale y e quindi con lo stato interno x del modello in uso, si trova il sistema dinamico a ciclo chiuso: R1 R1 x + bvIN , (4.77) x + bvIN = − a + b ẋ = −ax − b R1 + R2 R1 + R2 y = x. (4.78) Poiché, come già notato in precedenza, il parametro a è molto piccolo, in particolare rispetto al parametro b, e supponendo che R1 e R2 non differiscano di molti ordini di grandezza, il modello precedente può essere approssimato come: ẋ = −b y = x, R1 x + bvIN , R1 + R2 (4.79) (4.80) Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-187 cui corrisponde il legame ingresso-uscita descritto dalla funzione di trasferimento Wni (s): Wni (s) = b R1 s+b R1 + R2 . (4.81) La conclusione più importante rispetto allo scopo di queste note consiste nel fatto che la retroazione applicata all’OpAmp e descritta dal segnale di ingresso (4.74) modifica le proprietà dinamiche del sistema, ed in particolare R1 modifica l’autovalore del sistema: a ciclo aperto l’autovalore vale a mentre a ciclo chiuso vale b . Si noti, R1 + R2 in aggiunta, come il valore dell’autovalore a ciclo chiuso possa essere scelto arbitrariamente fissando in modo opportuni i parametri di progetto R1 ed R2 . La modifica dell’autovalore implica, ovviamente, la modifica del polo della funzione di trasferimento e quindi R1 della banda passante: la banda passante diviene molto maggiore, passando da a al nuovo valore pari a b . R1 + R2 La retroazione modifica anche il guadagno in continua: il sistema retroazionato ha un guadagno in continua R2 pari a 1 + , molto più piccolo del corrispondente valore a ciclo aperto, pari a b/a. R2 La figura 4.8 riporta il diagramma di Bode dei moduli per un OpAmp in configurazione non invertente (curva continua). Per confronto, la curva tratteggiata rappresenta il diagramma a ciclo aperto. Infine, si noti come il prodotto guadagno/banda-passante rimanga invariato e pari a b: si tratta di un parametro caratteristico del componente. Ne segue che ad un aumento del guadagno in continua a ciclo chiuso corrisponde una diminuzione della banda passante, ed analogamente se viene aumentata la banda passante si riduce il guadagno. OpAmp: diagramma di Bode dei moduli (continuo: ciclo chiuso, tratto: ciclo aperto) 100 80 Magnitude (dB) 60 40 20 0 −20 0 10 2 10 4 10 Frequency (rad/sec) 6 10 Figura 4.8: Diagramma di Bode dei moduli per un OpAmp a ciclo aperto (linea tratteggiata) e ciclo chiuso (linea continua). 4.9.3 OpAmp in configurazione invertente Il circuito riportato nella figura 4.9 rappresenta la configurazione invertente per un amplificatore operazionale. Il partitore costituito dalle due resistenze R1 ed R2 costituisce la rete di retroazione. Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-188 R2 vIN vD R1 − + vOUT Figura 4.9: Amplificatore operazionale in configurazione invertente Il calcolo della relazione ingresso-uscita per la configurazione invertente può essere condotto in modo analogo a quanto fatto nel caso della configurazione non invertente. Utilizzando il modello a guadagno costante, ed in particolare la relazione (4.68), per le connessioni di uscita si trova: vD + vR2 + vOUT = 0, da cui, utilizzando il modello a guadagno costante dell’OpAmp, vOUT = gvD , si trova: 1 vOUT 1 + = −vR2 , g (4.82) (4.83) da cui, trascurando il termine 1/g, si ottiene la corrente iR2 che scorre nel resistore R2 : i R2 = − VOUT . R2 (4.84) Per la porta di ingresso si trova invece: vIN − VR1 + vD = 0, (4.85) da cui, risolvendo rispetto alla tensione differenziale di ingresso all’OpAmp vD (utilizzando la (4.84) e l’ipotesi ideale che la corrente in ingresso al componente sia nulla), si trova: vD = − R1 vOUT − vIN . R2 (4.86) L’equazione precedente, analogamente a quanto visto per la (4.74) nel caso della configurazione non invertente, mostra come il partitore resistivo R1 , R2 induca una retroazione sul componente: il segnale differenziale di ingresso dipende dall’uscita dello stesso componente. Per determinare la relazione tra le tensioni di ingresso ed uscita all’intero circuito, cioè per determinare il legame ingresso-uscita, dalla relazione precedente, utilizzando il modello vOUT = gvD , si trova: R1 1 vOUT = −vIN , (4.87) + R2 g e quindi, trascurando il termine 1/g, molto piccolo, se R1 e R2 non differiscono di molti ordini di grandezza, si ha: R2 vOUT = − vIN , (4.88) R1 che costituisce il modello ideale dell’amplificatore operazionale in configurazione invertente. Un modello più accurato può essere ottenuto tenendo conto del comportamento in frequenza del componente OpAmp. Utilizzando ancora il modello del primo ordine, a polo dominante, descritto dalla funzione di trasferimento in (4.69) e dal corrispondente modello nello spazio di stato, applicando il segnale di retroazione (4.86) si trova: R1 R1 x − bvIN , (4.89) ẋ = −ax − b x − bvIN = − a + b R2 R2 y = x. (4.90) Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-189 Poiché, come già notato in precedenza, il parametro a è molto piccolo rispetto a b, e supponendo che R1 e R2 non differiscano di molti ordini di grandezza, il modello precedente può essere approssimato come: ẋ = −b y = x, R1 x − bvIN , R2 (4.91) (4.92) cui corrisponde il legame ingresso-uscita a ciclo chiuso descritto dalla funzione di trasferimento WIn (s): WIn (s) = − b s+b R1 R2 . (4.93) Anche in questo caso, l’effetto della retroazione è quello di modificare la banda passante del sistema, che R1 passa dal valore a, molto piccolo, al valore b , molto grande, e ridurre il guadagno in continua dal valore R2 R2 b/a, molto grande, al valore − , che può essere determinato dal progettista scegliendo opportunamente i due R1 resistori. 4.9.4 Interconnesione di più OpAmp L’approccio utilizzato nelle sezioni precedenti può essere esteso anche allo studio di circuiti con più OpAmp. A titolo di esempio si consideri il sistema riportato nella seguente figura 4.10. R3 R3 vD,1 vIN + − R2 vD,2 OA1 − + OA2 vOUT vOUT,1 vIN,2 R1 Figura 4.10: Interconnessione di due amplificatori operazionali Il circuito può essere analizzato, in prima approssimazione, utilizzando il modello a guadagno costante per i componenti OpAmp. Il secondo OpAmp, OA2 , è in configurazione invertente, il cui guadagno quindi vale R3 = −1. Detta vOUT la tensione in uscita all’intero circuito, e quindi ad OA2 , e vIN,2 la corrispondente −R 3 tensione in ingresso (si veda la figura 4.10), si ha quindi: vOUT = −vIN,2 , e quindi vOUT = −vOUT,1 . Il primo OpAmp invece, OA1 , ha la struttura in una configurazione non invertente, salvo il fatto che la retroazione è applicata dall’uscita del secondo operazionale e non del primo. Poiché il secondo OpAmp ha guadagno pari a −1 ed inoltre vOUT,1 = −vOUT , si può scrivere, ricordando la (4.74): vD,1 = vIN − R1 vOUT R1 + R2 (4.94) e quindi, trascurando il termine vD,1 = g1 vOUT,1 = − g1 vOUT , si trova: vOUT R2 = 1+ vIN R1 (4.95) Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-190 R2 , cioè un guadagno della stessa e quindi l’intero circuito ha un guadagno ingresso-uscita pari a 1 + R1 ampiezza della configurazione non invertente. Commento 4.7 Si sottolinea con decisione che la affermazione vOUT,1 = vIN,2 implica, di fatto, che il comportamento dei due circuiti analizzati in forma isolata, come nelle due sezioni 4.9.2 e 4.9.3, ed in forma interconnessa, come in questa sezione, rimanga invariato. Ciò è vero con sufficiente grado di accuratezza solo se le impedenze di ingresso ed uscita dei due blocchi sono ben dimensionate. Si rimanda ad altri testi e ad altri corsi per un doveroso approfondimento su questo argomento. Per condurre una analisi più accurata, che tenga conto anche degli aspetti dinamici, si consideri il modello a polo dominante per il primo OpAmp ed il modello a guadagno costante per il secondo operazionale. Per OA2 valgono le considerazioni svolte sopra, e quindi: vOUT = − R3 vIN,2 = −vIN,2 , R3 (4.96) e quindi anche per la tensione in ingresso al primo operazionale si trova la stessa relazione (4.94) vista sopra: vD,1 = vIN + R1 vOUT,1 . R1 + R2 (4.97) Utilizzando, per OA1 , il sistema nello spazio di stato associato al modello a polo dominante: ẋ1 = y1 = −a1 x1 + b1 vD,1 , (4.98) x1 , vOUT,1 = y1 (4.99) ed applicando il segnale in retroazione (4.97) si trova: ẋ1 = −a1 x1 + b1 y1 = x1 , R1 x1 + b1 vIN , R1 + R2 (4.101) che può essere approssimata, trascurando il termine −a1 x1 rispetto a b1 ẋ1 y1 (4.100) R1 x1 + b1 vIN , R1 + R2 = x1 , = b1 R1 x1 , con: R1 + R2 (4.102) (4.103) cui corrisponde la funzione di trasferimento WOA1 (s) seguente: b1 WOA1 (s) = s − b1 R1 R1 + R2 . (4.104) Si noti che, in virtù della (4.96), la funzione di trasferimento Win,out tra il segnale vIN in ingresso all’intero circuito ed il segnale vOUT in uscita dallo stesso circuito vale: Win,out (s) = −WOA1 (s) = − b1 . (4.105) R1 R1 + R2 R2 , e quindi identico (ovviamente) a Il sistema complessivo ha quindi un guadagno in continua pari a 1 + R1 quanto trovato utilizzando il modello a guadagno costante. Si noti però che il sistema ha un autovalore, e quindi un polo, a parte reale positiva. Il corrispondente modo naturale è quindi divergente: ciò implica che il sistema non è stabile esternamente, o in senso BIBO, e che il sistema non ammette risposta permanente, né in uscita né nello stato. Ciò implica che il guadagno in continua non è definibile, ed inoltre il fattore costante W (0) non descrive, per segnali di ingresso a gradino o sinusoidali a bassa frequenza, l’ampiezza del segnale in uscita. Le considerazioni svolte in questa sezione vengono riprese ed approfondite in alcuni esercizi proposti alla fine del capitolo. Lo studente è invitato a lavorare in particolare sugli esercizi 4.2, 4.3 e 4.4. s − b1 Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-191 Ra Rb vD − + vIN vOUT Figura 4.11: Convertitore tensione-corrente 4.9.5 Convertitore tensione-corrente Poiché l’ingresso differenziale, in condizioni ideali, è un corto circuito, si ha: vI = vRa = Ra iR , e quindi iR = (4.106) vI Ra (4.107) e quindi, poiché la corrente nei due resistori è uguale, per l’ipotesi di corrente di ingresso nulla per l’OpAmp, la corrente in Rb è fissata ed indipendente dal valore di Rb stesso. Utilizzando il modello a polo dominante per l’OpAmp, si trova: = −av + bvD , v̇ vO (4.108a) = v w(s) = (4.108b) b , s+a (4.108c) ricordando che il guadagno in continua g dell’OpAmp e la corrispondente banda passante B sono legati dalla relazione: g = w(0) = b , a B = a. (4.109) Un modello alternativo, ma ovviamente equivalente, è dato da: ż vO = −az + gavD , = z (4.110a) (4.110b) con funzione di trasferimento: w(s) = ga g = . s+a s/a + 1 (4.111a) L’uso delle KVL consente di affermare: vI − vRa − vRb − vO vI − vRa + vD vD + vRb + vO dove solo due delle tre relazioni sono tra loro indipendenti. Dalla (4.112a) si ricava: vI − vO = vRa vRb = = 0 0 (4.112a) (4.112b) = 0 (4.112c) (4.113) Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-192 e quindi iR = σ(vI − vO ), σ := 1 . Ra + Rb (4.114) Utilizzando la relazione (4.112b) per la tensione differenziale in ingresso all’OpAmp si trova: vD = vRa − vI = Ra iR − vI = ρa (vI − vO ) − vI , ρa := Ra , Ra + Rb (4.115) da cui, in modo immediato: vD = −ρa vO − ρb vI , ρa := Rb Ra , ρb := . Ra + Rb Ra + Rb (4.116) Il sistema retroazionato quindi diviene: v̇ vO = −av + bvD , (4.117a) = v, (4.117b) = −ρa vO − ρb vI , (4.117c) = −av − bρa v − bρb vI , = v, (4.118a) (4.118b) = σ(vI − vO ). (4.118c) vD e quindi: v̇ vO iR Si noti come assumere vO come segnale di uscita corrisponde a studiare l’OpAmp in configurazione invertente, mentre assumere come segnale di uscita la corrente iR corrisponde a studiare il convertitore tensione-corrente. Il sistema è asintoticamente stabile, poiché, dopo la retroazione, l’autovalore vale −(a + bρa ), che è sempre negativo e può essere fissato scegliendo opportunamente il rapporto ρa . La funzione di trasferimento tra il segnale di ingresso vI ed il segnale di uscita vO , cioè per l’OpAmp in configurazione invertente, vale: −bρb , (4.119) WvO (s) = s + a + bρa cui corrisponde un guadagno in continua: BvO = WvO (0) = −bρb Rb =− a + bρa Ra (4.120) (assumendo a << bρa ) che è quanto atteso per la configurazione invertente. La funzione di trasferimento tra il segnale di ingresso vI ed il segnale di uscita iR , cioè per l’OpAmp in configurazione convertitore tensione-corrente, vale (notando che ρa + ρb = 1)): WiR (s) = σbρb σs + σ(a + b) +σ = , s + a + bρa s + a + bρa (4.121) cui corrisponde un guadagno in continua: BiR = WiR (0) = σ(a + b) 1 = a + bρa Ra (4.122) (assumendo sia a << b sia a << bρa ) che è quanto atteso per la configurazione convertitore tensione-corrente. Ovviamente, nulla cambia utilizzando la (4.112c) per calcolare il segnale in retroazione. Capitolo 4: Stabilità 4.10 [Ed. 2014, V 4.1 - PV - UniPG] - 4-193 Criterio di Nyquist Lo scopo di questea sezione è lo studio della stabilità di sistemi lineari a tempo continuo retroazionati, utilizzando modelli di comportamento ingresso-uscita basati sulle funzioni di trasferimento. 4.10.1 Diagramma di Nyquist La rappresentazione del comportamento ingresso-uscita di un sistema dinamico, ed in particolare di una funzione di trasferimento, può essere data, oltre che in termini polari, come i diagrammi di Bode, anche sul piano di Gauss. Tale rappresentazione consente interessanti valutazioni sulla posizione dei poli e degli zeri della funzione di trasferimento stessa. Per analizzare questa possibilità, si consideri una funzione razionale F (s). Il Principio dell’argomento, basato sul teorema dei residui, afferma che: I F ′ (s) ds = 2π(Z − P ), (4.123) γ F (s) dove F ′ (s) indica la derivata di F (s), γ è una curva chiusa, senza mutue intersezioni, che non passa per poli e zeri della F (s), ed assunta percorsa in senso orario, ed i numeri interi Z e P indicano il numero di zeri e poli, rispettivamente, della funzione F (s) contenuti nell’area delimitata dalla curva γ, contati con la loro molteplicità. Una possibile interpretazione della relazione precedente (che deriva dal calcolo effettivo dell’integrale in 4.123) è che la curva descritta nel piano di Gauss dalla funzione F (s) quando la variabile indipendente s percorre la curva chiusa γ, compie un numero N di giri intorno all’origine pari a Z − P , contando come positivi i giri in senso orario (il verso di percorrenza della curva γ) e come negativi quelli in senso antiorario: N = Z − P. (4.124) Si noti che se la curva γ viene percorsa in senso antiorario, la relazione precedente rimane valida, a patto di considerare come positivi i giri intorno all’origine del vettore rappresentativo di F (s) compiuti in senso antiorario. Se invece il verso di percorrenza della curva γ ed il senso positivo lungo la corrispondente curva rappresentativa di F (s) sono discordi, la relazione (4.124) diviene: N =P −Z (4.125) che sarà utile nel successivo criterio di Nyquist. Nel resto del capitolo, la curva chiusa descritta dalla variabile indipendente s, qui chiamata curva γ, verrà assunta percorsa in senso orario. Si consideri, come esempio, la funzione razionale: F (s) = s+1 . (s − 1)(s + 2) (4.126) Scegliendo una curva γ1 pari ad un cerchio di raggio 1.5 centrato nel punto 1 + 0 del piano di Gauss5 , che quindi circonda solo il polo positivo p1 = 1, si trova, per la curva F (s), il diagramma nella seguente figura 4.12: che, come atteso, compie un giro antiorario intorno all’origine, e quindi N = 1, ed infatti in questo caso Z = 0 e P = 1. In questa figura e nelle successive, la freccia lungo la curva γ indica il punto iniziale della curva stessa ed il verso di percorrenza, la freccia nella curva descrittiva di F (s) indica il corrispondente punto di partenza ed il verso di percorrenza.6 Scegliendo una curva γ2 della stessa forma, ma con raggio maggiore, e tale da circondare anche lo zero negativo z1 = −1, si ottiene il diagramma riportato in figura 4.13 che, come atteso, non compie alcun un giro intorno all’origine, infatti in questo caso Z = 1, P = 1 e quindi Z − P = 0. Scegliendo una curva γ3 della stessa forma, ma con raggio maggiore, e tale da circondare entrambi i poli e lo zero, si ottiene il diagramma riportato in figura 4.14, che compie un solo giro intorno all’origine, in senso antiorario, ed infatti Z = 1, P = 2 e quindi Z − P = −1. Se si considera una curva γ4 tale da circondare solo lo zero, si ottiene il diagramma riportato in figura 4.15, che, come atteso, compie un solo un giro, questa volta in senso orario, intorno all’origine, infatti in questo caso Z = 1, P = 0 e quindi Z − P = 1. Infine il caso di una curva γ5 che non circondi alcuno zero o polo è illustrata nella figura 4.16: come atteso, non compie alcun giro intorno all’origine, infatti Z = 0 e P = 0. 5 Si considera una circonferenza per semplicità di tracciamento, qualsiasi altra curva chiusa porta allo stesso risultato. Si vedano le figure 4.13 e 4.17. 6 Inoltre, nei diagrammi relativi alle curve chiuse, il simbolo “*” (asterisco) indica uno zero, il simbolo “⋄” (diamante) indica un polo, i simboli in colore rosso punti esterni alla curva, quelli in colore verde punti circondati dalla curva. Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-194 Curva chiusa γ Curva F(s) lungo γ 1 1 0.5 1 Parte immaginaria ω Parte immaginaria ω 1.5 0.5 0 −0.5 0 −1 −1.5 −2 0 2 Parte reale σ 4 −0.5 −0.5 0 0.5 Parte reale σ Figura 4.12: Curva γ1 (a sinistra) e corrispondente curva F (s) = Curva chiusa γ s+1 (s−1)(s+2) . Curva F(s) lungo γ 2 2 3 0.4 2 Parte immaginaria ω Parte immaginaria ω 1 1 0 −1 0.2 0 −0.2 −2 −3 −2 0 2 Parte reale σ −0.4 −0.2 4 0 0.2 0.4 Parte reale σ Figura 4.13: Curva γ2 (a sinistra) e corrispondente curva F (s) = Curva chiusa γ 3 0.4 Parte immaginaria ω Parte immaginaria ω s+1 (s−1)(s+2) . Curva F(s) lungo γ 3 4 2 0 −2 −4 −5 0.6 0 Parte reale σ 5 0.2 0 −0.2 −0.4 −1 −0.5 0 Parte reale σ Figura 4.14: Curva γ3 (a sinistra) e corrispondente curva F (s) = 0.5 s+1 (s−1)(s+2) . La figura 4.17 illustra il caso di una curva chiusa, la curva γ6 , di forma diversa rispetto alla curva γ2 in figura 4.13, ma con analogo risultato in termini di giri intorno all’origine per il diagramma di F (s): nessun giro intorno all’origine, Z = 0, P = 0. Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-195 Curva chiusa γ4 Curva F(s) lungo γ4 0.5 0.3 Parte immaginaria ω Parte immaginaria ω 0.2 0 0.1 0 −0.1 −0.2 −0.3 −0.5 −2 −1 0 Parte reale σ −0.4 −0.4 1 −0.2 0 0.2 Parte reale σ Figura 4.15: Curva γ4 (a sinistra) e corrispondente curva F (s) = Curva chiusa γ 1 0.4 Parte immaginaria ω Parte immaginaria ω 5 0.6 0.5 0 −0.5 −1 0.2 0 −0.2 −0.4 −0.6 0 2 4 Parte reale σ −0.8 6 0 0.5 1 Parte reale σ 1.5 Figura 4.16: Curva γ5 (a sinistra) e corrispondente curva F (s) = Curva chiusa γ s+1 (s−1)(s+2) . Curva F(s) lungo γ 6 6 3 1 2 Parte immaginaria ω Parte immaginaria ω s+1 (s−1)(s+2) . Curva F(s) lungo γ 5 1.5 −1.5 −2 0.4 1 0 −1 0.5 0 −0.5 −2 −3 −2 0 2 Parte reale σ 4 −1 −0.2 0 0.2 0.4 Parte reale σ 0.6 Figura 4.17: Curva γ6 (a sinistra) e corrispondente curva della funzione F (s) = s+1 (s−1)(s+2) . Per comprendere meglio il risultato descritto in precedenza, si consideri la figura 4.18. I tre vettori rappresentati descrivono altrettanti termini del tipo s − a, con a parametro caratterizzante uno zero o un polo s−1.5 . L’estremo libero (cioè sulla curva γ) di un vettore della funzione razionale F (s) = (s+0.1)(s−1+0.5)(s−1−0.5) con origine all’interno della curva compie un giro completo, in senso orario, quando la variabile indipendente s Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-196 percorre la curva γ nello stesso verso, mentre l’estremo libero di un vettore con origine fuori dalla curva non compie un giro completo, ma solo un moto vario. Curva chiusa γ Curva F(s) 1 1 Parte immaginaria ω Parte immaginaria ω 1.5 0.5 0 −0.5 −1 0.5 0 −0.5 −1 −1.5 −0.5 0 0.5 1 1.5 Parte reale σ Figura 4.18: Curva chiusa γ e vettori per F (s) = (destra). 2 −2 −1 0 Parte reale σ s−1.5 (s+0.1)(s−1+0.5)(s−1−0.5) 1 (sinistra) e relativa curva F (s) Si considerino i vettori con origine all’interno della curva. Nel caso di uno zero in posizione z, si ha s − z = mz (s)e ϕz (s) , e la fase ha una variazione di −2π, e quindi si ha un contributo alla funzione complessiva di un 1 giro in senso orario. Nel caso di un polo in posizione p, si ha s−p = mp (s)e −ϕp (s) , la fase complessiva ha una variazione di +2π lungo γ, e quindi si ha un contributo al diagramma dell’intera funzione F (s) di un giro in senso antiorario (cioè “meno” un giro in senso orario). Analogamente, la variazione complessiva di fase per i vettori con origine al di fuori della curva γ vale zero, e quindi non vi sono contributi al numero di giri intorno all’origine. Sulla base di queste considerazione, la funzione dell’esempio descrive un percorso chiuso (diagramma a destra in figura 4.18) che compie un solo giro intorno all’origine, in senso antiorario, quando la variabile s percorre la curva chiusa γ in figura 4.18. Il Principio dell’argomento può essere utilizzato per contare il numero di poli e zeri contenuti in una assegnata regione di piano senza risolvere i rispettivi polinomi: se si ha a disposizione uno strumento per la costruzione del diagramma di una funzione F (s) al variare di s, scegliendo opportunamente la curva γ si riesce a determinare il numero di poli e zeri (in effetti, la differenza nel loro numero) all’interno della regione delimitata dalla curva. Percorso di Nyquist Diagramma di Nyquist 100 0.2 50 Parte immaginaria ω Parte immaginaria ω 0.15 R=∞ 0 −50 0.1 0.05 0 −0.05 −0.1 −0.15 −0.2 −100 −50 0 50 Parte reale σ 100 −0.25 −0.1 0 0.1 0.2 Parte reale σ Figura 4.19: Diagramma di Nyquist della funzione F (s) = 0.3 0.4 s+2 . (s + 1)(s + 3) Il Diagramma di Nyquist di una funzione di trasferimento rappresenta il comportamento di tale funzione al variare della variabile indipendente s lungo un percorso (si veda il diagramma a sinistra in figura 4.19) che racchiude tutto il semipiano destro: la semiretta immaginaria da ω = 0+ ad ω = +∞, poi un cerchio di raggio Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-197 infinito fino ad ω = −∞, e poi lungo il semiasse immaginario ω = −∞ fino ad ω = 0−7 . Tale percorso è detto percorso di Nyquist o cammino di Nyquist (diagramma a sinistra nella figura 4.19) e viene utilizzato come specifica curva γ. Si noti come il diagramma della funzione razionale consista, di fatto, solo delle parti relative ai due segmenti lungo l’asse immaginario, poiché la porzione di curva γ data dal semicerchio di raggio infinito (in colore rosso nella figura 4.19, a sinistra) si mappa nel punto origine (punto rosso nella figura 4.19, a destra). Per completezza, è bene precisare che se la funzione razionale è propria, ma non strettamente (e cioè, se il grado relativo è nullo), allora la il semicherchio di raggio infinito diviene un punto dell’asse reale diverso dall’origine. Si noti anche come la parte di diagramma relativa al semiasse negativo sia speculare (di fatto, complessa coniugata) rispetto alla porzione relativa al semiasse positivo. Volendo disegnare l’intero diagramma, è quindi sufficiente disegnare la parte relativa al semiasse positivo e poi ribaltarla rispetto all’asse reale per ottenere la figura completa. Infine, si noti come il percorrere il semiasse immaginario positivo corrisponda a percorre l’intero asse delle ascisse in un diagramma di Bode. Se quindi si dispone già del diagramma di Bode di una funzione di trasferimento F (s), ed in generale di una funzione razionale, il corrispondente diagramma di Nyquist può essere costruito a partire dal diagramma di Bode. Il verso di percorrenza da considerare è quello associato al diagramma di Bode: dal punto relativo ad ω = 0 fino al punto relativo ad ω = +∞, proseguendo poi in modo speculare lungo la porzione speculare della curva. A titolo di esempio, nelle seguenti figure 4.20 e 4.21 si riportano, rispettivamente, i diagrammi della funzione 6 6 e della funzione F2 (s) = . F1 (s) = (s + 1)(s + 2)(s + 3) (s − 1)(s + 3) Diagramma di Bode di F1(s) Diagramma di Nyquist di F1(s) 1 0 Parte immaginaria ω 0 Fase (gradi) Modulo dB −20 −40 −60 −80 −100 −200 −100 −2 10 0 2 10 10 Pulsazione (rad/sec) −300 −2 10 0 0.5 0 −0.5 −1 −1 2 10 10 Pulsazione (rad/sec) Figura 4.20: Diagramma di Nyquist della funzione F (s) = Diagramma di Bode di F2(s) 0 Parte reale σ 1 6 . (s + 1)(s + 2)(s + 3) Diagramma di Nyquist di F2(s) Parte immaginaria ω −140 Fase (gradi) Modulo dB 0 −20 −40 −150 −160 −170 −60 −2 10 0 2 10 10 Pulsazione (rad/sec) −180 −2 10 0 0.5 0 −0.5 2 10 10 Pulsazione (rad/sec) Figura 4.21: Diagramma di Nyquist della funzione F (s) = −2 −1 0 Parte reale σ 6 . (s − 1)(s + 3) 7 In modo equivalente, si può pensare di percorrere tutto il semiasse immaginario, dal punto 0 − ∞ fino all’estremo opposto 0 + ∞ e poi il cerchio di raggio infinito da 0 + ∞ fino al punto di partenza 0 − ∞ Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-198 Il caso di cui la funzione di trasferimento abbia poli o zeri nell’origine, e più in generale sull’asse immaginario, merita una specifica attenzione. In tal caso infatti il cammino di Nyquist passerebbe sopra uno o più tra i poli e gli zeri, e quindi il Principio dell’argomento perderebbe validità. In questo caso si ovvia al problema scegliendo un cammino caratterizzato da piccoli scostamenti dall’asse immaginario in corrispondenza degli elementi a parte reale nulla. In particolare, si considera un cammino di Nyquist che in corrispondenza di un polo lungo l’asse si muove lungo una semicirconferenza di raggio ǫ molto piccolo, centrata nel polo stesso e contenuta nel semipiano destro, come illustrato in figura 4.22 per il caso di un polo nell’origine e di una coppia complessa coniugata in ±2. Percorso di Nyquist 10 8 6 Parte immaginaria ω 4 R=ε 2 0 −2 −4 −6 −8 −10 −2 0 2 4 Parte reale σ 6 8 10 Figura 4.22: Cammino di Nyquist per poli sull’asse immaginario. Poiché la presenza di poli lungo l’asse immaginario determina dei diagrammi di Bode dei moduli tendenti ad infinito, per ω = 0 nel caso di poli nulli, per ω = ±p nel caso di coppie immaginarie, si ha che il corrispondente diagramma di Nyquist tende anch’esso ad infinito. Per chiudere all’infinito il diagramma (con tratti di circonferenza di raggio infinito), si tenga presente la regola generale secondo la quale percorrendo il cammino di Nyquist lasciando i poli sull’asse alla propria sinistra (percorso del cammino di Nyquist in senso orario), si lascia alla propria sinistra il corrispondente punto immagine (cioè il punto improprio a +∞). Praticamente, si può utilizzare la seguente regola di chiusura all’infinito: 1. si determinano sul diagramma di Nyquist i punti all’infinito associati all’immagine di 0+ e di 0− ; 2. si unisce l’immagine del punto 0− a quella del punto 0+ con tanti mezzi giri, di raggio infinito, quanti sono i poli nell’origine, lasciando il punto improprio alla sinistra (ruotando in senso orario). 0 10 Parte immaginaria ω 0 −10 −20 −1 10 Diagramma di Nyquist di F(s)=1/s −20 10 Fase (gradi) Modulo dB Diagramma di Bode di F(s)=1/s 20 −40 −60 −80 0 1 10 10 Pulsazione (rad/sec) −100 −1 10 0 1 10 10 Pulsazione (rad/sec) 5 R=∞ 0 −5 −10 0 5 Parte reale σ Figura 4.23: Diagramma di Nyquist della funzione F (s) = 1 . s 10 Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-199 1 A titolo di esempio, le figure 4.23 e 4.24 illustrano i diagrammi di Bode e di Nyquist delle funzioni F3 (s) = s 1 e F4 (s) = 2 , rispettivamente. s 2 0 20 −50 Fase (gradi) Modulo dB Diagramma di Bode di F(s)=1/s 40 0 −20 −100 −150 −40 −1 10 0 10 Pulsazione (rad/sec) −200 −1 10 1 10 2 20 2 Parte immaginaria ω Parte immaginaria ω F(s)=1/s (dettaglio) 3 R=∞ 0 −10 −20 −30 1 0 −1 −2 −20 0 Parte reale σ −3 −3 20 −2 −1 0 Parte reale σ Figura 4.24: Diagramma di Nyquist della funzione F (s) = La figura 4.25 riporta il caso della funzione di trasferimento F (s) = 4.10.2 1 10 2 Diagramma di Nyquist di F(s)=1/s 30 10 0 10 Pulsazione (rad/sec) 1 1 . s2 1 s2 (s+1) . Criterio di Nyquist L’idea alla base del criterio di Nyquist è quella di legare il numero di poli e zeri appartenenti al semipiano destro, e cioè a parte reale positiva, di una assegnata funzione razionale con la forma del grafico della stessa funzione, e più precisamente con il numero di giri che la stessa funzione compie intorno al punto (−1, 0) del piano complesso. Il diagramma di Nyquist viene utilizzato per studiare la stabilità di un sistema retroazionato, con retroazione unitaria dall’uscita, del tipo in figura 4.26. La funzione di trasferimento W (s) del sistema a ciclo chiuso (si veda la figura 4.26), cioè tra il segnale di riferimento r(t) ed il segnale di uscita y(t), è legata alla funzione di trasferimento del sistema in catena aperta A(s), cioè del sistema tra il segnale di ingresso u(t) ed il segnale di uscita y(t), dalla relazione: W (s) = A(s) , 1 + A(s) (4.127) e quindi, esplicitando il numeratore ed il denominatore di W (s) e A(s), si ha: W (s) = A(s) nA (s)/dA (s) nA (s) = = , 1 + A(s) 1 + nA (s)/dA (s) nA (s) + dA (s) (4.128) e quindi dA (s) descrive i poli del sistema a ciclo aperto, mentre il polinomio nA (s) + dA (s) descrive i poli del sistema a ciclo chiuso. In questo caso particolare, la funzione di trasferimento A(s) coincide con la funzione di trasferimento di anello. Nel seguito si assume che la funzione di trasferimento di anello A(s) non abbia parti in comune tra numeratore e denominatore, non sia cioè caratterizzata da cancellazioni tra poli e zeri. La presenza Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-200 Diagramma di Bode di F(s)=1/s2(s+1) 100 −180 −200 Fase (gradi) Modulo dB 50 0 −50 −100 −150 −2 10 −220 −240 −260 0 10 Pulsazione (rad/sec) 2 10 −280 −2 10 20 R=∞ 10 0 −10 2 10 F(s)=1/s2(s+1) (dettaglio) 2 Parte immaginaria ω Parte immaginaria ω Diagramma di Nyquist di F(s)=1/s2(s+1) 30 0 10 Pulsazione (rad/sec) 1 0 −1 −20 −30 −40 −20 0 20 Parte reale σ 40 −2 −2 −1.5 −1 −0.5 Parte reale σ Figura 4.25: Diagramma di Nyquist della funzione F (s) = r(t) u(t) 0 0.5 1 . s2 (s + 1) y(t) A(s) W (s) Figura 4.26: Sistema a retroazione unitaria dall’uscita. di tali cancellazioni, come si vedrà nel seguito, equivale alla presenza di porzioni di sistema non raggiungibile e/o non osservabile, la cui presenza richiede specifiche attenzioni dal punto di vista della stabilità. La funzione razionale C(s) = 1 + A(s) è espressa da: C(s) = 1 + A(s) = nA (s) + dA (s) , dA (s) (4.129) e quindi gli zeri della funzione C(s) coincidono con i poli del sistema a ciclo chiuso, mentre i poli della funzione C(s) coincidono con i poli del sistema a ciclo aperto. Tale funzione caratterizza quindi sia la stabilità del sistema a ciclo aperto, sia la stabilità del sistema a ciclo chiuso. Il diagramma di Nyquist di tale funzione, cioè il diagramma di C(s) lungo il percorso di Nyquist (che circonda tutto il semipiano destro), consente quindi di valutare la differenza tra il numero di poli del sistema a Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-201 ciclo chiuso con parte reale positiva (gli zeri di C(s)) ed il numero di poli a ciclo aperto con parte reale positiva (i poli di C(s)). Poiché l’interesse è per lo studio della stabilità del sistema a ciclo chiuso, è evidente che si devono cercare condizioni sotto le quali la funzione di trasferimento C(s) non abbia zeri a parte reale positiva, cioè contenuti all’interno del cammino di Nyquist. Infine, si noti come il diagramma della funzione C(s) ed il diagramma della funzione di trasferimento di anello A(s) siano uguali, a meno di una traslazione nel piano di Gauss. Ne segue che i giri intorno all’origine della funzione C(s) coincidono con i giri di A(s) intorno al punto (−1, 0), detto punto critico. Si indichino con N il numero di giri intorno al punto (−1, 0), contati come positivi se in senso antiorario e negativi se in senso orario (e quindi, sostanzialmente, si utilizzi la relazione (4.125). Infine, il diagramma della funzione di trasferimento di anello è detto ben definito se non passa per il punto (−1, 0), cosı̀ che il numero di giri intorno a (−1, 0) di A(s), e quindi intorno all’origine per C(s), siano ben definiti. In tal caso, anche il numero N è detto ben definito. Sulla base di tutti questi elementi è possibile formulare il Criterio di Nyquist. Teorema 4.19 (Criterio di Nyquist) Il sistema con retroazione unitaria dall’uscita W (s) = A(s) , 1 + A(s) (4.130) rappresentato dallo schema in figura 4.26, è asintoticamente stabile se e solo se valgono entrambe le due condizioni seguenti: • il numero N di giri in senso antiorario della funzione di trasferimento di anello A(s) intorno al punto (−1, 0) è ben definito; • tale numero N ed il numero P di poli a parte reale positiva del sistema a ciclo aperto A(s) sono nella relazione: N = P. (4.131) Dimostrazione La dimostazione del teorema, di fatto, è data dai commenti che precedono e dalle considerazioni in merito al diagramma di Nyquist. Vengono richiamati gli elementi principali. • In base al principio dell’argomento, il numero di giri intorno all’origine, positivi se in senso antiorario, di una funzione razionale F (s) quando la variabile s percorre, in senso orario, una curva chiusa γ è pari alla differenza P − Z tra il numero Z di zeri ed il numero P di poli della funzione F (s) interni alla curva stessa (equazione (4.125)). • Il diagramma di Nyquist di una funzione di trasferimento è il diagramma della stessa nel piano di Gauss quando la variabile s percorre il cammino di Nyquist, corretto nel caso di poli sull’asse immaginario della stessa funzione di trasferimento. • In considerazione della forma del cammino di Nyquist, il numero di giri intorno all’origine, in senso antiorario, del diagramma di Nyquist di una funzione di trasferimento F (s) conta la differenza tra il numero P di poli a parte reale positiva ed il numero Z di zeri a parte reale positiva della funzione F (s). • Dato un sistema di controllo del tipo in figura 4.26, in retroazione unitaria dall’uscita, i poli del sistema a ciclo aperto coincidono con i poli della funzione di trasferimento C(s) = 1 + A(s), i poli del sistema a ciclo chiuso con gli zeri della funzione di trasferimento C(s) = 1 + A(s). • Il diagramma di Nyquist della funzione C(s) coincide con quello della funzione di trasferimento di anello A(s), a meno di una traslazione lungo la retta reale. Ciò implica che il numero N di giri del diagramma di Nyquist intorno all’origine di C(s) coincide con il numero N di giri intorno al punto (−1, 0) della funzione A(s). • Il sistema a ciclo chiuso è asintoticamente stabile se non ha poli a parte reale positiva (cioè interni al cammino di Nyquist) o a parte reale nulla (cioè, tali da rendere N non ben definito). • Ne seguono le due condizioni del teorema. Commento 4.8 Dal Teorema di Nyquist discende che, nel caso in cui N sia diverso da P , la differenza N − P indica il numero di poli a parte reale positiva del sistema retroazionato. Capitolo 4: Stabilità 4.10.3 [Ed. 2014, V 4.1 - PV - UniPG] - 4-202 Stabilità e robustezza Il Criterio di Nyquist è interessante anche perchè consente di valutare alcuni elementi di robustezza della stabilità a ciclo chiuso. Il Criterio di Nyquist appena presentato consente di studiare la stabilità a ciclo chiuso se il modello del sistema, la sua funzione di trasferimento, è nota in modo completo. Molto spesso, anzi, nella maggior parte dei casi di interesse reale, la conoscenza del modello è approssimata. Ad esempio, molti dei parametri che caratterizzano un modello di norma possono essere determinati solo con un certo grado di approssimazione. Ed inoltre, quasi sempre il modello trascura componenti ad alta frequenza, cioè poli lontani (e cioè, autovalori con parte reale grande). D’altro canto, la stabilità è una proprietà fondamentale, dalla quale non è possibile prescindere. Si pone quindi il problema di caratterizzare in che misura la stabilità venga preservata anche a fronte di incertezze nel modello nominale utilizzato per la verifica di stabilità, e che lo differenziano da quello reale. Si tratta insomma di studiare in che misura si abbia una stabilità robusta a fronte di incertezze nei parametri che caratterizzano il modello. Il criterio di Nyquist consente di determinare in modo immediato la variazione complessiva (l’incertezza complessiva) di guadagno tollerabile nella funzione di trasferimento di anello senza perdere stabilità a ciclo chiuso, e la variazione complessiva di fase. Margine di guadagno Il primo criterio di robustezza è chiamato margine di gudagno, ed indica di quanto possa essere aumentato il guadagno della funzione di anello senza perdere stabilità a ciclo chiuso. Si consideri la funzione di trasferimento di anello: A(s) = g , (s + 1)(s + 2)(s + 3) (4.132) in cui g indica un fattore di guadagno incerto, il cui valore nominale si assume essere g = 6. La figura 4.27 riporta i diagrammi di Bode di tale funzione e la figura 4.28 il corrispondente diagramma di Nyquist. Il sistema a ciclo aperto non ha poli a parte reale positiva, e quindi P = 0. Il diagramma di Nyquist non circonda il punto critico, né lo tocca, e quindi N è ben definito e vale zero. Ne segue che il sistema a ciclo chiuso è asintoticamente stabile. Diagramma di Bode di F (s) 1 0 |mg|dB Modulo dB −20 −40 −60 −80 −100 −2 10 −1 10 0 10 Pulsazione (rad/sec) 1 10 2 10 0 Fase (gradi) −50 −100 −150 −200 −250 −2 10 −1 10 0 10 Pulsazione (rad/sec) 1 10 Figura 4.27: Margine di guadagno: diagramma di Bode di F (s) = 2 10 g , g = 6. (s + 1)(s + 2)(s + 3) Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-203 Modulo di guadagno Modulo di guadagno (dettaglio) 4 1 2 Parte immaginaria ω Parte immaginaria ω 3 1 0 −1 −2 0.5 1/mg 0 A −0.5 −3 −4 0 2 Parte reale σ 4 −1 −1.5 −1 −0.5 Parte reale σ Figura 4.28: Margine di guadagno: diagramma di Nyquist di F (s) = 0 0.5 g , g = 6. (s + 1)(s + 2)(s + 3) L’analisi del diagramma di Nyquist mostra che, se il guadagno aumenta di un fattore sufficiente a portare il punto A, che rappresenta l’intersezione tra il diagramma stesso e l’asse reale negativo, in corrispondenza del punto critico, si perde la stabilità a ciclo chiuso. Infatti, in tal caso il parametro N non sarebbe ben definito. Un ulteriore aumento, anche piccolissimo, del guadagno di anello porterebbe il diagramma a compiere due giri intorno al punto critico, e quindi porterebbe alla instabilità del sistema a ciclo chiuso. Il valore massimo di cui può essere aumentato il guadagno è quindi il reciproco della lunghezza di tale intervallo (dall’origine al punto A), lunghezza indicata con 1/mg nella figura 4.28. Esaminando il corrispondente diagramma di Bode, si vede che il margine di guadagno corrisponde, a parte il segno e la conversione in decibel, al valore del modulo in corrispondenza della pulsazione alla quale la fase vale −180◦. Infatti, l’intersezione con l’asse reale negativo corrisponde esattamente ad una fase di −180◦. Nel caso dell’esempio, il margine di guadagno (il segmento in rosso nella figura 4.27) vale 20dB, che in valori assoluti corrisponde ad un incremento possibile del guadagno (come fattore moltiplicativo) di 10. Una delle conseguenze del concetto stesso di margine di guadagno è che, in generale, al crescere del guadagno di anello, un sistema retroazionato tende alla instabilità. Commento 4.9 Dalla definizione di margine di guadagno ne consegue che, se un sistema ha un ritardo di fase (un diagramma di Bode delle fasi) sempre maggiore (in segno) di −180◦ , allora il suo margine di guadagno è infinito, cioè il sistema a ciclo chiuso è asintoticamente stabile per ogni guadagno di anello. Domanda 4.1 Il lettore/studente è invitato a valutare il commento precedente, sul margine di guadagno infinito, insieme alla affermazione che spesso, nella derivazione di modelli, vengono trascurati poli ad alta frequenza, perchè si lavora con approssimazioni ai poli dominanti. Margine di fase Considerazioni analoghe a quelle condotte per il modulo possono essere fatte per la fase. Si consideri la funzione di trasferimento di anello: g , (4.133) A(s) = (s + 1)(s + 2)(s + 3) in cui g indica un fattore di guadagno incerto, il cui valore nominale si assume essere g = 30. La figura 4.29 riporta i diagrammi di Bode di tale funzione e la figura 4.30 il corrispondente diagramma di Nyquist. In questo caso, si vede facilmente dal diagramma a destra in figura 4.30 che la fase, in corrispondenza della pulsazione con la quale si ha intersezione con il cerchio unitario (in nero nella figura) possa essere modificata fino a raggiungere il valore di −180◦. Oltre tale valore, il diagramma passa per il punto critico, o lo supera, e quindi non si ha più stabilità a ciclo chiuso. Il valore del quale può essere incrementato il ritardo di fase (algebricamente, del quale può essere diminuita la fase) è pari all’angolo tra il punto in esame e l’asse reale negativo: l’angolo indicato con mφ in figura. Osservando i diagrammi di Bode del sistema, ed interpretando il diagramma di Nyquist, si vede in modo immediato che il margine di fase corrisponde alla distanza dal valore −180◦ del diagramma delle fasi, in corrispondenza della pulsazione alla quale il modulo vale 0 dB (e cioè, alla quale il diagramma interseca il cerchio Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-204 Diagramma di Bode 20 Modulo dB 0 −20 −40 −60 −80 −100 −2 −1 10 0 10 1 10 Pulsazione (rad/sec) 2 10 10 0 mφ Fase (gradi) −50 −100 −150 −200 −250 −2 −1 10 0 10 1 10 Pulsazione (rad/sec) Figura 4.29: Margine di fase: diagramma di Bode di F (s) = Modulo di fase 2 10 10 g , g = 30. (s + 1)(s + 2)(s + 3) Modulo di fase (dettaglio) 4 1.5 1 2 Parte immaginaria ω Parte immaginaria ω 3 1 0 −1 −2 0 m φ −0.5 −1 −3 −4 0.5 −1.5 0 2 Parte reale σ 4 −1 0 Parte reale σ Figura 4.30: Margine di fase: diagramma di Nyquist di F (s) = 1 g , g = 30. (s + 1)(s + 2)(s + 3) unitario). Il margine di fase per l’esempio considerato, pari al segmento in rosso tratto continuo in figura 4.29, vale 25◦ . Commento 4.10 I concetti di margine di guadagno e margine di fase enunciati sopra sono ben definiti solo per i sistemi a stabilità regolare, cioè per i sistemi caratterizzati dal fatto che il diagramma di Bode dei moduli assume per una sola pulsazione il valore di 0dB, ed il diagramma delle fasi assume per una sola pulsazione il valore di −180◦ . Commento 4.11 Per completezza, si cita il caso dei sistemi a stabilità condizionata, in cui la stabilità a ciclo chiuso si ha solo per intervalli ben definiti del guadagno di anello, a motivo della forma assai intrecciata del diagramma di Nyquist intorno al semiasse reale negativo. Capitolo 4: Stabilità 4.11 [Ed. 2014, V 4.1 - PV - UniPG] - 4-205 Esercizi proposti Esercizio 4.1 L’utilizzo di qualsiasi algoritmo di approssimazione numerica, ed in particolare quindi dell’algoritmo (4.63), richiede la definizione di un criterio di terminazione, per valutare il numero di iterazioni richieste. Il lettore/studente formuli un criterio di terminazione per tale algoritmo, ed implementi, in un linguaggio di programmazione qualsiasi, sia l’algoritmo sia il criterio di terminazione, valutando i risultati ottenuti. Esercizio 4.2 L’analisi degli amplificatori operazionali in sezione 4.9.4 è stata condotta assumendo un modello a guadagno costante per OA2 . Ciò, sebbene non dichiarato esplicitamente, implica una importante ipotesi sulla banda passante del sottosistema relativo ad OA2 . Quale è questa ipotesi? Esercizio 4.3 Con riferimento alla sezione 4.9.4 , il lettore/studente è invitato a condurre l’analisi del circuito in figura 4.10 utilizzando un modello a polo dominante anche per OA2 . Esercizio 4.4 . Con riferimento alla sezione 4.9.4 , il lettore/studente è invitato a condurre l’analisi del circuito in figura 4.10 utilizzando come modelli le due funzioni di trasferimento a ciclo aperto per OA1 ed OA2 , in luogo del modello nello spazio di stato suggerito nella precedente domanda e nella trattazione riportata sopra. Esercizio 4.5 Calcolare il guadagno ingresso-uscita del circuito riportato nella seguente figura 4.5, sia con riferimento ad un modello a guadagno costante per l’amplificatore operazionale, sia con riferimento ad un modello a polo dominante, e confrontare i due risultati. vD − + vIN vOUT R2 R1 Esercizio 4.6 Calcolare i punti di equilibrio e valutare le loro proprietà di stabilità, per il seguente sistema dinamico a tempo discreto: x1 (t + 1) = x1 + x1 (x21 − 1)(1 + x22 ) x2 (t + 1) = x21 . Esercizio 4.7 Dato il seguente sistema dinamico, valutare le proprietà di stabilità interna ed esterna al variare del parametro α nell’insieme dei reali: 0 1 0 0 1 x + 0 u, ẋ = 0 0 0 α 1−α 1 1 −1 0 x, y = Esercizio 4.8 Studiare la stabilità dell’origine per il seguente sistema a tempo continuo: ẋ1 = −αx31 − 2x32 ẋ2 = x1 − x2 , al variare del parametro α nell’insieme dei reali positivi (α ∈ R, α > 0). Capitolo 4: Stabilità [Ed. 2014, V 4.1 - PV - UniPG] - 4-206 Esercizio 4.9 Studiare la stabilità dell’origine per il seguente sistema a tempo discreto, per β ∈ R: x1 (k + 1) = (β − 1)x1 (k) x2 (k + 1) = βx1 (k) − (β + 1)x2 (k). Esercizio 4.10 Studiare le proprietà di stabilità dell’origine per il seguente sistema dinamico a tempo continuo: ẋ1 = ẋ2 = x21 + 2x1 x2 − x32 x22 + x21 ex2 + x32 Capitolo 5: Raggiungibilità [Ed. 2014, V 4.0 - PV - UniPG] - 5-207 Capitolo 5 Proprietà strutturali: raggiungibilità 5.1 Introduzione Lo studio della proprietà strutturali del sistemi dinamici (nel nostro caso, limitatamente ai sistemi lineari) ha lo scopo di analizzare le implicazioni della struttura interna del sistema rispetto alla interazione con l’ambiente esterno. La prima proprietà, detta raggiungibilità, si preoccupa di caratterizzare il grado di influenza del segnale di ingresso rispetto allo stato interno. In altre parole, fino a che punto è possibile influenzare e governare lo stato interno agendo su segnale di ingresso. 5.2 Definizioni Si ricorda che, nel caso di un sistema lineare e stazionario a tempo discreto, la forma esplicita è data da: k x(k, x0 , u(·)) = A x0 + k−1 X Ak−i−1 Gu(i), i=0 mentre nel caso di un sistema a tempo continuo tale forma è data da: Z t x(t, x0 , u(·)) = e At x0 + e A(t−τ ) Gu(τ )dτ, 0 k ∈ Z, t ∈ R. (5.1) (5.2) Inoltre, un sistema dinamico, a tempo continuo o discreto, descritto da matrici A, B ed C, verrà sinteticamente indicato con Σ(A, B, C), o Σ(A, B) se la matrice di uscita C non è rilevante. Le proprietà strutturali di raggiungibilità e controllabilità descrivono la capacità del vettore dei segnali di ingresso di influenzare il comportamento del sistema dinamico. Nel seguito, per semplicità, la variabile indipendente tempo, sia per sistemi a tempo continuo che per sistemi a tempo discreto, verrà indicata con la lettera t. Definizione 5.1 (Stato raggiungibile) Uno stato x del sistema Σ = (A, B, C), a tempo continuo o a tempo discreto, si dice raggiungibile se esiste un istante finito di tempo t > 0 ed una funzione di ingresso u(·) tale che risulti: x(t, 0, u(·)) = x. (5.3) In altre parole, un punto x dello spazio di stato è raggiungibile se esiste un segnale di ingresso ed un istante di tempo t tale da portare lo stato del sistema in tale punto all’istante t, a partire da condizioni iniziali nulle. Definizione 5.2 (Sistema raggiungibile) Un sistema Σ = (A, B, C), a tempo continuo o a tempo discreto, si dice raggiungibile se tutti i punti del suo spazio di stato X sono raggiungibili. Una proprietà, in qualche modo complementare, rispetto alla raggiungibilità è quella della controllabilità. Definizione 5.3 (Stato controllabile) Uno stato x del sistema Σ = (A, B, C), a tempo continuo o a tempo discreto, si dice controllabile se esiste un istante finito di tempo t > 0 ed una funzione di ingresso u(·) tale che risulti: x(t, x, u(·)) = 0. (5.4) Capitolo 5: Raggiungibilità [Ed. 2014, V 4.0 - PV - UniPG] - 5-208 In altre parole, un punto x dello spazio di stato è controllabile se esiste un segnale di ingresso ed un istante di tempo t tale da portare lo stato del sistema nell’origine dello spazio di stato all’istante t, a partire dallo stato iniziale x. Definizione 5.4 (Sistema controllabile) Un sistema Σ = (A, B, C), a tempo continuo o a tempo discreto, si dice controllabile se tutti i punti del suo spazio di stato X sono controllabili. È facile dimostrare che l’insieme dei punti raggiungibili e quello dei punti controllabili formano un sottospazio dello spazio di stato. Lemma 5.1 ([8]) L’insieme X R degli stati raggiungibili è un sottospazio lineare dello spazio di stato X . Lemma 5.2 ([8]) L’insieme X C degli stati controllabili è un sottospazio lineare dello spazio di stato X . 5.3 Raggiungibilità per sistemi LSTD Lo studio della proprietà di raggiungibilità per un sistema lineare, a tempo discreto, stazionario può essere condotto a partire dalla rappresentazione esplicita 5.1, o, equivalentemente, a partire dalla rappresentazione implicita. Si analizzi in dettaglio la soluzione del sistema al crescere del tempo. Utilizzando una delle due rappresentazioni, e ricordando che la proprietà viene studiata assumendo condizione iniziale nulla, al primo passo si ha: x(1) = Bu(0). (5.5) Introdotta la matrice R1 := [B], detta matrice di raggiungibilità ad un passo, è immediato vedere che l’insieme X1R degli stati raggiungibili in un passo è dato da X1R := Im [R1 ] = Im [B]. (5.6) Similmente, analizzando la risposta forzata al passo k = 2, si trova: x(2) = = Ax(1) + Bu(1) (5.7) ABu(0) + Bu(1) = [ B AB ] u(1) u(0) . (5.8) e quindi, con ovvio significato dei simboli: X2R := Im [R2 ] = Im [ B AB ]. (5.9) Iterando il ragionamento, al passo k si ottiene: x(k) = Bu(k − 1) + ABu(k − 2) + · · · + Ak−1 Bu(0) = B AB ··· Ak−1 B u(k − 1) u(k − 2) .. . u(0) . La matrice Rk := B AB · · · Ak−1 B è detta matrice di raggiungibilità in k passi, mentre l’insieme XkR , sottospazio degli stati raggiungibili in k passi, è dato dall’immagine di tale matrice: XkR := Im [Rk ] = Im B AB · · · Ak−1 B . (5.10) E` facile vedere che i sottospazi di raggiungibilità sono ordinati secondo la seguente catena di inclusioni, poiché sono costruiti aggiungendo in successione nuove colonne alla matrice relativa al passo precedente: R X1R ⊆ X2R ⊆ · · · ⊆ XkR ⊆ XnR = Xn+1 . (5.11) Si noti che l’inclusione diviene sicuramente un’uguaglianza al passo n, in virtù del teorema di Cayley-Hamilton. Ovviamente l’inclusione può divenire un’uguaglianza anche prima del passo n. Capitolo 5: Raggiungibilità [Ed. 2014, V 4.0 - PV - UniPG] - 5-209 Il sottospazio X R , detto sottospazio degli stati raggiungibili, cioè il sottospazio che raccoglie la totalità degli stati raggiungibili, si ottiene quindi, al più, al passo n: X R := XnR ed è generato dalla matrice di raggiungibilità R: R := B AB · · · An−1 B . (5.12) Poichè X R contiene tutti i punti raggiungibili, un sistema dinamico Σ(A, B) è raggiungibile se e solo se tale spazio coincide con l’intero spazio di stato: XR ≡ X, (5.13) e quindi se e solo se la matrice di raggiungibilità ha rango pieno. Vale quindi il criterio di raggiungibilità enunciato nel seguente teorema di raggiungibilità: Teorema 5.1 (Criterio di raggiungibilità) Un sistema dinamico a tempo discreto Σ(A, B) è raggiungibile se e solo se rango B AB · · · An−1 B = n. (5.14) Si noti come la matrice di raggiungibilità sia una matrice con n righe e n × m colonne. Il più piccolo intero r per cui la matrice B AB · · · Ar−1 B (5.15) ha rango n è detto indice di raggiungibilità del sistema. Il calcolo dell’ingresso u(·) che consente di raggiungere lo stato assegnato, cosı̀ come precisato nella definizione 5.1, è possibile a partire dalla matrice di raggiungibilità del sistema, od anche dalla matrice di raggiungibilità in un numero fissato di passi. In particolare, la possibilità di raggiungere uno stato assegnato xf in k passi, con k ≥ 1, è legata alla possibilità di risolvere il seguente sistema algebrico: u(k − 1) u(k − 2) xf = B AB · · · Ak−1 B . .. . u(0) L’esistenza di una soluzione per tale sistema indica la raggiungibilità del punto in k passi, ed una sua soluzione (“la” soluzione, se unica), rispetto alle incognite u(k − 1), · · · , u(0), rappresenta una possibile sequenza (“la” sequenza, se unica) che consente di raggiungere tale punto dall’origine in k passi. Per quanto concerne l’esistenza della soluzione, è ben noto che cioè si verifica se, e solo se: rango B AB · · · Ak−1 B = rango xf | B AB · · · Ak−1 B (5.16) 5.4 Raggiungibilità per sistemi LSTC Lo studio del sottospazio degli stati raggiungibili per sistemi lineari a tempo continuo è basato sul concetto di gramiano di raggiungibiltà [8, 10]. L’introduzione di tale concetto esula dagli scopi di queste note. L’analisi porta a concludere, anche nel caso dei sistemi a tempo continuo, che il sottospazio degli stati raggiungibili è dato dall’immagine della matrice di raggiungibilità: X R = Im [R] = Im B AB · · · An−1 B . (5.17) Ne segue quindi un criterio di raggiungibilità a tempo continuo, raccolto nel seguente teorema, che è del tutto identico all’analogo teorema per i sistemi a tempo discreto: Teorema 5.2 (Criterio di raggiungibilità) Un sistema dinamico a tempo continuo Σ(A, B) è raggiungibile se e solo se rango B AB · · · An−1 B = n. (5.18) Il calcolo del segnale di ingresso che consente di raggiungere, se possibile, un assegnato punto dello spazio di stato richiede il calcolo del gramiano di raggiungibilità (si veda [8, 10]). Capitolo 5: Raggiungibilità 5.5 [Ed. 2014, V 4.0 - PV - UniPG] - 5-210 Risultati notevoli Poiché la matrice di raggiungibilità, il sottospazio degli stati raggiungibili ed il criterio di raggiungibilità possono essere formulati in modo identico per sistemi a tempo continuo e per sistemi a tempo discreto, tutte le proprietà che ne derivano valgono in modo del tutto identico/analogo per entrambe le classi di sistemi. Nei lemmi che seguono vengono riportate alcune proprietà, particolarmente rilevanti ai fini del corso. Lemma 5.3 Il sottospazio X R degli stati raggiungibili è invariante rispetto a trasformazioni di similarità. Si ricordi che un sottospazio vettoriale V è detto invariante rispetto ad un operatore A, e cioè V è A − invariante, se vale la relazione: AV ⊆ V ⇔ ∀v ∈ V, Av ∈ V. (5.19) Vale quindi il seguente lemma: Lemma 5.4 Il sottospazio X R degli stati raggiungibili è un sottospazio A-invariante. Se un sistema Σ(A, B), indifferentemente a tempo continuo o a tempo discreto, non è raggiungibile, è possibile analizzare in dettaglio la sua struttura interna, ed evidenziare la parte eventualmente raggiungibile, utilizzando la forma standard di raggiungibilità, o decomposizione di Kalman rispetto alla raggiungibilità. Tale decomposizione è descritta dal seguente teorema: Teorema 5.3 (Decomposizione di Kalman rispetto alla raggiungibilità) Se il sistema Σ = (A, B, C) non è raggiungibile, esiste una trasformazione di coordinate nello spazio di stato x̄ = T −1 x, tale che il sistema, nelle nuove coordinate, è descritto dalle matrici: B̄1 Ā1,1 Ā1,2 −1 −1 (5.20) , C̄ = CT = C̄1 C̄2 , , B̄ = T B = Ā = T AT = 0 0 Ā2,2 in cui i blocchi Ā1,1 e Ā2,2 sono matrici quadrate, di dimensione ρ × ρ e (n − ρ) × (n − ρ), rispettivamente, con ρ pari al rango della matrice di raggiungibilità, ed i blocchi Ā1,2 , B̄1 , C̄1 e C̄2 sono di dimensioni corrispondenti. Inoltre, il sottosistema Σ̄1,1 = (Ā1,1 , B̄1 , C̄1 ) è completamente raggiungibile. Il calcolo della matrice di trasformazione T −1 , o meglio la determinazione della nuova base T , è basato sulla determinazione di un numero opportuno di colonne indipendenti della matrice di raggiungibilità. Sia ρ < n il rango della matrice di raggiungibilità. La matrice di trasformazione può essere costruita selezionando ρ colonne indipendenti di R, ed utilizzando ulteriori n − ρ vettori indipendenti per completare la base. Si consideri il caso particolare di un sistema con un solo ingresso, per il quale quindi la matrice B è costituita da una sola colonna. In tal caso, se la matrice di raggiungibilità ha rango ρ, una possibile scelta di altrettante colonne indipendenti è data dalla prime ρ colonne. La matrice di trasformazione è allora: T = b Ab · · · Aρ−1 b w1 · · · wn−ρ . (5.21) con w1 , · · · , wn−ρ vettori tali da generare una nuova base (e quindi, tali da generare una matrice T non singolare). La forma standard di raggiungibilità è di estremo interesse, perché consente di evidenziare il sottosistema completamente raggiungibile e quello non raggiungibile. Una proprietà fondamentale del sottosistema raggiungibile è quella di essere il solo a caratterizzare la matrice di trasferimento dell’intero sistema, come affermato nel seguente teorema. Teorema 5.4 Sia Σ = (A, B, C) un sistema non completamente raggiungibile, e sia Σ̄1 = (Ā1,1 , B̄1 , C̄1 ) il sottosistema raggiungibile ottenuto dalla decomposizione canonica di Kalman rispetto alla raggiungibilità. Allora, i due sistemi Σ e Σ̄1 hanno la stessa matrice di trasferimento: C(ηI − A)−1 B = C̄1 (ηI − Ā1,1 )−1 B̄1 (5.22) ▽ Il teorema precedente implica che gli autovalori della matrice Ā2,2 del sottosistema non raggiungibile non compaiono come poli della matrice di trasferimento del sistema Σ. Nella relazione (5.22), la variabile complessa η rappresenta la variabile s di Laplace nel caso dei sistemi LSTC e la variabile z nel caso dei sistemi LSTD. Infine, si riporta un ulteriore corollario, legato alla raggiungibilità (si veda [10][§5.7, corollario 2]): Capitolo 5: Raggiungibilità [Ed. 2014, V 4.0 - PV - UniPG] - 5-211 Corollario 5.1 Sia Σ = (A, B, C) un sistema non completamente raggiungibile. Gli autovalori della matrice Ā2,2 , che descrive il sottosistema non raggiungibile, sono tutti e soli i valori di λ in corrispondenza dei quali la matrice [A − λI|B] (5.23) non ha rango pieno. Capitolo 5: Raggiungibilità 5.6 [Ed. 2014, V 4.0 - PV - UniPG] - 5-212 Esercizi risolti Esercizio 5.1 Dato il sistema dinamico a tempo discreto −2 −1 −5 3 x(k + 1) = 0 1 0 x(k) + 1 u(k), 2 2 5 −2 a) studiare la raggiungibilità; b) determinare la decomposizione rispetto alla raggiungibilità. Soluzione esercizio 5.1. −5 3 0 x(k) + 1 u(k), 5 −2 −2 −1 1 x(k + 1) = 0 2 2 Raggiungibilità. La matrice di raggiungibilità di questo sistema è data da: 3 3 3 R= 1 1 1 , −2 −2 −2 e quindi il sistema non è raggiungibile. Il suo indice di raggiungibilià è r = 1. Decomposizione rispetto alla raggiungibilità. Per calcolare la decomposizione, si sceglie un insieme di r = 1 colonne indipendenti della matrice R, ad esempio e1 = b, e si completa tale insieme con 2 colonne linearmente indipendenti; ad esempio, si può scegliere: 1 0 e2 = 0 , e3 = 0 . 0 1 Ogni altra scelta di due colonne linearmente indipendenti rispetto alla matrice b è possibile. La base per la decomposizione rispetto alla raggiungibilità è quindi: 3 1 0 T = 1 0 0 , −2 0 1 con inversa: T −1 0 = 1 0 1 0 −3 0 . 2 1 Nelle nuove coordinate x̄ = T −1 x il sistema è descritto dalle matrici: 1 0 0 1 Ā = 0 −2 −5 , b̄ = 0 ; 0 2 5 0 con la notazione abitualmente utilizzata si ha: Ā11 = 1 Esercizio 5.2 Dato il sistema dinamico a tempo 1 −5 x(k + 1) = 2 0 0 y(k) = , Ā22 = −2 −5 2 5 . discreto 0 −3 1 1 1 1 −5 x(k) + −1 u(k), 2 0 x(k), Capitolo 5: Raggiungibilità [Ed. 2014, V 4.0 - PV - UniPG] - 5-213 1. valutare la raggiungibilità; 2. determinare, se possible, una sequenza di controllo per raggiungere lo stato x1 = (2 − 3 1)T ; 3. determinare una decomposizione rispetto alla raggiungibilità. Soluzione esercizio 5.2. Sistema dinamico a tempo discreto 1 0 1 1 x(k + 1) = −5 −3 −5 x(k) + −1 u(k), 2 1 2 0 0 0 1 x(k), y(k) = Valutare la raggiungibilità. Per valutare la raggiungibilità del sistema in esame, si deve valutare il rango della matrice di raggiungibilità: 1 1 2 R = b Ab A2 b = −1 −2 −4 0 1 2 il cui rango è due, e quindi il sistema non è raggiungibile. Infatti, la seconda e terza colonna della matrice di raggiungibilità sono linearmente dipendenti. Determinare, se possible, una sequenza di controllo per raggiungere lo stato x1 = (2 − 3 1)T . Lo stato x̄ è raggiungibile se appartiene all’immagine della matrice di raggiungibilità. In particolare, il punto di interesse è pari alla somma della prime due colonne di R. Procedendo in modo analitico, si deve verificare il rango della matrice: 1 1 2 b Ab x̄ = −1 −2 −3 0 1 1 che risulta essere pari a due, per cui il punto è raggiungibile in due passi. La sequenza di controllo che consente di raggiungere il punto x̄ in due passi si può ottenere dalla soluzione del sistema: 2 1 1 u(1) −1 −2 = −3 u(0) 1 0 1 che, per ispezione, è data da: u(0) = 1, u(1) = 1. Determinare una decomposizione rispetto alla raggiungibilità. Poiché il sistema non è raggiungibile, ha senso determinare la decomposizione rispetto alla raggiungibilità. Le prime due colonne della matrice di raggiungibilità sono linearmente indipendenti, ed un possibile vettore per completare la base è dato, ad esempio, dalla prima colonna della matrice identita, per cui la matrice di cambio di base e la sua inversa sono date da: 0 −1 −2 1 1 1 1 . T = −1 −2 0 , T −1 = 0 0 1 1 1 0 1 0 La decomposizione rispetta alla raggiungibilità è quindi descritta dalle matrici: 0 0 1 1 Ā = T −1 AT = 1 2 2 , b̄ = T −1 b = 0 , Ā = T −1 AT = 0 1 0 0 −2 0 0 . Capitolo 5: Raggiungibilità 5.7 [Ed. 2014, V 4.0 - PV - UniPG] - 5-214 Esercizi proposti Esercizio 5.3 Dato il sistema dinamico a tempo discreto x(k + 1) = Ax(k) + B1 u(k), a) studiare la raggiungibilità ; −1 1 0 2 0 , A= 2 2 −1 1 −1 B1 = −2 , 0 0 1 ]T e x̄2 = [ 2 1 b) verificare la raggiungibilità e degli stati x̄1 = [ 1 0 ]T ; c) se gli stati x̄1 e x̄2 sono raggiungibili, determinare due segnali di controllo per raggiungerli in un numero minimo di passi; d) determinare almeno due distinti segnali di controllo che consentano di raggiungere lo stato x̄1 in 11 passi. Esercizio 5.4 Dato il sistema dinamico a tempo discreto x(k + 1) = Ax(k) + B1 u(k), a) studiare la raggiungibilità; b) verificare la raggiungibilità dello stato x̄1 = [ 1 −1 1 A= 1 1 1 0 0 0 , 1 1 B1 = 0 , 0 2 1 ]T ; c) se lo stato x̄1 non è raggiungibile, determinare lo stato xo ∈ X R che rende minima la funzione kx̄1 − xk2 al variare di x nel sottospazio di raggiungibilità; d) determinare un segnale di controllo per raggiungere lo stato x̄1 o lo stato xo nel numero minimo di passi. Esercizio 5.5 Dato il sistema dinamico a tempo discreto x(k + 1) = Ax(k) + B1 u(k), a) studiare la raggiungibilità; b)verificare la raggiungibilità dello stato x̄ = [ 3 −1 1 A= 1 2 1 0 0 0 , 1 1 B1 = 0 , 0 1 2 ]T ; c) se lo stato x̄ è raggiungibile, determinare un segnale di controllo u(·) per raggiungerlo nel numero minore di passi. Esercizio 5.6 Dato il sistema dinamico a tempo discreto x(k + 1) = Ax(k) + Bu(k), a) studiarne la raggiungibilità; −1 1 A= 1 2 1 0 b) verificare la raggiungibilità dello stato x̄ = [ 3 1 0 0 , 1 1 B= 0 0 0 0 , 1 2 ]T ; c) se lo stato x̄ è raggiungibile, determinare un segnale di controllo u(·) per raggiungerlo nel numero minore di passi; utilizzando un solo segnale di controllo (si confronti questo esercizio con 5.5), ed utilizzando un segnale avente norma minima. d) confrontare i tre diversi segnali ottenuti al punti precedente. Capitolo 5: Raggiungibilità [Ed. 2014, V 4.0 - PV - UniPG] - 5-215 Esercizio 5.7 Dato il sistema dinamico a tempo continuo 1 1 ẋ(t) = Ax(t) + gu(t), A= 0 1 0 0 a) studiare la raggiungibilità; b)verificare la raggiungibilità dello stato x̄ = [ 0 0 0 , 1 0 B = 1 , 1 1 0 ]T ; c) qualora x̄ non sia raggiungibile, determinare lo stato xo ∈ X R che rende minima la funzione kx̄ − xk2 al variare di x nel sottospazio di raggiungibilità; d) determinare la decomposizione rispetto alla raggiungibilità; e) determinare il complemento all’intero spazio di stato del sottospazio di raggiungibilità, cioè il sottospazio X 1 tale che X =XR ⊕ X 1 ; f) determinare i modi non modificabili dall’ingresso (cioè associati ad autovalori invarianti); g) dato un generico stato x0 = [ x10 x20 x30 ]T , e un valore finito t̄, assegnato, verificare se lo stato xf = e At̄ x0 è raggiungibile a partire dallo stato iniziale x0 e, in caso affermativo, determinare un instante di tempo t al quale tale stato finale può essere raggiunto ed il corrispondente segnale di controllo u(·); h) calcolare il segnale di ingresso u(·) che consente di raggiungere lo stato x̄, o lo stato xo , definiti al punto c). Esercizio 5.8 Dato il sistema dinamico a tempo 1 x(k + 1) = 0 0 a) studiare la raggiungibilità; discreto 1 0 0 1 0 x(k) + 1 u(k), 0 1 1 b)verificare se lo stato x̄ = [ 0 −2 0 ]T è raggiungibile; c) qualora x̄ non sia raggiungibile, determinare lo stato xo ∈ X R che rende minima la funzione kx̄ − xk2 al variare di x nel sottospazio di raggiungibilità, e determinare la sequenza di ingressi che consente di raggiungere tale stato xo ; d) determinare la decomposizione rispetto alla raggiungibilità; e) determinare il complemento all’intero spazio di stato del sottospazio di raggiungibilità; f) determinare i modi non modificabili dall’ingresso (cioè invarianti); g)verificare se lo stato xf = [ 4 3 5 ]T è raggiungibile a partire dallo stato iniziale x0 = [ 1 1 0 ]T , calcolare il numero minimo di passi richiesti ed il segnale di controllo che consente di raggiungerlo. Esercizio 5.9 Dato il circuito elettrico in figura 5.1 (si veda il paragrafo 2.3), e determinato il suo modello dinamico a) studiare la raggiungibilità; b) determinare la decomposizione rispetto alla raggiungibilità. c) calcolare l’autovettore relativo al’autovalore non raggiungibile. Capitolo 5: Raggiungibilità [Ed. 2014, V 4.0 - PV - UniPG] - 5-216 R1 L1 R3 R2 C2 Vin C1 Figura 5.1: Circuito elettrico relativo all’esercizio 5.9 R4 Capitolo 6: Allocazione scalare [Ed. 2014, V 4.0 - PV - UniPG] - 6-217 Capitolo 6 Allocazione degli autovalori per sistemi scalari 6.1 Introduzione Lo studio delle proprietà di stabilità dei sistemi lineari ha messo in chiara evidenza il ruolo fondamentale degli autovalori nella caratterizzaione di tale proprietà. In molte situazioni di interesse, ad esempio in tutti i casi in cui si ha un sistema instabile, oppure si ha un sistema i cui modi naturali, pur essendo convergenti, sono troppo “lenti”, sarebbe utile poter intervenire sul sistema e modificare i suoi autovalori. La modalità tipica di intervento è quella di applicare un opportuno segnale di ingresso, che sia calcolato sulla base di misure del comportamento attuale del sistema, cioè, un segnale in retroazione. Più in generale, l’utilizzo di un segnale di controllo in retroazione consente di risolvere problemi di regolazione. Nel seguito verrà presentata una possibile soluzione al problema della regolazione dello stato di un sistema dinamico intorno ad un punto di equilibrio. 6.2 Regolazione e dinamica d’errore Il problema della regolazione di un sistema dinamico intorno ad un punto di lavoro (punto di equilibrio) è un problema di estrema importanza applicativa. Si consideri un sistema dinamico a tempo continuo (il caso dei sistemi a tempo discreto è del tutto analogo), con un solo ingresso ed una sola uscita, descritto dalle equazioni: ẋ y = Ax + bu = cx, e sia xr un punto dello spazio di stato che si desidera rendere punto di lavoro per il sistema. Si desidera cioè agire in modo tale che il sistema si trovi, di norma, in tale punto dello spazio di stato, e che eventuali scostamenti da tale punto, a causa di disturbi e perturbazioni agenti dall’esterno, vengano recuperati con velocità assegnata. Tale problema va sotto il nome di problema di regolazione. Alla luce della teoria della stabilità il problema posto può essere risolto rendendo xr punto di equilibrio asintoticamente stabile per il sistema di interesse. Ciò può essere ottenuto suddividendo il problema di regolazione in due sottoproblemi: 1) rendere xr punto di equilibrio; 2) rendere tale punto, e quindi il sistema, asintoticamente stabile. Il primo sottoproblema è risolto facilmente determinando, se esiste, una soluzione al seguente sistema algebrico: Axr + bur = 0. (6.1) Se tale sistema ammette soluzione nell’incognita scalare ur , allora il segnale di ingresso ur (t) = ur δ−1 (t) rende il punto di interesse punto di equilibrio. Per valutare le proprietà di stabilità di tale punto, e per progettare possibili azioni di intervento sul sistema, è conveniente introdurre un sistema di errore, che descriva l’evoluzione temporale dello scostamento tra il Capitolo 6: Allocazione scalare [Ed. 2014, V 4.0 - PV - UniPG] - 6-218 comportamento desiderato per il sistema ed il comportamento effettivo. Si introduca quindi un vettore x̃ : x−xr , che descrive lo scostamento tra il valore desiderato per lo stato ed il valore effettivo. Tale segnale è detto errore di regolazione nello stato. Si supponga inoltre che il segnale di ingresso u(·) applicato al sistema sia dato dalla somma del segnale costante utile a rendere xr punto di equilibrio e di un segnale aggiuntivo ũ, il cui scopo sarà chiaro nel seguito. La dinamica dell’errore di regolazione nello stato può essere determinata facilmente a partire dalla dinamica del sistema e dalla condizione di equilibrio. Si trova: x̃˙ = = = ẋ − x˙r = ẋ = Ax + bu = A(x̃ + xr ) + b(ũ + ur ) Ax̃ + bũ + Axr + bur Ax̃ + bũ. La dinamica di errore è quindi governata da un sistema descritto dalle stesse matrici A e b che descrivono il sistema da controllare (in virtù della linearità di quest’ultimo). Ne segue che il problema di regolazione sarà ben risolto se la matrice A ha tutti gli autovalori con parte reale negativa, per garantire stabilità asintotica, e con parte reale sufficientemente grande (in modulo), per garantire idonea velocità di convergenza. Se tale matrice non ha le proprietà richieste, si potrebbe cercare di utilizzare il segnale ũ per modificare il comportamento della dinamica di errore, e risolvere quindi in modo soddisfacente il problema di regolazione. Come già notato, la dinamica d’errore ed il sistema da controllare (il processo) sono descritti dalle stesse matrici. Ciò implica che regolare il sistema intorno ad un punto di equilibrio non nullo xr è del tutto equivalente a regolarlo intorno all’origine. Nel seguito quindi ci si limiterà a studiare e risolvere il problema della regolazione a zero di un sistema dinamico. Tale problema può essere risolto, ad esempio, utilizzando un segnale in retroazione che consenta, se possibile, di allocare in modo arbitrario tutti gli autovalori del sistema. 6.3 Allocazione degli autovalori: formulazione del problema Problema 6.1 (Allocazione degli autovalori tramite retroazione statica dallo stato) Dato il sistema dinamico Σ = (A, b, c) ed un insieme di n numeri complessi D = {λ1 , λ2 , . . . , λn }, con D arbitrario ma chiuso rispetto all’operazione di coniugazione complessa, trovare, se esiste, una legge in retroazione statica dallo stato u = kx + v, k ∈ R1×n , v ∈ R, (6.2) tale che gli elementi dell’insieme D siano gli autovalori del sistema a ciclo chiuso ΣK = (A + bk, b, c). Teorema 6.1 Il problema della allocazione degli autovalori tramite retroazione statica dallo stato per un sistema dinamico Σ = (A, b, c) ammette soluzione se e solo se il sistema è raggiungibile, cioè se e solo se sono soddisfatte le due condizioni equivalenti: i) rango [b Ab . . . An−1 b] = n; ii) rango [A − λI|b] = n, 6.4 ∀λ ∈ sp {A}. Allocazione degli autovalori: soluzione Dimostrazione del teorema. Sufficienza La sufficienza verrà mostrata dando una procedura per costruire una matrice k (k ∈ R1×n ) che risolve il problema, e poi mostrando che, sotto l’ipotesi di raggiungibilità, la procedura può effettivamente essere completata ed ottiene il risultato desiderato. La procedura consiste nel determinare un nuovo sistema di coordinate, nel quale sia poi immediato calcolare la matrice di retroazione cercata. Procedura 6.1 (Allocazione degli autovalori tramite retroazione statica, singolo ingresso.) Capitolo 6: Allocazione scalare [Ed. 2014, V 4.0 - PV - UniPG] - 6-219 Passo 1. Determinare un vettore riga h ad n componenti ( hT ∈ Rn ), tale da soddisfare il seguente sistema algebrico: hb = 0 hAb = .. . hAn−2 b = 0 0 hAn−1 b 1. (6.3) = Passo 2. Determinare le nuove coordinate xc secondo la trasformazione: xc = T −1 x, con T −1 T −1 ∈ Rn×n , h hA .. . := hAn−2 hAn−1 (6.4) . (6.5) Con queste nuove coordinate, che nel seguito verranno indicate come le coordinate di controllore, il sistema originale risulta descritto dalla forma canonica di controllore ad un ingresso: x˙c = Ac xc + bc u, ove Ac = T −1 AT = 0 0 .. . 1 0 .. . 0 1 .. . ··· ··· .. . 0 0 .. . 0 −a0 0 −a1 0 −a2 ··· ··· 1 −an−1 (6.6) , 0 0 .. . bc = T −1 b = 0 1 . (6.7) Passo 3. Dato l’insieme di autovalori desiderati D = {λ1 , λ2 , . . . , λn }, chiuso rispetto all’operazione di coniugazione complessa, determinare il polinomio caratteristico desiderato: p(λ) := n Y i=1 (λ − λi ) = λn + pn−1 λn−1 + · · · + p1 λ + p0 . Passo 4. Calcolare la matrice di retroazione dallo stato in coordinate di controllore kc , kc ∈ R1×n : kc = (a0 − p0 ) (a1 − p1 ) · · · (an−1 − pn−1 ) ; (6.8) (6.9) e calcolare la matrice di retroazione nelle coordinate originali, data da: k = kc T −1 . (6.10) ♦ Si tratta ora di mostrare che la procedura può essere completata e la sua efficacia. Per mostrare che la procedura può essere completata è sufficiente far vedere che è possibile calcolare la matrice T −1 e che tale matrice è effettivamente non singolare. La raggiungibilità del sistema Σ garantisce l’esistenza di un vettore riga h soluzione del sistema algebrico (6.3). Infatti, la raggiungibilità implica che la matrice R = b Ab · · · An−1 b è non singolare, e quindi esiste la sua inversa R−1 . Ora, il sistema di equazioni (6.3) può essere riscritto nella forma: hR = 0 0 · · · 1 , Capitolo 6: Allocazione scalare [Ed. 2014, V 4.0 - PV - UniPG] - 6-220 la cui soluzione, in virtù dell’esistenza della matrice R−1, esiste ed è data da: h = 0 0 · · · 1 R−1 , e quindi h è ottenibile come ultima riga dell’inversa della matrice di raggiungibilità (per semplice ispezione visiva del prodotto righe-colonne). La possibilità di calcolare la matrice T −1 a partire dal vettore riga h non comporta problemi, deve invece essere mostrato che tale matrice è non singolare. Questo può essere fatto mostrando che le righe di T −1 sono tutte linearmente indipendenti. Per assurdo, si assuma che non lo siano; allora esiste una sequenza di n costanti η0 , η1 , . . . , ηn−1 , non tutte nulle, tali che la combinazione tramite tali coefficienti delle righe di T −1 è pari ad un vettore riga nullo: n−1 X ηi hAi = 0. (6.11) i=0 Moltiplicando a destra entrambi i membri dell’equazione per il vettore b e ricordando le condizioni imposte dal sistema (6.3), si trova che deve essere: ηn−1 h An−1 b = 0, (6.12) da cui, per l’ultima delle (6.3), segue ηn−1 = 0. Moltiplicando poi a destra entrambi i membri dell’equazione (6.11) per il vettore Ab e ricordando le condizioni imposte dal sistema (6.3), si trova che deve essere: ηn−2 h An−2 Ab = 0, (6.13) da cui, per l’ultima delle (6.3), segue ηn−2 = 0. Procedendo in modo simile, si arriva a mostrare che tutti i coefficienti η che consentono di ottenere una combinazione nulla devono essere necessariamente nulli, e quindi l’indipendenza delle righe e la non singolarità della matrice T −1 . Questo completa la dimostrazione che la procedura può essere completata. Per quanto riguarda la sua efficacia, il primo passo è quello di provare che, nelle coordinate xc = T −1 x, con −1 T data dalle (6.5), il sistema assume effettivamente la forma (6.6), (6.7), cioè mostrare che le coordinate xc sono effettivamente quelle che portano il sistema nella forma canonica di controllore ad un solo ingresso. Ciò può essere fatto facilmente per ispezione, a partire dalle relazioni: Ac T −1 = T −1 A, bc = T −1 b, (6.14) tenendo conto della trasformazione (6.5) e del teorema di Cayley-Hamilton. Infatti, la prima della riga del prodotto T −1 A, per la forma della T −1 , è pari alla seconda riga della T −1 stessa, da cui segue che la prima riga della matrice Ac deve avere un uno in seconda posizione, e tutti gli altri elementi nulli. Analogamente per tutte le altre righe della matrice Ac , salvo l’ultima che discende dall’applicazione di Cayley-Hamilton. In modo simile si può mostrare che il vettore bc assume la forma indicata nella (6.7), in virtù del sistema (6.3) e della trasformazione (6.5). Come secondo passo per mostrare l’efficacia, è immediato constatare che il polinomio caratteristico del sistema retro-azionato nelle coordinate di controllore xc (cioè del sistema Σc = (Ac + bc kc , bc , Cc )), coincide con il polinomio desiderato (6.8). Per le proprietà delle trasformazioni algebricamente equivalenti, del tipo della T −1 , il sistema retro-azionato nelle coordinate originali ha esattamente lo stesso polinomio caratteristico p(λ), e quindi il problema di assegnazione degli autovalori è risolto dalla matrice k = kc T −1 . ⊓ ⊔ 6.4.1 Le funzioni di trasferimento a ciclo aperto e a ciclo chiuso Il calcolo della funzione di trasferimento per un sistema in forma canonica di controllore è immediato. Con la notazione (6.7), ed indicando la matrice di uscita nella forma di controllore con la notazione: (6.15) cc = c0 c1 · · · cn−1 , si trova facilmente (assumendo assenza di legame diretto ingresso-uscita) la funzione di trasferimento Wca (s) del sistema a ciclo aperto: Wca (s) = cc (sI − Ac )−1 bc = sn cn−1 sn−1 + · · · c1 s + c0 . + an−1 sn−1 + · · · a1 a + a0 (6.16) Capitolo 6: Allocazione scalare [Ed. 2014, V 4.0 - PV - UniPG] - 6-221 Poiché (sempre nel caso di legame ingresso-uscita nullo), la retroazione non modifica l’equazione di uscita, ma modifica il polinomio caratteristico, è immediato verificare che la funzione di trasferimento a ciclo chiuso, Wcc (s), risulta pari a: Wcc (s) = cc (sI − Ac )−1 bc = cn−1 sn−1 + · · · c1 s + c0 . sn + pn−1 sn−1 + · · · p1 a + p0 (6.17) Poiché la funzione di trasferimento è invariante rispetto a trasformazioni di similarità algebrica, le due funzioni di trasferimento Wca (s) e Wcc (s) descrivono i sistemi in catena aperta e in catena chiusa anche nelle coordinate orginali. 6.5 Il caso dei sistemi non completamente raggiungibili Il problema della allocazione degli autovalori può essere risolto, nella versione completa, solo se il sistema in esame è raggiungibile. Tuttavia, se il sistema non è raggiungibile, si può comunque valutare la possibilità di stabilizzarlo. Ciò è possibile se tutti gli autovalori della parte non raggiungibile sono già asintoticamente stabili, e cioè, se tutti gli autovalori della parte non raggiungibile sono a parte reale negativa, in caso di sistema a tempo continuo, oppure sono con modulo minore di uno, per sistemi a tempo discreto. In questo caso, la sintesi di un controllore in reazione statica dallo stato che modifichi gli autovalori della parte raggiungibile può essere progettato seguendo il diagramma commutativo riportato in figura 6.1. Cioè, si costruisce la forma standard di raggiungibilità Σ̄, con una prima trasformazione di coordinate descritta dai nuovi vettori di base T̄ , poi si estrae il sottosistema raggiungibile Σ̄11 riducendo il sistema di partenza. Su tale sistema si opera poi in modo classico, trasformando nelle coordinate di controllore con la matrice Tc ed operando poi la retroazione (su un sistema di dimensione minore) Kc . K Σ Σ k _ T _ T -1 _ _ Σ Σ k Espansione Riduzione _ _ Σ11 k Σ11 -1 T c _ Σ11,c T c K c _ k Σ11,c Figura 6.1: Stabilizzazione di sistemi non raggiungibili Dopo aver risolto il problema nelle coordinate di controllore per il sottosistema raggiungibile, si deve ricostruire la soluzione nelle coordinate originali, diverse per dimensione e vettori di base. Si tratti quindi di percorre i tre passi seguenti: a) tornare alle coordinate della decomposizione di Kalman per mezzo della trasformazione inversa Tc−1 , b) aumentare le dimensioni della matrice di retroazione, ad esempio aggiungendo un numero idoneo di elementi nulli, ed infine c), tornare alle coordinate originali tramite la trasformazione inversa T̄ −1 . Capitolo 6: Allocazione scalare 6.6 [Ed. 2014, V 4.0 - PV - UniPG] - 6-222 Esercizi risolti Esercizio 6.1 Dato il sistema dinamico a tempo continuo −2 1 −4 0 ẋ = 1 0 2 x + 1 u, 1 0 2 0 0 0 1 x, y = 1. valutare la raggiungibilità e la controllabilità; 2. calcolare, se esiste, una legge di controllo in retroazione statica dallo stato che renda il sistema a ciclo chiuso asintoticamente stabile; 3. determinare i poli della funzione di trasferimento del sistema a ciclo aperto e del sistema ottenuto al punto precedente. Soluzione. Sistema dinamico a tempo continuo ẋ = y = −2 1 1 0 1 0 0 0 1 1. valutare la raggiungibilità e la controllabilità. −4 0 2 x + 1 u, 2 0 x, Per valutare la raggiungibilità del sistema in esame, si deve valutare il rango della matrice di raggiungibilità: 0 1 −2 R = b Ab A2 g = 1 0 1 0 0 1 il cui rango è tre, e quindi il sistema è raggiungibile. Il sistema è a tempo continuo, e quindi la raggiungibilità implica la controllabilità. 2. calcolare, se esiste, una legge di controllo in retroazione statica dallo stato che garantisca stabilità asintotica per il sistema a ciclo chiuso. L’esistenza di una legge legge di controllo in retroazione dallo stato, cioè del tipo: u = Kx + v, che garantisca stabilità asintotica del sistema a ciclo chiuso è garantita dalla raggiungibilità. Per determinare la legge di controllo, si deve portare il sistema nella forma canonica di controllo ad un ingresso. Si deve quindi trovare un vettore riga h, con tre componenti, soluzione del sistema di equazioni: hb 0 h Ab = 0 h A2 b 1 ed ottenibile, ad esempio, scegliendo h pari all’ultima 0 R−1 = 1 0 da cui si ricava: h= riga dell’inversa della matrice di raggiungibilità: 1 −1 0 2 , 0 1 0 0 1 , Capitolo 6: Allocazione scalare [Ed. 2014, V 4.0 - PV - UniPG] - 6-223 e quindi, per la matrice che caratterizza le nuove coordinate, si ottiene: h 0 0 1 −2 1 T −1 = hA 1 0 2 , T = 0 0 hA2 0 1 0 1 0 In queste nuove coordinate il sistema è descritto dalle matrici: 0 1 0 0 Ac = T −1 AT = 0 0 1 , gc = T −1 b = 0 , 0 1 0 1 0 1 . 0 hc = hT = 1 0 0 . A partire dalla forma canonica di controllore è immediato trovare la matrice di retroazione che consente di allocare tutti gli autovalori in modo che il sistema a ciclo chiuso sia asintoticamente stabile. Ad esempio, polinomio caratteristico desiderato può essere scelto pari a p(λ) = (λ + 1)3 = λ3 + 3λ2 + 3λ + 1. La matrice di retroazione, nelle coordinate di controllore, deve essere scelta pari a: kc = (0 − 1) (−1 − 3) (0 − 3) = −1 −4 −3 , cui corrisponde, nelle coordinate originali, la matrice: k = kc T −1 = −4 −3 −9 . La matrice che descrive la dinamica del sistema a ciclo chiuso è quindi (sebbene non richiesta): −2 1 −4 A + bkf = −3 −3 −7 1 0 2 i cui autovalori sono tutti in −1, come desiderato. 3. determinare la funzione di trasferimento del sistema a ciclo aperto e del sistema a ciclo chiuso. Le due funzioni di trasferimento possono essere determinate in modo immediato, ricordando che sistemi algebricamente equivalenti hanno la stessa funzione di trasferimento. Dalla forma canonica di controllore segue quindi, per il sistema a ciclo aperto: w(s) = 1 , s3 − s (6.18) mentre per il sistema a ciclo chiuso si trova: w(s) = s3 + 1 . + 3s + 1 3s2 (6.19) Esercizio 6.2 Dato il seguente sistema dinamico a tempo continuo: ẋ1 = x2 ẋ2 = x3 ẋ3 = x1 + x2 − x3 + u y = αx1 + x2 , 1. valutare la stabilità interna ed esterna, al variare del parametro reale α; 2. fissato α = 1, determinare, se possibile, un segnale di controllo in retroazione statica dallo stato tale che, per il sistema a ciclo chiuso, la risposta permanente in uscita per il segnale v(t) = δ−1 (t) + sin(20t) sia caratterizzata da una attenuazione del termine sinusoidale pari almeno ad un fattore 100. Capitolo 6: Allocazione scalare [Ed. 2014, V 4.0 - PV - UniPG] - 6-224 Traccia della soluzione. Stabilità - la stabilità interna si valuta con il segno degli autovalori. Poiché il sistema ha un autovalore con parte reale positiva, è internamente instabile. - la stabilità esterna si valuta con il segno dei poli. Per α = −1 si ha cancellazione dell’autovalore a parte reale positiva, e quindi il sistema è esternamente stabile, per tutti gli altri valori di α si ha un polo pari a p = +1, e quindi il sistema non è stabile esternamente (non è stabile in senso BIBO). Sintesi Una attenuazione di almeno 100 volte corrisponde, nel diagramma di Bode, ad una attenuazione di almeno 40dB. Si può ottenere il comportamento desiderato (attenuazione di almeno 40dB) ponendo due poli coincidenti in p = −1. In tal modo il diagramma in corrispondenza di ω = 10 rad/sec è attenuato di 40dB, ed in corrispondenza di ω = 20rad/sec (come richiesto) è attenuato di una quantità maggiore. Per ottenere due poli in p = −1, dobbiamo allocare tre autovalori in λ = −1, per via dell’equazione di uscita, che introduce uno zero nella stessa posizione. Scelto il polinomio desiderato, la matrice K può essere progettata tramite la formula K = [a0 − p0 , a1 − p1 , a2 − p2 ]. 6.7 Esercizi proposti Esercizio 6.3 Dato il sistema dinamico a tempo continuo ẋ y −1 1 0 A = 1 2 0 , 1 0 1 a) determinare la forma canonica di controllore; = Ax + bu = cx, 1 b = 0 , 0 c= 1 0 1 , b) calcolare una retroazione dallo stato che assegni come nuovi autovalori i numeri {−1, −2, −3}; c) calcolare gli zeri della funzione di trasferimento. Esercizio 6.4 Dato il sistema a tempo continuo −1 5 27 −2 ẋ = −1 −5 −16 x + 1 u, 1 2 3 0 (6.20) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da allocare gli autovalori del sistema a ciclo chiuso in {−2, −2, −2}. Esercizio 6.5 Dato il sistema a tempo continuo −1 5 9 −4 ẋ = −1 −3 −4 x + 2 u, 1 2 1 0 (6.21) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da allocare gli autovalori del sistema a ciclo chiuso in {−1, −2, −2}. Esercizio 6.6 Dato il sistema a tempo continuo 2 13 26 −2 ẋ = −1 −7 −14 x + 1 u, 0 1 3 0 (6.22) Capitolo 6: Allocazione scalare [Ed. 2014, V 4.0 - PV - UniPG] - 6-225 a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da allocare gli autovalori del sistema a ciclo chiuso in {−1, −1, −1}. Esercizio 6.7 Dato il sistema a tempo continuo 4 6 4 −1 ẋ = −4 −7 −4 x + 1 u, 0 1 1 0 (6.23) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da allocare gli autovalori del sistema a ciclo chiuso in {−1, −2, −3}. Esercizio 6.8 Dato il sistema a tempo discreto 8 23 21 −1 x(k + 1) = −4 −12 −11 x(k) + 1 u(k), −2 1 0 0 (6.24) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da allocare gli autovalori del sistema a ciclo chiuso in {1/2, 1/2, 1/2}. Esercizio 6.9 Dato il sistema a tempo discreto −3 −2 x(k + 1) = 3 3 −1 −1 a) studiare la raggiungibilità e la controllabilità; −2 3 4 x(k) + −3 u(k), −1 1 (6.25) b) determinare, se esiste, un controllore in retroazione dallo stato tale da allocare gli autovalori del sistema a ciclo chiuso in {1/3, 1/3, 1/3}. Esercizio 6.10 Dato il sistema a tempo continuo 9 28 67 3 ẋ = −9 −27 −65 x + −3 u, 3 9 22 1 (6.26) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da allocare gli autovalori del sistema a ciclo chiuso in {−3, −3, −2}. Esercizio 6.11 Dato il sistema a tempo continuo 4 11 5 2 ẋ = −2 −5 −2 x + −1 u, 2 5 3 1 (6.27) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da allocare gli autovalori del sistema a ciclo chiuso in {−2, −2, −1}. Esercizio 6.12 Dato il sistema a tempo continuo 8 21 8 4 ẋ = −4 −10 −3 x + −2 u, 2 5 2 1 (6.28) Capitolo 6: Allocazione scalare [Ed. 2014, V 4.0 - PV - UniPG] - 6-226 a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da allocare gli autovalori del sistema a ciclo chiuso in {−2, −1, −1}. Esercizio 6.13 Dato il sistema a tempo continuo 2 −1 2 1 ẋ = 1 −2 −2 x + 0 u, 0 1 2 0 (6.29) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale rendere il polinomio caratteristico del sistema a ciclo chiuso uguale a p(λ) = 2λ3 + 8λ2 + 10λ + 4. Stabilizzazione e tempo di risposta finito. Esercizio 6.14 Dato il sistema a tempo continuo −2 −2 1 ẋ = 0 0 1 a) studiare la raggiungibilità e la controllabilità; −8 0 3 x + 1 u, 2 0 (6.30) b) determinare, se esiste, un controllore in retroazione dallo stato tale da stabilizzare il sistema a ciclo chiuso. Esercizio 6.15 Dato il sistema a tempo discreto 0 −1 x(k + 1) = 0 −2 0 1 a) studiare la raggiungibilità; −3 0 −4 x(k) + 1 u(k), 3 0 (6.31) b) studiare la controllabilità con due diversi criteri; c) determinare, se esiste, un controllore a tempo di risposta finito. Esercizio 6.16 Dato il sistema a tempo discreto 0 1 −1 0 x(k + 1) = 0 4 −2 x(k) + 1 u(k), 0 1 −1 0 (6.32) a) studiare la raggiungibilità; b) studiare la controllabilità con due diversi criteri; c) determinare, se esiste, un controllore a tempo di risposta finito. Esercizio 6.17 Dato il sistema a tempo discreto 6 −11 8 2 x(k + 1) = 3 −6 3 x(k) + 1 u(k), 0 0 0 0 a) studiare la raggiungibilità; b) studiare la controllabilità con due diversi criteri; (6.33) Capitolo 6: Allocazione scalare [Ed. 2014, V 4.0 - PV - UniPG] - 6-227 c) determinare, se esiste, un controllore a tempo di risposta finito. Esercizio 6.18 Dato il sistema a tempo continuo 3 −1 1 1 ẋ = 3 −2 0 x + 1 u, 0 0 −2 0 (6.34) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da stabilizzare il sistema a ciclo chiuso. Esercizio 6.19 Dato il sistema a tempo discreto 1 1 x(k + 1) = 1 0 0 0 a) studiare la raggiungibilità e la controllabilità; −1/2 1 0 x(k) + 1 u(k), −1/2 0 (6.35) b) determinare, se esiste, un controllore in retroazione dallo stato tale da stabilizzare il sistema a ciclo chiuso. Esercizio 6.20 Dato il sistema a tempo discreto −1/2 −3 x(k + 1) = 1/4 −1 3/4 3 a) studiare la raggiungibilità e la controllabilità; −9/2 −1 −3/4 x(k) + 0 u(k), 19/4 1 (6.36) b) determinare, se esiste, un controllore in retroazione dallo stato tale da stabilizzare il sistema a ciclo chiuso. Esercizio 6.21 Dato il sistema a tempo continuo 1 −6 −12 −3 ẋ = 0 −4 −9 x + −2 u, 0 2 5 1 (6.37) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da stabilizzare il sistema a ciclo chiuso. Esercizio 6.22 Dato il sistema a tempo continuo −1 6 −21 −3 ẋ = 0 −4 11 x + 2 u, 0 −2 6 1 (6.38) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da stabilizzare il sistema a ciclo chiuso. Esercizio 6.23 Dato il sistema a tempo discreto −5 −14 −52 −5 x(k + 1) = −3 −9 −33 x(k) + −3 u(k), 1 3 11 1 (6.39) a) studiare la raggiungibilità e la controllabilità; b) determinare, se esiste, un controllore in retroazione dallo stato tale da stabilizzare il sistema a ciclo chiuso. Capitolo 7: Osservabilità [Ed. 2014, V 4.0 - PV - UniPG] - 7-228 Capitolo 7 Proprietà strutturali: Osservabilità 7.1 Introduzione Il problema affrontato in questo capitolo è relativo alla determinazione dello stato interno di un sistema dinamico a partire dalla conoscenza dei segnali di ingresso ed uscita su un dato intervallo finito di tempo. Il problema riveste notevole importanza applicativa in tutte le situazioni in cui vi sia interesse a conoscere l’andamento di grandezze non accessibili per la misura, per ragioni fisiche, oggettive, o per scelte progettuali. La soluzione di tale problema richiede, preliminarmente, lo studio delle proprietà strutturali di osservabilità e ricostruibilità, che risultano essere duali rispetto alle proprietà di raggiungibilità e controllabilità, già viste in precedenza. Il problema di osservabilità può essere posto, formalmente, nel seguente modo. Problema 7.1 (Osservabilità) Dato un sistema dinamico Σ(A, B, C), a tempo continuo o a tempo discreto, e dato un istante di tempo T , determinare condizioni sotto le quali sia possibile calcolare lo stato iniziale del sistema x(0) sulla base della conoscenza del segnale di ingresso u(t), t ∈ [0, T ] e del segnale di uscita y(t), t ∈ [0, T ] sull’intervallo finito di tempo [0, T ]. Il concetto di ricostruibilità è relativo alla possibilità di determinare lo stato finale di un sistema, note le funzioni di ingresso ed uscita su un intervallo finito di tempo. Problema 7.2 (Ricostruibilità) Dato un sistema dinamico Σ(A, B, C), a tempo continuo o a tempo discreto, e dato un istante di tempo T , determinare condizioni sotto le quali sia possibile calcolare lo stato finale del sistema x(T ) sulla base della conoscenza del segnale di ingresso u(t), t ∈ [0, T ] e del segnale di uscita y(t), t ∈ [0, T ] sull’intervallo finito di tempo [0, T ]. 7.2 Osservabilità Lo studio della proprietà di osservabilità si basa sul concetto di indistinguibilità tra due stati. Sia η(t, x0 , u(·)) la risposta completa in uscita di un sistema dinamico Σ(A, B, C), a tempo continuo o a tempo discreto. La nozione di indistinguibilità è relativa alla possibilità di discriminare tra due stati distinti sulla base della risposta completa in uscita, per uno stesso segnale di ingresso (si veda, tra l’altro, [33, 34, 35]). Definizione 7.1 Due stati xa ed xb di un sistema dinamico Σ(A, B, C) (a tempo continuo o a tempo discreto), si dicono indistinguibili nell’intervallo [0, T ] se, per ogni funzione di ingresso u(·), le risposte complete in uscita coincidono: y(t, xa , u(·)) = y(t, xb , u(·)), ∀t ∈ [0, T ]. (7.1) Per estensione, due stati di dicono indistinguibili (senza riferimento specifico ad un intervallo temporale), se sono indistinguibili in qualsiasi intervallo di durata non nulla. Per quanto concerne l’intero sistema, si parla di sistema osservabile se, per tale sistema, non esistono coppie di stati indistinguibili. Definizione 7.2 (Sistema osservabile) Un sistema dinamico Σ(A, B, C), a tempo continuo o a tempo discreto, si dice osservabile se non esistono coppie di stati tra loro indistinguibili. Capitolo 7: Osservabilità [Ed. 2014, V 4.0 - PV - UniPG] - 7-229 Intuitivamente, se due stati non sono indistinguibili, dall’analisi della coppia di funzioni ingresso ed uscita potrebbe essere possibile calcolare lo stato iniziale, cioè, osservare lo stato iniziale. Si consideri ora il caso di un sistema a tempo continuo. La risposta completa in uscita è data da: Z t y(t, x0 , u(·)) = Ce At x0 + C e A(t−τ ) Bu(τ )d τ, (7.2) 0 e quindi la condizione di indistinguibilità tra due punti xa ed xb diviene: Z t Z t At A(t−τ ) At Ce xa + C e Bu(τ )d τ = Ce xb + C e A(t−τ ) Bu(τ )d τ, ∀t ∈ [0, T ]. 0 (7.3) 0 In virtù della linearità del sistema, i due termini che descrivono le risposte forzate in uscita coincidono. Inoltre, nei sistemi a tempo continuo (per l’analiticità delle funzioni coinvolte), se una uguaglianza del tipo precedente vale su un’intervallo finito di tempo [0, T ], allora vale per ogni valore non nullo di T . La condizione di indistinguibilità diviene quindi: Ce At xa = Ce At xb , ∀t ≥ 0, (7.4) e quindi: Ce At (xa − xb ) = 0, ∀t ≥ 0. (7.5) Una coppia di stati xa ed xb sono quindi stati indistinguibili per un sistema a tempo continuo se la loro differenza appartiene al kernel della matrice Ce At , matrice della risposta libera in uscita, per tutti i tempi. Si consideri ora il caso in cui uno dei punti, ad esempio xb , sia l’origine. In tal caso, il concetto di indistinguibilità dall’origine viene sinteticamente indicato con non osservabilità: uno stato xa è non osservabile se è indistinguibile dall’origine. In base alla relazione precedente lo stato xa è non osservabile se appartiene al kernel della matrice della risposta libera in uscita: Ce At xa = 0, ∀t ≥ 0. (7.6) Utilizzando la definizione di esponenziale di matrice, la condizione precedente diviene: C ∞ X Ai ti i=0 i! xa = 0, ∀t ≥ 0, (7.7) che corrisponde ad un polinomio di grado infinito nella variabile t, identicamente nullo: Cxa + CAxa t + CA2 xa tk t2 + · · · + CAk xa + · · · = 0, 2 k! ∀t ≥ 0. (7.8) Per il principio di identità dei polinomi (e cioè, per il concetto di indipendenza lineare in spazi vettoriali), tale polinomio può essere identicamente nullo se, e solo se, tutti i suoi coefficienti sono nulli: Cxa = 0 CAxa CA2 xa .. . = 0 = 0 CAk xa .. . = 0 In virtù del teorema di Cayley-Hamilton, la nullità dei primi n coefficienti implica la nullità di tutti gli altri. La condizione di non osservabilità del punto xa diviene quindi, in forma matriciale: C CA (7.9) xa = 0. .. . CAn−1 Capitolo 7: Osservabilità [Ed. 2014, V 4.0 - PV - UniPG] - 7-230 La matrice che compare nella relazione precedente è detta matrice di osservabilità, e sarà indicata con il simbolo O: C CA O= (7.10) . .. . CAn−1 Dato un sistema dinamico a tempo continuo Σ(A, B, C), il nucleo della matrice di osservabilità descrive il sottospazio degli stati non osservabili, X N O , cioè, il sottospazio di tutti gli stati che danno luogo ad una risposta libera in uscita identicamente nulla, e quindi indistinguibile da quella relativa alla condizione iniziale nulla: X N O = ker(O). (7.11) Si noti bene come ciò implichi il fatto importante che, se un sistema ammette un sottospazio di stati non osservabili non vuoto, non sarà mai possibile osservare lo stato iniziale, poiché esistono infiniti punti che danno luogo alla stessa risposta libera. In altri termini, per ogni stato iniziale, ne esistono infiniti altri, tutti quelli in X N O , che danno luogo alla stessa risposta libera. Di conseguenza, fissato un qualsiasi punto x̄ dello spazio di stato, tutti i punti del tipo x̄ + xno , xno ∈ X N O , sono indistinguibili da x̄. Da tali considerazioni emerge che un sistema dinamico è osservabile se e solo se il sottospazio degli stati non osservabili è vuoto. Ciò accade se la nullità della matrice di osservabilità è zero, e quindi se il suo rango è massimo, come sintetizzato nel criterio presentato nel seguente teorema: Teorema 7.1 (Criterio di osservabilità) Un sistema dinamico (lineare e stazionario) a tempo continuo Σ(A, B, C) è osservabile se e solo se C CA rango (7.12) = n. .. . CAn−1 Lo studio della proprietà di osservabilità e dell’associato concetto di indistinguibilità può essere condotto in modo del tutto analogo, e formalmente più agevole, per i sistemi a tempo discreto, giungendo al seguente criterio di osservabilità, identico a quello relativo ai sistemi a tempo continuo: Teorema 7.2 (Criterio di osservabilità) Un sistema dinamico (lineare e stazionario) a tempo discreto Σ(A, B, C) è osservabile se e solo se C CA rango (7.13) = n. .. . CAn−1 7.3 Dualità La proprietà strutturali relative al legame stato-uscita sono in relazione di dualità con le proprietà strutturali relative al legame ingresso-stato. In particolare, la proprietà di osservabilità è duale della proprietà di raggiungiblità. Si consideri un sistema dinamico Σ(A, B, C), a tempo continuo o a tempo discreto, e si definisca sistema duale il sistema dinamico ΣD (AD , B D , C D ) descritto dalle matrici: AD := AT , B D := C T , C D := B T , (7.14) ottenuto insomma “trasponendo” il sistema originale (“primale”). Si consideri ora la matrice di osservabilità del sistema primale e la matrice di raggiungibilità del sistema duale: C CA O= , RD = B D AD B D · · · (AD )n−1 B D = C T AT C T · · · (AT )n−1 C T .. . CAn−1 (7.15) Capitolo 7: Osservabilità [Ed. 2014, V 4.0 - PV - UniPG] - 7-231 È immediato vedere come la matrice di osservabilità del primale coincida con la trasposta della matrice di raggiungibilità del duale. Ne segue che il sistema primale è osservabile se e solo se il sistema duale è raggiungibile. In modo del tutto analogo si può affermare che il sistema primale è raggiungibile se e solo se il sistema duale è osservabile. La nozione di dualità consente di estendere il modo immediato risultati e tecniche utilizzate per lo studio della raggiungibilità allo studio dell’osservabilità. Un esempio è dato dalla forma standard di osservabilità, o decomposizione di Kalman rispetto alla osservabilità. Si consideri un sistema dinamico Σ(A, B, C), a tempo continuo o a tempo discreto, non osservabile. Per il sistema duale, non raggiungibile, può essere costruita la forma standard di raggiungibilità, che può essere utilizzata, per “trasposizione”, per determinare la forma standard di osservabilità del sistema primale. Indicato con ρ il rango della matrice di osservabilità, tale forma è descritta nel seguente teorema Teorema 7.3 (Decomposizione di Kalman rispetto alla osservabilità) Se il sistema Σ = (A, B, C) non è osservabile, esiste una trasformazione di coordinate nello spazio di stato x̄ = T −1 x, tale che il sistema, nelle nuove coordinate, è descritto dalle matrici: B̄1 Ā1,1 0 −1 −1 , C̄ = CT = C̄1 0 , (7.16) , B̄ = T B = Ā = T AT = B̄2 Ā2,1 Ā2,2 in cui i blocchi Ā1,1 e Ā2,2 sono matrici quadrate, di dimensione ρ × ρ e (n − ρ) × (n − ρ), rispettivamente, con ρ pari al rango della matrice di raggiungibilità, ed i blocchi Ā2,1 , B̄1 , B̄2 e C̄1 sono di dimensioni corrispondenti. Inoltre, il sottosistema Σ̄1 = (Ā1,1 , B̄1 , C̄1 ) è osservabile. Il calcolo della matrice di trasformazione T −1 può essere condotto costruendo la decomposizione rispetto alla raggiungibilità del sistema duale. Una proprietà fondamentale del sottosistema osservabile è quella di essere il solo a caratterizzare la matrice di trasferimento dell’intero sistema, come affermato nel seguente teorema. Teorema 7.4 Sia Σ = (A, B, C) un sistema non osservabile, e sia Σ̄1 = (Ā1,1 , B̄1 , C̄1 ) il sottosistema osservabile ottenuto dalla decomposizione canonica di Kalman rispetto alla osservabilità. Allora, i due sistemi Σ e Σ̄1 hanno la stessa matrice di trasferimento: C(sI − A)−1 B = C̄1 (sI − Ā1,1 )−1 B̄1 (7.17) ▽ Il teorema precedente implica che gli autovalori della matrice Ā2,2 non compaiono come poli della matrice di trasferimento del sistema Σ. Si noti come, nel caso generale, possa essere condotta una decomposizione rispetto ad entrambe le proprietà strutturali di raggiungibilità ed osservabilità; tale decomposizione è detta decomposizione di Kalman. Nel caso generale, quindi, il teorema precedente si estende, affermando che la matrice di trasferimento di un assegnato sistema dinamico dipende solo dal sottosistema raggiungibile ed osservabile. Tale sottosistema può essere ottenuto, ad esempio, costruendo in sequenza la forma di raggiungibilità e poi quella di osservabilità. Il seguente teorema sintetizza il risultato. Teorema 7.5 (Decomposizione di Kalman) Sia dato il sistema Σ = (A, B, C), non raggiungibile e non osservabile. Allora, esiste una trasformazione di coordinate nello spazio di stato x̄ = T −1 x, tale che il sistema, nelle nuove coordinate, risulta descritto dalle matrici: Ā1,3 0 B̄1 Ā1,1 0 Ā2,1 Ā2,2 Ā2,3 Ā2,4 , B̄ = T −1 B = B̄2 , C̄ = CT = C̄1 0 C̄3 0 , Ā = T −1 AT = 0 0 Ā3,3 0 0 0 0 Ā4,3 0 0 (7.18) in cui i blocchi diagonali Āi,i sono matrici quadrate di dimensione opportune e gli altri blocchi non nulli Āi,j , i 6= j sono di dimensioni corrispondenti. Inoltre, il sottosistema Σ̄1 = (Ā1,1 , B̄1 , C̄1 ) è il sottosistema sia raggiungibile sia osservabile. ▽ Capitolo 7: Osservabilità [Ed. 2014, V 4.0 - PV - UniPG] - 7-232 Analogamente ai casi particolari visti sopra, vale il seguente teorema sulla matrice di trasferimento. Teorema 7.6 Sia Σ = (A, B, C) un sistema non raggiungibile e non osservabile, e sia Σ̄1 = (Ā1,1 , B̄1 , C̄1 ) il sottosistema raggiungibile e osservabile ottenuto dalla decomposizione canonica di Kalman. Allora, i due sistemi Σ e Σ̄1 hanno la stessa matrice di trasferimento: C(sI − A)−1 B = C̄1 (sI − Ā1,1 )−1 B̄1 (7.19) ▽ Capitolo 7: Osservabilità 7.4 7.4.1 [Ed. 2014, V 4.0 - PV - UniPG] - 7-233 Esercizi Sistemi a singola uscita, tempo discreto Esercizio 7.1 Dato il sistema dinamico a tempo −1 x(k + 1) = −1 1 0 1 y(k) = a) valutare l’osservabilità e la ricostruibilità; discreto 5 27 −2 −5 −16 x(k) + 1 u(k) 2 3 0 5 , b) data la sequenza di uscita y(0) = 7, y(1) = 13, y(2) = 1 ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = 2 e quella di uscita y(0) = 7, y(1) = 14, y(2) = 0, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.2 Dato il sistema dinamico a tempo −1 x(k + 1) = −1 1 1 2 y(k) = a) valutare l’osservabilità e la ricostruibilità; discreto 5 27 −1 −5 −16 x(k) + 1 u(k) 2 3 0 4 , b) data la sequenza di uscita y(0) = 9, y(1) = 14, y(2) = 11 ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = 2 e quella di uscita y(0) = 4, y(1) = 6, y(2) = 14, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; d) verificare se la sequenza di uscita y(0) = −1, y(1) = 1, y(2) = −1, y(3) = 1, y(4) = −1 è ottenibile in evoluzione libera, ed in caso affermativo osservare lo stato iniziale che la produce. Esercizio 7.3 Dato il sistema dinamico a tempo discreto −5 −3 4 −1 x(k + 1) = 2 1 −2 x(k) + 1 u(k) 1 2 1 0 1 2 1 , y(k) = a) valutare l’osservabilità e la ricostruibilità; b) data la sequenza di uscita y(0) = 1, y(1) = −1, y(2) = 4 ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = −1 e quella di uscita y(0) = 1, y(1) = 2, y(2) = 0, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.4 Dato il sistema dinamico a tempo discreto −2 1 −5 −2 x(k + 1) = 4 −3 10 x(k) + 2 u(k) 1 0 2 1 0 0 −1 , y(k) = a) valutare l’osservabilità e la ricostruibilità; Capitolo 7: Osservabilità [Ed. 2014, V 4.0 - PV - UniPG] - 7-234 b) data la sequenza di uscita y(0) = 1, y(1) = 1, y(2) = −2 ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = −1 e quella di uscita y(0) = 1, y(1) = 2, y(2) = −1, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.5 Dato il sistema dinamico a tempo discreto −2 0 −4 1 x(k + 1) = −2 0 −6 x(k) + 1 u(k) 1 0 3 0 0 0 1 , y(k) = a) valutare l’osservabilità e la ricostruibilità; b) determinare la decomposizione rispetto alla osservabilità, e valutare gli autovalori del sottosistema non osservabile; c) data la sequenza di uscita y(0) = −1, y(1) = −2, y(2) = −4 ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; d) date la sequenza di ingresso u(0) = 1, u(1) = −1 e quella di uscita y(0) = −1, y(1) = −4, y(2) = −5, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.6 Dato il sistema dinamico a tempo discreto 0 0 −1 1 x(k + 1) = 0 −2 −5 x(k) + −2 u(k) 0 1 3 1 0 1 3 , y(k) = a) valutare l’osservabilità e la ricostruibilità; b) determinare la decomposizione rispetto alla osservabilità, e valutare gli autovalori del sottosistema non osservabile; c) data la sequenza di uscita y(0) = −2, y(1) = −3, y(2) = −5 ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; d) date la sequenza di ingresso u(0) = 1, u(1) = −1 e quella di uscita y(0) = −2, y(1) = −2, y(2) = −4, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.7 Dato il sistema dinamico a tempo discreto 3 6 6 −1 x(k + 1) = −1 −2 −2 x(k) + 1 u(k) 1 2 1 0 1 2 2 , y(k) = a) valutare l’osservabilità e la ricostruibilità; b) determinare la decomposizione rispetto alla osservabilità, e valutare gli autovalori del sottosistema non osservabile; c) data la sequenza di uscita y(0) = 1, y(1) = 5, y(2) = 1 ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; d) date la sequenza di ingresso u(0) = 1, u(1) = −1 e quella di uscita y(0) = −1, y(1) = 0, y(2) = −1, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Capitolo 7: Osservabilità [Ed. 2014, V 4.0 - PV - UniPG] - 7-235 Esercizio 7.8 Dato il sistema dinamico a tempo discreto x(k + 1) = y(k) = 001 − 11 − 11 − 11 0 a) valutare l’osservabilità e la ricostruibilità; 0 1 , 1 x(k) + 1 u(k) 0 b) determinare la decomposizione rispetto alla osservabilità, e valutare gli autovalori del sottosistema non osservabile; c) data la sequenza di uscita y(0) = −1, y(1) = 0, y(2) = −1 ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; d) date la sequenza di ingresso u(0) = 1, u(1) = −1 e quella di uscita y(0) = −1, y(1) = −2, y(2) = −5, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.9 Dato il sistema dinamico a tempo discreto 5 5 6 0 x(k + 1) = −5 −5 −5 x(k) + 1 u(k) 3 3 3 0 1 1 2 , y(k) = a) valutare l’osservabilità e la ricostruibilità; b) determinare la decomposizione rispetto alla osservabilità, e valutare gli autovalori del sottosistema non osservabile; c) data la sequenza di uscita y(0) = −1, y(1) = −1, y(2) = −6 ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; d) date la sequenza di ingresso u(0) = 1, u(1) = 0 e quella di uscita y(0) = −3, y(1) = −12, y(2) = −42, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. 7.4.2 Sistemi a due uscite, tempo discreto Esercizio 7.10 Dato il sistema dinamico a tempo discreto 0 0 1 1 x(k + 1) = −1 1 −1 x(k) + 1 u(k) 1 −1 1 0 0 0 1 y(k) = , 1 0 3 a) valutare l’osservabilità e la ricostruibilità; b) data la sequenza di uscita y(0) = [−1 − 2]T , y(1) = [−1 − 4]T , y(2) = [−3 − 10]T ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = −1 e quella di uscita y(0) = [−1 − 4]T , y(1) = [−3 − 9]T , y(2) = [−7 − 25]T , osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.11 Dato il sistema dinamico a tempo discreto 1 0 3 −1 x(k + 1) = 0 1 1 x(k) + 0 u(k) 1 −1 1 1 1 −1 2 y(k) = , 1 0 2 Capitolo 7: Osservabilità [Ed. 2014, V 4.0 - PV - UniPG] - 7-236 a) valutare l’osservabilità e la ricostruibilità; b) data la sequenza di uscita y(0) = [0 1]T , y(1) = [0 1]T , y(2) = [0 1]T ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = 0 e quella di uscita y(0) = [−3 − 3]T , y(1) = [−6 − 7]T , y(2) = [−16 − 18]T , osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.12 Dato il sistema dinamico a tempo 1 x(k + 1) = 0 1 1 y(k) = 0 discreto 1 4 1 1 1 x(k) + 1 u(k) −1 1 0 −1 2 , 1 1 a) valutare l’osservabilità e la ricostruibilità; b) data la sequenza di uscita y(0) = [4 3]T , y(1) = [11 5]T , y(2) = [34 14]T ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = 0 e quella di uscita y(0) = [−3 − 1]T , y(1) = [−8 − 2]T , y(2) = [−2 − 8]T , osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.13 Dato il sistema dinamico a tempo discreto 1 3 −4 −2 x(k + 1) = −1 −3 3 x(k) + 1 u(k) 0 −1 2 1 1 0 2 y(k) = , 0 0 1 a) valutare l’osservabilità e la ricostruibilità; b) data la sequenza di uscita y(0) = [1 0]T , y(1) = [2 − 1]T , y(2) = [0 2]T ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = 2 e quella di uscita y(0) = [−1 − 1]T , y(1) = [1 − 1]T , y(2) = [0 3]T , osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.14 Dato il sistema dinamico a tempo discreto 2 5 0 1 x(k + 1) = −1 −1 −2 x(k) + 0 u(k) 0 −3 3 0 0 −1 2 y(k) = , 1 1 2 a) valutare l’osservabilità e la ricostruibilità; b) data la sequenza di uscita y(0) = [−3 − 1]T , y(1) = [−13 − 6]T , y(2) = [−48 − 21]T ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = 0 e quella di uscita y(0) = [−3 − 2]T , y(1) = [−14 − 6]T , y(2) = [−54 − 24]T , osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.15 Dato il sistema dinamico a tempo discreto 0 3 0 0 3 0 x(k) + 0 u(k) x(k + 1) = 1 −1 −6 0 1 1 1 0 y(k) = , 1 0 0 Capitolo 7: Osservabilità [Ed. 2014, V 4.0 - PV - UniPG] - 7-237 a) valutare l’osservabilità e la ricostruibilità; b) data la sequenza di uscita y(0) = [1 0]T , y(1) = [6 3]T , y(2) = [21 9]T ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = 0 e quella di uscita y(0) = [0 − 1]T , y(1) = [5 3]T , y(2) = [15 6]T , osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. Esercizio 7.16 Dato il sistema dinamico a tempo discreto −3 −11 2 −3 x(k + 1) = 2 6 0 x(k) + 1 u(k) 1 4 −1 1 1 3 0 y(k) = , 0 1 −1 a) valutare l’osservabilità e la ricostruibilità; b) data la sequenza di uscita y(0) = [3 2]T , y(1) = [5 1]T , y(2) = [13 4]T ed assumendo ingresso identicamente nullo, osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile; c) date la sequenza di ingresso u(0) = 1, u(1) = 0 e quella di uscita y(0) = [2 2]T , y(1) = [2 0]T , y(2) = [6 2]T , osservare lo stato iniziale e ricostruire lo stato al passo k = 2, se possibile. 7.4.3 Sistemi a singola uscita, tempo continuo Esercizio 7.17 Dato il sistema dinamico a tempo continuo 7 11 2 −3 ẋ = −2 −3 0 x + 1 u −3 −5 −1 1 1 1 2 , y = a) valutare l’osservabilità e la ricostruibilità; b) determinare la decomposizione rispetto alla osservabilità; c) valutare la funzione di trasferimento del sistema complessivo, quella del sottosistema osservabile, verificare i poli del sistema ed i suoi autovalori, confrontare poli, zeri ed autovalori. Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-238 Capitolo 8 Osservatori asintotici dello stato e regolatori in retroazione dall’uscita per sistemi scalari 8.1 Introduzione In questo capitolo viene trattato il tema del progetto di osservatori asintotici dello stato ed il loro uso per il progetto di regolatori in retroazione dall’uscita. Il tema viene affrontato solo per sistemi scalari (cioè sistemi con un solo ingresso ed una sola uscita), indifferentemente a tempo continuo o a tempo discreto. Il capitolo si conclude con un esercizio di riepilogo, con la discussione di alcuni problemi di controllo ed infine con esercizi proposti. 8.2 Osservatori asintotici dello stato In molte applicazioni di interesse ingegneristico è importante poter stimare il comportamento di grandezze fisiche non direttamente accessibili, a partire da altre grandezze, misurabili e funzionalmente correlate con quelle di interesse. Nel caso in cui il legame tra le grandezze misurabili e quelle di interesse possa essere descritto tramite un sistema dinamico, a tempo continuo o a tempo discreto, si può tentare di risolvere il problema della stima utilizzando un osservatore asintotico dello stato. Si consideri il seguente sistema dinamico: ∆x y = = Ax + bu, cx (8.1a) (8.1b) dx nel caso di sistemi a tempo continuo, ed dt indica invece l’operatore di anticipo temporale, cioè ∆x := x(t + 1) nel caso di sistemi a tempo discreto. Un osservatore asintotico dello stato è un dispositivo in grado di generale una stima x̂ dello stato del sistema, che converga asintoticamente allo stato stesso, sull base della conoscenza dell’ingresso u(·) e dell’uscita y(·) del sistema stesso, e delle matrici che lo descrivono. Formalmente, il problema può essere posto nel modo seguente: in cui l’operatore ∆ indica la derivata temporale, cioè ∆x := Problema 8.1 (Osservatore asintotico) Dato un sistema dinamico Σ(A, b, c), progettare un dispositivo che, sulla base della conoscenza delle matrici del sistema e dei segnali u(·) ed y(·), generi una stima x̂ dello stato asintoticamente convergente allo stato stesso, cioè: lim kx̂(t) − x(t)k = 0. t→∞ (8.2) L’idea alla base del progetto di un osservatore è quella di costruire, utilizzando la conoscenza delle matrici che descrivono il sistema, una replica del sistema di interesse, forzato dallo stesso segnale di ingresso u(·) che forza il sistema stesso; lo stato interno di tale replica costituisce la stima cercata dello stato. Un osservatore per il sistema (8.1) potrebbe essere quindi il sistema dinamico seguente: ∆x̂ = Ax̂ + bu. (8.3) Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-239 Per valutare il comportamento dello stimatore, si può studiare l’evoluzione dell’errore di stima x̃, definito come differenza tra il valore reale dello stato e la sua stima: x̃(t) := x̂(t) − x(t). (8.4) La dinamica dell’errore di stima, cioè le equazioni che governano il comportamento dell’errore, sono date da: ∆x̃ = ∆x̂ − ∆x = Ax̂ + bu − Ax − bu = Ax̃. (8.5) La dinamica di errore è quindi descritta da un sistema in evoluzione libera, con matrice dinamica data dalla stessa matrice dinamica A del sistema. Se il sistema è asintoticamente stabile, la dinamica d’errore sarà anch’essa asintoticamente stabile, e quindi (8.3) produce, asintoticamente, una stima corretta dello stato, altrimenti la stima non sarà corretta. Per ovviare a tale potenziale problema di stabilità, e per consentire di variare la velocità di convergenza dell’errore di stima, si ricorrere ad una versione estesa dello schema (8.3). In particolare, l’estensione principale consiste nell’utilizzare anche la misura dell’uscita, per correggere la stima dello stato sulla base dell’errore rilevabile in uscita. Lo schema precedente viene quindi integrato nella seguente forma: ∆x̂ = Ax̂ + bu + L(cx̂ − y), (8.6) in cui il termine aggiuntivo L(cx − y) prende il nome di iniezione dell’uscita. Lo schema (8.6) prende il nome di osservatore asintotico dello stato. Introdotto anche in questo caso l’errore di stima x̃ = x̂ − x, la sua dinamica è data da: ∆x̃ = ∆x̂ − ∆x = Ax̂ + bu + L(cx̂ − y) − Ax − bu = (A + Lc)x̃. (8.7) Si vede quindi come la convergenza dell’errore di stima dipenda ora dagli autovalori della matrice (A + Lc), in cui la matrice L è un parametro di progetto. Se tale matrice può essere scelta in modo da assegnare arbitrariamente gli autovalori di (A + Lc), si può imporre una dinamica arbitraria all’errore di stima. È facile vedere come la matrice (A + Lc) abbia, come duale, la matrice (AT + cT LT ) = (AD + bD k D ), che è del tutto analoga alla matrice di un sistema Σ(AD , bD ) retroazionato staticamente dallo stato con matrice di retroazione k D = LT : progettare un osservatore asintotico dello stato per un sistema equivale ad allocare gli autovalori per il sistema duale. Ciò implica che la matrice L può essere calcolata seguendo la procedura di allocazione degli autovalori, applicata al sistema duale. Il problema del progetto di un osservatore è quindi risolto dal seguente teorema. Teorema 8.1 (Osservatore asintotico) Dato un sistema dinamico Σ(A, b, c), esiste un osservatore asintotico dello stato con dinamica di errore arbitrariamente veloce se e solo se tale sistema è osservabile. L’osservatore asintotico è descritto dalle equazioni: ∆x̂ = Ax̂ + bu + L(cx̂ − y), (8.8) con L progettata opportunamente. Commento 8.1 Si noti che il teorema 8.1 richiede la proprietà di osservabilità per poter costruire un osservatore con dinamica d’errore arbitrariamente veloce. Viceversa, se si cerca una dinamica d’errore asintoticamente stabile, senza interesse per la velocità di convergenza, la proprietà di osservabilità non è necessaria. In tale caso è sufficiente che si possano rendere asintoticamente stabile gli autovalori non già tali. Tale proprietà è detta “ricostruibilità”. In particolare, si noti che un osservatore asintotico senza specifiche sulla velocità di convergenza (salvo, ovviamente, la convergenza stessa) per un sistema già asintoticamente stabile è semplicemente dato da un osservatore in catena aperta, cioè un osservatore con matrice di iniezione nulla. 8.3 Regolatori dinamici Una delle applicazioni rilevanti dell’osservatore asintotico è quella del progetto di regolatori in retroazione dinamica dall’uscita. L’idea base presentata in queste note per tali regolatori è quella di utilizzare, in luogo di una retroazione statica del tipo u = kx + v, una retroazione basata sulla stima x̂ dello stato fornito da un osservatore, e cioè u = kx̂ + v. Per quanto concerne il progetto della matrice k e dell’osservatore, si procede con gli algoritmi già visti. In particolare, la matrice k viene progettata come se fosse possibile utilizzare, Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-240 per la retroazione, l’intero vettore di stato. La retroazione viene invece applicata sulla base della stima dello stato fornita dall’osservatore. L’osservatore invece viene progettato sulla base dell’idea delineata nel precedente teorema 8.1, senza considerare il fatto che tale stima viene poi utilizzata per controllare il sistema. È possibile mostrare che il regolatore che ne risulta, purchè il sistema sia raggiungibile (per poter progettare la matrice k), ed osservabile (per poter progettare l’osservatore), risolve il problema. Vale infatti il seguente teorema di separazione. Teorema 8.2 (Teorema di separazione) Dato un sistema dinamico Σ(A, b, c), esiste un regolatore in retroazione dinamica dall’uscita ∆x̂ = u = Ax̂ + bu + L(cx̂ − y), kx̂ + v (8.9a) (8.9b) che consenta di allocare arbitrariamente tutti gli autovalori del sistema a ciclo chiuso se e solo se il sistema Σ(A, b, c) è raggiungibile e osservabile. Se tale regolatore esiste, il sistema a ciclo chiuso ha come autovalori quelli della matrice A + bk 0 . (8.10) 0 A + Lc Dimostrazione Il sistema a ciclo chiuso è descritto dalle seguenti equazioni: ∆x = Ax + bu, (8.11) y = ∆x̂ = cx, Ax̂ + bu + L(cx̂ − y), (8.12) (8.13) u = kx̂ + v. (8.14) Applicando il segnale di ingresso al sistema ed i segnali in ingresso al regolatore si ottiene: ∆x = Ax + bkx̂ + bv, (8.15) ∆x̂ y = Ax̂ + bkx̂ + bv + L(cx̂ − cx), = cx, (8.16) (8.17) che può essere espresso in forma matriciale come: ∆x A bk x x b = + + be v, v = Ae ∆x̂ −Lc A + bk + Lc x̂ x̂ b x c 0 . y = x̂ (8.18) (8.19) Poiché non appaiono in modo immediato gli autovalori della matrice dinamica del sistema a ciclo chiuso, si provi ad operare una trasformazione di coordinate. Si consideri come nuovo vettore di coordinate quello costituito dallo stato x del processo da controllare e dall’errore di stima x̃. Tale trasformazione può essere espressa in forma matriciale come: x I 0 x x x = , . (8.20) = T −1 x̃ I −I x̂ x̂ x̃ Il sistema algebricamente equivalente risulta descritto dalle matrici: A + bk bk b −1 −1 Āe = T Ae T = , b̄e = T be = . 0 A + Lc 0 (8.21) Come asserito, gli autovalori del sistema a ciclo chiuso sono quelli della matrice (A + bk), uniti a quelli della matrice (A + Lc). ⊓ ⊔ La dimostrazione del teorema di separazione consente di derivare il modo immediato il seguente corollario. Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-241 Corollario 8.1 In un sistema controllato tramite un regolatore in retroazione dinamica dall’uscita del tipo descritto dall’equazione (8.9), basato su osservatore, la dinamica d’errore è non raggiungibile, e la funzione di trasferimento del sistema a ciclo chiuso è data da: w(η) = c(ηI − (A + bk))−1 b (8.22) (ove η = s per sistemi a tempo continuo, ed η = z per sistemi a tempo discreto). 8.4 Un esempio: regolazione di un motore a corrente continua In questa sezione il problema del progetto di regolatori viene applicato al caso di un motore in corrente continua, analizzando le proprietà strutturali del sistema e trattando alcuni casi rilevanti. Viene inoltre descritta una modalità per la determinazione del modello a segnali campionati. Viene trattato anche il problema dell’inseguimento di traiettoria e della stima di un eventuale disturbo di coppia. Il modello dinamico di un motore in corrente continua, controllato tramite la tensione di armatura e con eccitazione costante, è stato derivato nel primo capitolo, sezione1.5, a cui si rimanda. In questa sezione ci si occupa dell’analisi delle sue proprietà strutturali e del progetto di regolatori in reazione dinamica dall’uscita, per la soluzione di semplici problemi di regolazione ed inseguimento. Il modello dinamico del motore considerato è descritto dalle equazioni: ẋ1 = x2 ẋ2 ẋ3 = −a22 x2 + a23 x3 = −a32 x2 − a33 x3 + b3 u y = x1 ed in termini matriciali: ẋ y con: 0 A= 0 0 1 −a22 −a32 = Ax + bu = cx 0 a23 , −a33 0 b = 0 , b3 c= 1 0 0 . (8.25) Volendo progettare un controllore per rendere asintoticamente stabile l’origine dello spazio di stato, basandosi solo sulla misura di posizione, si può ricorrere ad un osservatore asintotico dello stato, tramite il quale stimare le altre variabili di stato, e cioè velocità del rotore e corrente di armatura, e poter quindi realizzare un controllo in retroazione volto ad assegnare gli autovalori del sistema a ciclo chiuso. 8.4.1 Le proprietà strutturali Per poter progettare la legge di controllo in retroazione e l’osservatore asintotico dello stato si deve prima verificare la sussistenza delle proprietà di raggiungibilità e di osservabilità. Per quanto riguarda la raggiungibilità si ha: 0 0 b3 a23 b3 a23 b3 a23 (a22 + a33 ) , R = b Ab A2 b = 0 (8.26) b3 −b3 a23 b3 (a23 a32 + a233 ) da cui si vede che il modello del motore è raggiungibile se il parametro b3 della matrice di ingresso ed il parametro a23 della matrice dinamica sono entrambi non nulli. Per quanto riguarda l’osservabilità si ha invece: 1 0 0 c 1 0 , (8.27) O = cA = 0 0 −a22 a23 cA2 da cui si vede che il modello del motore è osservabile, purché il parametro a23 sia non nullo. Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-242 Il parametro b3 è sempre non nullo, il parametro a23 è non nullo per ogni caso di interesse reale, perché altrimenti il motore non sarebbe in grado di produrra alcuna coppia (infatti, a23 è nullo solo se Km è nullo). Se infatti Km fosse nullo, il sottosistema meccanico sarebbe in evoluzione libera, e quindi non sarebbe influenzabile dall’ingresso. Inoltre, il sottosistema meccanico non sarebbe influenzabile neanche dalla corrente d’armatura, cioè dalla terza componente dello stato, e quindi tale variabile non sarebbe osservabile dal segnale di uscita disponibile, la posizione del rotore, che corrisponde ad una variabile del sottosistema meccanico. Le proprietà strutturali di interesse sussistono quindi indipendentemente dal valore numerico dei parametri. 8.4.2 Progetto del controllore in retroazione dinamica dall’uscita Si assumano per i parametri elettrici e meccanici i seguenti valori: a22 = 3, a23 = 1, a32 = 1, a33 = 1, b3 = 1. I valori scelti non sono del tutto realistici, ma sono più agevoli rispetto alla finalità dell’esercizio ed inoltre, in virtù di quanto notato sopra, l’esatto valore dei parametri non modifica le proprietà strutturali di interesse. Un insieme più realistico di parametri è dato, ad esempio, da: Ra = 1Ω, La = 10−2 H, Ke = 0.5volts/rps, Km = 0.7N − m/A, J = 2 × 10−3 Kg − m3 , F = 2 × 10−5 N − m/rps. Con il valore proposto dei parametri le matrici che descrivono il motore a corrente continua sono date da: 0 1 0 0 A = 0 −3 1 , b = 0 , c = 1 0 0 . (8.28) 0 −1 −1 1 Per progettare il regolatore si può iniziare dalla determinazione di una matrice di retroazione k che consenta di allocare gli autovalori di A + bk in posizioni desiderate del semipiano sinistro. Per fare questo, si deve prima determinare la forma canonica di controllore ad un ingresso. Avendo già verificato la raggiungibilità, si tratta di determinare un vettore riga h soluzione del sistema: hb 0 h Ab = 0 (8.29) h A2 b 1 ed ottenibile, ad esempio, scegliendo h pari all’ultima riga dell’inversa 0 0 1 4 R = 0 1 −4 , R−1 = 4 1 −1 0 1 da cui si ricava: h= 1 0 0 della matrice di raggiungibilità: 1 1 1 0 , 0 0 , e quindi, per la matrice che caratterizza le nuove coordinate, si ottiene: h 1 0 0 1 0 T −1 = hA 0 1 0 , T = 0 1 hA2 0 −3 1 0 3 Le nuove coordinate sono quindi date da: xc = T −1 x, (8.30) (8.31) 0 0 . 1 (8.32) (8.33) e cioè, ricordando l’equazione (1.33a) ed l’ipotesi di coppia di disturbo nulla: xc,1 xc,2 = x1 = θ = x2 = ω (8.34a) (8.34b) xc,3 = −3x2 + x3 = ω̇. (8.34c) Come previsto, le tre nuove coordinate sono ciascuna la derivata della precedente; si noti che l’unica coordinata veramente nuova è data da ω̇, cioè dall’accelerazione angolare del rotore. In queste nuove coordinate il modello dinamico del motore è descritto da: ẋc,1 = xc,2 ẋc,2 = xc,3 ẋc,3 y = = −4xc,2 − 4xc,3 + u xc,1 , Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-243 e quindi le matrici Ac , bc ed cc sono date da: 0 1 0 Ac = T −1 AT = 0 0 1 , 0 −4 −4 0 bc = T −1 b = 0 , 1 cc = cT = 1 0 0 . (8.35) In particolare, la forma canonica di controllore evidenzia il fatto che il sistema ha un autovalore nell’origine, e cioè un polo nell’origine(infatti, a0 = 0)). Questo deriva direttamente dalla equazione differenziale della parte meccanica θ̇ = ω. Con il sistema in forma canonica di controllore ad un ingresso è immediato calcolare la matrice di retroazione che consente di allocare il nuovo polinomio caratteristico. Se, non volendo alterare troppo la “velocità” del sistema controllato rispetto a quello reale, si desidera sistemare i nuovi autovalori in {−2, −2, −2}, cui corrisponde il polinomio p(λ) = λ3 + 6λ2 + 12λ + 8, la matrice di retroazione, nelle coordinate di controllore, deve essere scelta pari a: kc = (0 − 8) (4 − 12) (4 − 6) = −8 −8 −2 , (8.36) cui corrisponde, nelle coordinate originali, la matrice: k = kc T −1 = −8 −2 −2 . (8.37) Come anticipato, nel caso in esame è disponibile solo la misura della posizione del rotore del motore, e quindi, per poter effettivamente realizzare un’azione di controllo, si deve far uso di un osservatore asintotico che consenta di ricostruire le altre due variabili di stato, e cioè la velocità del rotore e la corrente di armatura. Si noti come la conoscenza del modello e la sua osservabilità, consentono di determinare, a partire da sole misure di posizione (e cioè relative al sottosistema meccanico), anche lo stato del sottosistema elettrico. L’osservatore asintotico dello stato è descritto dall’equazione matriciale: x̂˙ = Ax̂ + L(cx̂ − y) + bu, (8.38) in cui la matrice L deve essere determinata in modo da assegnare il polinomio caratteristico della matrice A+Lc. Infatti, introdotto l’errore di stima x̃ := x − x̂ e considerando la dinamica del sistema e la dinamica (8.38) dell’osservatore, si trova: x̃˙ = (A + Lc)x̃. (8.39) La sintesi della matrice L può essere condotta utilizzando il sistema duale. Sia Σ∗ = (Ā, b̄, c̄) il sistema duale, con Ā = AT , m̄b = mcT , c̄ = bT . La matrice che descrive la dinamica dell’errore di stima, riscritta per il sistema duale, diviene: (A + Lc)T = AT + cT LT = Ā + b̄k̄, (8.40) e quindi, per assegnare gli autovalori che governano l’evoluzione della dinamica di errore, si può procedere assegnando gli autovalori della matrice Ā + b̄k̄ per mezzo della matrice di guadagno k̄. Procedendo in modo consueto, si tratta di determinare un vettore riga h̄ soluzione del sistema: h̄b̄ 0 h̄ Āb̄ = 0 (8.41) h̄ Ā2 b̄ 1 ed ottenibile, ad esempio, scegliendo h̄ pari all’ultima riga dell’inversa della matrice di raggiungibilità del sistema duale: 1 0 0 1 0 0 R̄ = 0 1 −3 , R̄−1 = 0 1 3 , (8.42) 0 0 1 0 0 1 da cui si ricava: h̄ = 0 0 1 , e quindi, per la matrice che caratterizza le nuove coordinate: 0 0 1 4 4 T̄ −1 = 0 1 −1 , T̄ = 1 1 1 −4 0 1 0 (8.43) 1 0 . 0 (8.44) Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-244 Sulla base della matrice di trasformazione si può determinare la forma canonica di controllo ad un ingresso per il sistema duale, dalla quale si determina in modo immediato la matrice k̄ cercata. In queste nuove coordinate il sistema duale è descritto da: 0 1 0 0 1 , b̄c = 0 ; Āc = 0 0 (8.45) 0 −4 −4 1 in effetti, tale forma per la matrice Āc era prevedibile, perché questa matrice ha lo stesso polinomio caratteristico della matrice Ac in (8.35) e del sistema originale. In particolare quindi, non è indispensabile calcolare la matrice T̄ . Si assuma inoltre di voler assegnare, come autovalori della dinamica di errore, i valori {−3, −3, −3}, in modo da avere convergenza dell’errore di stima un poco più veloce della convergenza a zero dello stato. A tale scelta degli autovalori corrisponde il polinomio caratteristico po (λ) = λ3 + 9λ2 + 27λ + 27. La matrice k̄c che consente di ottenere questo polinomio per il sistema duale è quindi: k̄c = (0 − 27) (4 − 27) (4 − 9) = −27 −23 −5 , (8.46) cui corrisponde, nelle coordinate duali originali, la matrice: k̄ = k̄c T̄ −1 = −5 −3 −4 . (8.47) Per determinare la matrice L di guadagno dell’osservatore, si noti che, per il sistema duale, si ha: Ā + b̄k̄ = AT + cT k̄, (8.48) e quindi la dinamica dell’errore di stima è descritta dalla matrice: (AT + cT k̄)T = A + k̄ T c, (8.49) e quindi la matrice L cercata è data da: −5 L = k̄ T = −3 . −4 La dinamica di errore è quindi governata dalla matrice: −5 1 0 A + Lc = −3 −3 1 , −4 1 −1 (8.50) (8.51) con autovalori pari a {−3, −3, −3}, come progettato. Riepilogando, un regolatore (o, più precisamente, una legge di controllo o un controllore) in retroazione dinamica dall’uscita per stabilizzare asintoticamente un motore in corrente continua è dato da: x̂˙ = u = Ax̂ + L(cx̂ − y) + bu kx̂ + v, (8.52a) (8.52b) con le matrici A, b ed c date dal modello dinamico del motore e le matrici di guadagno k e L (dette anche matrice di retroazione e matrice di iniezione, rispettivamente) date da: −5 k = −8 −2 −2 , L = −3 . (8.53) −4 8.5 Ulteriori problemi di controllo Un tipico problema di controllo in realà difficilmente richiede di portare un sistema nell’origine dello spazio di stato, ma consiste piuttosto nel voler regolare la posizione del rotore ad un punto prefissato o nel voler inseguire una predefinita traiettoria nello spazio di stato. Tuttavia, gli strumenti di stabilizzazione in retroazione, opportunamente utilizzati, consentono di risolvere anche questi problemi, ed in generale costituiscono un mattone fondamentale ed imprenscindibile nella costruzione di sistemi di controllo complessi. Capitolo 8: Osservatori e regolatori 8.5.1 [Ed. 2014, V 4.0 - PV - UniPG] - 8-245 Un problema di regolazione Sotto l’ipotesi fatta in precedenza che la coppia di disturbo sia nulla (in mancanza della quale, oltre a quanto visto sopra si deve ricorrere anche ad ulteriori strumenti), se si desidera rendere asintoticamente stabile il punto (in coordinare originali): xd = θd 0 0 , e cioè si vuole posizionare il rotore con angolo pari a θd (ovviamente con velocità nulla), si può utilizzare la legge di controllo: x̂˙ = u = Ax̂ + L(cx̂ − y) + bu k(x̂ − xd ) + v, (8.54a) (8.54b) con le matrici k ed L progettate in precedenza (equazione (8.53)), la quale rende asintoticamente stabile il punto desiderato xd . 8.5.2 Inseguimento di traiettoria Nel caso in cui si voglia invece considerare un problema di inseguimento di traiettoria, descritta per mezzo di un vettore xd (t) che descrive il comportamento desiderato per lo stato, si tratta di determinare una legge di controllo in modo che l’errore di inseguimento e(t) := x(t) − xd (t) converga a zero asintoticamente, cioè: lim e(t) = 0. t→∞ (8.55) Si consideri per semplicità il caso in cui sia accessibile per la misura l’intero vettore di stato. Lo scopo di queste brevi note è solo quello di sottolineare come la soluzione del problema dell’assegnazione degli autovalori sia un elemento base per la soluzione di problemi più complessi. Si consideri quindi il caso in cui si debba inseguire una predeterminare traiettoria nello spazio di stato, ad esempio una traiettoria che specifica la posizione desiderata per il rotore nei vari istanti di tempo. Si assuma che la traiettoria desiderata, indicata con θd (t), sia nota in termini analitici e sia derivabile almeno tre volte. d Allora, il comportamento desiderato per la velocità del rotore sarà necessariamente dato da ωd (t) = dθ dt , ed dωd il comportamento desiderato per l’accelerazione angolare del rotore sarà dato da ad (t) = dt . Ricordando poi il significato delle variabili (8.34) si ha il seguente legame le variabili meccaniche velocità ω ed accelerazione a e la corrente di rotore ia = x3: x3 = a + 3ω, (8.56) e quindi si può porre, come traiettoria desiderata completa nello spazio di stato (cioè per tutte le variabili) la funzione vettoriale: xd,1 (t) xd,2 (t) = = θd (t) ωd (t) (8.57a) (8.57b) xd,3 (t) = ad (t) + 3ωd (t). (8.57c) Per ottenere che la posizione del rotore insegua asintoticamente la traiettoria data da θd (t), nel senso di ottenere il risultato indicato dalla (8.55), indicato con xd = xd,1 xd,2 xd,3 il vettore delle traiettorie desiderate date dalle (8.57), si può utilizzare la legge di controllo in retroazione statica dallo stato: u = k(x − xd ) + η, (8.58) η := xd,2 + xd,3 + ẋd,3 , (8.59) con e con la matrice k definita dalla (8.36). Infatti, dalle equazioni (8.57) e (8.59) e ricordando che ẋd,2 (t) = ad , la traiettoria desiderata soddisfa l’equazione differenziale: il sistema dinamico: ẋd,1 (t) = xd,2 (t) (8.60a) ẋd,2 (t) = ẋd,3 (t) = −3xd,2 (t) + xd,3 (t) xd,2 (t) + xd,3 (t) + η(t), (8.60b) (8.60c) Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-246 che, in forma matriciale, può essere riscritta come: ẋd (t) = Axd (t) + bη(t). (8.61) La dinamica dell’errore di inseguimento e(t) = x(t) − xd (t), dopo aver applicato la legge in retroazione dallo stato definita dalla (8.58), è governata quindi dalla equazione differenziale ẋ − ẋd ė = Ax + bk(x − xd ) + bη − Axd − bη A(x − xd ) + bk(x − xd ) = = = (A + bk)e e quindi, tenendo conto della scelta fatta per la matrice k, la dinamica dell’errore di inseguimento è asintoticamente stabile, e quindi l’errore converge asintoticamente a zero. Il segnale η(t) utilizzato nella legge di controllo (8.58) è un termine di controllo in avanti (feed-forward). 8.5.3 Sistemi a segnali campionati Per realizzare effettivamente una delle tre leggi di controllo presentate in precedenza, vi sono due classi di soluzioni. Una prima soluzione, utilizzata solo in casi particolari, è quella di realizzare un dispositivo analogico che implementa la legge stessa, ad esempio, nel caso delle leggi basate sull’osservatore, si tratta di utilizzare un gruppo di amplificatori operazionali opportunamente collegati. Una soluzione alternativa, assai più frequente, è quella di implementare l’algoritmo di controllo in modo digitale, e quindi tramite un elaboratore generico o un DSP. In questo secondo caso vi sono due approcci possibili: si può sintetizzare la legge di controllo partendo dal modello a tempo continuo del motore (ed in generale dell’impianto) e poi discretizzare il controllore (se vi è della dinamica), oppure si può discretizzare il modello e poi sintetizzare un controllore a tempo discreto. Indipendentemente dalla strada seguita per arrivare ad un controllore discreto, l’uso di un sistema digitale di controllo, oltre alla flessibilità legata al’uso di uno strumento facilmente programmabile invece che alla realizzazione di un circuito, ha un vantaggio anche in termini di prestazioni del sistema controllato: è possibile ottenere un controllore a tempo di risposta finita, anche se il processo controllato è in realtà un sistema a tempo continuo. Per determinare un modello a tempo discreto di un processo continuo o di un controllore dinamico, genericamente indicato con l’equazione: ẋ = Ax + Bu y Cx = si può partire dalla soluzione nelle variabili di stato ad un generico istante t + δt , noto il valore dello stato all’instante t, ed assumendo che il segnale di ingresso sia costante in tale intervallo (come accade, se il sistema è controllato in modo digitale e δt è il passo di campionamento): ! Z t+δt = e Aδt x(t) + x(t + δt ) e A(t+δt −τ ) Bdτ u(t), t y(t) = Cx(t) Allora, definite le matrici: AD := e Aδt , BD := Z δt e A(δt −τ ) Bdτ, CD := C, (8.62) 0 posto t + δt = (k + 1)δt , t = kδt , introducendo le variabili xD (k) = x(kδt ), la soluzione precedente può essere riscritta come: xD (k + 1) = AD xD (k) + BD u(k), y(k) = CD xD (k) Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-247 e quindi ci si è ricondotti ad un sistema a tempo discreto, il cui stato è dato dalle variabili xD . Si noti che, negli istanti di campionamento, cioè negli istanti del tipo t = kδt , lo stato del sistema a tempo continuo e quello del suo modello a tempo discreto sono esattamente identici. Cioè, l’approccio proposto non introduce alcuna approssimazione negli istanti di campionamento. Nel caso del motore, con i valori dei parametri considerati, la matrice esponenziale e Aδt è data da: 1 0.25(1 − e −2δt + δt e −2δt ) 0.25(1 − e −2δt − δt e −2δt ) . e −2δt − δt e −2δt δt e −2δt e Aδt = 0 (8.63) −2δt −2δt + δt e −2δt e 0 −δt e 8.5.4 Stima dei disturbi Nel trattare il problema del controllo del motore in corrente continua si è fatta l’ipotesi che la coppia di carico, indicata con TL nel capitolo 1, sia nulla. In effetti, tale segnale di disturbo, in generale non noto e non misurabile, non è nullo, anzi rappresenta proprio il lavoro che deve essere svolto dal motore. La soluzione del problema di regolazione o inseguimento nel caso in cui tale segnale sia presente è ottenibile facilmente con strumenti che saranno ampiamente discussi nel corso di Controlli Automatici. Nel seguito si indica, in modo sintetico, uno strumento alternativo per la stima di take segnale di disturbo. La stima cosı̀ottenuta può essere poi utilizzata all’interno di uno schema di controllo, più complesso di quelli visti in precedenza in questa sezione, per ottenere anche reiezione del disturbo, oltre alla regolazione e/o inseguimento. L’idea di base, descritta nel seguito solo per il caso di disturbi costanti (o comunque costanti a tratti), è quella di estendere la dinamica del sistema considerando il disturbo come un’ulteriore variabile di stato, con derivata nulla. Il modello del motore in corrente continua, con indicazione esplicata della coppia di carico, è dato da: ẋ1 = x2 (8.64) ẋ2 ẋ3 = −a22 x2 + a23 x3 + TL = −a32 x2 − a33 x3 + b3 u (8.65) (8.66) y = x1 (8.67) e quindi, assumendo il disturbo costante, e ponendo x4 = TL , il modello dinamico esteso del motore in corrente continua diviene: ẋ1 ẋ2 ẋ3 ẋ4 y = x2 = −a22 x2 + a23 x3 + x4 (8.68) (8.69) = −a32 x2 − a33 x3 + b3 u = 0 (8.70) (8.71) = x1 , (8.72) che, in forma matriciale, può essere scritto come: ẋe = Ae xe + be u (8.73a) y = ce xe (8.73b) con il vettore di stato esteso xe dato da: xe := [x1 x2 x3 x4 ]T , e le matrici che descrivono il sistema caratterizzate da: 0 0 1 0 0 0 0 −f22 f23 1 (8.74) Ae = 0 −f32 −f33 0 , be = b3 , ce = 1 0 0 0 . 0 0 0 0 0 Ora, una possibile soluzione per stimare il segnale di disturbo x4 = TL è quella di verificare l’osservabilità del sistema esteso (8.73), e poi, in caso positivo, costruire un osservatore asintotico dello stato. Poichè l’osservabilità implica la possibilità di ricostruire asintoticamente lo stato, la ricostruzione xˆ4 della nuova variabile di stato corrisponde alla stima asintotica del disturbo. Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-248 Per verificare l’osservabilità, e quindi la possibilità di stimare il disturbo, si deve studiare il rango della matrice: ce ce Ae Θe := (8.75) ce A2e , 3 ce Ae cioè della matrice: 1 0 Θe := 0 0 0 1 −a22 a222 + a23 a32 0 0 0 0 , −a23 1 a23 (a22 + a33 ) −a22 il cui rango è massimo, e quindi il sistema esteso è osservabile, se la matrice −a23 1 M= a23 (a22 + a33 ) −a22 (8.76) (8.77) ha determinante non nullo. Il determinante vale det(M ) = −a23 a33 , (8.78) e quindi il sistema esteso è osservabile se il motore è in grado di produrre coppia (cioè, il parametro a23 è non nullo), e la sua resistenza di armatura è non nulla (cioè, il parametro a33 non è nullo). Ciò si verifica per qualsiasi motore reale, e quindi il sistema esteso è osservabile, cioè, la misura di posizione, opportunamente utilizzata, consente di stimare anche la coppia di disturbo. Uno schema di osservatore asintotico che consente di raggiungere questo risultato è dato da: xˆe = Ae xˆe + Le (ce xˆe − y) + be u (8.79) con la matrice Le da scegliere, con tecniche oramai ben note, in modo da rendere asintoticamente stabile la dinamica dell’errore di stima: x˜e = (Ae − Le ce )x˜e . (8.80) La stima cosı̀ ottenuta della coppia di disturbo può essere poi usata per compensare gli effetti del disturbo reale sul sistema. Capitolo 8: Osservatori e regolatori 8.6 8.6.1 [Ed. 2014, V 4.0 - PV - UniPG] - 8-249 Esercizi Osservatori asintotici e regolatori per sistemi a singolo ingresso e singola uscita Esercizio 8.1 Dato il sistema a tempo continuo −1 5 27 −2 ẋ = −1 −5 −16 x + 1 u, 1 2 3 0 1 2 2 x, y = a) studiare l’osservabilità; b) determinare, se esiste, un osservatore asintotico dello stato di ordine pieno; c) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile (si veda l’esercizio 6.4). Esercizio 8.2 Dato il sistema a tempo continuo −1 ẋ = −1 1 0 0 y = a) studiare l’osservabilità; 5 9 −4 −3 −4 x + 2 u, 2 1 0 1 x, b) determinare, se esiste, un osservatore asintotico dello stato di ordine pieno; c) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile (si veda l’esercizio 6.5). Esercizio 8.3 Dato il sistema a tempo continuo 2 13 26 −2 ẋ = −1 −7 −14 x + 1 u, 0 1 3 0 1 3 4 x, y = a) studiare l’osservabilità; b) determinare, se esiste, un osservatore asintotico dello stato di ordine pieno; c) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile, e con tutti gli autovalori con parte reale minore di -1 (si veda l’esercizio 6.6). Esercizio 8.4 Dato il sistema a tempo continuo 4 −4 ẋ = 0 1 2 y = a) studiare l’osservabilità; 6 4 −1 −7 −4 x + 1 u, 1 1 0 1 x, b) determinare, se esiste, un osservatore asintotico dello stato di ordine pieno; c) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile, e con tutti gli autovalori con parte reale minore di -1 (si veda l’esercizio 6.7). Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-250 Esercizio 8.5 Dato il sistema a tempo discreto 8 23 21 −1 x(k + 1) = −4 −12 −11 x(k) + 1 u(k), −2 1 0 0 1 3 3 x, y = a) studiare l’osservabilità; b) determinare, se esiste, un osservatore asintotico dello stato di ordine pieno; c) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile, e con tutti gli autovalori con modulo minore di 1 (si veda l’esercizio 6.8). Esercizio 8.6 Dato il sistema a tempo discreto −3 −2 −2 3 3 4 x(k) + −3 u(k), x(k + 1) = 3 −1 −1 −1 1 0 1 2 x, y = a) studiare l’osservabilità e la rilevabilità; b) determinare, se esiste, un osservatore asintotico dello stato di ordine pieno; c) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso a tempo di risposta finito (si veda l’esercizio 6.9). Esercizio 8.7 Dato il sistema a tempo continuo 9 28 67 3 ẋ = −9 −27 −65 x + −3 u, 3 9 22 1 1 3 2 x, y = a) studiare l’osservabilità; b) determinare, se esiste, un osservatore asintotico dello stato di ordine pieno; c) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile (si veda l’esercizio 6.10). Esercizio 8.8 Dato il sistema a tempo continuo 4 ẋ = −2 2 1 2 y = a) studiare l’osservabilità; 11 5 2 −5 −2 x + −1 u, 5 3 1 −2 x, b) determinare, se esiste, un osservatore asintotico dello stato di ordine pieno; c) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile (si veda l’esercizio 6.11). Esercizio 8.9 Dato il sistema a tempo continuo 8 21 8 4 ẋ = −4 −10 −3 x + −2 u, 2 5 2 1 −1 −1 1 x, y = Capitolo 8: Osservatori e regolatori [Ed. 2014, V 4.0 - PV - UniPG] - 8-251 a) studiare l’osservabilità; b) determinare, se esiste, un osservatore asintotico dello stato di ordine pieno; c) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile. Esercizio 8.10 Dato il sistema a tempo continuo 2 −1 2 1 ẋ = 1 −2 −2 x + 0 u, 0 1 2 0 1 −1 1 x, y = a) studiare l’osservabilità; b) determinare, se esiste, un osservatore asintotico dello stato di ordine pieno; c) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile, e con tutti gli autovalori con parte reale minore di -1. Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-252 Capitolo 9 Esercizi di riepilogo risolti In questo capitolo vengono presentati alcuni esercizio di riepilogo. Si precisa che molti dei quesiti proposti sono relativi al programma del corso Vecchio Ordinamento (corso quinquennale) o comunque di anni accademici passati. 9.1 Esercizi di riepilogo Esercizio 9.1 Dato il sistema a tempo discreto 1 2 1 0 0 0 x(k) + 0 u(k), x(k + 1) = 1 −5 −1 −2 1 1 3 1 x(k), y(k) = a) studiare la raggiungibilità e l’osservabilità; b) determinare, se esiste, una legge di controllo in retroazione dallo stato che garantisca tempo di risposta finito per il sistema a ciclo chiuso; c) determinare, se esiste, una legge di controllo in retroazione dallo stato che garantisca stabilità asintotica del punto x = 0 per il sistema a ciclo chiuso; d) determinare, se esiste, un osservatore asintotico dello stato di ordine intero con dinamica d’errore convergente a zero in tempo finito; e) determinare, se esiste, un osservatore asintotico dello stato di ordine intero con dinamica d’errore asintoticamente stabile; f) determinare, se esiste, un regolatore in retroazione dall’uscita che garantisca tempo di risposta finito per il sistema a ciclo chiuso e calcolare le matrici a ciclo chiuso ed i loro autovalori; g) determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile e calcolare le matrici a ciclo chiuso ed i loro autovalori; h) calcolare, per i sistemi a ciclo chiuso determinati ai punti (b), (c) ed (f), la risposta forzata per segnale di ingresso a gradino unitario. Esercizio 9.2 Dato il sistema a tempo discreto x(k + 1) = y1 (k) = y2 (k) F x(k) + g1 h1 x(k), h2 g2 u1 (k) u2 (k) , Capitolo 9: Esercizi riepilogo con 1 1 1 F = 1 0 0 , −4 1 −2 [Ed. 2014, V 4.0 - PV - UniPG] - 9-253 g1 g2 0 = 0 1 0 1 , 0 h1 h2 = 1 2 1 1 −1 0 , (9.1) a) studiare la raggiungibilità a partire dal solo ingresso u1 , e cioè usando la sola matrice di ingresso g1 , a partire dal solo ingresso u2 , e cioè usando la sola matrice di ingresso g2 , e per mezzo di entrambi i segnali di controllo; T b) raggiungere, se possibile, lo stato x̄ = 1 2 1 utilizzando solo il primo ingresso, solo il secondo ingresso, ed infine, con numero minimo di passi, utilizzando entrambi gli ingressi; T T c) se possibile, raggiungere in tre passi lo stato xf = 2 1 1 a partire dallo stato x0 = 0 0 1 (e cioè, ottenere x(3) = xf a partire da x(0) = x0 ); d) valutare l’osservabilità sulla base dell’uscita y1 , e cioè usando la sola matrice di uscita h1 , sulla base dell’uscita y2 , e cioè usando la sola matrice di uscita h2 , e per mezzo di entrambe le uscite; e) data la sequenza di uscita y(0) = [4 0]T , y(1) = [0 2]T , y(2) = [4 − 4]T , ottenuta in evoluzione libera, osservare, se possibile, lo stato iniziale sulla base della prima uscita, sulla base della seconda uscita e sulla base di entrambe le uscite; e) data la sequenza di uscita del punto precedente, ottenuta in evoluzione libera, ricostruire, se possibile, lo stato al passo k = 3 sulla base della prima uscita, sulla base della seconda uscita e sulla base di entrambe le uscite; f) determinare la decomposizione rispetto alla osservabilità, considerando solo la prima uscita e considerando solo la seconda uscita; g) progettare una legge di controllo in retroazione dallo stato per assegnare tutti gli autovalori in zero, utilizzando entrambi gli ingressi ed imponendo un solo miniblocco di Jordan per la matrice retroazionata; h) progettare una legge di controllo in retroazione dallo stato per assegnare tutti gli autovalori in zero, utilizzando entrambi gli ingressi ed imponendo due miniblocchi di Jordan per la matrice retroazionata; i) progettare un osservatore con dinamica d’errore convergente a zero in tempo finito, utilizzando entrambe le uscite ed imponendo un solo miniblocco di Jordan per la matrice della dinamica d’errore. Esercizio 9.3 Dato un processo descritto dalla matrice di trasferimento: z+1 z , W (z) = z 2 + 3z + 2 z 2 + 4z + 4 (9.2) a) determinare una realizzazione minima Σ(F, G, h); b) determinare, se esiste, una legge di controllo in retroazione statica dallo stato u = Kx + v per il sistema Σ, che consenta di ottenere un sistema a ciclo chiuso con tempo di risposta finito; c) valutare il numero di miniblocchi nella forma di Jordan della matrice F + GK, ove K è la matrice calcolata al passo precedente; d) progettare, se esiste, un osservatore asintotico dello stato con dinamica dell’errore di stima asintoticamente stabile; e) progettare, se esiste, un regolatore in reazione dinamica dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile; f) calcolare la risposta al gradino unitario per il sistema a ciclo aperto, assumendo un gradino unitario sul primo ingresso e secondo ingresso nullo, assumendo un gradino unitario sul secondo ingresso e primo ingresso nullo, ed infine assumendo un gradino unitario su entrambi gli ingressi [esame]; g) dire se la risposta completa al gradino per il sistema a ciclo chiuso ottenuto al punto e) è limitata, e dire se tale funzione ammette limite, per t tendente ad infinito. Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-254 Esercizio 9.4 Dato il sistema dinamico a tempo discreto 1 2 F = 0 0 0 −2 x(t + 1) = F x(t) + gu(t), (9.3) y(t) = Hx(t) 1 1 0 , g = −1 , 0 0 (9.4) H= 1 0 0 1 −1 1 . (9.5) 1. valutare la sua osservabilità e ricostruibilità, sulla base della sola prima uscita, della sola seconda uscita, o di entrambe le uscite; 2. se l’uscita in evoluzione libera, nei primi tre passi, è pari a y(0) = (2 0)T , y(1) = (2 − 2)T , y(2) = (2 0)T , osservare lo stato iniziale e ricostruire lo stato ai passi t = 1 e t = 2, se possibile, utilizzando solo la prima uscita, solo la seconda uscita ed entrambe le uscite; 3. progettare, se esiste, un osservatore asintotico dello stato con dinamica dell’errore di stima asintoticamente stabile; 4. progettare, se esiste, una legge di controllo in retroazione statica dallo stato che renda il sistema a ciclo chiuso asintoticamente stabile; 5. progettare, se esiste, una legge di controllo in retroazione dinamica dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile. 9.2 9.2.1 Soluzioni Soluzione esercizio 9.1 Raggiungibilità ed osservabilità. Per valutare la raggiungibilità e l’osservabilità del sistema, si può procedere calcolando le matrici di raggiungibiltà e di osservabilità. Per la raggiungibilità si ha: 0 1 −1 R = g F g F 2g = 0 0 1 , 1 −2 −1 il cui determinante vale 1, e quindi il sistema è raggiungibile. Per l’osservabilità si ha: h 1 3 1 O = hF = −1 1 −1 , hF 2 5 −1 1 il cui determinante vale −16, e quindi il sistema è osservabile. Determinare, se esiste, una legge di controllo in retroazione dallo stato che garantisca tempo di risposta finito per il sistema a ciclo chiuso. Poiché il sistema è raggiungibile, è possibile allocare in modo arbitrario tutti gli autovalori. Inoltre, poiché è a tempo discreto, se gli autovalori vengono allocati tutti in zero, si ha convergenza a zero in un numero finito di passi. Per determinare una legge di controllo in retroazione dallo stato, cioè del tipo: u = Kx + v, che allochi tutti gli autovalori in posizioni arbitrarie, si procede calcolando la forma canonica di controllore a singolo ingresso. Si deve quindi trovare un vettore riga c, con tre componenti, soluzione del sistema di equazioni: cg 0 cFg = 0 c F 2g 1 Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-255 ed ottenibile, ad esempio, scegliendo c pari all’ultima riga dell’inversa 0 1 −1 2 1 , R−1 = 1 R= 0 0 1 −2 −1 0 da cui si ricava: c= e quindi, per la matrice che caratterizza le nuove c 0 −1 cF 1 T = cF 2 1 0 1 0 della matrice di raggiungibilità: 3 1 1 0 , 1 0 , (9.6) (9.7) coordinate, si ottiene: 1 0 0 1 0 0 0 , T = 1 0 0 . 2 1 −2 −1 1 In queste nuove coordinate il sistema è descritto dalle matrici: 0 1 0 0 1 , gc = T −1 g = 0 , Fc = T −1 F T = 0 0 3 −1 −1 1 hc = hT = (9.8) 1 0 1 . (9.9) A partire dalla forma canonica di controllore è immediato trovare la matrice di retroazione che consente di allocare tutti gli autovalori nell’origine, e quindi ottenere un sistema a tempo di risposta finito. Il polinomio caratteristico desiderato in questo caso è dato da p(λ) = λ3 . La matrice di retroazione, nelle coordinate di controllore, deve essere scelta pari a: kc,f = (−3 − 0) (1 − 0) (1 − 0) = −3 1 1 , (9.10) cui corrisponde, nelle coordinate originali, la matrice: kf = kc,f T −1 = 2 −1 1 La matrice che descrive la dinamica del sistema a ciclo 1 F + gkf = 1 −3 i cui autovalori sono tutti nulli, come desiderato! . (9.11) chiuso è quindi (sebbene non richiesta): 2 1 0 0 −2 −1 Determinare, se esiste, una legge di controllo in retroazione dallo stato che garantisca stabilità asintotica del punto x = 0 per il sistema a ciclo chiuso. Nel caso dei sistemi lineari autonomi, l’origine è sempre punto di equilibrio, e le sue proprietà di stabilità sono caratterizzate dagli autovalori del sistema, e cioè dagli autovalori della matrice F (con la descrizione abituale). Si tratta quindi di costruire una matrice di retroazione dallo stato tale da rendere tutti gli autovalori del sistema a ciclo chiuso asintoticamente stabili. Ovviamente, la matrice kf determinata al punto precedente è una possibile soluzione. Una soluzione diversa si può ottenere, ad esempio, cercando di assegnare come nuovo polinomio caratteristico il polinomio p(λ) = (λ + 1/2)3 = λ3 + 3/2λ2 + 3/4λ + 1/8, o un qualunque altro polinomio con zeri minori di 1, in modulo. Per ottenere questo risultato, a partire dalla forma canonica di controllore già calcolata in (9.9), si può porre: kc,a = (−3 − 1/8) (1 − 3/4) (1 − 3/2) = −25/8 1/4 −1/2 , (9.12) cui corrisponde, nelle coordinate originali, la matrice: kf = kc,f T −1 = −1/4 −33/8 −1/2 . La matrice che descrive la dinamica del sistema a ciclo chiuso è quindi (sebbene non richiesta): 1 2 1 1 0 0 F + gkf = −21/4 −41/8 −5/2 (9.13) Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-256 i cui autovalori sono tutti {−1/2, −1/2, −1/2}, come desiderato! Determinare, se esiste, un osservatore asintotico dello stato di ordine intero con dinamica d’errore convergente a zero in tempo finito. L’esistenza di un osservatore dello stato con dinamica d’errore assegnabile in modo arbitrario, e quindi, in particolare, con dinamica convergente a zero in tempo finito, è garantita dalla proprietà di osservabilità del sistema, già verificata in precedenza. L’osservatore asintotico dello stato è descritto dall’equazione matriciale: x̂(k + 1) = F x̂(k) + L(hx̂(k) − y(k)) + gu(k), (9.14) in cui la matrice L deve essere determinata in modo da assegnare il polinomio caratteristico della matrice F +Lh. Infatti, introdotto l’errore di stima x̃ := x − x̂ e considerando la dinamica del sistema e la dinamica (9.14) dell’osservatore, si trova: x̃(k + 1) = (F + Lh)x̃(k). (9.15) La sintesi della matrice L può essere condotta utilizzando il sistema duale. Sia Σ∗ = (F̄ , ḡ, h̄) il sistema duale, con F̄ = F T , ḡ = hT , h̄ = g T . La matrice che descrive la dinamica dell’errore di stima, riscritta per il sistema duale, diviene: (F + Lh)T = F T + hT LT = F̄ + ḡ k̄, (9.16) e quindi, per assegnare gli autovalori che governano l’evoluzione della dinamica di errore, si può procedere assegnando gli autovalori della matrice F̄ + ḡk̄ per mezzo della matrice di guadagno k̄. Procedendo in modo consueto, si tratta di determinare un vettore riga c̄ soluzione del sistema: c̄ḡ 0 c̄ F̄ ḡ = 0 (9.17) c̄ F̄ 2 ḡ 1 ed ottenibile, ad esempio, scegliendo c̄ pari all’ultima riga dell’inversa della matrice di raggiungibilità del sistema duale: 1 −1 5 0 1/4 1/4 −1 R̄ = 3 1 −1 , R̄ = 1/4 1/4 −1 , (9.18) 1 −1 1 1/4 0 −1/4 da cui si ricava: c̄ = 1/4 0 −1/4 e quindi, per la matrice che caratterizza le nuove coordinate: 1/4 0 −1/4 1/4 −3/4 , T̄ −1 = 0 −1/4 0 5/4 , (9.19) 5 T̄ = 3 1 0 1 4 3 . 0 1 (9.20) Sulla base della matrice di trasformazione si può determinare la forma canonica di controllo ad un ingresso per il sistema duale, dalla quale si determina in modo immediato la matrice k̄ cercata. In queste nuove coordinate il sistema duale è descritto da: 0 1 0 0 F̄c = 0 0 1 , ḡc = 0 ; (9.21) 3 −1 −1 1 in effetti, tale forma per la matrice F̄c era prevedibile, perché questa matrice ha lo stesso polinomio caratteristico della matrice Fc in (9.9) e del sistema originale. In particolare quindi, non è indispensabile calcolare la matrice T̄ . Volendo ottenere un osservatore asintotico dello stato con errore convergente a zero in un numero finito di passi, si devono allocare tutti gli autovalori della matrice che governa l’evoluzione dell’errore in zero, e quindi, per il sistema duale, si devono allocare in zero tutti gli autovalori della matrice F̄ + ḡ k̄f . La matrice k̄c,f che consente di allocare in zero tutti gli autovalori del sistema duale è data da: k̄c,f = (−3 − 0) (1 − 0) (1 − 0) = −3 1 1 , (9.22) Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-257 cui corrisponde, nelle coordinate duali originali, la matrice: k̄f = k̄c,f T̄ −1 = −1 1/4 5/4 . (9.23) Per determinare la matrice Lf di guadagno dell’osservatore, si noti che, per il sistema duale, si ha: F̄ + ḡ k̄f = F T + hT k̄f , (9.24) e quindi la dinamica dell’errore di stima è descritta dalla matrice: (F T + hT k̄f )T = F + k̄fT h, (9.25) e quindi la matrice Lf cercata è data da: −1 Lf = k̄fT = 1/4 . 5/4 La dinamica di errore è quindi governata dalla matrice: 0 −1 0 3/4 1/4 , F + Lf h = 5/4 −15/4 11/4 −3/4 (9.26) (9.27) con autovalori tutti nulli, come desiderato. Determinare, se esiste, un osservatore asintotico dello stato di ordine intero con dinamica d’errore asintoticamente stabile. La sintesi di un osservatore di ordine pieno con dinamica d’errore asintoticamente stabile si ottiene, tenendo conto di quanto già fatto al punto precedente, calcolando una matrice k̄c,a tale da rendere tutti gli autovalori della matrice F̄c + ḡc k̄c,a minori di 1, in modulo e, ad esempio, uguali a {1/3, 1/3, 1/3}. Il polinomio corrispondente è quindi (λ − 1/3)3 = λ3 − λ2 + 1/3λ − 1/27. Ovviamente, ogni altra scelta di autovalori con modulo minore di uno sarebbe stata soddisfacente. La matrice k̄c,a che consente di ottenere ciò è data da: k̄c,a = (−3 + 1/27) (1 − 1/3) (1 + 1) = −80/27 2/3 2 , (9.28) cui corrisponde, nelle coordinate duali originali, la matrice: k̄ = k̄c T̄ −1 = −67/54 1/6 74/27 , ed infine, per la matrice La di guadagno dell’osservatore, si trova: −67/54 L = k̄aT = 1/6 . 74/27 La dinamica di errore è quindi governata dalla matrice: −13/54 −93/54 −13/54 1/2 1/6 , F + La h = 63/54 −122/54 65/9 20/27 (9.29) (9.30) (9.31) con autovalori pari a {1/3, 1/3, 1/3}, come desiderato. Determinare, se esiste, un regolatore in retroazione dall’uscita che garantisca tempo di risposta finito per il sistema a ciclo chiuso e calcolare le matrici a ciclo chiuso ed i loro autovalori. Il regolatore cercato si ottiene combinando in modo opportuno la matrice di retroazione progettata al punto (b) e l’osservatore progettato al punto (d). Infatti in questo modo si ottiene un sistema dinamico di ordine 6 (pari cioè alla dimensione dello spazio di stato del sistema originale, 3 più quella dell’osservatore, ancora uguale a 3), con tutti gli autovalori nulli, il cui stato, in evoluzione libera, converge a zero in un numero finito di passi. Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-258 In particolare, il regolatore (dinamico, per la presenza dell’osservatore) è descritto dalle equazioni: x̂(k + 1) = u(k) = F x̂(k) + Lf (hx̂(k) − y(k)) + gu(k) kf x̂(k) + v(k), con le matrici F , g ed h del sistema e le matrici di guadagno kf e Lf date da: −1 kf = 2 −1 1 , Lf = 1/4 . 5/4 (9.32a) (9.32b) (9.33) Determinare, se esiste, un regolatore in retroazione dall’uscita che renda il sistema a ciclo chiuso asintoticamente stabile e calcolare le matrici a ciclo chiuso ed i loro autovalori. Il regolatore cercato si ottiene combinando in modo opportuno la matrice di retroazione progettata al punto (c) e l’osservatore progettato al punto (e). In particolare, il regolatore (dinamico, per la presenza dell’osservatore) è descritto dalle equazioni: x̂(k + 1) = u(k) = F x̂(k) + La (hx̂(k) − y(k)) + gu(k) ka x̂(k) + v(k), con le matrici F , g ed h del sistema e le matrici di guadagno ka e La date da: −67/54 kf = −1/4 −33/8 −1/2 , La = 1/6 . 74/27 (9.34a) (9.34b) (9.35) Determinare la risposta forzata per ingresso a gradino unitario. L’esercizio si risolve calcolando la funzione di trasferimento, di immediata determinazione a partire dalla forma canonica di controllore, e poi espandendo in frazioni parziali la risposta nel dominio di Zeta ed antitrasformando. Infine, si noti che le funzioni di trasferimento dei sistemi a ciclo chiuso determinati ai punti (c) ed (f) coincidono, poichè la dinamica dell’errore di stima non è raggiungibile, e quindi non influenza la funzione di trasferimento. Capitolo 9: Esercizi riepilogo 9.2.2 [Ed. 2014, V 4.0 - PV - UniPG] - 9-259 Soluzione esercizio 9.2 Raggiungibilità per singoli ingressi e per entrambi gli ingressi. Per valutare la raggiungibilità a partire dal primo ingresso si deve valutare il rango della matrice: R1 = g1 F g1 F 2 g1 ottenendo: 0 R1 = 1 0 1 2 0 1 1 −6 il cui rango è tre, e quindi il sistema è raggiungibile. Analogamente, la raggiungibilità a partire dal secondo ingresso è valutabile dalla matrice: R2 = g2 F g2 F 2 g2 ottenendo: 0 1 R2 = 0 0 1 −2 −1 1 0 il cui rango è tre, e quindi il sistema è raggiungibile anche a partire dal solo secondo ingresso. Per quanto riguarda infine la raggiungibilità da entrambi gli ingressi, questa è ovviamente implicata dalla raggiungibilità da ciascun singolo ingresso. T Raggiungere, se possibile, lo stato x̄ = 1 2 1 utilizzando solo u1 , solo u2 , ed infine, con numero minimo di passi, utilizzando entrambi gli ingressi. Poiché il sistema è raggiungibile anche da ciascun singolo ingresso, è possibile determinare le sequenze cercate. La sequenza di valori del primo ingresso che consente di raggiungere il punto dato è soluzione del sistema algebrico: u1 (2) x̄ = R1 u1 (1) (9.36) u1 (0) e cioè: la cui soluzione è data da: 1 0 2 = 1 1 0 u1 (0) = 0, 1 2 u1 (2) 0 1 u1 (1) 1 −6 u1 (0) u1 (1) = 1, (9.37) u1 (2) = 2, e quindi il segnale di ingresso complessivo è dato da: u(0) = (0, 0)T , u(1) = (1, 0)T , u(2) = (2, 0)T . Per raggiungere lo stato desiderato solo tramite il secondo ingresso si deve invece considerare il sistema: u2 (2) x̄ = R2 u2 (1) (9.38) u2 (0) e cioè: la cui soluzione è data da: 1 0 2 = 0 1 1 u2 (0) = 2, 1 −1 u2 (2) 0 1 u2 (1) −2 0 u2 (0) u2 (1) = 3, u2 (2) = 7, e quindi il segnale di ingresso complessivo è dato da: u(0) = (0, 2)T , u(1) = (0, 3)T , u(2) = (0, 7)T . (9.39) Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-260 Infine, per raggiungere il punto desiderato nel minor numero possibile di passi si devono considerare le prime colonne linearmente indipendenti della matrice di raggiungibilià. Nel caso in esame la matrice di raggiungibilità è data da: 0 0 1 1 2 −1 1 1 R= 1 0 0 0 0 1 1 −2 −6 0 dalla cui analisi se vede facilmente che le prime due colonne, e cioè la matrice di ingresso G, non sono sufficienti a generare uno spazio che contenga il punto desiderato, mentre le prime tre colonne generano uno spazio sufficientemente ampio (anzi, generano l’intero spazio di stato). Il punto di interesse può quindi essere raggiunto in due passi, e la sequenza di controllo che ottenere ciò è soluzione del sistema algebrico ottenuto combinando le prime tre colonne della matrice di raggiungibilità: 1 0 0 1 u1 (1) 2 = 1 0 0 u2 (1) (9.40) 1 0 1 1 u1 (0) la cui soluzione è data da: u1 (0) = 1, u2 (1) = 0, u1 (1) = 2, e quindi il segnale di ingresso complessivo è dato da: u(0) = (1, 0)T , u(1) = (2, 0)T . T T Se possibile, raggiungere in tre passi lo stato xf = 2 1 1 a partire dallo stato x0 = 0 0 1 . Per la linearità del sistema, il problema può essere risolto se esiste una sequenza di ingresso che consente di raggiungere in tre passi il punto xf − F 3 x0 . Il problema ha sicuramente soluzione, poichè il sistema è raggiungibile, e quindi un qualunque punto dello spazio di stato può essere raggiunto, anche il punto 2 xf − F 3 x0 = 2 . −4 Per raggiungere tale punto in tre passi è possibile agire in diversi modi, corrispondenti a diverse scelte delle colonne indipendenti della matrice di raggiungibilità. Una possibilità è quella di usare un solo ingresso, ad esempio il primo. Il sistema di equazioni di interesse, tenendo conto della forma della matrice di raggiungibilità da un solo ingresso R1 , è quindi: 2 0 1 2 u1 (2) 2 = 1 0 1 u1 (1) (9.41) −4 0 1 −6 u1 (0) la cui soluzione è data da: u1 (0) = 3/4, u1 (1) = 1/2, u1 (2) = 5/4, e quindi il segnale di ingresso complessivo è dato da: u(0) = (3/4, 0)T , u(1) = (1/2, 0)T , u(2) = (5/4, 0)T . Scegliendo invece di usare solo il secondo ingresso si sarebbe trovato il segnale: u(0) = (0, 2)T , u(1) = (0, 4)T , u(2) = (0, 4)T . Infine, scegliendo entrambi gli ingressi, e considerando, ad esempio, le prime tre colonne della matrice di raggiungibilità, si avrebbe la sequenza: u(0) = (0, 0)T , u(1) = (2, 0)T , u(2) = (2, −6)T . Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-261 Valutare l’osservabilità sulla base dell’uscita y1 , sulla base dell’uscita y2 , e per mezzo di entrambe le uscite. Per quanto riguarda l’osservabilità per mezzo della sola prima uscita si deve valutare il rango della matrice h1 O1 = h1 F h1 F 2 ottenendo: 1 O1 = −1 5 2 1 2 −1 −2 1 il cui rango è tre, e quindi il sistema è osservabile. Analogamente, l’osservabilità per mezzo della seconda uscita è valutabile dalla matrice: h2 1 −1 0 1 1 O2 = h2 F = 0 h2 F 2 −3 1 −2 il cui rango è due, e quindi il sistema, disponendo solo della seconda uscita, non è osservabile. Ovviamente, poiché il sistema è osservabile dalla prima uscita, lo è anche da entrambe. Data la sequenza di uscita y(0) = [4 0]T , y(1) = [0 2]T , y(2) = [4 − 4]T , ottenuta in evoluzione libera, osservare, se possibile, lo stato iniziale sulla base della prima uscita, sulla base della seconda uscita e sulla base di entrambe le uscite. Per quanto riguarda la possibilità di osservare lo stato iniziale, ciò è possibile solo dalla prima uscita o da entrambe, mentre non è possibile dalla sola seconda uscita. Ciò significa che è del tutto inutile determinare lo stato iniziale, anche nella forma in cui compaiono una o più indeterminate. Infatti, se un sistema non è osservabile, non è mai possibile “osservare” lo stato iniziale, cioè, calcolarlo a partire da misure dell’uscita e dell’ingresso. Per quanto riguarda la determinazione dello stato iniziale a partire dalla sequenza di uscita data, considerando la sola prima componente si ha il sistema: y1 (0) y1 (1) = O1 x(0) (9.42) y1 (2) e cioè: la cui soluzione è data da: 4 1 2 1 x1 (0) 0 = −1 2 −1 x2 (0) , 4 5 −2 1 x3 (0) 1 x1 (0) x2 (0) = 1 . 1 x3 (0) (9.43) Volendo determinare lo stato iniziale sulla base di entrambe le uscite, si può procedere con la pseudoinversa sinistra, e cioè, dato il sistema di equazioni algebriche: y1 (0) y2 (0) y1 (1) ȳ = (9.44) y2 (1) = Θx(0), y1 (2) y2 (2) la condizione iniziale è data da: x(0) = (ΘT Θ)−1 ΘY ȳ, ottenendo x(0) = [1 1 1]T , come in (9.2.2) (ovviamente!). Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-262 In alternativa, si può procedere selezionando tre righe indipendenti della matrice Θ e le rispettive uscite. nel caso in esame, si potrebbe considerare il sistema: y1 (0) h1 y2 (0) = h2 x(0), (9.45) y1 (1) h1 F e cioeè 4 1 2 1 x1 (0) 0 = 1 −1 0 x2 (0) , 0 −1 2 −1 x3 (0) (9.46) la cui soluzione, ovviamente, è ancora x(0) = [1 1 1]T . Determinare la decomposizione rispetto alla osservabilità, considerando solo la prima uscita e considerando solo la seconda uscita. Per ricostruire lo stato sulla base della prima uscita o di entrambe le uscite, si può partire dalla soluzione del punto precedente. Poiché lo stato iniziale è x(0) = [1 1 1]T , e tenendo conto del fatto che le uscite misurate rappresentano l’evoluzione libera nell’uscita, lo stato al passo k = 3 è semplicemente: 1 x(3) = F 3 x(0) = −1 . (9.47) 9 Nel caso in cui sia disponibile solo la misura della seconda uscita, si determinare l’insieme degli stati iniziali soluzione dell’equazione: y2 (0) y2 (1) = Θ2 x(0), (9.48) y2 (2) e cioè: la cui soluzione è data da: x1 (0) − x2 (0) x2 (0) + x3 (0) −3x1 (0) + x2 (0) − 2x3 (0) x1 (0) x(0) = x1 (0) . 2 − x1 (0) = 0 = 2 = −4 (9.49) (9.50) A partire da tale stato iniziale, non completamente determinato, l’evoluzione libera del sistema è pari a: x1 (0) + 2 x1 (0) − 2 x1 (0) x(1) = F x(0) = x1 (0) , x(2) = F 2 x(0) = x1 (0) + 2 , x(3) = F 3 x(0) = x1 (0) − 2 , x1 (0) − 4 −x1 (0) −x1 (0) + 10 (9.51) da cui emerge chiaramente la non ricostruibilità, perché permane l’indeterminazione associata allo stato iniziale. Del resto, la matrice F non ha autovalori nulli, e quindi la non osservabilità implica la non ricostruibilità. Progettare una legge di controllo in retroazione dallo stato per assegnare tutti gli autovalori in zero, utilizzando entrambi gli ingressi ed imponendo un solo miniblocco di Jordan per la matrice retroazionata. La decomposizione del sistema rispetto alla osservabilità, sulla base della sola prima uscita, non è rilevante, perché il sistema è completamente osservabile. La decomposizione sarebbe quindi solo un cambio di coordinate. Viceversa, nel caso in cui sia disponibile solo la seconda uscita, la decomposizione è significativa. Un primo modo di procedere è basato sull’uso del sistema duale. Il sistema di interesse è Σ2 (F, G, h2 ), con G = [g1 g2 ], il cui duale è dato da: Σ∗2 (F T , hT2 , GT ) =: Σ∗ (F ∗ , g2∗ , H ∗ ). La matrice di raggiungibilità del duale è pari a: 1 0 −3 ∗ g2 F ∗ g2∗ (F ∗ )2 g2∗ = −1 1 1 , (9.52) 0 1 −2 Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-263 ed una base per il sottospazio degli stai (duali) raggiungibili è data da: 1 0 v1 = −1 , v2 = 1 . 0 1 Una possibile scelta per la nuova base è quindi: 1 0 0 T ∗ = −1 1 1 , 0 1 0 (T ∗ )−1 (9.53) 0 1 . −1 1 0 = 0 0 1 1 (9.54) La decomposizione rispetto alla raggiungibilità del sistema duale è quindi data da: 0 −3 1 1 −1 1 ∗ −1 ∗ ∗ ∗ −1 ∗ ∗ ∗ ∗ ∗ ∗ ¯ ¯ ¯ F = (T ) F T = 1 −2 0 , g2 = (T ) g2 = 0 , H = H T = 0 1 0 0 1 0 1 0 , (9.55) e quindi, tornando al sistema originale, al decomposizione rispetto all’osservabilità, qualora sia disponibile solo la seconda uscita, data da: 0 1 0 −1 0 F̂ = (F¯∗ )T = −3 −2 0 , Ĝ = (H¯∗ )T = 1 1 , hˆ2 = (g¯2∗ )T = 1 0 0 . (9.56) 1 0 1 1 0 Il sottosistema osservabile è dato da: 0 1 ˆ F11 = , −3 −2 Ĝ1 = −1 0 1 1 mentre il sottosistema non osservabile è dato da: Fˆ22 = 1 , Ĝ2 = 1 0 , , hˆ2,1 = hˆ2,2 = 0 1 0 , (9.57) . (9.58) Si noti, come già verificato al punto precedente, che il sottosistema non osservabile ha, come unico autovalore, λ = 1, che è non nullo, e quindi il sistema, complessivamente, non è osservabile. Un secondo modo di procedere è il seguente. A partire dalla matrice di osservabilità Θ, si determinano due righe indipendenti, che costituiscono un sottoinsieme delle nuove coordinate, e si determina poi un terzo vettore riga che completi il nuovo sistema di coordinate (cioè, che sia indipendente dalle due righe già scelte). Nel caso in esame si ha: r1 = 1 −1 0 , r2 = 0 1 1 , (9.59) ed una possibile scelta per il terzo vettore è: r3 = cui corrisponde la matrice di trasformazione 1 T −1 = 0 0 Il sistema, nelle nuove coordinate, è 0 1 hatF = T −1 F T = −3 −2 1 0 0 1 0 di coordinate: −1 0 1 1 1 , T = 0 1 0 0 (9.60) 0 1 0 1 . 1 −1 quindi: 0 −1 0 0 , Ĝ = T −1 G = 1 1 , 1 1 0 hˆ2 = h2 T = (9.61) 1 0 0 , (9.62) che coincide con quanto trovato prima. Progettare una legge di controllo in retroazione dallo stato per assegnare tutti gli autovalori in zero, utilizzando entrambi gli ingressi ed imponendo due miniblocchi di Jordan per la matrice retroazionata. Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-264 La raggiungiblità del sistema verificata in precedenza garantisce l’esistenza di una legge di controllo in reazione dallo stato che consente di allocare arbitrariamente tutti gli autovalori. Per determinare tale retroazione, si procede in modo classico: forma canonica di controllore a due ingressi e retroazione basata su entrambi gli ingressi. Il calcolo della matrice K corrispondente è lasciato per esercizio. Progettare un osservatore con dinamica d’errore convergente a zero in tempo finito, utilizzando entrambe le uscite ed imponendo un solo miniblocco di Jordan per la matrice della dinamica d’errore. Si procede come al punto precedente, salvo lavorare sul sistema duale. La legge di retroazione duale, cioè l’iniezione dall’uscita, esiste perchè il sistema è osservabile se si dispone di entrambe le uscite. Capitolo 9: Esercizi riepilogo 9.2.3 [Ed. 2014, V 4.0 - PV - UniPG] - 9-265 Esercizio 9.3: traccia della soluzione a) Il minimo comune multiplo dei due denominatori è dato da: d(z) = (z + 1)(z + 2)2 = z 3 + 5z 2 + 8z + 4, mentre la matrice polinomiale B(z) = d(z)W (z) è pari a: B(z) = d(z)W (z) = z 2 + 2z z 2 + 2z + 1 = 1 1 z 2 + 2 2 z 0 1 . (9.63) Poiché il sistema ha una sola uscita, è conveniente utilizzare la estensione della forma canonica di osservatore, data da: 0 0 −4 0 1 Fo = 1 0 −8 , go = 2 2 , Ho = 1 0 0 . (9.64) 0 1 −5 1 1 Si verifica facilmente che la matrice R = [go Fo go Fo2 go ] ha rango pieno, e quindi la realizzazione, che è osservabile per costruzione, è anche raggiungibile e quindi minima. b) Legge di controllo in retroazione statica dallo stato. Una legge del tipo cercato esiste sicuramente, perché il sistema di interesse è una realizzazione minima, e quindi è raggiungibile. La soluzione dell’esercizio è “classica”. c) Valutare il numero di miniblocchi. L’esercizio si risolve facilmente, ricordando che il numero di miniblocchi di una matrice F associati ad un certo autovalore è pari alla nullità della matrice F − λI. In questa caso si tratta di studiare la nullità della matrice F + GK − λI, per λ = 0, e quindi la nullità di F + GK. Lo specifico risultato ottenuto dipende dal modo in cui è stata sintetizzata la matrice di retroazione K. Comunque, si avranno uno o due miniblocchi, mentre non vi potranno mai essere tre miniblocchi. d) Progettare un osservatore. Un osservatore asintotico dello stato per la realizzazione minima determinata esiste sicuramente, perché la realizzazione è osservabile (per costruzione). Il progetto dell’osservatore è “classico”. e) Progettare un regolatore in reazione dinamica dall’uscita. Un regolatore in reazione dinamica dall’uscita si ottiene semplicemente scegliendo come legge di retroazione u = K x̂ + v, in cui K è, ad esempio, la matrice progettata al punto b) ed x̂ è lo stato dell’osservatore progettato al punto d). f) Calcolare la risposta al gradino unitario. L’esercizio relativo ad un segnale a gradino unitario sul primo ingresso e nullo sul secondo si risolve antitrasformando la funzione z z ; (9.65) w1 (z) = 2 z + 3z + 2 z − 1 il caso di gradino unitario sul secondo ingresso e primo ingresso nullo si risolve antitrasformando w2 (z) = z z+1 , z 2 + 4z + 4 z − 1 (9.66) ed infine il caso di gradino unitario su entrambi gli ingressi si ottiene, tenendo conto del principio di sovrapposizione degli effetti, sommando le due risposte forzate precedenti. g) Risposta completa al gradino per il sistema a ciclo chiuso. La risposta completa al gradino è limitata se il sistema è esternamente stabile. Poiché il sistema a ciclo è internamente stabile, è anche esternamente stabile, e cioè stabile in senso BIBO. La risposta al gradino è quindi limitata. Inoltre, poiché il sistema a ciclo chiuso è asintoticamente stabile, nella risposta completa tutti i termini (cioè tutti i modi) che dipendono dal sistema sono convergenti a zero, e quindi l’unico termine che contribuisce la limite per t tendente ad infinito è quello legato all’ingresso, che è costante. Esiste quindi il limite in oggetto, ed è pari alla risposta permanente del sistema a ciclo chiuso per ingresso a gradino unitario. Capitolo 9: Esercizi riepilogo 9.2.4 [Ed. 2014, V 4.0 - PV - UniPG] - 9-266 Esercizio 9.4: traccia della soluzione 1. Osservabilità e ricostruibilità. Si trova facilmente che il sistema non è osservabile né dalla prima uscita da sola né dalla seconda, mentre è osservabile utilizzando entrambe le uscite. Infatti: h1 1 0 1 O1 = h1 F = 1 0 1 , rango [O1 ] = 1, (9.67) h1 F 2 1 0 1 h2 0 −1 1 O2 = h2 F = 0 −2 0 , rango [O2 ] = 2, (9.68) h2 F 2 0 0 0 H O = HF , rango [O] = 3. (9.69) HF 2 La ricostruibilità si può verificare con un criterio diretto, oppure analizzando la controllabilità del duale. Un primo criterio diretto di ricostruibilità è dato, nei tre casi rispettivamente, da: XN O,1 XN O,2 XN O ⊆ ⊆ ⊆ Ker F 3 , Ker F 3 , (9.70) (9.71) Ker F 3 , (9.72) in cui XN O,i indica il sottospazio degli stati non osservabili a partire dalla misura della i-esima uscita, i = 1, 2, e XN O indica il sottospazio degli stati non osservabili a partire dalla misura dell’intera uscita. Per i vari sottospazi si trova facilmente: 1 0 1 1 F 3 = 0 0 0 , Ker F 3 = span 0 0 0 0 −1 1 0 1 1 O1 = 1 0 1 , Ker O1 = span 0 1 0 1 −1 0 −1 1 1 O2 = 0 −2 0 , Ker O2 = span 0 0 0 0 0 0 ; 1 , 0 0 ; 1 , 0 . (9.73) (9.74) (9.75) Da quanto sopra si vede facilmente che la condizione (9.70) è verificata, e quindi il sistema è ricostruibile a partire dalla misura della prima uscita; infatti i vettori che descrivono una base di XN O,1 sono combinazione lineare dei vettori che descrivono una base di Ker F 3 . Viceversa, poichè il vettore che descrive una base di XN O,2 non è combinazione lineare della base di Ker F 3 , la condizione (9.71) non è verificata e quindi il sistema non è ricostruibile a partire dalla misura della seconda uscita. Infine, poichè il sistema, a partire da entrambe le uscite, è osservabile, è anche ricostruibile, e quindi la condizione (9.72) vale sicuramente. Un secondo metodo per la verifica della ricostruibilità è il criterio PBH. Nel caso del sistema in esame gli autovalori della matrice F sono λ = 0, molteplcità algebrica pari a 2, e λ = 1, molteplcità algebrica pari ad 1, cioè sp {F } = {0, 0, 1}. Per verificare la ricostruibilità si deve quindi studiare il solo caso Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-267 dell’autovalore non nullo, λ = 1. I test di interesse sono quindi: 0 2 1 0 −1 0 F −I rango = rango 0 −2 −1 = 3, h1 1 0 1 0 2 1 0 −1 0 F −I rango = rango 0 −2 −1 = 2, h2 0 −1 1 (9.76) (9.77) e quindi il sistema è ricostruibile a partire da misure della prima uscita e non lo è a partire da misure della seconda uscita (la matrice di interesse ha infatti una colonna nulla). Un ulteriore test di ricostruibilità può essere condotto studiando la controllabilità del sistema duale. Nel caso in esame, indicato con Σ(F ∗ , G∗ , h∗ ) il sistema duale, le condizioni da verificare sono: Im [(F ∗ )3 ] ⊆ Im [R∗1 ], Im [(F ∗ )3 ] ⊆ Im [R∗2 ], con: 1 (F ∗ )3 = (F 3 )T = 0 0 0 1 0 0 , 0 0 1 1 R∗1 = O1T = 0 0 1 1 da cui si ricavano facilmente le condizioni: rango [R∗1 ] = rango [R∗1 |(F ∗ )3 ], 1 0 , 1 0 0 R∗2 = O2T = −1 −2 1 0 rango [R∗2 ] 6= rango [R∗2 |(F ∗ )3 ], 0 0 , 0 (9.78) e quindi il sistema duale è controllabile tramite il primo ingresso e non lo è tramite il secondo. Ne segue, come già noto, che il sistema di partenza è ricostruibile sulla base della misura delle prima uscita, ma non lo è se si dispone solo della misura della seconda uscita. 2. Uscita in evoluzione libera pari a y(0) = (2 0)T , y(1) = (2 − 2)T , y(2) = (2 0)T . Poiché il sistema non è osservabile da una singola uscita, non è possibile valutare lo stato iniziale a partire dalla misura di una sola uscita. Infatti, cercando di risolvere il sistema: y1 (0) h1 y1 (1) = h1 F x(0) y1 (2) h1 F 2 che corrisponde al caso in cui si possa misurare solo 2 1 2 = 1 2 1 la cui soluzione in x(0) è data da: la prima uscita, si trova: 0 1 α 0 1 β 0 1 γ 2−γ x(0) = β γ che, come previsto, non corrisponde ad un singolo punto. Si ha anzi dipendenza da due parametri, in accordo con il fatto che la corrispondente matrice di osservabilità O1 ha nullità pari a due. Volendo poi valutare la possibilità di ricostruire lo stato ai passi t = 1 e t = 2, si possono calcolare x(1) ed x(2). Si trova: 1 2 1 2−γ 2 + 2β , 0 x(1) = F x(0) = 0 0 0 β = 0 −2 0 γ 2β Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-268 1 2 1 2 + 2β 2 = 0 , 0 x(2) = F x(1) = 0 0 0 0 −2 0 2β 0 da cui si vede che, se sono disponibili le misure della sola prima uscita, lo stato non è ricostruibile al primo passo (t = 1), è invece ricostruibile al passo t = 2 (e successivi!). Per quanto riguarda la possibilità di osservare e ricostruire lo stato sulla base di misure della sola seconda uscita, si deve considerare il sistema: y2 (0) h2 y2 (1) = h2 F x(0). y2 (2) h2 F 2 Si trova: 0 0 −1 1 α −2 = 0 −2 0 β 0 0 0 0 γ cui corrisponde una soluzione in x(0) data da: α x(0) = 1 . 1 Ovviamente, per una opportuna scelta dei parametri liberi, la condizione iniziale trovata in questo caso e quella trovata nel caso di misure della prima uscita coincidono. In particolare, si può scegliere α = 1, β = 1, γ = 1. Volendo poi valutare la possibilità di ricostruire lo stato al passo t = 1 e t = 2, si possono calcolare x(1) ed x(2). Si trova: 1 2 1 α α+3 x(1) = F x(0) = 0 0 0 1 = 0 , 0 −2 0 1 −2 1 2 1 α+3 α+1 x(2) = F x(1) = 0 0 0 0 = 0 . 0 −2 0 −2 0 Calcolando anche lo stato al passo t = 3: 1 x(3) = F x(2) = 0 0 2 1 α+1 α+1 0 0 0 = 0 . −2 0 0 0 Il sistema infatti non è ricostruibile solo sulla base della misura della seconda uscita. Si noti che, per il valore α = 1 per cui le due condizioni iniziali coincidono, anche lo stato al passo t = 2 appena calcolato coincide con quello ricostruito nel caso di misura di y1 (ovviamente). Infine, volendo osservare lo stato iniziale 2 0 2 −2 2 0 a partire da entrambe le uscite, si trova il sistema: 1 0 1 0 −1 1 α 1 0 1 = β . 0 −2 0 γ 1 0 1 0 0 0 (9.79) Un possibile modo per risolvere questo sistema, che ammette sempre almeno una soluzione, e ne ammette solo una se il sistema è osservabile, come in questo caso, è quello di scegliere un insieme di 3 righe indipendenti; ad esempio la prima, la seconda e la quarta, ottenendo: 2 1 0 1 α 0 = 0 −1 1 β . (9.80) −2 0 −2 0 γ Capitolo 9: Esercizi riepilogo [Ed. 2014, V 4.0 - PV - UniPG] - 9-269 La soluzione di tale sistema, e cioeè la condizione iniziale cercata, è: 1 x(0) = 1 . 1 (9.81) Un altro metodo è basato sulla pseudo inversa sinistra: 1 x(0) = (OT O)−1 OT ȳ = 1 . 1 (9.82) Ovviamente, la condizione iniziale appena trovata si ottiene da quelle determinate in precedenza scegliendo opportunamente i parametri liberi. In particolare, nel primo caso β = 1, γ = 1, nel secondo caso α = 1. 3. Esistenza e sintesi dell’osservatore. L’osservatore cercato esiste sicuramente se si dispone della misura di entrambe le uscite, perché in tal caso il sistema è osservabile. L’osservatore con dinamica d’errore convergente in tempo finito esiste anche se si dispone solo della misura della prima uscita, perché in questo caso il sistema è ricostruibile. 4. Esistenza e sintesi di un controllore in reazione statica dallo stato. La matrice di raggiungibilità del sistema è data da: 1 −1 1 R = −1 0 0 0 2 0 (9.83) il cui rango è pari a tre, e quindi il sistema è raggiungibile. È allora possibile calcolare una matrice di retroazione dallo stato che renda il sistema a ciclo chiuso asintoticamente stabile. La procedura di sintesi è “classica”. 5. Esistenza e calcolo di un controllore in reazione dinamica dall’uscita. Per quanto visto in precedenza, un tale regolatore esiste, ed è ottenibile, ad esempio, tramite la legge di controllo: u = K x̂ + v, (9.84) in cui la matrice K è quella progettata al punto 4 e x̂ è la stima dello stato ottenuta tramite l’osservatore asintotico: x̂(k + 1) = F x̂(k) + gu(k) + L(H x̂(k) − y) (9.85) progettato al punto 3. Appendice A Strumenti geometrici per l’analisi di sistemi dinamici lineari A.1 Autovalori ed autovettori Data una matrice A quadrata, ad elementi reali, di dimensione n × n (brevemente, A ∈ Rn×n ), dato uno scalare λ ed un vettore v, si dice che λ è un autovalore di A associato all’autovettore v se vale la condizione: Av = λv ⇔ (A − λI)v = 0. (A.1) Si noti che, pur essendo la matrice A ad elementi reali, i suoi autovalori ed autovettori possono essere complessi coniugati. Data una matrice A, la totalità dei suoi autovalori si determina risolvendo il suo polinomio caratteristico: pA (λ) := det(λI − A), (A.2) le cui radici corrispondono ai valori di λ per i quali il nucleo della matrice (λI − A) è non banale. La molteplicità di uno scalare λ come radice del polinomio caratteristico di una matrice è detta molteplicità algebrica di tale autovalore. Si noti che gli autovettori sono determinati a meno di una costante, e quindi: un autovettore individua sempre un sottospazio vettoriale, i cui elementi sono tutti autovettori associati allo stesso autovalore. Tale sottospazio V, detto anche autospazio, è quindi individuato da: V = Im(v : (A − λI)v = 0), (A.3) V = ker(A − λI). (A.4) o, ancora più propriamente, da: Si ricordi che una matrice quadrata, ad elementi reali, di dimensione n × n è interpretabile come rappresentazione di un operatore lineare, che quindi opera trasformazioni di roto-traslazione su vettori. Allora, un autovettore individua una sorta di “direzione privilegiata” di tale operatore, lungo la quale non vi è rotazione, ma solo variazione della lunghezza, e l’autovalore indica appunto l’entità di tale variazione di lunghezza e/o verso. Infine, si noti che, data una matrice A ed una autovalore λ, a tale autovalore possono essere associati anche più autovettori indipendenti. In tal caso, l’autospazio relativo ha dimensione maggiore di uno, e pari alla dimensione del nucleo della matrice (A − λI). Tale dimensione viene indicata con il termine molteplicità geometrica dell’autovettore λ. Dato un sistema dinamico a tempo continuo o a tempo discreto ∆x = Ax + Bu, (A.5) in cui l’operatore ∆ indica una derivata temporale (∆x(t) = ẋ(t)) nel caso di sistemi a tempo continuo o una traslazione temporale (∆x(k) = x(k + 1)) nel caso di sistemi a tempo discreto, gli autovalori della matrice A sono detti anche autovalori del sistema dinamico. 270 : Appendice: strumenti geometrici ed algebrici [Ed. 2014, V 4.0 - PV - UniPG] - A-271 Il polinomio caratteristico ha la importante proprietà di essere un polinomio annullatore della matrice stessa. In altre parole, se si calcola una combinazione lineare delle potenze di una matrice con i coefficienti del suo polinomio caratteristico, si ottiene una matrice nulla. Tale risultato, di uso molto frequente, va sotto il nome di teorema di Cayley-Hamilton. Le potenze della matrice vanno intese nel senso dell’usuale prodotto righe-colonne. Teorema A.1 (Cayley-Hamilton) Sia data una matrice A quadrata, ad elementi reali, di dimesione n × n, e sia pA (λ) = λn + an−1 λn−1 + · · · + a1 λ + a0 il suo polinomio caratteristico. Allora, il polinomio pA (λ) è annullatore della matrice: pA (A) = An + an−1 An−1 + · · · + a1 A + a0 I = 0, (A.6) e quindi: An = −an−1 An−1 − · · · − a1 A − a0 I. (A.7) Il polinomio caratteristico non è l’unico polinomio annullatore. Data una matrice A quadrata, ad elementi reali, di dimesione n × n, il polinomio di grado minore che annulla tale matrice è detto polinomio minimo della stessa. Si noti che polinomio caratteristico e polinomio minimo hanno le stesse radici, e si differenziano solo per la molteplicità delle stesse. A.2 Trasformazioni di similarità algebrica Nello studio dei sistemi dinamici, ed in generale nello studio di sistemi immersi in spazi vettoriali, è spesso utile, per evidenziare proprietà di interesse o per rendere più agevole il calcolo di funzioni ed opearazioni specifiche, cambiare il sistema di coordinate nelle quali si rappresentano lo spazio di stato e le matrici che descrivono un assegnato sistema. Cambiare coordinate è del tutto equivalente a cambiare base nello spazio di stato sottostante la specifica rappresentazione in uso per il sistema. Tale opearazione, nel contesto dei sistemi dinamici, viene detta trasformazione di similarità od anche trasformazione di equivalenza algebrica, e due diverse rappresentazione dello stesso sistema (o, in generale, due sistemi) legati da tali trasformazioni sono detti sistemi (algebricamente) equivalenti od anche sistemi simili. Si consideri quindi un sistema dinamico a tempo continuo o a tempo discreto, indifferentemente: ∆x = y = Ax + Bu, Cx + Du. (A.8) (A.9) Si consideri un nuovo sistema di coordinate: z = T −1 x. (A.10) −1 dove T indica una matrice quadrata, non singolare, di dimensione n. La relazione (A.10) definisce una trasformazione di coordinate. Il vettore x indica le vecchie coordinate, il vettore z le nuove coordinate, la matrice T −1 indica la trasformazione lineare tra i due sistemi di coordinate. Una trasformazione lineare di coordinate è una buona trasformazione, o più rigorosamente, è una trasformazione ben definita, se e solo se la matrice di trasformazione è non singolare, e quindi invertibile. In tal caso, è immediato tornare alle vecchie coordinate: x = T z. (A.11) La condizione di invertibilità della tasformazione, come è ben intuibile, è sempre richiesta. Si noti che la trasformazione considerata è lineare. Benché il concetto di trasformazione di coordinate possa essere esteso anche al caso dei sistemi nonlineari, in questa sede ci si limita al caso di trasformazioni lineari, dato il contesto. Di norma, nel definire una trasformazione di coordinate si definisce direttamente la matrice T −1 nei casi in cui siano note le nuove coordinate z, mentre si definisce la matrice di trasformazione T nel caso in cui sia noto il nuovo insieme di vettori di base. Più precisamente, per lo spazio vettoriale di interesse, data una nuova base descritta dagli n vettori linearmente indipendenti v1 v2 · · · vn , le matrice di trasformazione T e T −1 sono date da: (A.12) T = v1 v2 · · · vn , T −1 = Inv(T ). Si consideri ora un sistema dinamico, a tempo continuo o a tempo discreto, indifferentemente: ∆x = y = Ax + Bu, Cx + Du (A.13) (A.14) : Appendice: strumenti geometrici ed algebrici [Ed. 2014, V 4.0 - PV - UniPG] - A-272 ed un cambio di coordinate z = T −1 x. Quale è la rappresentazione di tale sistema nelle nuove coordinate? Per determinare tale rappresentazione, si può procedere molto semplicemente applicando la trasformazione ai due lati delle equazioni che definiscono il modello. Poiché la matrice di trasformazione non dipende dal tempo, è ovvio che ∆z = T −1 ∆x, e quindi: ∆z y = = T −1 ∆x = T −1 Ax + T −1 Bu, Cx + Du. (A.15) (A.16) Utilizzando poi il legame inverso x = T z, si trova: ∆z y T −1 AT z + T −1 Bu, CT z + Du. = = (A.17) (A.18) Il sistema descritto dalle (A.17), (A.18) è ancora un sistema lineare, con diverse rappresentazioni delle matrici caratteristiche. In particolare, poste le condizioni: Ā = B̄ = T −1 AT T −1 B (A.19) (A.20) C̄ D̄ CT D (A.21) (A.22) = = (A.23) si ricava: ∆z = Āz + B̄u, (A.24) y = C̄z + D̄u. (A.25) Si sottolinea ancora il fatto che le equazioni (A.17), (A.18) e le equazioni (A.24), (A.25) sono due rappresentazioni simili, o equivalenti, dello stesso sistema dinamico. Sono, con linguaggio informale, “due punti di vista diversi sullo stesso sistema”. Tali rappresentazioni devono quindi avere le stesse proprietà fondamentali. In particolare, dati due sistemi algebricamente equivalenti Σ(A, B, C, D) e Σ(Ā, B̄, C̄, D̄), si hanno le seguenti due proprietà fondamentali: Proprietà A.1 Gli autovalori di un sistema dinamico sono invarianti rispetto a trasformazioni di similarità algebrica, cioè: pA (λ) = pĀ (λ) (A.26) Proprietà A.2 La matrice di trasferimento di un sistema dinamico è invariante rispetto a trasformazioni di similarità algebrica, cioè: W (s) = C(sI − A)−1 B + D = C̄(sI − Ā)−1 B̄ + D̄ = W̄ (s). (A.27) Entrambe le proprietà si dimostrano facilmente. Si ricordi che, date due matrici quadrate M ed N , delle stesse dimensioni, si ha: det(M · N ) = det(M ) · det(N ), ed inoltre det(M −1 ) = 1/det(M ) (assumendo M invertibile!). Ed ancora, dato il prodotto M · N , si ha: (M · N )−1 = N −1 · M −1 . Per la prima proprietà si ottiene quindi: pĀ (λ) = = det(sI − Ā) = det(sT −1 T − T −1 AT ) = det[T −1 (sI − A)T ] det(T −1 ) · det(sI − A) det(T ) = det(sI − A) = pA (λ). (A.28) (A.29) Similmente, per la seconda proprietà si ottiene: W̄ (s) = C̄(sI − Ā)−1 B̄ + D̄ = CT (sT −1 T − T −1 AT )−1 T −1 B + D −1 −1 = CT T −1 (sI − A)T T B+D −1 −1 −1 = CT T (sI − A) T T B + D = C(sI − A)−1 B + D = W (s) (A.30) (A.31) (A.32) (A.33) (A.34) : Appendice: strumenti geometrici ed algebrici A.3 A.3.1 [Ed. 2014, V 4.0 - PV - UniPG] - A-273 Forme canoniche Forma diagonale Si consideri il caso di un sistema descritto da una matrice dinamica A non diagonale, ma diagonalizzabile. Ciò implica l’esistenza di una matrice di trasformazione di coordinate T , non singolare, tale che, nelle nuove coordinate, la matrice A diviene una matrice Λ con struttura diagonale: λ1 0 · · · 0 0 λ2 · · · 0 Λ = T −1 AT, . (A.35) .. .. , .. .. . . . 0 0 ··· λn in cui gli elementi λi , i = 1, 2, . . . , n, sono gli autovalori della matrice A (si ricordi che gli autovalori sono invarianti rispetto a trasformazioni di simularità algebrica). In particolare, una matrice A, di dimensione n× n, è diagonalizzabile se ha n autovettori indipendenti. In tal caso, la matrice di trasformazione T che consente la diagonalizzazione è la matrice costituita dagli n autovettori. La matrice di cambio di coordinate che consente di diagonalizzare la matrice A è costituita dagli n autovettori della matrice stessa (se tali autovettori non sono indipendenti, la matrice non è diagonalizzabile, come noto). Cioè, detti vi , i = 1, 2, · · · , n, gli autovettori associati, rispettivamente, agli autovalori λi , i = 1, 2, · · · , n, la matrice di trasformazione è data da: (A.36) T = v1 v2 · · · vn , come si deduce facilmente anche dalla relazione: AT = T Λ = T A.3.2 λ1 0 .. . 0 λ2 .. . ··· ··· .. . 0 0 .. . 0 0 ··· λn . (A.37) Forma canonica reale La forma diagonale di una matrice con autovalori complessi non è idonea allo studio di sistemi dinamici, perchè nel suo esponenziali compaiono funzioni complesse, che non sono ammissibili per rappresentare il comportamento di sistemi reali. In tal caso si ricorre alla forma canonica reale, che consente di tenere conto in forma strutturale di tale necessità. Data una matrice A di dimensione due, con autovalori complessi coniugati λ = σ + ω e λ∗ = σ − ω, è facile vedere che gli autovettori relativi v = vR + vI e v ∗ = vR − vI sono anch’essi complessi coniugati, ed inoltre il vettore parte reale vR ed il vettore parte immaginaria vI sono linearmente indipendenti. Scelti come nuovi vettori di base vR e vI , la matrice A, nelle nuove coordinate, assume la forma seguente, detta appunto forma canonica reale: −1 σ ω −1 A vR vI = Ā := T AT = vR vI . (A.38) −ω σ Per dimostrare tale affermazione, si riscriva la relazione di similarità algebrica in termini della sola matrice T : vR vI Ā = A vR vI . (A.39) Utilizzando la notazione [M ]i per indicare la colonna i-esima della matrice M , dalla relazione precedente segue: vR vI Ā 1 = AvR (A.40) Per quanto riguarda il lato destro dell’uguaglianza precedente, tenendo conto della definizione di autovalore ed autovettore, cioè Av = (σ + ω)v, si ha: Real(Av) = AvR = Real(λv) = σvR − ωvI (A.41) mentre per il lato sinistro si ha: vR vI Ā 1 = vR vI Ā 1 . (A.42) : Appendice: strumenti geometrici ed algebrici [Ed. 2014, V 4.0 - PV - UniPG] - Dalle due eguaglianze precedenti segue immediatamente: σ . Ā 1 = −ω A-274 (A.43) In modo simile, analizzando la seconda colonna dei lati destro e sinistro si trova, rispettivamente: vR vI Ā 2 = vR vI vR vI Ā 2 = AvI , Ā 2 , (A.44) da cui segue Ā 2 = La forma canonica reale è quindi pari a: Ā = A.3.3 σ −ω ω σ ω σ . (A.45) . (A.46) Forma di Jordan Il calcolo della forma di Jordan di un operatore A che mappa lo spazio vettoriale (Cn , C) in se stesso (si considera il caso in cui di tale operatore sia data una rappresentazione reale, cioè sotto forma di una matrice A quadrata ad elementi reali), è basato sul concetto di autovettore generalizzato. Autovettori generalizzati Nel seguito si elencano alcune definizioni fondamentali e vengono presentati, senza prova, alcuni risultati preliminari alla costruzione della forma di Jordan. Definizione A.1 (Autovettore generalizzato) Un vettore v ∈ Rn è detto autovettore generalizzato di ordine k della matrice A (dell’operatore A) associato all’autovalore λ se e solo se valgono le relazioni: (A − λI)k v = 0, (A − λI)k−1 v 6= 0. (A.47) (A.48) Si noti che, per k = 1, si trova la classica definizione di autovettore. Si noti anche che un autovettore generalizzato di ordine maggiore di uno non è un autovettore. Dato un autovettore generalizzato v di ordine k, è naturale associare ad esso una catena di autovettori generalizzati di lunghezza k , costruita nel modo seguente: v (k) (k−1) v v (k−2) v (1) := := := .. . := v, (A.49a) (k) (A − λI)v , (A − λI)v (k−1) , (A.49b) (A.49c) (A.49d) (A − λI)v (2) . (A.49e) È immediato vedere che il generico vettore v (i) , i = 2, . . . , k − 1, è un autovettore generalizzato di ordine i, ed inoltre che il vettore v (1) è un autovettore. I vettori di una catena di autovettori generalizzati sono tra loro linearmente indipendenti, come meglio precisato nei seguenti risultati, fondamentali per la costruzione della forma di Jordan. Teorema A.2 I vettori v (1) , v (2) , . . ., v (k−1) , v (k) , di una catena di autovettori generalizzati di lunghezza k sono tra loro linearmente indipendenti. (1) (2) (k−1) (k) (1) (2) (ℓ−1) (ℓ) , v2 }, di autovettori , v1 } e {v2 , v2 , . . ., v2 Teorema A.3 Date due catene {v1 , v1 , . . ., v1 generalizzati di lunghezza k ed ℓ, rispettivamente, associate ad uno stesso autovalore, se i due autovettori v1 e v2 sono tra loro linearmente indipendenti, allora ogni vettore delle due catene è linearmente indipendente da tutti gli altri k + ℓ − 1 vettori. : Appendice: strumenti geometrici ed algebrici [Ed. 2014, V 4.0 - PV - UniPG] - A-275 Teorema A.4 Date due catene {v (1) , v (2) , . . ., v (k−1) , v (k) } e {u(1) , u(2) , . . ., u(ℓ−1) , u(ℓ) }, di autovettori generalizzati di lunghezza k ed ℓ, rispettivamente, associate a due distinti autovalori, allora ogni vettore delle due catene è linearmente indipendente da tutti gli altri. I tre teoremi precedenti consentono di utilizzare i vettori di catene di autovettori generalizzati come nuovi vettori di base. Per la costruzione della forma di Jordan, ed anche per la determinazione degli autospazi generalizzati A-invarianti, è utile esprimere gli autovettori generalizzati nella seguente forma, dalla quale segue in modo immediato sia la composizione dei sottospazi A-invarianti sia la forma dell’operatore A (di sue porzioni) utilizzando catene di autovettori come nuova base. Dalle (A.49) si ha: Av (1) Av Av (2) (k) = = .. . = λv (1) , λv (2) λv (k) (A.50) +v (1) +v , (A.51) (k−1) (A.52) (A.53) . Nel calcolo e nello studio della forma di Jordan di un operatore (matrice) sono utili i due sottospazi seguenti, detti, rispettivamente, autospazio associato all’autovalore λ ed autospazio generalizzato associato all’autovalore λ): Uλ := ker(A − λI), Nλ := ker(A − λI)m , (A.54) (A.55) ove m indica il più piccolo intero per cui la seguente successione di sottospazi converge: ker(A − λI) ⊂ ker (A − λI)2 ⊂ · · · ker (A − λI)m−1 ⊂ ker [(A − λI)m ] = ker (A − λI)m+1 . (A.56) Sulla base dei concetti e della notazione introdotta, si può ora dare una procedura per il calcolo della forma di Jordan di un operatore A (ovvero, di una sua rappresentazione come matrice reale A). Calcolo della forma di Jordan Sulla base dei risultati della sezione precedente, si può ora descrivere una procedura per il calcolo della forma di Jordan di una data matrice (od operatore). Procedura A.1 (Calcolo della forma di Jordan.) Passo 1. Calcolo del polinomio caratteristico della matrice A e dei suoi autovalori: p(λ) = det(λI − A), con Pr i=1 p(λ) = r Y i=1 (λ − λi )ni , ni = n. Passo 2. Se gli autovalori sono tutti distinti, allora la matrice è diagonalizzabile e si procede calcolando n autovettori indipendenti v1 , v2 , . . ., vn e costruendo la matrice di trasformazione: T = [ v1 v2 ··· vn ] in cui vi è l’autovettore (destro) di A associato all’autovalore λi . In tale caso, l’operatore, nelle nuove coordinate, è rappresentato dalla matrice: λ1 0 · · · 0 0 λ2 · · · 0 A = T −1 AT, A = . .. . .. .. .. . . . 0 0 · · · λn Passo 3. Se gli autovalori non sono tutti distinti, si deve procedere al calcolo delle catene di autovettori generalizzati. : Appendice: strumenti geometrici ed algebrici [Ed. 2014, V 4.0 - PV - UniPG] - A-276 Passo 3.1. Si consideri il generico autovalore λi . La dipendenza esplicita da λi e dall’indice i verrà spesso omessa, nel seguito del passo 3, per semplicità di notazione. Si determini il più piccolo indice m per il quale la successione di sottospazi seguenti diviene stazionaria (si noti che m, anche se non esplicitamente indicato, dipende da λi ): ker(A − λI) ⊂ ker (A − λi I)2 ⊂ · · · ker (A − λi I)m−1 ⊂ ker [(A − λi I)m ] = ker (A − λi I)m+1 Passo 3.2. Si determini il numero e la lunghezza delle varie catene. Sia dj la dimensione del sottospazio ker (A − λi I)j , j = 1, 2, . . . , mi , e sia δj l’incremento nella dimensioni di tali sottospazi, cioè δ1 = d1 , δj = dj − dj−1 , j = 2, 3, . . . , m. Allora, il numero complessivo di catene è pari a d1 . Inoltre, vi sono δm catene di lunghezza m, δm−1 -δm catene di lunghezza pari ad m − 1, e cosı̀ via fino ad avere δ1 -δ2 catene lunghe esattamente uno. Si noti che, complessivamente, le catene sono: δm + (δm−1 − δm ) + (δm−2 − δm−1 ) + · · · + (δ1 − δ2 ) = δ1 = d1 = dim [ker(A − λi I)]. Le dimensioni dei vari sottospazi e le lunghezze delle catene corrispondenti sono sinteticamente indicate nella seguente tabella A.1 . Autospazio generalizzato ker [(A − λI)m ] ker (A − λI)m−1 Dimensione autospazio dm dm−1 Variazione dimensione δm = dm − dm−1 δm−1 = dm−1 − dm−2 ker (A − λI)m−2 dm−2 δm−2 = dm−2 − dm−3 .. . ker (A − λI)2 .. . d2 .. . δ2 = d2 − d1 ker(A − λI) d1 δ1 = d1 Numero catene δm δm δm−1 − δm δm δm−1 − δm δm−2 − δm−1 .. . δm δm−1 − δm .. . Lunghezza catene m m m−1 m m−1 m−2 .. . m m−1 .. . δ2 − δ3 δm δm−1 − δm .. . 2 m m−1 .. . δ2 − δ3 δ1 − δ2 2 1 Tabella A.1: Autospazi generalizzati e catene di autovettori generalizzati (m) (m) (m) Passo 3.3. Si calcolino δm autovettori generalizzati di ordine m, indicati con {v1 , v2 , . . . , vδm }, cioè δm vettori appartenenti a ker [(A − λI)m ], ed indipendenti da tutti i vettori del sottospazio m−1 ker (A − λI) , già determinato. Tali vettori sono gli elementi di partenza per il calcolo di altrettante catene di lunghezza m. (m−1) Passo 3.4. Si calcolino δm autovettori generalizzati di ordine m − 1, indicati con {v1 (m−1) vδm }, come ulteriori elementi delle δm catene di lunghezza m: (m−1) vj (m) := (A − λi I)vj , (m−1) , v2 , . . ., j = 1, 2, . . . , δm . (m−1) Si calcolino infine altri δm−1 − δm autovettori generalizzati di ordine m − 1, indicati con {vδm +1 , (m−1) (m−1) vδm +2 , . . ., vδm−1 }, che siano indipendenti dai δm autovettori generalizzati di ordine m − 1 già trovati in questo passo. Tali vettori sono gli elementi di partenza per il calcolo di altrettante catene di lunghezza esattamente pari a m − 1. Passo 3.5. In modo analogo a quanto fatto al passo precedente, si prolunghino le catene già iniziate, e si inizino nuove catene, se del caso (cioè, se la differenza tra due valori consecutivi dei parametri δ è non : Appendice: strumenti geometrici ed algebrici [Ed. 2014, V 4.0 - PV - UniPG] - A-277 nulla). Si prosegua fino ad arrivare alla costruzione di tutte le d1 catene di autovettori generalizzati associate all’autovalore λi . Passo 3.6. Si ripetano i passi da 3.1 a 3.5 per tutti gli autovalori della matrice. Passo 3.7. Si raccolgano gli n vettori cosı̀ ottenuti (che risultano essere tutti tra loro linearmente indipendenti) in una matrice T di cambiamento di base, ordinati per catene, ciascuna catena ordinata a partire dall’autovettore corrispondente fino all’autovettore generalizzato di ordine massimo. (k) Nell’equazione seguente, il vettore vλi ,j indica l’autovettore generalizzato di ordine k della j-esima catena associata all’autovalore λi , e l’intero mi indica l’indice per il quale converge la sequenza di autospazi generalizzati associati all’autovalore λi , e quindi anche la dimensione del più grande miniblocco di Jordan associato a tale autovalore, nonché la lunghezza della catena più lunga. Infine, ηi indica la lunghezza della catena più corta associata all’autovalore λi . i h (η1 ) (ηr ) (2) (2) (2) (m1 ) (1) (1) (A.57) T = vλ(1) · · · v · · · v v v v · · · v · · · v · · · v λ1 ,d1 λr ,d1 λ1 ,d1 λr ,d1 λ1 ,1 λ1 ,1 λ1 ,d1 λr ,d1 1 ,1 Passo 3.8 La matrice T cosı̀ determinata costituisce il nuovo insieme di vettori di base, e la corrispondente rappresentazione Ā dell’operatore A è la forma di Jordan cercata. Tale forma si può ottenere per similarità algebrica: Ā = T −1 AT (A.58) oppure la si può costruire direttamente, ricordando che ad una catena di autovettori generalizzati di lunghezza k associata all’autovalore λ corrisponde un minibloccco di Jordan con autovalore λ, e dimensione pari a k. ♦ Il legame tra le catene di autovettori generalizzati e gli autospazi del tipo ker[(A − λI)k ] è illustrato in modo sintetico nella tabella seguente. (1) v1 ker[A − λI] (2) = (A − λI)v1 .. . (1) (2) vδm = (A − λI)vδm (1) ker[(A − λI)2 ] (3) = (A − λI)v1 .. . ··· ← ··· .. . ← (3) ← ··· ← vδm ← (2) v1 ← vδm = (A − λI)vδm (2) (2) (2) (3) vδm +1 = (A − λI)vδm +1 ← vδm +1 = (A − λI)vδm +1 ← · · · .. .. .. . . . (3) (2) (2) (1) vδm−1 = (A − λI)vδm−1 ← vδm−1 = (A − λI)vδm−1 ← · · · .. . (1) ker[(A − λI)m−1 ] (m) = (A − λI)v1 .. . (m−1) v1 (m−1) ← ← (m−1) = (A − λI)vδm (m−1) vδm +1 .. . (m−1) vδm−1 .. . (2) vδ3 +1 = (A − λI)vδ3 +1 .. . (2) (1) vδ2 = (A − λI)vδ2 ← ← (2) vδ3 +1 .. . (2) vδ2 (1) vδ2 +1 .. . (1) vδ1 Tabella A.2: Determinazione delle catene di autovettori generalizzati ker[(A − λI)m ] (m) ← v1 .. . ← (m) vδm : Appendice: strumenti geometrici ed algebrici A.4 A.4.1 [Ed. 2014, V 4.0 - PV - UniPG] - A-278 Esponenziale di matrice Forma canonica reale Il calcolo dell’esponenziale di matrice per la forma canonica reale può essere condotto facilmente per diagonalizzazione. Data una matrice A: σ ω A= , (A.59) −ω σ con autovalori dati dai numeri complessi coniugati σ + ω e σ − ω, è facile vedere che gli autovettori associati v e v ∗ sono pari a: 1 1 v= , v∗ = . (A.60) − Scelti come nuovi vettori di base tali autovettori, utilizzando la trasformazione di equivalenza algebrica : 1 1 T = , (A.61) − si ottiene la attesa forma diagonale: Ā = T −1 AT = σ + ω 0 0 σ − ω cui corrisponde l’esponenziale matriciale: (σ+ω)t σt e 0 e (cos(ωt) + sin(ωt)) e Āt = = 0 0 e (σ−ω)t , 0 e σt (cos(ωt) − sin(ωt)) (A.62) (A.63) L’esponenziale nelle coordinate originali è quindi dato da: e At = = T e Āt T −1 σt −1 1 1 e (cos(ωt) + sin(ωt)) 0 1 1 , − 0 e σt (cos(ωt) − sin(ωt)) − (A.64) (A.65) da cui, con semplice algebra, si trova: e At = e σt A.5 cos(ωt) − sin(ωt) sin(ωt) cos(ωt) . (A.66) Forma di Jordan di sistemi in forma canonica di controllore Nello studio, ed in particolare nel controllo, di sistemi dinamici è molto importante una particolare forma delle matrici che descrivono un sistema dinamico, detta forma canonica di controllore. Per semplicità si considera ora solo il caso di sistemi ad un ingresso, introducendo la forma canonica di controllore ad un ingresso (o forma canonica di controllo ad un ingresso). Un sistema dinamico descritto dalla terna di matrici (Ac , bc , cc ) è detto in forma canonica di controllo ad un ingresso se le sue matrici Ac e bc hanno la forma: 0 1 0 0 ··· 0 0 0 0 0 1 0 ··· 0 0 0 0 0 1 ··· 0 (A.67) Ac = . , bc = 0 , .. .. .. .. .. .. . . . . . .. 0 . 0 0 0 ··· 1 1 −a0 −a1 −a2 −a3 · · · −an−1 in cui gli elementi dell’ultima riga della matrice Ac sono i coefficienti del polinomio caratteristico cambiato di segno. È facile vedere che, se la matrice cc (assumendo un sistema con una sola uscita) ha la forma: (A.68) cc = c0 c1 c2 c3 · · · cn−1 : Appendice: strumenti geometrici ed algebrici [Ed. 2014, V 4.0 - PV - UniPG] - A-279 allora la funzione di trasferimento, nella generica variabile complessa λ, ha (a meno di semplificazioni numeratore/denominatore) la forma: W (λ) = cc (λI − Ac )−1 bc = cn−1 λn−1 + · · · + c3 λ3 + c2 λ2 + c1 λ + c0 , λn + an−1 λn−1 + · · · + a3 λ3 + a2 λ2 + a1 λ + a0 (A.69) e quindi si calcola in modo immediato a partire dalla conoscenza delle matrici Ac ed cc . Dal punto di vista della forma di Jordan, un sistema in forma canonica di controllore ad un ingresso ha la seguente proprietà: Lemma A.1 (Forma di Jordan di una matrice in forma canonica di controllore ad un ingresso) Data una matrice Ac , in forma canonica di controllore ad un ingresso, il polinomio caratteristico ed il polinomio minimo di Ac coincidono, e quindi la sua forma di Jordan ha un solo miniblocco per ogni autovalore di Ac . Prova Il lemma si prova facilmente calcolando la dimensione del nucleo della matrice (Ac − λI), per un generico T , il nucleo di (Ac − λI) è determinabile autovalore di Ac . Dato un generico vettore α = α1 α2 · · · αn a partire dalle soluzioni non banali dell’equazione: −λ 1 0 0 ··· 0 α1 0 α2 −λ 1 0 ··· 0 0 α3 0 −λ 1 ··· 0 (A.70) (Ac − λI)α = . α4 = 0, .. .. .. .. .. .. . . . . . .. 0 . 0 0 0 ··· 1 −a0 −a1 −a2 −a3 ··· −an−1 − λ αn che corrisponde al sistema algebrico: −λα1 + α2 = 0 −λα2 + α3 = 0 −λα3 + α4 = 0 .. . −λαn−1 + αn = 0 −a0 α1 − a1 α2 − · · · − (−an−1 − λ)αn = 0, la cui soluzione è data da: α2 α3 = λα1 = λ2 α1 (A.71a) (A.71b) α4 = λ3 α1 .. . = λn−1 α1 (A.71c) (A.71d) = 0. (A.71e) αn n n−1 −α1 (λ + an−1 λ 2 + · · · + a2 λ + a1 λ + a0 ) L’ultima equazione del sistema (A.71) mostra chiaramente che, se λ è autovalore del sistema, allora il parametro α1 è libero (ricordando il significato dei parametri ai , i = 0, 1, . . . , n − 1), e quindi lo spazio in esame ha dimensione pari ad uno, con autovettore, scegliendo α1 unitario, pari a: 1 λ 2 v= λ (A.72) , .. . λn−1 mentre invece, se λ non è autovalore, deve essere α1 = 0, e quindi l’unica soluzione dell’equazione (A.70) è quella banale. Infine, poiché il sistema ha un solo autovettore, la sua forma di Jordan ha un solo miniblocco, e quindi il suo polinomio caratteristico coincide con il polinomio minimo. ⊓ ⊔ Appendice B Riferimenti B.1 Riferimenti bibliografici [1] A.E. Fitzgerald, C. KingsleyJr, and S.D. Umans. Electric Machinery. Mc Graw-Hill, 1983. [2] P.C. Krause. Analysis of Electric Machinery. Mc Graw-Hill, 1986. [3] W. Leonhard. Control of Electrical Drives. Springer-Verlag, Berlin, 1985. [4] J. Meisel. Principles of Electromechanical-Energy Conversion. Mc Graw-Hill, USA, 1966. [5] L. Sciavicco and B. Siciliano, Robotica Industriale. McGraw-Hill Libri Italia, Milano, 1995. [6] Fortunato Bianconi, Elisa Baldelli, Vienna Ludovini, Lucio Crin, Antonella Flacco, and Paolo Valigi. Computational model of egfr and igf1r pathways in lung cancer: A systems biology approach for translational oncology. Biotechnology Advances, 30(1):142 – 153, 2012. ¡ce:title¿Systems Biology for Biomedical Innovation¡/ce:title¿. [7] Fortunato Bianconi. Dynamic modeling, parameter estimation and experiment design in Systems Biology with applications to Oncology. PhD thesis, PhD Thesis, Perugia, 2010. [8] Fred Brauer and John A Nohel. Proprietà strutturali dei Sistemi Lineari Stazionari. Pitagora Editrice, Bologna, 1978. [9] Fred Brauer and John A Nohel. The qualitative theory of ordinary differential equations: an introduction. Dover Publications, 1989. [10] E. Fornasini and G. Marchesini. Appunti di Teoria dei Sistemi. Edizioni Libreria Progetto, Padova, 1994. [11] A. Isidori. Nonlinear Control Systems. Communications and Control Engineering Series. Springer Verlag, Berlin, terza edizione, 1992. [12] J.I. Neimark and N.A. Fufaev. Dynamics of Nonholonomic Systems. Translations of Mathematical Monographs. American Mathematical Society, Providence, Rhode Island, 1972. [13] H. Goldstein. Classical Mechanics. Addison-Wesley, Reading, MA, 1980. [14] C. Lanczos. The Variational Principles of Mechamics. U. of Toronto Press, Toronto, 1970. [15] B.R. Barmish. New Tools for Robustness of Linear Systems. MacMillan Publishing Company, New York, 1990. [16] S. Gabrieli. Identificazione delle caratteristiche di contrattilit di un ventricolo sinistro finalizzata al controllo di un dispositivo terapeutico di assistenza ventricolare. Tesi di Laurea, Facoltà di Ingegneria, Università di Perugia , a.a. 1998/99. [17] Yih-Choung Yu, J.R. Boston, M.A. Simaan, and J.F. Antaki. Estimation of systemic vascular bed parameters for artificial heart control. IEEE Trans. Automatic Control, AC-43(6):765–778, June 1998. 280 : Appendice: strumenti geometrici ed algebrici [Ed. 2014, V 4.0 - PV - UniPG] - B-281 [18] Antonio Tornambè. Discrete Event System Theory. An Introduction. World Scientific, Singapore, 1995. [19] C.G. Cassandras. Discrete Event Systems: Modeling and Performance Analysis. Irwin & Aksen, Boston, MA, 1993. [20] Donato Carlucci and Giuseppe Menga. Teoria dei Sistemi ad Eventi Discreti. Utet, Torino, 1998. [21] E. Cinlar. Introduction to Stochastic Processes. Englewood Cliffs, NJ: Prentice Hall, 1975. [22] S.M. Ross. Stochastic Processes. Wiley, New York, 1983. [23] M. Zhou and F. DiCesare. Petri Net Synthesis for Discrete Event Control Of Manufacturing Systems. Kluwer Academic Publishers, 1993. [24] J.O. Moody and P.J. Antsaklis. Supervisory Control of Discrete Event Systems Using Petri Nets. Kluwer Academic Publishers, 1998. [25] Shankar Sastry. Nonlinear Systems: analysis, stability and control. Springer-Verlag, 1999. [26] Introduction to distillation. http://lorien.ncl.ac.uk/ming/distil/distil0.htm. [27] Davison, E.J., Edt. Benchmark problems for control system design. Report of the IFAC theory committe. IFAC (International Federation of Automation Control). May 1990. [28] Davison, E.J. Control of a distillation column with pressure variation. Trans. Institute of Chemical Engineers, vol. 45, pp. 229–250, 1967. [29] S. Skogestad and M. Morari, Understanding the dynamic behavior of distillation columns. Ind. Eng. Chem. Res., vol. 27, no. 10, pp. 1848-1862, 1988. [30] S. Skogestad, M. Morari, and J. C. Doyle, Robust control of ill-conditioned plants: High-purity distillation. IEEE Trans. Automat. Contr., vol. 33, pp. 1092-1105, 1988. [31] P. Lundström, and S. Skogestad, Two-Degree-of-Freedom Controller Design for an Ill-Conditioned Distillation Process Using µ-Synthesis. IEEE Trans. Control Systems Technology, vol. 7, no. 1, pp. 12-13, 1999. [32] Morari M. and Zafiriou E. Robust process control. Englewood Cliffs : Prentice Hall, 1989. [33] Osvaldo Maria Grasselli Proprietà strutturali dei Sistemi Lineari Stazionari. Pitagora Editrice, Bologna, 1978. [34] E. Fornasini and G. Marchesini. Appunti di Teoria dei Sistemi. Edizioni Libreria Progetto, 1994. [35] Eduardo D. Sontag. MAthematical Control Theory. Springer, New York, 1998.