fbpx

Andrei Shelkovenko. Salah satu pengembang dan pendiri Vibromera.
Terjemahan artikel ini mungkin mengandung ketidakakuratan.

  1. Transformasi Fourier dan spektrum sinyal
    Dalam banyak kasus, tugas untuk mendapatkan (menghitung) spektrum sinyal adalah sebagai berikut. Ada sebuah ADC, yang dengan frekuensi sampling Fd mengubah sinyal kontinu, yang masuk ke input selama waktu T, menjadi sampel digital - N buah. Kemudian deretan sampel ini diumpankan ke suatu program (misalnya Cakupan Fourier) yang menghasilkan N/2 beberapa nilai numerik.
    Untuk memeriksa apakah program bekerja dengan benar, kita membentuk sebuah array sampel sebagai jumlah dari dua sin(10*2*pi*x)+0.5*sin(5*2*pi*x) dan memasukkannya ke dalam program. Program tersebut menghasilkan gambar berikut:
Transformasi Fourier dan spektrum sinyal

Gbr.1 Grafik fungsi waktu dari sinyal

 

Gbr.2 Grafik spektrum sinyal

Gbr.2 Grafik spektrum sinyal

 

Ada dua harmonik pada grafik spektrum - 5 Hz dengan amplitudo 0,5 V dan 10 Hz dengan amplitudo 1 V, semuanya seperti dalam rumus sinyal asli. Semuanya baik-baik saja, program bekerja dengan benar.

Ini berarti bahwa jika kita memasukkan sinyal nyata dari campuran dua sinusoid ke input ADC, kita akan mendapatkan spektrum yang sama yang terdiri dari dua harmonik.

Jadi, kami nyata sinyal yang diukur dengan durasi 5 detikdidigitalkan oleh ADC, yaitu diwakili oleh diskrit sampel, memiliki diskrit non-periodik spektrum.
Dari sudut pandang matematis - berapa banyak kesalahan dalam frasa ini?

Sekarang, mari kita coba mengukur sinyal yang sama selama 0,5 detik.

Gbr.3 Grafik fungsi sin(10*2*pi*x)+0,5*sin(5*2*pi*x) untuk periode pengukuran 0,5 detik

Gbr.3 Grafik fungsi sin(10*2*pi*x)+0,5*sin(5*2*pi*x) untuk periode pengukuran 0,5 detik

 

Gbr.4 Spektrum fungsi

Gbr.4 Spektrum fungsi

 

Ada sesuatu yang salah di sini! Harmonik pada 10 Hz tergambar secara normal, dan alih-alih harmonik pada 5 Hz, terdapat beberapa harmonik yang tidak jelas.

Di Internet, mereka mengatakan bahwa Anda perlu menambahkan angka nol pada akhir sampel dan spektrum akan tergambar secara normal.

Gbr.5 Kami telah menambahkan angka nol ke sampel hingga 5 detik

Gbr.5 Kami telah menambahkan angka nol ke sampel hingga 5 detik

 

Gbr.6. Spektrum yang diperoleh.

Gbr.6. Spektrum yang diperoleh.

 

Sama sekali bukan itu. Saya harus berurusan dengan teorinya. Mari kita pergi ke wikipedia - sumber pengetahuan.

2. Fungsi kontinu dan representasi deret Fourier-nya
Secara matematis, sinyal kita dengan durasi T detik adalah suatu fungsi f(x) yang diberikan pada interval {0, T} (X dalam hal ini adalah waktu). Fungsi seperti itu selalu dapat direpresentasikan sebagai jumlah fungsi harmonik (sinus atau kosinus) dari bentuk tersebut:

Fungsi kontinu dan representasi deret Fourier-nya

 (1), di mana:

k adalah jumlah fungsi trigonometri (jumlah komponen harmonik, jumlah harmonik)
T - segmen di mana fungsi didefinisikan (durasi sinyal)
Ak- amplitudo komponen harmonik ke-k,
θk- fase awal dari komponen harmonik ke-k
Apa yang dimaksud dengan "merepresentasikan fungsi sebagai jumlah deret"? Artinya, dengan menambahkan nilai komponen harmonik dari deret Fourier pada setiap titik, kita mendapatkan nilai fungsi pada titik tersebut.
(Lebih tepatnya, deviasi kuadrat rata-rata dari deret dari fungsi f(x) akan cenderung nol, tetapi terlepas dari konvergensi kuadrat rata-rata, deret Fourier dari suatu fungsi tidak perlu, secara umum, konvergen ke fungsi tersebut titik demi titik. )
Seri ini juga dapat ditulis dalam bentuk:

(2),

(2),

 

 

 

di mana , amplitudo kompleks ke-k.

 

atau

 (3)

(3)

 

 

 

Hubungan antara koefisien (1) dan (3) dinyatakan dengan rumus berikut:

 

 

 

 

Perhatikan bahwa ketiga representasi deret Fourier ini sangat setara. Kadang-kadang ketika bekerja dengan deret Fourier, akan lebih mudah untuk menggunakan eksponen argumen imajiner alih-alih sinus dan kosinus, yaitu menggunakan transformasi Fourier dalam bentuk yang kompleks. Tetapi akan lebih mudah bagi kita untuk menggunakan rumus (1), di mana deret Fourier direpresentasikan sebagai jumlah kosinus dengan amplitudo dan fase yang sesuai. Bagaimanapun, adalah salah untuk mengatakan bahwa hasil transformasi Fourier dari sinyal yang sebenarnya adalah amplitudo harmonik yang kompleks. Seperti yang dikatakan Wiki dengan tepat, "Transformasi Fourier (ℱ) adalah operasi yang memetakan satu fungsi dari variabel nyata ke fungsi lain yang juga merupakan variabel nyata."

 

Intinya:
Dasar matematis untuk analisis spektral sinyal adalah transformasi Fourier.

Transformasi Fourier memungkinkan untuk merepresentasikan fungsi kontinu f(x) (sinyal) yang didefinisikan pada interval {0, T} sebagai jumlah tak terbatas (deret tak terbatas) dari fungsi trigonometri (sinus dan/atau kosinus) dengan amplitudo dan fase yang juga dipertimbangkan pada interval {0, T}. Deret seperti ini disebut deret Fourier.

Perhatikan beberapa poin lagi, yang pemahamannya diperlukan untuk penerapan transformasi Fourier yang benar pada analisis sinyal. Jika kita mempertimbangkan deret Fourier (jumlah sinusoida) pada seluruh sumbu X, kita akan melihat bahwa di luar interval {0, T} fungsi deret Fourier akan mengulangi fungsi kita secara berkala.

Sebagai contoh, dalam grafik pada Gbr. 7, fungsi asli didefinisikan pada interval {-T\2, +T\2}, dan deret Fourier merepresentasikan fungsi periodik yang didefinisikan pada seluruh sumbu x.

Hal ini karena sinusoid itu sendiri merupakan fungsi periodik, sehingga penjumlahannya juga merupakan fungsi periodik.

Gambar 7 Representasi fungsi sumber non-periodik dengan deret Fourier

Gambar 7 Representasi fungsi sumber non-periodik dengan deret Fourier

Dengan demikian:

Fungsi asli kami adalah fungsi kontinu dan non-periodik yang didefinisikan pada beberapa segmen dengan panjang T.
Spektrum fungsi ini bersifat diskrit, yaitu direpresentasikan sebagai rangkaian komponen harmonik yang tak terbatas - deret Fourier.
Faktanya, deret Fourier mendefinisikan beberapa fungsi periodik, yang bertepatan dengan fungsi kita pada interval {0, T}, tetapi bagi kami periodisitas ini tidak penting.

Berikutnya.

Periode komponen harmonik adalah kelipatan dari interval {0, T}, di mana fungsi awal f(x) didefinisikan. Dengan kata lain, periode harmonik adalah kelipatan dari durasi pengukuran sinyal. Sebagai contoh, periode harmonik pertama dalam deret Fourier sama dengan interval T di mana fungsi f(x) didefinisikan. Periode harmonik kedua dalam deret Fourier sama dengan interval T/2. Dan seterusnya (lihat Gambar 8).

