Sistem de Localizare a Unui Medic In Cadrul Unui Spital

Cuprins

1 Introducere 5

1.1 Scopul proiectului 5

2 Hardware și Software 6

2.1 Distomat 6

2.2 Baze de date Spațiale 6

2.3 Raspberry PI 6

2.4 Dongle Bluetooth 6

2.5 Dongle Wireless 6

2.6 Radius Networks 6

2.6.1 PiBeacon 6

3 Tehnologia Bluetooth 7

3.1 Bluetooth Clasic 7

3.1.1 Comunicația Buetooth 8

3.1.2 Moduri de descoperire și conectare 9

3.1.3 Securitate 10

3.2 Bluetooth Low Energy (BLE) 10

3.2.1 Arhitectura 11

3.2.2 Stiva BLE 12

3.2.3 Moduri de descoperire și conectare 14

3.3 Bluetooth Classic vs Bluetooth Low Energy 15

4 Beacon 17

4.1 Descriere 17

4.2 Componente Beacon 18

4.2.1 Beacon Hardware 18

4.2.2 Beacon Firmware 19

4.2.3 Beacon Cloud Infrastructure 20

4.2.4 Beacon Mobile SDK 20

4.3 Protocoale Beacon 20

4.3.1 Protocolul iBeacon 21

4.4 Estimode Beacon 22

4.5 Onyx Beacon 22

5 Tehnici de poziționare 23

5.1 Trilaterație 23

5.2 Fingerprinting 23

5.3 Average 23

6 Analiza datelor 24

6.1 Analiza RSSI 24

6.2 Caracteristici RSSI pentru Bluetooth Low Energy 24

6.3 Masurare static RSSI 24

6.4 RSSI vs Distanța reală 24

6.5 Variația RSSI față de distanță 24

7 Concluzii 25

Referintele bibliografice 26

Introducere

Scopul proiectului este găsirea unei soluții viabile de poziționare interioară, care să fie ulterior implementată practic într-un spital fiind utilizată pentru determinarea pozitiei unui medic. Analizând mai multe surse am ajuns la concluzia de a studia viabilitatea unui sistem de poziționare interioară bazat pe tehnologia Bluetooth Low Energy. Bluetooth Low Energy poate fi utilizat pentru mai multe tipuri de aplicații, inclusiv de poziționare.

Scopul proiectului

Obiectivul lucrării de față îl constituie localizarea poziției unui medic în cadrul unui spital folosind dispozitivele Beacon care utilizează tehnologia Bluetooth Low Energy. Tehnologia Bluetooth Low Energy fiind una din noile specificații Bluetooth este disponibilă pentru toate smartphone-urile noi, având ca avantaj major consumul redus de energie prin transmiterea unor cantități mici de date. În lucrarea de față s-a utilizat protocol iBeacon care utilizează Bluetooth Low Energy pentru determinarea locației. Acest sistem de poziționare de interior utilizează metode de trilaterație pentru estimarea poziției bazată pe distanțele calculate. Deoarece au fost studiate și analizate mai multe tehnici și metode în acest proiect, au fost alese pentru implementarea în sistem cele care au prezentat cele mai bune rezultate. Printr-o evaluare a sistemului și diferite tehnici de calibrare, a fost obținută o precizie de 1 ~ 1,5 metri.

Cerinte si specificații

Obiectivul lucrării de față îl constituie localizarea poziției unui medic în cadrul unui spital folosind dispozitivele Beacon care utilizează tehnologia Bluetooth Low Energy. Tehnologia Bluetooth Low Energy fiind una din noile specificații Bluetooth este disponibilă pentru toate smartphone-urile noi, având ca avantaj major consumul redus de energie prin transmiterea unor cantități mici de date. În lucrarea de față s-a utilizat protocol iBeacon care utilizează Bluetooth Low Energy pentru determinarea locației. Acest sistem de poziționare de interior utilizează metode de trilaterație pentru estimarea poziției bazată pe distanțele calculate. Deoarece au fost studiate și analizate mai multe tehnici și metode în acest proiect, au fost alese pentru implementarea în sistem cele care au prezentat cele mai bune rezultate. Printr-o evaluare a sistemului și diferite tehnici de calibrare, a fost obținută o precizie de 1 ~ 1,5 metri.

Hardware și Software

