Main Content

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

comm.DQPSKModulator

DQPSK メソッドを使って変調する

説明

DQPSKModulator オブジェクトは、差動直交位相シフト キーイング メソッドを使用して変調します。出力は、変調信号のベースバンド表現です。

差動直交位相シフト キーイングを使用して信号を変調するには、以下の手順に従います。

  1. DQPSK 変調器オブジェクトを定義および設定します。構築を参照してください。

  2. step を呼び出して、comm.DQPSKModulator のプロパティに従い、信号を変調します。step の動作は、ツールボックスの各オブジェクト固有のものです。

メモ

R2016b 以降では、step メソッドを使用して、System object™ によって定義された演算を実行する代わりに、引数を関数であるかのように使ってオブジェクトを呼び出すことができます。たとえば、y = step(obj,x)y = obj(x) は同等の演算を実行します。

構築

H = comm.DQPSKModulator は変調器 System object H を作成します。このオブジェクトは、差動直交位相シフト キーイング (DQPSK) メソッドを使って入力信号を変調します。

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

H = comm.DQPSKModulator(PHASE,Name,Value) は、DQPSK 変調器オブジェクト H を作成します。このオブジェクトは、PhaseRotation プロパティを PHASE に設定しており、指定の他のプロパティは指定の値に設定しています。

プロパティ

PhaseRotation

追加の位相シフト

変調されたシンボルの以前と現在の追加の位相差を、ラジアン単位の実数スカラー値で指定します。既定の設定は pi/4 です。この値は、入力が 0 の場合の以前の変調されたビットと現在の変調されたシンボルの位相差に対応します。

BitInput

ビット入力を想定する

入力がビットか整数かを指定します。既定の設定は false です。このプロパティを true に設定する場合、step メソッド入力はビット値の列ベクトルでなければなりません。このベクトルの長さは、2 の整数倍です。このベクトルには、0 から 3 までの整数のビット表現が含まれています。このプロパティを false に設定した場合、step メソッド入力は 0 から 3 までの整数シンボル値の列ベクトルでなければなりません。

SymbolMapping

コンスタレーション符号化

オブジェクトが整数または 2 入力ビットのグループを、対応するシンボルに Binary または Gray のいずれか 1 つをマップする方法を指定します。既定の設定は Gray です。このプロパティを Gray に設定すると、オブジェクトはグレイ符号コンスタレーションを使用します。このプロパティを Binary に設定すると0m3 の間の入力整数 m は出力位相をシフトします。このシフトは、元の出力位相から (PhaseRotation + 2×π×m4) ラジアンになります。出力シンボルは、exp(j×PhaseRotation + j×2×π×m4)× (以前に変調されたシンボル) です。

OutputDataType

出力のデータ型

出力データ型を double または single のいずれかとして指定します。既定の設定は double です。

メソッド

stepDQPSK メソッドを使って変調する
すべての System object に共通
release

System object のプロパティ値の変更の許可

reset

System object の内部状態をリセットします。

すべて折りたたむ

DQPSK 変調器と復調器のペアを作成します。シンボルあたりのビット数が 2 の AWGN チャネル オブジェクトを作成します。

dqpskmod = comm.DQPSKModulator('BitInput',true);
dqpskdemod = comm.DQPSKDemodulator('BitOutput',true);
channel = comm.AWGNChannel('EbNo',6,'BitsPerSymbol',2);

誤り率計算機を作成します。ComputationDelay プロパティを 1 に設定し、差分変調により発生する 1 ビットの過渡状態を考慮します。

errorRate = comm.ErrorRate('ComputationDelay',1);

主処理ループ ステップ:

  • 50 の 2 ビット フレームの生成

  • 8-DPSK 変調

  • AWGN チャネルの経由

  • 8-DPSK 復調

  • 誤り統計の収集

for counter = 1:100
    txData = randi([0 1],100,1);
    modSig = dqpskmod(txData);
    rxSig = channel(modSig);
    rxData = dqpskdemod(rxSig);
    errorStats = errorRate(txData,rxData);
end

誤りの統計を表示します。

ber = errorStats(1)
ber = 0.0170
numErrors = errorStats(2)
numErrors = 170
numBits = errorStats(3)
numBits = 9999

アルゴリズム

このオブジェクトは、DQPSK Modulator Baseband ブロックのリファレンス ページで説明されているアルゴリズム、入力、および出力を実装しています。オブジェクト プロパティはブロック パラメーターに対応します。

拡張機能

R2012a で導入