Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Демодулирование ФМ сигналов с малым сдвигом фаз
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
Kaov
Исходные данные: Имею оцифрованный при помощи звуковой карты(частота дискретизации 48000Гц, 16 бит, 1 канал) сигнал с частотой 2.4 кГц,с фазовой модуляцией. Индекс модуляции 0.27 радиана.
Задача: Демодулировать этот сигнал.
Подскажите алгоритм!
blackfin
Цитата(Kaov @ Mar 28 2007, 21:26) *
Исходные данные: Имею оцифрованный при помощи звуковой карты(частота дискретизации 48000Гц, 16 бит, 1 канал) сигнал с частотой 2.4 кГц,с фазовой модуляцией. Индекс модуляции 0.27 радиана.
Задача: Демодулировать этот сигнал.
Подскажите алгоритм!
Вам нужно найти два коэффициента "a" и "b" в разложении в ряд Фурье
при sin(2*pi*2400*t) и cos(2*pi*2400*t) на отрезке Т=N/2400 Гц, где N-большое целое,
а затем вычислить артангенс: ф=arctg(a/b).
Изменение этого угла будет пропорционально сигналу модуляции.
SM
наиболее простой вариант - домножить сигнал на exp(jwn) где w = 2*pi*2400/48000, затем пропустить через линейно-фазовый ФНЧ с полосой пропускания равной полосе сигнала, а затем найти аргумент получившегося сигнала. Он и будет демодулированным сигналом. Однако только если Вы точно уверены, что экспонента крутится аккурат с той же частотой, что и в передатчике. Иначе... Еще придется заниматься ловлей и восстановлением несущей, что не очень сложно, но и не просто, и является задачей отдельной.
Stanislav
Цитата(Kaov @ Mar 28 2007, 21:26) *
Исходные данные: Имею оцифрованный при помощи звуковой карты(частота дискретизации 48000Гц, 16 бит, 1 канал) сигнал с частотой 2.4 кГц,с фазовой модуляцией. Индекс модуляции 0.27 радиана.
Задача: Демодулировать этот сигнал.
Подскажите алгоритм!
Вы бы описали сигнал подробнее. Универсальных алгоритмов демодуляции не существует.

Цитата(SM @ Mar 29 2007, 01:20) *
наиболее простой вариант - домножить сигнал на exp(jwn) где w = 2*pi*2400/48000, затем пропустить через линейно-фазовый ФНЧ с полосой пропускания равной полосе сигнала, а затем найти аргумент получившегося сигнала. Он и будет демодулированным сигналом. Однако только если Вы точно уверены, что экспонента крутится аккурат с той же частотой, что и в передатчике...
Такой способ называется несинхронным приёмом. Весьма хорош для демодуляции сигналов, не содержащих в спектре НЧ составляющих. Только Вы забыли упомянуть про ФВЧ после перемножения (на самом деле, там нужен не ФНЧ, а ПФ), иначе получится задница - из-за разбежки генераторов разрывы фаз всякие...
Цитата(SM @ Mar 29 2007, 01:20) *
Иначе... Еще придется заниматься ловлей и восстановлением несущей, что не очень сложно, но и не просто, и является задачей отдельной.
В принципе, не сложно. Зато в ряде случаев можно обойтись только вещественным представлением сигнала (индекс модуляции не слишком велик).

ЗЫ. Если модулированный сигнал содержит несущую в спектре, а закон его модуляции (модулирующий сигнал) не содержит постоянной составляющей и инфранизких частот, есть классный "радиотехнический" способ демодуляции. Сигнал запускается в полосовой узкополосный БИХ-фильтр 2-го порядка, настроенный на частоту несущей. Далее, выход этого фильтра перемножается на сам сигнал. Потом - ФНЧ. Это всё.
Если автору темы интересно - могу пояснить подробнее.
SM
Stanislav, я имел в виду когерентный прием с квадратурной обработкой, который отлично применяется для демодуляции сигналов с НЧ составляющими, и ничего другого я в виду не имел. Первое и обязательное в этом случае - это абсолютная синхронность несущей (exp(jw)) в приемнике и передатчике. Никакого ФВЧ не надо, как и ПФ, более того, они вредны, противопоказаны и приведут к полной неработоспособности этого метода, как и несинхронность/разбег несущих. Нужен именно ФНЧ (принимающий на вход комплексный сигнал), который оставит нулевую частоту (постоянку) и симметричную вокруг нуля полосу от минус-сколько-надо до плюс-сколько-надо, в которой и окажется полезный сигнал после точного перенесения его с несущей на нулевую частоту. Который, кстати о птичках, называется комплексной огибающей.