În cadrul proiectului s-au utilizat mai multe dispozitive hardware și tehnologii software pentru o mai bună evaluare a datelor.

Printre dispozitivele hardware se numare:

Distomat

Raspberry Pi

Dongle Bluetooth

Dongle Wireless

Distomat

Pentru măsurarea precisă a distanțelor am utilizat distomatul Leica Disto D5.

Figura 1.1: Distomat Leica Disto D5

Raspberry PI

Pentru capturarea semnalului de la Beacon si trimiterea acestora catre server s-a folosit Raspberry Pi B+.

Figura 1.2: Raspberry Pi B+

Dongle Bluetooth

Recepționarea semnalului emis de Beacon-uri este capturat cu ajutorul modulului Bluetooth CSR 4.0.

Figura 1.3: Bluetooth CSR 4.0

Dongle Wireless

Conexiunea la internet este asigurata prin conectorul Wi-fi denumit Wi-Pi.

Figura 1.4: WI-PI – Conectorul WIFI Oficial Raspberry PI

Baze de date Spațiale

Pentru stocarea de date s-a folosit baza de date spatială SQL Server Spatialy Enabled.

Tehnologia Bluetooth

Bluetooth Clasic

Bluetooth este o tehnologie fără fir care permite dispozitivelor electronice să comunice între ele pe rază scurtă. Tehnologia și dispozitivele Bluetooh la 2.4 GHz împărțită în diferite canale în banda global disponibilă "Industrial Scientific and Medical" ISM, a cărei utilizare nu solicită licențiere. Această bandă este rezervată pentru uzul aplicațiilor industriale, științifice și medicale (ISM), care respectă un set de specificații de putere, emisii spectrale și interferență. Acest lucru presupune necesitatea ca Bluetooth să fie o tehnologie foarte robustă, într-un mediu spectral cu atâți utilizatori și surse de poluare. În mod tradițional au existat 79 de diferite canale cu spațiere de 1 MHz, dar în caietul de sarcini pentru Bluetooth inteligent (BLE) se introduce utilizarea a 40 de canale cu spațiere de 2 MHz. Cum dispozitivele sunt proiectate pentru aplicații low-power, puterea radio emisă trebuie să fie minimă. Sunt definite trei clase de putere, care oferă, în ordine crescătoare a puterii, acțiune pe domenii de 1m, 10m sau 100m. În timp ce banda de frecvențe ISM este fără licență, utilizarea și dezvoltarea tehnologiei Bluetooth sunt reglementate de Grupul de Interes Special Bluetooth sau Bluetooth SIG. Grupul Bluetooth SIG care are peste 20 000 de companii membre, este responsabil pentru definirea specificației Bluetooth precum și pentru a certifica faptul că produsele dezvoltate sunt conform cu aceste standarde. Cele mai recente specificații sunt în prezent la versiunea 4.2 ( Lansat în: 02 decembrie 2014 ) . Specificațiile adoptate pot fi găsite în [ 1 ].

Specificația definește un set de protocoale și proprietăți pe care dispozitivele le pot utiliza pentru a comunica. Unele proprietăți sunt obligatorii pentru producătorii de tehnologie Bluetooth, în timp ce alte proprietăți sunt opționale și producătorii pot alege în mod liber dacă doresc să le pună în aplicare în produsele lor. În varful protocoalelor tehnologiei Bluetooth, sunt implementate profiluri diferite, specifice aplicației. Profilele sunt  standardizate și conforme cu cerințele din specificatiile Bluetooth și toate dispozitivele trebuie testate pentru unul sau mai multe profiluri pentru a îndeplini cerințele de certificare Bluetooth. Numărul de profiluri continuă să crească odată cu apariția noilor tipuri de aplicații.

Câteva exemple de profile definite și utilizate în mod obișnuit sunt :

A/V Remote Control Profile ( AVRCP ) : Definește un profil pentru controlul la distanță a dispozitive audio și video, de exemplu trimiterea și primirea de comenzi cum ar fi pornește, pauză, derulează, etc… .

Phone Book Access Profile ( PBAP ) : Acest profil definește modul în care informațiile de contact sunt transferate de la un dispozitiv la altul.

Advanced Audio Distribution Profile ( A2DP ) : profilul A2DP definește modul audio streaming care este efectuat între două dispozitive, de exemplu redarea fișierelor MP3 de la un telefon mobil într-un set de căști wireless Bluetooth.

