Skip to Content
Основные понятияОбнаружение движения

Режимы обнаружения движения и отслеживания

Tracelet осуществляет переход между активным (непрерывным) отслеживанием и неактивным (стационарным) отслеживанием для экономии заряда батареи. Логика, управляющая этим переходом, называется Обнаружение движения.

Вы можете точно настроить, как Tracelet решит переключиться с движения на стационарное, установив motionDetectionMode в своем MotionConfig. Tracelet предлагает три различных режима: accelerometer (по умолчанию), speed и smart.


1. Режим акселерометра (по умолчанию)

НЕ ПЕРЕВОДИТЬ

Этот режим полностью зависит от аппаратных датчиков устройства (акселерометр, гироскоп и распознавание активности ОС). Это самый экономичный аккумулятор и, как правило, самый надежный для пешеходов.

Как это работает:

  • Переход в неподвижном состоянии: Когда акселерометр устройства обнаруживает неподвижность (отсутствие физической тряски или ходьбы), Tracelet запускает таймер обратного отсчета, определяемый параметром stopTimeout.
  • stopTimeout: Количество минут, в течение которых устройство должно оставаться физически неподвижным, прежде чем Tracelet отключит непрерывное GPS-слежение и перейдет в режим STATIONARY с низким энергопотреблением. Если устройство перемещается во время обратного отсчета, таймер отменяется.
    • По умолчанию: 5 минут

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


2. Скоростной режим

НЕ ПЕРЕВОДИТЬ

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

Как это работает:

  • Стационарный переход: Когда скорость GPS падает ниже speedMovingThreshold (по умолчанию: 1,5 м/с), Tracelet считает, что устройство замедляется, и запускает таймер обратного отсчета, определенный speedStationaryDelay.
  • speedStationaryDelay: Количество секунд, в течение которых скорость GPS должна оставаться ниже порогового значения, прежде чем Tracelet отключит непрерывное отслеживание и перейдет в состояние STATIONARY.
    • По умолчанию: 180 секунд (3 минуты)

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


3. Умный режим

НЕ ПЕРЕВОДИТЬ

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

Как это работает:

  • Движение: Если акселерометр обнаруживает физическое движение ИЛИ скорость GPS превышает пороговое значение, устройство остается в режиме непрерывного отслеживания.
  • Переход в стационарный режим: Для перехода в режим STATIONARY ОБА акселерометр И GPS-датчики скорости должны объявить, что устройство находится в неподвижном состоянии.

Подвох «отложенного перехода»

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

Например, если вы настроите:

  • stopTimeout: 1 (1 минута/60 секунд для акселерометра)
  • Вы оставляете speedStationaryDelay по умолчанию (180 секунд для скорости GPS).

Когда вы перестанете двигаться:

  1. Акселерометр остановится через 60 секунд.
  2. Однако модуль определения скорости GPS все еще продолжает обратный отсчет продолжительностью 180 секунд.
  3. Tracelet не перейдет в состояние STATIONARY, пока не пройдут полные 180 секунд.

Совет по настройке. Если вы хотите, чтобы ваше приложение перешло в стационарный режим ровно через 1 минуту в режиме smart, вы необходимы настроить оба таймаута одинаково!

motion: MotionConfig( motionDetectionMode: MotionDetectionMode.smart, stopTimeout: 1, // 1 minute speedStationaryDelay: 60, // 60 seconds )

Сводка конфигурации

РежимТриггерПараметр тайм-аутаПо умолчанию
АкселерометрУстройство физического движенияНОТРАНС0ЛАТЕ5 минут
СкоростьСкорость GPS > 1.5 m/sНОТРАНС1ЛАТЕ180 секунд
УмныйФизическое движение ИЛИ скорость GPSЖдет обоих таймаутовНОТРАНС0ЛАТЕ