Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

comm.BPSKDemodulator

BPSK メソッドを使って復調する

説明

comm.BPSKDemodulator オブジェクトは、2 位相シフト キーイング メソッドを使用して変調された信号を復調します。入力は、変調信号のベースバンド表現です。

BPSK を使って復調するには、次のようにします。

  1. comm.BPSKDemodulator オブジェクトを作成し、そのプロパティを設定します。

  2. 関数と同様に、引数を指定してオブジェクトを呼び出します。

System object の機能の詳細については、System object とはを参照してください。

作成

説明

bpskdemod = comm.BPSKDemodulator は、2 位相シフト キーイング (BPSK) メソッドを使用して入力信号を復調する、復調器 System object™ bpskdemod を作成します。

bpskdemod = comm.BPSKDemodulator(Name,Value) は、指定の各プロパティが指定の値に設定された BPSK 復調器 System object bpskdemod を作成します。(Name1,Value1,...,NameN,ValueN) のように、追加の名前と値のペアの引数を任意の順番で指定できます。

bpskdemod = comm.BPSKDemodulator(phase,Name,Value) は、BPSK 復調器 System object bpskdemod を作成します。オブジェクトの PhaseOffset プロパティは phase に、他の指定プロパティは指定の値に設定されています。

プロパティ

すべて展開する

特に指定がない限り、プロパティは "調整不可能" です。つまり、オブジェクトの呼び出し後に値を変更することはできません。オブジェクトは呼び出すとロックされ、ロックを解除するには関数 release を使用します。

プロパティが "調整可能" の場合、その値をいつでも変更できます。

プロパティ値の変更の詳細については、System object を使用した MATLAB でのシステム設計を参照してください。

コンスタレーションの 0 番目の点の位相 (ラジアン単位)。有限実数スカラーとして指定します。

データ型: 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

ノイズ分散。非ゼロの実数スカラーとして指定します。この値が非常に小さい (つまり、SNR が非常に大きい) 場合、対数尤度比 (LLR) 計算は Inf または -Inf を生成できます。この分散は、LLR アルゴリズムが、有限の精度演算を使用した非常に大きいまたは小さい数値の指数を計算するために発生します。こういった場合、このオプションのアルゴリズムは指数計算を行わないことから、近似 LLR の使用が最も良い方法です。このプロパティは調整可能です。

依存関係

このプロパティは、VarianceSource プロパティを 'Property' に設定した場合に適用されます。

データ型: double

出力データ型。'double''single'、または Custom として指定します。

データ型: char

固定小数点プロパティ

逆回転ファクターのデータ型。'Same word length as input' または 'Custom' のいずれかで指定します。

依存関係

このプロパティは、DecisionMethod プロパティを 'Hard decision' に設定した場合に適用されます。オブジェクトは、特定の条件下においてのみ計算に逆回転ファクターを使用します。step メソッド入力は固定小数点型のものでなければならず、PhaseOffset プロパティは π/2 の倍数以外の値にしなければなりません。

データ型: char | string

出力の固定小数点データ型。Auto の符号属性の numerictype (Fixed-Point Designer) オブジェクトとして指定します。

依存関係

このプロパティは、OutputDataType プロパティを 'Custom' に設定した場合に適用されます。

データ型: fi

使用法

説明

data = bpskdemod(waveform) は、変調された波形に BPSK 復調を適用し、復調された入力信号を返します。

入力引数

すべて展開する

BPSK 変調されたベースバンド信号。入力信号と同じサイズの列ベクトルまたは行列として指定します。

データ型: double
複素数のサポート: あり

出力引数

すべて展開する

出力信号。列ベクトルまたは行列として返されます。

データ型: double

オブジェクト関数

オブジェクト関数を使用するには、System object を最初の入力引数として指定します。たとえば、obj という名前の System object のシステム リソースを解放するには、次の構文を使用します。

release(obj)

すべて展開する

constellation理想的なコンスタレーションの計算またはプロット
stepSystem object のアルゴリズムの実行
releaseリソースを解放し、System object のプロパティ値と入力特性の変更を可能にします。
resetSystem object の内部状態のリセット

すべて折りたたむ

BPSK 信号を生成して AWGN チャネルを経由して渡し、信号を復調して誤差の統計を計算します。

BPSK 変調器および復調器 System object を作成します。

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

誤り率計算機 System object を作成します。

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 で導入