exponenta event banner

коммуникация. FSKDemodulator

Демодуляция методом M-ary FSK

Описание

FSKDemodulator объект демодулирует сигнал, который был модулирован с использованием способа М-арной частотной манипуляции. Вход является представлением модулированного сигнала в основной полосе частот. Вход и выход для этого объекта являются дискретно-временными сигналами.

Для демодуляции сигнала, модулированного с помощью частотной манипуляции:

  1. Определите и настройте объект демодулятора FSK. См. раздел Строительство.

  2. Звонить step демодулировать сигнал в соответствии со свойствами FSKDemodulator. Поведение step относится к каждому объекту на панели инструментов.

Примечание

Начиная с R2016b, вместо использования step для выполнения операции, определенной системным object™, можно вызвать объект с аргументами, как если бы это была функция. Например, y = step(obj,x) и y = obj(x) выполнять эквивалентные операции.

Строительство

H = comm.FSKDemodulator создает объект системы демодулятора, H. Этот объект демодулирует сигнал M-арной частотной манипуляции (M-FSK) с использованием детектора некогерентной энергии.

H = comm.FSKDemodulator(Name,Value) создает объект демодулятора M-FSK, H, каждое указанное свойство имеет заданное значение. Можно указать дополнительные аргументы пары имя-значение в любом порядке как (Name1,Value1,...,NameN,ValueN).

H = comm.FSKDemodulator(M,FREQSEP,RS,Name,Value) создает объект демодулятора M-FSK, H. Этот объект имеет ModulationOrder свойство имеет значение M, FrequencySeparation свойство имеет значение FREQSEP, SymbolRate свойство имеет значение RSи другие указанные свойства имеют указанные значения.

Свойства

ModulationOrder

Количество частот в модулированном сигнале

Укажите число частот в модулированном сигнале как числовое, положительное, целое скалярное значение, которое является степенью два. Значение по умолчанию: 8.

BitOutput

Выходные данные в виде битов

Укажите, являются ли выходные данные группами битов или целыми значениями. Значение по умолчанию: false.

При установке для этого свойства значения false, step метод выводит вектор столбца длиной, равной N/SamplesPerSymbol. N - длина вектора входных данных для пошагового метода. Элементы выходного вектора являются целыми числами между 0 и ModulationOrder–1. При установке для этого свойства значения true, step метод выводит вектор столбца длиной, равной log2 (ModulationOrder) × (N/SamplesPerSymbol). Элементы свойства являются битовыми представлениями целых чисел между 0 и ModulationOrder–1.

SymbolMapping

Кодировка символов

Укажите, как объект сопоставляет целое число или группу log2 (ModulationOrder) бит к соответствующему символу в качестве одного из Binary | Gray. Значение по умолчанию: Gray.

При установке для этого свойства значения Grayобъект использует упорядочение с серым кодированием.

При установке для этого свойства значения Binaryобъект использует естественное двоично-кодированное упорядочение.

Для любого типа отображения объект сопоставляет наименьшую частоту целому числу 0 и самую высокую частоту целому M-1. При моделировании полосы частот наименьшей частотой является отрицательная частота с наибольшим абсолютным значением.

FrequencySeparation

Частотное разделение между последовательными тональными сигналами

Задайте частотное разделение между последовательными символами в модулированном сигнале в Герце как положительное, действительное скалярное значение. Значение по умолчанию: 6 Гц.

SamplesPerSymbol

Количество выборок на входной символ

Укажите число выборок на входной символ как положительное целое скалярное значение. Значение по умолчанию: 17.

SymbolRate

Длительность символа

Укажите скорость передачи символов в символах в секунду как положительное, с двойной точностью, действительное скалярное значение. Значение по умолчанию: 100. Чтобы избежать наложения выходных сигналов, укажите выходную частоту дискретизации, Fs = SamplesPerSymbol×SymbolRate, что больше, чем ModulationOrder × FrequencySeparation. Длительность символа остается неизменной, независимо от того, является ли вход битами или целыми числами.

OutputDataType

Тип данных вывода

Укажите тип выходных данных как один из logical | int8 | uint8 | int16 | uint16 | int32 | uint32 | double. Значение по умолчанию: double. logical действителен только при установке BitOutput для свойства false и ModulationOrder свойство to two. При установке BitOutput true, для выходных данных требуется тип logical | double.

Методы

шагДемодуляция методом M-ary FSK
Общие для всех системных объектов
release

Разрешить изменение значения свойства объекта системы

reset

Сброс внутренних состояний объекта System

Примеры

свернуть все

Модулировать и демодулировать сигнал с помощью 8-FSK модуляции с частотным разделением 100 Гц.

Установите порядок модуляции и параметры частотного разделения.

M = 8;
freqSep = 100;

Создать FSK модулятор и демодулятор Система objects™ с порядком модуляции 8 и 100 Гц частотного разделения.

fskMod = comm.FSKModulator(M,freqSep);
fskDemod = comm.FSKDemodulator(M,freqSep);

Создайте аддитивный канал белого гауссова шума, где шум задается как отношение сигнал/шум.

ch = comm.AWGNChannel('NoiseMethod', ...
    'Signal to noise ratio (SNR)','SNR',-2);

Создание объекта калькулятора частоты ошибок.

err = comm.ErrorRate;

Передача ста 50-символьных кадров с использованием 8-FSK в канале AWGN.

for counter = 1:100
    data = randi([0 M-1],50,1);
    modSignal = step(fskMod,data);
    noisySignal = step(ch,modSignal);
    receivedData = step(fskDemod,noisySignal);
    errorStats = step(err,data,receivedData);
end

Просмотрите статистику ошибок.

es = 'Error rate = %4.2e\nNumber of errors = %d\nNumber of symbols = %d\n';
fprintf(es,errorStats)
Error rate = 1.40e-02
Number of errors = 70
Number of symbols = 5000

Алгоритмы

Этот объект реализует алгоритм, входы и выходы, описанные на справочной странице блока базовой полосы демодулятора M-FSK. Свойства объекта соответствуют параметрам блока, за исключением:

  • Параметр упорядочения набора символов соответствует SymbolMapping собственность.

  • SymbolRate свойство заменяет возможность частоты дискретизации блока.

Расширенные возможности

.
Представлен в R2012a