Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
1° VINCOLO NON OLONOMO PER LA RUOTA ANTERIORE:
̇ sin( + ) − ̇ cos( + ) = 0
2° VINCOLO NON OLONOMO PER LA RUOTA POSTERIORE:
̇ − ̇ = 0
Poiché: = + cos
= + sin
Il 1° vincolo diventa:
̇ ̇
(̇ − sin ) sin( + ) − (̇ + cos ) cos( + ) =
̇
= ̇ ( + ) − ̇ ( + ) − cos = 0 11
La matrice dei vincoli diventa: sin ( + ) −cos ( + ) −ϕ 0
()
= [ ]
− 0 0
Il rango della matrice è costante per qualsiasi valore di e e vale 2. Ciò implica che lo
spazio delle soluzioni del sistema costituito dai due vincoli, cioè dalle velocità generalizzate
ammissibili, ha dimensione 2: possiamo controllare il sistema con 2 gradi di libertà sulle
velocità.
Per ricavare un modello facciamo riferimento ai metodi cinematici della meccanica.
Si consideri la rotazione del veicolo attorno al proprio centro di istantanea rotazione (ICR).
Detto P il vettore posizione della ruota anteriore rispetto al sistema di riferimento fisso, R
a ca
e R rispettivamente il raggio di curvatura in corrispondenza del punto di riferimento P e
cv a
dal punto di riferimento P , si ha:
v
̇ ̇
= =
̇ ̇
= =
Le grandezze sopra ricavate esprimono rispettivamente la velocità delle ruota anteriore e
del punto di riferimento e i loro segni dipendono dalle convenzioni stabilite per i segni di θ
e di b.
Dalla prima equazione si ottiene:
̇ = 12
Dalla seconda equazione risulta anche l’espressione della curvatura κ:
1 tan
̇ = = ⇒ =
̇ ̇
Quindi volendo esprimere la velocità e in funzione della velocità del punto di
riferimento, dell’assetto e dell’angolo di sterzo, si ottiene:
̇
̇ = = =
̇
̇ = = =
Quindi il modello cinematico del sistema è il seguente:
̇ 0
̇ 0
= + [ ]
1 2
̇ 0
̇] 1
[ [ ]
0
Dove i controlli scelti in questo caso sono la velocità di trazione della ruota anteriore (u =v)
1
e la velocità di sterzata (u =ω).
2 13
CAPITOLO 2
2.1 Pianificazione
Lo spazio delle configurazioni di un robot mobile è definito dal minimo numero di
parametri che permettono di localizzare l’intero sistema nel suo ambiente, ad esempio il
[, , , ]
vettore nel caso del modello trattato.
Per i robot mobili si definisce traiettoria una data funzione vettoriale continua nel dominio
del tempo costituita da funzioni scalari, tante quanti sono i controlli del sistema, ad
esempio velocità di trazione e angolo di sterzata.
Una traiettoria è ammissibile se e solo se, date le condizioni iniziali e finali della
configurazioni, è una soluzione del sistema di equazioni differenziali che costituiscono il
modello cinematico del robot.
Un percorso è ciò che nello spazio delle configurazioni corrisponde a una data traiettoria. In
altri termini, se si applica una data traiettoria al robot, ciò che ne risulta nello spazio
cartesiano è un percorso. Un percorso ammissibile corrisponde ad una traiettoria
ammissibile.
Le relazioni matematiche che intercorrono tra percorso e traiettoria non sono banali per un
sistema non olonomo proprio a causa della non integrabilità del sistema di equazioni
differenziali del modello cinematico. [, , , ]
Per il modello automobile in cui il vettore delle variabili di configurazioni è ed è
costituito dalle coordinate cartesiane (x, y) del punto medio dell’asse posteriore dell’assetto
θ e della curvatura κ, si ha:
()
̇ = () cos ()
()
̇ = () sin ()
̇() = () ()
()
{ ̇ = () 14
()
̇ () 0
()
̇ 0
sinθ()
=[ ] () + [ ] ()
̇() 0
() 1
()]
[ 0
̇
I controlli sono la velocità dell’asse posteriore, v, e la variazione di curvatura rispetto al
tempo, u.
Queste equazioni, pur essendo integrabili, non sono una soluzione del sistema di equazioni
differenziali in quanto l’assetto, che è una delle variabili di stato del sistema, compare
all’interno degli integrali, in poche parole per ottenere la soluzione si dovrebbe integrare
una delle incognite.
Durante la pianificazione si cerca una traiettoria ammissibile q(t) per t in [t , t ] che porti il
i f
robot da una configurazione iniziale q(t )=q a una configurazione finale q(t )=q .
i i f f
Figura 4: traiettoria generica
2.2 Inseguimento di traccia
In questo modello, per il controllo di traiettoria, analizzeremo l’approccio
dell’inseguimento di traiettoria (Trajectory Tracking). Si assume l’assenza di ostacoli.
Per effettuare l’inseguimento di traccia si assume che al controllore sia fornita una
descrizione di un luogo geometrico sul quale il veicolo si deve portare e rimanere.
Inoltre, poiché il moto del veicolo lungo la traccia assegnata è di interesse secondario, si
supporrà che il luogo possa venire percorso con velocità qualsiasi, purché non nulla. 15
Considereremo quindi il problema di controllare lungo una traccia assegnata il modello di
()
un biciclo, dove la velocità si considererà assegnata (o controllata indipendentemente)
̅ () ≠ 0.
e pari a
L’obiettivo primario è quello di progettare una legge di retroazione per la velocità di
(, , ) (, , , ̅ ()))
rotazione dello sterzo (o più generalmente in grado di rendere
asintoticamente nulla la distanza tra il veicolo e la traiettoria.
Considereremo una traccia rettilinea che, senza perdere di generalità, può essere pensata
giacere sull’asse orizzontale y= 0. ̅ (),
Fissata una velocità di avanzamento il modello cinematico del biciclo, a trazione
anteriore con riferimento al posteriore, diventa:
()
̇ = ̅ cos cos
()
̇ = ̅ sin cos
̅ ()
̇ = sin
̇
{ =
Consideriamo quindi una traiettoria rettilinea giacente sull’asse orizzontale y=0. Per
̅ ()
qualsiasi velocità di avanzamento assegnata, il moto desiderato del modello
̅() ̅
̅() ≡ ≡ ≡ 0.
cinematico del veicolo è descritto da ,
Scopo del controllore è quindi regolare a zero le tre variabili ϕ e θ. In generale non vi
̅ (), ̅ ().
sono specifiche sulla traiettoria che dipenderà dalla velocità assegnata 16
2.3 Approssimazione linearizzata
Si consideri il modello linearizzato del sistema biciclo attorno alla traiettoria di riferimento
̅ ().
y=0 con velocità
[̃ ]
̃ = , ̃
, ̃ , ̃ = [ − ̅ , , ] ̃ = − ̅ () ̃ = ,
Detto con e e supponendo
1 2 3 4 , 1 2
di poter misurare la distanza dalla traccia si ha:
̇
̃ = ̃ + ̃
= ̃ + ̃
Con: 0 0 0 0 1 0
0 0 ̅ () ̅ () 0 0 [0 0] [0 0]
= , = [ ] , = , =
1 0
0 0 0 0 0 1
̅()
0 0 0 0 0
[ ]
Le matrici di raggiungibilità associate ai due ingressi sono:
0 0 0 0
1 0 0 0 2
̅()
0 0
0 0 0 0
=[ ] =
,
̃1 ̃2
0 0 0 0 1 0 0 0
̅()
0 0 0 0 1 0 0]
[
Ciascun ingresso preso singolarmente non rende il sistema completamente raggiungibile,
mentre l’uso combinato di entrambi lo rende completamente raggiungibile e quindi
stabilizzabile.
L’analisi dell’osservabilità porta invece alla seguente matrice:
0 1 0 0
0 0 ̅ () ̅ ()
= 2
̅()
0 0 0
[ ]
0 0 0 0 17
() = ([1 0 0 0]).
Da cui Il sistema non è quindi completamente osservabile, ma è
comunque possibile utilizzare l’uscita per stimare gli angoli θ e ϕ.
Le matrici del sottosistema osservabile sono:
0 ̅ () ̅ () 0
0 0 0 [1 0]
= [ ] = [ ] = = 0
, , ,
1 0
̅()
0 0 0
̅ ().
Il sistema risulta tempo variante per la presenza della velocità
()
̅ = ̅ = .
Nel caso particolare in cui , il sistema diventa tempo invariante e la
stabilizzazione nell’origine può essere ottenuta semplicemente con una retroazione statica
, ,
degli errori in ponendo: ̅
2
̅
−[ ]
= [ ]
3
2 3 4 ̅
4
, ,
Dove la scelta di >0 alloca gli autovalori nel semipiano sinistro.
2 3 4
La stabilizzazione nell’origine può essere ottenuta semplicemente mediante le tecniche di
regolazione per sistemi LTI. 18
CAPITOLO 3
3.1 Controllo
Il controllo del sistema linearizzato è stato effettuato tramite un controllore PID
(Proporzionale-Integrativo-Derivativo), è un sistema in retroazione negativa ampiamente
impiegato nei sistemi di controllo.
Figura 5: schema a blocchi di un controllore PID
Quindi un controllore PID è della forma:
+ +
Dove:
è parametro proporzionale all’errore,
è il parametro proporzionale alla derivata dell’errore,
è il parametro proporzionale all’integrale dell’errore.
I tre parametri sopra definiti realizzano diverse azioni, il cui