Реализация UWB-трекинга объектов внутри помещений в мобильном приложении

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

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

Услуги, которые мы предлагаем
Показано 1 из 1Все 1735 услуг
Реализация UWB-трекинга объектов внутри помещений в мобильном приложении
Сложный
от 1 недели до 3 месяцев
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    495

Реализация UWB-трекинга объектов внутри помещений в мобильном приложении

Трекинг объектов — это другая задача по сравнению с позиционированием человека. Там мы определяем где находится телефон. Здесь мы отслеживаем объекты — паллеты на складе, медицинское оборудование в больнице, дорогостоящий инструмент на производстве, багаж в аэропорту. Объект носит UWB-метку (tag), инфраструктура якорей определяет его координаты, мобильное приложение показывает карту в реальном времени и позволяет найти конкретный объект.

Архитектура RTLS (Real-Time Location System)

Типовая схема UWB-RTLS:

UWB-теги (на объектах)
       ↓ TWR/TDoA
UWB-якоря (потолок, 10-15м между собой)
       ↓ Ethernet/Wi-Fi
Location Engine (сервер)
       ↓ WebSocket/REST
Мобильное приложение

Location Engine — вычислительный сервер, который принимает сырые ToA-измерения от якорей и вычисляет координаты тегов. Коммерческие решения: Pozyx SaaS, Sewio UWB RTLS, Zebra MotionWorks. Opensource: MOSAIC-uwb (Python), собственный на basis IEEE 802.15.4a.

Точность: TWR (Two-Way Ranging) — 10-30 см. TDoA (Time Difference of Arrival) — 15-50 см, требует синхронизированных якорей. Для трекинга объектов на складе 30 см достаточно.

Мобильное приложение: ключевые экраны

Карта объектов в реальном времени

2D-карта здания (план этажа из SVG или CAD-файла) с движущимися маркерами. Каждый маркер — UWB-тег, привязанный к конкретному объекту (паллета №A-123, тележка, прибор).

Обновление позиций: WebSocket подписка. Location Engine публикует события tag.position_updated с {tag_id, x, y, floor, timestamp}. Клиент принимает поток и обновляет позиции маркеров. Частота: 2-10 Гц на тег, для 50 тегов — 100-500 событий в секунду через один WS-стрим.

Оптимизация рендера: не обновлять каждый маркер при каждом событии — батчинг обновлений через requestAnimationFrame-аналог. На iOS: накапливаем позиции за 100ms → один bulk update через CATransaction с disableActions. На Android Compose: LazyColumn с key(tagId) + animateItemPlacement.

Плавное движение маркеров: UWB даёт позицию каждые 100-500 мс. Между обновлениями — интерполяция линейная (lerp) или Kalman-предсказание. Без интерполяции маркеры «прыгают», с ней — плавно движутся.

Поиск конкретного объекта

Пользователь ищет паллету №A-456. Поиск по базе → объект найден → на карте подсвечивается, камера центрируется на нём с анимацией. Расстояние от текущей позиции пользователя до объекта + «как пройти» — маршрут по A*.

Если объект на другом этаже — переключение на соответствующий план с highlight.

Опционально: режим AR-стрелки через NearbyInteraction (если объект несёт Apple-совместимый UWB-тег, например AirTag или Qorvo-аксессуар). NISession с isCameraAssistanceEnabled = true → AR-указатель прямо через камеру.

История перемещений

Trail (след) объекта за период: LineString по историческим позициям. SELECT x, y, timestamp FROM tag_positions WHERE tag_id = ? AND timestamp > ? ORDER BY timestamp — рисуем как polyline на карте. Помогает расследовать «куда делась паллета в пятницу вечером».

Heatmap загрузки зон: агрегированные данные по всем тегам → тепловая карта — какие зоны склада используются интенсивнее. MapboxHeatmapLayer или кастомный рендер через Core Graphics по grid-cells.

Геофенсинг зон

Виртуальные зоны на карте (зона приёмки, зона хранения А, зона отгрузки) → правила для объектов:

  • тег вошёл в запрещённую зону → push-уведомление охране
  • объект находится вне своей зоны более 2 часов → alert менеджеру
  • паллета покинула склад без оформления → тревога

Геофенсинг вычисляется на Location Engine сервере — он знает все координаты зон и тегов. Мобильное приложение только отображает события и управляет правилами зон.

Управление тегами

Добавить тег в систему: ввести ID тега (напечатан на устройстве), привязать к объекту (название, тип, фото), назначить зону. Batch-ввод через CSV-импорт для большого склада.

Статус батареи тега: большинство UWB-тегов (Pozyx Tag, Sewio Tag) передают уровень заряда в пакете. Location Engine парсит и отдаёт через API. В приложении — фильтр «теги с низким зарядом» + уведомление при < 20%.

Потеря сигнала: если тег не виден якорям более N минут (настраивается) — статус «не в зоне видимости», маркер на карте серый. Событие в ленте.

Интеграция с WMS / ERP

Склад работает с WMS (Warehouse Management System) — 1С:WMS, SAP EWM, Odoo. Данные о заданиях на перемещение берём оттуда → в приложении отображаем «куда должна идти эта паллета». RTLS предоставляет «где она есть сейчас». Разница = отклонение от плана → сигнал оператору.

Интеграция: REST API или очередь сообщений (Kafka/RabbitMQ) между Location Engine и WMS. Мобильное приложение работает с Location Engine API, не напрямую с WMS.

Аппаратный выбор: что рекомендуем

Система Точность Частота Покрытие якоря Цена якоря
Pozyx Creator 10-30 см 10 Гц ~50 м² ~€300
Sewio RTLS 15-50 см 10 Гц ~100 м² ~€400
Zebra MotionWorks 30-50 см 5 Гц ~200 м² ~€600
Qorvo DWM3001 10-20 см 100 Гц ~30 м² ~€80

Для склада 1000 м²: Pozyx — 20-25 якорей, ~€6000-8000 железо без монтажа. Плюс ПО Location Engine и разработка мобильного приложения.

Сроки

Пилот с 4 якорями и базовым приложением (карта + позиционирование 5 тегов) — 3-4 недели. Полноценная система для склада с геофенсингом, историей, интеграцией с WMS — 3-5 месяцев. Стоимость проекта складывается из аппаратной части, лицензий Location Engine и разработки. Рассчитываем после аудита объекта.