Научная статья на тему 'ОСОБЕННОСТИ РАЗРАБОТКИ МОБИЛЬНЫХ ПРИЛОЖЕНИЙ ДЛЯ УСТРОЙСТВ ПОД УПРАВЛЕНИЕМ ОС IOS С ИСПОЛЬЗОВАНИЕМ ТЕХНОЛОГИИ BLUETOOTH LOW ENERGY'

ОСОБЕННОСТИ РАЗРАБОТКИ МОБИЛЬНЫХ ПРИЛОЖЕНИЙ ДЛЯ УСТРОЙСТВ ПОД УПРАВЛЕНИЕМ ОС IOS С ИСПОЛЬЗОВАНИЕМ ТЕХНОЛОГИИ BLUETOOTH LOW ENERGY Текст научной статьи по специальности «Электротехника, электронная техника, информационные технологии»

CC BY
168
14
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОБИЛЬНАЯ РАЗРАБОТКА / МОБИЛЬНЫЕ УСТРОЙСТВА / РАЗРАБОТКА / BLE / BLUETOOTH / BLUETOOTH LOW ENERGY / COREBLUETOOTH / IOS / SWIFT

Аннотация научной статьи по электротехнике, электронной технике, информационным технологиям, автор научной работы — Скрутелев Егор Сергеевич, Кузнецов Андрей Андреевич

Авторами работы проведен анализ особенностей технологии Bluetooth Low Energy в целях выявления способов внедрения данной технологии в существующие мобильное приложение. Целью исследования являлось изучение способов реализации использования технологии внутри мобильного приложения. Актуальность темы исследования обусловлена повсеместным увеличением количества устройств, использующих технологию BLE, и возможностью совместной работы с такими устройствами посредством мобильных приложений. В целях выявления особенностей внедрения технологии авторами были изучены нативные фреймворки компании Apple, а также требования, предъявляемые компанией к приложениям, использующим технологию Bluetooth Low Energy. В частности, была рассмотрена технология Bluetooth Low Energy, проведено сравнение с технологией Bluetooth Classic, рассмотрены особенности, а также недостатки технологии. Помимо этого, были выявлены и опробованы практические примеры работы с фреймворком Core Bluetooth.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

FEATURES OF MOBILE APPLICATION DEVELOPMENT FOR IOS DEVICES USING BLUETOOTH LOW ENERGY TECHNOLOGY

The authors analyzed the features of Bluetooth Low Energy technology to identify ways to implement this technology in existing mobile applications. The goal of the research was to study the ways of implementing the technology within a mobile application. The relevance of the research topic is due to the widespread increase in the number of devices that use BLE technology, and the possibility of collaborative work with such devices through mobile applications. To identify the peculiarities of the implementation of this technology, the authors studied the native frameworks of Apple, as well as the requirements imposed by the company to the applications that use this technology. Bluetooth Low Energy technology was considered, a comparison with Bluetooth Classic technology was made, features, as well as disadvantages of the technology were considered. In addition, practical examples of working with the Core Bluetooth framework were identified and tested.

Текст научной работы на тему «ОСОБЕННОСТИ РАЗРАБОТКИ МОБИЛЬНЫХ ПРИЛОЖЕНИЙ ДЛЯ УСТРОЙСТВ ПОД УПРАВЛЕНИЕМ ОС IOS С ИСПОЛЬЗОВАНИЕМ ТЕХНОЛОГИИ BLUETOOTH LOW ENERGY»

Экономика. Право. Инновации. 2022. № 2. С. 56-62 Economics. Law. Innovation. 2022. No. 2. P. 56-62

Управление в организационных системах Management in organizational systems

Научная статья УДК 004.422.833

doi: 10.17586/2713-1874-2022-2-56-62

ОСОБЕННОСТИ РАЗРАБОТКИ МОБИЛЬНЫХ ПРИЛОЖЕНИИ ДЛЯ

УСТРОЙСТВ ПОД УПРАВЛЕНИЕМ ОС iOS С ИСПОЛЬЗОВАНИЕМ ТЕХНОЛОГИИ BLUETOOTH LOW ENERGY

Егор Сергеевич Скрутелев1'2^, Андрей Андреевич Кузнецов

2

'Университет ИТМО, Санкт-Петербург, Россия, egor.skrutelev@yandex.ruE,

https://orcid.org/0000-0002-1374-5306

2ООО «Эмлид Системс», Санкт-Петербург, Россия

2andrei.kuznetcov@emlid.com

Язык статьи - русский