Bluetooth a fost proiectat pentru a fi utilizat în aplicații cu rază scurtă de acțiune ajung pană la câtiva metri. Intervalul efectiv care poate fi realizat practic depinde de mai mulți factori cum ar fi :

Propagarea semnalului

Tipul de interferență

Atenuare de reflecție a semnalului

Caracteristicile antenei

Puterea de transmisie

Atenuarea semnalului și obstacolele

Comunicația Buetooth

Bluetooth diferă de orice rețea cablată, deoarece nu există nici un cablu între dispozitivele care comunică între ele și s-ar putea ca ele să nu cunoască cu ce alte dispozitive comunică și care sunt capabilitățile acelora. Pentru a rezolva această dilemă, Bluetooth utilizează mecanismele Inquiry și Paging și SDP (Service Discovery Protocol).

Dispozitivele Bluetooth sunt împărțită în trei clase diferite, care specifică puterea de transmisie maximă permisă. Clasele diferite, limite de putere și intervale teoretice sunt prezentate în Tabelul 3.1 :

Table 3-1. Putere de ieșire pentru diferite clase Bluetooth

Moduri de descoperire și conectare

Pentru ca două dispozitive să poată stabili o conexiune este necesară instituirea unei legaturi între ele. În tehnologia Bluetooth există două roluri: Master sau Slave. Un Master poate suporta până la 7 conexiuni simultane cu diferite dispozitive Slave, însă poate suporta mai multe conexiuni dar nu este o cerință obligatorie. Interschimbând dispozitivele Slave active și inactive din piconet utilizând PM_ADDR (unui dispozitiv îi revine rândul să participe la comunicație în 2ms) pot fi virtual conectate 255 de dispozitive Slave. Totuși, numărul unităților virtual atașate unui Master capabile să intre în comunicație este aproape nelimitat.

Înainte de a stabilit o conexiune dispozitivele trebuie să se descopere reciproc și să specifice ce profiluri utilizează. Toate profilurile Bluetooth respectă exact aceleași caracteristici: asigură interoperabilitatea, oferind un set bine definit de proceduri pentru straturile superioare și modalități uniforme de utilizare a straturilor inferioare. Procedând în acest fel, profilurile Bluetooth oferă tehnologiei Bluetooth calea de a se integra în diferite dispozitive și aplicații și de a lucra totuși într-o manieră standardizată. De exemplu, un headset produs de fabricantul A va fi interoperabil cu telefonul celular echipat Bluetooth, produs de fabricantul B. De obicei aparatele suportă numai un subset mic din toate profilurile disponibile în manualul de instrucțiuni.

Pentru a iniția o asociere un dispozitiv Master va transmite continuu o serie de pachete de interogare (Inquery) care permit stabilirea conexiunii, fiind recepționate de dispozitivele din apropiere. Dispozitivele care permit realizarea conexiunii sunt numite "discoverable" și vor răspunde la orice pachete de interogare cu un răspuns care conține numele dispozitivului, ce tipuri de profile suportă, precum și alte informații tehnice. Cu aceste informații dispozitivul Master poate continua și iniția stabilirea unei conexiuni.

Cel mai important lucru de reținut este acela că pentru stabilirea unei conexiuni prin tehnologia Bluetooth condiția principală este ca ambele terminale să dorească realizarea acestei legături. Unele dispozitive pot fi setate să nu realizeze scanări pentru mesaje (Inquiry), în acest caz celelalte dispozitive nu le pot descoperi și vor fi practic invizibile. În mod similar unele dispozitive pot fi setate să nu realizeze scanări pentru mesaje (Page), în acest caz aceste dispozitive pot iniția legături, dar nu vor auzi încercările altor dispozitive de a se conecta la ele. Aplicațiile pot alege dacă să facă dispozitivele conectabile sau descoperibile. O conexiune nu poate fi realizată forțat cu un dispozitiv care nu este setat pentru a o accepta. Procesul de conectare prin legături Bluetooth este într-un anumit fel ad-hoc și arbitrar, astfel perioada de conectare putând dura pană la o scurtă datorită mobilității dispozitivelor.

Securitate

Deoarece semnalele radio pot fi ușor interceptate, dispozitivele Bluetooth au încorporate proceduri de securizare, pentru prevenirea receptorilor rău intenționați și nevizați de mesaj.

