Разработка мобильного приложения для iOS c использованием технологии “iBeacon” для решения задач навигации внутри зданий на основе беспроводных сетей

Разработка мобильного приложения для IOS c использованием технологии "iBeacon" для решения задач навигации внутри зданий на

основе беспроводных сетей

Р.Ю. Сафронов Институт инженерной экологии и химического машиностроения

Аннотация: В статье описывается технология iBeacon, возможности ее применения, а так же разработка мобильного приложения для навигации внутри помещений.

Ключевые слова: беспроводные сети, датчики, навигация, iBeacon.

1. Введение

В 2013 году компания Apple представила новую версию операционной системы iOS7[1], в которой появилась поддержка технологии на основе беспроводных сетей iBeacon.

Данная технология призвана открыть новые возможности локационных приложений, мобильных платежей и рекламных стратегий.

Технология iBeacon разработана компанией Apple и работает на представленных ею устройствах. На некоторых смартфонах с операционной системой Android тоже есть поддержка iBeacon. Учитывая, что операционные системы iOS и Android установлены на 92,1% смартфонах в мире [2], эта технология получит широкое распространение.

2. Особенности

iBeacon - новая технология от компании Apple для задач микронавигации и микро-позиционирования. позволяющая передавать данные между беспроводными устройствами. В качестве передающего устройства, может использоваться передатчик, выполняющий функцию маяка. Сигнал маяка обнаруживается смартфоном с возможностью определения расстояния

до него. Дальность обнаружения в зависимости от модели маяка и конечно, препятствий, достигает 50-70 метров[3]. Маяк работает автономно от батарейки, которой хватит от полугода до трех лет. Маяком также может быть сам смартфон или планшет.

iBeacon транслирует по Bluetooth Low Energy (Bluetooth LE) три параметра proximity UUID, major и minor. Операционная система для apple устройств iOS7 и выше делает работу с такими передатчиками проще.

Proximity UUID это уникальный 128 битный идентификатор, для всех маяков в определенной группе или в пределах здания есть одинаковый proximity UUID. Major и minor это 16 битные беззнаковые целые для нумерации маячков в пределах одного proximity UUID. Это рекомендации Apple, вы можете задать абсолютно любые значения для этих параметров, но рекомендованная схема удобнее[4]. Для разработчика, начиная с версии IOS7 открыты интерфейсы для разработки и необходимая документация.

Для сети, состоящей из большого числа маяков можно разработать симулятор беспроводной сети для моделирования ее работы[5].

3. Области применения

Возможные области применения:

- Навигация внутри помещений. Можно развесить маяки в пределах одного здания на разных этажах. На карте отображается положение человека в здании на определенном этаже. Подойдет для навигация в торговых центрах, аэропортах, на выставках и конференциях;

- Интерактивная экскурсия по музею. На картину или экспонат устанавливаются маячки, при приближении на смартфоне проигрывается информация об экспонате.

- Точное позиционирование в городе. Маячки развешиваем на памятники и объекты архитектуры. Целый город превращается в музей;

- Навигация для слепых. При обнаружении маячка проигрывать голосовое сообщение где пользователь находится и куда можно двигаться дальше;

- Скидки и акции в магазинах. На стеллаже с товаром устанавливается маячок. Проходим мимо него на телефон приходит информация о скидке или о рекламной акции;

- Ключи и пропуска: смартфон - ключ от квартиры, автомобиля, номера в гостинице или пропуск в офис.

4. Технология Bluetooth с низким энергопотреблением

Технология iBeacon основана на беспроводной технологии Bluetooth LE, отличающейся низким энергопотреблением. В конце 2009 года была выпущена версия спецификации ядра беспроводной технологии Bluetooth[6]. Главным достоинством её является сверхмалое максимальное энергопотребление, среднее энергопотребление и энергопотребление в режиме сна.

Устройства, использующие технологию Bluetooth LE, будут потреблять меньше энергии, чем более ранние Bluetooth-устройства.

Во многих случаях устройства смогут работать до трех лет на одной миниатюрной батарейке без необходимости подзарядки[7,8]. Таким образом, можно будет иметь, например, небольшие датчики работающие непрерывно.

Эта новая версия спецификации Bluetooth даёт возможность поддержки широкого диапазона приложений и уменьшает размер конечного устройства для удобного использования в различных областях.

5. Конкуренты

Прямых конкурентов у данной технологии нет. Ближайшим конкурентом является технология NFC (ближняя бесконтактная связь)[9], но она предназначена для передачи информации на малые расстояния. В то время как iBeacon позволяет передавать сигнал до 70 метров.

6. Разработка мобильного приложения

В роли маячков могут выступать не только специализированные беспроводные передатчики, но и iOS устройства, на которых установлена операционная система iOS7 и выше. Подойдут устройства с поддержкой Bluetooth 4 LE, т.е. iPhone 4s, iPad 3 и более новые.

В данной статье первое устройство будет выступать в роли передатчика, второе в качестве приемника. В качестве тестовых устройств выступает iphone 5 - передатчик и ipad mini 2 - приемник.

Программа пишется в среде разработки xcode 6, на языке objective-C, это в корне отличается, например, от программирования контроллеров на языке FBD[10]. В отличие от FBD, objective-C является объектно-ориентированным языком программирования, построенный на основе языка Си.

На первом устройстве необходимо получить список маячков в зоне видимости с определенным Proximity UUID, а также значениями major и minor при помощи метода startRangingBeaconsInRegion. Программа определяет примерное расстояние до маячка и погрешность расстояния в метрах. Фиксируются три зоны позиционирования: Immediate, Near, Far.

