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

(Чтобы быть удаленным), Модулируют использующее прямоугольное сигнальное созвездие QAM

comm.RectangularQAMModulator будет удален в будущем релизе. Используйте qammod вместо этого.

Описание

Объект RectangularQAMModulator модулирует использующую M-арную квадратурную амплитудную модуляцию с совокупностью на прямоугольной решетке. Вывод представляет собой репрезентацию модулированного сигнала. Этот блок принимает на вход сигнал в виде вектора - столбца или скалярной величины.

Модулировать сигнал с помощью квадратурной амплитудной модуляции:

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

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

Примечание

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

Конструкция

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

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

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

Свойства

ModulationOrder

Число точек в сигнальном созвездии

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

PhaseOffset

Смещение фазы совокупности

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

BitInput

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

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

SymbolMapping

Кодирование совокупности

Задайте, как объект сопоставляет целое число или группу log2 битов входа (ModulationOrder) к соответствующему символу как Binary | Gray | Custom. Значением по умолчанию является Gray. Когда вы устанавливаете это свойство на Gray, Системный объект использует серо-закодированное сигнальное созвездие. Когда вы устанавливаете это свойство на Binary, объект использует естественную двоично кодированную совокупность. Когда вы устанавливаете это свойство на Custom, объект использует сигнальное созвездие, заданное в свойстве CustomSymbolMapping.

CustomSymbolMapping

Пользовательское кодирование совокупности

Задайте пользовательский вектор отображения символа совокупности. Значением по умолчанию является 0:15. Это свойство является строкой или вектор-столбцом с размером ModulationOrder. Этот вектор имеет уникальные целочисленные значения в области значений [0, ModulationOrder1]. Эти значения должны иметь тип данных double. Первый элемент этого вектора соответствует главной крайней левой точке совокупности, с последующими элементами, бегущими по столбцам, слева направо. Последний элемент соответствует самой правой нижней частью точке. Это свойство применяется, когда вы устанавливаете свойство SymbolMapping на Custom.

NormalizationMethod

Метод нормализации совокупности

Укажите, что метод раньше нормировал сигнальное созвездие как Minimum distance between symbols | Average power | Peak power. Значением по умолчанию является Minimum distance between symbols.

MinimumDistance

Минимальное расстояние между символами

Задайте расстояние между двумя самыми близкими точками совокупности как положительное, действительное значение числового скаляра. Значением по умолчанию является 2. Это свойство применяется, когда вы устанавливаете свойство NormalizationMethod на Minimum distance between symbols.

AveragePower

Средняя степень совокупности

Задайте среднюю степень символов в совокупности как положительное, действительное значение числового скаляра. Значением по умолчанию является 1. Это свойство применяется, когда вы устанавливаете свойство NormalizationMethod на Average power.

PeakPower

Пиковая мощность совокупности

Задайте максимальную мощность символов в совокупности как положительное действительное значение числового скаляра. Значением по умолчанию является 1. Это свойство применяется, когда вы устанавливаете свойство NormalizationMethod на Peak power.

OutputDataType

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

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

 Свойства фиксированной точки

Методы

совокупность(Чтобы быть удаленным), Вычисляют или строят идеальное сигнальное созвездие
шаг(Чтобы быть удаленным), Модулируют использующий прямоугольный метод QAM
Характерный для всех системных объектов
release

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

Примеры

развернуть все

Этот пример показывает, как модулировать двоичные данные с 64-QAM Системным объектом и при помощи функции qammod. Системный объект comm.RectangularQAMModulator будет удален в будущем релизе, использовать qammod вместо этого. Результирующая совокупность отображена. Для сравнения также включена модуляция с помощью comm.RectangulrQAMModulator Системного объекта.

Сгенерируйте случайные двоичные данные. При использовании данных о двоичном входе длина сигнала должна быть кратной количеству битов на символ. В 64-QAM существует 6 битов/символы.

bps = 6;
M = 2^bps; % 64-QAM
data = randi([0 1],6000,1);

Создайте 64-QAM объект модулятора, который принимает двоичный вход.

rectqamMod = comm.RectangularQAMModulator('ModulationOrder',64,'BitInput',true);

Модулируйте данные с помощью функции qammod и с помощью Системного объекта rectqamMod. Постройте оба набора модулируемых данных с помощью функции scatterplot.

dataMod = qammod(data,M,'InputType','bit');
dataModSO = rectqamMod(data);
scatterplot(dataMod)

scatterplot(dataModSO)

Алгоритмы

Этот объект реализует алгоритм, входные параметры и выходные параметры, описанные на странице с описанием блока Rectangular QAM Modulator Baseband. Свойства объектов соответствуют параметрам блоков.

Вопросы совместимости

развернуть все

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

Смотрите также

Функции

Системные объекты

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