Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco...

100
Progettazione di Sistemi di Controllo Localizzazione e SLAM con Wireless Sensors Network (WSN) Desdemona Hoxhaj , Nicola Mazzucato, Maurizio Montis , Marco Sommacal

Transcript of Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco...

Page 1: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Progettazione di Sistemi di Controllo

Localizzazione e SLAM con Wireless Sensors Network

(WSN)

Desdemona Hoxhaj , Nicola Mazzucato, Maurizio Montis , Marco Sommacal

Page 2: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Localizzazione e SLAM con Wireless Sensors Network Localizzazione SLAM

Argomenti del Progetto:

il nodo mobile posto in un ambiente totalmente sconosciuto e privo di conoscenze sulla propria posizione e orientamento cerca di costruire una mappa verosimile di tale ambiente e determinare la propria posizione all’interno della mappa stessa.

Il nodo mobile, conoscendo in modo esatto la propria posizione e orientamento in ogni punto dell’ambiente cerca di stimare nel modo più preciso possibile il numero e la posizione dei nodi ancora presenti.

Page 3: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Storia dello Slam:

conferenza dell’IEEE chiamata ”Robotica eAutomatica” (San Francisco).

Origini del problema:

1986

i metodi probabilistici vennero per la prima volta applicati alla robotica e all’intelligenza artificiale.

Page 4: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Punto cruciale della teoria: necessità che vi sia una forte correlazione tra le stime della posizione dei diversi oggetti

dell’ambiente

Storia dello Slam:Primi risultati raggiunti

Ayache e Faugeras

Crowley, Chatila e Laumond

Risultato teorico

Smith, Cheesman e Durrant-Whyte

Risultati applicativi

Navigazione mediante visione

Navigazione di robot tramite

sonar e filtro di Kalman

Basi statistiche per la descrizione

dell’ambiente

Page 5: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Storia dello Slam:

Conseguenze

Una soluzione completa richiedeva uno stato composto da

Posizione del veicolo mobile

Posizione dell’ambiente

circostante

Lo stimatore elabora un vettore di grandi dimensioni

Onere di calcolo pari al quadrato dei punti di riferimento fissi

Page 6: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Storia dello Slam:La scelta non teneva conto della proprietà di convergenza

Introduzione di alcune approssimazioni

Il problema dello SLAM si scisse in due problemi distinti:

minimazzare e/o eliminare le correlazioni tra riferimenti

problema di localizzazione del veicolo mobile; problema di mappatura dell’ambiente.

Page 7: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Storia dello Slam:

Ulteriori studi dimostrarono che:

il problema composto verifica la proprietà di convergenza; la correlazione era una parte critica del problema.

Coniatura del termine SLAM

Page 8: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Slam probabilistico:

Problema di simultanea localizzazione e mappatura

richiede la distribuzione di probabilità:

descrive la densità congiunta a posteriori

del veicolo mobile; dei nodi ancora.

Page 9: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Necessito di avere: l’ingresso al passo k; l’osservazione al passo k

Slam probabilistico:Si cerca di determinare una soluzione ricorsiva del problema

Partendo da una stima per la distribuzione al passo k-1

la joint posterior density può essere calcolata tramite il Teorema di Bayes

Page 10: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Condizioni per applicare il Teorema di Bayes:

Slam probabilistico:

modello di osservazione:

modello di transizione:

Condizioni per applicare il Teorema di Bayes:

Probabilità di effettuare un’osservazione zk quando il veicolo mobile e la posizionedel nodo ancora sono conosciute

lo stato di transizione può esseredescritto attraverso un processo di Markov

Proprietà di indipendenza condizionale delle osservazioni

Page 11: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Slam probabilistico:

Time update:

Measurement update:

Forma ricorsiva dell’algoritmo di SLAM

Page 12: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Slam probabilistico:

Dipendenza tra le osservazioni e le posizioni dei nodi fissi e mobile;