Аннотация: Авторами работы проведен анализ особенностей технологии Bluetooth Low Energy в целях выявления способов внедрения данной технологии в существующие мобильное приложение. Целью исследования являлось изучение способов реализации использования технологии внутри мобильного приложения. Актуальность темы исследования обусловлена повсеместным увеличением количества устройств, использующих технологию BLE, и возможностью совместной работы с такими устройствами посредством мобильных приложений. В целях выявления особенностей внедрения технологии авторами были изучены нативные фреймворки компании Apple, а также требования, предъявляемые компанией к приложениям, использующим технологию Bluetooth Low Energy. В частности, была рассмотрена технология Bluetooth Low Energy, проведено сравнение с технологией Bluetooth Classic, рассмотрены особенности, а также недостатки технологии. Помимо этого, были выявлены и опробованы практические примеры работы с фреймворком Core Bluetooth.

Ключевые слова: мобильная разработка, мобильные устройства, разработка, BLE, Bluetooth, Bluetooth Low Energy, CoreBluetooth, iOS, Swift

Ссылка для цитирования: Скрутелев Е.С., Кузнецов А.А. Особенности разработки мобильных приложений для устройств под управлением ОС iOS с использованием технологии Bluetooth Low Energy // Экономика. Право. Инновации. 2022. № 2. С. 56-62. http://dx.doi.org/10.17586/2713-1874-2022-2-56-62.

FEATURES OF MOBILE APPLICATION DEVELOPMENT FOR iOS DEVICES USING BLUETOOTH LOW ENERGY TECHNOLOGY

Egor S. Skrutelev1'2^, Andrei A. Kuznetsov2

'ITMO University, Saint Petersburg, Russia, egor.skrutelev@yandex.ruE, https://orcid.org/0000-0002-1374-5306 2Emlid Systems LLC, Saint Petersburg, Russia 2andrei.kuznetcov@emlid.com Article in Russian

Abstract: The authors analyzed the features of Bluetooth Low Energy technology to identify ways to implement this technology in existing mobile applications. The goal of the research was to study the ways of implementing the technology within a mobile application. The relevance of the research topic is due to the widespread increase in the number of devices that use BLE technology, and the possibility of collaborative work with such devices through mobile applications. To identify the peculiarities of the implementation of this technology, the authors studied the native frameworks of Apple, as well as the requirements imposed by the company to the applications that use this technology. Bluetooth Low Energy technology was considered, a comparison with Bluetooth Classic technology was made, features, as well as disadvantages of the technology were considered. In addition, practical examples of working with the Core Bluetooth framework were identified and tested.

Keywords: Core Bluetooth, Bluetooth, Bluetooth Low Energy, BLE, development, iOS, mobile development, mobile devices, Swift

For citation: Skrutelev E.S., Kuznetsov A.A. Features of Mobile Application Development for iOS Devices Using Bluetooth Low Energy Technology. Ekonomika. Pravo. Innovacii. 2022. No. 2. pp. 56-62. (In Russ.). http://dx.doi.org/10.! 7586/2713-1874-2022-2-56-62.

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

- с помощью Bluetooth Classic (BR/EDR) можно использовать беспроводные громкоговорители, автомобильные информационные системы и наушники;

- Bluetooth Low Energy (BLE) - это беспроводной стандарт с низким энергопотреблением, появившийся в версии стандарта Bluetooth 4.0. Его используют в приложени-

только. В современном мире каждый из нас сталкивался с использованием технологии Bluetooth, в смартфонах, автомобилях и аудио оборудовании. На текущий момент существуют два типа устройств [1], поддерживающих протокол Bluetooth (Рисунок 1): ях, чувствительных к энергопотреблению (например, на батарейном питании) или на устройствах, передающих небольшие объемы данных с большими перерывами между передачами (например, различные сенсоры параметров окружающей среды или управляющие устройства, такие как беспроводные выключатели).

Рисунок 1 - Типы Bluetooth-устройств

Оба типа устройств несовместимы, даже в случае выпуска одним брендом или с одной спецификацией. Из-за этого устройства с поддержкой протокола Bluetooth Classic не могут напрямую связываться с устройствами, использующими протокол Bluetooth Low Energy. Как следствие, некоторые устройства изготавливаются с модулями двух технологий, что обеспечивает поддержку обоих типов соединения (так называемые Dual mode Bluetooth устройства). Это позволяет таким устройствам обмениваться информацией с другими устройствами без учета типа протокола:

- официальный стандарт Bluetooth сочетает оба типа Bluetooth (Classic и BLE), что иногда затрудняет поиск документации, специфичной для BLE;

