System mikrolokalizacji w oparciu o technologię ibeacons

Podobne dokumenty
Ę ć ć Ń Ś ć

Ś Ó Ł

Ó ć Ń ć ć

ś ó ó ż

Ł Ę Ę Ł Ł Ś Ę Ę Ę Ę Ę ź

Ść ć Ż ć Ż Ś ć ż ń ż Ż ć Ś Ż ń

ń ń ć ń Ź ć ń ć Ź ń Ź ź ć Ę ć Ź ć ź ń ń ź

Ę Ł ź Ś ź ź ź

Ś ź ź Ł Ó Ń

ń ż ś


Ń ź ź ź ź Ś ź ź Ś ź

ż ć Ń Ł Ż Ść Ść ć Ż Ść Ż ć ć Ż ź Ś ć ć Ó ć ć Ść

Ł Ś Ę Ł Ś Ś Ś Ą ń ń Ó

ź ź ó ó ś ó ó ś ż ź ź ż ż ó ż ó ó ó ż ż

Ń Ń ć ć Ł Ć Ń ć Ę

Ż Ą ź ź ź ź

Ę Ł Ź Ł

Ł ć Ś ć Ś ć ć Ę ź ć ć

Ł Ś Ś Ó ń

Ą Ś Ó

ś ś Ż ś Ń Ń Ę Ł ć ś Ł

Ż Ń Ś Ł Ó Ś ń Ż ń ć Ż ć ń ź Ż ć ć ć ń ń ć Ż Ż ć

ć ć Ę Ó Ś ż ż Ś ż ż ż Ęć ż ć ć ż ż

ń ń ń ż ć Ł ż ż ń ż Ą ń Ż ż

ń ć Ł Ą

Ż ć ć Ż ź ć ć ż ć ż ć Ż ć Ą ń Ż ć Ę

ć ć

Ł Ę Ż Ą Ęć Ń Ń Ł Ę

Ę ć ń ć ć ń ć Ź Ś ń ń ń ń ń ń Ł Ż Ł Ę Ó ń Ż

Ó Ó Ę ź

Ł Ż

Ż Ż Ł

ń ż ń ń Ą ń ż ż ń ż ż ż Ż ń Ą ń

ć

Ś ź Ś Ś

ć ć Ść ć Ść ć ć ć ć

Ł ć Ł ć ć ć ć Ń ć ć

Ł Ż Ń Ń ć

ź Ż Ż Ś ć ć Ł ż Ż Ż Ż Ż Ł Ż Ł Ż Ż Ż ż ż ż ż ż ż Ż ć Ż Ś Ś Ń Ść

ż Ś ż ż ć ć Ś Ź Ą

Ł Ł Ę Ż ź

ć ć Ą Ź Ż Ą Ż ć Ą Ż Ź

ć ę ę ć ę Ś ę Ń ę ź ę ę ę Ś ę ę ę Ó Ł Ł Ę Ą ę

Ł Ł ń ć Ą

Ó Ą ź ć Ę Ń Ę

ź Ł Ą Ż Ń Ń Ś Ń ć

ż ń ń ź ź ź

Ą Ó Ź Ą Ź Ź

ź ć

ż ó ś Ą ć ó ó ó ś ś ś ó ś Ł ś

Ż Ż

ć Ś

ż ż Ę Ę Ą Ó

ć ż Ż Ż Ą Ż Ż Ż

Ę ż Ó Ł Ść ą ą ą Ą ć ż ą ż ń ą ć ż ć Ę ą ż ą ą ż ą ź ą ń ą ń ą ą ż ć


ć ć ć ć ź ć

ć Ś Ć ź Ż Ł ć

ć ć Ę Ł

Ż ń ń ź ć Ż Ł ć ż ć ż ć Ś Ć ć ż ń ż ń ń ż Ć ż ć ż ń

Ń ć

Ś

ę ę ę

ż ń ż ć ń ż ść ś ż ć ś ś Ż ść ść ś ść ść ść ść ć ń ć ń ć ń ś ś ś ż ć ź ś ś ś ń ż ś ż ż ż ś ś ż ć

Ł ć ń ż ż ń ń ń ń ń ń ń ń ń ń ń ń ń ń ń ń ń ń

ń ć ć ć ć ć ć ć ń ć Ę ź ć ź ź ź ć ć ń

Ą ź Ą Ą Ś Ó Ą

Ę Ś Ż Ż Ć Ś Ś Ś Ó Ł Ę Ł Ś Ś Ż Ś


Ś Ę ć ż ż Ó ż ż

Ź Ś Ś

Ę Ł Ł