Osservazioni sullo SLAM probabilistico:

l’errore tra valori stimati e valori reali delle posizioni dei sensori presenta un andamento comune e omogeneo;

gli errori nelle stime delle posizioni dei sensori risultano fortemente correlati;

Page 13: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Modello dinamico del sistema:

Sistema non lineare:

Page 14: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Modello dinamico del sistema:Variabili di stato:

Page 15: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Modello dinamico del sistema:Variabili di stato:

Page 16: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Modello dinamico del sistema:Scelta dei parametri del robot mobile:

y

xO

ys

Xs

fs

S

Page 17: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Modello dinamico del sistema:Variabili di ingresso:

Variabili di uscita:

Accelerazione del robot:

Segnali di potenza dei sensori fissi:

Page 18: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Caratteristiche cinematiche adottate per il veicolo mobile:

Scelta del movimento: Spostamento per passi; Tempo di spostamento legato al

tempo di campionamento;

Page 19: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Caratteristiche cinematiche adottate per il veicolo mobile:

Profilo di accelerazione

Page 20: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Caratteristiche cinematiche adottate per il veicolo mobile:

Profilo di accelerazione

Profilo di velocità

Page 21: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Modello dinamico del sistema:

Rumore di Processo

Rumore di Misura

Rumore del sistema:

Modello del rumore

Page 22: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Modello dinamico del sistema:Equazione di stato:

Page 23: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Modello dinamico del sistema:Matrice Q: Matrice f:

Page 24: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Modello dinamico del sistema:Equazione di uscita:

Valori numerici: PTX = 0A = 18.2 np = 2.18 var( )c = 6.03

Page 25: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Discretizzazione del modello:

Page 26: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di KalmanCos’è?

Un insieme di equazioni matematiche

Cosa rappresenta?Un metodo computazionale per stimare lo stato di un processo in modo da minimizzare l’errore quadratico medio.

Page 27: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman

Le equazioni del filtro si dividono in:

•predizione: responsabili della previsione dello stato attuale e della covarianza dell’errore e permettono di ottenere una stima a priori dello stato del sistema.

•aggiornamento misura: governano il feedback e vengono impiegate per correggere con una nuova misurazione la stima a priori fatta al passo precedente, così da ottenere una stima a posteriori migliore.

Page 28: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman

Il filtro stima lo stato di un processo x(k) all’istante (k+1):

Ingresso del processo al

k-esimo istanteRumore di processo modellato

come una gaussiana

Page 29: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman

Rumore di misura modellato come una gaussiana

La stima viene fatta attraverso le misurazioni:

Page 30: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman‘’Comportamento della stima’’

Stima a priori Stima a posteriori

Errore di stima a priori Errore di stima a posteriori

Varianza errore di stima a priori

Varianza errore di stima a posteriori

Page 31: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmo ricorsivo per il calcolo degli stimatori lineari a minima varianza

Il filtro di Kalman

Stime a priori

Stime a posteriori

Condizioni iniziali

Page 32: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

S: correlazione tra rumori di processo e di

misura

La varianza del processo di innovazione e(k):

Il filtro di Kalman

La varianza del rumore bianco :

Il guadagno del filtro di Kalman:

La matrice F:

Page 33: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman

Page 34: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman esteso

Quando sostituisce il Kalman ‘’ordinario’’?

Quando il processo da stimare e/o la relazione tra la misura e il processo non è lineare.

Qual’è il suo principio di funzionamento?

Esso esegue una linearizzazione ad ogni istante di campionamento attorno alla migliore stima disponibile in quel momento.

Page 35: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman estesoDato un processo con stato governato da:

E equazione di osservazione non lineare:

Rumore di processo Rumore di misura

Page 36: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman estesoSi possono scrivere le nuove equazioni che linearizzano la

stima:

Stato e osservazione al passo attuale

Stato e osservazione approssimati

Stima a posteriori dello stato al

passo k

Rumore di processo e di

misura

