un

guest
1 / ?
back to lessons

Dari Respons Ideal ke Filter Praktis

Hamming menghadirkan metode desain empat langkah untuk filter FIR menggunakan serius Fourier.

Langkah 1: Spesifikasikan Respons Ideal

Tentukan H_ideal(f): respons frekuensi yang diinginkan secara tepat. Untuk filter lowpass: H = 1 untuk f < f_c, H = 0 untuk f > f_c. Ini adalah fungsi langkah dalam domain frekuensi.

Langkah 2: Hitung Koefisien Fourier

Ekspansikan H_ideal(f) sebagai serius Fourier dalam variabel frekuensi. Koefisien c_k adalah nilai respons impuls filter yang ideal:

c_k = ∫₀¹ H_ideal(f) · e^{i2πfk} df

Untuk filter lowpass dengan batas f_c: c_k = sin(2πf_c·k) / (πk) untuk k ≠ 0, c_0 = 2f_c.

Respons impuls ini adalah tak terhingga — fungsi sinc meluas selamanya dalam waktu. Filter praktis membutuhkan jumlah koefisien terbatas.

Langkah 3: Batasi ke 2N+1 Istilah

Tahan hanya koefisien c_k untuk |k| ≤ N. Ini jendela segiempat 2N+1 yang paling sederhana. Ini menghasilkan fenomena Gibbs: ≈9% overshoot dekat batas potong.

Langkah 4: Terapkan Jendela

Kali koefisien yang dibatasi dengan fungsi jendela w_k untuk mengurangi overshoot Gibbs:

c̃_k = c_k · w_k

Koefisien yang diaplikasikan jendela c̃_k menentukan filter praktis.

Fenomena Gibbs & Fungsi Jendela

Menghitung Koefisien Fourier

Rumus koefisien Fourier c_k = sin(2πf_c·k) / (πk) untuk filter lowpass dengan batas f_c memberikan respons impuls.

Untuk filter bandpass dengan batas bawah f_l dan atas f_u, koefisien Fourier untuk respons ideal adalah: c_k = [sin(2πf_u·k) − sin(2πf_l·k)] / (πk).

Untuk filter lowpass dengan batas f_c = 1/4, hitung koefisien Fourier c_k untuk k = 0, 1, 2, dan −1. Gunakan c_0 = 2f_c dan c_k = sin(2πf_c·k)/(πk) untuk k ≠ 0. Tunjukkan komputasi untuk setiap. Lalu jelaskan mengapa urutan koefisien simetris: c_k = c_{−k}.

Bagaimana Jendela Mengurangi Overshoot Gibbs

Fungsi jendela w_k melengkapi urutan koefisien yang di-trunaksi dari nilai tengah ke nol di pinggiran. Taper menghapuskan sisipan tepi yang dihasilkan oleh pemotongan persegi.

Mengapa Tapering Berfungsi

Overshoot Gibbs muncul karena transform Fourier jendela persegi (fungsi sinc) memiliki sisipan samping yang besar. Sisipan samping ini menambahkan di dekat ketidastuangannya untuk menghasilkan overshoot sekitar 9%.

Jendela halus memiliki transform Fourier dengan sisipan samping yang lebih kecil. Menggandakan koefisien dengan jendela menggabungkan respons frekuensi yang ideal dengan transform Fourier jendela. Sisipan samping yang lebih kecil → ripple yang lebih sedikit.

Jendela Umum

Persegi (tidak mengaplikasikan jendela): sisipan samping ≈ -13 dB, Gibbs ≈ 9%.

Hann (von Hann): w_k = 0.5 + 0.5·cos(πk/N). Sisipan samping ≈ -31 dB.

Hamming: w_k = 0.54 + 0.46·cos(πk/N). Sisipan samping ≈ -41 dB, sisipan samping pertama ≈ -43 dB. Gibbs < 0.2%.

Kaiser: w_k = I₀(α·√(1-(k/N)²)) / I₀(α). Dapat disesuaikan: α mengontrol tinggi sisipan samping, memungkinkan perancangan untuk saling menukar tinggi sisipan samping vs lebar jalur transisi.

Tradinof Window

Setiap jendela menimbulkan tradinof: mengurangi sisipan samping selalu memperlebar lobe utama.

Lobe utama yang lebih lebar berarti lebar jalur transisi yang lebih lebar - rentang frekuensi antara pasband dan stopband.

Hamming formalized ini dalam hal parameter desain Kaiser:

- δ: toleransi ripple yang diperbolehkan (toleransi vertikal dari ideal - seberapa jauh respons dapat deviasi dari 0 atau 1)

- ΔF: lebar transisi (toleransi horizontal - seberapa sempit transisi dari pas ke stop)

Metode Kaiser menemukan baik N (jumlah koefisien) dan α (parameter bentuk jendela) dari δ dan ΔF sendiri. Tidak menebak tipe jendela.

Spesifikasi filter memerlukan: ripple pasband ≤ 0.01 (δ = 0.01) dan lebar jalur transisi ΔF = 0.05 (dibandingkan). Filter kedua memerlukan: ripple pasband ≤ 0.001 (δ = 0.001) dan lebar jalur transisi yang sama ΔF = 0.05. Filter mana yang memerlukan koefisien N yang lebih banyak? Jelaskan hubungan antara toleransi ripple δ dan urutan filter N dalam desain seri Fourier.

Dari Spesifikasi ke Koefisien

Metode Kaiser mengambil dua spesifikasi — δ (toleransi gelombang) dan ΔF (lebar transisi) — dan menghasilkan baik N dan koefisien jendela tanpa mencoba dan error.

Urutan Desain

1. Hitung A = −20·log₁₀(δ) (pengurangan dalam dB)

2. Hitung parameter bentuk α:

- Jika A > 50: α = 0.1102·(A − 8.7)

- Jika 21 ≤ A ≤ 50: α = 0.5842·(A − 21)^{0.4} + 0.07886·(A − 21)

- Jika A < 21: α = 0 (jendela persegi)

3. Hitung N = (A − 8) / (2.285 · 2πΔF)

4. Hitung bobot jendela Kaiser: w_k = I₀(α·√(1−(k/N)²)) / I₀(α)

5. Kalikan koefisien Fourier ideal dengan bobot jendela

6. Evaluasi fungsi transfer yang dihasilkan dan periksa gelombang terhadap δ. Jika gelombang melebihi δ (interferensi tepi), ulangi dengan toleransi yang lebih kecil.

Hamming mencatat: Kaiser tiba di eksponen 0.4 dengan mencoba 0.5 (terlalu besar) dan menemukan 0.4 cocok sangat baik. Komputer digunakan sebagai alat eksperimen untuk penelitian teoritis.

Penggunaan Metode Kaiser

Fungsi Bessel I₀(x) muncul dalam rumus jendela Kaiser. Ia menghitung sebagai sebuah seri konvergen cepat:

I₀(x) = Σ_{m=0}^∞ [(x/2)^m / m!]²

Untuk x kecil, seri tersebut konvergen dalam beberapa istilah karena m!² dalam penampang pembilang.

Suatu filter lowpass memerlukan δ = 0.01 (1% ripple) dan ΔF = 0.1 (10% dari laju sampling sebagai lebar transisi). Menggunakan rumus Kaiser: A = −20·log₁₀(0.01) = 40 dB. Karena 21 ≤ 40 ≤ 50, gunakan α = 0.5842·(A−21)^(0.4) + 0.07886·(A−21). Hitung α. Kemudian gunakan N = (A−8)/(2.285·2πΔF) untuk menghitung jumlah koefisien filter. Bulatkan N ke bilangan bulat terdekat.