SLAM

Da RobotGarage.
Questo documento contiene materiale proveniente da fonti esterne:
1 [ Documento Originale - Autore: Cristian Secchi -  Sito Riferimento ]


Dall'inglese Simultaneous Localization and Mapping : Localizzazione e Mappatura Simultanee.

Consiste nell'effettuare una mappatura dell'ambiente circostante al robot sfruttando i dati di localizzazione e, contemporaneamente, utilizzare le informazioni di mapping ottenute per localizzare il robot.

Con questa tecnica la Localizzazione e la Mappatura si influenzano a vicenda.

E' un metodo ad approssimazione incrementale.

Indice

Il problema

Lo SLAM cerca una risposta alla domanda:

E’ possibili usare un veicolo che parte da

  1. una posizione iniziale ignota, in un
  2. ambiente ignoto, per
  3. costruire incrementalmente una mappa dell’ambiente, e
  4. allo stesso tempo usare la mappa per determinare la posizione del robot?

Origini

Lo SLAM trova le sue origini nella localizzazione odometrica, che è il sistema più semplice per realizzare la localizzazione con un robot mobile.

Vedi voce: Odometria

Il problema della localizzazione

• xk: posizione del veicolo all’stante k
• u : l’ingresso di controllo applicato all’stante k-1 E tenuto costanto nell’intervallo [k-1,k)
• yk: misura del landmark pressa allistante k
• Xk: storia delle posizioni {x1,..,xk}
• Uk: storia degli ingressi di controllo {u1,…,uk}
• m: insieme dei landmark

Localizzazione

Il problema del mapping

• Xk: storia delle posizioni {x1,..,xk}
• mi: posizine del landmark i
• m: insieme dei landmark

Mapping

Il problema dello SLAM

• xk: posizione del veicolo all’stante k
• uk: l’ingresso di controllo applicato all’stante k-1 e tenuto costanto nell’intervallo [k-1,k)
• yk: misura del landmark pressa allistante k
• Xk: storia delle posizioni { x1,..,xk}
• Uk: storia degli ingressi di controllo {u1,…,uk}
• Yk: storia delle misure {y1,…,yk}
• m: insieme dei landmark

SLAM

SLAM

SLAM

SLAM - Setting

SLAM : Setting

Modello del processo

• Supponiamo, per ora, che il modello cinematico del robot sia un sistema lineare descritto da:

SLAM: Modello del Processo

dove

• A è la matrice di transizione dello stato

• uv è il vettore degli ingressi

• wv è un vettore aleatorio gaussiano con media nulla e matrice di covarianza Q_v(k) che modella l’incertezza del modello

• L’equazione transizione dello stato per landmark i-esimo è data da:

SLAM: Formula Modello del Processo

• E’ possibile raggruppare la dinamica del robot e la dinamica dei landmark in un unico modello del processo

• Lo stato del processo è dato da

SLAM: Stato Modello del Processo


• Il modello del processo p descritto da:

SLAM: Modello del Processo p

dove I_pi e 0_pi sono rispettivamente la matrice identità e la matrice nulla di ordine pi

Modello dell’Osservazione

• Supponiamo, per ora, che i sensori che osservano i landmark siano lineari. Il modello dell’osservazione del i-esimo landmark è dato da:

SLAM: Modello dell'Osservazione

SLAM: Modello dell'Osservazione

SLAM: Modello dell'Osservazione : Landmark misura del landmark relativa alla posizione del veicolo

SLAM

Il Filtro di Kalman

SLAM: Filtro Kalman


Schema

SLAM: Filtro Kalman

Filtro di Kalman Esteso (Extended Kalman Filter – EKF)

SLAM: Formula Extended Kalman Filter

SLAM: Formula EKF

Algoritmo EKF

SLAM: Algoritmo EKF

Localizzazione

SLAM: Localizzazione Uniciclo SLAM: Localizzazione Uniciclo . Modello non lineare Modello non lineare!

Un robot di tipo differential drive deve seguire una traiettoria circolare predefinita.

L’inseguimento di traiettoria è implementato tramite IO-SFL ed è quindi necessario una misura della posizione del robot per costruire l’azione di controllo.

Il modello cinematico del robot è affetto da una incertezza di processo.

La posizione del robot è misurata da una telecamera e la misura è affetta da un’incertezza.

Modello del processo

SLAM: Modello del Processo EKF
Modello dell’Osservazione
SLAM: Modello dell'Osservazione EKF
. Tramite l’uscita ho un accesso diretto allo stato.
. L’uscita è però caratterizzata da un’incertezza

Risultati

Il robot si perde e la traiettoria reale (blu) è diversa da quella desiderata (nero).
I cerchi rossi indicano le letture del sensore.

SLAM: Extended Kalman Filter : Risultati

Predizione

SLAM: EKF: Predizione

SLAM: EKF : Formula Predizione

SLAM: EKF : Formula Predizione

Aggiornamento

SLAM: EKF : Aggiornamento . Jacobiano .

SLAM: EKF : Innovazione . Covarianza

SLAM: EKF : Stima . Covarianza

Aggiornamento: Risultati

Il robot (blu) segue la traiettoria desiderata (nero) e la stima della posizione del robot (verde) è accurata:

SLAM: EKF : Aggiornamento Risultati


La stima iniziale è molto incerta ma il filtro di Kalman la rende sempre più accurata:

SLAM: EKF : Aggiornamento Risultati
Strumenti personali
Namespace
Varianti
Azioni
Navigazione
Strumenti