ć ć Ś Ę ć Ż ć ć ć Ż Ż Ż Ć ć Ź Ś ć ć ć ć ć Ż

Ę Ę ź Ż Ę Ż ć Ę ć Ż ń ś Ź Ż

Ó ć ć ż ć ć ż

Ś Ę Ę

ć Ó

ć ć Ż ź Ś Ó Ś ć Ś

Ł ź ź Ń ź Ś

Ł ć

ć ć Ć ć ć ć

ż Ł ż ż ż ż ż ż ż ż Ę ż ż Ó ż ż ż ż ż ż ź

Bluetooth 4.0 Szerokopasmowy ibeacon

ż ż Ł ż ć ż ż ć ć ż ż ć ż ć ż ć ć ż ć ż ć ż ż ć ż ć ć ż ć ż ż

Ż Ł ć ć ź Ź Ź ć Ż

Ć Ź Ł ń Ź

ż Ż ń ć

ź Ź Ź Ź Ł


ON!Track smart tag AI T380 Polski

Ą Ł Ę Ń Ą Ó ŚĆ Ś ć Ó ń ć ŚĆ ć ć

Ó Ó Ę

Ż Ź Ź ź Ż Ż Ź Ą Ą Ż ź Ś Ż Ż Ś Ź Ś Ą

Ą Ź ć Ń Ą ć Ź Ź

Ę Ę Ę Ś Ł Ł Ł Ś

Ó Ż ż Ć ż ż ż Ó Ę Ę Ó Ó ż Ó Ł ż Ł

ź ź

Ł Ą Ó Ł ć Ą ć ć

Ż Ę ź Ó

Transkrypt:

System mikrolokalizacji w oparciu o technologię ibeacons Karol Kempa Wydział Inżynierii Mechanicznej i Informatyki Kierunek Informatyka, Rok II, Stopień II {karol.kempa90@gmail.com} Streszczenie GPS jest obecnie powszechnie stosowany i nawigacja z jego użyciem stała się już standardem. Brakuje jednak odpowiednika, który można byłoby z powodzeniem zastosować wewnątrz budynków lub w otwartych przestrzeniach gdzie nie ma stałego zasilania. Odpowiedzią na tą potrzebę jest technologia ibeacons oraz moduły wyposażone w Bluetooth 4.0 umożliwiające w ten sposób stworzenie systemu mikrolokalizacji dla urządzeń mobilnych. 1 Wstęp Apple wraz z systemem ios7 wprowadziło nową technologię ibeacons[1] odpowiadającą za mikrolokalizację w miejscach gdzie system GPS zawodzi. Wykorzystane zostały w tym celu nadajniki Bluetooth umożliwiające rozgłaszanie danych, monitorowanie czy określenie odległości od modułów. W artykule zostanie opisana technologia ibeacons wraz z przykładowym zastosowaniem oraz istniejącymi implementacjami. 2 Technologia ibeacons 2.1 Co to jest ibeacons? ibeacons jest technologią służącą do stworzenia systemu mikrolokalizacji. Kluczem jest wykorzystanie nadajników Bluetooth Low Energy, które w porównaniu do klasycznego Bluetooth mają o wiele mniejsze zapotrzebowanie na, a co najważniejsze umożliwiają rozgłaszanie danych. Moduły mogą nawet nadawać dane w promieniu 70metrów. Moduł zbudowany jest z: 32bitowego procesora ARM Cortex M0 CPU, 256kB pamięci flash, akcelerometru, czujnika temperatury, 1

modułu 2.4 GHz Bluetooth 4.0 Smart, całość zasilana jest baterią Panasonic CR2450 620mAh. Schemat budowy zaprezentowany jest na Rysunku 1. Rys. 1: Budowa modułu ibeacons firmy Estimote[3] 2.2 Komunikacja Model nadawania zastosowany w Bluetooth 4.0 zastąpił poprzedni standard, w którym konieczne było parowanie dwóch urządzeń w celu komunikacji i wymiany danych. Zaletą wykorzystania Bluetooth Low Energy jest bardzo małe zapotrzebowanie na energię [Rys 2.], jednak związana jest z tym mała ilość rozgłaszanych danych. Każdy pakiet składa się z następujących pól: proximity UUID, major, minor, TxPower. Konkretne regiony, czyli obszary w którym moduły rozgłaszają pakiety, oznaczane są za pomocą pola UUID, natomiast do zapewnienia odpowiedniego kontekstu i szczegółowej identyfikacji przeznaczone są pola major i minor, dzięki którym można załadować odpowiednie dane z zewnętrznego źródła. Pole TxPower służy do modyfikacji siły sygnału każdego modułu. 2.3 Żywotność Zainstalowana bateria pozwala nawet do 2 lat pracy przy domyślnych ustawieniach i optymalnych warunkach otoczenia. W zależności od wymagań projektu możliwa jest zmiana 2