ЗЫ А разбег несущих в этом методе приведет отнюдь не к разрывам, а к гармоническим колебаниям (линейно изменяющейся составляющей выходного сигнала)
Stanislav
Цитата(SM @ Mar 29 2007, 04:17) *
Stanislav, я имел в виду когерентный прием с квадратурной обработкой, который отлично применяется для демодуляции сигналов с НЧ составляющими, и ничего другого я в виду не имел. Первое и обязательное в этом случае - это абсолютная синхронность несущей (exp(jw)) в приемнике и передатчике. Никакого ФВЧ не надо, как и ПФ, более того, они вредны, противопоказаны и приведут к полной неработоспособности этого метода, как и несинхронность/разбег несущих. Нужен именно ФНЧ (принимающий на вход комплексный сигнал), который оставит нулевую частоту (постоянку) и симметричную вокруг нуля полосу от минус-сколько-надо до плюс-сколько-надо, в которой и окажется полезный сигнал после точного перенесения его с несущей на нулевую частоту.
Если приём когерентный, то ФНЧ подойдёт, конечно. Однако, мы тогда должны питать тракт приёма и передачи от одного и того же генератора, или синхронизировать генераторы передачи-приёма. Из условий (очень расплывчатых, конечно) я сделал предположение, что они всё-таки не синхронизированы. Кстати, ПФ вовсе не испортит, например, речевой или музыкальный модулирующий сигнал. Главное - чтобы в нём не было НЧ составляющих заметной мощности.
Прошу прощения, но Вы не совсем правильно поняли написанное мной. Дело в том, что для большого класса сигналов возможен приём с несинхронизированным генератором, и этот способ будет близок к оптимальному, но гораздо проще его тем, что не содержит системы синхронизации. Важно только, чтобы разбежка частот была небольшой (по крайней мере, меньше минимальной частоты спектра сигнала с более-менее заметной мощностью). После перемножителя достаточно тогда поставить ПФ - и вуаля: при нахождении фазы не будет разрывов.

Цитата(SM @ Mar 29 2007, 04:17) *
...Который, кстати о птичках, называется комплексной огибающей...
smile.gif
SM
Цитата(Stanislav @ Mar 29 2007, 04:38) *
После перемножителя достаточно тогда поставить ПФ - и вуаля.


В этом случае даже и перемножитель не нужен, как и ПФ smile.gif А просто преобразователь Гильберта. Если предположить, что в спектре сигнала ничего лишнего, кроме интересущего ФМ-модулированного сигнала нету, то получаем аналитический сигнал через ПГ, вычитаем из его аргумента 2*pi*n*Fc/Fs - и то же вуаля smile.gif Но, если промахнулись с Fc, получаем ту-же линейную составляющую... Которую можно при желании и отфильтровать, а можно и оценить, если есть критерий оценки, и вычесть уже результат оценки, что будет соответствовать перемножению с идельно "захваченной" несущей.

ЗЫ только не надо комментариев на тему как называется тот или иной способ, предложенный не Вами. Зачастую оказывается, что предлагалось совсем не то smile.gif
Stanislav
Цитата(SM @ Mar 29 2007, 04:53) *
ЗЫ только не надо комментариев на тему как называется тот или иной способ, предложенный не Вами. Зачастую оказывается, что предлагалось совсем не то smile.gif
Дык, называйте его тогда как-нибудь общепринято. Из Вашего определения, например, данного в посте #3, вовсе не следует, что Вы говорите о синхронном приёмнике. О синхронности фаз генераторов Вы не упомянули.
SM
Цитата(Stanislav @ Mar 29 2007, 09:32) *
О синхронности фаз генераторов Вы не упомянули.


А "экспонента крутится аккурат с той же частотой, что и в передатчике" - это не синхронность? При этом условии фазы генераторов (экспонент) будут синхронны с каким-то постоянным сдвигом.
Stanislav
Цитата(SM @ Mar 29 2007, 19:20) *
А "экспонента крутится аккурат с той же частотой, что и в передатчике" - это не синхронность? При этом условии фазы генераторов (экспонент) будут синхронны с каким-то постоянным сдвигом.
Верно, но... нереально. Точнее, реально, если с помощью звуковой карточки принимать сигнал, ей же и порождённый. smile.gif
В условии поставлена реальная задача. Я хочу сказать что в ряде случаев можно вполне успешно принимать сигнал в квадратурах и без частотной и фазовой синхронизации генераторов. Вы же, как мне кажется, в этом вопросе ошиблись.