Metode de securizare a informației:

Codificarea fluxului informațional utilizat ca metodă de criptare

O cheie privată specifică utilizatorului (128 biți), care este o entitate secretă. Cheia privată derivă din procedura de inițializare și nu este dezvăluită niciodată.

Generarea unor chei de sesiune care pot fi oricând schimbate pe parcursul unei conexiuni stabilite.

În plus față de aceste funcții la nivel de legătură, salturile de frecvență și transmisia limitată spațial ajută și ele la prevenirea recepționărilor neautorizate.

Bluetooth Low Energy (BLE)

Specificația Bluetooth Inteligent sau BLE (Bluetooth Low Energy) a fost introdus inițial sub numele Wibree de Nokia în 2006 dar a fuzionat în standardul principal Bluetooth în 2010, odată cu adoptarea specificațiile Bluetooth versiunea 4.0. Tehnologia este menită să transmită cantitați mici de date cu un consum redus de energie. BLE poate fi utilizat pentru a localiza lucruri iar protocoalele iBeacon , altBeacon, samsung placedge, etc.. care utilizează BLE vizează acest obiectiv cu ajutorul unor balize BLE numite beacons. Caracteristicile sale, cum ar fi costul redus și fiabilitatea a condus la dezvoltarea sistemelor de poziționare în interior bazate pe aceasta tehnologie.

BLE este una din noile specificații Bluetooth disponibil pentru toate smartphon-urile noi, existand de astfel și suport nativ BLE atat pentru sisteme de operare mobile precum și pentru sistemele de operare :

iOS pentru versiunile 5 sau mai mari

Android pentru versiunile 4.3 sau mai mari

Windows Phone pentru versiunile 8 sau mai mari

BlackBerry pentru versiunile 10 sau mai mari

MAC OS X

Linux

Windows 8

BLE este proiectat pentru transmiterea de cantități mici de date și pentru un consum extrem de redus de energie însă nu are capabilitatea pentru menținerea unei conexiuni pentru o lungă perioadă de timp între dispozitive. Deși se folosește marca Bluetooth și utilizează tehnologie similară, BLE trebuie considerat o tehnologie diferită, cu diverse scopuri și aplicații.

Arhitectura

Dispozitive care utilizează tehnologia BLE pot avea diferite stări de operare și roluri în funcție de funcționalitatea dispozitivului (vezi Figura 3.1). Prin urmare, stările posibile sunt regăsite în Tabelul 3.2 :

Table 3.2. Putere de ieșire pentru diferite clase Bluetooth

Figura 3.2. Stari de operare ale BLE

Dispozitive Master pot avea conexiuni multiple către periferice sau dispozitivele Slave și pot scana simultan alte dispozitive. Pe de altă parte dispozitivele Slave poate avea doar o singură conexiunea cu un dispozitiv Master (vezi Figura 3.2 ).

Figura 3.2. Topologia rețelei BLE

Stiva BLE

Cum am menționat în paragraful anterior stiva BLE este complet reconstruită și nu este compatibilă cu stiva Bluetooth Clasic. Este totuși evident că noile dispozitive Bluetooth au suport atât pentru Bluetooth Clasic cât și pentru Bluetooth LE, acestea comportându-se în modul dual și sunt dispozitive "gata inteligente" [ 3 ]. Structura stivei BLE este prezentată în Figura 3.3.

Stiva BLE este compusă din două părți:

Controlerul care reprezintă stratul fizic și stratul de legătură. Acesta este de obicei un cip mic, cu un radio emitător care este destul de frecvent implementat într-un sistem de tip cip (SOC) soluție [ 5 ].

Gazda care este formată din straturi de nivel înalt, protocoale și software care rulează următoarele servicii superioare :

Security manager protocol (SMP): Protocolul SMP se ocupă cu schimbul de cheie și sarcinile de criptare atunci când dispozitivele sunt conectate între ele. Procedura pentru stabilirea unei conexiuni se face într-un număr de pași care necesită mai multe schimburi chei.

