You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

Для акселерометров LSM303AGR / LIS3DH обновлен алгоритм детектора.


|MOVING| → |ACC FF| → |ACC IMPACT| → + → |CORRELATION PROCESSING| → |RESULT|
|MOVING| → |       BARO FF       | → ^

Алгоритм работы детектора основан на детектировании нескольких событий, таких как свободное падение по ускорению (ACC FF), удар (ACC IMPACT), изменение высоты по давлению (BARO FF) и корреляции этих событий.

При этом не следует использовать барометр для контроля падения с высотами ниже полутора метров из-за сложности детектирования. По умолчанию работа барометра в детекторе отключена.


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

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

Как настраивать или перестраивать детектор:

  1. Определить место установки метки, зафиксировать место для повторяемости.
  2. Определить минимальную высоту детектирования. Параметр tmin задает минимальное время падения. tmin=60 соответствует 600мс и высоте падения 1.8метра. Для пересчета на нужную высоту можно воспользоваться формулой свободного падения или онлайн калькуляторами.
  3. Параметр glow опредетяет порог ускорения, ниже которого детектируется состояние падения. В идеальном случае свободного падения, без вращения и других помех ускорение стремится к 0, но в реальном применении этот параметр может быть достаточно большим, например glow=9 (0.9g). При этом следует иметь в виду, что этот параметр определяет, вернее сравнивается с вычисленной длиной вектора ускорения по трем осям и равен sqrt(x^2 + y^2+z^2). Уменьшение параметра ведет к уменьшению ложных срабатываний, но так же уменьшению срабатываний в сложных условиях падения.
  4. Для подключения к детектору падения информации по давлению нужно убедиться, что метка не упакована в герметичные оболочки и имеет хороший доступ к внешней атмосфере для измерения давления. Убедиться, что вентиляционное отверстие не забито грязью, а корпус метки в хорошем состоянии. По умолчанию высота настройки детектора incths=200 что соответствует 20.0 Па и ~1.5 - 1.8м высоты. Для изменения высоты можно пропорционально увеличить значение параметра до нужного значения либо пересчитать (1200Па на каждые 100метров). Так же нужно активировать режим работы детектора по барометру enable=on.
  5. Параметр test парсета [/imu/ffacc] предназначен для включения тестового режима - активируется виброотклик по событию свободного падения. Если применимо, режим можно использовать для оперативного контроля результатов настройки детектора. После настройки этот режим следует отключить.



Все настройки расположены в парсетах:

[/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


Детальное описание параметров
// ACC
glow -        // near-zero-g entry threshold (in 0.1g)
gspike -      // tolerated spike ceiling inside dwell (in 0.1g)
ghigh -       // hysteresis exit threshold (in 0.1g)
tmin -        // dwell duration (in 0.01s)
p -           // required fraction below g_low (in %)
ambigmax -    // allowed samples in [g_low, g_spike) within free-fall window (in pcs)
exithold -    // time above g_high to exit free-fall state (in ms)
iirtau -      // 1st-order LPF on SVM; <=0 to disable (in ms)

// IMPACT
impths -      // acceleration spike threshold for impact (in 0.1g)
impwin -      // window to detect impact after free-fall (in ms)
impmin -      // minimum samples above threshold to confirm impact (in pcs)

// CORRELATOR
ffto -        // Maximum expected free-fall duration (in 0.1s)
imp2norm -    // Timeout to return to normal after impact (in 0.1s)
imp2val -     // Delay before checking barometer pressure after impact (N seconds) (in 0.1s)
val2norm -    // Delay before returning to NORMAL after validation (K seconds) (in 0.1s)

ff2impwin -   // Time window for correlating free-fall and impact (in 0.1s)
	  		  // If impact occurs within this time after free-fall, they're considered related

imp2valwin -  // Time window for correlating impact and validation (in 0.1s)
              // If validation occurs within this time after impact, they're considered related
  
ffdurmin -    // Minimum fall duration to be considered valid (in 0.01s)
              // Falls shorter than this are rejected as false positives

ffdurmax -    // Maximum fall duration to be considered valid (in 0.01s)
              // Falls longer than this are rejected as anomalies

// BARO
enable -      // Enables baro sensor to use in free fall validation in correlator
incths -      // Minimum pressure increase after impact (in 0.1Pa)
iirtau -      // IIR low-pass filter time constant for pressure (<=0 to disable) (in ms)


  • No labels