Цитата
...про полифазную рализацию фильтров
Считайте все на 10Гц, какие уж тут ресурсы прости господи
Надеюсь до этого не дойдёт
Цитата
Если можете то опишите вашу цель или рашаемую задачу вашими датчиками LSM303DLHC (магнетометр + акселерометр) и L3GD20. Свою решил успешно. Фильтры фнч есть в чипах, зачем еще в софте? Конечно никакого бпф там не нужно, также как и CIC, FIR фильтры. Многие задачи решаются, если грубо - медианными, временными, калмановскими фильтрами перед кватернионной матрицей. Если решаете 3D, то как у многих с разнесенными датчиками возникнут проблемы с накоплением ошибок, синхронизацией, соосностью вертикалей и тп. От которых не так просто избавиться. А про производительности чипа хватит за глаза, если не лезть в бпф и цифровую фильтрацию высоких порядков.
Одна пара датчиков: то есть LSM303DLHC и L3GD20. Стоит задача определения ориентации по сторонам света и определение положения в пространстве, а также самостабилизация. Движение по электронным меркам медленное, поэтому процессы, как я описал низкочастотные. Всё что выше 3-5 Гц считаю хламом, вибрацией и магнитными наводками. Экспериментирую пока на демо от STM для Discovery, снёс все лишнее, сижу играюсь с фильтрами и настройками датчиков.
LSM303DLHC используется чтобы определять положение в полярной системе координат по акселерометру и соответственно направление на север. L3GD20 - для определения вращения и подачи этого сигнала на алгоритм стабилизации, который должен это вращение подавить. Ну, пока такая идея во всяком случае.
Медианное сглаживание малым окном применяю чтобы избавиться от резких коротких выбросов в сигнале (вы кстати такие наблюдали у себя? природа их мне пока неясна..). Далее чтобы избавиться от шумов и эффектов вибрации добавляю FIR с очень узкой полосой и подавлением около 30 дБ. Делал в лоб как FIR с симметричной вещественной импульсной. Например, полосу магнетометра выставил 220 Гц (если беру ниже, то сигнал идёт какими-то скачками), а фильтруюсь до полосы ~2-3 Гц с подавлением ~25-30 дБ фильтром 48 порядка. К слову сначала думал пользоваться фильтрами в датчиках, но смутило полное отсутствие в документации их описания. Они упоминаются в registers description, а какие у них полосы, характеристики - глухо. Поэтому решил, что такой кот в мешке мне не нужен и пилю свою фильтрацию.
Про применение Калмана в данных задачах слышал, но мне кажется, что для моего случая это перебор. Если вы применяли его в месте с данными датчиками, то расскажите, будет интересно узнать как и зачем, чем адаптивная фильтрация здесь улучшит качество сигнала в сравнении с обычной. Тем более такая серьезная. Может быть я неправ, но мое личное понимание, что Калман применим уже на верхнем уровне и работает с сигналами после шумовой фильтрации для решения комплексной задачи навигации. И что такое кватернионная матрица, аж интересно стало
Цитата
mpu-9150 поглядите может вам он больше понравиться чем так активно фильтровать 9 каналов
Спасибо, но к
сожалению счастью, не я принимаю решение, какие камни ставить. Но про него почитаю