реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Определение амплитуды и фазы сигнала, Алгоритм Герцеля - практическая реализация.
misyachniy
сообщение Oct 27 2014, 17:34
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454



Примеров применения в сети достаточнонапример здесь:
http://www.dsplib.ru/content/goertzel/goertzel.html
И как как всегда абстрактно:
Цитата
Пусть N=8, исходный сигнал s(n) показан на рисунке 3.
Рассчитаем при помощи алгоритма Герцеля спектральный отсчет S(k) с номером k=1.

Мне нужно определить ампдитуду и фазу сигнала от датчика.
Датчик будет запитываться одной частотой в диапазоне от 4 до 20 кГц.
Сигнал с него имеет длительность до 300 миллисекунд.
Я рассчитываю обрабатывать сигнал частями по 10..20 миллисекунд.
АЦП 12 разрядов.
Например я хочу определить фазу с точностью до 5 градусов, (точность амплитуды пока опустим).
Первый вопрос - какую частоту оцифровки сигнала выбрать?
Второй вопрос - по сколько отсчетов брать в работу?
Go to the top of the page
 
+Quote Post
Xenia
сообщение Oct 27 2014, 18:10
Сообщение #2


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(misyachniy @ Oct 27 2014, 20:34) *
АЦП 12 разрядов.
Например я хочу определить фазу с точностью до 5 градусов, (точность амплитуды пока опустим).
Первый вопрос - какую частоту оцифровки сигнала выбрать?
Второй вопрос - по сколько отсчетов брать в работу?


Поскольку вам никто не отвечает, попробую я, хотя и не поручусь за точность ответа.

Считаю так. 5 градусов - это 1/72-часть от полного оборота. Значит порядок величины будет таков, чтобы период интересующей вас частоты (той самой, к которой собрались применять алгоритм Герцеля) был представлен 72-мя точками в массиве. Впрочем, если посмотреть на ситуацию более оптимистично, то хватит и половины - 36 точек на период (т.к. обе половины периода симметричны).

А дальше уж сами решайте, с какой частотой вам снимать данные и как долго их накапливать в массиве, чтобы обеспечить данное условие. Но по грубой прикидке частота оцифровки должна в 36 раз превышать частоту измеряемого сигнала, а массив достаточной длины, чтобы в него проместился хотя бы один ее полный период.
Go to the top of the page
 
+Quote Post
Fat Robot
сообщение Oct 27 2014, 18:57
Сообщение #3


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



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

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

Естественно, специально накапливать отсчеты в массиве смысла нет. Простые вычисления делаются по мере поступления отсчетов.

Цитата(misyachniy @ Oct 27 2014, 18:34) *
Первый вопрос - какую частоту оцифровки сигнала выбрать?
Второй вопрос - по сколько отсчетов брать в работу?
Go to the top of the page
 
+Quote Post
misyachniy
сообщение Oct 28 2014, 16:19
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454



Цитата(Fat Robot @ Oct 27 2014, 20:57) *
Частота отсчетов любая, удовлетворяющая критерию Найквиста. Но самое простое для ваших измерений и вычислений - взять частоту отсчетов ровно в 4 раза превышающую частоту измеряемого сигнала.

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

Естественно, специально накапливать отсчеты в массиве смысла нет. Простые вычисления делаются по мере поступления отсчетов.


Сигнал не постоянный а импульсный , изменяющийся.
На рисунке приведен сигнал с синхронного детектора. Собственно синхронный детектор исключается из схемы.
На сколько я понимаю, максимальные значения амплитуды и фазы будет зависеть от количества выборок которые предполагается обрабатывать за один раз.
Значения будут размазываться.

Пусть частота выборки будет в 4 раза выше частоты сигнала. Тогда меня интересует отсчет номер 1 , если считать от 0?

Нужно ли мне сбрасывать фильтр в 0, или можно непрерывно вычислять значение амплитуды и фазы, усредняя значение с выхода фильтра по своему усмотрению?
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
SM
сообщение Oct 29 2014, 06:26
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



А что вообще подразумевается под фазой и амплитудой для этого (явно негармонического) сигнала?
Go to the top of the page
 
+Quote Post
Fat Robot
сообщение Oct 29 2014, 09:14
Сообщение #6


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



Я понял почти все слова по-отдельности, но совсем не понял ваших вопросов.

Какая структурная схема вашего оценивателя? В каких точках получены зависимости? Чем они вас не устраивают?

Задача-то, в общем, не слишком сложная, как я понял: есть датчик, на него подается сигнал с определенной известной частотой. Датчик (например, пусть это будет колебательный контур) в зависимости от внешних воздействий меняет амплитуду и фазу сигнала, которые мы хотим оценить. Сама частота на время оценивания считается постоянной и известной.

Цитата(misyachniy @ Oct 28 2014, 17:19) *
Значения будут размазываться.

усредняя значение с выхода фильтра

Go to the top of the page
 
+Quote Post
misyachniy
сообщение Oct 29 2014, 17:54
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454



Цитата(SM @ Oct 29 2014, 08:26) *
А что вообще подразумевается под фазой и амплитудой для этого (явно негармонического) сигнала?


На верхнем графике сигналы после синхронного детектора. на них видно как меняется амплитуда и фаза отклика от детектируемого объекта.

Я хочу исключить синхронный детектор и обрабатывать "сырой" сигнал который заходит на синхронный детектор.
Go to the top of the page
 