Generic attribute profile ( GATT ): GATT este un cadru care descrie diferite servicii și tipuri de profile. Profilele sunt standardizate prin Bluetooth SIG și prevăd specificații pentru formatarea datelor atunci când comunică cu aplicația. Fiecare profil GATT este proiectat pentru un anumit tip de funcționalitate și folosesc perechi atribut / valoare, care sunt predefinite pentru fiecare profil. Câteva exemple de profile adoptate de Bluetooth SIG sunt profil de glucoză, profilul de ritm cardiac și profilul de proximitate. O listă completă de profilelor adoptate este listata in [ 2 ]. Atributele sunt apoi tratate prin protocolul ATT .

Attribute protocol ( ATT ): Protocolul ATT este folosit pentru a trimite atribute între două dispozitive care comunică între ele.

Generic access protocol ( GAP ): Definește procedurile utilizate pentru conectarea cu alte dispozitive.

Logical link control and Adaption protocol ( L2CAP ): Stratul L2CAP este responsabil pentru multiplexare datelor între straturile superioare gazdă și inferioare de tip controler. Are similitudini cu protocolul L2CAP utilizate în traditionale Bluetooth, dar a fost optimizat și simplificat pentru BLE.

Când utilizați stiva BLE pentru anumite aplicații nu mai este necesar să se facă o asociere directă între dispozitive pentru a putea face schimb de date, chiar și în modul "Emitător" datele pot fi trimise în canalele de publicitate fără a stabili o conexiune. BLE are un total de 4 moduri diferite care sunt suportate: Central, Periferic, Emițător și Observator. Rolul central este similar cu Bluetooth-ul clasic Master fiind conceput pentru dispozitive mai sofisticate care inițiază și gestionează mai multe conexiuni. Specificația BLE arată că un dispozitiv cu rol central poate sprijini până la o infinitate de conexiuni simultane cu diferite dispozitive periferice. În realitate doar un număr mic de conexiuni simultane sunt acceptate. Aceasta este o îmbunătățire a specificației comparativ cu Bluetoot-ul clasic care susține maxim 7 conexiuni simultan. Un dispozitiv periferic este de obicei un dispozitiv simplu care poate ocupa doar o conexiune activă la un moment dat cu dispozitivele cu rol central. Dispozitivul cu rol central trebuie să furnizeze suport atât pentru rolul Master cat și pentru rolul Slave. Deși un anumit dispozitiv nu trebuie să le sprijine pe ambele. Un dispozitiv poate sprijini un singur, mai multe sau toate rolurile specificate, dar numai unul poate fi activ la un moment dat.

Figura 3.3: Structura stivei BLE

Moduri de descoperire și conectare

Specificația  BLE definește două abordări diferite pentru a efectua descoperirea de noduri conectate :

Scanare activă

Scanare pasivă

Pentru scanarea pasiva, dispozitivul central ascultă pe canalele de publicitate pentru a capta pachetele publicitare transmise de dispozitive conectabile.

Pentru scanarea activă, dispozitivul central similar cu scanarea pasivă ascultă pentru a capta pachetele publicitate, însă la primirea unui pachet, dispozitivul central poate examina ce moduri suportă dispozitivului de publicitate. Dacă pachetulele de publicitare indică faptul că dispozitivul este conectabil sau pot fi citit, se poate trimite un pachet de solicitare de scanare la dispozitivul pentru a cere mai multe informații. Specificația BLE are trei canale publice dedicate care au fost definite: 37, 38 și 39 [6], fiind în mod specific alocate în spectrul de frecvențe pentru a minimiza coliziunea cu cel mai frecvent utilizate canale Wi-Fi 1, 6 și 11. Această modificare adusă în comportamentul dispozitivelor înseamnă că descoperirea de dispozitive noi poate fi finalizată mult mai repede, deoarece acesta nu mai trebuie să scaneze întregul spectru de frecvențe. În plus față de această îmbunătățire, tehnologia BLE de asemenea permite defininirea setarilor și cât de des să aibă loc notificarile, astfel se pot seta trimiterea de notificari la un interval de 10 secunde sau la fiecare 20 de milisecunde. Asta înseamnă că timpul necesar pentru a descoperi un dispozitiv este legat de intervalul de notificare. O privire de ansamblu completă a frecvențelor și canalelor BLE este prezentată în figura 2:

Figura 3.4: Prezentare generală a spectrului și canalelor de frecvențe BLE

Bluetooth Classic vs Bluetooth Low Energy

