Инженер на стройке потерял дорогой лазерный дальномер среди тонн арматуры и оборудования. Обычный Bluetooth-трекер показал радиус 15 метров, но не точное направление. Пришлось перерыть весь склад. После внедрения UWB-трекера с точностью до 10 сантиметров потеря инструмента перестала быть проблемой. Мы реализовали такой проект для клиента из сферы промышленной безопасности — полностью под ключ: от прошивки трекера до мобильного приложения для iOS и Android. Опыт показывает, что UWB-поиск сокращает время нахождения предметов на 90%.
UWB (Ultra-Wideband) использует короткие импульсы для измерения расстояния по времени пролёта (ToF) с точностью до наносекунд. Телефон с U1-чипом и трекер обмениваются сигналами, вычисляя не только дистанцию, но и направление (angle of arrival). Так получается стрелка, указывающая на предмет. В основе лежит технология IEEE 802.15.4z, описанная в Ultra-wideband.
Как работает точный поиск предметов с UWB?
UWB-сессия на мобильном устройстве инициируется Bluetooth Low Energy: трекер передаёт свой идентификатор и ключи. После этого устанавливается UWB-соединение, и начинается обмен данными с частотой до 60 Гц. На основе времени распространения сигнала вычисляется дистанция, а на основе разности фаз на антеннах — направление.
Почему стоит внедрить UWB-поиск уже сейчас?
Bluetooth-трекеры дают лишь примерное расстояние, а UWB обеспечивает точность до 10 см и направление. Для промышленных объектов, больниц, складов это означает экономию до 40% бюджета на поиск утерянного оборудования. Наши клиенты сообщают, что время инвентаризации сокращается втрое.
Два сценария: Find My сеть vs автономный UWB
| Характеристика | Find My Network | Автономный UWB |
|---|---|---|
| Требования к трекеру | MFi, Bluetooth-чип с Apple H2 | UWB-чип (DW3000, NXP) |
| Глобальный трекинг | Да, через сеть iPhone | Нет, только вблизи |
| MFi-лицензия | Обязательна | Не нужна |
| Точность поиска | ≤10 см (при UWB) | ≤10 см |
| Выход на рынок | Дольше (одобрение Apple) | Быстрее |
Автономный UWB-подход внедряется в 2-3 раза быстрее, чем интеграция в Find My Network, из-за отсутствия этапа сертификации MFi. Для B2B-сегмента (склады, стройки, больницы) это предпочтительное решение.
iOS: реализация через NearbyInteraction
На iOS ключевой фреймворк — NearbyInteraction. Он предоставляет объекты NINearbyObject с distance и direction. Вот пример типовой сессии:
import NearbyInteraction
import CoreBluetooth
class ItemFinderSession: NSObject {
private var niSession: NISession?
private var currentDistance: Float = 0
private var currentDirection: SIMD3<Float>?
func startFinding(accessoryToken: Data, bluetoothId: UUID) {
niSession = NISession()
niSession?.delegate = self
niSession?.delegateQueue = .main
let config = NINearbyAccessoryConfiguration(
accessoryData: accessoryToken,
bluetoothPeerIdentifier: bluetoothId
)
niSession?.run(config)
}
}
extension ItemFinderSession: NISessionDelegate {
func session(_ session: NISession, didUpdate nearbyObjects: [NINearbyObject]) {
guard let obj = nearbyObjects.first else { return }
if let distance = obj.distance {
currentDistance = distance
// Обновляем UI: расстояние до предмета
updateDistanceDisplay(meters: distance)
}
if let direction = obj.direction {
currentDirection = direction
// direction — единичный вектор в ARKit coordinate space
// direction.x: влево-вправо, direction.y: вверх-вниз, direction.z: вперёд-назад
updateDirectionalArrow(direction: direction)
}
}
func session(_ session: NISession, didUpdateAlgorithmConvergence convergence: NIAlgorithmConvergence, for object: NINearbyObject?) {
// convergence.status: .converged / .notConverged([reasons])
// При notConverged — просить пользователя повести телефоном
handleConvergence(convergence.status)
}
}Критичный момент — convergence.status. Если пользователь стоит неподвижно, direction не приходит. В нашем проекте мы добавили анимацию и голосовую подсказку "подвигайте телефоном" — это сократило время первого определения до 2 секунд.
Что определяет UX: конвергенция алгоритма и обратная связь?
UWB-алгоритму нужно движение для определения угла. Мы реализовали комбинированную индикацию: расстояние отображается крупно, направление — стрелкой. При дистанции менее 0,3 м включается вибрация UIImpactFeedbackGenerator(.heavy). Тактильная обратная связь — стандарт, заимствованный из AirTag.
Трекер на базе DW3000 для автономного решения
Для автономного трекера без MFi используем Qorvo DWM3001C — готовый UWB-трансивер с BLE. Прошивка реализует UWB Initiator role, обменивается токеном по BLE и отвечает на TWR-запросы телефона. На Android аналогичный опыт даёт библиотека androidx.core.uwb:
val rangingParams = UwbRangingParameters(
uwbConfigType = UwbRangingParameters.CONFIG_UNICAST_DS_TWR,
complexChannel = controllerScope.uwbComplexChannel,
peerDevices = listOf(UwbDevice.createForAddress(trackerUwbAddress)),
updateRateType = UwbRangingParameters.RANGING_UPDATE_RATE_FREQUENT,
sessionKeyInfo = sharedSessionKey
) Технические спецификации трекера
- Модуль: DWM3001C (Qorvo)
- Частота: 6.5 ГГц (канал 5)
- Дальность: до 10 м (угол до 20 м)
- Питание: CR2032 (срок службы до 12 мес.)
- Интерфейс: BLE 5.0 + UWB
- Роли: Initiator/Responder
Что входит в UWB-решение под ключ?
Наша команда с 5+ лет опыта и более 50 проектами в BLE/UWB предлагает:
- Анализ требований и выбор аппаратной платформы (DW3000, NXP, или кастом).
- Проектирование и разработка прошивки UWB-трекера.
- Создание мобильного приложения для iOS (Swift, NearbyInteraction) и Android (Kotlin, UWB API).
- Интеграция с системами учёта (1С, SAP, собственное API).
- Проектирование архитектуры безопасности (шифрование сессионного ключа).
- Тестирование точности и стабильности в реальных условиях.
- Документация и обучение персонала.
Мы гарантируем точность до 10 см даже в помещении с сильными помехами. Убедитесь на собственном опыте — закажите пилотный проект.
| Этап | Длительность |
|---|---|
| Анализ и выбор платформы | 1-2 недели |
| Разработка прошивки трекера | 2-6 недель |
| Мобильное приложение (1 платформа) | 1-3 недели |
| Интеграция и тестирование | 1-2 недели |
| Документация и обучение | 1 неделя |
Получите консультацию — оценим вашу задачу и предложим оптимальное аппаратное обеспечение.
Сроки
Мобильное приложение с UWB-функционалом (при готовом трекере) — от 1 до 3 недель. Полный цикл: прошивка трекера + приложение + интеграция — от 1 до 3 месяцев. Стоимость рассчитывается индивидуально в зависимости от количества поддерживаемых устройств и состава API. Свяжитесь с нами, чтобы обсудить детали.







