6
Faadhil As-sayfullooh 7509040015 IMPLEMENTASI FILTER DIGITAL IIR BUTTERWORTH PADA DSP STARTER KIT TMS320C3x Filter digital memiliki banyak kelebihan dibandingkan dengan pasangannya filter analog, ba performa yang lebih tinggi dengan transition zone yang lebih kecil, ketahanan, serta fleksibilitas dala menentukan range kerjanya (Smith, 1997: 327). Karena faktor-faktor ini, filter digital mer penting dalam bidang DSP ( Digital Signal Processing ). Terdapat dua metoda untuk mendisain sebuah filter digital. Metoda pertama dengan menggunakan proses konvolusi antara sinyal input den response dari filter yang dikehendaki, filter jenis ini disebut filter FIR ( Finite Impulse Response ). Metoda kedua adalah dengan proses rekursif, yang merupakan kelanjutan dari metoda konvolusi. Bila proses konvolusi perhitungan dilakukan dengan hanya menggunakan sampel input saja, maka da proses rekursif perhitungan dilakukan dengan sampel input yang dijumlahkan dengan sampel o sebelumnya. Hal ini membuat impulse response filter menjadi sangat panjang mendekati titik berhingga ( infinity ), oleh karena itu filter jenis ini disebut filter IIR ( Infinite Impulse Response ). Konfigurasi Butterworth adalah salah satu konfigurasi standar dari filter rekursif baik da analog maupun digital. Konfigurasi ini menekankan pada aproksimasi karakteristik lowpass dengan hasil respons yang mendekati titk nol dengan halus dan rata ( smooth and flat ) (Soliman.Srinath, 1990: 436). Filter Butterworth didefinisikan melalui persamaan magnitude function H(ω) sebagai berikut: di mana N adalah nilai orde filter. Jelas dari rumus di atas bahwa magnitude function Butterworth adalah fungsi frekuensi ( ) yang menurun secara monoton, dengan nilai maksimumnya dari unity terjadi pada saat = 0. Untuk = 1, nilai magnitude adalah sama dengan 1 2 untuk semua nilai N . Dengan demikian, filter Butterworth dalam bentuk normal memiliki frekuensi cutoff sebesar 3 dB. Gambar 1. menunjukkan plot dari karakteristik magnitude dari filter ini sebagai fungsi frekuensi ( ) untuk beberapa tingkatan orde. Nampak bahwa semakin tinggi tingkatan orde, karakteristik filter Butterworth semakin mendekati filter i Gambar 1. Magnitude response dari filter Butterworth bentuk normal untuk berbagai tingkatan ord

Implementasi Filter Digital Iir

Embed Size (px)

Citation preview

Faadhil As-sayfullooh 7509040015

IMPLEMENTASI FILTER DIGITAL IIR BUTTERWORTH PADA DSP STARTER KIT TMS320C3xFilter digital memiliki banyak kelebihan dibandingkan dengan pasangannya filter analog, baik dalam performa yang lebih tinggi dengan transition zone yang lebih kecil, ketahanan, serta fleksibilitas dalam menentukan range kerjanya (Smith, 1997: 327). Karena faktor-faktor ini, filter digital merupakan elemen penting dalam bidang DSP (Digital Signal Processing). Terdapat dua metoda untuk mendisain sebuah filter digital. Metoda pertama dengan menggunakan proses konvolusi antara sinyal input dengan impulse response dari filter yang dikehendaki, filter jenis ini disebut filter FIR (Finite Impulse Response). Metoda kedua adalah dengan proses rekursif, yang merupakan kelanjutan dari metoda konvolusi. Bila dalam proses konvolusi perhitungan dilakukan dengan hanya menggunakan sampel input saja, maka dalam proses rekursif perhitungan dilakukan dengan sampel input yang dijumlahkan dengan sampel output sebelumnya. Hal ini membuat impulse response filter menjadi sangat panjang mendekati titik tak berhingga (infinity), oleh karena itu filter jenis ini disebut filter IIR (Infinite Impulse Response). Konfigurasi Butterworth adalah salah satu konfigurasi standar dari filter rekursif baik dalam bentuk analog maupun digital. Konfigurasi ini menekankan pada aproksimasi karakteristik lowpass dengan hasil respons yang mendekati titk nol dengan halus dan rata (smooth and flat) (Soliman.Srinath, 1990: 436). Filter Butterworth didefinisikan melalui persamaan magnitude function H() sebagai berikut:

di mana N adalah nilai orde filter. Jelas dari rumus di atas bahwa magnitude function Butterworth adalah fungsi frekuensi () yang menurun secara monoton, dengan nilai maksimumnya dari unity terjadi pada saat = 0. Untuk = 1, nilai magnitude adalah sama dengan 1 2 untuk semua nilai N. Dengan demikian, filter Butterworth dalam bentuk normal memiliki frekuensi cutoff sebesar 3 dB. Gambar 1. menunjukkan plot dari karakteristik magnitude dari filter ini sebagai fungsi frekuensi () untuk beberapa tingkatan orde. Nampak bahwa semakin tinggi tingkatan orde, karakteristik filter Butterworth semakin mendekati filter ideal.

Gambar 1. Magnitude response dari filter Butterworth bentuk normal untuk berbagai tingkatan orde

Faadhil As-sayfullooh 7509040015 DSK TMS320C3x DSK TMS320C3x adalah salah satu dari seri DSP Starter Kit keluaran Texas Instrument. Board DSK TMS320C3x dapat dilihat pada Gambar 2. beserta skema umum DSK TMS320C3x pada Gambar 3. Perangkat DSK yang berbasis mikroprosessor TMS320C31-50 ini dapat digunakan untuk berbagai macam fungsi DSP, termasuk sebagai sebuah filter digital (Texas instrument, 1996: I-3).

Gambar 2. Skema umum DSK TMS320C3x

Gambar 3. Skema umum dari DSK TMS320C3x Komponen-komponen penting yang terdapat dalam kit ini adalah: 1. Mikroprosessor floating-point TMS320C31-50, prosessor ini dilengkapi dengan memori kerja sebesar 16 MWord. 2. Chip konverter DAC/ADC AIC TLC32040, yang berguna untuk menerima input analog dari sumber (Signal Generator) kemudian merubahnya kedalam bentuk digital 16 bit, dan begitu pula sebaliknya agar hasil filtering dari DSK dapat ditampilkan dalam instrument pengukur analog (Oscilloscope). Board DSK ini terhubung dengan sebuah mikrokomputer melalui jalur parallel port. Mikrokomputer berfungsi sebagai host yang menyediakan proses assembling dan debugging yang diperlukan dalam mengolah source code yang berisi perintah untuk dijalankan oleh mikroprosessor. Perancangan Filter IIR Terdapat dua buah metoda untuk mendisain sebuah filter digital IIR, yaitu metoda disain secara langsung (direct design) dan metoda disain secara tak langsung (indirect design). Proses direct design memerlukan perhitungan aproksimasi matematis dan akan membutuhkan pemakaian perhitungan differensial yang

Faadhil As-sayfullooh 7509040015 rumit untuk setiap nilai parameter dari transfer function filter yang dikehendaki. Hal ini membuat persamaan matematis filter tersebut menjadi non-linier dan sukar dipecahkan (Antoniou, 1993: 294). Untuk mendapatkan hasil perhitungan biasanya diperlukan bantuan algoritma metode numerik dengan sebuah komputer. Metoda disain secara tak langsung relatif lebih sederhana dan lebih mudah dilakukan. Metoda ini terbagi dalam dua langkah utama, yaitu: 1. Mendisain secara matematis sebuah filter prototype berupa sebuah filter analog dengan spesifikasi yang diinginkan. Dari filter analog ini kemudian dicari persamaan transfer function analognya H(s). 2. Transfer function dari filter prototype kemudian ditransformasikan kedalam bentuk diskritnya. Proses transformasi ini dapat menggunakan beberapa macam metoda, seperti impulse-invariant dan billinear transformation. Disain Model Analog Persamaan umum filter Butterworth yang telah dibahas sebelumnya yang dapat ditulis kembali dalam bentuk:

Dimana parameter c yang mewakili frekuensi kritis filter dan parameter N yang menyatakan tingkatan orde. Kemudian ditentukan nilai-nilai yang memenuhi kriteria untuk mendisain sebuah model filter lowpass dengan tingkat penguatan yang cukup dan zona transitional band yang tidak terlalu lebar, seperti: Frekuensi passband = 1000 Hertz Frekuensi stopband = 1900 Hertz Frekuensi sampling = 10 kiloHertz Atenuasi stopband minimum = -25 desiBell Atenuasi passband maksimum = -0.2 desiBell Untuk memperoleh transfer function H(s), pertama akan dihitung dahulu nilai toleransi magnitude pada stopband dan passband dalam karakteristik monoton Butterwoth: Pada passband, 20Log10(1-1) = -0.2 1 = 0.023 Pada stopband, 20Log10(2) = -25 2 = 0.056 Selanjutnya, nilai parameter 1 dan 2 akan digabungkan dengan nilai parameter frekuensi passband (p) sebesar 1000 Hz dan nilai parameter s diperoleh dari nilai frekuensi stopband (s ) sebesar 1900 Hz guna mendapatkan tingkatan orde filter yang diperlukan dengan menggunakan persamaan:

Faadhil As-sayfullooh 7509040015 Setelah diperoleh tingkatan orde filter yang diperlukan, selanjutnya akan dicari persamaan transfer function dari filter dengan menggunakan persamaan polinom Butterworth. Untuk orde tiga, diperoleh persamaan polinom bentuk normal:

Setelah mendapatkan nilai kedua parameter 1 dan 2 serta tingkatkan orde filter yang diperlukan, maka dapat dicari nilai frekuensi kritis filter c:

Dengan mensubsitusikan nilai frekuensi kritis c sebesar 1252.6 Hz, makadapat dihitung persamaan transfer function:

Transformasi Bilinear dengan MatLab Setelah diperoleh transfer function H(s) dari filter prototype, persamaan ini kemudian akan ditransformasikan kedalam bentuk diskritnya melalui salah satu metoda transformasi yang tersedia. Metoda sering digunakan adalah transformasi Bilinear, karena metoda ini dikenal cukup akurat dan bebas gangguan seperti fenomena aliasing (Antoniou, 1993: 186 -187). Transformasi Bilinear dapat dilakukan dengan bantuan fungsi butter.m dari Signal Processing Toolbox program MatLab. Bentuk umum function butterm adalah: [A,B] = butter(N,Wn, var) Dimana: A, B : menyatakan hasil perhitungan koefisien filter, dalam bentuk

N : menyatakan tingkatan orde filter Wn : menyatakan frekuensi kritis filter var : menyatakan parameter tambahan yang tersedia dalam MatLab Dengan menggunakan nilai-nilai yang telah diperoleh dari filter prototype, maka dapat diperoleh nilai nilai koefisien transfer function H(z), yaitu :

Faadhil As-sayfullooh 7509040015

Pemrograman pada DSK TMS320C3x Board DSK TMS320C31-50 menyediakan software assembler dan debugger guna mengolah kode program dari pengguna agar dapat menjalankan fungsi-fungsi yang dikehendaki. Agar board DSK ini dapat mengimplementasikan sebuah filter digital Butterworth, maka perlu dibuatterlebih dahulu kode program dalam bahasa assembly keluaran Texas Instrument yang memuat langkah-langkah proses filtering tersebut.

Gambar 4. Struktur representasi rekursif persamaan digital filter Kode assembly ini kemudian akan dikompilasi dengan menggunakan software C3x DSP Starter Kit Assembler rev 1.18. Hasilnya berupa sebuah output file dengan ekstensi dsk. File dsk inilah yang kemudian diproses oleh debugger agar dapat digunakan oleh prosessor TMS320C31-50 dalam melakukan proses Butterworth filtering yang dikehendaki. Proses disain program utama dapat dibagi menjadi beberapa langkah atau prosedur, yaitu: 1. Prosedur utama program. Pada proses ini akan dilakukan proses perhitungan Butterworth filtering dengan menggunakan transfer function H(z) dan sampel sinyal input dari chip AIC. Proses ini menggunakan beberapa metoda pengalamatan dalam TMS320C3x dan registry yang tersedia. Prosedur ini ditulis dalam bahasa assembly Texas Instrument. 2. Prosedur inisialisasi timer prosessor. Prosessor TMS320C31-50 memiliki pin output pewaktu timer 0 yang disebut TLCK0. Pin berfungsi untuk menghubungkan pin master clock (MCLK) dari chip AIC TLC32040. 3. Prosedur inisialisasi port serial 0. Port serial ini berfungsi untukmengatur komunikasi antara mikroprosessor TMS320C31-50 dengan chip konverter AIC. 4. Prosedur inisialisasi chip AIC TLC32040. Prosedur ini akan mengatur kerja dari konverter ADC/DAC.

Faadhil As-sayfullooh 7509040015 5. Rutin interupsi ADC dan DAC. Rutin interupsi ADC bertugas untuk mengambil dan mengkonversikan data integer kedalam format floating point serta menyimpannya pada alamat memori tempat penyimpanan data sampel sinyal input. Sedangkan rutin interupsi DAC bertugas untuk menghitung nilai sinyal keluaran hasil proses Butterworth filtering dan mengkonversikannya kembali kadalam format data serial integer yang siap dikirim ke konektor keluaran. Referensi blog.trisakti.ac.id/jetri/files/2010/01/2.2.2irdasuhartatirobert.pdf