Далее происходит мониторинг региона. Когда пользователь заходит в зону действия маячка или покидает ее, возникают события didEnterRegion/didEnterRegion (метод startMonitoringForRegion). Причем в обновлении iOS7.1 мониторинг работает, даже когда ваше приложение находится в фоновом режиме, при наступлении события приложение будет разбужено локальным push-уведомлением.

На втором устройстве стоит задача передачи сигнала. Сначала происходит инициализация маячка методом

initWithProximityUUID:major:minor:identifier. Затем передача сигнала начинается после выполнения комманды startAdvertising.

7. Эксперимент

На плане указано расположение передатчика и приемника (рис.1). Приемник не фиксирует точную дальность до передатчика, а фиксирует нахождение в одной из трех зон: малая, средняя, высокая. Приемник зафиксировал три события:

- вход в квартиру: высокая дальность;

- вхождения в комнату с передатчиком: средняя дистанция;

- нахождение в непосредственной близости от передатчика: малая дальность.

Серьезным минусом является то, что существует серьезная погрешность и задержка во времени для обновления информации. Если поставить преграду на пути сигнала приемник может показать выход из зоны. Именно поэтому данная технология не подходит для определения точной дистанции до объекта.

Рис. 1. - Фиксация трех зон передатчика

< Back

Beacon found

Yes

ProximityUUID

B558CBDA-4472-...

Major Minor

2

Accuracy

0.101351

Distance

Immediate

RSSI

-40

Рис. 2. - Экран приемника

8. Результаты

Исследование показало, что технология отлично справляется с задачей позиционирования внутри зданий, но технология совершенно не подходит для определения точной дистанции и сильно подвержена помехам.

1. iOS 7 // apple.com URL: support.apple.com/kb/DL1682?viewlocale=ru_RU&locale=ru_RU

2. Анализ рынка смартфонов // appleone.by URL: appleone.by/2013/02/ios-os-x/ios-i-android-kontroliruyut-92-mirovogo-rynka-smartfonov/

3. Новинка iOS 7: технология iBeacon секретное оружие Apple // macilove.com URL: macilove.com/news/new-ios-7-technology-ibeacon-apple-s-secret-weapon/.

4. Addey D. iBeacons // daveaddey.com URL: daveaddey.com/?p=1252

5. Кудр Л. А. Разработка симулятора беспроводной сенсорной сети // Инженерный вестник Дона, 2013, №3 URL: ivdon.ru/ru/magazine/archive/n3y2013/1809.

Литература

6. Стандарт Bluetooth, PressReleasesDetail // bluetooth.com URL: bluetooth.com/Bluetooth/Press/SIG/SIG_INTRODUCES_BLUETOOTH_LOW_E NERGY_WIRELESS_TECHNOLOGY_THE_NEXT_GENERATION_OF_BLU ETOOTH_WIRELESS_TE.htm

7. Bluetooth specification // bluetooth.com URL: www.bluetooth.com/Bluetooth/Technology/Building/Specifications/

8. Kardach J. How Bluetooth got its name // eetimes.com URL: eetimes.com/electronics-news/4182202/Tech-History-How-Bluetooth-got-its-name 9. Стандарт NFC // ecma-international.org URL: ecma-international.org/publications/standards/Ecma-352.htm

10. Севастьянов Б.Г., Жолобов И.А., Севастьянов Д. Б. Принципы программирования контроллеров на языке FBD // Инженерный вестник Дона, 2014, №2 URL: ivdon.ru/ru/magazine/archive/n2y2014/2344.

References

1. iOS 7. apple.com URL: support.apple.com/kb/DL1682?viewlocale=ru_RU&locale=ru_RU

2. Analiz rynka smartfonov [Smartphone market analysis]. appleone.by URL: appleone.by/2013/02/ios-os-x/ios-i-android-kontroliruyut-92-mirovogo-rynka-smartfonov/

3. Novinka iOS 7: tehnologija iBeacon sekretnoe oruzhie Apple [IOS7: iBeacon technology - Apple's secret weapon]. macilove.com URL: macilove.com/news/new-ios-7-technology-ibeacon-apple-s-secret-weapon/

4. Addey D. iBeacons. daveaddey.com URL: daveaddey.com/?p=1252

5. Kudr L.A. Razrabotka simuljatora besprovodnoj sensornoj seti, Inzenernyj vestnik Dona (Rus), 2013, №3 URL: ivdon.ru/ru/magazine/archive/n3y2013/1809.

6. Bluetooth, PressReleasesDetail. bluetooth.com URL: bluetooth.com/Bluetooth/Press/SIG/SIG_INTRODUCES_BLUETOOTH_LOW_E

NERGY_WIRELESS_TECHNOLOGY_THE_NEXT_GENERATION_OF_BLU ETOOTH_WIRELESS_TE.htm

7. Bluetooth specification. bluetooth.com URL: www.bluetooth.com/Bluetooth/Technology/Building/Specifications/

8. Kardach J. How Bluetooth got its name. eetimes.com URL: eetimes.com/electronics-news/4182202/Tech-History-How-Bluetooth-got-its-name

9. NFC. ecma-international.org URL: ecma-international.org/publications/standards/Ecma-352.htm

10. Sevast'janov B.G., Zholobov I.A. , Sevast'janov D. B. Principy programmirovanija kontrollerov na jazyke FBD, Inzenernyj vestnik Dona (Rus), 2014, №2 URL: ivdon.ru/ru/magazine/archive/n2y2014/2344.