Main Content

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

MATLAB 関数による散布図とアイ ダイアグラム

この例では、アイ ダイアグラムと散布図を使用して信号の動作を可視化する方法を説明します。例では、ルート レイズド コサイン (RRC) フィルターを使用して渡される QPSK 信号を使用します。

散布図

RRC フィルター、変調方式およびプロット パラメーターを設定します。

span = 10;          % Filter span
rolloff = 0.2;      % Rolloff factor
sps = 8;            % Samples per symbol
M = 4;              % Modulation alphabet size
k = log2(M);        % Bits/symbol
phOffset = pi/4;    % Phase offset (radians)
n = 1;              % Plot every nth value of the signal
offset = 0;         % Plot every nth value of the signal, starting from offset+1

関数 rcosdesign を使用してフィルター係数を作成します。

filtCoeff = rcosdesign(rolloff,span,sps);

サイズが M のアルファベットに対しランダムなシンボルを生成します。

rng default
data = randi([0 M-1],5000,1);

QPSK 変調を適用します。

dataMod = pskmod(data,M,phOffset);

変調されたデータをフィルター処理します。

txSig = upfirdn(dataMod,filtCoeff,sps);

オーバーサンプリングされた QPSK 信号の SNR を計算します。

EbNo = 20;
snr = EbNo + 10*log10(k) - 10*log10(sps);

送信信号に AWGN を付加します。

rxSig = awgn(txSig,snr,'measured');

RRC 受信フィルターを適用します。

rxSigFilt = upfirdn(rxSig, filtCoeff,1,sps);

フィルター処理された信号を復調します。

dataOut = pskdemod(rxSigFilt,M,phOffset,'gray');

関数 scatterplot を使用して、フィルター処理の前後の信号の散布図を表示します。コンスタレーションが理想値により近づいていることから、受信フィルターによって性能が改善されていることがわかります。最初の span シンボルと最後の span シンボルは、2 つのフィルター処理操作の累積遅延を表し、散布図を生成する前に 2 つのフィルター処理された信号から削除されます。

h = scatterplot(sqrt(sps)*txSig(sps*span+1:end-sps*span),sps,offset);
hold on
scatterplot(rxSigFilt(span+1:end-span),n,offset,'bx',h)
scatterplot(dataMod,n,offset,'r+',h)
legend('Transmit Signal','Received Signal','Ideal','location','best')

Figure Scatter Plot contains an axes. The axes with title Scatter plot contains 3 objects of type line. These objects represent Transmit Signal, Received Signal, Ideal.

アイ ダイアグラム

2 シンボル周期にわたる送信信号の 1000 点のアイ ダイアグラムを表示します。

eyediagram(txSig(sps*span+1:sps*span+1000),2*sps)

Figure Eye Diagram contains 2 axes. Axes 1 with title Eye Diagram for In-Phase Signal contains an object of type line. This object represents In-phase. Axes 2 with title Eye Diagram for Quadrature Signal contains an object of type line. This object represents Quadrature.

受信信号の 1000 点のアイ ダイアグラムを表示します。

eyediagram(rxSig(sps*span+1:sps*span+1000),2*sps)

Figure Eye Diagram contains 2 axes. Axes 1 with title Eye Diagram for In-Phase Signal contains an object of type line. This object represents In-phase. Axes 2 with title Eye Diagram for Quadrature Signal contains an object of type line. This object represents Quadrature.

AWGN が存在するため、受信アイ ダイアグラムの目が閉じはじめていることを確認します。また、フィルターの長さが有限であることも、理想的でない動作の要因となっています。

参考

|

関連するトピック