Page 37: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman estesoN.B. Le matrici sottoindicate dipendono dal passo k

Page 38: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman estesoPredizione:

Aggiornamento misura:

Posto come guadagno del filtro di Kalman esteso:

Page 39: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman propostoIl nostro sistema in due stati considera due rumori in ingresso:

Rumore d’uscitaEq. d’uscita del sistema

Rumore sull’accelerazione

Eq. di stato del sistema

Page 40: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman proposto

Condizioni iniziali:

I due rumori e gli errori di stima iniziali devono soddisfare l’equazione ICQ.Se esiste una soluzione per l’eq. Di Riccati allora l’eq. ICQ risulta soddisfatta ed il vettore di stato può essere stimato dalle misure dei segnali RSSI attraverso l’impiego di una versione robusta del filtro di Kalman esteso.

Page 41: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman proposto

Sotto queste ipotesi il sistema robot-sensore i-esimo si può rappresentare come:

Dalla ICQ invece:

Posti : >0

Page 42: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Il filtro di Kalman proposto

Data l’incertezza provocata dalla ICQ, rumore di misura, accelerazione e incertezza delle condizioni iniziali, vengono considerate ingressi deterministici limitati:

(Eq. di misura)

Posti: si osserva

Sotto queste condizioni il sistema soddisfa la ICQ.

Page 43: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Modello del canale

Definisce le caratteristiche del canale Per la localizzazione i chip radio usano due parametri:

LQI

Qualità del segnale Potenza del segnale

RSSI

Page 44: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Power vs Distance P(d)

Distance d

Potenza ricevuta

Potenza nota ad una distanza do

Coefficiente di path loss

Variabile aleatoria gaussiana N(0, σ2)

Potenza trasmessa

Fattore di attenuazione

Fattore di decrescenza

Page 45: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

RSSI vs Power

) ))

La potenza del segnale ricevuto viene codificato dal Tmote in un valore di RSSI

)

Calcolo della distanza dal nodo trasmettitore

Page 46: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

ParteSperimentale

… dalla simulazione alla realtà

Page 47: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

T-mote SkyLe componenti Hardware utilizzate sono i moduli

Tmote Sky

Contengono un chip radio BlueTooth con antenna integrata

Sono alimentati a batteria

Possono essere programmati con TinyOS nel linguaggio NesC

Contengono una UART seriale

Page 48: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

SLAM sperimentale Nodi ancora Sono disposti in uno spazio definito Hanno una posizione fissa Numero noto

Nodo mobile Si muove lungo una traiettoria definita Deve ricavare la distanza dai nodi ancora Trasmette le informazioni ricavate alla BaseStation

BaseStation Riceve i dati inviati dal nodo mobile Tramite comunicazione seriale invia i dati al PC

Page 49: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Nodo 1

Nodo 2

Nodo 3

Nodo 4

Mobile

BaseStation

Porta seriale

USB

Schema di comunicazione

Page 50: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Nodo Mobile• Al termine di ogni tratto di traiettoria, nella fase di stop, comunica con i nodi ancora • Interroga in modo sequenziale tutti i nodi ancora tramite un messaggio pkt• Riceve poi un determinato numero di messaggi da ogni nodo ancora• Calcola il valore medio di RSSI dei messaggi ricevuti• Invia il dato ricevuto alla base station (pktAnchor)

pkt

Nodeid id del trasmittente Counter id del riceventeSTART bool abilita la tx

pktAnchor

Nodeid id del nodo Ancora PosIndex posiz del nodo mobilePower potenza media rilevata

Page 51: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Nodo Ancora• Ogni nodo è dotato di un ID unico • Rimangono inattivi fino alla rx di un messaggio pkt:

con nodeid uguale alla ID del nodo mobile con counter uguale alla loro ID con START = TRUE

• In questa condizione iniziano l’invio di pkt al nodo mobile contenenti il proprio nodeid ogni 15ms• Alla ricezione di un messaggio con START = FALSE il nodo mobile interrompe l’invio di pkt