+Quote Post
SM
сообщение Oct 29 2014, 18:09
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(misyachniy @ Oct 29 2014, 20:54) *
На верхнем графике сигналы после синхронного детектора.


А до синхронного детектора что? Синусоидальный сигнал? Если да, Вы можете засинхронизировать частоту дискретизации с частотой сигнала?

Насчет кол-ва выборок, обрабатываемых за 1 раз - чем больше, тем лучше - тем выше сигнал/шум. Насчет "отсчета №1" - это мне не понятно, о чем вообще. По сути, у Вас коррелятор с exp(jwt), где w равна частоте входного сигнала. Отсчетов у него нет - накопили результат за какое-то время, и нашли его аргумент и модуль - фазу и амплитуду. И все. А как считать эту корреляцию - алгоритмом Герцеля, или прямо в лоб, это вопрос уже тридесятый, результат то один.
Go to the top of the page
 
+Quote Post
misyachniy
сообщение Oct 29 2014, 18:12
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454



Цитата(SM @ Oct 29 2014, 20:09) *
А до синхронного детектора что? Синусоидальный сигнал? Если да, Вы можете засинхронизировать частоту дискретизации с частотой сигнала?


Засинхронизировать можно. но будет присутсвовать флуктуация фона как по амплитуде так и по фазе.
Go to the top of the page
 
+Quote Post
SM
сообщение Oct 29 2014, 18:21
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(misyachniy @ Oct 29 2014, 21:12) *
Засинхронизировать можно. но будет присутсвовать флуктуация фона как по амплитуде так и по фазе.

Это не страшно, чем больше время наблюдение (и накопления в фильтре), тем меньше влияние этих флуктуаций - они, ведь, по сути, шум. Но все это на грани телепатии. Вы, все таки, вопрос то понятно задайте.
Go to the top of the page
 
+Quote Post
Guest_TSerg_*
сообщение Oct 30 2014, 06:21
Сообщение #11





Guests






Цитата(Fat Robot @ Oct 29 2014, 12:14) *
Я понял почти все слова по-отдельности, но совсем не понял ваших вопросов.

Аналогично.

Если сигнал является затухающей гармоникой, то, вероятно лучше, делать оценку сдвига фазы от опорной синусоиды по двум первым минимаксам амплитуды.
Go to the top of the page
 
+Quote Post
misyachniy
сообщение Nov 2 2014, 08:32
Сообщение #12


Знающий
****

Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454



Попробую совсем просто.
Есть сигнал с одной конкретной частотой например 10 кгц.
Сигнал имеет дительность от 10 до 300 мс.
Амплитуда и фазовый сдвиг в начале нарастает а затем спадает.
Нужно найти максимум сдвига фазы с точностью в 5 градусов.
Go to the top of the page
 
+Quote Post
Fat Robot
сообщение Nov 2 2014, 11:37
Сообщение #13


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



Подаете сигнал на квадратурный преобразователь. В качестве опоры - ваша известная частота в 10 кГц. Если вы можете управлять частотой отсчетов, то для упрощения работы смесителей см. мой предыдущий пост в этой ветке.

Фильтры после смесителей подбираете исходя из компромиса: точность измерений (шум на выходе), частота выдачи некоррелированных измерений, временной интервал, на котором амплитуду и фазу можно считать постоянной.

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

Ничего нового.

Цитата(misyachniy @ Nov 2 2014, 09:32) *
Амплитуда и фазовый сдвиг в начале нарастает а затем спадает.
Go to the top of the page
 
+Quote Post
misyachniy
сообщение Nov 4 2014, 16:03
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454



Понятно.
Толку от темы никакой. Можно модератору удалить полностью.
Go to the top of the page
 
+Quote Post
Kluwert
сообщение Nov 5 2014, 08:42
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 239
Регистрация: 15-11-09
Из: Санкт-Петербург
Пользователь №: 53 639



Цитата(misyachniy @ Nov 4 2014, 19:03) *
Понятно.
Толку от темы никакой. Можно модератору удалить полностью.

Не надо горячиться. Товарищи сверху правильно написали: в вашем случае, вам и только ВАМ самим нужно чётко понять, что вы понимаете под фазой и амплитудой вашего апериодического сигнала. Например, как я вижу по вашей картинке, по вашему "псевдогароническому" импульсу можно получить спектр на выбранном вами интервале, естественно соблюдая теорему Котельникова. И считать, что фаза и амплитуда имплуьса есть амплитуда и фаза первой гармоники в спектре, которая превышает заданный уровень. В вашем случае это будет физически осмысленно: у вас в спектре будет одна здоровая НЧ-гармоника и кучка более высокочастотных и фаза этой здоровой гармоники будет показывать с какого момента начался ваш импульс (поскольку при малых по сравнению с длительностью вашего импульса t он будет почти совпадать с этой гармоникой).

P.S. Кстати, я не прав: теорему Котельникова в вашем случае можно и не соблюдать, т.к. вас интересует только НЧ-часть спектра. А вот пр.Гёрцеля вам не поможет: вы, я так понял, заранее не знаете "период" вашего сигнала, а занчит не знаете где расположена максимальная гармоника. А ПГ, если мне не изменяет память (а искать лень) при более чем двух отсчётах спектра уже проигрывает по производительности БПФ.

Сообщение отредактировал Kluwert - Nov 5 2014, 08:48
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 21:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01473 секунд с 7
ELECTRONIX ©2004-2016