Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla...

107
unibo-logo Introduzione alla Robotica Mobile Corso di Robotica Industriale M Riccardo Falconi Claudio Melchiorri [email protected] [email protected] DEIS - LAR, Universit` a di Bologna Via Risorgimento, 2 40136 Bologna Riccardo Falconi (University of Bologna) Introduzione alla Robotica Mobile DEIS - LAR, Universit` a di BolognaVia Risorgimento, 2 / 107

Transcript of Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla...

Page 1: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Introduzione alla Robotica Mobile

Corso di Robotica Industriale M

Riccardo FalconiClaudio Melchiorri

[email protected]@unibo.it

DEIS - LAR, Universita di BolognaVia Risorgimento, 2

40136 Bologna

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 2: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Outline

Dalla robotica fissa alla robotica mobile

Cenni storici

Applicazioni

Sistemi di locomozione

Modellistica di robot mobili

Modellazione dei vincoli

Modello uniciclo

Modello biciclo

Controllo di robot mobili

Problemi elementari

Input-Output state feedback linearization

Navigazione: algoritmi di obstacle avoidance

Odometria

Sistemi Multi-Robot

Cenni

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 3: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Dalla Robotica Fissa alla Robotica Mobile

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 4: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Dalla Robotica Fissa alla Robotica Mobile

A partire dagli anni ’70, compaiono i primi robot industriali

Utilizzati per sostituire l’uomo in compiti pericolosi o semplici e ripetitivi

Si trattava di compiti da svolgere in loco

Gli ambienti di lavoro iniziarono ad essere modellati in base alle esigenze dicontrollo dei robot

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 5: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Dalla Robotica Fissa alla Robotica Mobile

Robotica FissaImita la funzionalita degli arti umanisuperiori

Robotica MobileImita la locomozione degli animali e lerelative problematiche

DefinizioneUn robot mobile e una macchina automatica in grado di muoversi nell’ ambienteche la circonda.

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 6: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Possibili Applicazioni

Applicazioni Indoor

Pulizia di ambienti estesi

Robotica di servizio per musei, negozi, ecc...

Sorveglianza interna di edifici

Stoccaggio merci in magazzini automatizzati

...

Applicazioni Outdoor

Applicazioni militari

Sminamento

Esplorazione spaziale e subacquea

Protezione civile e sorveglianza boschiva

Agricoltura automatizzata

...

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 7: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Cenni Storici

Primi robot mobili a partire dal1940

Razzi V1 - V2 (rozzo autopilotainerziale)

Goliath

Filoguidati

Motori elettrici

Teletank

Carro telecontrollato

500 m di distanzaRiccardo Falconi (University of Bologna) Introduzione alla Robotica Mobile

DEIS - LAR, Universita di BolognaVia Risorgimento, 2/ 107

Page 8: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Esempi

AGV in impianti automatizzati

Automatic Guided Vehicle (AGV)Electric 80

Usato per la gestione di fine linea diproduzione

Porta i pallet di prodotto stoccato dalmagazzino alle baie di carico camion

In un impianto possono circolare piu di30 AGV contemporaneamente

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 9: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Esempi

AGV in impianti automatizzati

