メインコンテンツ

comm.BPSKModulator

R2026b

(削除予定) BPSK メソッドを使って変調する

comm.BPSKModulator は将来のリリースで削除される予定です。代わりに pskmod を使用してください。コードの更新の詳細については、バージョン履歴を参照してください。

説明

comm.BPSKModulator オブジェクトは、2 相位相偏移変調メソッドを使用して変調します。出力は、変調信号のベースバンド表現です。入力信号は離散時間バイナリ値の信号でなければなりません。入力ビットが 0 または 1 の場合、変調されたシンボルはそれぞれ exp(jθ)、-exp(jθ) になります。PhaseOffset プロパティは θ の値を指定します (ラジアン単位)。

BPSK メソッドを使用して信号を変調するには、次のようにします。

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

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

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

作成

説明

bpskmodulator = comm.BPSKModulator は、2 相位相偏移変調 (BPSK) メソッドを使用して入力信号を変調する、変調器 System object™ を作成します。

例

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

bpskmodulator = comm.BPSKModulator(phase,Name,Value) は、PhaseOffset プロパティが phase に設定され、他の指定のプロパティが指定の値に設定された BPSK 変調器オブジェクトを作成します。

プロパティ

すべて展開する

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

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

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

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

データ型: double

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

データ型: char

固定小数点プロパティ

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

依存関係

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

使用法

説明

waveform = bpskmodulator(data) は BPSK 変調を入力データに適用し、変調された BPSK ベースバンド信号を返します。

例

入力引数

すべて展開する

入力信号のデータ。列ベクトルまたは行列として指定します。

データ型: double

出力引数

すべて展開する

BPSK 変調されたベースバンド信号。入力信号と同じサイズの列ベクトルまたは行列として返されます。出力のデータ型の詳細については、OutputDataType プロパティを参照してください。

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

オブジェクト関数

オブジェクト関数を使用するには、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

アルゴリズム

位相変調は線形ベースバンド変調手法で、この手法ではメッセージにより定振幅信号の位相を変調します。2 相位相偏移変調 (BPSK) は 2 つの位相の変調スキームであり、バイナリ メッセージの 0 と 1 は次の搬送信号において 2 つの異なる位相状態で表されます。

sn(t)=2EbTbcos(2πfct+ϕn),

このとき、(n−1)Tb≤t≤nTb, n=1,2, 3,… です。各項目の意味は次のとおりです。

  • ϕn = πm + ϕ, m∈{0,1}。

  • ϕ は初期位相オフセットです。

  • Eb はビットあたりのエネルギーです。

  • Tb はビットの持続時間です。

  • fc は搬送波周波数です。

MATLAB® では、BPSK 信号のベースバンド表現は次のようになります。

sn(t)=e−iϕn=cos(πn).

BPSK 信号は 2 つの位相をもちます。0 と π です。

BPSK constellation for zero phase offset

AWGN チャネルのビット エラーの確率は次のようになります。

Pb=Q(2EbN0),

ここで、N0 はノイズ パワー スペクトル密度です。

拡張機能

すべて展開する

バージョン履歴

R2012a で導入

すべて展開する

参考

関数

ブロック