L’accensione di alcuni LED visualizzano l’attività di ricezione (rosso) e trasmissione (verde)

Page 52: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Nodo BaseStation

• Il nodo BaseStation deve essere collegato ad un PC tramite porta USB • Viene abilitata la comunicazione seriale• Attende la ricezione di un messaggio pktAnchor• Quando questo viene ricevuto invia un pacchetto di tipo serialpkt al PC

• Un opportuno programma sul PC riceve i dati dalla seriale e li salva in un file .m con una tabulazione predefinita:

Posindex Power NodeID

Page 53: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

MobileBoot.booted( ) Radio ON Timer0.startPeriodic Timer0.Fired Send START nodo 1 Count_media = 0;

GetRSSI Count_media ++ GetRSSI Count_media ++ GetRSSI …… GetRSSI Count_media ++ Count _media = = 40; Send STOP nodo 1 Calcolo RSS medio Send Data to Basestation

Nodo Ancora 1Boot.booted( )Radio ON

Receive.receive Timer2.startPeriodic Timer2.fired Send msg to Mobile Timer2.fired Send msg to Mobile Timer2.fired Send msg to Mobile …… Send msg to Mobile

Receive.receive Timer2.stop

BaseStationBoot.booted( )Serial ONRadio ON

Receive.receive Send SERIAL to PC

Estrapolato di pseudo-codice

Page 54: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

E-PUCK

•Cos’ è E-PUCK?

•Caratteristiche meccaniche

•Caratteristiche elettriche

Page 55: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Telaioplastico

2 motoripasso-passo

Diametro di 70mm

Velocitàmax

15cm/s

Ruote di diametro

41mmDistanza

tra le ruote di 53mm

Caratteristiche meccaniche

Page 56: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Unico alimentatore

a 3,3V

Una porta RS232 e unainterfaccia bluetooth

Un processore

di dsPIC

8 sensori di

prossimità

Batteria LiION di capacità

5Wh

Caratteristiche elettriche

Un accelerometro

3 microfoni

1 altoparlante

1 fotocamera

Page 57: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Ipotesi per la sperimentazione

•Perimetro 50x50cm

•Comunicazione tra t-mote solo quando e-puck è fermo

•Tempo di sosta e tempo di percorrenza di un segmento di traiettoria

Page 58: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Realizzazione del movimento1.Programmazione in C

2.Connessione dell’e-puck via bluetooth al computer

3. Scrittura nella memoria dell’e-puck del codice costruito

Page 59: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Realizzazione del movimento

•1 ciclo for per ogni segmento della traiettoria•7 secondi di sosta ogni passo•1s di tempo per compiere 10cm

Page 60: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni: Assunzioni a priori: La comunicazione sul veicolo mobile è abilitata solo quando questo è fermo. La traiettoria del veicolo è prefissata e immutabile. I sensori hanno antenne isotropiche

Metodologia delle prove sperimentali: Percorso limitato entro un quadrato di 50 cm di lato. (Per tempo richiesto dai sensori e per irregolarità del piano). Operazioni non in tempo reale di modo che fosse scindibile la parte Matlab e la parte di raccolta dati. Il veicolo mobile si muove di 10cm in una sola direzione, in un secondo poi elabora le misure in 7 secondi salvandole su un file di testo.

Page 61: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:Localizzazione:

Si vuole individuare la posizione dei nodi conoscendo in modo esatto la posizione del nodo mobile.

Run.m: Algoritmo semplicistico, non efficace.

Localizzazione.m: Algoritmo molto efficace, preciso, almeno in via teorica(Provato anche con dati sperimantali).

Page 62: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

L’algoritmo proposto nel file Run.m:

Questo algoritmo utilizza la triangolazione, in particolare calcola i punti di intersezione delle circonferenze determinate dalle misure.Servono quindi almeno tre misure ricavate lungo un percorso non allineato.

