LOCALIZZAZIONE DI RISORSE MOBILI IN AMBIENTI INDOOR

Transcript

LOCALIZZAZIONE DI RISORSE MOBILI IN AMBIENTI INDOOR
UNIVERSITÀ DEGLI STUDI DI FERRARA
FACOLTÀ DI INGEGNERIA
Corso di Laurea Specialistica in Ingegneria Informatica e
dell'Automazione
LOCALIZZAZIONE DI RISORSE MOBILI
IN AMBIENTI INDOOR
Tesi di Laurea di
Arianna Franceschetti
Relatore
Ing. Gianluca Mazzini
ANNO ACCADEMICO 2008 - 2009
In primo luogo vorrei ringraziare il mio relatore, il Prof. Ing. Gianluca Mazzini per
avermi permesso di affrontare un argomento di tesi così interessante e utile, per la
sua disponibilità e specialmente pazienza. Assieme a lui ringrazio la Dott.ssa Chiara
Taddia per avermi dato la possibilità di confrontare il mio progetto con il loro.
Il mio più grande ringraziamento và ai miei genitori Chetti e Graziano per avermi
sostenuto ancora una volta in questi due anni, per aver ascoltato tutte le mie
lamentele e sfuriate, ma soprattutto per volermi così bene come io ne voglio a loro e
per essere sempre e continuamente un porto sicuro nella mia vita.
Altro ringraziamento importante và a mia zia Maria Luisa per trattarmi e volermi
sempre bene come fossi una figlia e perché continua dopo tanto tempo ad ascoltare i
miei problemi.
Un ringraziamento particolare và alla mia migliore amica Silvia e alla mia
compagna d’avventura Lorenza per avermi sopportato in questi anni e per avermi
fatto sfogare ad aquagym, avventura che non avrei mai immaginato di affrontare.
Ringrazio mia nonna e tutti i miei parenti per il loro affetto.
Ringrazio tutti coloro che non ho menzionato poiché la lista sarebbe troppo lunga.
Infine ringrazio la mia fede in Dio che mi ha aiutato ad affrontare tutti i periodi neri
della mia vita e che continuerà ad essere un punto fermo nella mia vita come i miei
genitori.
ii Indice
Introduzione…………………………………………………7
1. Reti di sensori Wireless…………………………………..9
1.1 Cosa sono e a cosa servono le reti WI-FI……………………..9
1.2 WI-FI IEEE 802.11…………………………………………..11
1.2.1 Standard 802.11…………………………………………………12
1.2.2 Interfacce dello standard IEEE 802.11……………...…………..14
1.2.3 Livello fisico dello standard IEEE 802.11…………………..…..15
1.3 Applicazioni delle reti di sensori WI-FI……………………...16
1.3.1 Militare………………..…………………………………………17
1.3.2 Industriale……………………………………………………….17
1.3.3 Ambientale……………………………………………………….18
1.3.4 Mediche…………………………………………………………..19
1.3.5 Home and Building automation………….………………………20
1.4 Sistema di Comunicazione Mobile………………………….21
1.4.1 Meccanismi di propagazione……………………………………21
1.4.2 Propagazione Indoor…………………………………………….22
2. Localizzazione Risorse Mobili……………………….…25
2.1 Localizzazione outdoor – Sistema GPS……………………..25
2.1.1 Principio di funzionamento del GPS……..…………………….26
2.1.1.1 Satelliti del sistema GPS…………………………………………27
2.1.1.2 Tipo di modulazione e frequenze…………………………………28
2.1.1.3 Grado di precisione del rilievo…………………………………….29
2.1.2 Il ricevitore GPS………………………………………………..29
2.1.2.1 Principio di funzionamento del ricevitore GPS……………………30
2.2 Localizzazione indoor………………………………………31
2.2.1 Fase 1 : Metodologie di Ranging………...……………………..31
2.2.1.1 RSS………………………………………………………………...32
2.2.1.2 TOA e TDOA..………………………………………………….….33
2.2.1.3 AOA………………………………………………………………..35
2.2.2 Fase 2 : Tecniche di Combinazione…………………………….36
2.2.2.1 Trilaterazione Iperbolica………………………………………..….36
2.2.2.2 Triangolazione……………………………………………………..37
2.2.2.3 Massima Verosimiglianza…………………………………………38
2.2.3 Sistemi esistenti…………………………………………………38
2.2.3.1 Sistema RADAR………………………………………..…………39
2.2.3.2 Sistema NIBBLES………………………………………………....40
iii 3. Localizzazione di un oggetto mobile indoor…………...43
3.1 Descrizione progetto………………………………………...43
3.1.1 Fase ON-LINE……………..…….…….……………………..44
3.1.2 Fase OFF-LINE……………..………………………………..44
3.2 Descrizione dell’ambiente…………………………………..44
3.2.1 Condizioni ideali – senza rumore………………..…………….46
3.3 Metodi utilizzati per il calcolo della distanza……………….47
3.3.1 Metodo esistente : distanza Euclidea………………………….48
3.3.2 Metodo creato : distanza Manhattan………………………….48
3.3.3 Metodo creato : distanza Chebyshev………………………….49
3.4 Differenze basilari tra i due algoritmi utilizzati…....….……50
3.4.1 Creazione mappa……………………………………………...50
3.4.2 Localizzazione…………………………………………………52
3.5 Confronto e analisi dei risultati in ambiente ideale..….……53
3.5.1 Conclusioni sui risultati ottenuti in ambiente ideale .…….….56
3.6 Problematiche nella fase OFF-LINE...……………….......…57
3.7 Introduzione del rumore nell’ambiente ideale……….…..…59
3.7.1 Rapporto segnale/rumore…………………………..………….60
3.7.2 Rumore Gaussiano…………………………..………………...61
3.8 Confronto e analisi dei risultati in ambiente non ideale……62
3.8.1 Conclusioni sui risultati ottenuti in ambiente non ideale….…..64
4. Localizzazione di più oggetti mobili indoor……………67
4.1 Descrizione progetto……………….…………..…………...67
4.1.1 Fase OFF-LINE………………..……………………………...67
4.1.2 Fase ON-LINE………..……………………………………….68
4.2 Metodologia adottata......……………………………………68
4.2.1 Fase 1 : Assegnazione dei beacon ai carrelli…….………......69
4.2.2 Fase 2 : Metodo delle circonferenze....………………..……...72
4.2.2.1 Criticità del metodo delle circonferenze………..……………...75
4.2.3 Fase 3 : Scelta della posizione del carrello….………..……...77
4.2.4 Localizzazione carrelli senza errore……………………….…77
4.2.5 Localizzazione carrelli con errore……………………………80
4.2.6 Conclusioni sui risultati ottenuti…………………………....…82
iv 5. Confronto tra gli algoritmi……………………………..83
5.1 Algoritmo Mazzini/Taddia………………………………...83
5.1.1 Descrizione della metodologia utilizzata……………..…….83
5.1.2 Conclusioni sull’algoritmo preso da riferimento……..…….84
5.2 Differenze basilari tra i due algoritmi utilizzati…....……..84
5.2.1 Creazione mappa e inserimento carrelli……………..….….84
5.2.2 Associazione beacon ai carrelli senza collisioni……..…….85
5.2.3 Localizzazione carrelli mobili……………..……………….87
5.3 Confronto e analisi dei risultati……..……………………..89
5.3.1 Errore di localizzazione…………………………………….89
5.3.2 Numero di carrelli localizzati………………………………92
5.4 Conclusioni sul confronto………..………………………..94
6. Conclusioni e Sviluppi futuri……………………...……95
7. Elenco delle figure……………………………………….87
8. Bibliografia e Sitografia……………………………...…99
v vi Introduzione
L'obiettivo del progetto è la realizzazione di un sistema di localizzazione di
oggetti mobili in un ambiente indoor attraverso l'uso di sensori posti a griglia. In
particolare si è studiato la localizzazione di carrelli della spesa equipaggiati da
un trasmettitore di potenza in un supermercato nel cui soffitto sono posti i nostri
sensori che fungono da ricevitori radio. L’esigenza di localizzare un oggetto o
un utente mobile nasce, storicamente, soprattutto da motivi legati alla sicurezza
ad esempio per il monitoraggio di grandi ambienti quali parcheggi, autogrill o
tunnel autostradali. Nel nostro caso ad esempio si otterrebbe l'ottimizzazione dei
processi logistici e di marketing per la localizzazione e l’analisi degli
spostamenti dei carrelli di un supermercato. Lo scenario proposto prevede la
localizzazione di carrelli per la spesa all’interno di un supermercato. Uno degli
scopi potrebbe essere quello di analizzare il comportamento degli acquirenti per
identificare i comportamenti tipici e ottimizzare quindi le strategie di marketing.
Poiché questo sistema ha come obiettivo l’installazione in ambienti aperti al
pubblico in cui i terminali mobili sono a contatto diretto con le persone, devono
essere rispettati alcuni vincoli:
• Gli apparati non devono interferire con le persone e l’intero sistema deve
essere poco invasivo per non avere un impatto estetico che possa
disturbare gli acquirenti ;
• I terminali mobili devono avere una buona autonomia ed essendo installati
sui carrelli della spesa devono possedere anche caratteristiche di
robustezza e sicurezza al fine di evitarne il danneggiamento .
Lo scopo principale di questo progetto è creare un sistema di localizzazione che
sia semplice, efficiente e specialmente economico. L'idea principale è quella di
creare una griglia di sensori che chiameremo “beacons” applicabile al soffitto
della stanza in cui vogliamo effettuare la localizzazione. Questi beacons sono ad
una stessa distanza in metri l'uno dall'altro. Questo può servire per utilizzare già
strutture esistenti e quindi abbassare i costi architetturali. In particolare ogni
beacon è un ricevitore radio in grado di calcolare la potenza ricevuta da ogni
trasmettitore posto su ogni carrello della spesa. L'informazione data dalla
potenza ricevuta ci dà la possibilità di stimare la distanza di un carrello da ogni
beacons e quindi di calcolarne la posizione a scapito di un piccolo errore di
localizzazione.
7 Si può suddividere il sistema progettato in 2 fasi:
• FASE OFF-LINE : si crea una mappatura radio che contiene tutte le
potenze dei beacons attivi. Le potenze vengono memorizzate in una
struttura vettoriale e vengono calcolate tramite un trasmettitore che passa
per tutti i beacon e questi ne memorizzano di volta in volta la potenza. Per
ogni beacons vengono memorizzate più potenze individuate dalla distanza
tra il beacon e tutti i punti che compongono la griglia. La distanza
calcolata è quella euclidea per l’algoritmo Mazzini/Taddia e la distanza
Manhattan e di Chebyshev per il mio algoritmo.
• FASE ON-LINE : una volta ricevuta la potenza dell'oggetto sconosciuto,
cioè del carrello della spesa, la si confronta con quelle memorizzate e si
trova quella più similare per la localizzazione per l’algoritmo Mazzini/
Taddia, mentre per il mio tramite due beacon associati ai carrelli si
utilizza il metodo delle circonferenze e si fa la localizzazione.
La metodologia descritta a grandi linee verrà discussa nei capitoli successivi in
maniera più approfondita inserendo anche eventuali errori di metratura.
La tesi viene quindi suddivisa nei seguenti capitoli:
1. Descrizione generale sulle reti di sensori wireless, sue applicazioni, sullo
standard utilizzato e sul canale radio.
2. Descrizione generale sulla localizzazione di risorse mobili in ambienti
outdoor e indoor, vedendo in dettaglio le varie metodologie esistenti.
3. Confronto tra la metodologia creata dai professori Mazzini e Taddia
(distanza di Euclide) per il calcolo della distanza tra sensore e
trasmettitore e le metodologie usate da me (distanza di Manhattan e
distanza di Chebyshev).
4. Confronto tra l’algoritmo per la localizzazione di più carrelli utilizzato dai
professori Mazzini e Taddia (tecnica della massima verosimiglianza) con
l’algoritmo da me creato (metodo delle circonferenze).
5. Confronto dei risultati ottenuti tra i due algoritmi.
6. Conclusioni e sviluppi futuri.
7. Elenco figure.
8. Bibliografia e Sitografia.
8 Capitolo 1
Reti di Sensori Wireless
Per capire meglio la localizzazione bisogna ricondursi a qualche definizione e a
qualche concetto. In particolare verrà illustrato il concetto di rete di sensori
wireless per comprendere meglio cosa serve e come avviene la comunicazione
fra i vari dispositivi.
1.1 Cosa sono e a cosa servono le reti WI-FI
L’utilizzo di cavi consente l’impiego di dispositivi che non hanno limitazioni di
potenza poiché laddove saremo in grado di portare una connessione cablata per i
dati sarà in generale possibile prevedere anche una o più linee di alimentazione,
inoltre le soluzioni cablate consentono dei buoni livelli di sicurezza visto che
bisogna avere accesso fisico diretto al cavo per poter prelevare informazioni
dalla rete. Al contempo però soffrono di gravi limitazioni:
• in primo luogo l’impossibilità o le difficoltà d’installazione in ambienti
inospitali per l’uomo
• problema di costi visto che l’installazione di ciascun dispositivo
richiederà manodopera e materiali per le operazioni di cablatura
• una struttura cablata è essenzialmente rigida cioè risulta difficile
aggiungere nuovi nodi alla rete o modificare la posizione di sensori
preesistenti senza riconsiderare l’intera struttura della rete.
Le soluzioni Wireless sembrano essere la soluzione ideale a questo tipo di
problemi, ma esse comportano al contempo una serie di svantaggi in termini di
problemi di propagazione del segnale, interferenze, sicurezza, requisiti di
potenza, norme legislative ed altro ancora. Per molti di questi problemi esistono
soluzioni efficaci, ma per ogni soluzione adottata dovremo sempre prendere in
considerazione l’aumento della complessità progettuale e il relativo aumento dei
costi di realizzazione.
Wi-Fi è un'abbreviazione di Wireless Fidelity. Il Wi-Fi è un’infrastruttura
relativamente economica e di veloce attivazione, che permette di realizzare
sistemi flessibili per la trasmissione di dati usando frequenze radio, estendendo o
collegando reti esistenti ovvero creandone di nuove. I Sistemi Wi-Fi sono
9 originariamente stati progettati per la creazione di piccole reti locali, all’interno
di edifici o in ambiente campus.
Il grosso vantaggio delle reti Wi-Fi deriva dall’ormai universale supporto
tecnologico e dal basso costo e ha enormi vantaggi
• tutti i computer portatili e i palmari vengono venduti con la scheda radio e
l’antenna integrata e gli stessi apparati che servono a collegare la rete
senza fili alla rete cablata tradizionale, access point, costano poche decine
di euro.
• la frequenza radio utilizzata 2.45 GHz, è di uso ormai completamente
libero e non prevede quindi né costi di licenza né il possesso di particolare
licenze amministrative per l’uso privato.
Figura 1.1 : Esempio di rete WI-FI su WEB
Accanto agli innegabili vantaggi esistono però anche alcuni svantaggi:
• la frequenza è libera quindi chiunque la può utilizzare e ciò può essere
fonte di interferenze
• la potenza trasmissiva degli apparati è limitata per legge a 100 mW e ciò
ne limita grandemente la portata (da qualche decina di metri a qualche
chilometro, a seconda dell’antenna usata)
• lo stesso mezzo trasmissivo utilizzato (le onde radio), in assenza di
adeguati sistemi di protezione, può essere facilmente oggetto di
intrusione.
10 Figura 1.2 : Esempio di intrusione in un rete wireless
Ciò nonostante i sistemi Wi-Fi possono costituire un valido mezzo per superare
il problema del cosiddetto ultimo miglio, e quindi la distribuzione capillare della
banda larga nei centri abitati, senza dover ricorrere alla più costosa infrastruttura
in rame (i doppini telefonici). In sostanza i sistemi Wi-Fi sono più adatti a
collegamenti del tipo punto-multipunto (distribuzione del segnale da un punto
verso gli utenti finali) che punto-punto (ripetizione del segnale da un punto
all’altro). Anche in Italia sono ormai presenti in molte città i cosiddetti hot spot,
dove gli utenti abilitati possono, tramite i loro apparati mobili, collegarsi alle reti
Wi-Fi e così usufruire dei servizi internet.
1.2 WI-FI IEEE 802.11
Il protocollo Ethernet dalla sua nascita ad oggi si è trasformato da singolo
protocollo in una complessa famiglia di protocolli, definiti dall’IEEE (Institute
of Electrical and Electronic Engineers) . La velocità di trasferimento dati è
passata da 10 Mbps a 100 Mbps e poi a 1 Gbps, utilizzando tutti i tipi di
cablaggio: cavo coassiale, cavo telefonico e fibra ottica. Il 26 giugno 1997 è
stato finalmente approvato il primo standard IEEE 802.11. Inizialmente
l’interesse verso questa tecnologia e stato limitato dai costi elevati e dalle basse
prestazioni raggiungibili sul canale radio, ma oggi questi prodotti sono
economicamente vantaggiosi e i progressi nelle tecniche radio consentono di
raggiungere velocià di trasmissione fino a 54 Mbps, per questi motivi il mercato
delle WLAN è in fase di crescita. Una rete locale wireless (WLAN) è un sistema
flessibile per la comunicazione di dati, realizzato come estensione o come
11 alternativa ad una rete locale wired (cablata). Usando una tecnologia a radio
frequenza (RF) la WLAN trasmette e riceve dati minimizzando l’utilizzo di cavi.
Le WLAN combinano le proprietà di mobilità con la possibilità di accedere alla
rete da un qualsiasi punto che sta sotto la copertura della cella. Con le wireless
LAN gli utenti possono accedere ad informazioni condivise senza cercare un
punto a cui collegarsi. Questo tipo di rete offre una migliore produttività,
convenienza e risparmio economico rispetto ad una rete cablata tradizionale.
La copertura di una cella radio varia da 20 metri a oltre 300 metri, in relazione
alla tipologia degli ambienti, con una possibilità di collegamento da 10 a 250
utenze per Ap (Access Point), in funzione del modello e della tecnologia
impiegata. Gli standard di comunicazione usati consentono ad un WT di inviare
via radio all’Ap i dati che poi instraderà , verso un'eventuale sottorete cablata o
ad un’altro WT.
Figura 1.3 : Copertura di una cella a Radio Frequenza
Oggi le WLAN sono riconosciute come uno strumento per ottenere connettività
per una gran parte di utenti in svariati campi di impiego, e sempre di più si
stanno diffondendo prodotti basati su diverse implementazioni dello standard
IEEE 802.11. A seconda del metodo di trasmissione i prodotti offrono una banda
che va da 1 Mbit/s fino a 54 Mbit/s.
1.2.1 Standard 802.11
Nei primi anni '90 lo standard IEEE 802.11 indicava le specifiche fisiche per lo
sviluppo di di una rete LAN wireless, ovvero una rete informatica a onde radio.
12 Tale standard consentiva velocità fino a 2 Mbps usufruendo della tecnologia
basata su onde radio a 2.4 GHz di frequenza o direttamente su raggi infrarossi.
Proprio la limitata velocità e la scarsissima diffusione di apparecchi mobili (non
era ancora in atto il boom della telefonia mobile) bloccarono sul nascere lo
sviluppo e la diffusione di questo stardard. Nel 1999 le principali aziende del
settore fondarono il WECA (Wireless Ethernet Compatibility Alliance) al fine di
ottenere una serie di standard comuni a tutti i dispositivi, permettendo cosi la
massima interoperabilità dei sistemi wireless.
Il protocollo IEEE 802.11b consente :
• efficace adattamento della velocità di trasmissione con un range da 5.5 a
11 Mbps a seconda del canale utilizzato
• una velocità di trasferimento fino a 11 Mbps
• automatismo nella assegnazione della banda da occupare e dell'access
point di ingresso a seconda del traffico
La rete a onde radio viene gestita attraverso alcune dispositivi denominati access
point e Wireless terminal. L'access point è in sostanza il gateway di
connessione, ovvero il punto di accesso alla rete wireless. Entro il suo raggio di
azione gli utenti possono quindi collegarsi a tutti gli apparecchi collegati nella
stessa rete in una sorta di P2P a onde radio, salvo limitazioni di accesso decide a
livello software oppure collegarsi ad unità centrali come in una normale rete
Ethernet.
Figura 1.4 : WLAN a Radio Frequenza (RF)
13 1.2.2 Interfacce dello standard IEEE 802.11
Lo standard IEEE 802.11 consente due possibili interfacce:
• FHSS (Frequency Hopping Spread Spectrum ), dipsersione di spettro a
salto di frequenza;
• DSSS (Direct Sequence Spread Spectrum) dispersione di spettro in banda
base.
Nel sistema FHSS il segnale ad una data frequenza viene fatto "saltare" da una
canale all'altro, distribuendosi su una banda di frequenze. Il vantaggio di tale
sistema, quando il rapporto fra la larghezza di banda originale del segnale e la
larghezza di banda del segnale di diffusione è molto grande, è di offrire una
grande immunità all' interferenza. La tecnologia consente a più utenti di
condividere lo stesso insieme di frequenze cambiando automaticamente la
frequenza di trasmissione fino a 1600 volte al secondo, al fine di una maggiore
stabilità di connessione e di una riduzione delle interferenze tra canali di
trasmissione. Lo spectrum spreading consiste in una continua variazione di
frequenza utilizzando una modulazione di frequency hopping. Gli hops
corrispondono ai salti di frequenza all'interno della gamma assegnata (2,402 Ghz
-2,480 Ghz salti di 1 Mhz, complessivamente 79 hops set) Viene impiegata una
modulazione gaussiana di tipo Fsk o Gfsk.
Nello specifico sono previste due tipologie di modulazione Gfsk:
• Gfsk a 2 livelli con data rate 1 Mbps
• Gfsk a 4 livelli con data rate 2 Mbps
Il sistema FHSS risulta molto sicuro contro interferenza e l'intercettazione in
quanto risulta statisticamente impossibile poter ostruire tutte le frequenze che
possono essere usate e l'implementazione di sistemi di filtri selettivi su
frequenze diverse dalla frequenza del segnale, eccedenza 50dB.
Figura 1.5 : Esempio di interfaccia FHSS
14 Il sistema DSSS è una tecnologia di trasmissione a "frequenza diretta" a banda
larga, ogni bit viene trasmesso come una sequenza ridondante di bit, detta chip.
Tale metodo è indicato per la trasmissione e ricezione di segnali deboli.
Consente l'interoperabilità con le reti wireless attuali a 54 Mbps (802.11g) con le
precedenti a 1-2 Mbps.L'interfaccia DSSS utilizza un sistema con dispersione in
banda base utilizzando un chipping code ( codice di dispersione) modulando il
dato prima di trasmetterlo, ogni bit trasmesso viene disperso su una sequenza a
11 bit (sequenza Barker). Il segnale trasmesso consumerà una maggior larghezza
di banda consentendo la ricezione di segnali deboli.
I vantaggi che l'interfaccia DSSS assicura contro l'interferenza è piuttosto
scarso. Questa limitazione insidia significativamente il valore di DSSS come
metodo per resistere all'interferenza nelle applicazioni reali delle WLAN.
Figura 1.6 : Esempio di interfaccia DSSS
1.2.3 Livello fisico dello standard IEEE 802.11
Le specifiche IEEE 802 sono concentrate sui due strati più bassi del modello
OSI perchè esso include sia il livello fisico che quello accesso dati. Tutte le reti
basate su 802 hanno un livello fisico (PHY) e un protocollo di accesso al mezzo
(MAC). MAC è un insieme di regole che determinano come accedere al mezzo
trasmissivo ed inviare dati, ma i dettagli di trasmissione e ricezione dati sono
affidati al livello fisico.
15 F
Figura
1.77 : Livello fisico
f
del modello OSI
O con loo standardd IEEE 80
02
1.3 Applica
A
azioni deelle retii di senssori WII-FI
mplementaate utilizzaando una vvasta tipollogia di
Le retii di sensorri possonoo essere im
sensorii come seensori sism
mici, magnnetici, term
mici, infraarossi, acuustici, rad
dar, che
sono inn grado di
d monitorrare una ampia
a
claasse di condizioni aambientali fra le
quali possiamo
p
r
ricordare:
• Tem
mperatura;
• Um
midità;
• Moovimenti di
d veicoli;
• Conndizioni di
d illuminaazione;
• Pressione;
more;
• Livvelli di rum
• Presenza o asssenza di determina
d
ati tipi di oggetti;
o
• Streess meccaanici;
• Vellocità, direezione e dimensione
d
e di oggettti.
Ciascuun nodo sensore pootrà inoltrre essere utilizzato
u
in diversse modalittà, sarà
possibiile interroogare periiodicamennte un sensore perr avere unna inform
mazione
continuua, utilizzzarli solo per verificare il raggiungimento di una partticolare
condizzione, o modalità
m
ne controollata periiodicamen
nte una
ibride in cui vien
grandeezza, ma se questaa supera una deteerminata soglia il sensore avverte
direttam
mente il controllore
c
e (es: Conntrollo di processi
p
e lavoraziooni dell’in
ndustria
chimicca).
Alcunee delle priincipali appplicazionni delle retti di sensoori wirelesss possono
o essere
classifi
ficate in cinque macro gruppi:
g
applicazion
a
ni militaari, applicazioni
16 industriali, controllo ambientale, applicazioni mediche, home and building
automation.
1.3.1 Militare
Le reti di sensori wireless possono diventare parte integrante delle più comuni
attività militari come il comando, il controllo dei campi di battaglia, la
rilevazione degli spostamenti delle truppe nemiche, la sorveglianza e le
operazioni di localizzazione dei bersagli. Questo perché le WSN sono
caratterizzate da un elevato numero di nodi dal costo contenuto che possono
essere impiegati in grandi quantità anche in ambienti inospitali quale può essere
un campo di battaglia. L’eventuale distruzione infatti di uno o più nodi non
influenza l’efficienza della rete, cosa che invece potrebbe accadere utilizzando
reti cablate. Alcune delle applicazioni del campo militare possono essere il
controllo ed il rilevamento dello stato degli equipaggiamenti, la sorveglianza del
campo di battaglia per monitorare le attività delle fazioni nemiche, o ancora per
rilevare i danni conseguenti ad una battaglia, o il riconoscimento di agenti
chimico fisici nell’ambito di battaglie chimico biologiche. In quest’ultimo
contesto è possibile individuare anche il concetto di misura distribuita che una
rete di sensori wireless può consentire, cioè nel caso della rilevazione di agenti
chimici non è di primaria importanza conoscere la concentrazione di sostanze
rilevata da ciascun nodo sensore, ma è più rilevante sapere quali zone sono state
interessate dall’attacco chimico, i diversi sensori allora possono implementare
degli algoritmi di cooperazione che permettono di avere una informazione di
misura appunto “distribuita” su di una determinata regione e non localizzata in
punti precisi.
1.3.2 Industriale
L’utilizzo delle LR-WPAN nel settore industriale s’inserisce nella continua
ricerca della diminuzione dei costi per implementare sistemi di controllo per i
processi produttivi. Le prime applicazioni si hanno laddove non vengano
richiesti elevati data rate, utilizzati in applicazioni non critiche, dove gli
intervalli di campionamento non risultano essere un problema. Al contrario
l’attenzione viene posta sui costi di implementazione e di manutenzione, ciò
comporta la necessità di dispositivi che non richiedano manutenzione, dove per
manutenzione intendiamo primariamente la necessità di sostituire e/o ricaricare
le batterie. Altre tipiche applicazioni industriali possono essere la realizzazione
17 di bridge wireless verso altre reti già esistenti come DeviceNet o FieldBus
creando un’interfaccia che possa consentire il monitoraggio remoto e la
modifica dei parametri di funzionamento di dispositivi connessi alle reti
preesistenti impiegando PDA o altri sistemi.
1.3.3 Ambientale
Alcune delle applicazioni delle WSN in questo ambito possono essere i sistemi
di prevenzione degli incendi, le statistiche relative alla fauna protetta, agricoltura
di precisione, ricerche meteorologiche e geofisiche, controllo dell’inquinamento.
Consideriamo ad esempio l’impiego di una rete di sensori wireless nella lotta
agli incendi, un numero elevato di sensori possono essere posizionati in zone
strategiche in modo casuale all’interno di una vasta area boschiva, questi nodi
ovviamente devono essere dotati di opportuni meccanismi di power scavenging,
come celle solari, poiché i sensori possono essere abbandonati nel territorio per
lunghi periodi. L’utilizzo di sensori wireless permette di superare gli ostacoli
tipici degli ambienti boschivi quali le rocce, gli alberi e la vegetazione in genere,
che non consentirebbe l’installazione delle corrispettive versioni cablate, a meno
di considerare interventi radicali molto costosi e distruttivi.
Un campo di sviluppo molto recente che prevede l’utilizzo delle LR-WPAN è
l’agricoltura di precisione, che prevede l’utilizzo di sensori distribuiti che
possono monitorare alcuni parametri fondamentali per le coltivazioni come le
concentrazioni di nitrati, la temperatura del suolo, la composizione del terreno,
la quantità di acqua piovana, l’umidità relativa delle coltivazioni ed altro ancora.
In questo modo è possibile studiare dei sistemi di controllo che consentano di
migliorare l’agricoltura sia in termini di qualità del prodotto finale sia per quanto
concerne la quantità, consentendo quindi un notevole vantaggio economico per
il fattore. Affinché questo tipo di sistema di controllo applicato all’agricoltura
possa essere efficace è necessario che l’informazione di ogni sensore sia
correlata alla sua posizione affinché l’utente sia informato sulle zone precise in
cui intervenire.
L’agricoltura di precisione, come del resto i sistemi di prevenzione degli incendi
descritti precedentemente, giacciono nella parte più bassa dello spettro delle
applicazioni delle LR-WPAN, poiché richiedono la trasmissione di pochi bit di
dati al giorno per ogni dispositivo impiegato, i flussi di informazione inoltre
sono tipicamente asincroni in natura, consentendo quindi di sviluppare algoritmi
di risparmio energetico che ben si applicano al paradigma delle LR-WPAN.
18 Le difficoltà che si possono incontrare nel progetto di questo tipo di rete sono le
particolari topologie necessarie, poiché per coprire vaste aree avremo bisogno di
reti mesh che consentano cioè ad alcuni nodi di funzionare come ripetitori del
segnale inviato da altri, consentendo al messaggio di giungere fino al corretto
destinatario, tutto questo però sempre adottando politiche di risparmio
energetico, visto che è improponibile il controllo e l’eventuale sostituzione di
batterie per reti di sensori implementate su vaste aree geografiche. Infine queste
reti devono consentire meccanismi di autoconfigurazione poiché attività di setup
manuale per un così elevato numero di nodi risultano economicamente
improponibili.
1.3.4 Mediche
Alcuni esempi in questo campo possono essere la trasmissione dei parametri
fisiologici dei pazienti all’interno degli ospedali, attività diagnostiche,
somministrazione di medicinali, personal healthcare ed altro. L’utilizzo di
WPAN consente all’interno delle strutture ospedaliere di poter monitorare i
parametri fisiologici dei pazienti come temperatura, pressione sanguigna,
pulsazioni cardiache in modo non invasivo per il paziente e consentendo
l’intervento tempestivo dei medici in caso di bisogno. Applicazioni simili
possono essere individuate anche nel personal healthcare, basti pensare ad una
serie di sensori dotati di interfaccia wireless integrati per esempio all’interno di
un orologio da polso che consenta la misurazione dei battiti cardiaci, o in una
bilancia per monitorare il peso; in questo modo con una trasmissione giornaliera
verso un PDA o un personal computer è possibile costituire un archivio
personale in cui vengono memorizzate le informazioni salienti del nostro stato di
salute. Altra applicazione interessante è il controllo remoto di persone anziane
per prevenire situazioni di pericolo quali per esempio una caduta o uno sbalzo
improvviso delle pulsazioni cardiache. Infine, nominiamo solamente la
possibilità di controllore la somministrazione di medicinali all’interno degli
ospedali, supponiamo infatti di dotare ogni confezione di un apposito smart
transducer che ne consenta l’identificazione ed ogni paziente sia dotato di un
dispositivo che memorizzi le eventuali allergie o le prescrizioni effettuate dal
medico curante, in questo modo si potrebbe ridurre drasticamente il rischio di
errata somministrazione.
19 1.3.5 Home and Building automation
Con l’evoluzione tecnologica ci aspettiamo di trovare degli smart transducer in
ogni apparato elettronico all’interno della casa come televisori, VCR, forni a
microonde, frigoriferi e quant’altro, in modo che tutti questi dispositivi siano in
grado di interagire fra loro e verso il mondo esterno attraverso altre infrastrutture
di rete come comunicazioni via satellite o più diffusamente internet. Il progetto
di una casa intelligente di questo tipo può prevedere due diversi approcci
progettuali, un sistema human centered che prevede che la tecnologia sia in
grado di rispondere alle esigenze dell’utente finale in termini di interazione
input/output o technology centered che vuole creare un cosiddetto smart
environment, in cui ogni dispositivo della casa integra uno smart device in grado
di comunicare con un server di stanza, il quale a sua volta è in grado di
comunicare con i server delle stanze adiacenti in modo da creare un sistema
integrato autoconfigurante, ed auto organizzato. Oltre ai componenti di
elettronica di consumo possiamo includere nella categoria delle innovazioni che
possono portare le LR-WPAN all’interno delle case il controllo dei sistemi
HVAC (Heating, ventilation and air contidioning), sistemi cioè in grado di
regolare la temperatura di ogni stanza sulla base di diversi sensori disposti per
esempio in corrispondenza delle finestre per verificare se queste sono aperte o
chiuse, in corrispondenza delle superfici vetrate in modo da poter valutare
l’effetto della radiazione solare sulla temperatura della stanza. Altre applicazioni
che abbiamo già ricordato nei paragrafi introduttivi sono la realizzazione di
sistemi di controllo ed antifurto ed il controllo dell’illuminazione.
Concludiamo questa breve panoramica delle applicazioni possibili delle LRWPAN all’interno delle case ricordando l’utilizzo di queste tecnologie
nell’industria ludica dei giocattoli sia per quanto riguarda i giocattoli classici
come bambole o peluche che dotati di opportuni sensori wireless possono essere
in grado di riconoscere il bambino con cui stanno interagendo o per quanto
riguarda i giochi più moderni come i videogiochi elettronici, le LR-WPAN
possono essere impiegate per “tagliare il cavo” dei controlli remoti come
Joystick o pistole, ma anche per permettere a diverse console di interagire tra
loro comunicando per esempio i record raggiunti o i migliori tempi. Stesso
discorso ovviamente vale per le periferiche connesse ai calcolatori che per loro
natura richiedono bassi data rate come mouse o tastiere; con l’impiego delle
LR-WPAN possono avvantaggiarsi rispetto alle tecnologie wireless già
disponibili come il Bluetooth, con migliori sistemi di gestione dei consumi
20 consentendo la sostituzione delle batterie ad intervalli molto ampi nell’ordine di
alcuni anni.
1.4 Sistema di Comunicazione Mobile
Il percorso di trasmissione tra trasmettitore e ricevitore può variare dal semplice
percorso diretto ad uno che è molto ostruito da palazzi, muri e montagne. A
differenza del canale wired (cablato) che risulta stazionario e prevedibile, il
canale radio risulta estremamente casuale e quindi l'analisi risulta molto
difficoltosa. I tre meccanismi di propagazione in un sistema di comunicazione
mobile sono riflessione, diffrazione e diffusione
1.4.1 Meccanismi di propagazione
• Riflessione: Il segnale incidente su una superficie, può essere riflesso,
assorbito, o essere una combinazione di entrambi. Questa reazione
dipende dalle proprietà fisiche della superficie e dalle caratteristiche del
segnale. Le proprietà fisiche sono la geometria della superficie, la
struttura e il materiale che la compone. Le caratteristiche del segnale sono
l'angolo d' incidenza, l'inclinazione e la lunghezza d'onda. I conduttori
perfetti riflettono completamente l'onda incidente, mentre altri materiali
ne riflettono solo una parte. Le quantità esatte di onda riflessa e trasmessa
dipendono dall'angolo di incidenza, dallo spessore e dalle proprietà
dielettriche del materiale. Ulteriori contributi alla riflessione sono dovuti a
mobili, pavimenti e soffitti, superficie terrestre, palazzi e muri.
Figura 1.8 : Meccanismo di Riflessione
21 • Diffrazione: L'onda diffratta si presenta quando nel percorso tra
trasmettitore e ricevitore vi sono oggetti con bordi netti. La diffrazione si
ha quando gli ostacoli sono impenetrabili dall'onda propagata. Basandosi
sul principio di Huygens, le onde secondarie si formano dietro il corpo
che ostruisce e nello spazio circostante, creando un nuovo fronte d'onda
nella direzione di propagazione. Gli ambienti indoor contengono molte di
queste superfici, orientate sia verticali che orizzontali. Così il segnale
diffratto risultante dipende dalla geometria degli spigoli, dalle proprietà
spaziali, così come dipende dalle caratteristiche del segnale incidente
(ampiezza, fase, polarizzazione e frequenza).
Figura 1.9 : Meccanismo di Diffrazione
• Diffusione: se vi sono molti oggetti nel percorso dell'onda con dimensione
paragonabile alla lunghezza d'onda, il fronte d'onda si propagherà separata
mente in varie direzioni. I segnali risultanti si disperderanno in tutte le
direzioni formando interferenza costruttiva o distruttiva.
1.4.2 Propagazione Indoor
Il canale radio indoor differisce dal tradizionale canale radio mobile in due
aspetti: le distanze coperte sono molto piccole e la variabilità dell'ambiente
risulta molto più elevata per un più piccolo range di distanze dal trasmettitore.
Da misure sperimentali risulta che la propagazione negli ambienti indoor è
fortemente influenzata da caratteristiche specifiche come la struttura degli
edifici, i materiali utilizzati e la tipologia di edificio.
I meccanismi di propagazione in ambito indoor sono gli stessi presenti nel
canale radio mobile: riflessione, diffusione e diffrazione. Tuttavia la variabilità
22 dell'ambiente risulta molto più elevata: ad esempio il livello di potenza del
segnale risulta dipendente dal fatto che una porta sia aperta o chiusa.
23 24 Capitolo 2
Localizzazione Risorse Mobili
Lo sviluppo della tecnologia porta alla creazione di dispositivi variegati con un
comune denominatore : la mobilità. L’utente mobile deve poter interagire con
l’ambiente che lo circonda, è quindi richiesta la localizzazione dell’utente
mobile.
2.1 Localizzazione Outdoor – Sistema GPS
Il sistema GPS. (GLOBAL POSITIONING SYSTEM) avviato dagli USA a
partire dagli anni ‘70, e completato nel 1993, è stato realizzato per motivi
principalmente militari, per rispondere all’esigenza del Ministero della difesa
degli Stati Uniti di seguire il percorso di mezzi militari sulla terraferma ed in
mare in modo da localizzarne la posizione in ogni momento e consentirne
eventuali operazioni di supporto e di salvataggio. Il GPS è un sistema di
individuazione della posizione che utilizza 24 satelliti artificiali, divisi in gruppi
di quattro (6 x 4 = 24) che ruotano attorno alla terra alla quota di circa 20.200
Km in orbite distanti fra loro di un angolo di 60° (6 x 60°=360°) e formanti un
angolo di 55° rispetto al piano equatoriale. Di questi satelliti, 21 sono attivi,
mentre tre sono di scorta, cioè sono in attesa di entrare in funzione quando
qualcuno dei 21 cesserà di essere attivo.
Figura 2.1 : Satelliti artificiali
25 I satelliti artificiali, infatti, hanno una vita media che per quelli di questa serie è
di circa dieci anni. È previsto anche un piano di espansione futura che prevede il
lancio di altri satelliti per sostituire quelli che man mano esauriranno le loro
capacità ed andranno fuori servizio.
2.1.1 Principio di funzionamento del GPS
Il sistema GPS è nato in realtà come versione satellitare e quale perfezionamento
del già esistente sistema LORAN nato negli USA. negli anni ’40 e che consente
la determinazione della propria posizione lungo le rotte di grande traffico navale
ed aereo ed utilizza un gran numero di stazioni terrestri MASTER e SLAVE. La
comprensione del principio di funzionamento del GPS è, infatti, molto facilitata
per chi già conosce a fondo il sistema LORAN. Il sistema GPS. consente di
determinare la propria posizione sulla superficie terrestre, ed anche la quota se si
è in aereo, ed è attivo oggi in qualunque punto della terra, dall’equatore ai poli
ed in qualunque punto sperduto dei deserti o delle grandi città. È necessario
disporre con se di un ricevitore GPS il quale intercetta a terra il segnale a
microonde generato dai satelliti in orbita che, a turno, passano sopra di noi.
Figura 2.2 : Satelliti orbitanti attorno alla Terra
Infatti, visto il numero, l’orbita ed il periodo di rotazione dei satelliti, di cui si è
già parlato, risulta che in ogni istante sono sopra di noi in media da cinque ad
otto satelliti che si alternano in quota.
26 2.1.1.1 Satelliti del GPS
Le funzioni dei satelliti possono essere così sintetizzate:
• trasmettere informazioni agli utilizzatori mediante un segnale radio
piuttosto complesso;
• mantenere un riferimento di tempo accurato, grazie agli orologi di bordo;
• ricevere e memorizzare informazioni dal segmento di controllo;
• eseguire manovre e correzioni d'orbita.
Possiamo dire che ogni satellite GPS conosce e trasmette costantemente la
propria posizione orbitale (Almanac), l'orario sincronizzato per l'intera
costellazione e il suo codice identificativo. I satelliti sono stati lanciati in varie
epoche e appartengono a diversi blocchi:
• satelliti blocco I: sono i primi satelliti lanciati, con la primitiva
organizzazione delle orbite che comprendeva 3 piani orbitali inclinati di
63° sul piano equatoriale. Sono stati lanciati nel periodo 1978 1995
• satelliti blocco II: sono organizzati su 6 piani orbitali inclinati di 55° sul
piano equatoriale. A differenza di quelli del blocco I il cui segnale era
completamente disponibile per usi civili, in questi nuovi satelliti
compaiono alcune restrizioni sul segnale. Sono prodotti da Rockwell
International e sono lanciati dal 1989
• satelliti blocco IIA ("Advanced"): hanno la possibilità di comunicazione
fra di loro e alcuni sono dotati di riflettori per le misure "LASER
RANGING". Sono prodotti anch'essi da Rockwell International e sono
lanciati dal 1990
• satelliti blocco IIR: hanno rimpiazzato i satelliti del blocco II. Portano a
bordo 3 oscillatori al Rubidio. Esiste un collegamento intersatellitare per
migliorare la precisione di determinazione delle orbite. Sono in orbita dal
1997
• satelliti blocco IIF: saranno lanciati presumibilmente entro il 2010:
dovranno consentire la gestione di eventuali variazioni di frequenze e
ospiteranno a bordo sistemi inerziali
Attualmente sono posti in orbita 24 nuovi satelliti commissionati alla Loocked
Martin. Non sono solamente sostitutivi degli attuali, ma contengono anche
aggiornamenti tecnologici per migliorare ulteriormente un sistema che già oggi
sfiora la perfezione. Una delle caratteristiche del sistema GPS è proprio quella di
essere costantemente al passo con i tempi, grazie al periodico rinnovo della
costellazione.
27 2.1.1.2 Tipo di Modulazione e Frequenze
I satelliti GPS generano due diversi segnali di tipo numerico, che vengono
chiamati L1 ed L2, alle frequenze rispettivamente di 1,5 e 1,2 GHz circa,
modulati in PSK dei quali il primo serve per la localizzazione grossolana, quella
di tipo civile, e l’altro per la localizzazione più precisa, di tipo militare.
La modulazione PSK consiste nel far variare la fase di un segnale sinusoidale
(portante) in base al valore assunto dal segnale digitale (modulante)
rappresentante i dati da trasmettere.
Generalmente il modulatore :
• trasmette una sinusoide alla frequenza fp pari a quella della portante con
fase inalterata, quando il segnale dati è a livello basso;
• trasmette una sinusoide alla frequenza fp, ma sfasata di 180° quando il
segnale dati è a livello alto.
Lo schema di principio che realizza tale modulazione può essere così
rappresentato :
Figura 2.3 : Schema funzionamento modulazione PSK
Nel dominio del tempo l’andamento dei segnali (modulante, portante, modulata)
è il seguente :
Figura 2.4 : Modulazione 2-PSK nel dominio del tempo
28 2.1.1.3 Grado di precisione del rilievo
Il primo segnale consente la determinazione della propria posizione con la
precisione di circa 300 metri, il secondo invece, con la precisione di 50
cm. Mentre il primo segnale è trasmesso in chiaro, il secondo, invece, è
trasmesso in codice segreto e non è accessibile se non al Ministero della Difesa
degli Stati Uniti che lo utilizza esclusivamente per la propria sicurezza e non lo
rende noto a tutti per evitare che possa essere utilizzato contro gli interessi degli
Stati Uniti da criminali o da Stati nemici. Ogni satellite trasmette dei segnali ad
alta frequenza verso terra che vengono ricevuti da un apposito apparecchio
ricevitore delle dimensioni ridottissime di un comune cellulare e comprendente
una particolare antenna regolabile che va rivolta verso l’alto. I ricevitori GPS
funzionano all’aperto, non è quindi possibile utilizzarli all’interno di un
appartamento o in sotterranei, ma devono poter vedere il cielo libero su di se per
ricevere il segnale satellitare.
2.1.2 Il ricevitore GPS
I ricevitori GPS commerciali, oggi dal costo molto contenuto, consentono di
sintonizzarsi automaticamente sulle frequenze dei satelliti suddetti e, dopo un
tempo di ricerca e di elaborazione dei dati ricevuti, dell’ordine di pochi minuti,
sono in grado, individuando la distanza di almeno quattro satelliti, di
determinare la propria posizione geografica sulla superficie terrestre in termini
di latitudine e longitudine, comprendendo eventualmente la quota se si è in
montagna o in aereo. I migliori fra questi ricevitori, in particolare quelli montati
su autoveicoli o all'interno di cellulari predisposti, risultano in grado di mostrare
la propria posizione all’interno di una cartina geografica completa che può
essere ingrandita fino a diventare una vera e propria cartina topografica in cui
sono evidenziate anche le strade principali con i loro nomi, come si vede
nell’esempio mostrato in figura.
Figura 2.5 : Ricevitore GPS
29 2.1.2.1 Principio di funzionamento del ricevitore GPS
I satelliti, dotati di orologi atomici al cesio di grandissima precisione, che
vengono sincronizzati dalla stazione americana di Colorado Spring ogni qual
volta vi passano sopra, trasmettono in continuazione dati numerici che
comprendono le proprie coordinate X, Y, Z, e l’istante esatto T di trasmissione.
Questi dati vengono elaborati a terra dal ricevitore il quale, confrontandoli con il
proprio tempo locale, il quanto anche il ricevitore è dotato di orologio al quarzo
di grande, anche se non di grandissima precisione, e conoscendo la velocità delle
onde elettromagnetiche, deduce a che distanza si trova da ognuno dei satelliti di
cui sta ricevendo il segnale.
Infatti, noto l’istante T1 trasmesso dal satellite in cui è partito il segnale, e
l’istante T2 , indicato dall’orologio locale, in cui il segnale è stato ricevuto a
terra, si conosce il tempo impiegato a percorrere la distanza dal satellite al
ricevitore, ed essendo la velocità della luce c, nota, la distanza D del satellite
dal ricevitore risulta:
D = c (T2 – T1)
La conoscenza della distanza da un solo satellite è un dato del tutto insufficiente
per determinare la propria posizione, in quanto non è nota la posizione azimutale
né quella zenitale dello stesso, analogamente non è sufficiente conoscere la
distanza da due satelliti; infatti, l’intersezione di due sfere di raggio noto, cioè le
distanze calcolate, dà luogo ad un cerchio e non ad un punto.
L’intersezione di tre sfere di raggio noto, invece, determina due punti, dei quali,
invero, uno è di norma inaccettabile in quanto si trova ad altissima quota e
risulta anche muoversi ad altissima velocità.
Soltanto l’intersezione di quattro sfere di raggio noto, invece, consente con
certezza, di determinare una posizione univoca nello spazio, il che spiega perché
è necessario aspettare del tempo, anche se se tratta di minuti, per elaborare i dati,
in quanto bisogna aspettare il passaggio di almeno quattro satelliti ed avere
anche il tempo di effettuare numerosi calcoli ed approssimazioni successive.
I dati del quarto satellite, infatti, oltre a rendere univoca la soluzione al sistema
di quattro equazioni in quattro incognite, consentono di correggere il valore del
tempo proprio del ricevitore per mezzo dei tempi dei quattro satelliti.
Le quattro incognite da determinare sono X, Y, Z, T, cioè le tre coordinate
indicanti la posizione geografica dell’utente fornito di ricevitore, più il tempo
proprio che è indispensabile per determinare con grande precisione le distanze
dei satelliti, distanze che costituiscono i dati di partenza.
30 La X rappresenta la longitudine, la Y rappresenta la latitudine, la Z, la quota
sul livello del mare, e T il tempo proprio, corretto dagli orologi ad altissima
precisione che orbitano sui satelliti.
2.2 Localizzazione Indoor
La mobilità è stata una dei fattori chiave nel grande successo delle tecnologie
wireless. La possibilità di localizzazione dell’utente all’interno dell’ambiente
apre la strada ad un ampio insieme di applicazioni in grado di rendere
disponibili agli utenti i servizi che più si adattano al contesto in cui gli utenti si
trovano (contex-aware services) fra i quali, ad esempio, la guida virtuale.
Un sistema context-aware include tipicamente:
• un insieme di sensori di varia tipologia (visione, audio, ambientali, radio),
installati nell’ambiente, in grado di rilevare una varietà di informazioni
sullo stato dell’ ambiente, delle persone e oggetti presenti al suo interno
• componenti di elaborazione e analisi del flusso dati sensoriali (ad
esempio, componenti di analisi di scena visiva), in grado di estrarre
informazioni a livello semantico dai dati sensoriali (presenza, posizione,
situazioni di pericolo etc.)
• middleware per la distribuzione dei dati di contesto alle applicazioni
• applicazioni in grado di sfruttare l’informazione di contesto per adattare le
caratteristiche del servizio offerto alle esigenze dell’utente.
È necessario quindi sviluppare tecniche che permettano di ottenere informazioni
accurate della posizione dell’utente mobile.
Oggi altre tecnologie, come le WLAN (Wireless Local Area Network), si stanno
proponendo come valide candidate per realizzare la funzionalità di
localizzazione attraverso infrastrutture radio terrestri che forniscono
informazioni di localizzazione sulla base del confronto dei livelli di potenza
ricevuti dai vari punti d’accesso (access point).
2.2.1 Fase 1 : Metodologie di Ranging
Ci sono modi per misurare distanze ed angoli (l’angolo è inteso come direzione
di provenienza del segnale) sono molteplici e differiscono tra loro per
accuratezza, hardware necessario e logica di funzionamento. L’operazione di
ranging è quindi un’operazione di stima ed è molto importante poiché permette
al sensore di localizzare l’oggetto in questione con il minimo errore.
31 2.2.1.1 RSS
Il metodo RSS si riferisce principalmente ai segnali di tipo a radio frequenza
(RF). È una tecnica in cui si misura la potenza del segnale ricevuto proveniente
da una sorgente di segnale avente potenza di trasmissione costante e nota al
ricevitore stesso. Nota la potenza trasmessa ed una misura di quella ricevuta,
viene ricavata l'attenuazione; è noto infatti che un'importante caratteristica della
propagazione via radio è l'attenuazione crescente del segnale radio all'aumentare
della distanza tra trasmettitore e ricevitore. Sono stati sviluppati in proposito
diversi modelli teorici ed empirici che, facendo ipotesi sulla legge di
propagazione dei segnali radio, traducono questa attenuazione in termini di
distanza. L'attenuazione si concentra sulla determinazione della potenza media
del segnale ricevuto ad una data distanza dal trasmettitore (modelli di
propagazione su larga scala), ed anche sulla variazione della potenza del segnale
in spazi chiusi o limitati (modelli su piccola scala, modelli di fading). Il sistema
di localizzazione a radio frequenza (RF) basato su WLAN utilizza, come già
detto, l’infrastruttura di rete 802.11. Il sistema richiede uno o più punti di
riferimento per eseguire la valutazione della distanza: access point (AP). Viene
quindi misurata la potenza del segnale ricevuta dal mobile (RSS) proveniente
dagli access point, grandezza che decade in maniera logaritmica con la distanza
in condizioni di spazio libero.
In ambiente indoor il canale wireless è affetto da molti disturbi:
• Interferenze
• Fading multi-cammino
• Ostacoli
La localizzazione a radio frequenza (RF) in un ambiente wireless ha bisogno dei
seguenti passi mostrati in figura:
Figura 2.6 : Localizzazione in ambiente wireless
32 Per fare una localizzazione in un ambiente indoor bisogna innanzitutto fare
un’analisi della scena e memorizzare delle informazioni che serviranno in
seguito per la nostra localizzazione. Nel nostro caso verranno memorizzate delle
potenze e delle coordinate. La mappa radio quindi non è altro che una struttura
dati (che può essere un database, un vettore, una matrice etc..) che contiene le
posizioni dell’edificio in questione con i relativi valori di RSS (potenza del
segale ricevuta dal dispositivo mobile). Questa mappa è molto importante per la
localizzazione poiché si possono confrontare i suoi valori con quello ricevuto
dal dispositivo mobile e quindi risalire alla posizione dell’oggetto in questione.
Quindi più viene ottimizzata la mappa più l’errore di localizzazione di un
dispositivo sconosciuto decresce. Un esempio di mappa è mostrata in figura :
Figura 2.7 : Esempio di mappa radio
2.2.1.2 TOA e TDOA
Le tecniche TOA e TDOA si basano, rispettivamente, sulla misura dell'istante di
arrivo di un segnale o sulla differenza tra gli istanti di arrivo di due segnali
diversi. Il tempo di propagazione di un segnale può infatti essere tradotto
direttamente in distanza, una volta nota la velocità di propagazione del segnale
nel mezzo. Queste tecniche usano di solito segali RF, acustici, infrarosso ed
ultrasuono. Per quanto concerne le tecniche TOA, la distanza tra un nodo
ricevente ed un reference point, può essere calcolata dalla misura del tempo di
arrivo (time of flight) del segnale di comunicazione tra i due, solitamente
ricavato con la tecnica di "avanzamento temporale". Questa tecnica è usata nel
sistema GPS e nell'LPS.
33 Il principio di funzionamento del TOA è il seguente:
• Location parameters: ritardi di propagazione distanza fra il terminale e
la RS (Sistemi di Radiolocalizzazione)
• Numero (minimo) di RS: 3
• Necessario sincronismo fra i terminali e la conoscenza dell’istante di
trasmissione
Figura 2.8 : Esempio di TOA
Alternativamente, nelle tecniche TDOA il tempo di percorrenza può essere
calcolato attraverso esplicite misure del tempo di arrivo sulla base di due distinte
modalità di comunicazione, ad ultrasuoni e via radio. Queste due modalità
viaggiano a velocità enormemente diverse; il segnale radio può essere usato per
sincronizzare il trasmettitore ed il ricevitore, mentre il segnale ad ultrasuoni può
essere usato per il ranging. I sistemi ad ultrasuono comunque non funzionano in
ambienti outdoor, poichè utilizzano tutti un'unica frequenza di trasmissione (40
KHz), perciò c'è un elevata possibilità di interferenza con gli altri sistemi ad
ultrasuoni.
Il principio di funzionamento del TOA è il seguente:
• Location parameters: differenze di ritardi di propagazione
delle
distanze fra il terminale e due RS (Sistemi di Radiolocalizzazione)
• Numero (minimo) di RS: 3
• Necessario sincronismo fra i dispositivi : può non essere necessario
conoscere gli istanti di trasmissione (“filtrati” dalla differenza)
34 Figura 2.9 : Esempio di TDOA
2.2.1.3 AOA
I metodi AoA utilizzano l'angolo di arrivo del segnale proveniente da più RS,
attraverso semplici relazioni geometriche si risale alla posizione del nodo
(tecniche di triangolazione). Un'altra tecnica basata sulla direzionalità, che viene
utilizzata nelle reti cellulari, è rappresentata dal trovare un piccolo angolo di
apertura. Questa tecnica richiede una complessa schiera di antenne in ognuna
delle celle. Tali antenne possono, in via di principio, determinare insieme
l'angolo relativo alla cella dal quale il segnale cellulare ha avuto origine. Nel
momento in cui le celle riescono a determinare il loro rispettivo angolo di arrivo,
si può stimare la posizione del telefono cellulare attraverso la triangolazione. I
metodi basati sulla direzionalità non sono molto efficienti negli ambienti indoor,
a causa del multipath.
Il principio di funzionamento del AOA è il seguente:
• Location parameters: direzioni di arrivo
• Numero (minimo) di RS: 2
• Si utilizzano schiere adattative, che “cercano” la direzione da cui proviene
il segnale irradiato dal terminale
• Nota che l’errore cresce con la distanza
35 Figura 2.10 : Esempio di AOA
2.2.2 Fase 2 : Tecniche di Combinazione
Questa è la seconda fase degli algoritmi di localizzazione. Dopo che è stato
applicato un metodo di stima tra quelli prima descritti, si procede
all'applicazione di formule matematiche o relazioni geometriche che,
combinando assieme le varie grandezze, permettono di stimare la posizione. La
Trilaterazione Iperbolica e la Massima Verosimiglianza si utilizzano quando è
nota la distanza, mentre la Triangolazione si utilizza quando si conoscono gli
angoli.
2.2.2.1 Trilaterazione Iperbolica
Questa tecnica è la più semplice ed intuitiva: la localizzazione si basa
sull'intersezione di tre circonferenze. La posizione del nodo è calcolata
risolvendo il sistema delle 3 equazioni di tre circonferenze centrate sugli Access
Point che circondano il nodo da localizzare.
36 In cui (X,Y,Z) sono le coordinate degli Access Point, mentre R sono le distanze
dal nodo agli Access Point. Gli U sono le coordinate dell’incognita, cioè del
nodo da trovare.
Figura 2.11 : Trilaterazione Iperbolica
2.2.2.2 Triangolazione
Questa tecnica è usata quando sono note le direzioni, e non le distanza, stimate
con il metodo AoA. Le posizioni dei nodi sono calcolate attraverso le leggi
trigonometriche di seno e coseno.
Figura 2.12 : Triangolazione
Dalla figura si possono ricavare le seguenti equazioni per la risoluzione.
37 2.2.2.3 Massima Verosimiglianza
La Tecnica di Massima Verosimiglianza, anche nota come Tecnica di
Multilaterazione, stima la posizione di un nodo minimizzando le differenze tra la
distanza misurata e la distanza stimata. In figura seguente il nodo azzurro è il
nodo da individuare mentre i nodi neri sono i riferimenti che si possono
utilizzare:
Figura 2.13 : Massima Verosimiglianza
Per ogni Access Point che il sensore è in grado di contattare viene generata
un’equazione che rappresenta la differenza fra la distanza misurata e quella
euclidea:
Dove (x0,y0) è la posizione stimata dal sensore in esame, t0 è il tempo che
impiega un segnale ultrasuono per propagarsi dall’Access Point i al sensore, s è
la velocità di propagazione di un segnale ultrasuono mentre l’indice i và da 1 a
N dove N è il numero totale di Access Point che il sensore è riuscito a
contattare.
2.2.3 Sistemi esistenti
Esistono molti sistemi esistenti, in seguito verranno descritti i sistemi RADAR e
NIBBLES. RADAR è un sistema per localizzare un utente,basato su segnali RF
mediante WLAN. NIBBLES è un sistema che può apprendere le posizioni da
localizzare.
38 2.2.3.1 Sistema RADAR
In questo sistema viene utilizzata una rete wireless basata su standard IEEE
802.11. La tipologia di rete utilizzata è ad infrastruttura, ossia con degli Access
Point che gestiscono le comunicazione tra i vari terminali. I terminali mobili,
affinchè possano essere localizzati, devono essere equipaggiati di apposita
scheda wireless. La posizione degli Access Points è fissa nel tempo, inoltre si
suppone che essi sia sempre connessi alla rete elettrica e dati. Gli AP
trasmettono periodicamente un pacchetto di beacon che contiene anche
informazioni riguardanti la potenza e l'identificativo dell'AP che ha trasmesso il
pacchetto. In questo sistema vengono utilizzati 3 AP posizionati in modo
opportuno nell'ambiente indoor.
Il metodo di localizzazione adottato in questo sistema è composto da due fasi:
• fase off-line: il sistema viene calibrato e viene costruito un modello basato
sulla potenza ricevuta in diverse posizioni note all'interno dell'area di
riferimento
• fase on-line: in questa fase, i terminali mobili acquisiscono i campioni di
potenza dai vari AP e il sistema software, in base a questi valori di
potenza, determina la posizione incognita elaborando in maniera
opportuna i valori di potenza ricevuti con quelli off-line.
Per l'acquisizione delle potenze in entrambe le fasi viene utilizzato il metodo
RSSI.
FASE OFF-LINE
In questa fase vengono memorizzati i valori di potenza ricevuti dai terminali
mobili in funzione della posizione. Per ogni posizione (x,y) vengono registrate
le potenze ricevute da tutti gli AP. Dalle misure effettuate, è risultato che la
potenza ricevuta in una data posizione, dipende anche dall'orientamento, infatti
in una delle direzione µe presente il line of sight (LOS) con un AP. Per ogni
posizione vengono collezionati al massimo 20 campioni di potenza.
Successivamente, questi dati vengono raggruppati e per ogni terna (x,y,z)
vengono calcolate media, deviazione standard e mediana delle potenze ricevute
dai vari AP. Questo insieme di dati viene definito signal space.
FASE ON-LINE
In questa fase bisogna raccogliere i campioni di potenza del terminale mobile
provenienti dagli AP. Per determinare la posizione bisogna cercare, tra l'insieme
dei dati off-line (signal space), il punto che presenta migliore corrispondenza nel
39 senso delle potenze. Questa tecnica viene definita nearest neighbor in signal
space (NSSS). L'idea base è quella di calcolare le distanze (nell'insieme signal
space) tra i valori di potenza misurati (ss1,ss2,ss3) e i valori registrati
(ss1’,ss2’,ss3’) nelle posizioni off-line, per poi scegliere la posizione che
minimizza le distanze. Le metriche che potrebbero essere utilizzate sono la
distanza Euclidea, la distanza di Manhattan o una metrica pesata con i livelli di
potenza ricevuti dai vari AP.
2.2.3.1 Sistema NIBBLES
In questo sistema, si è preferito utilizzare un approccio mediante rete Bayesiana
(Bayesian Network), che può "apprendere" le posizioni note all'interno
dell'ambiente utilizzato per la localizzazione. Data la struttura modulare di tale
rete, il sistema risulta molto flessibile quando gli Access Point sono
aggiunti/rimossi o riconfigurati spazialmente. Un ulteriore vantaggio è che le
informazioni contestuali, come la probabilità che il proprietario di un terminale
può appartenere ad una data locazione, può essere facilmente integrata nel
modello della rete Bayesiana. Un'altra importante considerazione è che la
potenza, in un canale wireless, è molto oscillante; questo è causato dalla
presenza e dalla mobilità delle persone e degli oggetti all'interno dell'ambiente.
Questo rumore viene trattato dalla rete, la quale assegna delle probabilità alle
locazioni fisiche.
UCLA Multimedia System Lab ha ideato e implementato il Multi-Use Sensor
Enviroment (MUSE), un sistema a struttura middle-ware per reti di sensori,
basato proprio su un modello a rete Bayesiana. Successivamente è stato
sviluppato un sistema di localizzazione per rete Wi-Fi basato su questa
architettura, ed è stato costruito Nibble, una versione che non richiede hardware
aggiuntivo oltre la scheda di rete.
STRUTTURA DEL SISTEMA
Una rete a infrastruttura basata su IEEE 802.11 consiste in un elevato numero di
terminali Wireless (client) e diversi Access Points che agiscono da ponte tra la
rete wireless e la rete locale LAN. I client si associano con l'AP che fornisce la
massima RSSI (Receive Signal Strength). Quando i client si muovono,
periodicamente fanno una scansione degli AP per determinare da quale di questi
ricevono il massimo RSSI, in modo tale da effettuare un roaming con l'AP che
fornisce il migliore livello di potenza. È possibile calcolare le posizioni di un
client utilizzando la tecnica RSSI. Come già detto, per calcolare la posizione di
40 un client, Nibble sfrutta una struttura modulare probabilistica basata su rete
Bayesiana. L'approccio tramite modello probabilistico permette di creare un
robusto sistema di localizzazione con una generale, quantificabile misura delle
prestazioni, informazioni aggiuntive facilmente incorporabili, come la storia del
percorso seguito da un client. Nibble sfrutta un sistema detto fusion service per
calcolare le posizioni di un client sfruttando misure di potenza tra il terminale
mobile e gli Access Points presenti nell'ambiente.
Un fusion service ha due componenti:
• un modello che raccoglie e interpreta informazioni dai sensori
• un modello di ottimizzazione delle risorse per minimizzare la raccolta dei
dati dai sensori
I dati provenienti dai sensori vengono caratterizzati in modo probabilistico e poi
vengono usati come input per il fusion service. L'output del fusion service è una
distribuzione di probabilità di una variabile casuale che rappresenta i dati
dell'ambiente. Questo processo è necessario poichè le informazioni provenienti
dai sensori, come la potenza del segnale ricevuto, possono o essere affette da
rumore o temporaneamente non disponibili o di livello troppo basso per essere
immediatamente utilizzati da un applicazione. In Nibble, la parte interpretativa
del fusion service è una rete bayesiana. Una rete Bayesiana è una
rappresentazione grafica della distribuzione di probabilità congiunta che
esplicitamente dichiara relazioni di dipendenza tra variabili casuali nella
distribuzione. Poichè queste relazioni sono dichiarate, la distribuzione di
probabilità congiunta può essere costruita in maniera modulare, in modo tale da
rendere possibili elaborazioni su questa distribuzione. In questo sistema la
struttura modulare della rete Bayesiana facilita la costruzione di un sistema
component-based, dove gli outputs di un fusion service vengono utilizzati come
inputs di un altro. Sotto viene mostrato un esempio di rete Bayesiana:
Figura 2.14 : Esempio di rete Bayesiana
41 La rete è costituita da una struttura ad albero dove, partendo dal nodo radice, si
arriva agli altri nodi. Gli archi di connessione tra i nodi indicano una relazione di
dipendenza tra il nodo radice e il nodi terminali. Il nodo radice è la variabile
"query" che descrive la distribuzione di probabilità a priori p(L) su un numero di
locazioni fisiche L. I nodi terminali della rete rappresentano delle variabili
osservabili che descrivono la distribuzione marginale di probabilità condizionata
p(E|L), data dai valori osservati E dai sensori posizionati in vi. Data questa rete,
possiamo leggere i valori R da tutti gli m sensori e calcolare p(L|R) che
rappresenta la distribuzione di probabilità a posteriori di L, cioè la probabilità
che un terminale mobile si trovi nella posizione vi dato che i sensori hanno
misurato R. In generale, ogni nodo della rete può essere interrogato per
determinare la posizione. Per esempio si può interrogare il nodo con la query
p(s1 = e1|L = v3,s2 = e3), ossia la probabilità che il sensore s1 ha letto e1 dato
che il terminale si trova nella locazione v3 e il sensore s2 ha letto e3. La figura
2.14 include anche un nodo che rappresenta il rumore che disturba le misure
fatte dai sensori.
In una rete Bayesiana per determinare le posizioni, i valori di L ed E sono
diverse
quantizzati in valori discreti. Nibble teoricamente può discriminare
locazioni utilizzando una rete Wi-Fi, dove n rappresenta il numero dei valori di
uscita di un sensore e s è il numero degli Access Point. Tuttavia, la tipologia e la
struttura degli edifici , così come il rumore presente nelle misure dei sensori,
influenzano negativamente il numero di posizioni che Nibble può distinguere.
42 Capitolo 3
Localizzazione di un oggetto mobile indoor
In questo capitolo verrà spiegato l’algoritmo di localizzazione utilizzato. In
particolare viene studiata la localizzazione di un carrello mobile in un
supermercato e come il numero di sensori utilizzati, i rumori presenti
nell’ambiente, i punti della griglia possano influenzare la sua localizzazione.
Verranno fatti inoltre dei confronti con un altro algoritmo di localizzazione
creato dal professore Gianluca Mazzini e dalla professoressa Chiara Taddia e se
ne studieranno eventuali miglioramenti e/o peggioramenti.
3.1 Descrizione progetto
L’obiettivo del progetto è la realizzazione di un semplice algoritmo di
localizzazione di un oggetto mobile in ambiente indoor. In particolare il caso
reale che si và ad affrontare è la localizzazione di un carrello della spesa in un
supermercato. Nel soffitto della stanza sono posti dei sensori, che chiameremo
beacon, che fungono da ricevitori radio e verranno posti a griglia per semplicità.
Il carrello della spesa è l’oggetto mobile che si muove in una stanza ed è
equipaggiato da un trasmettitore che emette un segnale di potenza che verrà poi
raccolto ed elaborato da uno o più beacon. Il progetto mira anche a vedere
l’impatto che si ha nella localizzazione avendo a disposizione la totalità o la non
totalità dei beacon, eventuali rumori presenti all’interno della stanza (esempio
persone, altri carrelli, dispositivi elettrici, muri etc..), i punti della griglia per
effettuare la localizzazione; in particolar modo si valuta come questo influenzi
un fattore che chiameremo “errore di localizzazione”, cioè si misura la posizione
del carrello prima e dopo la localizzazione e la differenza sarà il nostro errore.
Vedremo come, utilizzare vari tipi di calcolo della differenza tra due punti,
influisca sull’errore di localizzazione. Inoltre più rumore è presente più l’errore
tenderà ad incrementare. Ultima precisazione: i beacon sono caratterizzati da un
identificativo che servirà per identificare quelli che si possono utilizzare o no
(troppo lontani, troppo affetti da errori, sensore rotto) e da delle coordinate in
cui sono posti. I carrelli sono caratterizzati da delle coordinate e da un
identificativo.
43 Il progetto è suddiviso in due fasi, una fase che chiameremo OFF-LINE e una
fase che chiameremo ON-LINE.
3.1.1 Fase OFF-LINE
Fase OFF-LINE : per la fase off-line si è adottata una strategia di tipo RSS.
Innanzitutto si fa un’analisi della scena per vedere eventuali ostacoli e come è
creato l’ambiente in cui verrà effettuata la localizzazione. Poi si fa circolare il
carrello equipaggiato di un trasmettitore attraverso i punti della griglia e si
memorizzano per ogni punto la distanza (come vedremo le distanze utilizzate
nel mio algoritmo sono quelle di Manhattan e Chebyshev e verranno messe a
confronto con quella euclidea usata nell’algoritmo Mazzini/Taddia) tra esso e
tutti i beacon. Tali distanze trovate corrisponderanno alle nostre potenze.
Esempio se ho il punto della griglia di coordinate (1,1) e ho 4 beacon su tale
griglia, allora verranno memorizzate 4 potenze per il punto (1,1).
3.1.2 Fase ON-LINE
Fase ON-LINE : la fase on-line è la vera e propria fase di localizzazione in cui si
localizza il dispositivo mobile. Per vedere cosa influenzi la localizzazione in
questa parte viene studiata la localizzazione di un solo carrello. Per calcolare
quindi la posizione di tale dispositivo mobile basta calcolare la differenza tra le
potenze conosciute memorizzate nella fase OFF-LINE e quella del dispositivo
mobile sconosciuta. Visto che si è deciso che la potenza corrispondesse alla
distanza tra il dispositivo sconosciuto e uno o più beacon conosciuti, per
calcolare tale distanza si sono utilizzate varie metodologie per vedere qual è la
migliore da utilizzare per la localizzazione. Quindi la metodologia migliore sarà
quella che renderà minimo il nostro errore di localizzazione (errore = differenza
tra posizione del carrello trovata e quella effettiva).
3.2 Descrizione dell’ambiente
L’ambiente in cui verrà effettuata la localizzazione è un supermercato. La nostra
simulazione viene fatta utilizzando un modello creato dal professor Mazzini e
dalla professoressa Taddia e tale modello è il seguente :
la stanza del supermercato viene vista come un parallelepipedo di dimensioni
“tot_metri_x X tot_metri_y X altezza”, in particolare le simulazioni avverranno
44 in una stanza quadrata quindi si avrà tot_metri_x = tot_metri_y. Il soffitto del
nostro supermercato viene visto come una griglia e la distanza tra le celle che la
compongono verrà chiamata “DELTA”. Verranno posizionati dei beacon sulla
griglia, tali beacon sono i nostri radio ricevitori e verranno posti ad una distanza
tra loro che chiameremo ad esempio “m”. m corrisponderà quindi ad un tot di
punti DELTA e verrà espresso in metri.
I punti che compongono la nostra griglia saranno quindi:
tot_punti = (tot_metri_x/DELTA + 1)*(tot_metri_y/DELTA +1)
In seguito viene mostrato uno degli scenari che si può creare avendo a
disposizione 4 beacon.
Figura 3.1 : Esempio di scenario utilizzato
In questo ambiente quindi ci sarà da localizzare il nostro carrello le cui
coordinate potranno essere coincidenti con quelle di un particolare punto della
griglia o trovarsi all’interno dei quadratini.
45 Figura 3.2 : Esempio di posizione di un carrello
Se il carrello si trova su uno dei punti della griglia allora la localizzazione sarà
perfetta, mentre se si trova all’interno di un quadratino allora si avrà un errore di
localizzazione che non sarà altro che la differenza tra le coordinate del punto
della griglia utilizzato per la localizzazione e le coordinate del carrello da
localizzare. Questo errore verrà dato da:
errore =
per l’errore non teniamo conto dell’altezza poiché non influisce sulla
localizzazione. Per default teniamo che l’altezza del trasmettitore posto sul
carrello sia di 1 metro da terra, l’altezza dei ricevitori posti sul soffitto sia di 7
metri da terra e la lunghezza dei quadratini, cioè la grandezza DELTA, sia di 1
metro (questi valori sono modificabili per esigenze strutturali o di funzionalità).
3.2.1 Condizioni ideali – senza rumore
Il progetto si divide in vari spezzoni. Questo studio riguarda l’impatto che si ha
avendo a disposizione un ambiente ideale, cioè libero da
• rumori causati da dispositivi elettrici (cellulari, computer etc...)
• interferenze tra i sensori
• interferenze con altri trasmettitori
• ostacoli (muri, persone, tavoli etc…)
che possono causare attenuazione del segnale o calcoli errati nella
localizzazione.
Questo caso non è realizzabile in uno scenario reale in quanto è impossibile
esista un ambiente ideale senza quanto descritto sopra, ma un ambiente privo di
46 rumore ci serve come prima analisi per capire che cosa può influenzare la
localizzazione e quali parametri ne influenzino la precisione. Come già detto un
parametro che può influenzare la localizzazione è il metodo per il calcolo della
distanza perché sono queste che vengono memorizzate e servono per la
localizzazione. Ad esempio le distanze si possono vedere come :
Figura 3.3 : Esempio di mappatura della coordinata (0,0)
In figura viene mostrato l’esempio sopra in cui le frecce blu identificano le
potenze (distanze dalla coordinata 0,0 ai beacon). Come già detto verranno
memorizzate 4 potenze relative a quel punto.
Altri fattori che influenzano la localizzazione, come vedremo, sono il numero di
beacon presenti nella griglia e utilizzabili, la distanza tra i beacon, la grandezza
dei quadratini che compongono la griglia.
3.3 Metodi usati per il calcolo della distanza
Il modello di riferimento adoperato usa la distanza euclidea per
• calcolare le potenze tra i punti della griglia e i beacon inseriti. L’entità
centrale che si occupa della localizzazione memorizza per ogni punto che
compone la griglia la distanza tra il punto e ogni beacon inserito.
• calcolare la posizione del dispositivo mobile da localizzare. Una volta che
l’entità ha ricevuto la potenza dal trasmettitore si utilizza la distanza
euclidea tra carrello e i beacon e si tiene quella minore.
47 Notiamo quindi che il calcolo della distanza tra i vari punti, beacon e carrello
influisca sull’errore di localizzazione. Proviamo quindi a migliorare l’algoritmo
di localizzazione usando altre metodologie per il calcolo della distanza invece
che quella euclidea.
3.3.1 Metodo esistente : distanza Euclidea
Il modello che si prende in considerazione è stato creato dai professori Mazzini
e Taddia e, come già detto, utilizza la distanza euclidea. La distanza euclidea è
la tipica distanza fra due punti che si potrebbe misurare con un righello, che può
essere ottenuta dall'applicazione ripetuta del teorema di Pitagora. Usando questa
formula come distanza, lo spazio euclideo diventa uno spazio metrico (più in
particolare risulta uno spazio di Hilbert). La letteratura tradizionale si riferisce a
questa metrica come metrica pitagorica. Ad esempio dati due punti in tre
dimensioni
e
la distanza è calcolata come
3.3.2 Metodo creato : distanza Manhattan
Formalmente, si può definire la distanza nella geometria del taxi (in inglese
Manhattan distance), indicata come distanza L1, tra due punti nello spazio
euclideo con un fissato sistema di coordinate cartesiane, la somma delle
lunghezze delle proiezioni sugli assi cartesiani dei segmenti che congiungono i
due punti. Per esempio, nel piano, la distanza L1 tra due punti P1 di coordinate
(x1,y1) e il punto P2 di coordinate (x2,y2) è
L1(P1,P2) = | x1 − x2 | + | y1 − y2 | .
Si noti che la distanza L1 varia se il sistema di assi cartesiani ruota, mentre è
invariante per traslazioni degli assi o per riflessioni rispetto ad un asse
coordinato. La distanza L1 viene anche detta distanza del taxi, perché è la minore
distanza che dovrebbe essere percorsa da un'automobile per muoversi tra due
punti situati in una città suddivisa in isolati quadrati, come Manhattan o Torino
(tralasciando naturalmente i sensi unici e le eventuali strade oblique, e anche il
fatto che nelle città le strade esistono solo ai bordi degli isolati, non esiste la
3.14-esima strada). Ogni percorso che va da un punto a un altro punto situato 3
isolati a est e 6 isolati a nord dovrà essere lungo almeno 9 isolati. Tutte le strade
più dirette sono lunghe esattamente 9 isolati. Rispetto alla geometria euclidea,
48 nella geometria
g
del taxi non
n vale ill primo crriterio di congruenz
c
za dei trian
ngoli: è
possibiile generaare due triangoli
t
diversi av
venti duee lati e ll'angolo fra
f essi
compreeso ordinatamente congruennti. Riman
ne valido, invece, il postulatto delle
paralleele. Vediaamo ora un esemppio graficco mettenndolo a confronto con la
distanzza euclideaa :
Figgura 3.4 : Esempio
E
d distanza
di
a euclideaa e Manhaattan
metria dell taxi: le liinee rossa,, blu e giaalla hanno tutte la
Geomeetria eucliddea e geom
stessa lunghezzaa (12) sia nella
n
geom
metria eucclidea che in quella del taxi. La
L linea
nella geeometria euclidea, ma contiinua ad
verde ha lungheezza
l
a 12 in queella del taxxi (non è quindi
q
più corta dellle altre).
avere lunghezza
3.3.3 Metodoo creato : distanzza Cheby
yshev
l distanzaa di Chebbyshev, co
onosciuta anche
a
com
me distanzza della
In mattematica, la
scacchhiera, tra due
d punti p e q nelloo spazio eu
uclideo coon le coorddinate stan
ndard pi
and qi rispettivam
mente è:
La disstanza di Chebyshhev è unaa versionee finito-ddimensionaale della norma
uniform
me. In duee dimensiooni, per essempio nella geomeetria piana, se due pu
unti p e
q hannno coordinnate cartesiiane (x1,y1) e (x2,y2),
) la loro distanza
d
è
49 3.4 Differenze basilari tra i due algoritmi utilizzati
Passiamo ora ad analizzare e descrivere in maniera sostanziale le cose comuni e
le differenze tra i due algoritmi utilizzati.
Entrambi gli algoritmi eseguono le seguenti operazioni :
• creazione mappa : ogni elemento della mappa contiene le distanze trovate
in fase OFF-LINE tra il punto stesso della mappa e i sensori posti nella
mappa.
• Localizzazione del carrello tramite la mappa creata nella fase OFF-LINE.
La localizzazione viene fatta calcolando la distanza tra il carrello e i
sensori, serve per simulare eventuali errori di localizzazione.
La differenza sostanziale tra i due algoritmi sta nel calcolare la distanza con
metodologie differenti per vedere se si può migliorarne/peggiorarne le
prestazioni.
3.4.1 Creazione Mappa
L’algoritmo Mazzini/Taddia preso in esame utilizza per la creazione della
mappa la metodologia della distanza euclidea, tale algoritmo è il seguente :
Tale metodologia è stata riportata nel mio algoritmo per la simulazione e
confronto. La fase iniziale è la stessa per tutte e tre le metodologie utilizzate
poiché la mappa non è altro che un insieme di punti caratterizzati da delle
coordinate e appunto dalle potenze (distanze tra punto e sensori presenti nella
50 scena). L’algoritmo sopra è stato modificato per utilizzare il calcolo della
distanza con Manhattan nel modo seguente :
Come si nota dal codice la prima parte è uguale all’algoritmo Mazzini/Taddia
mentre la seconda parte è stata modificata per il calcolo della distanza con
Manhattan. Come vedremo in seguito i risultati ottenuti con questa metodologia
peggioreranno di molto le prestazioni dell’algoritmo e quindi si è cercato di
trovare una nuova metodologia di calcolo della distanza per migliorare le
prestazione dell’algoritmo.
Si è modificato quindi l’algoritmo di cui sopra usando la metodologia della
distanza di Chebyshev, nel modo seguente :
51 Anche in questo caso la prima parte è rimasta uguale mentre la seconda parte è
stata modificata. Come si vedrà in seguito dai risultati ottenuti, questa
metodologia è risultata la migliore in quanto produce un errore di localizzazione
del carrello (cioè differenza tra posizione reale del carrello e quella stimata
dall’algoritmo) minore delle altre tre metodologie.
3.4.2 Localizzazione
Una volta creata la mappa si passa, come ampiamente detto, alla localizzazione
vera e propria. Anche in questo caso per la localizzazione si utilizza il calcolo
della distanza tra i sensori disponibili per la localizzazione e il dispositivo
mobile da localizzare.
Entrambi gli algoritmi eseguono i seguenti passi :
• Creazione casuale delle coordinate del carrello da localizzare
• Localizzazione del carrello tramite le potenze dei sensori inseriti nella
mappa. Per ogni punto della mappa vado a trovare la somma delle
distanze minore tra carrello e beacon.
L’algoritmo Mazzini/Taddia utilizza la distanza euclidea anche per la
localizzazione una parte dell’algoritmo è il seguente :
La variabile somma servirà per calcolare il punto della mappa che ha tale
somma minore da utilizzare nella localizzazione.
Vediamo come modificando il calcolo della distanza tra i sensori e il carrello le
prestazione dell’algoritmo aumentino/peggiorino.
Per prima cosa, come nella creazione della mappa, ho provato a modificare
l’algoritmo come segue :
52 L’algoritmo sopra utilizza la distanza Manhattan ma come vedremo dai risultati
ottenuti in seguito le prestazioni dell’algoritmo peggiorano.
Quindi l’algoritmo è stato modificato utilizzando la metodologia di calcolo della
distanza di Chebyshev come segue :
Utilizzando questa metodologia, come si vedrà in seguito dai risultati ottenuti, le
prestazioni dell’algoritmo migliorano rispetto quello di Mazzini/Taddia.
3.5 Confronto e analisi dei risultati
Passiamo ora all’analisi dei risultati ottenuti confrontandoli con quelli
dell’algoritmo già esistente.
Vediamo come, calcolare la distanza tra i punti della griglia e i beacon con
diverse metodologie, influisca sull’errore di localizzazione. Tenendo inalterati i
parametri DELTA e m vediamo come influiscono le varie metodologie. Le
metodologie utilizzate sono :
• distanza euclidea usata dai professori Gianluca Mazzini e Chiara Taddia
• distanza di Manhattan usata da me
• distanza di Chebyshev usata da me
questo ci servirà per trovare la metodologia migliore per la localizzazione.
Prendiamo come simulazione un ambiente composto da una distanza tra i
beacon di 5 metri, il parametro DELTA di 1 metro (grandezza della cella che
compone la griglia) e variamo il numero di beacon per lato nel nostro scenario.
53 Vediamo come varia l’errore di localizzazione di un oggetto utilizzando tre
diverse metodologie di calcolo della distanza.
Figura 3.5 : Confronto di diverse metodologie per il calcolo della distanza
Dal grafico possiamo notare come il differenziarsi del calcolo della distanza
influisca particolarmente sull’errore di localizzazione. Vediamo come se si usa il
metodo Manhattan l’errore sia molto grande, mentre se utilizziamo le distanze di
Euclide o di Chebyshev queste si equivalgano anche se si ottengono risultati
migliori utilizzando Chebyshev.
Vediamo ora se modificando i parametri DELTA e m cambia qualcosa.
Per prima cosa proviamo a vedere se modificando il parametro DELTA queste
metodologie influiscono. Aumentiamo il parametro DELTA da 1 metro a 2
metro (ciò significa che la distanza tra i punti della griglia è 2 metri).
54 Figura 3.6 : Confronto di diverse metodologie per il calcolo della distanza,
aumentando il parametro DELTA
Dal grafico si può notare come i risultati ottenuti non dipendono dal parametro
DELTA, infatti confrontando i due grafici non si notano differenze tra le tre
metodologie. L’errore di localizzazione come si nota da questi due grafici
dipende fortemente dal parametro DELTA in quanto a parità di metodologie
l’errore è aumentato di quasi il doppio.
Proviamo ora a variare il parametro m (cioè la distanza che separa due beacon
adiacenti). Proviamo a passare da un m uguale a 5 metri a un m uguale a 30
metri per vedere se le tre metodologie influiscono sull’errore.
55 Figura 3.7 : Confronto di diverse metodologie per il calcolo della distanza,
aumentando il parametro m
In questo caso si può notare come aumentando il parametro m l’errore di
localizzazione varia soltanto se si usa una metodologia Manhattan mentre per i
metodi di Euclide e Chebyshev non varia. Se confrontiamo questo grafico con il
precedente si nota che mentre variando il parametro DELTA l’errore aumenta
per tutte e tre le metodologie, mentre variando m varia soltanto l’errore per la
distanza Manhattan.
3.5.1 Conclusioni sui risultati ottenuti
Dalle prove e dai grafici ottenuti fin’ora possiamo fare qualche conclusione.
Se utilizziamo un valore unico per il parametro DELTA allora l’errore dipende
dal numero di beacon che si utilizzano per la localizzazione. Più beacon
utilizziamo più avremo la possibilità di utilizzarne uno molto vicino al carrello
da localizzare, mentre meno beacon abbiamo meno possibilità avremo di avere
un sensore vicino al carrello per la localizzazione.
Se cominciamo a variare il parametro DELTA allora l’errore dipende molto da
questo parametro. In particolare più aumentiamo DELTA più l’errore aumenta
in maniera significativa (quasi il doppio per mezzo metro) proprio perché il
56 nostro carrello si potrà trovare in un quadratino più grande e quindi sarà più
lontano dai punti “conosciuti” della griglia.
Per quanto riguarda le metodologie per il calcolo della distanza cioè Euclide,
Manhattan e Chebyshev, notiamo come solo Manhattan dipenda molto dal
parametro m mentre le altre metodologie no. Prendendo in considerazione il
parametro DELTA le tre metodologie si comportano in ugual maniera. Per
minimizzare quindi l’errore di localizzazione bisogna adoperare la distanza di
Chebyshev.
3.6 Problematiche nella fase OFF-LINE
Può succedere che durante la fase OFF-LINE del nostro algoritmo, alcuni
sensori non funzioni e quindi non possono essere utilizzati per la localizzazione.
Le cause che portano al malfunzionamento dei beacon sono molteplici:
• rottura del sensore
• scaricamento della batteria del sensore stesso
Può succedere inoltre che ci siano persone e ostacoli che interferiscono nella
nostra fase OFF-LINE. Questo può causare interferenze e rumore e rendere
inutilizzabile un beacon poiché viene “oscurato”. Per vedere come un beacon
attivo o non attivo influenzi la localizzazione, nell’algoritmo dei professori
Mazzini e Taddia è stato introdotto il concetto di probabilità dei beacon. Tale
concetto rappresenta la probabilità che un beacon sia utilizzabile o meno nella
fase OFF-LINE. Se un beacon non è attivo non si può utilizzare la sua potenza
per la localizzazione di un carrello. La probabilità, per semplicità, è stata
considerata come uniformemente distribuita. La probabilità che un beacon sia
attivo o meno influisce, come vedremo, nell’errore di localizzazione. Noteremo
infatti come la presenza di meno beacon nella griglia possa incrementare in
modo esponenziale l’errore di localizzazione.
Il mio scopo è quello di vedere se, utilizzando varie metodologie di calcolo della
distanza, l’errore di localizzazione ne è influenzato o meno poiché, come
ampiamente detto, l’errore di localizzazione dipende fortemente dal numero di
sensori posti nella griglia.
Ad esempio prendiamo il caso in cui si abbiano a disposizione 5 beacon per lato
(25 beacon totali nella griglia), e vediamo come l’errore di localizzazione si
comporta variando la probabilità di togliere uno o più beacon dalla griglia.
Prendiamo come valore del parametro m (distanza tra 2 sensori) una distanza
pari a 10 metri e il parametro DELTA (lunghezza delle celle che compongono la
griglia) uguale a 1 metro.
57 Figura 3.8 : Grafico della probabilità del numero di beacon
Prima di analizzare il grafico soprastante dobbiamo precisare che più la
probabilità è alta, più si tolgono beacon dalla griglia. Infatti se la probabilità è 0
si ottengono gli stessi risultati avuti fino adesso, mentre se la probabilità è 0.9 se
ne ottengono di diversi.
Notiamo dal grafico come l’errore dipende molto dal numero di beacon presenti
nella griglia, infatti più la probabilità è alta e più l’errore di localizzazione
aumenta in maniera esponenziale.
Le metodologie di calcolo della distanza euclidea e di Chebyshev si
equivalgono, in alcuni punti assumono addirittura lo stesso valore mentre la
metodologia Manhattan assume anche in questo caso valori più altri rispetto alle
altre due metodologie. Con gran sorpresa però l’errore di localizzazione non
varia enormemente come nei risultati ottenuti fino ad ora.
In conclusione quindi si può affermare con certezze che le metodologie migliori
che si possono utilizzare per il calcolo della distanza nella localizzazione sono
sia quella euclidea sia quella di Chebyshev anche se quella Chebyshev tende ad
essere leggermente migliore per i casi visti fin’ora.
58 3.7 Introduzione del rumore nell’ambiente ideale
Fino ad ora abbiamo considerato un ambiente ideale privo di rumori su cui
effettuare delle prove per vedere che fattori influiscono sulla localizzazione di
un dispositivo in ambiente indoor. Un ambiente così ideale non può esistere
poiché la sola presenza del pavimento e dei muri influisce di molto sul segnale
da trasmettere.
Per avere un piccolo esempio di quanto detto basta considerare i seguenti
modelli :
• Perdita in spazio libero. La perdita in spazio libero è espressa nella
seguente formula:
Lfs = A + B log10 (d)
in cui d è la distanza dal trasmettitore ed I coefficienti A e B dipendono
dalle caratteristiche dell’ ambiente
• Modello di attenuazione dalle pareti. Il modello di attenuazione dovuto ai
muri/pareti è dato dalla seguente formula:
Lwall = Wf1*n1 + Wf2*n2 +……..+ Wfw*nw
In cui nw è il numero di muri/pareti attraversate mentre Wfw è il fattore di
muro dipendente dal materiale di cui è fatta la parete. La tabella seguente
fornisce alcuni valori dell'attenuazione per diversi ostacoli a 60 GHz:
MATERIALE
cemento
vetro
vernice
gesso
ATTENUAZIONE A 60 GHz
71.5 dB
2 dB
2 dB
8 dB
• Modello di attenuazione del pavimento. Il modello di attenuazione dovuto
al pavimento è espresso dalla formula seguente:
Lfl = Ff1*m1 + Ff2*m2 + …….. + Fff*mf
In cui mf è il numero di pareti che viene attraversato e Fff è un coefficiente
che caratterizza il pavimento f-simo.
A questi esempi bisogna aggiungere anche la presenza di eventuali ostacoli
come banconi, sedie, cavalletti etc…, e la presenza di clienti e dell’operatore
stesso che effettua la fase OFF-LINE.
59 Per siimulare la
l presennza di rumore
r
all’interno
a
del nosstro l’am
mbiente,
nell’alggoritmo di
d localizzzazione dei profeessori Maazzini e Taddia è stato
introdootto il rum
more gausssiano. Nell mio algo
oritmo, innvece, introdurrò il rumore
di Rayyleigh e meetterò a coonfronto i vari risulttati ottenuuti.
3.7.1 Rapporrto segnaale/rumoore
Il rappporto segnnale/rumorre, spesso abbreviatto con la sigla ingleese SNR (Signal
to Noiise Ratio) o S/N annche nell''uso italiaano, è unaa grandezzza numeriica che
mette in
i relazionne la potenza del seegnale utille rispettoo a quella del rumorre in un
qualsiaasi sistemaa di acquisizione, elaborazion
ne o trasm
missione dell'inform
mazione.
Può essere appliicato indiffferentemeente a sisteemi di nattura ottica,, elettronicca, ecc.
mentale nelll'ambito del
d trattam
mento dei segnali
e si traatta di unaa grandezzza fondam
e dellaa teoria dell'inform
mazione. Un
U qualsiaasi sistemaa che debbba traspo
ortare o
trattaree informazzioni è inffatti affettoo da rumore, primo fra tutti ill rumore teermico.
Il rappporto seggnale/rumoore è un numero puro, daato dal raapporto fra
f due
grandeezze omoggenee, chee esprime quanto il segnale sia
s più potente del rumore
nel sisttema conssiderato. È espresso dalla relaazione:
dove Psegnale è laa potenza del segnaale utile e Prumore la potenza ttotale del rumore
presente nel sistema, granndezze queeste solitam
mente esppresse in w
watt o dBm
m. È un
m
mollto importtante per il dimenssionamentto dei sisttemi di
parameetro di merito
telecom
municaziooni. Più è basso
b
l'SN
NR, infattii, e più sarrà difficolltosa la riccezione
del segnale. Neel caso di
d trasmissioni anaalogiche una
u
diminnuzione di
d SNR
mina un deeperimentoo graduale della qu
ualità del segnale riicevuto (ssi pensi
determ
ad eseempio ad una radio FM chhe ricevee male o ad un televisore in cui
compaaiono auddio o viddeo distuurbati: tip
pici casi di SNR basso); per le
trasmisssioni anaalogiche tuuttavia è l'uutente finaale a stabiilire una sooglia di frruibilità
del sistema. La
L soglia minima di SNR
R è deterrminata ddalla tecn
nologia
p
dii un sistem
ma di telecomunicaazioni il
dell'apparato riccevente; inn fase di progetto
n SNR
primo obiettivoo è quinndi quelloo di far perveniree al riceevitore un
F
il rapporto segnale/ruumore è uno
u dei
sufficieentementee elevato. In Alta Fedeltà
parameetri di merito fondaamentali, anche
a
se non
n l'unico, per la vvalutazion
ne delle
prestazzioni di unn impiantoo per quelllo che con
ncerne la pulizia
p
dell suono prrodotto,
tanto che
c i pream
mplificatoori di fasciia alta son
no realizzaati in due ddistinti tellai, uno
contennente il circuito ampplificatore,, l'altro il circuito
c
allimentatorre.
60 3.7.2 Rumore Gaussiano
A causa della sua trattabilità matematica sia nel dominio spaziale che nel
dominio delle frequenze, i modelli di rumore Gaussiano (detto anche normale)
sono usati frequentemente in pratica. Questa trattabilità è così conveniente che
spesso i modelli Gaussiani vengono usati in contesti in cui sono applicabili solo
marginalmente.
La PDF di una variabile Gaussiana casuale z è data da :
dove z rappresenta la nostra variabile, μ è il valor medio di z, e σ è la sua
deviazione standard. La deviazione standard quadrata è detta varianza di z. Il
grafico di questa funzione è :
Figura 3.9 : Distribuzione di Gauss
Quando z è descritto dalla relazione p(z), approssimativamente il 70% dei suoi
valori si troveranno nell’intervallo [(μ-σ),(μ+σ)] mentre il 95% sarà
nell'intervallo [(μ-2σ),(μ+2σ)].
TRASFORMAZIONE DI BOX-MULLER
La trasformazione di Box-Muller è un metodo per generare coppie di numeri
casuali indipendenti e distribuiti gaussianamente con media nulla e varianza
uno. La trasformazione viene comunemente espressa in due forme. La forma
principale è quella del lavoro originale: si campionano due numeri dalla
61 distribuzione uniforme sull'intervallo (0,1] e si ricavano de numeri distribuiti
normalmente. La forma polare campiona due numeri su un intervallo differente
([ − 1, + 1]) e permette di ricavare due numeri distribuiti normalmente senza
l'uso delle funzioni seno e coseno.
La forma polare funziona nel modo seguente : assegnati u e v, indipendenti ed
uniformemente distribuiti nell'intervallo chiuso [−1,+1], si pone s = R2 = u2 + v2.
Se s = 0 o s > 1, si trascurano u e v e si considera un'altra coppia (u,v). Si
continua fino a trovare una coppia con s nell'intervallo aperto (0,1). Dal
momento che u e v sono distribuiti uniformemente e poiché solamente i punti
all'interno della circonferenza unitaria sono stati accettati, anche i valori di s
saranno distribuiti uniformemente nell'intervallo aperto (0,1). Il valore di s si
identifica con quello della forma base, U1. I valori di cosθ = cos2πU2 e sinθ =
sin2πU2 nella forma base possono essere sostituiti con i rapporti
e
rispettivamente. Il vantaggio è
dato dalla mancata valutazione delle funzioni trigonometriche (che è
un'operazione più onerosa di un rapporto). Così come per la forma base, si sono
ottenute due variabili gaussiane a varianza unitaria.
e
Per generare due numeri casuali con distribuzione N(μ,σ2) si calcolano :
y1 = μ+σZ0 e y2 = μ+σZ1
3.8 Confronto e analisi dei risultati in ambiente non ideale
Analizziamo il caso in cui nel canale sia presente del rumore gaussiano. Il
rumore gaussiano è stato adoperato dai professori Mazzini e Taddia per simulare
presenze di interferenze nella localizzazione. Per inserire il rumore gaussiano
all’interno del nostro canale basterà sommare una distribuzione gaussiana ad
ogni potenza rilevata in fase OFF-LINE e alla fase di localizzazione.
Vediamo se utilizzando una metodologia di calcolo della distanza diversa ma la
stessa distribuzione gaussiana, si ottengono dei risultati diversi per vedere quale
localizzazione è meno affetta da errori.
62 Consideriamo quindi un ambiente con il parametro DELTA = 1, con il
parametro m = 10 metri, con un numero di beacon per lato di rispettivamente
3,4,5,6,7,8,9 . Variando il parametro SIGMA della distribuzione gaussiana e
quindi l’interferenza creata vediamo come l’errore di localizzazione varia.
Analizziamo ora i risultati da me ottenuti con la distanza di Chebyshev, la
distanza di Manhattan è stata esclusa a priori poiché dava un errore troppo alto.
Figura 3.10 : Distribuzione gaussiana con la distanza di Chebyshev
Come si può notare dal grafico, utilizzando la distanza di Chebyshev, l’errore di
localizzazione dipende fortemente dal parametro m.
Mettiamo ora a confronto i due algoritmi utilizzando lo stesso scenario descritto
sopra. L’algoritmo di confronto utilizza la distanza euclidea invece che quella di
Chebyshev.
63 Figura 3.11 : Distribuzione gaussiana : confronto tra i due algoritmi
Il grafico mostra il confronto dei risultati ottenuti inserendo come rumore la
distribuzione gaussiana. L’algoritmo da me creato è quello che ha come risultati
le linee rosse, mentre l’algoritmo di confronto ha come risultati le linee blu. La
variazione dei risultati viene fornita modificando il parametro SIGMA 0, 1, 3, 5
come mostrato in figura 3.10.
Si nota subito come più il parametro SIGMA aumenta e più l’errore di
localizzazione aumenta, tale errore aumenta anche se si aumentano il numero di
beacon presenti nella scena. Se si ha SIGMA = 0 allora si ricade nell’ambiente
ideale scritto sopra. Si nota anche come il mio algoritmo ha un errore di
localizzazione minore. Si può notare come l’errore con la distanza euclidea
cresca in maniera esponenziale rispetto alla lineare della distanza di Chebyshev.
3.8.1 Conclusioni sui risultati ottenuti in ambiente non lineare
Se nel nostro ambiente è presente del rumore e simuliamo tale rumore con una
distribuzione gaussiana allora, come visto dai grafici ottenuti, si può notare
64 come l’errore di localizzazione dipenda dal numero di sensori presenti
all’interno della scena poiché si creano interferenza tra loro. Il parametro
SIGMA simula la presenza di interferenze nella nostra stanza e più tale
parametro viene aumentato, più il nostro errore verrà incrementato. Tale
risultato dipende dal fatto che più interferenze sono presenti, più i segnali che
serviranno per la nostra localizzazione (nel nostro caso le potenze), si
affievoliranno. Taluni sensori infatti saranno talmente affetti da interferenze che
saranno inutilizzabili e quindi l’errore verrà incrementato. L’errore di
localizzazione però sarà più basso se si utilizza la metodologia di calcolo della
distanza di Chebyshev.
65 66 Capitolo 4
Localizzazione di più oggetti mobili indoor
In questo capitolo verrà spiegato l’algoritmo di localizzazione utilizzato. In
particolare viene studiata la localizzazione di più carrelli mobili in un
supermercato. In questa parte verrà creata una nuova metodologia per la
localizzazione di tali carrelli e si vedrà l’impatto che il numero di carrelli
presenti nella scena e l’utilizzo di molti o pochi beacon possano influenzarne la
localizzazione.
4.1 Descrizione progetto
Il progetto che verrà presentato è una miglioria di quello spiegato nel capitolo 3
in quanto il primo era atto a vedere cosa poteva influire sulla localizzazione,
mentre adesso si studierà come si può effettivamente localizzare un oggetto
mobile quando ne sono presenti altri da localizzare. Infatti, più oggetti mobili
che trasmettono la propria potenza per poter essere localizzati, possono creare
interferenze tra loro e quindi alcuni sensori, utilizzati per la localizzazione,
verranno tolti. In particolare ad ogni trasmettitore verranno associati i sensori
più vicini per la loro localizzazione. Ricordiamo inoltre che ogni trasmettitore
avrà una certa portata, cioè il segnale arriverà solo ad una certa distanza, quindi
questo è un altro fattore che influisce sulla sua localizzazione poiché i sensori
più lontani non riceveranno tale potenza e quindi non potranno essere utilizzati.
Anche in questo caso il progetto è suddiviso in due fasi, una fase che
chiameremo OFF-LINE, che è uguale alla fase dell’algoritmo precedente, e una
fase che chiameremo ON-LINE diversa dalla fase dell’algoritmo precedente.
4.1.1 Fase OFF-LINE
Fase OFF-LINE : per la fase off-line si è adottata una strategia di tipo RSS.
Innanzitutto si fa un’analisi della scena per vedere eventuali ostacoli e come è
creato l’ambiente in cui verrà effettuata la localizzazione. Poi si fa circolare il
carrello equipaggiato di un trasmettitore attraverso i punti della griglia e si
memorizzano per ogni punto la distanza tra esso e tutti i beacon. Tali distanze
67 trovate corrisponderanno alle nostre potenze. Esempio se ho il punto della
griglia di coordinate (1,1) e ho 4 beacon su tale griglia, allora verranno
memorizzate 4 potenze per il punto (1,1). La metodologia che si è scelto di
utilizzare in questo nuovo algoritmo è quella di Chebyshev poiché, come visto
nel capitolo precedente, a parità di sensori, di rumore, di celle, ha dato migliori
risultati.
4.1.2 Fase ON-LINE
Fase ON-LINE : la fase on-line è la vera e propria fase di localizzazione in cui si
localizzano i dispositivi mobili. I professori Mazzini e Taddia hanno utilizzato,
per la localizzazione di più dispositivi mobili, la tecnica di massima
verosimiglianza mentre per il mio algoritmo ho utilizzato una tecnica similare
alla trilaterazione iperbolica che ho chiamato metodo delle circonferenze. In
questa fase oltre alla localizzazione verrà discusso l’eventuale errore di
localizzazione e la percentuale di carrelli che si sono potuti localizzare in
funzione del numero di carrelli presenti e di sensori utilizzabili.
4.2 Metodologia adottata
La metodologia che ho creato per effettuare la localizzazione è molto simile alla
trilaterazione iperbolica.
Questa sezione investiga come’è possibile effettuare la localizzazione di più
carrelli nella stessa stanza. Ogni carrello trasmette ad ogni istante di tempo un
identificativo e la propria potenza. Queste informazioni vengono passate a tutti i
beacon presenti nella scena. Se ogni beacon venisse utilizzato per la
localizzazione di tutti i carrelli si avrebbe un vero e proprio caos in quanto i
segnali sono affetti da interferenze e quindi la localizzazione non sarebbe esatta.
Bisogna quindi fare in modo che un carrello venga localizzato solo da beacon
liberi, cioè quelli che, in quel momento, non sono utilizzati per localizzare altri
carrelli. Per risolvere questo il mio algoritmo assegna ad ogni carrello presente
nella scena i due beacon più vicini. Come spiegato nel capitolo precedente la
vicinanza tra beacon e carrello è data dalla distanza memorizzata come potenza
nella fase OFF-LINE.
68 4.2.1 Fase 1 : Assegnazione dei beacon ai carrelli
Vediamo in seguito il principio di assegnazione dei beacon ai carrelli
studiandone le varie possibilità in cui si può incappare.
Ad esempio se ho 9 sensori e 4 carrelli da individuare un esempio di scena
potrebbe essere la seguente :
Figura 4.1 : Esempio di assegnazione beacon ai carrelli
Come si nota dalla figura 4.1 ad ogni carrello presente vengono assegnati i 2
beacon ad esso più vicini. In questo esempio un beacon non viene utilizzato ma
potrebbe essere assegnato ad uno dei carrelli se uno dei sensori già assegnati non
funzionasse. Quando un beacon viene assegnato ad un carrello esso passa in uno
stato di “occupato” e non potrà essere temporaneamente disponibile per la
localizzazione di altri carrelli. Una volta che il carrello è stato localizzato allora
il sensore passa dallo stato “occupato” allo stato “libero” e può essere
riutilizzato per la localizzazione di un altro carrello o dello stesso se necessario.
Nell’esempio in figura il beacon di coordinate (3,3) è nello stato “libero” mentre
gli altri otto sono “occupati”. Quello appena mostrato è un caso ideale in quanto
ci sono 2 sensori disponibili per ogni carrello e quindi a scapito di interferenze si
avrebbe una localizzazione dei carrelli perfetta. Questo caso si verifica quando :
totale carrelli * 2 <= beacon disponibili
69 Analizziamo ora il caso in cui entri un altro carrello nella stessa scena
precedente.
Figura 4.2 : Esempio di assegnazione di 1 beacon ad un carrello
L’entrata nella scena di un nuovo carrello non và ad interferire con la
localizzazione degli altri carrelli in quanto i beacon sono già occupati. Nel caso
in figura 4.2 l’unico beacon a disposizione per l’assegnamento è quello
compreso nel cerchio giallo ma se fosse assegnato al carrello questo non sarebbe
localizzabile in quanto potrebbe essere localizzato in ogni posizione del cerchio
giallo avendo un errore di localizzazione alto. In questo caso quindi se il carrello
deve essere localizzato subito, cioè quando tutti gli altri otto beacon sono
occupati, allora non è localizzabile. Se invece il carrello deve essere localizzato
dopo un tot di tempo, e in questo lasso di tempo uno o più beacon vengono
liberati, allora allo stesso verranno assegnati due beacon liberi e potrà essere
localizzato.
L’assegnazione però non è sempre perfetta, cioè non sempre si ha la possibilità
di assegnare i due beacon più vicini ai carrelli. Ad esempio se i carrelli sono tutti
concentrati in una stessa cella o in più celle (nel caso reale questo può succedere
quando il supermercato offre un prodotto sottocosto), oppure devono essere
localizzati dei carrelli che si trovano nell’area di beacon tutti occupati ma nella
scena sono presenti ugualmente dei beacon liberi. Vediamo quindi in questi casi
come vengono fatte le assegnazioni.
70 Figura 4.3 : Esempio di concentrazione dei beacon in un’area
La figura 4.3 mostra un esempio di scenario in cui i carrelli si concentrano in
una zona della nostra stanza e i beacon più vicini ai carrelli sono già stati
assegnati. Come avviene in questo l’assegnazione dei carrelli con i beacon
liberi? Vengono assegnati i beacon più vicini uno alla volta finché ce ne sono ai
carrelli presi in modo causale. Ad esempio si può avere:
Figura 4.4 : Esempio di assegnazione non perfetta
71 In questo caso un carrello (nel cerchio giallo) rimane fuori dall’assegnazione a
causa della mancanza di beacon liberi nella scena mentre gli altri carrelli
“occupano” i beacon anche se non quelli più vicini in base alla minima distanza
che hanno con i beacon liberi rimasti.
4.2.2 Fase 2 : Metodo delle circonferenze
Una volta che si hanno a diposizione due beacon per ogni carrello si passa alla
localizzazione. La localizzazione da me creata è una tecnica similare alla
trilaterazione iperbolica ma invece di adoperare tre circonferenze ne vengono
adoperate due.
Avendo a disposizione le coordinate del beacon e la distanza che separa il
beacon dal carrello in esame si può trovare l’equazione della circonferenza che
ha come centro le coordinate del beacon in esame e per raggio la distanza tra
beacon e carrello.
Vengono trovate quindi due equazioni che corrispondono alle due circonferenze
che serviranno per la localizzazione.
Il sistema che si prende in esame è il seguente:
Dove i parametri sono dati rispettivamente da :
( ,
( ,
) = coordinate del primo beacon
) = coordinate del secondo beacon
2
2
2
2
72 a questo punto basterà trovare l’equazione (1):
In cui a,b e d sono dati da:
Ora basterà sottrarre membro a membro le due equazioni per trovare :
L’equazione appena trovata verrà poi messa a sistema con la (1) per trovare i
due punti di intersezione delle circonferenze.
L’intersezione tra le due circonferenze produce come risultato o due punti, uno
dei quali è la posizione esatta del nostro carrello da localizzare, o un punto che è
l’esatta posizione del carrello.
Figura 4.5 : Intersezione tra le due circonferenze in due punti
In figura 4.5 è mostrato quanto appena descritto. Presi i due beacon di
riferimento trovati per la localizzazione si creano le relative circonferenze che
hanno come centro le coordinate del beacon e come raggio della circonferenze la
73 distanza tra beacon e carrello. I due punti trovati dall’intersezione delle
circonferenze saranno le possibili posizioni del carrello.
Figura 4.6 : Intersezione tra le due circonferenze in un punto(1)
In figura 4.6 la posizione del carrello è trovata in un solo punto e sarà esatto se il
canale non è affetto da errori. Quello mostrato è uno dei scenari in cui si
possono trovare le circonferenze ma, per avere un punto come intersezione, le
due circonferenze si possono trovare anche nella seguente posizione :
Figura 4.7 : Intersezione tra le due circonferenze in un punto(2)
74 4.2.2.1 Criticità del metodo delle circonferenze
Il metodo della trilaterazione iperbolica utilizza l’intersezione di tre
circonferenze per localizzare perfettamente il punto da localizzare come si può
vedere dalla figura seguente :
Figura 4.8 : Intersezione tra tre circonferenze
Utilizzando tre beacon alla volta però, per la localizzazione, si sprecano gli
stessi in quanto se ne occupano di più e si localizzano meno carrelli. Il mio
metodo quindi ne adopera solo due ma si incappa comunque in eventuali
criticità.
Le criticità sono date dalle posizioni che possono assumere le due circonferenze.
In particolare si hanno due casi:
• Le due circonferenze non si incontrano se i beacon sono molto allineati.
Se il canale è affetto anche da un minimo rumore le circonferenze non
saranno perfette e non si incontreranno, vediamo in seguito un esempio :
75 Figura 4.9 : Intersezione tra due circonferenze con Beacon allineati
In questo caso la localizzazione non potrà essere fatta poiché la presenza
di molto errore all’interno del canale “sposta” la localizzazione. Il rumore
però non potrà essere sempre presente quindi si potrà effettuare di nuovo
la localizzazione dopo un breve periodo di tempo assegnando altri due
beacon al carrello.
• Le due circonferenze non si incontrano se una circonferenza è inclusa in
un’altra.
Figura 4.10 : Intersezione tra due circonferenze incluse
76 In questo caso una circonferenza include l’altra e, se il canale è affetto
da errori, le circonferenze non si incontreranno mai in nel punto in cui
localizzare il carrello. La localizzazione, come nel caso precedente,
potrà essere effettuata in un secondo momento.
Queste criticità avvengono quando nella stanza è presente molto rumore, nel
caso in cui ad esempio siano presenti gruppi di persone, montacarichi etc.. Lo
scopo di questo studio è quello di vedere cosa, in assenza di errori, può
influenzare la localizzazione.
4.2.3 Fase 3 : Scelta della posizione del carrello
Con l’intersezione delle due circonferenze si possono avere due casi. Le
circonferenze danno come risultato due punti oppure un punto.
Se il risultato è un punto la localizzazione è già fatta in quanto quello stesso
punto è la posizione del carrello da localizzare.
Se il risultato invece sono due punti bisognerà scegliere quella tra le due esatta.
Basterà scegliere quindi quelle coordinate che rendono minimo (in caso di
piccoli rumori presenti nella stanza) o nullo (in caso di assenza di rumore)
l’errore di localizzazione discusso ampiamente nel capitolo 3.
4.2.4 Localizzazione carrelli senza errore
Vediamo ora cosa influenzi la localizzazione dei carrelli nel caso in cui la
localizzazione sia perfetta, cioè quando trovo il punto di intersezione delle
circonferenze che corrisponde proprio alla posizione di un carrello in esame.
Dobbiamo analizzare quindi i fattori che possono influenzare la nostra
localizzazione, oltre al rumore presente nella stanza, e vedere in che modo la
condizionino.
Guardando cosa abbiamo a disposizione per la nostra analisi abbiamo i seguenti
parametri che possono condizionare la localizzazione :
• Il numero di carrelli presenti nella nostra scena al momento della
localizzazione di due o più carrelli.
• La distanza “m” tra i beacon.
• Il numero totale di beacon presenti nella scena.
77 Per prima cosa vediamo se il parametro “m” (distanza tra i beacon) influenzi la
localizzazione. Prendiamo uno scenario composto da 100 carrelli e variamo il
numero di beacon per lato da 2 a 9, variamo inoltre il parametro m di
rispettivamente 5, 10, 15 metri. Come risultato vogliamo avere la percentuale di
carrelli localizzati.
Figura 4.11 : Percentuale carrelli con m diversi
Come si può notare dal grafico la percentuale di carrelli localizzati non dipende
dal valore del parametro “m” e cioè dalla distanza tra i beacon. Infatti per valori
di m diversi si ha una percentuale di carrelli quasi uguali per tutte le prove
effettuate fino ad un numero di sei beacon per lato. Dal grafico si può fare
un’ulteriore considerazione, la percentuale dei carrelli localizzati dipende dal
numero di beacon presenti nella stanza in accordo con quanto detto nel capitolo
3.
Prendiamo ora in esame uno scenario diverso per vedere se la percentuale di
carrelli localizzati dipende o no dal numero di beacon presenti come appena
detto.
78 Analizziamo una scena con il parametro “m” uguale a 5 metri e variamo sia il
numero di carrelli presenti nella scena prendendo in numero pari da 2 a 14, sia il
numero di beacon per lato di rispettivamente 3, 5, 7. Anche in questo caso
vogliamo come risultato la percentuale di carrelli localizzati.
Figura 4.12 : Percentuale carrelli con numero beacon per lato diversi
Come si può notare dal grafico la percentuale di carrelli localizzati dipende
fortemente dal numero di beacon presenti nella scena, infatti visto che ad ogni
carrello vengono assegnati due beacon, più beacon sono presenti nella scena e
più carrelli sarà possibile localizzare.
79 4.2.5 Localizzazione carrelli con errore
Può capitare che il canale sia talmente affetto da rumori che la localizzazione
può essere “errata”, cioè quando si effettua l’intersezione tra le due
circonferenze invece di prendere il punto esatto in cui è localizzato il carrello si
prenda quello “opposto. Vediamo con un esempio :
Figura 4.13 : Posizione trovata ma errata
In figura 4.13 viene mostrata una situazione che può avvenire quindi è utile
analizzare l’errore di localizzazione dei carrelli in questi casi.
Notiamo come l’errore di localizzazione non è mai maggiore alla lunghezza del
diametro della circonferenza più piccola, quindi l’errore di localizzazione
dovrebbe dipendere molto da quali beacon si prendono e in che posizione si
trovano rispetto al carrello in esame.
Analizzando questo tipo di scenario i parametri che possono influenzare l’errore
di localizzazione:
• La distanza “m” tra i beacon
• Il numero di carrelli presenti nella scena
• Il numero di beacon presenti nella scena
80 Prendiamo ad esempio il parametro m assegnandogli rispettivamente i valori di
5, 10 e 15 metri e vediamo se questo influenzi il nostro errore. Variamo inoltre il
numero di carrelli presenti nella scena da 2 a 14.
Figura 4.14 : Errore con localizzazione errata, dipendenza da m
Notiamo come l’errore sia molto influenzato dalla distanza tra i beacon proprio
perché la localizzazione nel punto errato dipende dalle circonferenze create.
Prendiamo ora lo stesso scenario ma con m uguale a 5 metri e con un numero di
beacon variabile di 3, 6, 9 per lato.
Figura 4.15 : Errore con localizzazione errata, dipendenza dai beacon
81 Analizzando la figura si nota come l’errore dipenda dal numero di beacon
presenti nella scena, meno beacon sono presenti più l’errore di localizzazione è
alto.
4.2.6 Conclusioni sui risultati ottenuti
Se non vengono introdotti rumori nel nostro scenario di simulazione, la
localizzazione dei carrelli presenti verrà effettuata in modo perfetto e cioè senza
errori di localizzazione. La cosa interessante da analizzare, in questo tipo di
scenario, è vedere quali parametri influenzino la percentuale di carrelli che si
possono localizzare. Dai risultati ottenuti si nota come più è alto il numero di
beacon presenti nella scena e più carrelli vengono localizzati. Si può notare
anche come il parametro m (distanza tra i beacon) non influenzi in nessun modo
la percentuale di carrelli localizzati.
Se si effettua una localizzazione errata, cioè si prende il punto di intersezione
delle circonferenze “opposto” alla posizione del carrello, bisogna vedere che
errore di localizzazione si introduce per vedere se può essere accettabile o no.
Dai risultati ottenuti si nota come questo tipo di errore venga influenzato sia
dalla distanza m, infatti più è grande questo parametro più è alto l’errore di
localizzazione, e dal numero di beacon, più beacon ci sono più è basso l’errore
proprio perché durante l’assegnazione dei beacon ai carrelli si possono prendere
quelli più “vicini”.
82 Capitolo 5
Confronto tra gli algoritmi
In questo capitolo metterò a confronto il mio algoritmo di localizzazione con
quello creato dai professori Mazzini e Taddia.
5.1 Algoritmo Mazzini/Taddia
I professori Mazzini e Taddia hanno creato un algoritmo di localizzazione
basato sulla tecnica della verosimiglianza. Tale algoritmo viene preso in
considerazione perché mi permetterà di capire se l’algoritmo da me creato dà
buoni risultati.
5.1.1 Descrizione della metodologia utilizzata
Ogni carrello presente nell’area trasmette ad ogni istante il proprio segnale in
modo da minimizzare la collisione con gli altri segnali degli altri carrelli. In caso
di collisione la localizzazione del carrello non è performante: il carrello potrebbe
ritrasmettere il segnale dopo un certo intervallo di tempo. Viene studiato il caso
in cui tutti i carrelli trasmettono il proprio segnale contemporaneamente. Questo
viene fatto per studiare la percentuale di carrelli localizzati e l’errore di
localizzazione.
Ogni carrello ha un raggio di copertura. Tale raggio di copertura non deve
coprire tutta l’area perché altrimenti la localizzazione diventerebbe nulla in
quanto i segnali dei trasmettitori interferirebbero l’uno sull’altro rendendo nulla
l’identificazione.
I parametri introdotti nell’algoritmo sono :
• R : raggio di copertura dei trasmettitori
• b : numero di beacon presenti nell’area di copertura di ogni carrello
Per simulare la collisione vengono eliminati dalla lista dei beacon quelli che
ricevono la potenza da più carrelli. Nella lista verranno quindi lasciati quei
beacon che “vedono” solo lo stesso carrello da localizzare. Visto che per la
localizzazione si devono avere almeno 4 beacon utilizzabili per avere un errore
83 minimo viene introdotto un parametro chiamato Loc_Threshold che è il minimo
numero di beacon utilizzabili per la localizzazione di ogni singolo carrello.
L’errore minimo che si ottiene con un Loc_Threshold di 4 è di circa 0.3826.
5.1.2 Conclusioni sull’algoritmo preso da confronto
L’algoritmo di localizzazione Mazzini/Taddia è un semplice approccio che può
essere utilizzato per applicazioni indoor. Hanno mostrato come ottenere una
buona accuratezza di localizzazione settando alcuni parametri di base come il
numero di beacon che compongono la griglia durante la fase OFF-LINE e il
numero di celle che compongono la griglia.
5.2 Differenze basilari tra i due algoritmi utilizzati
I due algoritmi che si vanno a confrontare eseguono i seguenti passi
fondamentali :
• creazione mappa
• creazione carrelli virtuali per la simulazione
• localizzazione carrelli
i due algoritmi si differenziano solo per quanto riguarda la fase di localizzazione
di più oggetti mobili, infatti uno utilizza una tecnica chiamata massima
verosimiglianza, mentre l’altro una metodologia che ho chiamato metodo delle
circonferenze.
5.2.1 Creazione mappa e inserimento carrelli
L’algoritmo che genera la mappa è lo stesso descritto nel capitolo 3 ma visto che
il nuovo algoritmo viene confrontato con quello Mazzini/Taddia bisogna
ricreare almeno in parte delle condizioni uguali per poterne fare il confronto.
Si è scelto quindi di creare la mappa utilizzando la distanza euclidea.
Per quanto riguarda la creazione dei carrelli virtuali all’interno del simulatore il
codice è il seguente :
84 5.2.2 Associazione beacon ai carrelli senza collisioni
Vediamo ora come poter migliorare o modificare la localizzazione
nell’algoritmo Mazzini/Taddia.
Per la localizzazione la prima cosa da fare è associare un tot di beacon ai carrelli
per poterne trovare la posizione, questi beacon devono essere poter essere
utilizzati senza interferenze e collisioni. Vediamo in che modo i due diversi
algoritmi evitano la collisione e associano i sensori ai carrelli.
L’algoritmo di confronto Mazzini/Taddia utilizza un raggio di copertura in cui
ad ogni carrello, inizialmente, vengono associati i sensori all’interno di tale
copertura.
L’algoritmo che esegue questo è il seguente :
L’algoritmo sopra associa tramite una lista ad ogni carrello un tot di sensori da
lui visibili nella propria area di copertura, questo viene fatto calcolando la
distanza tra il carrello e il beacon e se questa distanza è minore della copertura
allora viene “visto” altrimenti no.
Una volta fatto questo bisogna eliminare quei sensori che hanno collisione, cioè
quelli che “vedono” più di un carrello alla volta. Per fare questo basterà
utilizzare per la localizzazione solo quei beacon che “vedono” un carrello alla
volta, il codice che simula questo è il seguente :
85 Con questa metodologia per la localizzazione possono essere utilizzati da uno a
più beacon indifferentemente, il numero dipende dalla collisione. La
localizzazione dipende quindi dal numero di beacon utilizzabili per la stessa.
Analizziamo ora il mio algoritmo.
Per evitare la collisione si associano inizialmente due beacon ad ogni carrello e,
per evitare collisioni future, i beacon vengono “occupati”, questo viene fatto
assegnando ad una variabile booleana “occupato” il valore true.
L’assegnazione dei due beacon viene fatto con un meccanismo analogo
all’algoritmo precedente poiché si associa ad ogni carrello i due beacon
disponibili con distanza minima. Il codice che implementa quanto detto è il
seguente :
Dall’analisi si può dire che entrambi gli algoritmi utilizzano la distanza euclidea
per trovare i beacon, da utilizzare per la localizzazione, e implementano un
meccanismo per evitare la collisione. Come vedremo in seguito, dai risultati
ottenuti, per riuscire a confrontare i due algoritmi basterà assegnare per la
86 localizzazione 2 beacon ad ogni carrello nel mio algoritmo, mentre per quanto
riguarda l’algoritmo Mazzini/Taddia basterà assegnare 4 beacon ad ogni
carrello.
5.2.3 Localizzazione carrelli mobili
Per quanto riguarda la localizzazione vera e propria del dispositivo mobile la
differenza tra i due algoritmi è palese trattandosi di due metodologie diverse. È
bene comunque esporre e spiegare entrambe le metodologie per vedere come
diverse metodologie possano produrre risultati uguali o differenti.
La localizzazione nell’algoritmo Mazzini/Taddia è stata spiegata ampiamente
nel capitolo 3 in quanto, una volta trovati i sensori da poter utilizzare senza
collisione, si trova la posizione del carrello o dei carrelli presi in esame.
L’algoritmo da me creato utilizza una metodologia che ho chiamato “metodo
delle circonferenze”. Una volta assegnato al carrello i due sensori disponibili più
vicini si devono trovare le equazioni delle circonferenze come ampiamente
spiegato nel capitolo 4. Per prima cosa bisogna trovare i parametri a, b, c che
definiscono le equazioni delle circonferenze. Il codice che trova i parametri è il
seguente :
Una volta trovati i parametri delle due equazioni bisogna mettere a sistema le
due equazioni per trovarne i punti comuni.
I punti o il punto comune alle due equazioni delle circonferenze sarà la
posizione del nostro dispositivo mobile da localizzare.
87 I sistemi da risolvere vengono fatti matematicamente dall’algoritmo e vengono
distinti tre casi :
• i due beacon da utilizzare sono allineati verticalmente e quindi un
parametro “a” sarà uguale a 0. Il codice che implementa questo è il
seguente :
• i due beacon da utilizzare sono allineati orizzontalmente e quindi il
parametro “b” sarà uguale a 0. Il codice che implementa questo è il
seguente :
88 • i due beacon da utilizzare non sono allineati e quindi i due parametri “a”
e “b” sono diversi da 0. Il codice che implementa questo è il seguente :
Come visto quindi i due algoritmi nella localizzazione sono totalmente differenti
ma è bene confrontarli per capirne le prestazioni.
5.3 Confronto tra i due algoritmi
Per confrontare le prestazioni dei due algoritmi dobbiamo comparare l’errore di
localizzazione prodotto e il numero di carrelli localizzati.
Visto le diverse metodologie utilizzate per la localizzazione, di default il numero
di beacon presi per l’algoritmo Mazzini/Taddia sarà uguale ad un
Loc_Threshold di 4, mentre per il mio algoritmo il numero di beacon presi sarà
uguale a 2.
Questa scelta è stata fatta proprio perché l’algoritmo Mazzini/Taddia dà le
massime prestazioni con un numero di beacon utilizzati per la localizzazione di
4; mentre il mio algoritmo funziona con un numero di beacon pari a 2.
5.3.1 Errore di localizzazione
Per confrontare l’errore di localizzazione tra i due algoritmi dobbiamo rilevarne
le prestazioni in uno stesso ambiente.
In seguito verrà calcolato l’errore di localizzazione, per quanto riguarda il mio
algoritmo, prendendo a riferimento il caso in cui la localizzazione venga fatta in
89 modo esatto e il caso in cui la localizzazione venga fatta ma in modo errata, cioè
prendendo il punto di localizzazione “opposto” a quello reale.
Valutiamo l’errore di localizzazione in un ambiente ideale, cioè senza rumore, in
cui il parametro m è uguale a 5 metri e sono presenti 100 beacon nel nostro
scenario e valutiamo l’errore per un numero di carrelli variabile tra 2 a 14.
Figura 5.1 : Confronto tra gli errori di localizzazione (1)
Analizzando la figura 5.1 notiamo che nel mio algoritmo l’errore di
localizzazione è sempre zero, in un ambiente ideale, in quanto la localizzazione
viene fatta matematicamente con l’intersezione tra le due circonferenze e quindi
il calcolo della posizione è preciso al millimetro. L’errore di localizzazione
dell’algoritmo Mazzini/Taddia non supera mai lo 0.4 ed è quindi un errore
minimo e accettabile.
90 Confrontiamo ora l’errore di localizzazione nel caso in cui nel mio algoritmo
venga preso il punto “errato” di posizione del carrello, cioè il secondo punto di
intersezione delle due circonferenze, utilizzando lo stesso scenario precedente.
Questo fatto può succedere in caso di malfunzionamento e tilt del sistema, ma ci
serve per valutare ugualmente che errore di localizzazione si avrebbe in questo
caso.
Figura 5.2 : Confronto tra gli errori di localizzazione (2)
In questo caso l’errore di localizzazione non è accettabile in quanto, rispetto
all’algoritmo Mazzini/Taddia, è troppo alto. Guardando la figura 5.2 l’unico
errore “minimo” si ha nella localizzazione di 4 carrelli ma probabilmente
dipende dal fatto che, durante la simulazione, le circonferenze utilizzate per la
localizzazione erano molto vicine tra loro.
91 5.3.2 Numero di carrelli localizzati
Visto che lo scopo di questo studio è la localizzazione di più carrelli possibile
con il minimo errore, è utile valutare quanti carrelli vengono localizzati nei due
algoritmi.
Anche in questo caso dobbiamo effettuare la simulazione in uno stesso ambiente
con gli stessi parametri per valutarne bene le prestazioni.
Visto che il numero di carrelli localizzati, in entrambi gli algoritmi, dipende dal
numero di beacon presenti nella stanza di simulazione, proviamo a variare
proprio il numero di beacon e vediamone le prestazioni.
Analizziamo uno scenario che ha un numero di beacon per lato di 5 e un numero
di carrelli presenti nella stanza da 2 a 14.
Figura 5.3 : Confronto tra il numero di carrelli localizzati (1)
Dal grafico in figura 5.3 si può notare come il mio algoritmo abbia prestazioni
più elevate con un numero di beacon presenti basso. Questo succede perché ad
ogni carrello vengono assegnati 2 beacon per la localizzazione e quindi più sono
presenti beacon nella scena e più carrelli vengono localizzati. Nell’algoritmo
92 Mazzini/Taddia invece il numero di carrelli localizzati è basso in quanto i pochi
beacon presenti creano collisione fra loro e, più il numero di carrelli presenti
nella scena è elevato, più il numero di carrelli localizzato è basso.
Solitamente però, in un ambiente reale, il numero di beacon presenti nel nostro
scenario è maggiore in quanto 25 sensori sarebbero troppo pochi da utilizzare.
Proviamo quindi a vedere il numero di carrelli localizzati aumentando il numero
di beacon da 5 per lato a 20 per lato.
Figura 5.4 : Confronto tra il numero di carrelli localizzati (2)
Dalla figura 5.4 si nota subito come aumentando il numero di beacon per lato i
due algoritmi aumentino di prestazione. Il numero di carrelli localizzati infatti
aumenta. Il miglioramento dell’algoritmo Mazzini/Taddia è netto rispetto
all’esempio precedente mentre il mio algoritmo è lineare.
93 5.4 Conclusioni sul confronto
Confrontando le prestazioni dei due algoritmi si nota subito come entrambi
dipendano fortemente dal numero di beacon presenti nella scena.
Per quanto riguarda l’errore di localizzazione le prestazioni migliori sono quelle
del mio algoritmo anche se l’errore dell’algoritmo Mazzini/Taddia è accettabile.
Per quanto riguarda il numero di carrelli localizzati, se prendiamo un numero di
beacon per lato basso il mio algoritmo ha prestazioni nettamente migliori, ma se
aumentiamo il numero di sensori anche l’algoritmo Mazzini/Taddia ha ottime
prestazioni.
94 Capitolo 6
Conclusioni e Sviluppi futuri
Lo scopo della tesi è quello di creare un sistema di localizzazione semplice che
può essere utilizzato per applicazioni indoor.
Un semplice algoritmo di localizzazione è stato anche creato dai professori
Mazzini e Taddia ed è servito per confrontarlo con il mio e vedere come si
poteva migliorare il loro algoritmo o crearne uno nuovo per migliorare la
localizzazione.
Inizialmente si è cercato di migliorare l’algoritmo Mazzini/Taddia modificando,
come ampiamente spiegato nel capitolo 3, il calcolo della potenza, descritto
come distanza tra l’oggetto da localizzare e i sensori utilizzati per la
localizzazione stessa. Si è visto come impiegando la distanza di Chebyshev
invece che quella euclidea le prestazioni miglioravano anche se non di molto.
Utilizzando invece la distanza Manhattan le prestazioni calavano in maniera
drastica. Dopo questo studio si è arrivati alla conclusioni che si poteva utilizzare
entrambi i metodi, cioè euclideo e Chebyshev, in quanto avevano prestazioni
similari. Per verificarne ulteriormente le prestazioni abbiamo introdotto il
rumore gaussiano e variando il parametro sigma, in entrambi gli algoritmi si è
visto che utilizzando la distanza di Chebyshev l’errore di localizzazione è più
basso rispetto a quella euclidea.
Si è deciso poi di creare un nuovo algoritmo di localizzazione utilizzando lo
stesso sistema di riferimento dell’algoritmo Mazzini/Taddia, utilizzando cioè la
griglia di beacon e la potenza calcolata come distanza tra carrello e beacons. La
mia idea utilizza una metodologia simile alla trilaterazione iperbolica e l’ho
chiamata metodo delle circonferenze. L’idea è quella di assegnare, con un
meccanismo adatto, due beacon per carrello ed effettuare tale localizzazione solo
con essi. Dai due beacon si possono trovare le circonferenze composte dalla
distanza che funge da raggio e dalle coordinate del beacon che fungono da
centro. L’intersezione tra le circonferenze può dare diversi risultati come
spiegato ampiamente nel capitolo 4.
95 Per capire se il mio algoritmo ha le stesse, migliori o peggiori prestazioni di
quello Mazzini/Taddia dobbiamo fare la simulazione creando lo stesso
ambiente, cioè utilizzando gli stessi parametri, per entrambi gli algoritmi. Nel
capitolo 5 vengono effettuate le prestazioni calcolando l’errore di localizzazione
che si può avere e il numero medio di carrelli localizzati.
Per quanto riguarda l’errore di localizzazione, dai risultati ottenuti, si nota come
il mio algoritmo è stato creato per avere un errore pari a zero poiché si concentra
a creare una localizzazione perfetta, mentre l’algoritmo Mazzini/Taddia ha un
errore di localizzazione di circa 0.378 che è comunque accettabile.
Studiando invece il numero di carrelli che si riescono a localizzare si nota come
avendo a disposizione un numero di sensori basso presenti nella scena il mio
algoritmo abbia prestazioni nettamente migliori mentre aumentando il numero di
beacon i due algoritmi hanno prestazioni similari.
Come sviluppi futuri si potrebbero avere varie possibilità poiché si può
modificare il sistema di riferimento utilizzato per questa simulazione con un
altro che nella fase di OFF-LINE levi eventuali rumori presenti nello scenario.
Si potrebbe modificare il mio metodo delle circonferenze utilizzando tre beacon
per la localizzazione invece che due per avere una localizzazione senza
posizione “errata”. Si può modificare lo scenario utilizzato passando da un
quadrilatero ad una rettangolo etc.. Si può modificare il calcolo delle potenze
utilizzando metodi TOA o AOA.
L’algoritmo da me creato è scritto in C++ ed è scalabile, quindi può essere
modificato in base all’uso, al funzionamento e all’ambiente in cui si opera per le
proprie esigenze.
96 Capitolo 7
Elenco Figure
Figura 1.1 : Esempio di rete WI-FI su WEB
Figura 1.2 : Esempio di intrusione in un rete wireless
Figura 1.3 : Copertura di una cella a Radio Frequenza
Figura 1.4 : WLAN a Radio Frequenza (RF)
Figura 1.5 : Esempio di interfaccia FHSS
Figura 1.6 : Esempio di interfaccia DSSS
Figura 1.7 : Livello fisico del modello OSI con lo standard IEEE 802
Figura 1.8 : Meccanismo di Riflessione
Figura 1.9 : Meccanismo di Diffrazione
Figura 2.1 : Satelliti artificiali
Figura 2.2 : Satelliti orbitanti attorno alla Terra
Figura 2.3 : Schema funzionamento modulazione PSK
Figura 2.4 : Modulazione 2-PSK nel dominio del tempo
Figura 2.5 : Ricevitore GPS
Figura 2.6 : Localizzazione in ambiente wireless
Figura 2.7 : Esempio di mappa radio
Figura 2.8 : Esempio di TOA
Figura 2.9 : Esempio di TDOA
Figura 2.10 : Esempio di AOA
Figura 2.11 : Trilaterazione Iperbolica
Figura 2.12 : Triangolazione
Figura 2.13 : Massima Verosimiglianza
Figura 2.14 : Esempio di rete Bayesiana
Figura 3.1 : Esempio di scenario utilizzato
Figura 3.2 : Esempio di posizione di un carrello
Figura 3.3 : Esempio di mappatura della coordinata (0,0)
Figura 3.4 : Esempio di distanza euclidea e Manhattan
Figura 3.5 : Confronto di diverse metodologie per il calcolo della distanza
Figura 3.6 : Confronto di diverse metodologie per il calcolo della distanza,
aumentando il parametro DELTA
97 Figura 3.7 : Confronto di diverse metodologie per il calcolo della distanza,
aumentando il parametro m
Figura 3.8 : Grafico della probabilità del numero di beacon
Figura 3.9 : Distribuzione di Gauss
Figura 3.10 : Distribuzione gaussiana con la distanza di Chebyshev
Figura 3.11 : Distribuzione gaussiana : confronto tra i due algoritmi
Figura 4.1 : Esempio di assegnazione beacon ai carrelli
Figura 4.2 : Esempio di assegnazione di 1 beacon ad un carrello
Figura 4.3 : Esempio di concentrazione dei beacon in un’area
Figura 4.4 : Esempio di assegnazione non perfetta
Figura 4.5 : Intersezione tra le due circonferenze in due punti
Figura 4.6 : Intersezione tra le due circonferenze in un punto(1)
Figura 4.7 : Intersezione tra le due circonferenze in un punto(2)
Figura 4.8 : Intersezione tra tre circonferenze
Figura 4.9 : Intersezione tra due circonferenze con Beacon allineati
Figura 4.10 : Intersezione tra due circonferenze incluse
Figura 4.11 : Percentuale carrelli con m diversi
Figura 4.12 : Percentuale carrelli con numero beacon per lato diversi
Figura 4.13 : Posizione trovata ma errata
Figura 4.14 : Errore con localizzazione errata, dipendenza da m
Figura 4.15 : Errore con localizzazione errata, dipendenza dai beacon
Figura 5.1 : Confronto tra gli errori di localizzazione (1)
Figura 5.2 : Confronto tra gli errori di localizzazione (2)
Figura 5.3 : Confronto tra il numero di carrelli localizzati (1)
Figura 5.4 : Confronto tra il numero di carrelli localizzati (2)
98 Capitolo 8
Bibliografia e Sitografia
Definizione reti wireless :
1) http://www.ing.unibs.it/~wsnlab/index.htm
2) “La riduzione del Digital Divide e il progetto della provincia di Biella
la “banda larga” e le trasmissioni radio: WiFi e dintorni“
Definizione standard IEEE 802.11
1) Joel Conover “Anatomy of IEEE 802.11b Wireless” www.networkcomputing.com
2) www.pianetacellulare.it/Wifi/
Definizione sistema di comunicazione mobile
1) “Wireless Communications Principles and Practice 2nd Edition” - T
Rappaport, Prentice Hall-2001
Definizione di sistema GPS
1) http://www.ilmondodelletelecomunicazioni.it/gps/gps.html
2) “La Modulazione dei segnali” - Lezioni di Elettronica – Prof. Eros Rambelli
3) http://www.gpsnavigatorisatellitari.it/funzioni_satelliti.php
Definizione Sistema di localizzazione in ambienti indoor
1) Laboratorio di Applicazioni e Servizi ICT – Università degli studi di
Bologna, http://www.ingce.unibo.it/
2) “Costruzione di mappe radio per la localizzazione di terminali basata su
wireless LAN IEEE 802.11b” - Roberto Stomeo, Giovanni Cortese, Fabrizio
Davide Telecom Italia Learning Services Davide Dardari,Andrea Conti,
Oreste Andrisano IEIIT-CNR, DEIS Università degli Studi di Bologna
3) “Metodi Elettromagnetici per la Radio Localizzazione” http://www.gabrielefalciasecca.it/documenti/
Definizione delle varie distanze utilizzate
1) it.wikipedia.org - “distanza euclidea”, “distanza di Chebyshev”, “distanza
di Manhattan”
Definizione di rumore e dei vari tipi di rumore utilizzati
1) it.wikipedia.org - “definizione di rumore”, “rapporto segnale rumore”
2) http://it.wikipedia.org/wiki/Trasformazione_di_Box-Muller - “definizione di
Box-Muller”
3) Università di Roma “Corso di Teoria dei fenomeni aleatori” –
“Distribuzione Gaussiana, distribuzione di Rayleigh”
99