メインコンテンツ

comm.PhaseFrequencyOffset

位相と周波数オフセットを入力信号に適用

説明

comm.PhaseFrequencyOffset System object™ は、入力信号に位相と周波数のオフセットを適用します。

入力信号に位相と周波数のオフセットを適用するには、次のようにします。

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

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

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

作成

説明

pfo = comm.PhaseFrequencyOffset は、位相/周波数オフセット オブジェクトを作成します。

pfo = comm.PhaseFrequencyOffset(Name=Value) は、名前と値の引数を使用して追加プロパティを指定します。たとえば、comm.PhaseFrequencyOffset(SampleRate=20) は位相/周波数オフセット オブジェクトを作成し、サンプル レートを 20 Hz に設定します。(Name1=Value1,...,NameN=ValueN) のように、追加の名前と値のペアの引数を任意の順番で指定できます。

プロパティ

すべて展開する

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

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

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

位相オフセット (度単位)。スカラー、ベクトルまたは行列として指定します。詳細については、オフセットと入出力の次元の相互依存性を参照してください。

調整可能: Yes

周波数オフセットのソース。次のいずれかの値として指定します。

  • "Property"FrequencyOffset プロパティを使用して周波数オフセットを指定します。

  • "Input port" — 入力引数 fOffset で周波数オフセットを指定します。

周波数オフセット (Hz 単位)。スカラー、ベクトル、または行列として指定します。詳細については、オフセットと入出力の次元の相互依存性を参照してください。

調整可能: Yes

依存関係

このプロパティを有効にするには、FrequencyOffsetSource プロパティを "Property" に設定します。

入力信号のサンプル レート (Hz 単位)。正のスカラーとして指定します。

使用法

説明

Y = pfo(X) は、入力信号に位相と周波数のオフセットを適用します。この構文を使用するには、FrequencyOffsetSource"Property" に設定します。

Y = pfo(X,fOffset) は、X に適用する周波数オフセットを指定します。この構文を使用するには、FrequencyOffsetSource"Input port" に設定します。

入力引数

すべて展開する

入力信号。スカラー、ベクトルまたは行列として指定します。詳細については、オフセットと入出力の次元の相互依存性を参照してください。

このオブジェクトは可変サイズの入力を受け入れます。オブジェクトがロックされると、各入力チャネルのサイズは変更できますが、チャネルの数は変更できません。詳細については、Variable-Size Signal Support with System Objectsを参照してください。

データ型: single | double

周波数オフセット (Hz 単位)。スカラー、ベクトル、または行列として指定します。詳細については、FrequencyOffset プロパティの説明とオフセットと入出力の次元の相互依存性を参照してください。

依存関係

この入力を有効にするには、FrequencyOffsetSource プロパティを "Input port" に設定します。

データ型: single | double

出力引数

すべて展開する

出力信号。X と同じ次元およびデータ型で返されます。

データ型: single | double

オブジェクト関数

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

release(obj)

すべて展開する

stepSystem object のアルゴリズムの実行
releaseリソースを解放し、System object のプロパティ値と入力特性の変更を可能にします。
resetSystem object の内部状態のリセット

すべて折りたたむ

16-QAM 信号に位相オフセットを導入し、コンスタレーションへの影響を確認します。

位相周波数オフセット System object™ を作成し、位相オフセットを 30 度に設定します。

pfo = comm.PhaseFrequencyOffset(PhaseOffset=30);

ランダムなシンボルを生成して 16-QAM 変調を適用します。

M = 16;
data = (0:M-1)';
x = qammod(data,M);

16-QAM コンスタレーションをプロットします。

scatterplot(x);
title("Original Constellation")
xlim([-5 5])
ylim([-5 5])

Figure Scatter Plot contains an axes object. The axes object with title Original Constellation, xlabel In-Phase, ylabel Quadrature contains a line object which displays its values using only markers. This object represents Channel 1.

位相オフセットを導入し、オフセットのコンスタレーションをプロットします。

y = pfo(x);
scatterplot(y);
title("Constellation After Phase Offset")
xlim([-5 5])
ylim([-5 5])

Figure Scatter Plot contains an axes object. The axes object with title Constellation After Phase Offset, xlabel In-Phase, ylabel Quadrature contains a line object which displays its values using only markers. This object represents Channel 1.

詳細

すべて展開する

アルゴリズム

入力信号が u(t) の場合、出力信号は次のとおりです。

y(t)=u(t)(cos(2π0tf(τ)dτ+φ(t))+jsin(2π0tf(τ)dτ+φ(t))),

ここで、f(t) は周波数オフセットで、φ(t) は位相オフセットです。

離散時間出力は、次で与えられます。

y(0)=u(0)(cos(φ(0))+jsin(φ(0))) and y(i)=u(i)(cos(2πn=0i1f(n)Δt+φ(i))+jsin(2πn=0i1f(n)Δt+φ(i))),

ここでは i > 0 であり、Δt はサンプル時間です。

拡張機能

すべて展開する

バージョン履歴

R2012a で導入

すべて展開する