スペクトルのプロット方法

5 次查看(过去 30 天)
太郎 山田
太郎 山田 2020-7-10
编辑: michio 2020-7-13
異なる周波数を持つ2つの正弦波を混合した時に新しい周波数の信号が発生する(ビート?)のを確認するため、MATLABを用いてやりたいのですが、どのようにうてば良いでしょうか?
中間周波数?というものらしいですが本当に発生するのでしょうか?
数行でできるそうですが、MATLAB初心者なので分かりやすく教えて頂ければ幸いです。

回答(1 个)

takemoto
takemoto 2020-7-13
编辑:michio 2020-7-13
例えば、100Hzの搬送波を10Hzの正弦波で変調する場合、以下の様に書けると思います。
%%
fs = 1000;
t = 0 :1/fs : 1;
y1 = sin(2*pi*10*t); %ベースバンド信号
y2 = sin(2*pi*100*t); %搬送波(中間周波数、IF)
y = y1.*y2; % mixing
Y = fft(y);
f = 0 : fs/length(Y) : fs*(1-1/length(Y));
plot(f,abs(Y)), xlim([0,fs/2]), grid
%%
この例の場合、100-10=90[Hz]と、100+10=[110]Hzが、ビート周波数に相当します。
Signal Processing Toolboxや、Communications Toolboxをお持ちであれば、以下も参考になると思います。

类别

Help CenterFile Exchange 中查找有关 スペクトル測定 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!