Например TDA7294

Форум РадиоКот • Просмотр темы - Алгоритм фильтра нижних частот
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Пн июн 09, 2025 05:12:08

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 24 ]  1,  
Автор Сообщение
 Заголовок сообщения: Алгоритм фильтра нижних частот
СообщениеДобавлено: Сб сен 10, 2005 13:10:12 
Нужен алгоритм(ы) фильтра нижних частот для программной реализации для 5, 10, 20, 30 и 40 Гц


Вернуться наверх
   
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Сб сен 10, 2005 17:31:38 
Говорящий с текстолитом
Аватар пользователя

Карма: 5
Рейтинг сообщений: 4
Зарегистрирован: Пн авг 22, 2005 21:02:22
Сообщений: 1529
Откуда: Питер
Рейтинг сообщения: 0
Каюсь :oops: Не занимался построением цифровых фильтров.
Идеология примерно такая: пачка сдвиговых регистров (образуют задержку), и на них, собственно, висит фильтрующая схема, которая высчитывает df/dt и "отрубает" все то, что "медленнее" или "быстрее" заданного значения. Для 5 Гц задержка будет серьезная :(

А для чего алгоритм, для компа или контроллера? Или на железе воротить? Имхо такие вещи лучше всего делать на ПЛИС. 8)

_________________
Лучше быть первым в деревне, чем вторым в Риме


Вернуться наверх
 
 Заголовок сообщения: Фильтр нижних частот
СообщениеДобавлено: Вс сен 11, 2005 10:31:45 
Цифровой фильтр для программной реализации на компе. При этом к моменту фильтрации все измерительные отсчеты уже известны, то есть и до текущей фильтруемой точки и после.


Вернуться наверх
   
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Сб ноя 05, 2005 07:14:42 
Модератор
Аватар пользователя

Карма: 46
Рейтинг сообщений: 236
Зарегистрирован: Чт окт 27, 2005 18:50:07
Сообщений: 11169
Откуда: из мест не столь отдалённых
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Мы для подобной цели используем метод скользящего среднего с задаваемым окном.Метод реализуется на компе для сглаживания кривой
фототока,работает очень хорошо-не искажает ход кривой,но не подкреплён мат.теорией :shock:


Вернуться наверх
 
 Заголовок сообщения:
СообщениеДобавлено: Сб ноя 12, 2005 18:40:33 
В принципе сами используем метод скользящего среднего окна. Однако, мы его используем чтобы отфильтровать помеху с заданной частотой. При этом, ессно, происходит подавление целого спектра чатот, а не одной частоты. Кроме того, длина фильтра рассчитывается для подавления помехи в зависимости от частоты опроса, и если идеальная длина фильтра получается дробной величиной в единицах измерительных отсчетов, ее приходится кратно увеличивать. Сейчас стоит задача работать на более низких частотах опроса, чем ранее, что приводит к значительному увеличению длины фильтра по действующей методике. Следовательно, фильтр будет подавлять больший спектр частот полезного сигнала. Кроме того, желательно подавить не просто точечную помеху (50 Гц), но все высокие частоты, т.к. на качество измерительной системы не приходится здесь надеяться. Буду благодарен, если кто-то порекомендует в поставленных ранее условиях как подходящие фильтры нижних частот, так и отдельной частоты.


Вернуться наверх
   
 
Не в сети
 Заголовок сообщения: Цифровой фильтр
СообщениеДобавлено: Вс ноя 13, 2005 07:08:52 
Модератор
Аватар пользователя

Карма: 46
Рейтинг сообщений: 236
Зарегистрирован: Чт окт 27, 2005 18:50:07
Сообщений: 11169
Откуда: из мест не столь отдалённых
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Попытаюсь найти :shock:


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
 Заголовок сообщения: цифровая фильтрация
СообщениеДобавлено: Пн ноя 14, 2005 20:09:58 
У нас выглядиттак после фильтрации


Вложения:
скользящеесреднее.rar [9.05 KiB]
Скачиваний: 1482
Вернуться наверх
   
 
Не в сети
 Заголовок сообщения: цифровая фильтрация
СообщениеДобавлено: Пн ноя 14, 2005 20:24:47 
Модератор
Аватар пользователя