А "радиотехнический" способ, предложенный мной, при отношении С/Ш на входе >~20 дБ (грубая оценка) будет практически очень мало уступать оптимальному приёмнику по отношению С/Ш на выходе. Огромное достоинство - простота вычислений: нужны только умножители и сумматоры, в то время, как для многих других методов потребуется деление и вычисление тригонометрических функций.

Цитата(SM @ Mar 29 2007, 04:17) *
ЗЫ А разбег несущих в этом методе приведет отнюдь не к разрывам, а к гармоническим колебаниям (линейно изменяющейся составляющей выходного сигнала).
Простите, почему? Поясните, пожалуйста.
По-моему, Арктангенс - функция, имеющая областью значений отрезок [-pi; pi], поэтому, при нахождении аргумента, разрывы будут. При искусственном же "сращивании" кусочно-непрерывной функции выход демодулятора, предложенного Вами, уползёт в бесконечность.
Для устранения этого эффекта ПФ и нужны. Причём сразу после перемножителей.
Kaov
Сигнал из радиолинии, соответственно с шумами. Присутствуют еще фазовые шумы за щет нестабильности гетеродина? Может использовать кореляционную обработку? У кого какие мысли? Подскажите!
SM
Цитата(Stanislav @ Mar 29 2007, 23:05) *
По-моему, Арктангенс - функция, имеющая областью значений отрезок [-pi; pi], поэтому, при нахождении аргумента, разрывы будут. При искусственном же "сращивании" кусочно-непрерывной функции выход демодулятора, предложенного Вами, уползёт в бесконечность.


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

Цитата(Kaov @ Mar 30 2007, 09:04) *
Может использовать кореляционную обработку? У кого какие мысли? Подскажите!


Кстати, а у вас фазовая модуляция, или манипуляция? Если модуляция, то никуда Вы эти фазовые шумы не денете. Если манипуляция - то там будет принятие решения о принятом символе, там другое дело.
Stanislav
2 SM
О нахождении фазы после перемножения в квадратурах и полосовой фильтрации я написал не совсем правильно (наверное, в отпуск пора sad.gif ). Конечно, для целого ряда сигналов при наличии ПФ это будет сделать невозможно. Например, если уровень модулирующего сигнала будет на продолжительное время падать до нуля, что бывает, например, при приёме трансляционных программ. Для приёма сигналов с не падающей до нуля мощностью мод. сигнала такой способ всё же сгодится.
После ПФ нужно находить не аргумент, а модуль комплексного сигнала - ведь у нас, по сути, получится комплексная огибающая БМ колебания (терминология не совсем точна, но суть понятна). При небольшом индексе модуляции форма исходного модулирующего сигнала будет искажаться слабо.
Само собой, для синхронного приёма, предложенного Вами, ПФ в общем случае не нужен. Достаточно ФНЧ.

Цитата(Kaov @ Mar 30 2007, 09:04) *
Сигнал из радиолинии, соответственно с шумами. Присутствуют еще фазовые шумы за щет нестабильности гетеродина? Может использовать кореляционную обработку? У кого какие мысли? Подскажите!
Повторю вопрос: какой именно сигнал Вы демодулируете? Его нужно описать по возможности более точно.

Цитата(SM @ Mar 30 2007, 09:47) *
...либо вычислить скорость уползания фазовой ф-ции и вычесть из нее эту корректирующую ф-цию.
Это, пожалуй, не слишком хороший способ. Диапазон представления чисел в вычислителях не бесконечен...
Kaov
У меня фазоманипулированый сигнал.
el34
попробуйте посмотреть алгоритм Герцеля (goertzel)
Stanislav
Цитата(Kaov @ Mar 31 2007, 08:43) *
У меня фазоманипулированый сигнал.
Фаза просто коммутируется? Или меняется по более сложному закону?
Смысл корреляционного приёма заключается в выборе ФНЧ (или ПФ) после перемножителей. Если перевёрнутая зеркально форма импульсной характеристики фильтра соответствует форме огибающей сигнала, такой приём можно назвать корреляционным или оптимальным. Для фазовой коммутации достаточно, например, усреднять выборки по символьному периоду - это тоже фильтрация, и такой фильтр называется "скользящего среднего".
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.