MATLAB ile FFT Alma İşlemi

MATLAB ile bir boyutlu FFT alma işlemlerinin gerçekleştirilmesinde fft komutu kullanılmaktadır. FFT sonuçlarının gösteriminde yaşanan en büyük sorunlardan biri sonuçlarda gösterilen freknas binlerinin hangi frekans değerine karşılık geldiğidir. Bu durum FFT çözünürlüğünün bulunması ile yani, örnekleme frekansının FFT boyutuna bölünmesi ile gerçekleştirilrimektedir (Kodda 4. satır).

FFT analizi sonucunda elde edilen frekans bilgisi 14. satırdaki gibi hesaplanmaktadır.

Aşağıda verilen kodda oluşturulan 1 sn’lik 20 KHz’lik sinüs sinyalinin FFT çıktısı hesaplanmıitır.

  1. f_s = 100e3;
  2. FFT_size = 2^14;
  3. FFT_res = f_s / FFT_size;
  4. f= 20e3;
  5. n_t = 1/f_s : 1/f_s : 1;
  6. Data = sin(2 * pi * n_t * f);
  7. n_t = (1 : length(Data)) / f_s;
  8. figure, plot(n_t, Data);
  9. xlabel('Saniye');
  10. title('Data');
  11. grid on;
  12. Data_fft = 2 * abs(fft(Data, FFT_size)) / FFT_size;
  13. n_f = FFT_res * (0 : length(Data_fft) / 2 - 1);
  14. figure, plot(n_f, Data_fft(1 : length(Data_fft) / 2));
  15. xlabel('Frekans (Hz)');
  16. title('Data FFT');
  17. grid on;

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.