Карма: 46
Рейтинг сообщений: 236
Зарегистрирован: Чт окт 27, 2005 18:50:07
Сообщений: 11169
Откуда: из мест не столь отдалённых
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Лесник,извините-это я забыл указать себя в предыдущем сообщении.Послал Вам образец доморощенной фильтрации,в теории не силен-всё получено эмпирически,после множества попыток подбора аппроксимирующей кривой,это в принципе невозможно для данного процесса. Далее эта кривая используется для нахождения точки изгиба,процесс полностью компьютеризирован :P


Вернуться наверх
 
 Заголовок сообщения: Теория
СообщениеДобавлено: Чт дек 01, 2005 22:07:46 
Hi, sir Murr! Ну и все прочие коты, конечно!

Метод простого среднего окна отличается тем, что, наверное, нет более простого в реализации метода.

Алгоритм:
Задаемся длиной фильтра в измерительных отсчетах n (нечетное). Вычисляем сумму первых n измерительных отсчетов S[(n-1)/2]. Первые (n-1)/2 отсчетов не фильтруются (последние тоже). Отфильтрованный отсчет с номером (n-1)/2 заменяется на S/n. (Нумерация отсчетов от 0). Далее каждый i-й измерительный код вычисляется как Si/n, где
Si=S[i-1] + N[i+(n-1)/2] - N[i-n/2]
N - измерительные отсчеты
Т.е. оно и есть скользящее окно. Отфильтрованный код есть тривиальне арифметическое среднее текущего и (n-1)/2 неотфильтрованных отсчетов слева и справа (до и после). Для экономии вычислительных расходов при вычислениях следующая сумма вычисляется вычитанием из предыдущей суммы ее первого измерительного кода и прибавлением нового последнего кода в текущей сумме. При манипуляциях с цифрами с плавающей точкой я использую реинициализацию вычисления суммы через определенное количество отсчетов, иначе накапливаются погрешности, связанные с дискретностью машинного кодирования чисел.
Алгоритм - вырожденный случай взвешенного среднего скользящего окна, когда измерительные отсчеты в сумме умножаются на весовые коэффициенты. В этом случае можно осуществить более гибкую настройку частотных свойств фильтра. Процессов таким фильтром фильтровал множество...

Глубинный смысл происходящего:
Допустим, предполагаем помеху с частотой fп = 50 Гц. Период помехи, соответственно Tп = 1/fп = 0.02. Пусть процесс опрашивается с чатотой fопр=2000 Гц. Тогда, если взять среднее на периоде, синусоидальная помеха будет практически полностью уничтожена (если подобрать нужную фазу ее совсем не будет). В наших условиях длиной фильтра будет 41 точка (текущий отсчет и по 10 до и после). Т.е. длина фильтра в идеале вычисляется из Tп = (n-1)/fопр. При вычислении возникает проблема, когда n оказывается дробным числом. Например:
fопр | n расчетное
----------
2000 | 41
1000 | 21
500 | 11
250 | 6
Для 250 получили 6 - число четное. Полуфильтр будет 2.5. 2.5 отсчета усреднить не получится (задача не тривиальная). Таким образом, приходится увеличить кратно фильтр и взять n=11, т.е. в данном случае два периода. Если опросность еще уменьшить вдвое, придется взять длину фильтра в три периода помехи и т.д.
Получается, что при понижении опросности длина фильтра увеличивается, и в пределе можно дойти до абсурда, когда на выходе фильтра получается просто среднее всего процесса или еще хуже - всего процесса не хватает для осуществления фильтрации.
Тут же можно видеть, что при таком подходе мы фильтруем не только 50 Гц, но и 100 и т.д.
Что вообще можно сказать о достоинствах вышеизложенного метода. Да в принципе ничего. Разве что в условиях отсутствия представлений о свойствах помех ничего другого на ум не приходит, кроме этого фильтра и ручного подбора его длины по критерию наибольшей красивости выходной кривой по субъективной оценке на основании данных онтологической перцепции.

Нужно убрать все верхние частоты. Баттерворд кий нить, или еще что нить. Никак не решу в условия вышеописанной задачи.

Привет из лесу!


Вернуться наверх
   
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Сб мар 25, 2006 23:46:42 
Нашел транзистор. Понюхал.
Аватар пользователя

Зарегистрирован: Сб мар 25, 2006 18:49:20
Сообщений: 161
Откуда: Москва
Рейтинг сообщения: 0
Могу дать схему собственной разработки!!!
Но не цифровой то фильтр, а на катухах и кондёрах!!

