Simulinkでsine waveを用いたとき、周波数の値によってsine waveから信号が発生しなくなってしまう

1 view (last 30 days)
Tomoya Mochizuki
Tomoya Mochizuki on 21 May 2018
Edited: Atsushi Matsumoto on 22 May 2018
MATLABは2012を使っています
Sine Waveの振幅は1に設定しています
以下のようなコードのとき、Sine Waveから信号が出なくなってしまいます
fsinがSine Waveの周波数です
N=2^8;
t = [0:1:N-1];
Ts=1/100;
fHz = 1/(2*Ts);
fsin = fHz*2*pi;
Tsim=(N-1)*Ts;
delta_f=1/Tsim;
sim('test2.slx');
simout=simout';
windows = simout(1:N).*hann(N)';
F=fft(windows);
FS=N/2;
fft_out=20*log10(abs(F));
semilogx(delta_f*(0:1:N/2),fft_out(1:N/2+1));
grid on
grid minor
xlabel('freq[Hz]')
ylabel('PSD[dB/bin]')
fsinの値は314.1593ほどなのですが、この値が50のときにはSine Waveが出ます
fsinの値が50より大きくなっていくとだんだん信号が小さくなっていってしまい、314.1593になるころには信号がなくなってしまいます
理由をご存知の方がおりましたら回答をお願いします
  1 Comment
michio
michio on 21 May 2018
コード表示を編集いたしました。

Sign in to comment.

Answers (2)

Hiroumi Mita
Hiroumi Mita on 21 May 2018
test2.slxとはどのようなモデルなのでしょうか?

Atsushi Matsumoto
Atsushi Matsumoto on 22 May 2018
Edited: Atsushi Matsumoto on 22 May 2018
プログラムではサンプリング周波数(1/Ts)が100Hz, 発生するSin波の周波数(fHz)が50Hzとなっています。 &nbsp
サンプリング定理をご存知でしょうか?

Community Treasure Hunt

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

Start Hunting!