(Loading AGV prel pallet.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 10: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Esempi

AGV in impianti automatizzati

(Loading AGV sicurezza.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 11: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Esempi

Uso ospedaliero: Helpmate

Usato negli ospedali per il trasporto dimedicinali e logistica interna

si muove autonomamente

tramite telecamera, usa le lampade alsoffitto come riferimento

Uso domestico: RoombaAspirapolvere per applicazionidomestiche

Grazie ad algoritmi di path planningpulisce la stanza senza bisogno diimpostare mappe

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 12: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Esempi

Robot sottomariniUtilizzati per archeologia sottomarina

Recupero relitti (Titanic)

Ispezione strutture

Monitorizzazione acque

Applicazioni spaziali

Realizzati a partire dal 1965

Altamente autonomi

In grado di lavorare senza supervisione

Dotati di alta ridondanza dei sensori

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 13: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Esempi

Robot agricoli (attesi per il ≈2015)

Robot mobili concepiti per operazioni agricole:

ambienti strutturati (frutteti ad hoc)

vasti territori a cereali

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 14: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Esempi

Robot volanti ad ala fissa

(Loading USAF Special UAV.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 15: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Esempi

Robot volanti ad ala mobile

(Loading UAV fireman.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 16: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Esempi

Robot per ambienti ostiliRobot Pioneer

Sviluppato da Stanford University

Scelto per esplorare il sarcofago diChernobyl

Robot modulare consente di montare:

un braccio roboticoun gripperuna telecamera (stereo)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 17: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Principi di Locomozione

I concetti presenti in natura sono difficili dareplicare ingegneristicamente

Il rotolamento e il principio di funzionamentopiu efficiente, ma non si trova in natura

La maggior parte dei sistemi si muovono suruote o cingoli

La camminata di un bipede si avvicina alrotolamento

Camminata

Strisciamento Corsa Salto

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 18: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Principi di Locomozione

Camminata bipede

Approssima il rotolamento

Rotolamento di un poligono con latopari al passo della persona

Piu il passo e corto, meglio ilrotolamento viene approssimato

I robot che camminano:

si possono adattare meglio a unambiente variabile

sono lenti su superfici piatte

fortememte sovra-attuati

I robot con ruote/cingoli sono:

piu veloci su superfici piatte

sono poco adattabili

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 19: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Principi di Locomozione

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 20: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Principi di Locomozione

(Loading locomotion.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 21: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Principi di Locomozione

(Loading PETMAN Prototype.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 22: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modellistica di Robot Mobili

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 23: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Robot con Ruote (Wheeled Mobile Robots - WMR)

La ruota e la soluzione meccanicamente piu adatta a molte applicazioniTre ruote sono sufficienti a garantire la stabilita del veicoloQuali ruote usare?Quante ruote usare?

Ruota fissa

Ruota castor

Ruota centrata orientabile

Ruota svedese

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 24: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

WMR: Swedish-Wheel

Si basano sull’idea di poter sfruttarel’attrito anche trasversalmente alladirezione di moto della ruota

(omni directional wheels.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 25: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

WMR: Swedish-Wheel

(Loading Airtrax Omni Directional Drive.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 26: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

WMR: Possibili Configurazioni

Due ruote

Tre ruote

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 27: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

WMR: Possibili Configurazioni

Lego inverted pendulum

(Loading Lego Segway.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 28: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

WMR: Possibili Configurazioni

Quattro ruote

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 29: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

WMR: Possibili Configurazioni

Esempi con 6 ruote: Shrimp Rover

(Loading Shrimp rover.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 30: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

WMR: Possibili Configurazioni

Esempi con 6 ruote: NASA ATHLETE Vehicle

(Loading NASA ATHLETE.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 31: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

WMR: Possibili Configurazioni

Esempi con 6 ruote: NASA ATHLETE Vehicle

(Loading NASA ATHLETE 1.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 32: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

WMR: Possibili Configurazioni

Esempi con 6 ruote: NASA ATHLETE Vehicle

(Loading NASA ATHLETE 2.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 33: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Spazio delle Configurazioni

Ha dimensione pari al numero di parametri che servono per localizzare inmodo univoco la configurazione di un robot

Dipende strettamente dalla struttura del robot considerato

Analogo allo spazio di giunto

Esempio: uniciclo

X

Y

xr

yr

θr

q = [xr , yr , θr ]T ∈ R

3

Esempio: biciclo

X

Y

xr

yr

θr

φr

q = [xr , yr , θr , φr ]T ∈ R

4

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 34: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Vincoli

DefinizioneSi dice vincolo una qualunque condizione imposta ad un sistema materiale cheimpedisce di assumere una generica posizione e/o atto di moto

DefinizioneUn sistema materiale si dice soggetto a vincoli olonomi se tra le coordinate delsistema esistono dei legami espressi da relazioni finite (vincoli di posizione) oppurese tra le coordinate del sistema esistono dei legami espressi da relazionidifferenziabili integrabili finite.

DefinizioneUn vincolo si dice anolonomo se la relazione differenziale tra le coordinate nonriducibile a forma finita.

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 35: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Vincoli Anolonomi

Ipotesi semplificativa

Ogni ruota rotola senza strisciamento

Ogni ruota introduce un vincolo anolonomo nel sistema in quanto nonconsente una traslazione normale alla direzione di rotolamento

Le ruote limitano la mobilita istantanea del robot, senza in genere ridurre lospazio delle configurazioni (es: parcheggio parallelo)

vt = ψr

vn

θ

ψ

x

y

Se non ci fosse il vincolo:

x = vt cos θ + vn cos(

θ +π

2

)

y = vt sin θ + vn sin(

θ +π

2

)

Poiche non c’e strisciamento in direzione normale vn = 0{

x = vt cos θy = vt sin θ

⇔ tan ∂θ =∂y

∂x⇔

[

x sin θ − y cos θ = 0Vincolo sulla mobilita

]

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 36: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Vincoli in Forma Pfaffiana

Per ogni ruota il vincolo puo essere scritto in forma vettoriale: a(q)q = 0

Per N ruote i vincoli possono essere espressi in forma matriciale: A(q)q = 0

Un vincolo che possa essere scritto come A(q)q = 0 e detto vincolo Pfaffiano

Vincoli anolonomi

Non e completamente integrabile

Non puo essere scritto nello spaziodelle configurazioni

Non limitano lo spazio delleconfigurazioni ma la mobilitaistantanea del robot.

Velocita ammissibiliPossono essere generate da una matriceG (q) tale che:

Im(G (q)) = Ker(A(q)), ∀q ∈ C

C = RN spazio

config.

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 37: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Cinematico di un WMR

Formulazione generale

q = G (q)v

Rappresenta le direzioni di moto ammissibili nello spazio delle configurazioni

Lega le velocita nello spazio operativo con le velocita nello spazio delleconfigurazioni

Devono essere affrontati i problemi principali della robotica mobile:

Pianificazione di traiettoriaControllo (di alto livello)Localizzazione...

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 38: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Uniciclo

DefinizioneUn uniciclo e un veicolo avente una solo ruota orientabile

La configurazione e descritta da q =

x

y

θ

Vincolo: x sin θ − y cos θ = 0

X

Y

xr

yr

θr

In forma Pfaffiana: A(q)q = 0 con:

{

A(q) = [sin θ,− cos θ, 0]

q = [x , y , θ]T

Ker(A(q)) = span

cos θ

sin θ

0

,

001

= Im(G(q))

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 39: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Uniciclo

Modello cinematico uniciclo

q =

cos θsin θ0

v +

001

ω =

cos θ 0sin θ 00 1

[

v

ω

]

v = ψr

ψω

x

y

v : la velocita lineare del punto di contatto tra la ruota e il suolo ed e pari alprodotto tra velocita di rotazione della ruota attorno al suo asse orizzontale eil raggio della stessa

ω: velocita angolare del robot, pari alla velocita di rotazione della ruotaintorno allasse verticale

Agendo su v e ω si puo variare la configurazione del robot

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 40: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Uniciclo

L’uniciclo propriamente detto ha gravi problemi dibilanciamento in condizioni statiche

Si usano strutture cinematiche equivalenti e stabili

Modello synchronized drive

Ruote orientabili parallele accoppiate

Stessi ingressi [v , ω]T

[x , y , θ]T posizione di qualsiasi puntoe orientamento robot.

x

y

xr

yr

θr

Modello differential drive

Due ruote comandate separatamente

Una ruota da appoggio

[x , y , θ]T posizione di punto medianoasse ruote e orientamento robot.

x

y

xr

yr

θr

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 41: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Uniciclo: Differential Drive

RemarksModello piu diffuso di realizzazione dell’uniciclo(cinematicamente equivalente)

Due ruote coassiali attuate indipendenti

Una o piu ruote castor (o sfere) per stabilita statica

Puo ruotare sul posto ponendo ωR = −ωLx

y

xr

yr

θr

Khepera III

(K-Team, EPFL)Sbot (EPFL) Sentinel (iRobot)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 42: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Uniciclo: Differential Drive

Definite

ωR = velocita ruota DxωL = velocita ruota Sxd = interasser = raggio ruota

Modello con ingressi ωR , ωL[

v

ω

]

=

[

r2

r2

rd

− rd

] [

ωR

ωL

]

x

y

xr

yr

d

ωL

ωR

2r

θr

Nello spazio degli stati

q =

x

y

θ

=

cos θ 0sin θ 00 1

[

r2

r2

rd

− rd

] [

ωR

ωL

]

=

r cos θ2

r cos θ2

r sin θd

r sin θd

rd

− rd

[

ωR

ωL

]

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 43: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Cinematico del Biciclo

DefinizioneUn biciclo e un veicolo avente una ruota orientabile e una ruota fissa disposte conassi di rotazione propria ortogonali al piano e assi di precessione paralleli

La configurazione e descritta da

q =

x

y

θφ

C centro di istantanea rotazione

Si considera il caso con trazioneanteriore

X

YC

L

xr

yr

xf

yf θr

φr

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 44: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Cinematico del Biciclo

Sistema soggetto a due vincoli di rotolamento, uno per ogni ruota.

{

xf sin (θr + φr ) − yf cos (θr + φr ) = 0xr sin (θr ) − yr cos (θr ) = 0

Il punto (xf , yf ) rappresenta laposizione cartesiana del punto dicontatto tra il piano e la ruotaanteriore

Le coppie (xr , yr ), (xf , yf ) non fanno parte entrambe contemporaneamente dellaconfigurazione del robot, poiche sono riconducibili l’una all’altra. Infatti:

xf = xr + L cos θryf = yr + L sin θr

xr = xf − L cos θryr = yf − L sin θr

xf sin (θr + φr ) − yf cos (θr + φr ) = 0⇓

xr sin (θr + φr ) − yr cos (θr + φr ) − θr cosφr = 0

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 45: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Cinematico del Biciclo

I vincoli cinematici del biciclo sono quindi:

{

xr sin (θr + φr ) − yr cos (θr + φr ) − θr cosφr = 0xr sin (θr ) − yr cos (θr ) = 0

in forma Pfaffiana

A(q) =

[

sin θr − cos θr 0 0sin(θr + phir ) − cos(θr + phir ) −L cosφr 0

]

Quindi:

Ker(A(q)) = span

cos θr cosφr

sin θr cosφr

1

Lsinφr

0

,

0001

,

= Im(G (q))

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 46: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Cinematico del Biciclo

v : velocita lineare di trazione

ω: velocita angolare del veicolo

X

YC

L

xr

yr

xf

yf θr

φr

q =

cos θr cosφr

sin θr cosφr

1

Lsinφr

0

v +

0001

ω =

cos θr cosφr 0sin θr cosφr 0

1

Lsinφr 0

0 1

[

v

ω

]

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 47: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Cinematico del Biciclo

Il biciclo propriamente detto ha problemi di stabilita in condizioni statiche

Nella pratica si ricorre a strutture cinematicamente equivalenti ma piu stabili daun punto di vista meccanico. Le piu usate sono

Modello car-like

Modello triciclo

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 48: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Cinematico del Biciclo

TricicloDue ruote fisse sullasse posteriore e una ruotaorientabile in posizione anteriore

Le ruote fisse sono controllate da un unicomotore che determina la trazione. Un altromotore controlla lorientamento della ruotaanteriore che determina lo sterzo.

Car-LikeDue ruote fisse sullasse posteriore e due ruoteorientabili sullasse anteriore.

Il sistema e controllato da due motori. Unodetermina la trazione (anteriore o posteriore) elaltro lo sterzo.

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 49: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Modello Cinematico del Biciclo

Il triciclo e l’automobileTriciclo e automobile hanno lo stesso modello cinematico del biciclo

Il punto (xr , yr ) e il punto medio dell’asse posteriore

θr e l’orientamento del veicolo

φ e l’angolo di sterzo

v , ω sono la velocita di trazione e la velocita di sterzo

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 50: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Uniciclo e Biciclo

La struttura cinematica a uniciclo e a biciclo sono le piu utilizzate e diffusenelle applicazioni (in particolare quelle industriali)

Altre strutture cinematiche sono utilizzate per applicazioni particolari

I modelli cinematici di strutture piu complesse si ottengono tenendo inconsiderazione i vincoli introdotti da ciascuna ruota.

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 51: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Controllo Single Robot

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 52: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Compiti di Moto Elementare

Parcheggio (traferimento point-to-point)

Posizione iniziale

Posizione finale

Inseguimento di Cammini (Trajectory Following)

Posizione iniziale

Posizione finaleParametro s WMR di riferimento

Inseguimento di Traiettorie (Trajectory Tracking)

Posizione iniziale

Posizione finaleParametro t

WMR di riferimento all’istante t

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 53: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Schema di Controllo

+

Task

Pianificazione Controllo Att. Robot

Model

EndEffector

Am

bie

nte

Sensori(Proprio, Estero)

qd u τ

q

Ferr .

Low-Level Control

High-Level Control

Attuatori (motori DC, motor step-by-step, ...)

End-Effector (attrezzo, pinza, mano)

SensoriPropriocettivi (encoder, giroscopi, ...)Esterocettivi (bumbers, rangefinders (infrarossi, ultrasuoni), laser, visione(mono, stereo), ...)

ControlloBasso livelloAlto livello

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 54: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Controllo Basso Livello

ControlloAlto Livello Controllo A

tt. Robot

Modelu τ

Low-Level Control

Concetti fondamentaliControllori PI ad alto guadagno controllano i motori del robot affinche ilrobot si muova secondo il profilo di velocita desiderato

Il controllo a basso livello si occupa solamente di controllare gli attuatori delrobot secondo le istruzioni del controllo ad alto livello

Se i guadagni sono abbastanza alti, il controllo di basso livello rende il robotun sistema puramente cinematico

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 55: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Controllo di Alto Livello vs. Basso Livello

Concetti fondamentaliUtilizzando i dati dei sensori, elabora il segnaleda passare al controllore di basso livello

Da questo punto di vista, il robot si comportacome un sistema puramente cinematico

I segnali di controllo sono in velocita

+

Task

ControlloAlto Livello qd

err .

High-Level Control

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 56: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Controllo di un WMR

Basso livelloControlla i motori per attuarlo

Si riduce a un PI per motore elettrico (sistema lineare)

Non risente dei vincoli introdotti dalle ruote

Problematiche note

Alto livelloDecide il movimento del robot

Deve considerarne il modello cinematico

Soggetto ai vincoli delle ruote

Deve controllare un sistema non lineare (complesso)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 57: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione

PianificazioneProblema di determinare una traiettoria nello spazio delle configurazioni perportare il robot da una certa configurazione iniziale ad una certaconfigurazione finale ammissibili

Le configurazioni di partenza e di arrivo devono essere compatibili con ivincoli cinematici del robot (condizioni al contorno)

Ogni punto della traiettoria deve essere compatibile con i vincoli cinematicidel robot

DefinizioneUna traiettoria per un dato robot si definisce inammissible se richiede al robot dicompiere spostamentei incompatibili con i propri vincoli cinematici

Esempio: uniciclo non puo averetraiettorie di traslazione laterale

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 58: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione

Si desidera pianificare una traiettoria q(t) per t in [ti , tf ] che porti il robot dauna configurazione iniziale q(ti ) = qi a una configurazione finale q(tf ) = qf

Si assume assenza di ostacoli

s(ti ) = si s(tf ) = sf

La traiettoria q(t) si puo decomporre in

un cammino q(s), condq(s)

ds6= 0,∀s

una legge oraria s = s(t), con si ≤ s ≤ sf ,

con

{

s(ti ) = sis(tf ) = sf

s monotono, ossia s(t) ≥ 0

Tipica scelta per s e l’ascissa curvilinea

lungo il cammino, quindi:

{

si =sf = L

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 59: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione

Separazione spazio-temporale della traiettoria q =dq

dt=

dq

dss = q′s

q′ diretto come la tangente al cammino nello spazio delle configurazioni,orientato per s crescenti

s scalare che modula l’intensita

Dalla forma Pfaffiana dei vincoli anolonomi

{

A(q)q = A(q)q′s = 0s > 0, ∀t ∈ [ti , tf ]

Condizione di ammissibilitageometrica del cammino

A(q)q′

Un cammino ammissibile sara dato da q′ = G (q)u

Ingressi geometrici u: determinano la geometria del camminoFissati u ammissibili, si definisce la legge oraria s(t) per definire con chevelotita deve essere percorso il cammino

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 60: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione

ProblemaCome unire la il cammino geometrico di cui sono noti gli ingressi u e la leggeoraria al fine di ottenere gli ingressi di controllo per il robot?

q = G (q)u

u =?

q′ = G (q)u(s)⇓dq

dss = G (q)u(s)s

⇓{

q = G (q)u(s)sq = G (q)u(t)

u(s)s = u(t)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 61: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione

Esempio

Per l’uniciclo, i vincoli anolonomi dati dal rotolamento senza strisciamento delleruote implicano la seguente condizione di ammissibilita per il cammino geometrico:

[sin θ,− cos θ, 0] q′ = x ′ sin θ − y ′ cos θ = 0

La condizione esprime il fatto che la velocita cartesiana deve essere orientatalungo la direzione del moto.

I cammini ammissibili per l’uniciclo sono dati da:

x ′ = v cos θy ′ = v sin θθ′ = ω

Una volta determinati gli ingressi geometrici, gli ingressi cinematici sono datida:

{

v(t) = v s

ω(t) = ωs

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 62: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione Tramite Differential Flatness

DefinizioneUn generico sistema dinamico non lineare

x = f (x) + g(x)u

possiede la proprieta di piattezza differenziale (o differential flatness) se esiste uninsieme di uscite y (dette piatte o flat), tali che lo stato x e l’ingresso u delsistema possono essere espressi algebricamente in funzione di y e di un certonumero di sue derivate

x = x(y , y , y , . . . , y (r))u = u(y , y , y , . . . , y (r))

Una volta determinata una traiettoria y nel tempo, risultano determinateanche la traiettoria dello stato x e dell’ingresso u

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 63: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione Tramite Differential Flatness

Per uniciclo e biciclo, le coordinate cartesiane sono uscite flat

Modello geometrico dell’uniciclo:

x ′ = v cos θy ′ = v sin θθ′ = ω

v

vx

θ vy

xr

yr

L’orientamento dipende dalla derivata prima delle uscite flat:

θ = θ(x ′, y ′) = arctan(y ′/x ′) + kπ, con k = 0, 1

Le due scelte possibili per θ dipendono dal fatto che lo stesso cammino puoessere percorso a marcia avanti (k = 0) o a marcia indietro (k = 1)

Se l’orientamento iniziale del robot e assegnato, allora k = 0 ∨ k = 1

k = 0 k = π

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 64: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione Tramite Differential Flatness

Dal modello cinematico del robot, si ottiene:

v(s) = ±√

x ′(s)2 + y ′(s)2

ω(s) =y ′′(s)x ′(s) − x ′′(s)y ′(s)

x ′(s)2 + y ′(s)2

Una volta definitoil profilo di velocita desiderato, si ottiene:{

v(t) = v(s)s(t)ω(t) = ω(s)s(t)

Dove il segno di s(t) dipende dal senso di marcia scelto

Se un robot mobile ammette uscite piatte y, queste possono essere utilizzateper risolvere i problemi di pianificazione.E possibile usare un qualsiasi schema di interpolazione per pianificare ilcammino di tali uscite in modo da soddisfare le condizioni al contornoL’evoluzione delle altre variabili associate e gli ingressi cinematici si potrannocalcolare algebricamente a partire da y(s)Il cammino nello spazio delle configurazioni generato in tal modo soddisferaautomaticamente i vincoli anolonomi del robot

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 65: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione Tramite Differential Flatness

ProblemaPianificare il cammino per un uniciclo che porti il robot da una configurazioneiniziale qi = [xi , yi , θi ] a una configurazione finale qf = [xf , yf , θf ]

SoluzionePoiche x , y sono uscite flat, le sfrutto per pianificare la traiettoria

Suppongo di parametrizzare la curva con un parametro s = [0, 1]

Uso un polinomio cubico:

x(s) = s3xf − (s − 1)3xi + αx(s − 1) + βxs(s − 1)2

=y(s) = s3yf − (s − 1)3yi + αy (s − 1) + βy s(s − 1)2

che soddisfano automaticamente le condizioni al contorno su x , y

x(0) = xi x(1) = xf

y(0) = yi y(1) = yf

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 66: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione Tramite Differential Flatness

Poiche l’orientamento dipende punto per punto dai valori di x ′, y ′, devono esseresoddisfatte anche le condizioni al contorno su θ:

x ′(0) = ki cos θi x ′(1) = kf cos θfy ′(0) = ki sin θi y ′(1) = kf sin θf

ki > 0 e kf > 0 sono parametri liberi dello stesso segno

Rappresentano le velocita geometriche all’istante iniziale ed a quello finale

Influenzano il tipo di cammino che si ottiene

Consentono di calcolare i valori di αx , αy , βx , βy . Siano ki = kf = k

[

αx

αy

]

=

[

k cos θf − 3xf

k sin θf − 3yf

] [

βx

βy

]

=

[

k cos θi − 3xi

k sin θi − 3yi

]

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 67: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione Tramite Differential Flatness

Parcheggio Parallelo

qi = [0, 0, 0]qf = [0,−5, 0] k = 10, k = 20, k = 30

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 68: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Pianificazione Tramite Differential Flatness

Parcheggio: qi =[

5, 5, π3

]T⇒ qf =

[

0, 1, π2

]T

k = 10

−5 0 5 10 15−10

−5

0

5

10

[m]

[m]

0 2 4 6 8 100

0.5

1

1.5

time

m/sec

0 2 4 6 8 10−5

0

5

10

15

time

rad/sec

k = 50

−5 0 5 10 15−10

−5

0

5

10

[m]

[m]

0 2 4 6 8 100

2

4

6

time

m/sec

0 2 4 6 8 10−6

−4

−2

0

time

rad/sec

k = 100

−5 0 5 10 15−10

−5

0

5

10

[m]

[m]

0 2 4 6 8 100

5

10

15

time

m/sec

0 2 4 6 8 10

−3

−2

−1

0

time

rad/sec

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 69: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Controllo del Moto

Data una traiettoria o una configurazione desiderata, costruire una legge dicontrollo che porti il robot nella configurazione desiderata o a seguire la traiettoria

Il problema del controllo del moto di un robot mobile viene affrontatoutilizzando il modello cinematico

Si suppone che gli ingressi cinematici agiscano direttamente sulle variabili diconfigurazione

Nel caso dell’uniciclo e del biciclo, gli ingressi di controllo sono v e ω

Nella maggior parte dei robot mobili non e possibile imporre direttamente lacoppia motrice sulle ruote a causa di anelli di controllo a basso livellointegrati nell’architettura hardware o software.

Considereremo principalmente il problema del controllo del robot a uniciclo

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 70: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Controllo del Moto

Due problematiche differenti

Regolazione di configurazione

Il robot deve raggiungere una configurazione desiderata qd = [xd , yd , θd ]T

a

partire da una configurazione iniziale q0 = [x0, y0, θ0]T.

Problema piu difficile ma generico

Inseguimento di traiettoria

Il robot deve riprodurre asintoticamente una traiettoria cartesiana desiderata[xd(t), yd (t)]

Ta partire da una configurazione iniziale q0 = [x0, y0, θ0]

Tche puo

essere o meno agganciata alla traiettoria:

Trajectory Following se dipende da un parametro s

Trajectory Tracking se dipende dal tempo t

Problema piu facile ma di maggiore interesse pratico

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 71: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Inseguimento di Traiettorie - I-O SFL

Idea baseDefinisco un punto b fuori dall’assedelle ruote

Controllo il punto b

Il punto b tira il veicolo

{

xb = xr + b cos θryb = yr + b sin θr

, b 6= 0

X

X

Y

xr

yr

xb

yb θr

b

Il punto b non ha vincoli e puospostarsi istantaneamente in ognidirezione

Il punto b puo spostarsilateralmente rispetto alla direzionedi moto

Si possono definire due ingressi percontrollare vx,b e vy ,b{

xb = vx,b

yb = vy ,b

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 72: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Inseguimento di Traiettorie - I-O SFL

xb = xr − b · ω sin θr = v cos θr − b · ω sin θryb = yr + b · ω cos θr = v sin θr + b · ω cos θrθr = ω

, b 6= 0

[

xb

yb

]

=

[

cos θ −b · sin θr

sin θ b · cos θr

] [

v

ω

]

= T (b, θr )

[

v

ω

]

Si dimostra che per b 6= 0, det (T (b, θr )) 6= 0

La matrice T (b, θr ) e sempre invertibile

X

X

Y

xr

yr

xb

yb θr

b

[

v

ω

]

= T (b, θr )−1

[

xb

yb

]

=

[

cos θ sin θr

−1

bsin θ

1

bcos θr

]

[

xb

yb

]

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 73: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Inseguimento di Traiettorie - I-O SFL

Dalle relazioni precedenti si ricava il seguente sistema lineare e disaccoppiato suicanali ingressi-uscite

xb = vx,b

yb = vy ,b

θr =1

b(vy ,b cos θr − vx,b sin θr )

La direzione x e la direzione y del puntoB possono essere controllateindipendentemente l’una dall’altratramite gli ingressi vx,b e vy ,b

Data una traiettoria (xd(·), yd (·)) da inseguire, e possibile costruire/trovare vx,b evy ,b che garantiscono l’inseguimento utilizzando queste semplici leggi lineari:

{

xb = vx,b = xd + K1 (xd − xb)yb = vy ,b = yd + K2 (yd − yb)

Dinamica errore

Definendo

{

ex = xd − xb

ey = yd − yb⇒

{

ex + K1ex = 0ey + K2ey = 0

{

ex → 0ey → 0

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 74: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Inseguimento di Traiettorie - I-O SFL

Una volta trovati gli ingressi richiesti peril punto b, si possono trovare gli ingressida dare all’uniciclo per muove il punto b

come desiderato

[

v

ω

]

=

[

cos θ sin θr

−1

bsin θ

1

bcos θr

]

[

xb

yb

]

Esempio: inseguimento di un quadrato

(Loading square example.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 75: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione

Interazione con l’ambienteSpesso un robot si trova a doversi muovere in un ambiente in cui sono presentiostacoli (fissi o mobili). Il robot, tramite la conoscenza dell’ambiente e/o tramitel’utilizzo dei sensori a bordo deve riconoscere dove sono gli ostacoli ed evitarli alfine di navigare in maniera sicura (cioe senza collisioni) all’interno dello spazio dilavoro.

qstart

qgoal

Problema della navigazione

Data una configurazione di partenza e una di arrivo note, e il problema di trovareuna percorso libero da collisioni che porti il robot dalla configurazione di partenzaa quella di arrivo

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 76: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Algoritmo di Braitenberg

Idea Base

Valentino Braitenberg (Bolzano, 1924). Neuropsichiatra.

Una rete neurale semplice elabora i segnali dei sensori posti sul lato destro esinistro del robot e applica il risultato direttamente ai motori

Braitenberg, V. (1984) I veicoli pensanti. Saggio di psicologia sintetica.Garzanti, Milano

Braitenberg, V. (1984) Vehicles: Experiments in synthetic psychology.Cambridge, MA: MIT Press.

+ +

(Loading braitenberg.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 77: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Bug Algorithm

Gli algoritmi bug si basano sulla possibilita del robot di percepire, tramiteopportuni sensori eterocettivi (bumpers, range finders), la presenza di un ostacoloquando vi sono molto vicini o addirittura quando lo stanno toccando.

Idea baseMuovere il robot in linea retta verso l’obiettivo. Quando si incontra un ostacolo,lo si circumnaviga fino a quando non e possibile muoversi in linea retta versol’obiettivo

Ipotesi semplificative

Robot punto materiale (nessun controllo su orientamento)

Robot dotato di sensore di contatto

Robot ha accesso alla sua posizione e a quella dei punti di partenza e arrivo

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 78: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Bug Algorithm 1

Il robot ha due tipi di comportamento tra i quali commuta

m-line: linea che collega in punto a qgoal

Motion to GoalA partire da un leave point, il robot si muove lungo la m-line che connette il leavepoint al goal finche non raggiunge il goal o incontra un ostacolo. Se il robotincontra un ostacolo, il punto di contatto viene detto hit point e ilcomportamento del robot commuta al boundary following.

Boundary Following

A partire da un hit point, il robot circumnaviga l’ostacolo finche non ritorna all’hitpoint. Poi determina il punto piu vicino al goal lungo il perimetro dell’ostacolo e sisposta lungo il perimetro fino a raggiungere quel punto, detto leave point e ilcomportamento del robot commuta al motion to goal.

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 79: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Bug Algorithm 1

Caso standard

Inizializzazione qL0 = qstart

All’inizio il sistema si trova in un leave

point

qLi = leave point i-esimo

qHi = hit point i-esimo

Caso senza soluzioneSe la linea che collega il leave point i-esimocon il goal intereseca l’ostacolo i-esimo, alloranon esiste nessun percorso che consenta diraggiungere il goal. In tal caso l’algoritmo losegnala

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 80: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Bug Algorithm 1

Input: Un robot con un sensore di contattoOutput: Un percorso fino a qgoal o una conclusione che tale percorso non esiste

0 : i=1; qL0 = qstart ;

1 : while True do

2 : repeat

3 : Da qLi−1, muoviti verso qgoal

4 : until qgoal e raggiunto or si tocca un ostacolo a qHi

5 : if qgoal e raggiunto then

6 : Exit7 : end if

8 : repeat

9 : Segui il bordo dellostacolo.10: until qgoal e raggiunto or ci si ritrova a qH

i

11: Determina il punto qLi

sul perimetro che e alla minima distanza da qgoal .

12: vai a qHi

.

13: if la m-line che passa da qLi

interseca lostacolo su cui si trova qHi

then

14: Concludi che qgoal non e raggiungibile15: Exit16: end if

17: i=i+118: end while

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 81: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Bug Algorithm 2

Come per il Bug1, il robot commuta tra due comportamenti

Motion to GoalBoundary Following

Per il Bug2, la m-line e fissa, generalmente e il segmento che collega qstart aqgoal

Ulteriore modifica e il tangent bug algorithm in:

Kamon I., Rivlin E., Rimon, E., A new range-sensor based globally convergent

navigation algorithm for mobile robots, IEEE International Conference on Roboticsand Automation, 1996

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 82: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Bug Algorithm 2

Caso standard

Inizializzazione qL0 = qstart

L’inizio il sistema si trova in un leave

point

qLi = leave point i-esimo

qHi = hit point i-esimo

Caso senza soluzioneSe durante il boundary following il robotincontra di nuovo il punto da cui e partitosulla m-line allora non esiste nessun percorsoche consenta di raggiungere il goal. In talcaso l’algoritmo lo segnala

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 83: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Bug Algorithm 2

Input: Un robot con un sensore di contattoOutput: Un percorso fino a qgoal o una conclusione che tale percorso non esiste

0 : i=1; qL0 = qstart ;

1 : while True do

2 : repeat

3 : Da qLi−1, muoviti verso qgoal lungo m-line

4 : until qgoal e raggiunto or si tocca un ostacolo a qHi

5 : Gira a Sx o Dx8 : repeat

9 : Segui il bordo dell’ostacolo.10: until qgoal e raggiunto or ci si ritrova a qH

ior

11: la m-line e raggiunta di nuovo in un punto tale che:12: -1- m 6= qH

i% il robot non ha raggiunto hit point

14: -2- d(m, qgoal ) < d(m, qHi

)15: -3- Se il robot si muove verso qgoal non collide con l’ostacolo

16: Si ponga qLi+1 = m 17: i=i+1

18: end while

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 84: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Bug 1 o Bug 2 ?

A prima vista sembra che Bug2 sia meglio di Bug1 (non comporta unacircumnavigazione completa degli ostacoli)

Questo non e sempre vero e dipende dal tipo di ostacoli

Bug2 e meglio di Bug1 Bug1 e meglio di Bug2

Bug 1

Ricerca esaustiva del leave point

Funziona meglio su ostacoli complessi

Bug 2

Ricerca opportunistica del leave point

Funziona meglio su ostacoli semplici

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 85: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Campi Potenziali

Attraverso i Bug algorithm si possono considerare solo robot planari e non l’interospazio delle configurazioni

Attraverso la pianificazione basata su campi potenziali e possibile pianificare il motoanche per sistemi con variabili di configurazione di dimensione elevata

Come gli algoritmi bug, consentono di generare il percorso incrementalmente,cambiandolo man mano che un ostacolo e percepito

Funzione potenziale

U : Rm → R

Gradiente di U

∇U(q) =

[

∂U

∂q1(q) . . .

∂U

∂qn

(q)

]T

q = [q1, q2]

U(q) =1

2qTq

∇U(q) = [q1, q2]

U(q) equivale a una funzione energia sullo spazio delle configurazioni

∇U(·) rappresenta la forza indotta dalla presenza del potenziale

∇U(q) punta verso la direzione in cui U cresce.

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 86: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Campi Potenziali

Discesa del gradiente (gradient descent)

Le funzioni potenziali sono come dei paesaggi in cui il robot e immerso

Si muove spostandosi da un punto in alto a un punto piu in basso.

Segue un percorso in discesa (gradiente negato della funzione potenziale)

q

U(q)

q(t) = −∇U(q)qstart

MinimoLocale

MinimoGlobale

qstart

qgoal

Il robot si muove immerso in un campo dato dalla somma di tutti quelli presentinell’ambiente

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 87: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Campi Potenziali

Come si crea il potenziale per guidare il robot da qstart a qgoal evitando gli

ostacoli?

Potenziale attrattivo

Uatt(q) Ha il minimo in qgoal

Il suo ruolo e di attirare il robot verso l’obiettivo

Potenziale repulsivo

Urep =∑Nobst

i=1 Urepi(q)

Dato dalla somma dei potenziali repulsivi perogni ostacolo

Ha il ruolo di allontanare il robot dagli ostacoli

Legge di controllo

q(t) = −∇U(q), dove: U(q) = Uatt(q) + Urep(q)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 88: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Campi Potenziali

Potenziale attrattivo

Monotonicamente crescente con ∆(q, qgoal)

Robot attirato in ∆(q, qgoal)

qgoal minimo isolato: no punti critici

Possibile scelta

Uatt =1

2Ka∆(q, qgoal) ∇Uatt =

1

2Ka∇∆2(q, qgoal) = Ka(q − qgoal)

Quando il robot e lontano, si avvicina velocemente

Quando il robot e vicino, si avvicina lentamente

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 89: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Campi Potenziali

Potenziale repulsivo

Somma di potenziali repulsivi, ognuno associato ad un ostacolo

La forsa repulsiva deve crescere quando il robot si avvicina

La forza repulsiva deve essere nulla oltre a una certa soglia

Possibile scelta

Urepi(q) =

1

2Kri

(

1

di (q)−

1

q∗

)2

di (q) ≤ q∗

0 di (q) > q∗

∇Urepi(q) =

Kri

(

1

q∗

−1

di (q)

)2

∇di (q) di (q) ≤ q∗

0 di (q) > q∗

Se di (q) = 0, allora ∇Urep(q) → ∞

Minimi locali

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 90: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Navigazione: Campi Potenziali e Minimi Locali

L’algoritmo basato sulla discesa del gradiente puo rimanere bloccato in un minimo

locale, dove potenziale attrattivo e repulsivo si equilibrano

qstart qgoal

Non e un metodo di pianificazionecompleto

Salvo casi particolari i minimi localisono sempre presenti

Generalmente con ostacoli convessisi possono evitare

Possibili soluzioni

Algoritmo best first

Algoritmo best first randomizzato

Funzioni di navigazione

Aggiunta di rumore

Algoritmo escape window

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 91: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Localizzazione Odometrica

DefinizioneL’odometria e la tecnica per stimare la posizione di un veicolo su ruote basandosisu informazioni provenienti da sensori che misurano lo spazio percorso da alcunedelle ruote e l’angolo di sterzo (se presente)

Ogni controllore in retroazione richiede la conoscenza dello stato del robot(posizione assoluta)

Gli encoder incrementali sulle ruote ne misurano la rotazione, ma nonl’assetto del robot in un sistem di riferimento fisso assoluto

Serve una procedura di localizzazione ( stima in tempo reale della posizione)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 92: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Localizzazione Odometrica

Ipotesi

Uniciclo comandato con v e ω

x = v cos θy = v sin θ

θ = ω

Comandi costanti durante ogni intervallo di campionamento (generalmenteverificato se controllo digitale)

All’istante tk sia nota q(tk) = qk

Comandi vk = v(tk), ωk = ω(tk) applicati in t ∈ [ tk , tk+1)

Intervallo si campionamento Ts = tk+1 − tk

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 93: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Localizzazione Odometrica

Metodo di Eulero

xk+1 = xk + vkTs cos θkyk+1 = yk + vkTs sin θkθk+1 = θk + ωkTs

Errore nel calcolo di xk+1, yk+1: si considera θk come se fosse costante int ∈ [ tk , tk+1)

Metodo corretto per tratti rettilinei

L’errore cala al calare di Ts

θk+1 = θk + ωkTs e esatta

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 94: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Localizzazione Odometrica

Metodo di Runge-Kutta del II ordine

xk+1 = xk + vkTs cos

(

θk +ωkTs

2

)

yk+1 = yk + vkTs sin

(

θk +ωkTs

2

)

θk+1 = θk + ωkTs

Errore ridotto: nel calcolo di xk+1, yk+1 si usa il valore medio di θk .

L’errore cala al calare di Ts

θk+1 = θk + ωkTs e esatta

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 95: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Localizzazione Odometrica

Ricostruzione esatta

xk+1 = xk +vk

ωk

(sin θk+1 − sin θk)

yk+1 = yk −vk

ωk

(cos θk+1 − cos θk)

θk+1 = θk + ωkTs

R =vk

ωk

raggio di curvatura istantaneo a t = tk

Soluzione basata su considerazioni geometriche

Per il caso rettilineo ωk = 0 → R = ∞, le equazioni degenerano nelleanaloghe per la’lgotimo di Eulero e quello di Runge-Kutta

implementativamente, il caso ωk = 0 va gestito con condizionale

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 96: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Localizzazione Odometrica

Eulero

qk

qk+1

∆s

∆θ

R

Runge-Kutta

qk

qk+1

∆s

∆θ

R

Metodo esatto

qk

qk+1

∆θ

R

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 97: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Localizzazione Odometrica

Ci si e basati sui valori comandati vk , ωk , che non e detto siano quellirealmente applicati (non idealita sistema di attuazione)

Conviene ricostuire vk , ωk dai valori letti dai sensori propriocettivi

siano ∆φr , ∆φl le rotazioni misurate dagli endocer incrementali in Ts

Siano ∆s, ∆θ la lunghezza del tratto elementare di percorso e la variazionetotale di orientamento lungo tale tratto

∆s =r

2(∆φr + ∆φl)

∆θ =r

d(∆φr − ∆φl)

Dal fatto che vkTs = ∆s e ωkTs = ∆θ, e possibile ricostuire i valori dicomando effettivamente

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 98: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Localizzazione Odometrica

Problemi connessi con l’odometriaBasata esclusivamente su sensori propriocettivi

Stima poco attendibile su lunghe distanze

Errore che si accumula (deriva) indipendentemente dal metodo diintegrazione scelto

Sorgente di errore:

slittamento ruotepessima calibrazione parametri cinematici (es: d e r)errore numerico del metodo sceltorealizzazione cinematica del robot (trazione differenziale e meglio di quellasincronizzata)

SoluzioneAffiancare alla odometria piu metodi per la localizzazione attiva:

sensori esterocettivi di prossimita (laser) e mappa

implementazione SLAM

...

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 99: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Sistemi Multi Robot

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 100: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Sistemi Multi Robot

Sistemi Bio-inspired

DefinizioneSwarm: termine per indicare il comportamento di uninsieme di agenti (animali)

stessa taglia

perseguire il medesimo obiettivo

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 101: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Sistemi Multi Robot: Classificazione

Basata sulla tipologia degli agenti

Sciame Eterogeneo Sciame Omogeneo

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 102: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Sistemi Multi Robot: Classificazione

Basata sull’architettura di controlloCentralizzata

Decentralizzata

Gerarchica

Ibrida

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 103: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Sistemi Multi Robot: Reynold’s Boids

Esempio di algoritmo decentralizzato per comportamenti complessi con semplici regole

Alignment Cohesion Separation

Simulazione preda-predatore

(Loading schools of fish 2x.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 104: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Sistemi Multi Robot

(Loading Swarmbots cooperative transport 2x.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 105: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Sistemi Multi Robot

(Loading Swarmbots finding path 2x.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 106: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Sistemi Multi Robot

Paradigmi di coordinazione

Potential social field

Behavioral control

CooperativeCompetitiveNull-Space Based

Graph-Theory e Consensus

Ant-Colony

PSO

...

ProblemiEsplorazione

Connettivita

Manipolazione multirobot

...

(Loading e-puck.avi)

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107

Page 107: Introduzione alla Robotica Mobile - LAR-DEIS Home … mobile... · unibo-logo Outline Dalla robotica fissa alla robotica mobile Cenni storici Applicazioni Sistemi di locomozione

unibo-logo

Bibliografia

Sciavicco, Siciliano, Villani, Oriolo, Robotica, McGraw Hill, 2009

J.C. Latombe, Robot Motion Planning. Kluwer Academic Publishers, Boston,MA, 1991.

Roland Siegwart, Introduction to Autonomous Mobile Robots, The Mit Press,2004

Siciliano, Khatib, Oussama, Handbook of Robotics, Springer, 2008

Riccardo Falconi (University of Bologna) Introduzione alla Robotica MobileDEIS - LAR, Universita di BolognaVia Risorgimento, 2

/ 107