_________________
Транзистор - трехногий друг человека:-)


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс мар 26, 2006 01:31:09 
Говорящий с текстолитом
Аватар пользователя

Карма: 4
Рейтинг сообщений: 15
Зарегистрирован: Чт дек 15, 2005 17:34:48
Сообщений: 1507
Откуда: Петрозаводск
Рейтинг сообщения: 0
катушки и кондеры - ет хорошо 8)
только человек программу на компе пишет, котоаря ему фильтровать буит усё, катушки ему ни к чему...

_________________
путь наименьшего сопротивления проходит по пути наитолстого провода (с) Сергей Соболь


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс мар 26, 2006 01:32:37 
Нашел транзистор. Понюхал.
Аватар пользователя

Зарегистрирован: Сб мар 25, 2006 18:49:20
Сообщений: 161
Откуда: Москва
Рейтинг сообщения: 0
а-а-а-а-а-а-а-а-а-а-а-а-а-а-а-а-а-а-а!!!!!
Все понятно!!!!
Ивените глупого начинающего радиотехника :)) :))

_________________
Транзистор - трехногий друг человека:-)


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс мар 26, 2006 02:10:12 
Потрогал лапой паяльник
Аватар пользователя

Карма: 2
Рейтинг сообщений: 1
Зарегистрирован: Пн мар 20, 2006 13:05:08
Сообщений: 336
Рейтинг сообщения: 0
эээ, ребят, а прямое и обратное преобразование Фурье? На компе ж делается по уже готовым измерениям! разложили в ряд на куске каком-то и выкидывайте ненужные частоты.

типовая же задача из ЦОС (DSP).

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

http://www.dspguide.com/pdfbook.htm

на английском, правда, 15 глава по средним скользящим фильтрам.

_________________
Я просто верю в то, что рушить догмы - лучший способ не стареть.


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс мар 26, 2006 02:11:41 
Нашел транзистор. Понюхал.
Аватар пользователя

Зарегистрирован: Сб мар 25, 2006 18:49:20
Сообщений: 161
Откуда: Москва
Рейтинг сообщения: 0
Я тебя один хрен не понял!!!! :)))
Я начанающий!!!!!

_________________
Транзистор - трехногий друг человека:-)


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс мар 26, 2006 02:40:40 
Потрогал лапой паяльник
Аватар пользователя

Карма: 2
Рейтинг сообщений: 1
Зарегистрирован: Пн мар 20, 2006 13:05:08
Сообщений: 336
Рейтинг сообщения: 0
ZanGO писал(а):
Я тебя один хрен не понял!!!! :)))
Я начанающий!!!!!

частота знаешь что такое? и синусоида?

так вот, преобразование Фурье позволяет представить любую функцию времени у(t) как сумму синусоид, т.е. получить спектр этой функции.

P.S. оффтоп,
но говоря про синусоиды вспомнил как мне батя наглядно объяснил в децтве синусоиды.

вобщем представь говорил, идет бык по снегу и мочиться на ходу. хрен его болтается, а он идет. так вот след на снегу это и есть синусоида. чем быстрее идет, тем шире контур - это период. чем шире болтается, тем дальше мочится - это амплитуда.

_________________
Я просто верю в то, что рушить догмы - лучший способ не стареть.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: алгоритм фильтра низких частот
СообщениеДобавлено: Вс мар 26, 2006 10:17:02 
Модератор
Аватар пользователя

Карма: 46
Рейтинг сообщений: 236
Зарегистрирован: Чт окт 27, 2005 18:50:07
Сообщений: 11169
Откуда: из мест не столь отдалённых
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Для начинающих посетителей этого сайта.
Вопрос, заданный в вежливой форме и без распальцовки, имеет гораздо более высокие шансы на вразумительный ответ.

Для интересующихся цифровой фильтрацией.

Непереодические сигналы невозможно(без введения граничных условий) разложить в ряд Фурье и Вейвлет. Поэтому мы и придумали фильтрацию со скользящим окном; нас результат устраивает. Сейчас думаем о дальнейшей адаптации этого метода к реальным сигеналам. :evil:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: алгоритм фильтра низких частот
СообщениеДобавлено: Вс мар 26, 2006 12:30:35 
Потрогал лапой паяльник
Аватар пользователя

Карма: 2
Рейтинг сообщений: 1
Зарегистрирован: Пн мар 20, 2006 13:05:08
Сообщений: 336
Рейтинг сообщения: 0
Сэр Мурр писал(а):
Для начинающих посетителей этого сайта.
Вопрос, заданный в вежливой форме и без распальцовки, имеет гораздо более высокие шансы на вразумительный ответ.

