Transformasi Fourier merupakan keluarga dari Transformasi Integral, gampangnya, ini adalah ‘alat’ yang bisa kita gunakan untuk melihat sinyal dengan kacamata yang lain. Jika selama ini kita hanya melihat sinyal melalui osiloskop atau alat sejenis lainnya, itu adalah visualisasi sinyal dalam ranah waktu (time domain), sumbu horisontal-nya waktu (t) dan sumbu vertikal-nya adalah amplitudo (A)…

Mmmm lantas ngapain? Ya kita tidak bisa tahu secara langsung informasi penting di ranah waktu kecuali amplitudo dan kapan terjadinya, bisakah menghitung frekuensinya? Mmmm gampang, itu mungkin jawaban Anda, karena bisa jadi Anda hanya membayangkan sebuah gelombang sinusoidal, Anda tinggal hitung berapa gelombang dalam satu detiknya, thing! Langsung ketemu sekian gelombang/detik atau pake satuan cycle/sec atau Hz…

Nah kalo sinyalnya kayak gini gimana dong…

Okey… okey, Anda bisa bilang ‘Ya iyalah mosok ya iya donk… Gimana ngitungnya kalo bentuk gak karuan kayak gitu, terkesan acak dech, jangan-jangan emang gak periodik… piye to iki mas…??’

Baik sebelum cari informasi frekuensi dari gelombang tersebut, akan saya jelaskan langkah demi langkah… Are You ready?? Are You ready?? Are You ready?? wis gak usah kebanyakan omong/tanya…

Masih pake bantuan Matlab, kita awali dengan mendefinisikan sinyal yang akan digunakan sebagai percobaan. Frekuensi cuplikan 1000 Hz (=fs), kita gambar hanya 0,5 detik pertama (=t) untuk sebuah sinyal dengan 2 kandungan frekuensi 100 Hz dan 200 Hz (=y):

fs = 1000;
t = 0:1/fs:0.5;
y = sin(2*pi*100*t)+sin(2*pi*200*t);

kemudian kita gambar yuuk…

plot(t,y);
title(’Sinyal dengan kandungan 2 frekuensi’)
xlabel(’waktu (detik)’);

hasilnya…

Kemudian kita lakukan FFT (Fast Fourier Transform), pake perintah fft-nya Matlab:

Y = fft(y);

Kemudian kita gambar hasilnya apa adanya, ingat bahwa hasil dari FFT selalu ada 2 (karena efek simetris):

f = fs*(0:length(Y)-1)/length(Y);
figure;
plot(f,abs(Y));
title(’Kandungan frekuensi sinyal y (gambar 2 sisi)’)
xlabel(’frekuensi (Hz)’);

hasilnya…

Baik sekarang kita gambar 1 sisi saja yach…

f = fs*(0:(length(Y)-1)/2)/length(Y);
figure
plot(f,abs(Y(1:(length(Y)+1)/2)));
title(’Kandungan frekuensi sinyal y (gambar 1 sisi)’)
xlabel(’frekuensi (Hz)’);

hasilnya…

Gimana mudeng, paham? Enak khan langsung ketahuan frekuensinya… 100Hz dan 200Hz…! Ups terus gimana dengan gambar pertama tadi? Ini dia hasil FFT-nya…

We.. e.. e… jebulannya (ternyata) bagaimana? kandungan-nya sama seperti sinyal awal, 100 Hz dan 200Hz, tapi kok ada tambahan gambar ‘rumput’-nya ya? Ya iyalah donk… lha wong sinyal asli saya kasih derau atau sinyal acak kok… he he he…

Silahken kasih komentar atau pertanyaan, atau barangkali Anda penasaran dengan skrip/program untuk membuat sinyal asli plus acak dan menampilkan FFT-nya? Silahken berkomentar…

NB:
Kenapa saya pake perintah figure untuk memplot gambar-gambar berikutnya? ya supaya gambar awal tidak hilang donk dan ada gambar baru yang muncul… he he he gitu aja kok repot…

Tags: ,