Page 63: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:Localizzazione su traiettoria allineata:

X

Page 64: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:Localizzazione efficiente su percorso non allineato:

Page 65: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:Qualora non ci fosse rumore esisterebbe un solo punto comune a tutte le circonferenze. Tuttavia a causa del rumore ciò non accade e si trova quindi una nuvola di punti prossimi alla posizione vera del nodo.

Per ottenere valori più corretti si ripete la misura e poi si applica il filtro di Kalman per determinare la distanza “vera”.

In uscita viene presentato il grafo del movimento del veicolo con il plot dei punti di intersezione. Per avere il valore corretto si dovrebbe determinare il valor medio.

Page 66: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Page 67: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

L’algoritmo proposto nel file Localizzazione.m:

Questo algoritmo utilizza lo stimatore ai minimi quadrati presentato nella tesi di L.Parolini del 2007. In questo caso per avere una prima stima sono sufficienti 2 misure. Per far sì che il sistema tenga conto della bontà delle misure sì è introdotto un fattore di peso, ricavato dalle statistiche delle misure.

Page 68: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Per ricavare la matrice di peso (matrice di varianza di w) si è usata la seguente formula:

Con i e j indici della matrice.Da questa matrice si può ricavare la seguente stima della posizione del nodo m-esimo:

Page 69: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:Dove la matrice A e i vettori b e T sono:

Page 70: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Con questo algoritmo si ottengo risultati molto soddisfacenti con piccoli errori, dell’ordine di qualche millimetro.

Inoltre se si osserva la matrice di varianza essa al termine del movimento del veicolo mobile, raggiunge valori infinitesimi.

Di seguito viene presentato un esempio con 10 nodi con disposizione dei nodi fissi predeterminata.

Page 71: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento del veicoli e delle stime.

Page 72: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore lungo l’asse x e asse y di un nodo generico.

Page 73: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Questo algoritmo è stato anche testato sui dati di laboratorio. Ottenendo risultati solo in parte sorprendenti.

Infatti si ottengono risultati non altrettanto positivi, seppure appena accettabili poiché sono dell’ordine del 20% sulla dimensione totale del piano di lavoro.

Page 74: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Questo perché si sono fatte delle supposizioni ad esempio:

• le antenne si sono supposte isotropiche;

• per costruire la matrice di peso si usa il modello statistico dell’Rssi che contiene delle approssimazioni;

• è possibile migliorare le prestazioni affinando i parametri alla situazione presente in laboratorio.

Page 75: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento del veicolo e delle stime.

Page 76: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore lungo l’asse x e asse y del 2° nodo, quello presente nella posizione 0,15-0,25 .

Page 77: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:Simultaneous Localization and Mapping:Si vuole individuare la posizione dei nodi con una conoscenza iniziale parziale o nulla della posizione dei vari elementi.

Slam.m: Algoritmo poco efficace con l’uso esclusivo del filtro di Kalman esteso.

Slam.m: Algoritmo migliore e preciso, almeno in via teorica, con l’uso contemporaneo dell’ Ekf e dei Least Squares (Provato anche con dati sperimentali).

Page 78: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:L’algoritmo proposto nel file Slam.m:

Questo algoritmo utilizza solamente il filtro di Kalman esteso.

Inizialmente si è agito col filtro di Kalman così come definito, senza introdurre alcun parametro.

A causa però di alcuni problemi riscontrati si è poi optato per introdurre un nuovo parametro di pesatura delle misure in base al valore dell’Rssi effettivamente rilevato, che interviene sulla equazione di aggiornamento di Kalman.

Page 79: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:In particolare si è modificato come segue l’aggiornamento:

Questa soluzione si è dimostrata poco efficiente, poiché un errore sulla posizione del veicolo mobile crea un impedimento alla stima, seppur imprecisa, dei nodi fissi. Allora si introduce un nuovo parametro che si attiva in queste circostanze.