Для интересующихся цифровой фильтрацией.

Непереодические сигналы невозможно(без введения граничных условий) разложить в ряд Фурье и Вейвлет. Поэтому мы и придумали фильтрацию со скользящим окном; нас результат устраивает. Сейчас думаем о дальнейшей адаптации этого метода к реальным сигеналам. :evil:


сорри, если невежливо я изъясняюсь,
я свой пост к первоначальному относил, где у Лесника уже все измерения на компе! т.е. и отрезок времени можно выбрать как хотите, и, теоретически, в вычислительной мощности ограничений нет. ИМХО, для обработки таких данных у вас есть все, чтобы делать разложение Фурье и получать спектр сигнала.

насчет реального сигнала - я для некоторых задач реализовывал 2 метода (в моем случае полезные сигналы были медленные, порядка 1 Гц - измерение потока воздуха, нагнетаемого вентилятором, измерения с периодом 1 мс). Замкнутый буфер по типу FIFO, в одном случае в буфер загоняются реальные значения (классическая реализация скользящего окна), в другом уже сглаженные (по нескольким последним значениям буфера) и сглаживаем еще раз по всему буферу.
Смысл второго способа - отсекаем отдельные пики, что у вас на картинке, и уже потом фильтруем остальные частоты. Для моего медленного сигнала работало на ура (но у меня было достаточно точек для этого). Были еще вариации, типа двойного скользящего окна - вычисляем 1 значение по 10 замерам и именно это значение и идет в буфер. Т.е. реальную кривую делим на куски, усредняем кусок и усредняем всю кривую по усредненным кускам. Результаты примерно такие же.

Единственное ограничение - иметь достаточно точек. Ну и размеры окна важны, если динамику сигнала отследить хотите. Приходится искать компромис между качеством сглаживания и запаздыванием сглаженного сигнала.

_________________
Я просто верю в то, что рушить догмы - лучший способ не стареть.


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс мар 26, 2006 16:00:58 
Модератор
Аватар пользователя

Карма: 46
Рейтинг сообщений: 236
Зарегистрирован: Чт окт 27, 2005 18:50:07
Сообщений: 11169
Откуда: из мест не столь отдалённых
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
спасибо за ссылку; к сожалению, ничего интересного для себя не нашёл. У нас обработка зарегистрированного сигнала, примерно раз в секунду, всего 3000...6000 точек.Параметры скользящего окна вычисляются программно в зависимости от уровня шума(тоже программно).Наш алгоритм построен несколько иначе-не среднее значение в окне, а адаптивное;результат очень хороший для небольшой скорости изменения
сигнала.Если эти вопросы- в сфере Ваших профессиональных интересов, можно продолжить дискуссию. :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс мар 26, 2006 16:19:51 
Потрогал лапой паяльник
Аватар пользователя

Карма: 2
Рейтинг сообщений: 1
Зарегистрирован: Пн мар 20, 2006 13:05:08
Сообщений: 336
Рейтинг сообщения: 0
не совсем понятна ваша задача.
фильтрация происходит раз в секунду по 6000 точек? на входе у вас 6000 точек, на выходе сколько, те же 6000? отфильтрованый сигнал используется для процесса какого-то, или просто для отображения?
полезный сигнал с какой скоростью может меняться?

интересно как оцениваете количество шума? по амплитуде, частоте?

я в своей работе пользую цифровые фильтры по мере надобности. иногда приходится довольно глубоко залезать.

_________________
Я просто верю в то, что рушить догмы - лучший способ не стареть.


Вернуться наверх
 
 Заголовок сообщения: алгоритм фильтра низких частот
СообщениеДобавлено: Вс мар 26, 2006 16:54:03 
1замер в секунду( не принципиально).Фильтрация после окончания регистрации. Шум оценивается по среднему значению между масимальными и минимальными значениями сигнала за весь период регистрации ( что-то вроде "трубы", в которой находтся сигнал).Отфильтрованный сигнал используется для определения точек перегиба ( момент, когда сигнал начинает возрастать или падать). Количество точек- не меняется.Сглаживание по нашей методике приводит к смещению момента перегиба на 1\2 величины окна; это можно учесть-если надо для обработки.


Вернуться наверх
   
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  1,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y