Robotica Mobile
Locomozione
Materiale
l tratto tratto da:
d Introduction
d
to Mobile
b l Robotics,
b
Univ. off Freiburg
b
(
(Prof.
f Dr. Wolfram
lf
Burgard,
d Dr.
Cyrill Stachniss, Dr. Giorgio Grisetti, Dr. Maren Bennewitz) e Mobile Robotics, Univ. of Oxford (Prof. Paul
Newman)
Robotica Mobile
• Robot capaci di muoversi/spostarsi in un ambiente:
• Superficie (terra);
• Fluidostatico (acqua);
• Fluidodinamico (aria);
• Fluttuazione (spazio)
• Altro
Alt …
• Funzionalità basilare di un robot mobile:
• Capacità di Locomozione:
• Navigazione;
• Mapping;
M
i
• Localizzazione;
p
• Esplorazione
• …
Robotica Mobile: Tassonomia
Luogo di funzionamento:
Indoor, Outdoor, Altro
Tipo di tterreno:
Ti
Civile piano, Civile multipiano, Sconnesso, Aperto
Tipo di ambiente:
Sgombro, Ingombro, Dinamico, Statico
Tipo di operazioni:
Movimento, Trasporto, Interazione ambiente, Interazione uomo
M
Mezzo
di spostamento:
t
t
Ruote, Cingoli, Zampe, Altro
Numero di punti di appoggio:
Tre, Quattro, Sei, Altro
Robot Mobili Terrestri
-Consideriamo Robot per
mobilità di superficie
superficie;;
- Tre gradi di libertà:
- x, y, Θ (azimuth)
Robot Mobili Terrestri
z
z
z
Consideriamo Robot per mobilità di superficie
superficie;;
Sistemi di Locomozione
Locomozione::
z
Wheeled (ruote
(ruote):
): 2,
2 3
3, 4 etc.
etc
z
Legged (gambe): 2, 3, 4, etc.
R t M
Ruote
Motrici
t i i
z
z
Ruote Folli
z
z
Asse con angolo costante con l’asse del veicolo
Ruote Sterzanti
z
z
Ruotano per il movimento sul terreno
Ruote Fisse
z
z
Dotate di motore
Motore modifica posizione dell’asse rispetto all’asse del robot
Ruote Pivottanti
z
Asse ruota con il movimento sul terreno
Robot Mobili
z
z
Robot anolonomo
z
Può raggiungere qualunque posizione del suo spazio di lavoro,
ma non in qualunque modo (automobile)
Robot olonomo
z
Può
ò raggiungere qualunque posizione (X, Y, θ) seguendo
qualunque percorso (sul suo spazio di lavoro) (treno su rotaie)
Locomozione su Ruote
z
z
z
z
Guida Differenziale (AmigoBot,
Pioneer 2-DX):
z
2 ruote motrici
indipendenti e una
pivotante;
Guida Macchina (Ackerman
steering):
z
4 ruote con sterzo
Sincrono:
z
3 ruote motrici collegate e
strezanti;
Ruote omniridrezionali
(mecanum):
z
3 Ruote fisse
roll
x
y
y
z motion
Locomozione su ruote
Centro Istantaneo di Curvatura
Ogni ruota ha il suo asse.
Gli assi devono convergere su un centro
istantaneo di curvatura (ICC).
ICC
Drive Differenziale
y
ω
ICC = [ x − R sin θ , y + R cos θ ]
ω ( R + l / 2 ) = vr
ω ( R − l / 2 ) = vl
l ( vl + vr )
R=
2 ( vr − v l )
vr − vl
ω=
l
ICC
vl
R
(x,y)
θ
x
vr
l/2
Drive Differenziale
Cinematica diretta:
⎡ x'⎤ ⎡cos(ωδt ) − sin(ωδt ) 0⎤ ⎡ x − ICCx ⎤ ⎡ICCx ⎤
⎢ y '⎥ = ⎢ sin(ωδt ) cos(ωδt ) 0⎥ ⎢ y − ICCy ⎥ + ⎢ICCy ⎥
⎢ ⎥ ⎢
⎥⎢
⎥ ⎢
⎥
⎢⎣θ '⎦⎥ ⎣⎢ 0
⎥⎦ ⎢⎣ ωδt ⎥⎦
0
1⎥⎦ ⎢⎣ θ
t
x (t ) =
∫ v (t ' )
ICC
R
P(t+δt)
cos[[ θ ( t ' )] dt '
0
t
y (t ) =
∫ v (t ' )
sin[ θ ( t ' )] dt '
0
t
θ ( t ) = ∫ ω ( t ' ) dt '
0
t
1
x(t ) = ∫ [vr (t ' ) + vl (t ' )] cos[[θ (t ' )]dt '
20
t
1
y (t ) = ∫ [vr (t ' ) + vl (t ' )] sin[θ (t ' )]dt '
20
t
1
θ (t ) = ∫ [vr (t ' ) − vl (t ' )] dt '
l0
P(t)
Drive Ackermann
ICC,, w. R
y
ω
ICC = [ x − R sin θ , y + R cos θ ]
d
R=
tan ϕ
ω ( R + l / 2 ) = vr
ω ( R − l / 2 ) = vl
l ( vl + vr )
R=
2 ( vr − vl )
vr − vl
ω=
l
ICC ϕ
vl
R
ϕ
(x,y)
θ
d
x
vr
l/2
Drive Sincrono
Posa dipendente
p
dalla velocità
y
t
x(t ) = ∫ v(t ' ) cos[θ (t ' )]dt '
0
θ
t
y (t ) = ∫ v(t ' ) sin[θ (t ' )]dt '
0
t
θ (t ) = ∫ ω (t ' ) dt '
0
ω(t( )
v(t)
()
x
Drive XR4000
Posa dipendente dalla velocità
y
t
x(t ) = ∫ v(t ' ) cos[θ (t ' )]dt '
0
t
y (t ) = ∫ v(t ' ) sin[[θ (t ' )]dt '
0
t
θ (t ) = ∫ ω (t ' ) dt
d'
0
vi((t)) θ
ωi(t)
x
ICC
Ruote Mecanum
v y = ( v 0 + v1 + v 2 + v3 ) / 4
v x = ( v 0 − v1 + v 2 − v3 ) / 4
v θ = ( v 0 + v1 − v 2 − v3 ) / 4
v error = ( v 0 − v1 − v 2 + v3 ) / 4
Vincoli non-olonomici
Vincoli Non-olonomici limitano i movimenti incrementali nello spazio delle
configurazioni del robot
Robot con drive differenziale o sincrono si muovono su traiettorie cricolari
ma non lateralmente
XR-4000 o le ruote Mecanum possono muoversi lateralmente.
Vincoli non-olonomici
Vincoli non-olonomici riducono lo spazio di controllo rispetto alla
configurazione attuale (es., il movimento laterale non è possibile).
Vincoli olonomici riducono lo spazio delle configurazioni.
Problematiche Locomozione
Come si fa a sapere dove si deve andare?
C
Come
sii ffa a sapere d
dove sii è?
Problemi della localizzazione e dell’autolocalizzazione
Scarica

lucidi robotica mobile