- в версии 4.0 спецификации Bluetooth, релиз которой произошел в 2010 году, BLE был введен в качестве стандарта;

- BLE иногда называют Bluetooth Smart, TLE или Bluetooth 4.0. Это ошибка, потому что эта версия включает оба типа беспроводных соединений;

- работа обоих стандартов проводится в частотном диапазоне - 2.4 ГГц, ISM-диапазон.

В связи с тем, что во многих приложениях Интернета Вещей (Internet Of Things) используются небольшие датчики, Bluetooth Low Energy приобрел статус наиболее часто используемого протокола связи (относительно Bluetooth Classic) в приложениях Интернета Вещей [2]. В декабре 2016 года компания Bluetooth Special Interest Group (SIG), регулирующая развитие стандарта беспроводной связи, выпустила новую версию протокола BT 5.0. В этой версии большая часть улучшений и нового функционала была предназначена для стандарта BLE, а не для Bluetooth Classic [3].

Существует также подпротокол BLE, называемый Bluetooth Mesh. Протокол был выпущен в июне 2017 года, и для его работы необходимо полное использование BLE (программное обеспечение с использованием других программ или аппаратных средств). Однако Bluetooth Mesh не являет-

ся частью основной спецификации Bluetooth.

Подводя краткие итоги, можно составить небольшую диаграмму, отображаю-

щую прогресс технологии Bluetooth Low Energy от его появления и до текущего момента (Рисунок 2):

Рисунок 2 - История Bluetooth Low Energy

Цель исследования. Целью исследования является изучение способов реализации внедрения и применения технологии Bluetooth Low Energy в мобильном приложении под управлением операционной системы iOS.

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

Полученные результаты. В результате исследования авторами получена информация об основных способах реализации рассматриваемой технологии внутри мобильных приложений под управлением операционной системы iOS. Полученные результаты были успешно применены и реализованы в мобильном приложении «Reach View 3» и доступны для ознакомления через магазин приложений «AppStore».

Основная часть. Технические особенности протокола Bluetooth Low Energy:

- используемый диапазон частот: 2.4002.4835 ГГц;

- характеристикой диапазона частот яв-

ляется наличие 40 каналов, разделенных по 2 МГЦ каждый;

- начиная с ВТ версии 5.0 предельно допустимая скорость передачи информации по каналу составляет 2 Мбит/с;

- физическое окружение и используемый режим передачи данных напрямую влияют на расстояние, допустимое для использования технологией. Характерная дальность передачи данных составляет от 10 до 30;

- затраты на энергопотребление могут меняться в широком диапазоне. На это влияет реализация устройства, параметры протокола, а также используемого чипа. Характерное потребление энергии в среднем не превышает 15 мА;

- безопасность передачи данных зависит от устройства и реализации приложения, которое использует технологи. Технология не берет на себя ответственности за обеспечение безопасности и сохранности данных;

- при проведении операций, проводимых с использованием шифрования, используется алгоритм aes-ccm, длина ключа которого составляет 128 бит;

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

- все спецификации BT, в том числе BLE, имеют обратную совместимость. Одна-

Возможности технологии Bluetooth Low Energy:

- уменьшенное энергопотребление. Для сравнения: с другими технологиями передачи данных BLE потребляет значительно меньше электроэнергии. Эта задача решается благодаря глубокой оптимизации протокола, отключению передатчика при первой необходимости и передаче малых объемов данных на низкой скорости;

- бесплатный доступ к официальным спецификациям. Для получения доступа к спецификациям других протоколов необходимо быть членом официальной группы или консорциума. Получить статус члена можно за солидную сумму (от 7500 до 35 000 долларов США). При использовании BLE спецификация для основных версий (4.0-4.2,

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

Сравнение технологий Bluetooth Classic и Bluetooth Low Energy. Следует отметить наличие существенной разницы между Bluetooth Classic и Bluetooth Low Energy с точки зрения технической спецификации, реализации и типов приложений, для которых они предназначены (Таблица 1).

5.0) доступна для загрузки с сайта Bluetooth абсолютно бесплатно;

- большое количество поддерживаемых устройств;

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

Ограничением технологии Bluetooth Low Energy является пропускная способность. Скорость передачи данных по каналу напрямую влияет на пропускную способность технологии, ограничивая ее. Зависит от применяемой версии протокола BT, для версии 4.2 и более старых наиболее характерна предельно допустимая скорость передачи данных в 1 Мбит/с. Начиная с версии протокола 5.0, на пропускную способность влияет режим Physical Layer, при котором она может варьироваться в диапазоне от од-

Таблица 1

