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

1 vue (au cours des 30 derniers jours)
Tomoya Mochizuki
Tomoya Mochizuki le 21 Mai 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 commentaire
michio
michio le 21 Mai 2018
コード表示を編集いたしました。

Connectez-vous pour commenter.

Réponses (2)

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

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

Produits

Community Treasure Hunt

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

Start Hunting!