Перейти к содержанию
    

Частота среза меня устраивает.Про Х не понял.У меня 24 разрядный АЦП диапазон от 0 до 16000000.

Вы хотите сказать что махонькие цифирьки смогут повлиять на 16млн?Если я вас правильно понял размерность Х может быть любой?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Частота среза меня устраивает.Про Х не понял.У меня 24 разрядный АЦП диапазон от 0 до 16000000.

Вы хотите сказать что махонькие цифирьки смогут повлиять на 16млн?Если я вас правильно понял размерность Х может быть любой?

Алгоритм должен работать для любого диапазона вещественных чисел. "махонькие цифирьки" - это все-таки коэффициенты, которые умножаются на Ваши Х - неважно, какого они диапазона.

 

Первая простейшая проверка коэффициентов фильтра НЧ (а это именно он) - это вычислить, дает ли формула при "постоянном токе" (бесконечное множество одинаковых чисел) Х на входе то же самое значение Х на выходе.

Для указанной в источнике формулы

Y = B[0]*X + B[1]*X[i-1] + B[2]*X[i-2] - A[1]*Y[i-1] -A[2]*Y[i-2]

 

если взять

X = X[i-1] = X[i-2] = ... = Х,

то всегда будет

Y = Х,

если выполняется равенство

B[0] + B[1] + B[2] - A[1] - A[2] = 1 .

 

Для указанных в источнике коэффициентов это равенство выполняется с высокой точностью.

 

Вторая простая проверка коэффициентов ФНЧ - это проверить, будет ли на выходе 0, если на входе дать "сигнал высокой частоты".

Если взять на входе последовательность чисел одинакового абсолютного значения Х с чередующимся знаком, т.е.

X = -X[i-1] = X[i-2] = -X[i-3] ... = Х,

то на выходе будет Y = 0,

если выполняется равенство

B[0] - B[1] + B[2] = 0 .

 

Для указанных в источнике коэффициентов это равенство тоже выполняется с высокой точностью.

 

Будет ли этот фильтр с указанными коэффициентами иметь нужные Вам частотные свойства - проверяйте на более сложных последовательностях чисел, при помощи Excel, Matlab, Mathematica или еще чего-нибудь. Но от диапазона чисел работоспособность (и относительная точность) фильтра точно зависеть не будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо.С диапазоном,не скрою,весьма обрадовали.

Изменено пользователем Евгений Германович

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я использовал фильтры типа: усредняющих (медианный) и типа цифрового апериадического.

Фильтры 2-го порядка не применял, т.к. слишком увеличивается время вычислений.

Мое мнение:

- для усредняющих фильтров биение уменьшается в корень квадратный от количества измерений;

- для апериодического фильтра, чем больше постоянная времени, тем биения меньше (примерно также, как в усредняющем).

Т.е. беря частоту считывания АЦП в 10 раз выше, Вы уменьшаете биения в 3 с небольшим раза.

Это даже согласуется с нормальным законом распределения ошибки при измерении. :biggrin:

PS. Мне больше нравятся апериодичекие фильтры, но это дело вкуса.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я использовал фильтры типа: усредняющих (медианный) и типа цифрового апериадического.

Фильтры 2-го порядка не применял, т.к. слишком увеличивается время вычислений.

Мое мнение:

- для усредняющих фильтров биение уменьшается в корень квадратный от количества измерений;

- для апериодического фильтра, чем больше постоянная времени, тем биения меньше (примерно также, как в усредняющем).

Т.е. беря частоту считывания АЦП в 10 раз выше, Вы уменьшаете биения в 3 с небольшим раза.

Это даже согласуется с нормальным законом распределения ошибки при измерении. :biggrin:

PS. Мне больше нравятся апериодичекие фильтры, но это дело вкуса.

1) Мне почему-то кажется, что усредняющий и медианный фильтр - это не одно и то же. Усредняющий считает среднее значение (сумма значений разделить на кол-во), а медианный - выдает среднее из сортированных значений (которых всегда нечетное кол-во).

Если это не так, прошу ссылки на источник, где это однозначно определено.

 

2) Вероятно, Вы имеете в виду апериодический фильтр первого порядка. Обсуждавшийся здесь фильтр Баттерворта второго порядка отличается от апериодического фильтра второго порядка всего лишь значениями самих коэффициентов.

 

3) Конечно, выбор фильтра - дело вкуса. Но еще выбор фильтра зависит от требований к качеству результата и от имеющейся в распоряжении "вычислительной мощности".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1) Мне почему-то кажется, что усредняющий и медианный фильтр - это не одно и то же. Усредняющий считает среднее значение (сумма значений разделить на кол-во), а медианный - выдает среднее из сортированных значений (которых всегда нечетное кол-во).

Если это не так, прошу ссылки на источник, где это однозначно определено.

Вы правы, но практической разницы между ними не ощущается.

 

2) Вероятно, Вы имеете в виду апериодический фильтр первого порядка.

