comm.BPSKDemodulator

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

Описание

comm.BPSKDemodulator object демодулирует сигнал, который модулировался с помощью бинарного метода манипулирования сдвига фазы. Вход представляет собой репрезентацию модулированного сигнала.

Демодулировать BPSK использования:

  1. Создайте comm.BPSKDemodulator объект и набор его свойства.

  2. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты?.

Создание

Описание

пример

bpskdemod = comm.BPSKDemodulator создает Систему демодулятора object™ bpskdemod, это демодулирует входной сигнал с помощью метода бинарного манипулирования сдвига фазы (BPSK).

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

bpskdemod = comm.BPSKDemodulator(phase,Name,Value) создает Системный объект демодулятора BPSK bpskdemod. PhaseOffset объекта свойство установлено в phase, и другие заданные свойства установлены в заданные значения.

Свойства

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

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

Если свойство является настраиваемым, можно изменить его значение в любое время.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты.

Фаза нулевой точки созвездия в радианах в виде конечного действительного скаляра.

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

Метод решения демодуляции в виде одного из 'Hard decision', 'Log-likelihood ratio', или 'Approximate log-likelihood ratio'.

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

Источник шумового отклонения в виде одного из 'Property' или 'Input port'.

Зависимости

Это свойство применяется, когда вы устанавливаете DecisionMethod свойство к 'Log-likelihood ratio' или 'Approximate log-likelihood ratio'.

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

Шумовое отклонение в виде ненулевого, действительного скаляра. Если это значение очень мало (т.е. ОСШ очень высок), расчеты отношения логарифмической правдоподобности (LLR) могут дать к Inf или -Inf. Это отклонение происходит, потому что алгоритм LLR вычисляет экспоненциал очень больших или очень небольших чисел с помощью конечной арифметики точности. Как лучшая практика в таких случаях, используйте аппроксимированный LLR, потому что алгоритм этой опции не вычисляет экспоненциалы. Это свойство является настраиваемым.

Зависимости

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

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

Выведите тип данных в виде любого 'double'единственный или Custom.

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

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

Тип данных derotate фактора в виде одного из 'Same word length as input' | 'Custom'.

Зависимости

Это свойство применяется, когда вы устанавливаете DecisionMethod свойство к 'Hard decision'. Использование объекта derotate включают расчеты только, когда определенные обстоятельства существуют. Вход метода шага должен иметь фиксированную точку и PhaseOffset свойство должно иметь значение, которое не является кратным π/2.

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

Тип данных с фиксированной точкой выхода в виде a numerictype Объект (Fixed-Point Designer) с со знаком из Автоматических.

Зависимости

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

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

Использование

Синтаксис

Описание

data = bpskdemod(waveform) применяет демодуляцию BPSK к модулируемой форме волны и возвращает демодулируемый входной сигнал.

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

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

BPSK Модулируемый сгенерированный модулированный сигнал в виде вектор-столбца или матрицы одного размера с входным сигналом.

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

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

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

Выходной сигнал, возвращенный как вектор-столбец или матрица.

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

Функции объекта

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

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

constellationВычислите или постройте идеальное сигнальное созвездие
stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примеры

свернуть все

Сгенерируйте сигнал BPSK, передайте его через канал AWGN, демодулируйте сигнал и вычислите ошибочную статистику.

Создайте модулятор BPSK и Системные объекты демодулятора.

bpskModulator = comm.BPSKModulator;
bpskDemodulator = comm.BPSKDemodulator;

Создайте Системный объект калькулятора коэффициента ошибок.

errorRate = comm.ErrorRate;

Сгенерируйте 50-битные случайные системы координат данных, примените модуляцию BPSK, передайте сигнал через канал AWGN, демодулируйте полученные данные и скомпилируйте ошибочную статистику.

for counter = 1:100
    % Transmit a 50-symbol frame
    txData = randi([0 1],50,1);            % Generate data
    modSig = bpskModulator(txData);        % Modulate
    rxSig = awgn(modSig,5);                % Pass through AWGN
    rxData = bpskDemodulator(rxSig);       % Demodulate
    errorStats = errorRate(txData,rxData); % Collect error stats
end

Отобразите совокупную ошибочную статистику.

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

Алгоритмы

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

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

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

|

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