comm.CPFSKModulator

Модулируйте с использованием CPFSK метода

Описание

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

Модулировать сигнал с помощью непрерывного метода манипулирования сдвига частоты фазы:

  1. Задайте и настройте свой объект модулятора CPFSK. Смотрите Конструкцию.

  2. Вызовите step модулировать сигнал согласно свойствам comm.CPFSKModulator. Поведение step характерно для каждого объекта в тулбоксе.

Примечание

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

Конструкция

H = comm.CPFSKModulator создает Системный объект модулятора, H. Этот объект модулирует входной сигнал с помощью метода модуляции непрерывного манипулирования сдвига частоты фазы (CPFSK).

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

H = comm.CPFSKModulator(M,Name,Value) создает объект модулятора CPFSK, H. Этот объект имеет ModulationOrder набор свойств к M, и другой заданный набор свойств к заданным значениям.

Свойства

ModulationOrder

Размер алфавита символа

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

BitInput

Примите битные входные параметры

Задайте, является ли вход битами или целыми числами. Значением по умолчанию является false. Когда вы устанавливаете это свойство на false, step вход метода должен быть двойная точность или вектор-столбец типа данных целого числа со знаком. Этот вектор включает нечетные целочисленные значения между – (ModulationOrder– 1) и ModulationOrder–1.

Когда вы устанавливаете это свойство на true, step вход метода должен быть вектор-столбцом P - слова бита длины, где P = log2 (ModulationOrder). Входные данные должны быть двойная точность или логический тип данных. Объект сопоставляет каждое битное слово с целочисленным K между 0 и ModulationOrder– 1, с помощью отображения задан в SymbolMapping свойство. Объект затем сопоставляет целочисленный K с промежуточным значением 2K– (ModulationOrder– 1) и доходы как в случае, когда вы устанавливаете BitInput свойство к false.

SymbolMapping

Кодирование символа

Задайте отображение битных входных параметров как один из Binary | Gray. Значением по умолчанию является Binary. Это свойство определяет, как объект сопоставляет каждый вход P - слово бита длины, где P = log2 (ModulationOrder), до целого числа между 0 и ModulationOrder–1.

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

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

Это свойство применяется, когда вы устанавливаете BitInput свойство к истине.

ModulationIndex

Индекс модуляции

Задайте индекс модуляции. Значением по умолчанию является 0.5. Значение этого свойства может быть скаляром, h или вектор-столбцом, [h0, h1, …. h H-1]

где H-1 представляет длину вектор-столбца. Сдвиг фазы по символу является π × h.

Когда h i варьируется от интервала до интервала, объект действует в multi-h. Когда объект действует в multi-h, h, i должна быть рациональным числом.

InitialPhaseOffset

Начальная фаза возмещена

Задайте начальную фазу модулируемой формы волны в радианах в виде действительного, числа. Значением по умолчанию является 0.

SamplesPerSymbol

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

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

OutputDataType

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

Задайте тип выходных данных как один из double | single. Значением по умолчанию является double.

Методы

шагМодулируйте с использованием CPFSK метода
Характерный для всех системных объектов
release

Позвольте изменения значения свойства Системного объекта

reset

Сбросьте внутренние состояния Системного объекта

Примеры

свернуть все

% Create a CPFSK modulator, an AWGN channel, and a CPFSK demodulator
    hMod = comm.CPFSKModulator(8, 'BitInput', true, ...
                         'SymbolMapping', 'Gray');
    hAWGN = comm.AWGNChannel('NoiseMethod', ...
                         'Signal to noise ratio (SNR)','SNR',0);
    hDemod = comm.CPFSKDemodulator(8, 'BitOutput', true, ...
                         'SymbolMapping', 'Gray');

 % Create an error rate calculator, account for the delay caused by the Viterbi algorithm.
    delay = log2(hDemod.ModulationOrder)*hDemod.TracebackDepth;
    hError = comm.ErrorRate('ReceiveDelay', delay);
    for counter = 1:100
        % Transmit 100 3-bit words
        data = randi([0 1],300,1);
        modSignal = step(hMod, data);
        noisySignal = step(hAWGN, modSignal);
        receivedData = step(hDemod, noisySignal);
        errorStats = step(hError, data, receivedData);
    end

    fprintf('Error rate = %f\nNumber of errors = %d\n', ...
      errorStats(1), errorStats(2))
Error rate = 0.004006
Number of errors = 120

Алгоритмы

Этот объект реализует алгоритм, входные параметры и выходные параметры, описанные на странице с описанием блока CPFSK Modulator Baseband. Свойства объектов соответствуют параметрам блоков. Для CPFSK сдвиг фазы на символ является π × h, где h является индексом модуляции.

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

Представленный в R2012a