Deși Bluetooth clasic și Bluetooth Low Energy utilizează tehnologie similară trebuie facută distincția între acesta deoarece sunt complet diferite și sunt concepute pentru diverse scopuri și tipuri de aplicații.

Bluetooth Low Energy (BLE): este o rețea personală wireless (PAN) fiind definită mai nou în specificația Bluetooth. Este soluția cu cost redus și cu un consum foarte mic de energie al bateriei. BLE vizează industria de fitness, asistență medicală, de securitate și de divertisment la domiciliu precum și poziționarea în interiorul cladirilor.

Bluetooth clasic: este o rețea personală wireless (PAN), care permite comunicarea wireless pe rază scurtă între zonele personale fără fir, dispozitive fixe și mobile.

Table 3-3. Comparație Bluetooth Clasic vs Bluetooth Low Energy

Beacon

Beacon-urile  sunt dispozitive emițătoare într-un singur sens însă pot trimite semnale către o aplicație instalată pe un telefon, ipad sau tabletă compatibil cu tehnologia Bluetooth Low Energy (BLE), așa cum îi spune și numele consumă mai puțin din energia baterie și o regăsim în toate platformele hardware cu sisteme de operare superioare versiunilor Android 4.3 Jelly Bean și IOS 7. Mai mult decât atât, dacă nu aveți o aplicație instalată pe telefon care să poată citi semnalele transmise de beacon-uri, mesajul nu poate ajunge la receptor, respectiv în telefonul mobil.

Companii din diverse țări încep să folosească această tehnologie în scopul campaniilor comerciale de publicitate pentru produse sau servicii în interesul clienților și ca o prelungire a canalului de comunicare directă cu fanii brandului respectiv.

Există mii de Beacon-uri deja instalate în magazinele din SUA și în mall-uri, având ca exemplu magazinele Apple care sunt deja integrate cu această tehnologie, dar și alte branduri, muzee sau complexe comerciale au adoptat această noua formă de informare.

Se așteaptă ca aproximativ 20.000 de Beacon-uri să fie instalate în mall-uri, stadioane, muzee și aeroporturi pană la sfarșitul anului 2015. În momentul actual 50% din retailul american testează tehnologia BLE cu toate că gradul de adoptare al acestei tehnologii este de doar 3%. Aceasta pentru că nu toate telefoanele suportă upgrade la Bluetooth 4.0 și pentru că este o tehnologie relativ nouă.

Apple a anunțat tehnologia iBeacon ca marcă înregistrată care ajută la identificarea poziției și locației smartphone-urile în spații interioare. Tehnologia se bazează pe specificațiile Bluetooth Low Energy (BLE), fiind valabilă inclusiv pe sistemele de operare mobile pentru aproape toate smartphone-urile noi :

iOS pentru versiunile 5 sau mai mari

Android pentru versiunile 4.3 sau mai mari

Windows Phone pentru versiunile 8 sau mai mari

BlackBerry pentru versiunile 10 sau mai mari

Descriere

Beacon-urile sunt dispozitive de mici dimensiuni care sunt alimentate cu baterii mici, având capabiliatea de a emit semnale Bluetooth LE. Fiecare Beacon transmite un semnal unic de mai multe ori pe secundă, care pot fi recepționate de telefoanele mobile pe o rază mult mai mare decat Bluetooth clasic. Telefoanele se pot poziționa cu precizie primind semnale de la toate Beacon-urile din apropiere.

Spre deosebire de GPS, Beacon-urile pot fi utilizate pentru poziționarea exactă în interior. Au apărut numeroase aplicații care utilizează această tehnologie printre care :

Poziționarea în interiorul cladirilor

Aplicații de marketing

Applicații de servicii pentru clienți

Aplicații de asistență personalizată

După cum sugerează și numele, varianta Low Energy a Bluetooth este extrem de eficientă energetic astfel câștigând popularitate foarte mare într-un timp scurt. Din cauza impactului mare pe piață, companiile producatoare de Beacon-uri au devenit tot mai multe astfel existând numeroase tipuri de Beacon-uri pe piață, majoritatea dintre ele sunt alimentate cu baterii.

Componente Beacon

Beacon-urile sunt formate din patru componente principale :

Beacon Hardware

Beacon Firmware

Beacon Cloud Infrastructure

Beacon Mobile SDK

Beacon Hardware

