Megarus & IronVale
IronVale IronVale
Привет, Мегарус, пытаюсь избавиться от шумов в данных с датчика давления экзоскелета, не сильно увеличивая задержку. Есть какие-нибудь приёмы для сверхбыстрой фильтрации, при которой сохранится точность при резких изменениях нагрузки?
Megarus Megarus
Да, делай попроще и побыстрее. Используй однопольный IIR-фильтр нижних частот – всего одно умножение и сложение на выборку, по сути, это скользящее среднее. Выбери частоту среза примерно на максимальной рабочей частоте, скажем, 30-50 Гц, если отслеживаешь изменения нагрузки на ноги. Если нужно чуть более выраженную форму, последовательно соедини пару таких фильтров с разными временными константами – получишь более крутой спад без существенных затрат. Избегай больших FIR-окон, они убьют задержку. Если можешь позволить себе небольшую задержку, простой фильтр Калмана с моделью постоянного ускорения – следующий лучший вариант, там всего несколько матричных умножений, все равно очень легко. Главное – настраивай полюс на полосу частот шума сенсора, а не на динамику, чтобы быстрые всплески сенсора оставались, а остальное сглаживалось.