Gbr. 8 Periode (frekuensi) komponen harmonik dari deret Fourier (di sini T=2π)

Gbr. 8 Periode (frekuensi) komponen harmonik dari deret Fourier (di sini T=2π)

Oleh karena itu, frekuensi komponen harmonik adalah kelipatan 1/T. Artinya, frekuensi komponen harmonik Fk adalah Fk= k\T, di mana k memiliki nilai dari 0 hingga ∞, misalnya, k=0 F0=0; k=1 F1=1\T; k=2 F2=2\T; k=3 F3=3\T; .... Fk= k\T (pada frekuensi nol, komponen konstan).

Misalkan fungsi awal kita, adalah sinyal yang direkam selama T = 1 detik. Maka periode harmonik pertama akan sama dengan durasi sinyal kita T1 = T=1 detik dan frekuensi harmonik sama dengan 1 Hz. Periode harmonik kedua akan sama dengan durasi sinyal kita dibagi 2 (T2 = T/2 = 0,5 detik) dan frekuensinya sama dengan 2 Hz. Untuk harmonik ketiga, T3 = T/3 detik dan frekuensinya adalah 3 Hz. Dan seterusnya.

Langkah di antara harmonik dalam kasus ini adalah 1 Hz.

Dengan demikian, sinyal dengan durasi 1 detik dapat diuraikan menjadi komponen harmonik (untuk mendapatkan spektrum) dengan resolusi frekuensi 1 Hz.
Untuk meningkatkan resolusi dengan faktor 2 hingga 0,5 Hz, perlu meningkatkan durasi pengukuran dengan faktor 2 hingga 2 detik. Sinyal 10 detik dapat diuraikan menjadi komponen harmonik (spektrum) dengan resolusi frekuensi 0,1 Hz. Tidak ada cara lain untuk meningkatkan resolusi frekuensi.

Ada cara untuk meningkatkan durasi sinyal secara artifisial dengan menambahkan angka nol ke susunan sampel. Tetapi ini tidak meningkatkan resolusi frekuensi yang sebenarnya.

3. Sinyal diskrit dan transformasi Fourier diskrit
Dengan berkembangnya teknologi digital, cara penyimpanan data pengukuran (sinyal) telah berubah. Jika sebelumnya sinyal dapat direkam pada tape recorder dan disimpan pada kaset dalam bentuk analog, sekarang sinyal didigitalisasi dan disimpan dalam file di memori komputer sebagai sekumpulan angka (hitungan).

Skema pengukuran dan digitalisasi sinyal yang biasa terlihat sebagai berikut.

Transduser pengukur - Penormalisasi sinyal - ADC - Komputer
(Gbr.9 Skema saluran pengukuran)

Sinyal dari transduser pengukur masuk ke ADC selama periode waktu T. Pembacaan sinyal (sampling) yang diterima selama waktu T ditransmisikan ke komputer dan disimpan dalam memori.

Gbr.10 Sinyal digital - N sampel yang diterima untuk waktu T

Gbr.10 Sinyal digital - N sampel yang diterima untuk waktu T

Apa saja persyaratan untuk parameter digitalisasi sinyal? Perangkat yang mengubah sinyal analog input menjadi kode diskrit (sinyal digital) disebut konverter analog-ke-digital (ADC) (© Wiki).

Salah satu parameter dasar ADC adalah laju sampling maksimum - frekuensi pengambilan sampel sinyal yang kontinu dalam waktu. Laju sampel diukur dalam hertz. ((© Wiki))

Menurut teorema Kotelnikov, jika sinyal kontinu memiliki spektrum yang dibatasi oleh frekuensi Fmax, maka sinyal tersebut dapat direkonstruksi secara penuh dan unik dari sampel diskrit yang diambil pada interval waktu T = 1/2*Fmax, yaitu dengan frekuensi Fd ≥ 2*Fmax, di mana Fd - frekuensi pengambilan sampel; Fmax - frekuensi maksimum spektrum sinyal. Dengan kata lain, frekuensi digitalisasi sinyal (frekuensi sampling ADC) harus setidaknya 2 kali lebih tinggi dari frekuensi maksimum sinyal yang ingin kita ukur.

