exponenta event banner

mil188qammod

MIL-STD-188-110 Стандартно-специфическая квадратурная амплитудная модуляция (QAM)

Описание

пример

y = mil188qammod(x,M) выполняет модуляцию QAM на входном сигнале, x, в соответствии с MIL-STD-188-110 и порядком модуляции, M. Дополнительные сведения см. в разделе MIL-STD-188-110.

пример

y = mil188qammod(x,M,Name,Value) указывает параметры, использующие один или несколько аргументов пары имя-значение. Например, 'OutputDataType','double' задает требуемый тип выходных данных как двойной. Укажите аргументы пары имя-значение после всех других входных аргументов.

Примеры

свернуть все

Модулировать данные с помощью 32-QAM, как указано в стандарте MIL-188-110C. Отображение результата с помощью графика разброса.

Установите M равным 32 и создайте вектор данных, содержащий все возможные символы.

M = 32;
x = (0:M-1);

Модулировать данные с помощью QAM, как указано в MIL-STD-188-110C.

y = mil188qammod(x,M);

Отображение созвездия в виде графика рассеяния.

scatterplot(y)

Figure Scatter Plot contains an axes. The axes with title Scatter plot contains an object of type line. This object represents Channel 1.

Модулировать данные с помощью 16-QAM, как указано в стандарте MIL-STD-188-110B. Нормализуйте выходной сигнал модулятора таким образом, чтобы он имел среднюю мощность сигнала 1 Вт.

Задайте M и создайте случайные данные.

M = 16;
x = randi([0 M-1],1e5,1);

Модулировать данные, применяющие 16-QAM, как указано в MIL-STD-188-110B. Используя пары имя-значение, установите среднюю мощность единицы в true и включите график созвездия.

y = mil188qammod(x,M,'UnitAveragePower',true,'PlotConstellation',true);

Figure contains an axes. The axes with title MIL188 16-QAM , UnitAveragePower=true contains 19 objects of type line, text.

Убедитесь, что сигнал имеет приблизительно единицу средней мощности.

avgPow = mean(abs(y).^2)
avgPow = 1.0012

Модулировать последовательность битов с помощью 64-QAM, как указано в MIL-STD188-110B. Отображение созвездия.

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

M = 64;
numBitsPerSym = log2(M);
data = randi([0 1],1000*numBitsPerSym,1);

Модулировать данные, применяющие 64-QAM, как указано в MIL-STD-188-110B, и выводить символы совокупности одиночного типа данных.

y = mil188qammod(data,M,'InputType','bit','OutputDataType','single');

Постройте график результирующей совокупности с использованием графика рассеяния.

scatterplot(y)

Figure Scatter Plot contains an axes. The axes with title Scatter plot contains an object of type line. This object represents Channel 1.

Входные аргументы

свернуть все

Входной сигнал, заданный как скаляр, вектор или матрица. Элементы x должны быть двоичными значениями или целыми числами в диапазоне от 0 до (M - 1), где M - порядок модуляции.

Примечание

Для обработки входного сигнала в виде двоичных элементов установите 'InputType' значение для 'bit'. Для двоичных входов число строк должно быть целым кратным log2 (M). Группы log2 (M) биты в столбце отображаются на символ, причем первый бит представляет MSB, а последний бит представляет LSB.

Типы данных: double | single | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical

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

Пример: 16

Типы данных: double

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: y = mil188qammod (данные, M, «InputType», «bit», «OutputDataType», «single»);

Тип ввода, указанный как разделенная запятыми пара, состоящая из 'InputType' и либо 'integer' или 'bit'. При указании 'integer', входной сигнал должен состоять из целых чисел от 0 до M – 1. При указании 'bit', входной сигнал должен содержать двоичные значения, а число строк должно быть целым кратным log2 (M).

Типы данных: char | string

Тип выходных данных, указанный как разделенная запятыми пара, состоящая из OutputDataType и 'double' или 'single'.

Типы данных: char | string

Флаг средней мощности блока, определяемый как разделенная запятыми пара, состоящая из 'UnitAveragePower' и логический скаляр. Когда этот флаг trueфункция масштабирует созвездие до средней мощности 1 Вт, относящейся к 1 Ом. Когда этот флаг false, функция масштабирует совокупность на основе спецификаций в соответствующем стандарте, как описано в [1].

Типы данных: logical

Опция для печати совокупности, заданной как разделенная запятыми пара, состоящая из 'PlotConstellation' и логический скаляр. Для построения графика созвездия установите PlotConstellation кому true.

Типы данных: logical

Выходные аргументы

свернуть все

Модулированный сигнал, возвращаемый как комплексный скаляр, вектор или матрица. Размер выходных данных зависит от указанного InputType значение.

InputTypeРазмеры выходных данных
'integer'y имеет те же размеры, что и входные x.
'bit'Количество строк в y равно количеству строк в x делится на log2 (M).

Типы данных: double | single

Подробнее

свернуть все

MIL-STD-188-110

MIL-STD-188-110 - стандарт Министерства обороны США для HF-связи, использующий последовательный режим PSK как информационных, так и речевых сигналов.

Стандарт определяет схемы модуляции физического уровня для тактической и дальнемагистральной связи. Схема модуляции, определенная стандартом, представляет собой смесь QAM и APSK. Подробное описание схемы модуляции см. в [1].

Ссылки

[1] MIL-STD-188-110B & C: «Стандарты совместимости и производительности модемов данных». Стандарт интерфейса министерства обороны, США.

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

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

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