Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Детектор свободного падения


Модуль акселерометров поддерживает три различных чипа. В зависимости от установленного чипа применяются различные настройки.
Значение параметра -1 означает использовать значения по умолчанию. В скобках указано актуальное значение.

Доступные значения и используемые единицы зависят от используемого типа акселерометра.

Тип акселерометра можно увидеть командой GET /cli state imu::


Общее описание назначения параметров:

...

o6dths - orientation in 6 dimensions threshold. Порог ускорения либо угол, по которому генерируется значение текущей ориентации.

ffths - free fall threshold. Порог ускорения для генерации события “свободное падение”.

ffdur - free fall duration. Длительность либо количество отсчетов в течении которого ускорение остается ниже ffths по всем осям и генерируется событие “свободное падение”.

filt - filter option. Используется для отладки.

...

o6dths - 80deg (1), 70deg (2), 60deg (3), 50deg (4)

ffths - free fall threshold. Порог ускорения для генерации события “свободное падение”, mg, internally aligned in row [156, 219, 250, 313, 344, 406, 469, 500]

ffdur - free fall duration. Длительность либо количество отсчетов в течении которого ускорение остается ниже ffths по всем осям и генерируется событие “свободное падение”, ms, multiples by 1*odr

Code Block
[/imu/iext] imu ext:
  slpmode=-1(enabled) slpdur=-1(3000) clkmode=-1(disabled) clkths=-1(400) clkdur=-1(560) clkshock=-1(60) clkquite=-1(30) (Set 0*)

...

slpdur - sleep duration. Таймаут, если в течении которого небыло активности, акселерометр переходит в режим sleep (odr=12Hz), ms, multiples internally aligned by 512*odr.

clkmode - click mode. Режим работы функции "click". Выключено (1), одинарный (2), двойной (3).

clkths - click threshold. Порог ускорения для определения "щелчка", mg, multiples internally aligned by 2*lsb (lsb=31.25mg with default 2g full scale).

...

Code Block
[/imu/ibase] imu base:
  odr=-1(o25Hz) fs=-1(s2g) wuths=-1(32) wudur=-1(400) idledur=-1(5000) o6dths=-1(1600) ffths=-1(320) ffdur=-1(3) filt=-1(strong) (Set 0*)

wuths - mg, multiples internally aligned by 1*lsb [16, 31, 63, 125](lsb=16mg with default 2g full scale).

wudur - ms, multiples internally aligned by 1*odr from row [1000, 100, 40, 20, 10, 5, 2.5, 0.617, 0.19]

o6dths - mg, internally aligned by 1*lsb

ffths - mg, internally aligned by 1*lsbне используется

ffdur - count, number of 1*odrне используется


Парсет не используется.

Code Block
[/imu/iext] imu ext:
  slpmode=-1 slpdur=-1 clkmode=-1 clkths=-1 clkdur=-1 clkshock=-1 clkquite=-1 (Set 0*)


Начиная с прошивки 3.8.0 исправлены ошибки и изменены настройки поумолчанию:

Настройки по умолчанию (новая метка либо сброшена конфигурация):

ISM303DAC:

odr=-1(50HzLP) fs=-1(2g) wuths=-1(100) wudur=-1(30) idledur=-1(5000) o6dths=-1(50deg) ffths=-1(510) ffdur=-1(350) filt=-1(internal) (Set 0*) - настройка датчика свободного падения на 2 метра (эмпирически).

ffdur=700 - настройка датчика свободного падения на 5 метров (эмпирически).


Начиная с прошивки 3.13.0 обновлен алгоритм детектирования событий "свободного падения" и изменены настройки поумолчанию:

LSM303AGR / LIS3DH:

[/imu/ibase] ibase:

odr=-1(o25Hz) fs=-1(s2g) wuths=-1(32) wudur=-1(400) idledur=-1(5000) o6dths=-1(400) ffths=0 ffdur=0 filt=-1(strong) (Set 0*)

настройки детектора свободного падения расположены в парсетах:

[/imu/ffacc] :  test= off glow=9 gspike=18 ghigh=15 tmin=60 p=80 ambigmax=2 exithold=40 iirtau=50

[/imu/ffimp] :  impths=13 impwin=100 impmin=1

[/imu/ffcorr] :  ffto=50 imp2norm=20 imp2val=5 val2norm=5 ff2impwin=50 imp2valwin=20 ffdurmin=3 ffdurmax=300 (Set 0*)

[/bar/ffbar] :  enable= off incths=200 iirtau=200


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

node/ctl#CritSens=on - включает критическое поведение сенсоров (по умолчанию off)

После активации этой настройки критический сенсор (свободное падение) будет транслироваться до события отмены.

Отмена (отключение) этого события произойдет после установки метки на зарядку.