Page 80: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

L’andamento dei vari γ è di tipo cubico al variare dell’Rssi entro una certa banda di incertezza, all’esterno della quale vale o 0.5 o 0.Con questi accorgimenti si presentava ancora un errore, infatti in caso di conoscenza nulla, non si riesce ad aggiornare la stima delle posizioni dei nodi fissi quindi si deve inserire una routine che si attiva in tali situazioni portando la stima del nodo nei pressi del veicolo fisso.

Page 81: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dei veicoli e delle stime.

Page 82: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore del veicolo mobile.

Page 83: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore lungo l’asse x e asse y di un nodo generico.

Page 84: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Introducendo queste routine si ottengono risultanti positivi ma non soddisfacenti poiché quando il nodo fisso è entro una certa zona di incertezza dalla posizione vera, essa viene sì aggiornata ma in modo troppo esiguo.

Questo comportamento non pienamente sufficiente è da imputarsi alla divergenza del filtro di Kalman.

Page 85: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

L’algoritmo proposto nel file Slam.m (2° versione):

Questo algoritmo utilizza insieme al filtro di Kalman lo stimatore ai minimi quadrati utilizzato precedentemente.

Tuttavia l’integrazione è a solo una via. In particolare non viene tenuto conto della bontà della stima della posizione del nodo mobile nel calcolo della posizione dei nodi fissi.

Page 86: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

La parte di minimi quadrati quindi rimane invariata, semplificando l’algoritmo.

D’altra parte ciò introduce delle inevitabili imprecisioni che nelle simulazioni non sono significative.

L’applicazione del filtro di Kalman esteso resta pressoché invariata, si usa un solo parametro γ, anch’esso varia con legge cubica entro un certo rangedegli Rssi.

Page 87: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Note:

Se la varianza della stima è troppo elevata questa viene scartata.

Se la condizione iniziale del nodo mobile è troppo lontana dalla “vera” si crea un offset che il sistema non è in grado di annullare.

Page 88: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Con conoscenza approssimata della posizione dei nodi si ottengono risultati molto buoni, con errori del 5% almeno nelle simulazioni.

Se invece la conoscenza iniziale è nulla allora gli errori crescono tanto quanto è sbagliata la condizione iniziale del nodo mobile.

Di seguito viene presentato un paio di esempi con 5 nodi con conoscenza a priori approssimata e nulla.

Page 89: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dei veicoli e delle stime.

Page 90: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore lungo l’asse x e asse y del nodo mobile.

Page 91: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore lungo l’asse x e asse y di un nodo generico.

Page 92: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dei veicoli e delle stime.

Page 93: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore lungo l’asse x e asse y del nodo mobile.

Page 94: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore lungo l’asse x e asse y di un nodo generico.

Page 95: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Questo algoritmo è stato anche testato sui dati di laboratorio. Ottenendo risultati meno soddisfacenti.

Infatti si ottengono del 20% sulla dimensione totale del piano di lavoro.

Page 96: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dei veicoli e delle stime.

Page 97: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore lungo l’asse x e asse y del nodo mobile.

Page 98: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore lungo l’asse x e asse y di un nodo generico.

Page 99: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Qui è presentato l’andamento dell’errore lungo l’asse x e asse y di un nodo generico.

Page 100: Progettazione di Sistemi di Controllo Desdemona Hoxhaj, Nicola Mazzucato, Maurizio Montis, Marco Sommacal.

Algoritmi e Simulazioni:

Questo perché si sono fatte delle supposizioni ad esempio:

le antenne si sono supposte isotropiche;

per costruire la matrice di peso nel least squares si usa il modello statistico dell’Rssi che contiene delle approssimazioni;

è possibile migliorare le prestazioni tenendo anche conto della precisione della stima sul veicolo mobile nel calcolo dei nodi fissi;

è possibile migliorare le prestazioni affinando i parametri alla situazione presente in laboratorio.