Hardware-ul constă dintr-un microcontroler cu un cip de radio Bluetooth LE și o baterie. Chipset-ul radio a fost optimizat pentru standardul Bluetooth LE, în timp ce versiunile mai vechi au fost concepute pentru Bluetooth Classic care a avut un consum de energie mai mare.

Cele mai populare tipuri de baterii care se regăsesc în marea majoritatea a Beacon-urilor sunt bateriile de tip monedă. Acumulatori litiu-ion sunt folosiți datorită masei atomice scăzute a elementului litiu care are o densitate energetică ridicată și oferă până la 1.000 mAh. Unele Beacon-uri sunt alimentate extern, putând fi instalate într-o priză de perete sau o priză USB (vezi Tabelul 4.1). Aceste Beacon-uri nu au nevoie de înlocuire a bateriei și pot fi economice în anumite situații.

Tabelul 4.1: Opțiunile de alimentare pentru Beacon-uri

Beacon Firmware

Fiecare tip de Beacon are un firmware specific, care conține logica (codul programat), care permite să funcționeze hardware-ul Beacon-ului. Firmware-ul poate controla mai multe caracteristici care au un impact în viața bateriei, astfel putem distinge două caracteristici importante:

Puterea de transmisie (puterea TX): Dispozitivele Beacon transmit un semnal cu o putere de bază fixă, cunoscut sub numele de putere TX. Semnalul se propagă în aer iar puterea semnalului primit scade proporțional cu distanța dintre emitător și receptor. Cu cat putere de transmisie TX este mai mare înseamnă că semnalul poate călători pe distanțe mult mai lungi. Odată cu consumul bateriei puterea de transmisie TX scade, astfel dispozitivul emite semnale pe o rază mult mai mică.

Intervalul de transmisie: Rata (frecvență) cu care un Beacon emite un semnal diferă de la un tip de beacon la altul, însă fiecare tip de beacon este gata configurat cu setarile din fabrică. De exemplu un interval de 100 ms înseamnă că semnalul este emis la fiecare 100 de milisecunde (sau de 10 ori într-o singură secundă), iar un interval mai mare de 500 ms înseamnă semnalul este emis doar de două ori pe secundă, ceea ce înseamnă un consum al bateriei mult mai scazut. Pe măsură ce crește intervalul de transmisie, atât durata de viață a bateriei beacon-ului cât și a telefonului mobil scade. Nu există un standard pentru optimizare a intervalelor de transmisie astfel depinzând de tipul aplicației putem modifica setările Beacon-urilor astfel încât dacă aplicația este concepută să funcționeze corespunzător având nevoie de latență scăzută ar trebui să alegem intervale mai mici de transmisie iar în cazul aplicațiilor care au nevoie de o durată de viață a bateriei mai mare ar trebui să creștem intervalul de transmisie.

Caietul de sarcini oficial Apple pentru protocolul iBeacon specifică un interval de transmisie a semnalului de 100 ms. Cu toate acestea, majoritatea furnizorilor de Beacon-uri au optat pentru un interval mai mare de transmisie deoarece optează pe celelalte aspecte ale protocolului.

Fiecare Beacon prevede modul propriu de configurare hardware și parametrii asociați de putere TX și intervalul de transmisie a semnalului. Unele firme producătoare de Beacon-uri cum ar fi Kontakt, Estimote, RadBeacon și BlueSense Networks, oferă și un software special pentru configurarea Beacon-urile.

Alți producatori de Beacon-uri cum ar fi Minew, oferă o interfață prin care orice client GATT (cum ar fi aplicația LightBlue iPhone sau gattool pentru Linux) să poată configura Beacon-urile. Principalul avantaj al acestui tip de software este că se pot configurate de o dată sute de Beacon-uri.

Beacon-urile firmei Gimbal suportă și altele tipuri de protocoale decât protocolul iBeacon de la Apple.

Beacon Cloud Infrastructure

Beacon-urile emit semnale Bluetooth LE, care sunt recepționate de telefoanele mobile și interpretând aceste semnale putem afla poziția în spațiu a telefonului. Aceste date au o semnificație scazută dacă nu avem un serviciu de backend inteligent care să facă asocierea dintre semnalul primit și telefon. În ajutorul acestor tipuri de aplicații s-a dezvoltat o soluție bazată pe servere cloud care analizează toate datele recepționate de la Beacon-uri, fiind creierul din spatele tuturor operațiunilor.

