Фильтр Калмана против экспоненциального фильтра - PullRequest
5 голосов
/ 06 декабря 2010

Мне было интересно, каковы преимущества и недостатки фильтра Калмана и экспоненциального фильтра ? У меня проблема с многосенсорным синтезом, и я пытаюсь решить, какой метод выбрать.

Я думаю, что фильтр Калмана более сложен в вычислительном отношении, но он имеет более детальную модель системы, поэтому он более точен (?) В многосенсорном синтезе.

Принимая во внимание, что Экспоненциальный фильтр - простое уравнение, но оно ограничено выбором альфы (чем выше альфа = меньше «памяти» фильтра и, следовательно, меньшим сглаживанием, но большим весом при измерениях, тогда как более низкая альфа имеет более высокую степень сглаживания но внезапные изменения не отражаются должным образом.

Экспоненциальный фильтр более полезен при подавлении шума, когда есть дрожание и т. Д., Тогда как фильтр Калмана полезен для фактического слияния нескольких датчиков. Это правильно?

Кроме того, насколько полезен Генетический алгоритм для слияния сенсоров? Я пытаюсь объединить магнитный компас и гироскоп для оценки истинной ориентации.

Спасибо!

Ответы [ 2 ]

4 голосов
/ 21 января 2012

"Каковы преимущества и недостатки фильтров Калмана и экспоненциального фильтра? Я думаю, что фильтр Калмана более сложен в вычислительном отношении, но он имеет более детальную модель системы, поэтому он более точен (?) В многосенсорном синтезе. "

Вот и все, в общем, чем лучше ваша модель системы, тем лучше будет ваш фильтр, независимо от того, используете ли вы фильтр Калмана.

«Экспоненциальный фильтр более полезен при подавлении шума, когда есть дрожание и т. Д., Тогда как фильтр Калмана полезен для фактического слияния с несколькими датчиками. Это правильно?»

Я бы не согласился с этим утверждением. Фильтр Калмана умел подавлять шум. Это намного умнее, чем фильтр нижних частот, потому что он в полной мере использует всю информацию, хранящуюся в ковариационной матрице. Если показатель эффективности, на который вы смотрите: «Насколько близко отфильтрованное значение соответствует истинному значению?» Я думаю, лучшее, на что может надеяться простой фильтр нижних частот, - это сопоставить его производительность, и это только в простейшем случае random walk . Как только у вас появится интересная матрица перехода состояний, я думаю, что у фильтра низких частот нет шансов, потому что он не может видеть, как неопределенность скорости просачивается, например, в неопределенность положения.

«Я пытаюсь объединить магнитный компас и гироскоп для оценки истинной ориентации».

Это именно то, для чего предназначен фильтр Калмана.

Но если вас беспокоит сложность реализации фильтра Калмана, начните с реализации версии фильтра нижних частот:

1) Начните с простого моделирования

    predictedAngle = oldAngle+rotationRate*dt

2) Обновите состояние симуляции на основе ваших измерений

    rotationRate  = alpha1*rotationRate  +(1-alpha1)*gyro.rotationRate
    filteredAngle = alpha2*predictedAngle+(1-alpha2)*compass.angle

Это в основном структура фильтра Калмана (самый простой) для этой системы. Все, чего не хватает, это:

  • Пишите все в матричном формате
  • Добавить «технологический шум» на этапе моделирования
  • Добавьте шаг для расчета «оптимального усиления Калмана» вместо использования фиксированных значений для alpha
  • Добавить шаг к обновить ковариацию фильтра .

«Кроме того, насколько полезен генетический алгоритм для слияния сенсоров?»

Я не вижу, где они вписались бы. Вы можете уточнить?

0 голосов
/ 26 февраля 2013

Экспоненциальный фильтр является частным случаем фильтра Калмана, который ограничивает рассмотрение до

  1. Системы с тривиальной (постоянной) динамикой и
  2. фиксированное отношение шума от установки (установка + измерение) (это то, что определяет альфа-параметр).

Таким образом, в случаях, когда применяются эти допущения, они эквивалентны. В других случаях вы можете добиться лучших результатов, используя фильтр Калмана (если вы правильно смоделировали систему).

Другое основное решение заключается в том, включаете ли вы скорость в пространство состояний; если вы это сделаете, то фильтр Калмана - это путь.

...