Совершенно верно, Вы меня правильно поняли.

 

Обсуждавшийся здесь фильтр Баттерворта второго порядка отличается от апериодического фильтра второго порядка всего лишь значениями самих коэффициентов.

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

 

3) Конечно, выбор фильтра - дело вкуса. Но еще выбор фильтра зависит от требований к качеству результата и от имеющейся в распоряжении "вычислительной мощности".

Согласен. :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"Мне почему-то кажется, что усредняющий и медианный фильтр - это не одно и то же."

Вы правы, но практической разницы между ними не ощущается.

- Единственное высказывание, требующее возражения.

 

Разница между медианным и усредняющим фильтрами имеет огромное практическое значение.

Иллюстрация, например, здесь, картинка в конце страницы:

Левая колонка синих отсчетов - входной сигнал;

Средняя колонка красных отсчетов - результат работы усредняющего фильтра;

Правая колонка красных отсчетов - результат работы медианного фильтра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"Мне почему-то кажется, что усредняющий и медианный фильтр - это не одно и то же."

 

- Единственное высказывание, требующее возражения.

 

Разница между медианным и усредняющим фильтрами имеет огромное практическое значение.

Иллюстрация, например, здесь, картинка в конце страницы:

Левая колонка синих отсчетов - входной сигнал;

Средняя колонка красных отсчетов - результат работы усредняющего фильтра;

Правая колонка красных отсчетов - результат работы медианного фильтра.

А где сравнение с усредняющим фильтром, я это не увидел.

Могу еще предложить кое-какие варианты фильтров (для большей полноты).

Например, с коэффициентами возведения в степень.

Плюс. Коэффициенты целые числа - можно обойтись сдвигами, без умножения.

Минус. Для большого количества членов включаются тормоза.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А где сравнение с усредняющим фильтром, я это не увидел.

Средняя колонка - усредняющий фильтр, правая - медианный фильтр.

Собственно, картинки и демонстрируют разницу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Средняя колонка - усредняющий фильтр, правая - медианный фильтр.

Собственно, картинки и демонстрируют разницу.

Спасибо, теперь ясно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

... а медианный - выдает среднее из сортированных значений (которых всегда нечетное кол-во).

Если это не так, прошу ссылки на источник, где это однозначно определено.

Ссылку не приведу, но выходом медианного фильтра для четного числа отсчетов принято считать полусумму двух средних по росту отсчетов.

 

2alexander55

Как уже заметила Tanya

медианная фильтрация убирает редкие случайные помехи (выбросы)

По картинкам по приведенной выше ссылке можно заметить, что медианный фильтр задавит полностью помеху с плотностью ниже int((ширины его окна + 1)/2) и благополучно пропустит помеху с большей плотностью.

Плюс медианного фильтра - он одинаково хорошо задавит выбросы и вверх, и вниз даже в пределах одного окна (на картинках приведены вариант с выбросами только вверх).

Минус - сильное и плохо предсказуемое искажение ФЧХ сигнала на выходе, если верхняя частота во входном сигнале превышает частоту отсчетов/3*ширины окна. Т.е. без изрядного оверсемплинга его лучше не использовать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

При частоте квантования 25Гц и кол-ве отсчетов для увреднения 30 я получал нестабильность порядка 0.004Б при входном сигнале -4Б.Баттерворт дает примерно тоже самое при частоте 10.Возможно стоит применить вначале медианный фильтр,вроде он убирает выбросы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

При частоте квантования 25Гц и кол-ве отсчетов для увреднения 30 я получал нестабильность порядка 0.004Б при входном сигнале -4Б.Баттерворт дает примерно тоже самое при частоте 10.Возможно стоит применить вначале медианный фильтр,вроде он убирает выбросы.

Если в выборке нет явных выбросов типа

100 101 100 99 200 100 99 10 100

то толку от медианного фильтра не будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вся беда в том ,что они иногда бывают.Проблема в том как приспособить медианный фильтр.Баттерворт или усреднение решаются просто,а для медианы нужно хранить отсчеты в памяти а это скажется на быстродействии.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вся беда в том ,что они иногда бывают.Проблема в том как приспособить медианный фильтр.Баттерворт или усреднение решаются просто,а для медианы нужно хранить отсчеты в памяти а это скажется на быстродействии.

Для вычисления фильтра Баттерворта 2го порядка, кроме текущего значения на входе, нужны еще 2 предыдущих значения на входе и 2 предыдущих значения на выходе. Эти предыдущие значения тоже хранятся в памяти!

Если быстродействие позволяет, рекомендую попробовать медианный фильтр по трем последним отсчетам перед применением «обычного» фильтра (усредняющего или Баттерворта). По сравнению с фильтром Баттерворта 2го порядка, медианный фильтр по трем последним отсчетам не потребует ни одной дополнительной ячейки памяти: он использует текущее значение и 2 предыдущих значения на входе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...