Тулбокс предоставляет несколько фильтров для оценки положения и скорости платформ с помощью бортовых инерционных датчиков (включая акселерометр, гироскоп и альтиметр), магнитометра, GPS и визуальных измерений одометрии. Каждый фильтр может обрабатывать определенные типы измерений с определенных датчиков. Каждый фильтр также делает допущения и может иметь ограничения, которые вы должны тщательно рассмотреть, прежде чем применять его. Для примера многие фильтры предполагают отсутствие устойчивого линейного или углового ускорения, кроме ускорения свободного падения. Поэтому следует избегать их использования во время сильного и постоянного ускорения, но эти фильтры могут работать достаточно хорошо во время коротких линейных разрывов ускорения. Кроме того, некоторые фильтры допускают кусочно-постоянное линейное ускорение и скорость вращения, поскольку они допускают ускорение и входы скорости вращения во время шага предсказания.
Внутренние алгоритмы этих фильтров также сильно варьируются. Для примера, ecompass
объект использует метод TRIAD, чтобы определить ориентацию платформы с очень низкой стоимостью расчетов. Многие фильтры (такие как ahrsfilter
и imufilter
) принять фильтр Калмана состояния ошибки, в котором оценивается отклонение состояния от ссылки состояния. Между тем, другие фильтры (такие как insfilterMARG
и insfilterAsync
) используйте расширенный подход фильтра Калмана, при котором состояние оценивается непосредственно.
Чтобы достичь высокой точности оценки, важно правильно настроить свойства и параметры фильтра. Тулбокс предлагает встроенный tune
функция для настройки параметров и шума датчика для imufilter
, ahrsfilter
, и insfilterAsync
непосредственно.
Таблица приводит входы, выходы, допущения и алгоритмы для всех фильтров слияния инерционных датчиков.
Объект | Датчики и входы | Состояния и выходы | Допущения или ограничения | Используемый алгоритм |
---|---|---|---|---|
ecompass
|
| Ориентация | Фильтр принимает отсутствие устойчивого линейного и углового ускорения, кроме ускорения свободного падения. | Метод TRIAD |
ahrsfilter
|
| Ориентация и скорость вращения | Фильтр принимает отсутствие устойчивого линейного и углового ускорения, кроме ускорения свободного падения. | Фильтр Калмана в состоянии ошибки |
ahrs10filter |
| Ориентация, высота, вертикальная скорость, смещение угла дельты, смещение скорости дельты, вектор геомагнитного поля, смещение магнитометра | Фильтр принимает кусочно-постоянное линейное ускорение в вертикальном направлении и никакое устойчивое линейное и угловое ускорение кроме ускорения свободного падения в других направлениях. | Дискретный расширенный фильтр Калмана |
imufilter
|
| Ориентация и скорость вращения | Фильтр принимает отсутствие устойчивого линейного и углового ускорения, кроме ускорения свободного падения. | Фильтр Калмана в состоянии ошибки |
complementaryFilter |
| Ориентация и скорость вращения | Фильтр принимает отсутствие устойчивого линейного и углового ускорения, кроме ускорения свободного падения. | Подход, не основанный на фильтре Калмана:
|
insfilterMARG
|
| Ориентация, положение, скорость, смещение угла дельты, смещение скорости дельты, вектор геомагнитного поля, смещение магнитометра | Шаг предсказания принимает входы акселерометра и гироскопа. Поэтому фильтр принимает:
| Дискретный расширенный фильтр Калмана |
insfilterAsync
|
| Ориентация, скорость вращения, положение, скорость, ускорение, смещение акселерометра, смещение гироскопа, вектор геомагнитного поля, смещение магнитометра | Фильтр принимает:
Фильтр не требует, чтобы датчики были синхронными, и каждый датчик может иметь падение образца. | Непрерывный дискретный расширенный фильтр Калмана |
insfilterNonholonomic |
| Ориентация, положение, скорость, смещение гироскопа, смещение акселерометра | Шаг предсказания принимает входы акселерометра и гироскопа. Поэтому фильтр принимает:
Кроме того, фильтр предполагает, что платформа движется вперед без бокового скольжения. | Дискретный расширенный фильтр Калмана |
insfilterErrorState |
| Ориентация, положение, скорость, смещение гироскопа, смещение акселерометра и шкала визуальной одометрии | Шаг предсказания принимает входы акселерометра и гироскопа. Поэтому фильтр принимает:
| Фильтр Калмана в состоянии ошибки |