Rys. 2: Porównanie zapotrzebowania na energię Bluetooth i Bluetooth Low Energy odstępów pomiędzy kolejnymi pakietami z zakresu od 50ms do 2000ms, w celu częstszego lub rzadszego odświeżania danych, gdzie domyślną wartością jest 200ms. Częstotliwość jest znaczącym czynnikiem wpływającym na żywotność baterii. Ponadto idealną temperaturą otoczenia jest 23 C, natomiast poniżej -10 C i powyżej 60 C czas pracy znacznie spada. Ostatnim czynnikiem wpływającym na żywotność baterii jest siła nadawania syngału. 2.4 Lokalizacja Smartfon znajdujący się w obszarze modułu na bieżąco monitoruje siłę sygnału, która rozpatrywana jest w czterech strefach zależnie od odległości, Rys 3: Rys. 3: Pokrycie powierzchni unknown - poza obszarem nadawania 3

Moduł emituje sygnał we wszystkich kierunkach jednocześnie, tworząc w ten sposób kulę, zatem możliwe jest określenie dokładnej lokalizacji wykorzystując w tym celu przynajmniej trzy moduły oraz zagadnienie triangulacji. 2.5 ibeacons a istniejace technologie Technologię ibeacons można porównać na kilku płaszczyznach do następujących podobnych rozwiązań: GPS - Global Positioning System - system nawigacji satelitarnej, jednak jest niewystarczający w przypadku obiektów zamkniętych i budynków. NFC - Near Field Communication - rozwiązanie stosowane jedynie w urządzeniach z systemem Android, wyposażonych w odpowiednie moduły NFC realizujące komunikację między odpowiednimi znacznikami. Działa jedynie na bardzo małych odległościach, maksymalnie 20cm, co za tym idzie pokrycie powierzchni za pomocą tagów NFC jest bardziej skomplikowane logistycznie i droższe w porównaniu do stosowanych modułów ibeacons. Nie pozwala także na określenie odległości. WiFi - określenie lokalizacji na podstawie siły sygnału możliwe jest jedynie na urządzeniach z systemem Android, natomiast nie ma takiej możliwości w systemie ios. ibeacons łączy cechy tych technologii tworząc w ten sposób system: niezależny od platformy - dostępne odpowiednie biblioteki dla systemów ios, Android, Windows, dokładny i potrafiący pokryć dużą powierzchnię - także wewnątrz budynków, pracujący bardzo długo na jednej baterii. 2.6 Dostępność na urzadzenia Technologia ibeacons dostępna jest na urządzeniach z systemem ios7: iphone 4s i nowsze ipad 3 i nowsze ipad mini i nowsze ipod touch 5 i nowsze Google wprowadziło również API do obsługi Bluetooth LE od systemu Android 4.3. Dodatkowo urządzenia muszą być wyposażone w moduły Bluetooth 4.0. Do takich urządzeń należą między innymi: Samsung Galaxy S3, S4, S4 Mini, S5, Note 2 i Note 3, Google Glass, Nexus 7 (2013 wersja), Nexus 4, Nexus 5, Optimus G, 4X, G2 i nowsze, HTC One i Butterfly. 4