Dan apa yang akan terjadi jika kita mengambil sampel dengan frekuensi yang lebih rendah daripada yang disyaratkan oleh teorema Kotelnikov?

Dalam hal ini terdapat efek "aliasing" (alias efek stroboskopik, efek moiré), di mana sinyal frekuensi tinggi setelah didigitalkan berubah menjadi sinyal frekuensi rendah, yang sebenarnya tidak ada. Pada Gbr. 11, gelombang sinus merah frekuensi tinggi adalah sinyal yang sesungguhnya. Gelombang sinus biru dengan frekuensi yang lebih rendah adalah sinyal fiktif, yang timbul karena fakta bahwa selama waktu pengambilan sampel memiliki waktu untuk melewati lebih dari setengah periode sinyal frekuensi tinggi.

Gbr. 11. Penampilan sinyal frekuensi rendah palsu pada laju sampling yang tidak cukup tinggi

Gbr. 11. Penampilan sinyal frekuensi rendah palsu pada laju sampling yang tidak cukup tinggi

 

Untuk menghindari efek aliasing, filter anti-alias khusus (low-pass filter) ditempatkan sebelum ADC. Filter ini melewatkan frekuensi yang lebih rendah dari setengah frekuensi pengambilan sampel ADC dan memotong frekuensi yang lebih tinggi.

Untuk menghitung spektrum sinyal berdasarkan sampel diskritnya, digunakan transformasi Fourier diskrit (DFT). Perhatikan lagi bahwa spektrum sinyal diskrit "menurut definisi" terbatas pada frekuensi Fmax yang lebih kecil dari setengah frekuensi pengambilan sampel Fd. Oleh karena itu, spektrum sinyal diskrit dapat diwakili oleh jumlah yang terbatas jumlah harmonisa, berbeda dengan jumlah tak terbatas untuk deret Fourier dari sinyal kontinu, yang spektrumnya bisa tidak terbatas. Menurut teorema Kotelnikov, frekuensi maksimum harmonik harus sedemikian rupa sehingga setidaknya terdiri dari dua sampel, sehingga jumlah harmonik sama dengan setengah jumlah sampel sinyal diskrit. Artinya, jika ada N sampel dalam sampel, jumlah harmonik dalam spektrum adalah N/2.

Sekarang pertimbangkan transformasi Fourier diskrit (DFT).

Membandingkannya dengan deret Fourier

 

Seperti yang bisa kita lihat, keduanya bertepatan, kecuali fakta bahwa waktu dalam FFT adalah diskrit dan jumlah harmonik dibatasi hingga N/2, yang merupakan setengah dari jumlah sampel.

Rumus DFT ditulis dalam variabel bilangan bulat tak berdimensi k, s, di mana k adalah jumlah sampel sinyal, s adalah jumlah komponen spektral.
Nilai s menunjukkan jumlah osilasi harmonik penuh per periode T (durasi pengukuran sinyal). Transformasi Fourier diskrit digunakan untuk menemukan amplitudo dan fase harmonik secara numerik, yaitu "di komputer".

Seperti yang telah dikatakan di atas, ketika menguraikan fungsi non-periodik (sinyal kita) ke dalam deret Fourier, deret Fourier yang dihasilkan sebenarnya sesuai dengan fungsi periodik dengan periode T (Gbr. 12).

 

Gbr.12. Fungsi periodik f(x) dengan periode T0, dengan periode T>T0

Gbr.12. Fungsi periodik f(x) dengan periode T0, dengan periode T>T0

 

Seperti yang dapat dilihat pada Gbr. 12, fungsi f(x) adalah periodik dengan periode T0. Namun, karena panjang sampel pengukuran T tidak sama dengan periode fungsi T0, maka fungsi yang diperoleh sebagai deret Fourier memiliki diskontinuitas pada titik T. Akibatnya, spektrum fungsi ini akan mengandung sejumlah besar harmonisa frekuensi tinggi. Jika durasi pengukuran sampel T sama dengan periode fungsi T0, maka spektrum yang diperoleh setelah transformasi Fourier hanya akan berisi harmonik pertama (sinusoid dengan periode yang sama dengan durasi sampel), karena fungsi f(x) adalah sinusoid.

