pskmod

Модуляция манипулирования сдвига фазы

Синтаксис

y = pskmod(x,M)
y = pskmod(x,M,ini_phase)
y = pskmod(x,M,ini_phase,symorder)

Описание

y = pskmod(x,M) модулирует входной сигнал, x, использование манипулирования сдвига фазы (PSK) с модуляцией заказывает M.

пример

y = pskmod(x,M,ini_phase) задает начальную фазу модулируемого PSK сигнала.

y = pskmod(x,M,ini_phase,symorder) задает порядок символа модулируемого PSK сигнала.

Примеры

свернуть все

Модулируйте и постройте совокупности QPSK и сигналов с 16 PSK.

QPSK

Установите порядок модуляции к 4.

M = 4;

Сгенерируйте случайные символы данных.

data = randi([0 M-1],1000,1);

Модулируйте символы данных.

txSig = pskmod(data,M,pi/M);

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

rxSig = awgn(txSig,20);
scatterplot(rxSig)

С 16 PSK

Измените порядок модуляции от 4 до 16.

M = 16;

Сгенерируйте случайные символы данных.

data = randi([0 M-1],1000,1);

Модулируйте символы данных.

txSig = pskmod(data,M,pi/M);

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

rxSig = awgn(txSig,20);
scatterplot(rxSig)

Сгенерируйте случайные символы.

dataIn = randi([0 3],1000,1);

QPSK модулирует данные.

txSig = pskmod(dataIn,4,pi/4);

Передайте сигнал через канал AWGN.

rxSig = awgn(txSig,10);

Демодулируйте полученный сигнал и вычислите количество ошибок символа.

dataOut = pskdemod(rxSig,4,pi/4);
numErrs = symerr(dataIn,dataOut)
numErrs = 2

Входные параметры

свернуть все

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

Пример: randi([0 3],100,1)

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

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

Пример: 2 | 4 | 16

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

Начальная фаза модуляции PSK, заданной в радианах как действительный скаляр.

Если вы задаете ini_phase как пустой, то pskmod использует начальную фазу 0.

Пример: pi/4

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

Порядок символа, заданный как 'bin' или 'gray'. Этот аргумент задает, как функция присваивает бинарные векторы соответствующим целым числам.

  • Если symorder является 'bin', функция использует естественное двоично кодированное упорядоченное расположение.

  • Если symorder является 'gray', функция использует серо-закодированное упорядоченное расположение.

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

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

свернуть все

Объедините основополосное представление модулируемого PSK сигнала, возвращенного как вектор или матрица. Столбцы y представляют независимые каналы.

Типы данных: double | single
Поддержка комплексного числа: Да

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

| |

Представлено до R2006a