3 Projekt Ideą aplikacji było stworzenie interaktywnego przewodnika po muzeum, dostępnego na urządzenia mobilne z systemem ios oraz wykorzystującego mikrolokalizację opartą o nadajniki ibeacons. W założeniach system ma za zadanie: monitorować czy znajduje się w obszarze nadawania modułu z odpowiednim identyfikatorem, sprawdzać czy w obszarze znajduje się więcej niż 1 moduł, ustalać odległość od modułu, odpowiednio reagować na identyfikatory beaconów znajdujących się najbliżej użytkownika. Aplikacja na podstawie odnalezionych modułów najpierw zaprosi użytkownika do zwiedzenia muzeum gdy ten znadzie się w obszarze ich nadawania, a następnie automatycznie wykryje położenie użytkownika i przedstawi dodatkowe informacje o obiekcie, przy którym znajduje się zwiedzający. Projekt dla systemu ios7 wymaga jedynie biblioteki CoreLocation odpowiadającej za prawidłowe działanie mikrolokalizacji. W celu obsługi beaconsów na ios należy wykorzystać obiekt klasy CLLocationManager. Inicjalizacja tego obiektu wygląda następująco: / / i n i c j a l i z a c j a o b i e k t u o d p o w i e d z i a l n e g o za o d b i e r a n i e z d a r z e ń s e l f. beaconmanager = [ [ CLLocationManager a l l o c ] i n i t ] ; s e l f. beaconmanager. d e l e g a t e = s e l f ; / / o k r e ś l a n y j e s t UUID r e g i o n u i i d e n t y f i k a t o r, k t ó r y / / d o s t a r c z a i n f o r m a c j i NSUUID * uuid = [ [ NSUUID a l l o c ] i n i t W i t h U U I D S t r i n g : @" 8492 E75F 4FD6 469D B132 043FE94921D8 " ] ; s e l f. r e g i o n = [ [ CLBeaconRegion a l l o c ] initwithproximityuuid : uuid i d e n t i f i e r :@" ESTBeaconRegion " ] ; / / r o z p o c z ę c i e n a s ł u c h i w a n i a danego r e g i o n u [ s e l f. beaconmanager s t a r t M o n i t o r i n g F o r R e g i o n : s e l f. r e g i o n ] ; Metody odpowiedzialne za odpowiednie zdarzenia wejścia i opuszczenia regionu, a także zmianę położenia w danym regionie. ( void ) l o c a t i o n M a n a g e r : ( CLLocationManager *) manager d i d E n t e r R e g i o n : ( CLRegion *) r e g i o n { / / p r z y w e j ś c i u w r e g i o n w y ś w i e t l a n y j e s t komunikat oraz / / n a s t ę p u j e r o z p o c z ę c i e a k t u a l i z a c j i p o ł o ż e n i a u ż y t k o w n i k a [ s e l f s h o w E n t e r N o t i f i c a t i o n ] ; s e l f. beaconmanager s t a r t R a n g i n g B e a c o n s I n R e g i o n : r e g i o n ] ; } ( void ) l o c a t i o n M a n a g e r : ( CLLocationManager *) manager d i d E x i t R e g i o n : ( CLRegion *) r e g i o n { / / p r z y o p u s z c z e n i u r e g i o n u w y ś w i t l a n y j e s t komunikat oraz / / n a s t ę p u j e z a t r z y m a n i e a k t u a l i z a c j i p o ł o ż e n i a 5

} [ s e l f s h o w E x i t N o t i f i c a t i o n ] ; s e l f. beaconmanager s t o p R a n g i n g I n R e g i o n : r e g i o n ] ; ( void ) l o c a t i o n M a n a g e r : ( CLLocationManager *) manager didrangebeacons : ( NSArray *) beacons i n R e g i o n : ( CLBeaconRegion *) r e g i o n { / / z n a j d u j e m y n a j b l i ż s z y moduł i p r e z e n t o w a n e sa i n f o r m a c j e / / o danym o b i e k c i e CLBeacon * beacon = beacons. f i r s t O b j e c t ; i f ( CLProximityNear == beacon. p r o x i m i t y ) { [ s e l f p r e s e n t A d d i t i o n a l I n f o F o r N e a r e s t B e a c o n : beacon. major ] ; } } Prezentowana implementacja odpowiada za podstawowe działanie systemu mikrolokalizacji dla platformy ios. Pierwsza wersja aplikacji skupiać się będzie na dokładnym zbudowaniu mapy muzeum wraz z obiektami oraz wykorzystaniu triangulacji w celu określenia lokalizacji. W przyszłości przewidziane są dodatkowe moduły rozszerzające działanie aplikacji o elementy gier społecznościowych wykorzystujących lokalizację użytkownika w muzeum, a także narzędzia do analizy ruchu i przepływu użytkowników wewnątrz muzeum. 4 Podsumowanie Pomimo, że technologia ibeacons jest stosunkowo nowa, to zyskała już dużą popularność. Z powodzeniem została ona wdrożona już na największych stadionach sportowych[4], galeriach handlowych czy także personalizowanych ofertach reklamowych ograniczonych do wybranej lokacji. Niezaprzeczalnymi jej zaletami są m.in. łatwość w integracji modułów, implementacja dla urządzeń mobilnych czy możliwości lokalizacji gdzie inne systemy zawodzą. Technologia stanowi element łączący urządzenia mobilne w realnym świecie oraz krok ku realizacji idei Internet of Things[2]. Literatura [1] https://developer.apple.com/library/ios/documentation/userexperience/conceptual/ LocationAwarenessPG/RegionMonitoring/RegionMonitoring.html [2] http://en.wikipedia.org/wiki/internet_of_things [3] www.estimote.com [4] h t t p : / / mlb. mlb. com / news / a r t i c l e / mlb / home openers near mlbcom at the b a l l p a r k app g e t s u p d a t e?ymd=20140327& c o n t e n t _ i d =70214274& vkey=news_mlb 6