Дипломная работа: Разработка мобильных решений для позиционирования и навигации внутри помещений

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

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

5.Мобильное приложение

Для тестирования вышеописанных алгоритмов было создано приложение на платформе Android. Системные требования: Android 6+, поддержка модулей Wi-Fi и Bluetooth, камера (минимальное разрешение 480x360px).

Исходный код приложения доступен в репозитории по адресу: https://github.com/FionaRo/IndoorNavigation.

5.1 Карта помещения

Для тестирования было выбрано общежитие университета “Высшая Школа Экономики” по адресу Львовская 1в, подъезд 1. Приложение должно отображать карту внутренних помещений, включая этажи, лестницы и двери. Для создания карты был выбран сервис Mapwize. Он позволяет создавать карты помещений, ставить метки на помещения и создавать маршруты между метками. В текущем решении используется бесплатная версия этого сервиса и он имеет ограничения на количество создаваемых объектов.

Рисунок 9. Карта помещения

На рисунке 9 показана карта, созданная с помощью сервиса Mapwize. На ней отображаются жилые блоки, тех. помещения, лестницы, коридоры и двери. Также, на рисунке отображен маршрут между двумя помещениями.

5.2 Функционал приложения

Рисунок 10. Выбор метода позиционирования

Приложение позволяет выбрать каким методом определять текущее местоположение (Рисунок 10).

Рисунок 11. Поиск и отображение локации

В приложении отображается текущее местоположение, полученное с помощью выбранного метода, и с помощью компаса определяется направление телефона. Также, доступна возможность выбрать объект нажатием на него либо через поиск в списке (Рисунок 11).

Рисунок 12. Маршрут от текущей локации

В приложении можно построить маршрут от текущего местоположения (Рисунок 12). Маршрут будет построен с учетом указанных дверей. Приложение также учитывает наличие лестниц и может строить маршруты с одного этажа на другой.

5.3 Архитектура приложения

Приложение использует MVP (Model-View-Presenter) паттерн, так как он считается наиболее оптимальным для разработки мобильного приложения.

Рисунок 13. MVP паттерн

Схема (Рисунок 13) отображает взаимодействия в программе, которая использует MVP паттерн.

В данном приложении в качестве View выступает главное окно (MainActivity), оно отсылает в Presenter (LocationScanner) события о смене типа определения местоположения. LocationScanner содержит поле locationManager типа ILocationManager, при смене типа позиционирования этому полю присвается один из экземпляров классов: CellLocationManager, WiFiLocationManager, BeaconsLocationManager или VlcLocationManager. Каждый из этих классов имплементирует метод интерфейса ILocationManager - getLocation.

Presenter каждые 500мс вызывает метод getLocation у текущего locationManager. В этот метод передается callback (функция обратного вызова), так как методы не имеют возможности вернуть информацию о местоположении мгновенно. Каждый из классов в методе getLocation запускают алгоритм определения местоположения, описанный выше. Для каждого из классов есть свой набор Models для работы с камерой, запрашивания данных с сервисов и обработки данных различными алгоритмами.

После завершения работы алгоритма вызывается callback, в который передается текущая локация. Эта локация затем передается в фильтр Калмана, который возвращает отфильтрованные данные в Presenter. После получения итогового местоположения Presenter вызывает метод updateLocation у View, в котором обновляется местоположение на карте.

6.Сравнение технологий

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

Таблица 1. Сравнение методов позиционирования

Таблица 1 представляет сравнение реализованных методов позиционирования. GSM и Wi-Fi невозможно применить для навигации внутри помещений в текущем варианте, так как они показывают плохую точность в определении местоположения. VLC применима для навигации внутри помещения, но требует доработки, так как на текущем этапе может вызывать сложности при использовании.

1 - Сложность настройки определяется временем, которое может быть затрачено на установку оборудования. Для GSM и Wi-Fi не требуется производить настройку оборудования. Для Beacons требуется настроить уникальные идентификаторы и расположить их по всему зданию. VLC требует создания и программирования специальных поляризаторов и установка их на лампы внутри здания.

2 - Энергопотребление определяется частотой сканирования и энергопотреблением используемых модулей. GSM имеет высокое энергопотребление, так как сканирование вышек сотовой связи происходит с высокой частотой. Сканирование сетей Wi-Fi имеет ограничение на 4 запроса в 2 минуты, поэтому снижается количество потребляемой энергии. BLE Beacons потребляет наименьшее количество энергии, благодаря технологии Bluetooth Low Energy. VLC использует камеру, которая потребляет большое количество энергии.

3 - Нулевая стоимость оборудования объясняется отсутствием необходимости его закупки. Для использование требуется только создание приложения.

4 - Цены взяты с сайтов: aliexpress.com, passkit.com и estimote.com.

5 - Цена оборудования взята из исследования “Wearables Can Afford: Light-weight Indoor Positioning with Visible Light”.

6 - GSM и Wi-Fi могут применимы для позиционирования внутри помещений с использованием алгоритма, включающего предварительное сканирование сетей.

7 - VLC требует доработки алгоритма детектирования передатчика для уменьшения сложности использования данного метода.

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

В данной работе были изучены 4 метода позиционирования и навигации внутри помещений: GSM, Wi-Fi, BLE Beacons и VLC. Для каждой технологии был реализован ряд алгоритмов определения местоположения. Во время реализации и изучения были выявлены недостатки и преимущества каждой технологии и был проведен сравнительный анализ 4-х методов, в результате которого было выяснено, что GSM и Wi-Fi технологии требуют реализации более точных алгоритмов и не могут в стандартном виде конкурировать по точности с BLE Beacons и VLC. BLE Beacons и VLC показали примерно равную точность и оптимальность их использования для навигации внутри помещений. Преимуществом BLE Beacons перед VLC в настоящее время остается сравнительная легкость в их использовании. Также, был реализован фильтр Калмана для улучшения точности и сглаживания шума на основе акселерометра и компаса.

Данная работа показывает возможности использования данных методов для навигации внутри помещения и задает дальнейший вектор развития данной темы в сторону улучшения алгоритмов GSM и Wi-Fi и более глубокого изучения технологии VLC.

Литература

1.https://github.com/FionaRo/IndoorNavigation

2.https://en.wikipedia.org/wiki/Manchester_code

3.https://en.wikipedia.org/wiki/Hamming_code

4.https://en.wikipedia.org/wiki/True_range_multilateration

5.https://docs.mapwize.io/developers/android/sdk/latest/

6.https://developer.android.com

7.4G Americans (2014). GSM Global system for Mobile Communications.

8.Infsoft GmbH. Indoor Positioning & Navigation. A Guide on Technologies and Use Cases.

9.Fred Zahradnik (2018). What Is Trilateration?

10.Latif Ullah Khan. Visible light communication: Applications, architecture, standardization and research challenges

11.Zdenмk NМMEC, Pavel BEZOUЉEK (2008) The Time Difference of Arrival Estimation of Wi-Fi Signals

12.Oleg Katov (2018) Reduce GPS data error on Android with Kalman filter and accelerometer

13.Zhice Yang1, Zeyu Wang1, Jiansong Zhang2, Chenyu Huang3, Qian Zhang1 Wearables Can Afford: Light-weight Indoor Positioning with Visible Light

14.Victor Bahl, Venkat Padmanabhan (2001) Radar

15.Veljo Otsason, Alex Varshavsky, Anthony LaMarca, and Eyal de Lara, Accurate GSM Indoor Localization

16.Latif UllahKhan (2016) Visible light communication: Applications, architecture, standardization and research challenges.