Beacon Mobile SDK

Beacon-urile trebuie să fie integrate în aplicații mobile, astfel încât acestea să poată comunica cu serverele cloud, care recepționează acțiunile utilizatorului și îi determină locația.

Anumiți producatori de Beacon-uri au dezvoltat SDK-ul propriu specific pentru diferite sisteme de operare mobile.

Protocoale Beacon

La momentul actual printre protocoale Beacon se numară :

iBeacon

https://developer.apple.com/ibeacon/Getting-Started-with-iBeacon.pdf

altBeacon

https://github.com/AltBeacon/spec

samsung-placedge

http://developer.samsung.com/samsung-placedge

Deoarece în cadrul acestui proiect am folosit protocolul iBeacon [ 1 ] îl vom analiza mai în amănunt.

Protocolul iBeacon

Potrivit specificațiilor [ 1 ] protocolul iBeacon a fost introdus în sistemele de operare superioare versiuni iOS 7. Protocolul iBeacon este o tehnologie interesantă care permite noi posibilități de tipuri de aplicații. Specificația Bluetooth Low Energy (BLE) împreună cu un dispozitiv cu tehnologie iBeacon poate fi folosit pentru a stabili o regiune în jurul unui obiect. Acest lucru permite unui dispozitiv posibilitatea de a determina când acesta a intrat sau părăsit o anumită regiunea, împreună cu o estimare de apropierea față de Beacon.

Dispozitivele cu tehnologie iBeacon pot fi alimentat cu ajutorul unei baterii tip monedă pentru o lună sau mai mult depinzând de intervalul de transmisie, astfel putând avea o durată de viață a bateriei mai mare de 1 an. Utilizând baterii mai mari, sau pot fi alimentate extern pentru perioade lungi de timp. Dispozitive iOS poate fi, de asemenea configurat pentru a genera reclame iBeacon, deși această funcționalitate este limitată. Acest lucru ar fi adecvat pentru utilizări, deoarece telefonul mobil poate să devină un iBeacon pentru o perioadă scurtă de timp, însă doar utilizând aplicații specifice.

Trebuie remarcat faptul ca iBeacon-urile doar transmit informații , nu și receptionează informații, astfel standardul semnalului transmis de Beacon este compus din :

UUID ( Identificator unic pentru a distinge iBeacon-urile )

MAJOR ( Utilizat pentru a grupa seturi de iBeacon-uri )

MINOR ( Folosit pentru a specifica un anumit iBeacon într-un grup )

Exemplu:

UUID : B9407F30-F5F8-466E-AFF9-25556B57FE6D

Major-ID: 1

Minor-ID: 2

Beacon-ul nu face nimic în afară de trimiterea aceastei bucați de informație la un anumit interval de timp configurat. UUID, Major-ID și Minor-ID furnizează informațiile de identificare pentru fiecare Beacon. De exemplu, dacă firma A decide să amplaseze Beacon-uri în interiorul magazinului și să iși creeze o aplicație care să poată informa utilizatorul cum ajunge la un anumit produs s-ar defini un UUID, care este unic pentru fiecare produs în interiorul magazinului, astfel fiecarui produs i-ar corespunde un alt Major-ID ,Minor-ID. Un exemplu mai elocvent pentru diferite tipuri de magazine se găsește în Tabelul 4.2

Tabelul 4.2: Exemplu de identificatori Beacon pentru diferite locații

Tehnici de poziționare

Trilaterație

Fingerprinting

Average

Analiza datelor

Analiza RSSI

Caracteristici RSSI pentru Bluetooth Low Energy

Masurare static RSSI

RSSI vs Distanța reală

Variația RSSI față de distanță

Concluzii

Referintele bibliografice

Definite prin doua stiluri.

"Referinte numerotate":

A. C. Shaw, "Reasoning About Time in Higher Level Language Software", in IEEE Transactions on Software Engineering, No. 15 (7), July 1989, pp. (875-889).

"Referinte lista nume":

[Shaw 89] A. C. Shaw, "Reasoning About Time in Higher Level Language Software", in IEEE Transactions on Software Engineering, No. 15 (7), July 1989, pp. (875-889).

Title of ArticleTitle of Article

Similar Posts