slam

29
SLAM SLAM Simultaneous Localization and Mapping S Walter Lucetti [email protected]

Upload: roberto-damico

Post on 15-Aug-2015

94 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: SLAM

SLAMSLAMSimultaneous Localization and MappingSWalter Lucetti

[email protected]

Page 2: SLAM

Sommario

23/05/15Officine Robotiche 2015 - SLAM

2

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.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

Page 3: SLAM

Introduzione3

Page 4: SLAM

Introduzione4

? 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

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

23/05/15Officine Robotiche 2015 - SLAM

Page 5: SLAM

SLAM5

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

Prendere un robot

Lasciarlo in un ambiente sconosciuto

Costruire la mappa

Navigare l'ambiente

Utilizzare la mappa per localizzarsi23/05/15Officine Robotiche 2015 - SLAM

Page 6: SLAM

Cosa serve per fare SLAM?6

Page 7: SLAM

Cosa serve?7

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

Un robot

Uno strumento in grado di misurare le distanze

23/05/15Officine Robotiche 2015 - SLAM

Page 8: SLAM

Il robot8

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.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

Page 9: SLAM

Il robot9

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

23/05/15Officine Robotiche 2015 - SLAM

Page 10: SLAM

Il sensore di misura [1/2]10

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.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

Page 11: SLAM

Il sensore di misura [2/2]11

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.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

Page 12: SLAM

L'algoritmo12

Page 13: SLAM

L'algoritmo13

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it Start

Movimento

AggiornamentoMappa

Misura delle distanzedagli oggetti presenti

nell'ambiente

Stima della distanzapercorsa e dell'angolo

di rotazione

Localizzazione Stima della posizionee dell'orientamento

all'interno della mappa

23/05/15Officine Robotiche 2015 - SLAM

Page 14: SLAM

Aggiornamento mappa14

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

23/05/15Officine Robotiche 2015 - SLAM

Page 15: SLAM

Stima del movimento15

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

Comandi

Traslazionee

RotazioneOdometria

SensoreInerziale

FusioneSensoriale

UKF

EKF

PF

KF EKF *

* Riguardo al Filtro di Kalman (KF), sue varianti (EKF,UKF) e Filtro a Particelle (PF), si rimanda la spiegazionead altra sede, vista la difficoltà relativa all'argomento

23/05/15Officine Robotiche 2015 - SLAM

Page 16: SLAM

ICPe

varianti

Localizzazione16

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

Posizione corrente all'interno della MAPPA GLOBALE

Posizioneprecedente

MovimentiRelativi

MappaLocale

NuovaPosizione

Fusione

23/05/15Officine Robotiche 2015 - SLAM

Page 17: SLAM

Iterative Closest Point17

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

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

23/05/15Officine Robotiche 2015 - SLAM

Page 18: SLAM

Iterative Closest Point18

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

(1) (2) (3)

(4) (5) Ripeto da (1)

Fino al risultatofinale

23/05/15Officine Robotiche 2015 - SLAM

Page 19: SLAM

SLAM e ROS19

Page 20: SLAM

SLAM e ROS20

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.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

Page 21: SLAM

SLAM e ROS21

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.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

Page 22: SLAM

SLAM e Officine Robotiche22

Page 23: SLAM

SLAM by Officine Robotiche23

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

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

23/05/15Officine Robotiche 2015 - SLAM

Page 24: SLAM

Evoluzione: dal 2D al 3D24

Page 25: SLAM

Dal 2D al 3D [1/2]25

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

Utilizzando un sensore 3D combinato con una telecamera lo SLAMdiventa un mezzo per creare mappe 3D da usare per visitarevirtualmente un ambiente remoto

23/05/15Officine Robotiche 2015 - SLAM

Page 26: SLAM

Dal 2D al 3D [2/2]26

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.it

Le cose però si complicano: molti più punti da elaborare ememorizzare, informazioni di colore da gestire.Serve molta potenza di calcolo in più!

23/05/15Officine Robotiche 2015 - SLAM

Page 27: SLAM

Conclusioni27

Page 28: SLAM

Conclusioni28

Walt

er

L uce

tti –

myzh

ar@

rob

ot-

hom

e.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

Page 29: SLAM

The End!

OR

THANK YOU FOR YOUR ATTENTION!

Walter Lucettihttp://myzharbot.robot-home.it

GitHub@myzhar

YoutubeMyzhar

Twitter@myzhar

Facebookrobothome

29

23/05/15Officine Robotiche 2015 - SLAM