Демодуляция для моделирования связи
Генерируют синусоиду 150 Гц, отбираемую при 8 кГц в течение 1 секунды. Встроить модулированный сигнал в белый гауссов шум с дисперсией 0,1 ².
fs = 8e3; t = 0:1/fs:1-1/fs; s = cos(2*pi*150*t) + randn(size(t))/10;
Частота модулирует сигнал на несущей частоте 3 кГц с использованием постоянной модуляции 0,1.
fc = 3e3;
rx = modulate(s,fc,fs,'fm',0.1);Частотная демодуляция сигнала с использованием одной и той же несущей частоты и постоянной модуляции. Вычисляют и строят оценки спектра мощности для переданных, принятых и демодулированных сигналов.
y = demod(rx,fc,fs,'fm',0.1); pspectrum([s;rx;y]',fs,'Leakage',0.85) legend('Transmitted signal','Received signal','Demodulated signal','Location','best')

y - Модулированный сигналМодулированный сигнал сообщения, заданный как реальный вектор или матрица. За исключением методов pwm и ppm, y имеет тот же размер, что и x.
fc - Несущая частотаНесущая частота, используемая для модуляции сигнала сообщения, заданная как действительный положительный скаляр.
fs - Частота выборкиЧастота выборки, заданная как действительный положительный скаляр.
method - Используемый метод модуляции'am' (по умолчанию) | 'amdsb-tc' | 'amssb' | 'fm' | 'pm' | 'pwm' | 'ppm' | 'qam'Используемый способ модуляции, указанный как один из:
am или amdsb-sc - Амплитудная демодуляция, двойная боковая полоса, подавленная несущая. Умножается y синусоидой частоты fc и применяет фильтр нижних частот Butterworth пятого порядка с использованием filtfilt.
x = y.*cos(2*pi*fc*t); [b,a] = butter(5,fc*2/fs); x = filtfilt(b,a,x);
amdsb-tc - Амплитудная демодуляция, двойная боковая полоса, передаваемая несущая. Умножается y синусоидой частоты fc и применяет фильтр нижних частот Butterworth пятого порядка с использованием filtfilt.
x = y.*cos(2*pi*fc*t); [b,a] = butter(5,fc*2/fs); x = filtfilt(b,a,x);
При указании opt, demod вычитает скаляр opt от x. Значение по умолчанию для opt равно 0.
amssb - Амплитудная демодуляция, одна боковая полоса. Умножается y синусоидой частоты fc и применяет фильтр нижних частот Butterworth пятого порядка с использованием 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 - Фазовая демодуляция. Демодулирует форму сигнала PM путем модуляции преобразования Гильберта y по комплексной экспоненте частоты -fc Гц и получает мгновенную фазу результата.
y=cos(2*pi*fc*t + opt*x)
modulate использование opt как константа фазовой модуляции. Если не указать opt параметр, modulate использует значение по умолчанию opt = pi/(max(max(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 и применяет фильтр нижних частот Butterworth пятого порядка с использованием 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);
Входной аргумент opt должен быть того же размера, что и y.
opt - Необязательный ввод для некоторых методовНеобязательный ввод, заданный для некоторых методов. См. method для получения дополнительной информации об использовании opt.
x - Сигнал демодулированного сообщенияДемодулированный сигнал сообщения, возвращаемый в виде реального вектора или матрицы.
modulate | vco | fskdemod (Панель инструментов связи) | genqamdemod (Коммуникационный инструментарий) | mskdemod (Коммуникационный инструментарий) | pamdemod (Коммуникационный инструментарий) | pmdemod (Коммуникационный инструментарий) | qamdemod(Панель средств связи)
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.