2. Sommario
23/05/15Officine Robotiche 2015 - SLAM
2
WalterLucetti–myzhar@robot-home.it
Evoluzione dello SLAM:
dal 2D al 3D
Conclusioni
Introduzione
Cosa serve per lo SLAM?
Robot
Sensore
L'algoritmo
Aggiornamento della mappa
Stima del movimento
Localizzazione
Iterative Closest Point
SLAM & ROS
SLAM & Officine Robotiche
4. Introduzione
4
? Dove sono ?
Per rispondere a questa domanda sono necessarie
due cose:
Una mappa da aggiornare (Mapping)
Una mappa da leggere (Localization)
Lo SLAM è l'algoritmo che richiede la soluzione
contemporanea di entrambi i problemi:
Simultaneous Localization And Mapping
WalterLucetti–myzhar@robot-home.it
23/05/15Officine Robotiche 2015 - SLAM
8. Il robot
8
WalterLucetti–myzhar@robot-home.it
●
Autonomo, ma non necessariamente
●
In grado di misurare i suoi movimenti
●
“Piccolo” errore su misura movimenti
●
Max 2 cm ogni metro di avanzamento
●
Max 2° ogni 45° di rotazione sul posto
●
Potenza di calcolo ENORME (on board o
remota)
23/05/15Officine Robotiche 2015 - SLAM
10. Il sensore di misura [1/2]
10
WalterLucetti–myzhar@robot-home.it
●
Preciso
●
Veloce
●
Multi-misura
●
2D o 3D
Da evitare:
●
Sonar: lenti, imprecisi, troppe misure
errate
●
Sensori IR: lenti, imprecisi
23/05/15Officine Robotiche 2015 - SLAM
11. Il sensore di misura [2/2]
11
WalterLucetti–myzhar@robot-home.it
I primi tentativi di SLAM usavano i sonar e i
risultati erano scadenti.
Chi poteva permetterselo è passato ai
Laser 2D (LRF), ottenendo ottimi risultati
Oggi grazie alla tecnonogia RGB-D di
Primesense (RIP ) “tutti” possono avere
una scansione 3D in indoor e fare SLAM 3D
ad un costo “limitato”
23/05/15Officine Robotiche 2015 - SLAM
17. Iterative Closest Point
17
ICP: algoritmo chiave dello SLAM basato su scansione laser
(1) Considero 2 scansioni prese in due posizioni diverse
(2) Associo ad ogni punto della prima scansione il più vicino
della seconda
(3) Scarto i punti con errori di associazione alti (Outliers)
(4) Ruoto e traslo una scansione fino a minimizzare l'errore di
associazione tra i punti più vicini
(5) Ripeto da (1) fino a che l'errore non si stabilizza sotto una
soglia prestabilita
WalterLucetti–myzhar@robot-home.it
23/05/15Officine Robotiche 2015 - SLAM
20. SLAM e ROS
20
WalterLucetti–myzhar@robot-home.it
ROS è un framework per
applicazioni robotiche
Nato per accelerare lo sviluppo di
nuovi robot e nuove applicazioni
Condivisione di software “stabile”
sotto la filosofia Open Source
Usando ROS ci si può concentrare
sul software che guida il robot,
tralasciando il software di
infrastruttura
23/05/15Officine Robotiche 2015 - SLAM
21. SLAM e ROS
21
WalterLucetti–myzhar@robot-home.it
ROS mette a disposizione
molti “nodi”, cioè applicazioni
che messe insieme
permettono di implementare
“facilmente” lo SLAM su un
robot che soddisfa le
caratteristiche hardware
elencate
Package:
gmapping
localization
navigation
slam_gmapping
robot_pose_ekf
robot_localization
Bayesan Filtering Library
E molti altri
23/05/15Officine Robotiche 2015 - SLAM
23. SLAM by Officine Robotiche
23
Officine Robotiche ha un robot in grado di eseguire
correttamente gli algoritmi di Navigazione, Localizzazione e
Mappatura di un ambiente sconosciuto, risolvendo il problema
dello SLAM
4UDE di Raffaello Bonghi
WalterLucetti–myzhar@robot-home.it
23/05/15Officine Robotiche 2015 - SLAM
25. Dal 2D al 3D [1/2]
25
WalterLucetti–myzhar@robot-home.it
Utilizzando un sensore 3D combinato con una telecamera lo SLAM
diventa un mezzo per creare mappe 3D da usare per visitare
virtualmente un ambiente remoto
23/05/15Officine Robotiche 2015 - SLAM
26. Dal 2D al 3D [2/2]
26
WalterLucetti–myzhar@robot-home.it
Le cose però si complicano: molti più punti da elaborare e
memorizzare, informazioni di colore da gestire.
Serve molta potenza di calcolo in più!
23/05/15Officine Robotiche 2015 - SLAM
28. Conclusioni
28
WalterLucetti–myzhar@robot-home.it
●
Lo SLAM richiede robot avanzati e molto
potenti
●
Lo SLAM richiede precisione nelle misure
●
Lo SLAM richiede precisione nei
movimenti
●
Lo SLAM si può fare!
Vi ho nascosto tante cose complicate........
23/05/15Officine Robotiche 2015 - SLAM
29. The End!
OR
THANK YOU FOR YOUR
ATTENTION!
Walter Lucetti
http://myzharbot.robot-home.it
GitHub
@myzhar
Youtube
Myzhar
Twitter
@myzhar
Facebook
robothome
29
23/05/15Officine Robotiche 2015 - SLAM