Сравнение Bluetooth Low Energy и Bluetooth Classic

Bluetooth Low Energy Bluetooth Classic

Способ применения Применяется в сенсорах, различных системах управления устройствами, а также в приложениях, которые не требуют передачи больших объемов данных Применяется в потоковых приложениях (аудио трансляции, передачи файлов)

Способ обнаружения устройства Быстрое обнаружение и установка соединения обусловленное использованием трех каналов Обнаружение происходит на 32 каналах

Оптимизация энергопотребление Используется в устройствах с низким энергопотреблением, а также в устройствах с большим интервалом передачи данных Не применим для устройств с низким энергопотреблением, но предоставляет большую скорость передачи данных

Количество используемых радиоканалов Применяется 40 радиоканалов Применяется 79 радиоканалов

ного Мбит/с (как в более ранних версиях протокола) до двух Мбит/с. Помимо этого, существуют ограничения пропускной способности, связанные с дальностью передачи данных. При высокой дальности технология ограничена, значения скорости находятся в пределах от 125 кбит/с до 500 кбит/с.

Скорость передачи данных для пользователя будет зависеть от таких факторов как:

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

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

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

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

- дальность передачи.

Диапазон действия технологии сильно ограничен, в связи с тем, что технологии BLE была спроектирована и разработана с учетом применения на коротких расстояниях. На дальность передачи данных могут оказывать влияние следующие факторы:

- при передаче данных на частоте 2.4 ГГц (диапазон ISM) на дальность передачи данных могут оказывать влияние металлические предметы, органика (включая тела людей), жидкости и стены;

- на дальность передачи данных также могут влиять направленность и коэффициент усиления антенны;

- в некоторых случаях на характеристики антенны могут оказывать влияние материалы корпуса устройства;

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

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

Core Bluetooth. Нативный фреймворк Core Bluetooth был добавлен компанией Apple в iOS 5. По своей сути, фреймворк представляет собой обертку над внутренней реализацией протоколов BLE, так как данные протоколы сложны сами по себе и предоставление прямого доступа для работы с ним могут вызывать непредсказуемые последствия. Для работы с технологией BLE используется класс «CB Central Manager». По своей сути он является менеджером со своим делегатом и очередью, на которой он будет работать [7]. При начале работы с менеджером вызывается метод «Central Manager Did Update State», благодаря которому мы можем получить ответ от аппаратной части, содержащий информацию о состоянии Bluetooth на устройстве.

Теперь, когда менеджер уже запущен, и имеется информация о состоянии Bluetooth, нужно запустить сканирование окружения для обнаружения устройств в зоне доступа. Для этого применяется метод «Scan For Peripherals With Services», принимающий в качестве одного из атрибутов массив с CBUUID, представляющий из себя массив с уникальными идентификаторами атрибутов, которые используются в BLE. Он работает в качестве фильтра, чтобы найти устройства только с конкретным набором UID.

Однако если в качестве аргумента передать nil, будут показаны все устройства вокруг.

Для остановки работы сканера используется метод «Stop Scan». Поиск необходимо останавливать, так как иначе он будет продолжать работать, что негативно скажется на состоянии заряда аккумулятора.

При всех обнаружениях нового устройства делегат менеджера будет вызывать функцию «Did Discover Peripheral». Функция будет возвращать нам найденное устройство,

информацию о нем, а также относительный уровень сигнала RSSI в децибелах.

Одним из важных моментов является то, что всегда должна существовать сильная ссылка на обнаруженное устройство, так как без нее система отбросит его, сочтя неиспользуемым.

Для подключения к обнаруженному устройству необходимо использовать метод «Connect Peripheral», в качестве аргумента выступает обнаруженное устройство. По окончании работы с устройством, метод «Cancel Peripheral Connection» произведет отключение от устройства. При подключении или разрыве соединения, делегат сообщит о произошедших изменениях.

В процессе исследования были обнаружены следующие особенности. Протокол Bluetooth предполагает использование тай-маута на подключение, однако внутри операционной системы это не учитывается. iOS будет вызывать метод подключения к периферийному устройству до тех пор, пока не будет вызван метод разрыва соединения. Этот процесс может занимать продолжительное количество времени, поэтому необходимо ограничить его во времени, и при возникновении ошибки уведомить пользователя о том, что что-то пошло не так.

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

