Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Следящий фильтр
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
TYIL
Задача следущая.
Есть синусоидальный сигнал (120...1200 Гц), на который наложены гармоники (в основном 2-я и 3-я) и небольшой случайный шум. Максимальная скорость изменения частоты 5% в секунду.
Надо отфильтровывать эту синусоиду (с сохранением амплитуды, фаза может быть любой) при изменении частоты в реальном времени.
Подскажите, пожалуйста, какие существуют алгоритмы для такой фильтрации.
TriD
Пробовал такой фильтр на SPPEDY-33 из-под LabView - работает замечательно. Единственное, амплитуда полезного сигнала будет гулять. Если все-таки необходима амплитуда, то исходный сигнал необходимо промодулировать по фазе, а после фильтрации - демодулировать. В этом случае можно будет измерить амплитуду.
DRUID_3
Цитата(TYIL @ Jul 13 2006, 07:28) *
Задача следущая.
Есть синусоидальный сигнал (120...1200 Гц), на который наложены гармоники (в основном 2-я и 3-я) и небольшой случайный шум. Максимальная скорость изменения частоты 5% в секунду.
Надо отфильтровывать эту синусоиду (с сохранением амплитуды, фаза может быть любой) при изменении частоты в реальном времени.
Подскажите, пожалуйста, какие существуют алгоритмы для такой фильтрации.


Ну можно программно реализовать петлю Костаса (она же PLL) я бы так и поступил...

To: TriD

Объясните непосвященным, о чем Вы???
TYIL
Цитата(TriD @ Jul 13 2006, 12:29) *
Пробовал такой фильтр на SPPEDY-33 из-под LabView - работает замечательно. Единственное, амплитуда полезного сигнала будет гулять. Если все-таки необходима амплитуда, то исходный сигнал необходимо промодулировать по фазе, а после фильтрации - демодулировать. В этом случае можно будет измерить амплитуду.

Нет, нужна именно амплитуда сигнала на заданной частоте. Сама частота измеряется датчиком оборотов, хотя и низкочастотным (120 Гц сигнала соответствует 8 Гц с датчика). Если просто менять коэффициенты полосового фильтра пропорционально частоте, не возникнут ли при этом переходные процессы в фильтре?
TriD
В своем проекте я использовал NI кубик LMS Adaptive Filter (LMS = least mean square). Была задача: вытащить известный полезный сигнал из-под шумов. Фильтр работает изумительно. Удалось вытащить сигнал при соотношении 1:100 (и это далеко не предел).
К вашему случаю, к сожалению, он не применим, так как у вас и сигнал и шум - неизвестные факторы, а для работы фильтра нужен опорный сигнал или шум.
mcheb
Цитата(TYIL @ Jul 13 2006, 07:28) *
Задача следущая.
Есть синусоидальный сигнал (120...1200 Гц), на который наложены гармоники (в основном 2-я и 3-я) и небольшой случайный шум. Максимальная скорость изменения частоты 5% в секунду.
Надо отфильтровывать эту синусоиду (с сохранением амплитуды, фаза может быть любой) при изменении частоты в реальном времени.
Подскажите, пожалуйста, какие существуют алгоритмы для такой фильтрации.

Есть такая штука - вейвлет анализ и его расширение на обработку дискретного сигнала - банк фильтров. Реально достаточно 2х фильтров, НЧ и ВЧ. Литературы много, надо читать и пробовать. Общая идея такая - изменение сигнала отслеживается по ВЧ а НЧ фильтр понижает частоту в 2 раза. В Вашем случае достаточно 4-5 рекурсий (1200-600-300-150-75 герц).
Stanislav
Цитата(TriD @ Jul 14 2006, 10:33) *
В своем проекте я использовал NI кубик LMS Adaptive Filter (LMS = least mean square). Была задача: вытащить известный полезный сигнал из-под шумов. Фильтр работает изумительно. Удалось вытащить сигнал при соотношении 1:100 (и это далеко не предел).
К вашему случаю, к сожалению, он не применим, так как у вас и сигнал и шум - неизвестные факторы, а для работы фильтра нужен опорный сигнал или шум.
Нет, не обязательно нужен. Есть разновидность LMS алгоритма - авторегрессионный. Для него в качестве опорного берётся сам сигнал. Позволяет не только построить оптимальный фильтр, но и непосредственно оценить частоту сигнала. Посмотреть примеры реализаций можно в матлабе.
Простите за некоторую вольность изложения - времени мало.
TED17
Цитата(TYIL @ Jul 13 2006, 08:28) *
Есть синусоидальный сигнал (120...1200 Гц), на который наложены гармоники (в основном 2-я и 3-я) и небольшой случайный шум. Максимальная скорость изменения частоты 5% в секунду.

Если гармоники не превышают сигнал - то (Labview)- FFT - MAX -окно и нзад. А остатки шума - статистикой - времени должно хватить.
TYIL
Всем спасибо!
Нашел в инете описание узкополосного параметризируемого полосового фильтра.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.