Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Программная фильтрация АЦП
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
rekcuf
Замеряю напряжение между двумя резистивными делителями встроенным в МК АЦП, который работает в диф. режиме с включенным усилением х20. Использую оверсэмплинг, чтобы дополнительно получить 2 бита точности, в результате имею 11 бит.

Последние 3 бита шумят.

Если посчитать распределение величин замеров, получается так:

Нажмите для просмотра прикрепленного файла


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


_pv
Цитата(rekcuf @ Feb 3 2015, 22:11) *
Какими алгоритмами можно программно отфильтровать значения, чтобы при этом реакция на импульс не пострадала? И в идеале еще без сложной математики, т.к. у МК память 1 Кб.
Или нереально?

чтобы передаточная функция фильтра не изменяля реакцию на ступеньку, одна должна быть тождественно равной 1.
обычно при оверсэмплинге (в сигма-дельта АЦП) используют sinc3...5 фильтры, памяти им не надо (только на 3..5 отсчётов). получается чуть лучше чем просто усреднение или БИХ первого порядка.
Tanya
Цитата(_pv @ Feb 3 2015, 19:52) *
чтобы передаточная функция фильтра не изменяля реакцию на ступеньку, одна должна быть тождественно равной 1.
обычно при оверсэмплинге (в сигма-дельта АЦП) используют sinc3...5 фильтры, памяти им не надо (только на 3..5 отсчётов). получается чуть лучше чем просто усреднение или БИХ первого порядка.


Ну... если еще по производной (скачку больше порога) отключать усреднение, то ступенька будет ступенчатее. Только это уже нелинейная фильтрация.
one_eight_seven
А усреднение/фильтрация точно должно помочь? Может там проблема с самим измерением и/или опорой?
rekcuf
Цитата(one_eight_seven @ Feb 3 2015, 20:37) *
А усреднение/фильтрация точно должно помочь? Может там проблема с самим измерением и/или опорой?


Есть некоторое количество плат, на которых должно все заработать.. В следующей ревизии можно будет аппаратно улучшить характеристики, а сейчас приходится работать с тем, что есть..
Hose
У вас обязана быть пара фильтров: аналоговый перед ацп и цифровой после.
Сложность реализации можете распределять между этими фильтрами: если жалко ресурс камня - делайте сложнее аналог, или наоборот.

Я бы сделал так: частоту дискретизации побольше, рц фильтр, который гарантированно отрежет все что за половиной частоты дискретизации (конденсатор должен работать до частот выше аналоговой полосы ацп), далее простенький фнч в цифре 5-7 порядка, далее дециматор.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.