25 Responses to “Transformasi Fourier, apaan tuch?”

  1. bisa tidak menggunakan matlab dalam pemodelan data seismik?

  2. jawaban saya sama spt di jawaban artikel http://agfi.staff.ugm.ac.id/bl.....i-psd-dsp/

  3. knp hasil FFT simetris pak??
    saat diambil satu sisi byasanya yg dipake bag sebelah mana??

  4. @Nia:
    hasil FFT simetris karena dari persamaannya yang melibatkan bilangan kompleks mengakibatkan hal semacam itu, cukup yang diambil salah satu saja tidak usah dua-duanya… biasanya yang kiri…

  5. pak gimana cara masukan inpiutan dari simulink ke sp tool or ke FFTD

  6. maaf salah tulis FFTD HARUSNYA FFT

  7. Kalo Pake VB bs g?

  8. @Teguh:
    coba cek diagram blok-nya (pake HELP) untuk parameter2 masukan-nya…

    @Joko:
    pake VB bisa - artinya gunakan skrip VB untuk membuat algoritma FFT atau Transformasi Fourier…

  9. ehm, mo tnya..kenapa kok depannya dikasih ‘FAST’ (FFT)??? apa beda dengan Fourier Transform yg biasa??? trims…^_^

  10. trims pa… akhirnya saya tau apa itu transformasi fourier…hehehehe.. mungkin mau melanjutkan dengan laplace pak.. :D

  11. Hi PAk Eko. Slm knal sy, Trisha.
    Mw tny, klo misalkan kita mau membuat konversi dari suara manusia ke teks.. Apa menggunakan FFT? Sinyal suara tsbt dpt diambil sampel dlm btk biner atw apa? Mohon pencerahannya.. Trima kasih banyak. . ^^

  12. nanya dnk!!!
    hubungan antara transformasi fourier dan laplace itu ap ya???
    pleassseeeee bales…..
    buat tambahan tugas ne…..
    thx.

  13. @putri:
    Trans.Laplace (TL) maupun Trans.Fourier (TF) sama-sama melakukan transformasi dari ranah waktu menjadi ranah frekuensi dan begitu juga sebaliknya…

    TL lebih umum, hal ini dikarenakan merupakan fungsi dari variabel kompleks ’s’, sedangkan TF merupakan fungsi dari variabel imajiner (dengan asumsi bagian real-nya = 0).

    TL digunakan untuk menyelesaikan persamaan diferensial mapuun persamaan beda (difference equation), dimana persamaan beda ini menggunakan Trans.Z juga. sedangkan TF digunakan untuk analisis frekuensi…

    Jika tanggap dalam ranah-waktu lebih diutamakan gunakan saja TL, sedangkan TF digunakan untuk analisis ranah-frekuensi…
    seringkali juga TF digunakan untuk sinyal-sinyal dengan rerata konstan, sedangkan LT sebaliknya, misalnya sinyal ramp atau sejenis itu..

    semoga penjelasan singkat ini bermanfaat, amin.

  14. @JeTRisha:
    > w tny, klo misalkan kita mau membuat konversi dari suara manusia ke teks.. Apa menggunakan FFT?

    intinya adalah mengenali kata-kata dari pola, bisa menggunakan FFT atau teknik2 yang digunakan dalam pattern recognition.

    > Sinyal suara tsbt dpt diambil sampel dlm btk biner atw apa?

    untuk pemrosesan digital tentunya sudah dalam format asli seperti WAV, bukan MP3, misalnya, yang masih harus diuraikan lagi.

  15. pak..itu kalo menggunakan program..trus kalo dihitung manual gimna?

  16. @very:
    bisa juga dihitung secara manual, syaratya harus tahu algoritma-nya dan cukup kompleks, alangkah baiknya dibuat programnya saja…

  17. pak,,gmn klo inputnya berupa file audio (wav),,,caranya gmn ya????

  18. mau tanya
    knapa TL itu lbih umum dari TF? adakah soal persamaan diferensial yang dapat dipecahkan dengan kedua transformasi tersebut? tlng dung contohnya……tqb4

  19. setelah melihat penjelasan tentang FT yg kita sajikan sangat menarik. Lanjut saya sekarang mempunyai problem dalam penyelesaian FT tuk perubahan dari domain waktu ke domain frekuensi dengan menggunakan FT, jd sy mengharapkan bantuannya tuk penyelesaian persamaan berikut :
    x(t)=[(F_o (k-mω^2))/(〖(k-mω^2)〗^2+〖(cω)〗^2 )]cosωt+[(F_o cω)/(〖(k-mω^2)〗^2+〖(cω)〗^2 )]sinωt

  20. saya mau nanya nih…
    klo kita mau membandingkan dua sinyal digital dengan fft jd gmna ya??
    saya sudah mencari beberapa referensi tapi blm ada yang mendukung…
    apa fft merubah sinyal yang sebelumnya berada dalam domain waktu akan dirubah dalam domain frekuensi ya??
    mohon penjelasannya…
    klo bs kirim ke email saya.
    trim’s sebelemunya

  21. pak…salam kenal…mw tanya pada bagian domain frekuensinya,..
    itu sumbu horizontalnya kan frekuensi, kalau sumbu vertikalnya itu apa pak..???..setahu saya kalau spektrum itu cuma ada tegangan ama daya..???makasih pak…di jawab ya..???

  22. email aja ya pak..???makasih pak…

  23. @pier:
    horisontalnya = frekuensi, vertikalnya: daya

  24. @tulus: jika filenya audio, cara/konsep dasarnya tetap sama misalnya…

    asumsi berkasnya “triangle.wav”
    dibaca dulu datanya…

    [y, fs, nbits] = wavread(’triangle.wav’);

    kita mainkan dulu suaranya…
    disp(’Playing at the original sample rate.’);
    sound(y, fs);

    kita cari FFT-nya…
    Y = fft(y);
    plot(abs(Y));

    kita zoom setengah-nya…
    axis([0 length(Y)/2, 0 max(abs(Y))])

  25. Pak….klo daya nya diperoleh dari mana pak..???
    ada formulanya gak ???
    klo mau tegangan bisa gak pak…???
    trus sintax nya gmana..???
    maaf pak bnyk tanya..makasih pak..!!!..via email ya pak..???

Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>