Назад в библиотеку

РАЗРАБОТКА СИСТЕМЫ НАВИГАЦИИ ВО ВНУТРЕННИХ ПОМЕЩЕНИЯХ НА ПЛАТФОРМЕ ANDROID

Авторы: Алутин Е.А., Кривошеев С.В.
Источник: ИНФОРМАТИКА, УПРАВЛЯЮЩИЕ СИСТЕМЫ, МАТЕМАТИЧЕСКОЕ И КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ (ИУСМКМ-2020) Сборник материалов XI Международной научно-технической конференции в рамках VI Международного Научного форума Донецкой Народной Республики. - Донецк, с. 495-499

Аннотация

Алутин Е.А., Кривошеев С.В. Разработка системы навигации во внутренних помещениях на платформе Android. Развитие вычислительной техники способствует созданию систем навигации для решения различных задач логистики. Данные системы позволяют обеспечить контроль работы и местоположения персонала, сокращению времени доставки товаров и услуг. Рассмотрены особенности построения системы навигации во внутренних помещениях на платформе Android.

Общая постановка проблемы

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

Существует два вида реализации навигации: с помощью активных устройств и с помощью пассивных устройств

Система навигации на основе активных устройств использует следующие технологии: ИК, ультразвук, Wi-Fi [1], Bluetooth [2]. На рис. 1 изображен пример реализации навигации в здании с активными Bluetooth-маяками [3].

Рисунок 1 – Пример навигации с использованием технологии Bluetooth Low Energy

Рисунок 1 – Пример навигации с использованием технологии Bluetooth Low Energy

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

Система навигации на основе пассивных устройств включает в себя такие технологии, как RFID , QR-коды, NFC [4] и пр. На рис. 2 изображен пример реализации пассивной системы навигации с помощью технологии NFC.

Рисунок 2 – Пример навигации с использованием технологии NFC

Рисунок 2 – Пример навигации с использованием технологии NFC

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

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

В системе навигации во внутренних помещениях на платформе Android применяются пассивные устройства. В качестве объекта навигации выступает учебный корпус. При использовании приложения пользователь сам задает точку отправления и точку прибытия, на основе которых система строит маршрут. Это обосновано тем, что в учебном корпусе все аудитории пронумерованы, и пользователь сможет легко определить, где он находится на данный момент и, скорее всего, знает номер аудитории, которая является его конечной точкой маршрута. Для прокладывания маршрута применяется модификация алгоритма Дейкстры – алгоритм А*. Суть алгоритма следующая: в качестве следующего пункта (вершина графа) выбирается тот, который имеет наименьшую оценку: сумма пройденного расстояния и предположительного расстояния до конечного пункта. Последнее принимается как расстояние до пункта по прямой, причём это специфика именно данной системы навигации.

Структура и алгоритм работы системы навигации во внутренних помещениях

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

Рисунок 3 – Структурная схема системы навигации

Рисунок 3 – Структурная схема системы навигации

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

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

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

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

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

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

Граф, моделирующий структуру помещений внутри зданий (рис. 4), может иметь большое количество технических вершин, которые нужны для большей детализации маршрутов, но такие вершины не нужно выводить пользователю. Таким образом, полученный от системы поиска пути граф необходимо проанализировать и преобразовать в понятный пользователю формат.

Есть несколько видов технических вершин, такие как фрагменты коридоров, лестницы, пролеты лестниц. Данные типы вершин нужно анализировать по-разному, поэтому в системе навигации выделена система анализа маршрута.

Рисунок 4 – Визуализация графа на плане здания

Рисунок 4 – Визуализация графа на плане здания

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

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

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

Для построения графа вершины графа должны иметь следующую информацию:

Применение платформы Android для системы навигации во внутренних помещениях

Ключевым компонентом для создания визуального интерфейса в приложении на платформе Android [6] является activity (активность). Нередко activity ассоциируется с отдельным экраном или окном приложения. Активность, которая запускается первой, считается главной. Из нее можно запустить другую активность. Организация приложения на основе нескольких activity не всегда может быть оптимальной, так как класс активности очень нагружен, поэтому в ОС Android существует концепция фрагментов. Фрагмент существует в контексте activity и имеет свой жизненный цикл, вне activity обособлено он существовать не может. Каждая activity может иметь несколько фрагментов.

Приложение системы навигации во внутренних помещениях состоит из двух activity:

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

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

Рисунок 5 – Фрагмент отладочных данных

Рисунок 5 – Фрагмент отладочных данных

Выводы

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

Список использованной литературы

1. Technologies for Server-Based Indoor Positioning Compared: Wi-Fi vs. BLE vs. UWB vs. RFID [Electronic resourse] / Интернет-ресурс. - Режим доступа : www/ URL:https://www.infsoft.com/blog-en/articleid/188/technologies-for-server-based-indoor-positioningcompared-infsoft blog
2. Bluetooth Low Energy [Electronic resourse] / Интернет-ресурс. - Режим доступа : www/ URL: https://en.wikipedia.org/wiki/Bluetooth_Low_Energy – Wikipedia
3. Indoor Positioning System [Electronic resourse] / Интернет-ресурс. - Режим доступа : www/ URL: https://en.wikipedia.org/wiki/Indoor_positioning_system/ – Wikipedia
4. NFC Internal: An Indoor Navigation System [Electronic resourse] / Интернет-ресурс. - Режим доступа : www/ URL: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4431189/ - National Center for Biotechnology Information
5. Монгуш, А. В. Обзор технологий INDOOR-навигации [Текст] / А. В. Монгуш, П. М. Кикин // ИНТЕРЭКСПО ГЕО-СИБИРЬ, Том 9, №1 - 2017 – сс. 119-123. .
6. Кошелев, Б.В. О возможности использования смартфонов для навигации внутри помещений [Текст] / Б.В. Кошелев, Н.А. Карагин // Известия ТулГУ. Технические науки. Вып. 9. Ч. 2 - 2017 – сс. 131-140.