Dengan kata lain, program DFT "tidak mengetahui" bahwa sinyal kita adalah "potongan gelombang sinus", tetapi mencoba merepresentasikan sebagai sebuah rangkaian fungsi periodik yang memiliki diskontinuitas karena diskontinuitas potongan-potongan gelombang sinus yang terpisah.

Akibatnya, harmonik muncul dalam spektrum, yang seharusnya, secara total, merepresentasikan bentuk fungsi, termasuk diskontinuitas ini.

Dengan demikian, untuk mendapatkan spektrum yang "benar" dari sinyal yang merupakan jumlah dari beberapa sinusoid dengan periode yang berbeda, diperlukan sebuah bilangan bulat jumlah periode dari setiap sinusoid harus ada pada periode pengukuran sinyal. Dalam praktiknya, kondisi ini dapat dipenuhi dengan durasi pengukuran sinyal yang cukup panjang.

 

Gbr.13 Contoh fungsi sinyal kesalahan kinematik dan spektrum gearbox

Gbr.13 Contoh fungsi sinyal kesalahan kinematik dan spektrum gearbox

 

Pada durasi yang lebih pendek, gambar akan terlihat "lebih buruk":

 

Gbr.14 Contoh fungsi dan spektrum getaran rotor

Gbr.14 Contoh fungsi dan spektrum getaran rotor

 

 

 

Dalam praktiknya, mungkin sulit untuk memahami di mana "komponen nyata" dan di mana "artefak" yang disebabkan oleh ketidakkonsistenan periode komponen dan durasi pengambilan sampel sinyal atau "lompatan dan jeda" dalam bentuk gelombang. Tentu saja, kata "komponen nyata" dan "artefak" diletakkan dalam tanda kutip karena suatu alasan. Kehadiran banyak harmonisa pada grafik spektrum tidak berarti bahwa sinyal kita benar-benar terdiri dari harmonisa. Ini seperti berpikir bahwa angka 7 "terdiri" dari angka 3 dan 4. Angka 7 dapat dianggap sebagai jumlah dari 3 dan 4 - itu benar.

Begitu juga dengan sinyal kita... atau lebih tepatnya bukan "sinyal kita", tetapi fungsi periodik yang disusun dengan mengulang sinyal (sampel) kita dapat direpresentasikan sebagai jumlah harmonisa (gelombang sinus) dengan amplitudo dan fase tertentu. Tetapi dalam banyak kasus yang penting untuk praktik (lihat gambar di atas), memang mungkin untuk menghubungkan harmonisa yang diperoleh dalam spektrum juga dengan proses nyata yang memiliki karakter siklik dan berkontribusi secara signifikan terhadap bentuk sinyal.

Beberapa hasil
1. Sinyal terukur nyata dengan durasi T detik yang didigitalkan oleh ADC, yaitu diwakili oleh sekumpulan sampel diskrit (N buah), memiliki spektrum non-periodik diskrit yang diwakili oleh sekumpulan harmonik (N/2 buah).

2. Sinyal diwakili oleh satu set nilai yang valid dan spektrumnya diwakili oleh satu set nilai yang valid. Frekuensi harmonisa adalah positif. Hanya karena secara matematis lebih mudah untuk merepresentasikan spektrum dalam bentuk kompleks dengan menggunakan frekuensi negatif, bukan berarti bahwa "ini benar" dan "inilah cara yang seharusnya Anda lakukan".

3. Sinyal yang diukur pada waktu T hanya ditentukan pada waktu T. Apa yang terjadi sebelum kita mulai mengukur sinyal dan apa yang akan terjadi setelah itu tidak diketahui oleh sains. Dan dalam kasus kami, hal ini tidak menarik. FFT dari sinyal terbatas waktu memberikan spektrum "nyata", dalam arti bahwa dalam kondisi tertentu memungkinkan untuk menghitung amplitudo dan frekuensi komponennya.

 

Kategori: Contoh

id_IDID