Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Приём многочастотного ФМ сигнала.
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
JohnKorsh
Не поможет ли кто разобраться с приёмом многочастотного сигнала с двоичной фазовой модуляцией компонент?

Написал модель на C – синтез многочастотного сигнала с помощью обратного FFT и его демодуляция с помощью прямого FFT.
Результат – на рисунке 1. На модели всё отлично. (Для имитации случайного фазового набега при приёме задерживаю целиком всю синтезированную посылку на случайное число).
При реализации на практике получаю сигнал, показанный на рисунке 2. Я понял, что неправильно ввёл набег фазы в модель. Реально механизм явно другой. Cos и Sin составляющие меняются от реализации к реализации. Видимо, нужен пилот-сигнал. Для этого ввёл 17 частоту, но не знаю, как грамотно использовать.
Не подскажет ли кто, что почитать и как грамотно модель прописать, чтобы соответствовала реальности?
{Рисунки во вложении}
JohnKorsh
Приношу извинения. Модель была написана с ошибкой. Теперь модель работает точно так же плохо как и реальный сигнал. Думаю, при приёме сдвигать окно на отсчёт до достижения верного приёма, критерием синхронизации в моём случае целесообразно выбрать Sin компонент равен 0 (около 0 из-за шумов) по всем частотам и 17 пилот-частота равна максимуму. Проверяю.
stealth-coder
Цитата:
Для имитации случайного фазового набега при приёме задерживаю целиком всю синтезированную посылку на случайное число

Для имитации фазовой расстройки нужно сгенерировать вектор со случайной фазой и умножить его на все отсчеты посылки, если нужно имитировать еще и частотную расстройку, то этот вектор должен вращаться, скорость вращения определяется имитируемой частотной расстройкой.

Насколько я понял, вы сымитировали расстройку кадровой синхронизации: на передающей стороне кадр начинается, например, с 5-го отсчета, а на приемной - с 10-го. Такая ситуация приводит к появлению "частотной расстройки" после БПФ - первая поднесущая сдвинута по фазе на угол альфа, 2-ая - альфа + бета, 3-ья - альфа + 2 * бета, ... . Эта проблема решается путем введения в сигнал нескольких пилотов: зная позиции пилотов и фазы на передающей и приемной сторонах, вычисляются альфа и бета и компенсируются.

Заполнять нулями оставшуюся часть окна при временном сдвиге некорректно - в реальности идет сплошной поток отсчетов, в котором ищется кадровая синхронизация, ошибка кадровой синхронизации компенсируется по пилотам, крайние поднесущие используются как защитные интервалы.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.