Заключительным моментом при работе с периферийными устройствами является то, что Apple не предоставляет прямого доступа к внутреннему API - iBeacons, использование которого позволило бы знать, насколько близко девайс находится к Bluetooth устройству. Для решения этой проблемы необходимо сохранять получаемый стек с метками даты и уровнем сигнала RSSI каждого сообщения, полученного в методе «Dicover Peripheral». Как правило, чем выше уровень сигнала, тем ближе устройство. Определить, находится ли устройство в 12 доступном диапазоне или нет - достаточно сложно, так как само понятие достаточно гибкое. Можно использовать средневзвешенное значение сигнала.

Выводы. В результате проведенного исследования были выделены особенности реализации и внедрения технологии Bluetooth Low Energy в мобильные приложения под управлением операционной системы iOS. Рассмотренный вариант реализации технологии является универсальным и может быть применен для разработки любого приложения в рамках указанной платформы. Помимо этого, авторами были выделены особенности и недостатки рассматриваемой технологии, а также найдены факторы, которые следует учитывать при внедрении технологии Bluetooth Low Energy в проект. Результаты работы авторов внедрены в мобильное приложение «ReachView 3» для платформы iOS и доступны для ознакомления (Рисунок 3).

Рисунок 3 - QR-код для ознакомления с приложением

Список источников

1. Mohammad Afaneh. Intro to the Bluetooth Low Energy. 2015 [Электронный ресурс]. - Режим доступа: https://www.novelbits.io/introduction-to-bluetooth-lowenergy-book/ (In Eng).

2. Zhang J., Larmo A. Smart Places with Bluetooth Low Energy Mesh. 2016 [Электронный ресурс]. -Режим доступа: https://www.ericsson.com/ en/blog/2016/9/smart-places-with-bluetooth-low-energymesh13 (In Eng.).

3. Ионова А. Обзор протоколов беспроводной связи для Интернета Вещей. 2017 [Электронный ресурс]. - Режим доступа: https://iot.ru/promy shlennost/obzor-protokolov-besprovodnoy-svyazi-dlya-internetaveshchey

4. Bluetooth Core Specification Version 5.0 Feature Enhancements [Электронный ресурс] - Режим доступа: https://www.bluetooth.com/bluetooth-re sources/bluetooth-5-go-faster-go-further/ (In Eng.).

5. Townsend K., Cufi C., Akiba, Davidson R. Getting Started with Bluetooth Low Energy. 2018. [Электронный ресурс]. - Режим доступа: https://www.oreilly.com/library/view/getting-started-with/9781491900550/ch01 .html (In Eng.).

6. Proctor B. Bluetooth vs. Bluetooth Low Energy: What the Differences? 2016 [Электронный ресурс]. - Режим доступа: https://www.link labs.com/blog/bluetooth-vs-bluetooth-low-energy (In Eng.).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

7. About Core Bluetooth [Электронный ресурс]. -Режим доступа: https://developer.apple.com/li brary/archive/documentation/NetworkingInternetWe b/Conceptual/CoreBluetooth_concepts/AboutCore Bluetooth/Introduction.html (In Eng.).

References

1. Mohammad Afaneh. Intro to the Bluetooth Low Energy. 2015. Available at: https://www.novel bits.io/introduction-to-bluetooth-lowenergy-book/

2. Zhang J., Larmo A. Smart Places with Bluetooth Low Energy Mesh. 2016. Available at: https://www.ericsson.com/en/blog/2016/9/smart-places-with-bluetooth-low-energymesh13

3. Ionova A. Review of Wireless Communication Protocols for the Internet of Things. Available at: https://iot.ru/promyshlennost/obzor-protokolov-besprovodnoy-svyazi-dlya-internetaveshchey (In Russ.).

4. Bluetooth Core Specification Version 5.0 Feature Enhancements Available at: https://www.blue tooth.com/bluetooth-resources/bluetooth-5-go-faste r-go-further/

5. Townsend K., Cufi C., Akiba, Davidson R. Getting Started with Bluetooth Low Energy. 2018. Available at: https://www.oreilly.com/library/ view/getting-started-with/9781491900550/ch01.html

6. Proctor B. Bluetooth vs. Bluetooth Low Energy: What the Differences? 2016. Available at: https://www.linklabs.com/blog/bluetooth-vs-bluetoo th-low-energy

7. About Core Bluetooth Available at: https://developer.apple.com/library/archive/docume ntation/NetworkingInternetWeb/Conceptual/CoreB luetooth_concepts/AboutCoreBluetooth/Introductio n.html

Статья поступила в редакцию 15.06.2022; одобрена после рецензирования 23.06.2022; принята к публикации 27.06.2022. The article was submitted 15.06.2022; approved after reviewing 23.06.2022; acceptedfor publication 27.06.2022.

i Надоели баннеры? Вы всегда можете отключить рекламу.