Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

frequencyOffset

入力信号への周波数オフセットの適用

R2022a 以降

説明

y = frequencyOffset(x,samplerate,offset) は、指定された周波数オフセットを入力信号 x に適用します。

すべて折りたたむ

入力データのベクトルを変調し、矩形の 16 点直交振幅変調 (16-QAM) 信号を生成します。

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

信号のサンプル レート、および適用する周波数オフセットを指定します。

samplerate = 1;
offset = 100e3;

入力信号に周波数オフセットを適用します。

y = frequencyOffset(x,samplerate,offset);

信号とスペクトル アナライザーを構成するパラメーターを定義します。

fc = 1e6;         % Carrier frequency (Hz)
fs = 4e6;         % Sample rate (Hz)
Nspf = 100e3;     % Number of samples per frame
freqSpan = 400e3; % Frequency span for spectrum computation (Hz)

指定したパラメーター値を使用して、正弦波オブジェクトとスペクトル アナライザー オブジェクトを作成します。

sinewave = dsp.SineWave(Amplitude=1, ...
    Frequency=fc, ...
    SampleRate=fs, ...
    SamplesPerFrame=Nspf, ...
    ComplexOutput=true);
sascope = spectrumAnalyzer( ...
    SampleRate=fs, ...
    FrequencySpan="Span and center frequency", ...
    CenterFrequency=fc, ...
    Span=freqSpan, ...
    SpectrumType="Power density", ...
    SpectralAverages=10, ...
    SpectrumUnits="dBW/Hz", ...
    ShowLegend=true, ...
    ChannelNames=["Input sine wave","Frequency-offset sine wave"], ...
    YLimits=[-50 10]);

正弦波信号を生成します。

x = sinewave();

100 kHz の周波数オフセットを信号に適用します。

offset = 100e3;
y = frequencyOffset(x,fs,offset);

スペクトル アナライザーを使用して、入力信号と周波数シフト後の信号を表示します。

sascope(x,y)

入力引数

すべて折りたたむ

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

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

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

データ型: double

周波数オフセット (Hz 単位)。スカラーまたは行ベクトルとして指定します。

  • offset がスカラーである場合、関数は同じ周波数オフセットを各チャネルに適用します。

  • offset がベクトルである場合、各要素は、関数によって入力信号の対応する列 (チャネル) に適用された周波数オフセットを指定します。offset の要素数は x の列数と等しくなければなりません。

データ型: double

出力引数

すべて折りたたむ

出力信号。x と同じ次元およびデータ型をもつベクトルまたは行列として返されます。y の列数はチャネル数に対応します。

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

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2022a で導入