demod
Демодуляция для моделирования систем связи.
| Библиотека |
|
Аргументы
Входные аргументы
#
fc —
несущая частота
скаляр
Details
Несущая частота, используемая для модуляции полезного сигнала, заданная как вещественный положительный скаляр.
#
fs —
частота дискретизации
скаляр
Details
Частота дискретизации, указанная как вещественный положительный скаляр.
#
method —
метод модуляции
"am" (по умолчанию) | "amdsb-sc" | "amdsb-tc" | "amssb" | "fm" | "pm" | "pwm" | "pmm" | "qam"
Details
Используемый метод модуляции, возможные значения:
-
"am"или"amdsb-sc"— амплитудная демодуляция, две боковые полосы, подавленная несущая. Умножаетyна синусоиду с частотойfcи применяет фильтр нижних частот Баттерворта пятого порядка с использованием функцииfiltfilt.x = y.*cos(2*pi*fc*t); [b,a] = butter(5,fc*2/fs); x = filtfilt(b,a,x);
-
"amdsb-tc"— амплитудная демодуляция, две боковые полосы, передаваемая несущая. Умножаетyна синусоиду с частотойfcи применяет фильтр нижних частот Баттерворта пятого порядка с использованием функцииfiltfilt.x = y.*cos(2*pi*fc*t); [b,a] = butter(5,fc*2/fs); x = filtfilt(b,a,x);
-
"amssb"— амплитудная демодуляция. Умножаетyна синусоиду с частотойfcи применяет фильтр нижних частот Баттерворта пятого порядка с использованием функцииfiltfilt.x = y.*cos(2*pi*fc*t); [b,a] = butter(5,fc*2/fs); x = filtfilt(b,a,x);
-
"fm"— частотная демодуляция. Демодулирует форму частотно-модулированного (ЧМ) сигнала путем модуляции преобразования Гильбертаyс помощью комплексной экспоненциальной частоты-fcГц и получает в результате мгновенную частоту.y=cos(2*pi*fc*t + opt*cumsum(x))
Функция
cumsumявляется прямоугольной аппроксимацией интеграла отx. Функцияmodulateиспользуетoptкак константу частотной модуляции. Если вы не укажете значениеopt, тоmodulateиспользует значение по умолчаниюopt=(fc/fs)*2*pi/(max(max(x))), поэтому максимальное отклонение частоты отfcбудетfcГц. -
"pm"— фазовая демодуляция. Демодулирует форму фазово-модулированного (ФМ) сигнала путем модуляции преобразования Гильбертаyс помощью комплексной экспоненциальной частоты-fcГц и получает в результате мгновенную фазу.y=cos(2*pi*fc*t + opt*x)
-
"pwm"— широтно-импульсная демодуляция. Определяет ширину импульса сигнала с широтно-импульсной модуляциейy. Функцияdemodвозвращает вxвектор, элементы которого определяют длительность каждого импульса в долях периода. Импульсы вyдолжны начинаться с начала каждого периода несущей, то есть они должны быть выровнены по левому краю. При вызове функцииmodulate(x,fc,fs,"pwm","centered")получаются импульсы, центрированные в начале каждого периода. Длинаyравнаlength(x)*fs/fc. -
"ppm"— позиционно-импульсная демодуляция. Определяет положения импульсов в сигнале с позиционно-импульсной модуляциейy. Для правильной демодуляции импульсы не должны перекрываться. Длинаxравнаlength(t)*fc/fs. -
"qam"— квадратурная амплитудная демодуляция. Функция[x1,x2] = demod(y,fc,fs,"qam")умножаетyна косинус и синус с частотойfcи применяет фильтр нижних частот Баттерворта пятого порядка, используяfiltfilt.x1 = y.*cos(2*pi*fc*t); x2 = y.*sin(2*pi*fc*t); [b,a] = butter(5,fc*2/fs); x1 = filtfilt(b,a,x1); x2 = filtfilt(b,a,x2);
Выходные аргументы
#
x —
демодулированный полезный сигнал
вектор | матрица
Details
Демодулированный полезный сигнал, возвращаемый в виде вещественного вектора или матрицы.