Исследование фазы сигнала
-
- Сообщения: 30
- Зарегистрирован: 07 дек 2010, 09:29
Исследование фазы сигнала
Необходимо построить график изменения фазы заданной гармоники во времени (Начальное значение фазы не имеет значения).
Что имеется на входе:
1) Сигнал во времени с заданной частотой дискретизации Fд.
2) Частота F на которой требуется определять фазу. Причем она задается вещественным числом, т.е. например 44.487 это нормально.
Как я понял общая методика решения заключается в нахождении преобразования Фурье и взятия аргумента комплексного числа. Ну а теперь о грустном, разрешение по частоте ДПФ это Fд/N где N размер выборки в отчетах. Т.е. где t - размер окна в секундах. Т.е. если взять окно в 1 секунду, получим точность 0.1 Гц, а часто нужна точность 3,5 цифр после запятой. Чуть позже я нашел преобразование Фурье ДВПФ - Дискретно-временное преобразование Фурье (Discrete Time Fourier transform DTFT) которое выглядит следующим образом:
Здорово конечно, но понятие бесконечности нас не устраивает, поэтому эта формула упрощается до применения окна:
Тут фишка в том что мы подставляем любую частоту . Другое дело что если в размер окна не помещается целое число отчетов заданной гармоники, то у нас появляется растекание спектра Которое сильно искажает результат вычисления фазы. Как быть? Задавать окно в 1000 секунд чтобы получить 3 знака после запятой не всегда возможно, да и точность по времени падает.
Что имеется на входе:
1) Сигнал во времени с заданной частотой дискретизации Fд.
2) Частота F на которой требуется определять фазу. Причем она задается вещественным числом, т.е. например 44.487 это нормально.
Как я понял общая методика решения заключается в нахождении преобразования Фурье и взятия аргумента комплексного числа. Ну а теперь о грустном, разрешение по частоте ДПФ это Fд/N где N размер выборки в отчетах. Т.е. где t - размер окна в секундах. Т.е. если взять окно в 1 секунду, получим точность 0.1 Гц, а часто нужна точность 3,5 цифр после запятой. Чуть позже я нашел преобразование Фурье ДВПФ - Дискретно-временное преобразование Фурье (Discrete Time Fourier transform DTFT) которое выглядит следующим образом:
Здорово конечно, но понятие бесконечности нас не устраивает, поэтому эта формула упрощается до применения окна:
Тут фишка в том что мы подставляем любую частоту . Другое дело что если в размер окна не помещается целое число отчетов заданной гармоники, то у нас появляется растекание спектра Которое сильно искажает результат вычисления фазы. Как быть? Задавать окно в 1000 секунд чтобы получить 3 знака после запятой не всегда возможно, да и точность по времени падает.
- Бахурин Сергей
- Администратор
- Сообщения: 1116
- Зарегистрирован: 05 окт 2010, 19:55
- Контактная информация:
Re: Исследование фазы сигнала
у вас есть сигнал
Вы хотите выделить из него фазу я правильно понял?
Если да то делаете так:
далее фнч устраняет удвоенную частоту и ваша фаза находится как арктангенс
никакого бпф и прочего всего не требуется. Единственное что потребуется это unwrap функция для раскрытия периодичности арктангенса, и то если девиация фазы больше pi радиан.
Вы хотите выделить из него фазу я правильно понял?
Если да то делаете так:
далее фнч устраняет удвоенную частоту и ваша фаза находится как арктангенс
никакого бпф и прочего всего не требуется. Единственное что потребуется это unwrap функция для раскрытия периодичности арктангенса, и то если девиация фазы больше pi радиан.
-
- Сообщения: 30
- Зарегистрирован: 07 дек 2010, 09:29
Re: Исследование фазы сигнала
Да именно требуется определить изменение фазы во времени. Как я понял это геометрическое определение фазы через прямоугольный треугольник Надо будет попробовать, хотя я сомневаюсь что данная методика применима если в сигнале присутствуют шумы и другие гармоники.
- Бахурин Сергей
- Администратор
- Сообщения: 1116
- Зарегистрирован: 05 окт 2010, 19:55
- Контактная информация:
Re: Исследование фазы сигнала
понимаете в чем дело. Как только ваша перестала быть постоянной величиной, ваш сигнал
это уже сигнал с фазовой модуляцией, состоящий не из одной гармоники а занимающий определенную полосу. То что я вам написал это ничто иное, как фазовый детектор позволяющий выделить из вашего фазомодулированного сигнала . ФНЧ который вы поставите после квадратурного преобразования позволит отфильтровать шумы. Чем уже полоса ФНЧ тем меньше будет влияние шумов.
это уже сигнал с фазовой модуляцией, состоящий не из одной гармоники а занимающий определенную полосу. То что я вам написал это ничто иное, как фазовый детектор позволяющий выделить из вашего фазомодулированного сигнала . ФНЧ который вы поставите после квадратурного преобразования позволит отфильтровать шумы. Чем уже полоса ФНЧ тем меньше будет влияние шумов.
-
- Сообщения: 30
- Зарегистрирован: 07 дек 2010, 09:29
Re: Исследование фазы сигнала
Задаваемый сигнал чисто вещественный а не квадратурный. Т.е. получается вначале ставится узкополосный фильтр а затем уже фазовый детектор? (С фазовыми детекторами пока не общался близко )
- Бахурин Сергей
- Администратор
- Сообщения: 1116
- Зарегистрирован: 05 окт 2010, 19:55
- Контактная информация:
Re: Исследование фазы сигнала
ну тогда начните с этой статьи.
-
- Сообщения: 30
- Зарегистрирован: 07 дек 2010, 09:29
Re: Исследование фазы сигнала
Спасибо, видимо угловая демодуляция это то, что надо в данном случае.
-
- Сообщения: 30
- Зарегистрирован: 07 дек 2010, 09:29
Re: Исследование фазы сигнала
Прочитал статью, ФНЧ-фильтр как я понял нужен с линейной фазой, желательно с нулевой. Т.е. подойдет оконный симметричный КИХ-фильтр. Мат. модель в статье приведена для непрерывных сигналов. Точность задаваемой частоты несущей я так понимаю все же зависит от частоты дискретизации (или я мудрю и она просто ограничена Fs/2 ?). Я имею ввиду если частота дискретизации скажем 25 Гц, несущую можно задать 10.367 Гц ?
- Бахурин Сергей
- Администратор
- Сообщения: 1116
- Зарегистрирован: 05 окт 2010, 19:55
- Контактная информация:
Re: Исследование фазы сигнала
релизуемых фильтров с нулевой фчх не бывает возьмите с линейной фазой ких. Точность оценки частоты не зависит от частоты дискретизации
МожноDmitri Seva писал(а): Я имею ввиду если частота дискретизации скажем 25 Гц, несущую можно задать 10.367 Гц ?