Anda di halaman 1dari 32

LAPORAN

EKSPERIMEN PEMROSESAN SINYAL DIGITAL 1


DESAIN FIR METODE OPTIMAL

Disusun oleh :

Nama

: Ryan Eko Saputro

NIM

: 12/331380/PA/14638

Assisten

: Rahmawan Budikusumo

UNIT LAYANAN ELEKTRONIKA DAN UNIT LAYANAN INSTRUMENTASI


JURUSAN ILMU KOMPUTER DAN ELEKTRONIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS GADJAH MADA
YOGYAKARTA

2015

I.

TUJUAN
Mengoptimalkan metode Fourier Transform
Dapat menggunakan dan mengaplikasikan metode optimal

II.

DASAR TEORI

Filter digital adalah suatu piranti yang sangat dibutuhkan oleh sistemsistem elektronika,
misalnya saja untuk pengolahan sinyal audio dan image processing. Kita dapat
menggunakan filter analog untuk melakukan tugas ini, namun filter digital memberikan
fleksibilitas dan akurasi yang lebih baik dibanding filter analog. Filter digital dapat dibagi
menjadi dua yaitu filter digital IIR (Infinite Impulse Response) dan filter digital FIR (Finite
Impulse Response). Ada beberapa metode untuk merancang filter digital FIR. Salah satu
metode yang sering digunakan adalah metode optimal.
1. Filter Digital FIR ( Finite Impulse Response)
Filter digital dalam konteks software adalah suatu prosedur matematika / algoritma yang
mengolah sinyal masukan digital dan menghasilkan isyarat keluaran digital dengan sifat
tertentu sesuai tujuan filter. Banyak sistem digital menggunakan pemfilteran sinyal
untuk :
Memisahkan sinyal sinyal yang telah digabung, misalnya rekaman musik dan
noise yang tercampur selama proses perekaman
Memisahkan sinyal sinyal sesuai dengan frekuensi yang diinginkan
Restorasi sinyal yang telah mengalami perubahan
Dua jenis filter digital yang menyediakan fungsi fungsi di atas adalah filter Finite
Impulse Response (FIR) dan filter Infinite Impulse Response (IIR). Pembagian ini
berdasarkan pada respon impuls filter tersebut. FIR memiliki respon impuls yang
panjangnya terbatas, sedangkan IIR tidak terbatas. FIR sering juga disebut sebagai filter
non-rekursif dan IIR sebagai filter rekursif. Pembagian ini berdasarkan pada cara
pengimplementasian filter yaitu rekursif dan konvolusi (non-rekursif). Bila
dibandingkan dengan filter IIR, filter FIR memiliki beberapa kelebihan, diantaranya :

Dapat didesain dengan mudah agar memiliki fasayang linear


Memiliki kestabilan
Mudah diimplementasikan
Pengaruh kesalahan karena pembulatan dan pemotongan dapat dengan mudah
diminimumkan dalam implementasi

Disamping kelebihannya, filter FIR juga memiliki kekurangan yaitu berdasarkan


teori memerlukan lebih banyak perhitungan untuk mendapatkan karakteristik respon
filter yang diinginkan, sehingga akan dibutuhkan lebih banyak memori bila filter
rancangan diaplikasikan pada hardware (Digital Signal Processor).
Proses pendesainan filter meliputi identifikasi koefisien-koefisien yang
bersesuaian dengan respon frekuensi spesifikasi untuk sistem. Koefisien-koefisien
menentukan respon dari filter.

2. Metode Optimal
Kunci dari penggunaan metode ini adalah penggunaan fungsi remez. remez akan
memdesain fase linear FIR menggunakan algoritma Park-McClellan. Biasa disebut dengan
metode Remez.
Metode ini mendesain secara optimal fase linear filter
Metode ini merupakan metode standar untuk membuat FIR filter
Metodologi yang dibuat akan mendesain filter simetris yang meminimalisasi panjang
pada desain constrains{p, s, p, s}.
Hasil dari filter meminimalisasi error antara frekuensi yang diinginkan dengan frekuensi
yang didapat dengan menyebarkan kesalahan pendekatan pada masing masing band
(band stop dan band pass).
Filter tersebut yang menunjukkan ripple yang bain pada kedua passband dan stopband
maka sering disebut equiripple filters.

Dengan ripple dan attenuasi sudah ditentukan untuk menjadi metode optimal.
Pengurangan error dapat dengan megalikan ds dan dp ( dengan sebelumnya digunakan
ds dan dp niali absolut) dengan weight (ws wp) sebagai patokan ideal.
maka :

Lalu didapat Ws dan Wp sebagai faktor error weight. Penggunaan Remez sebagai
perhitungan coefisien filter. Dengan sintaks fungsi : b = remez(n,f,a)
sintaks b merupakan vector baris yang menyatakan n+1 koefisien dari n FIR dengan
frekuensi amplitude yang karakteristiknya diberikan oleh vector f dan a. Output filter
coefisien (taps) dalam b relasinya :

Dengan vector f dan a mempunyai frekuensi-magnitude filter sebagai berikut :

adalah vector dengan sepasang frekuensi point yang mempunyai spesifikasi range dari
0 dan 1, ketika 1 akan menjadi setengah dari frekuensi sampling (Nyquist frequency).

adalah vector yang memuat amplitude yang diinginkan dengan spesifikasi point pada
vector f.
dan a harus sama dimensinya dan dimensinya harus berupa angka.

Hubungan dari keduanya dapat dilihat pada bagan berikut :

remez(n,f,a,w)

menggunakan weights pada vector w sehingga dapat pas tepat pada setiap
band frekuensi panjang dari w adalah setengah dari panjang f san a maka terlihat satu 1 weight
per band. Dengan Ws dan Wp sebagai faktor error weight.

III.

HASIL OUTPUT DAN LISTING


A. Low Pass Filter
1. Frekuensi respon dari lowpass filter setelah menggunakan metode optimal

2. Impuls respon dari lowpass filter setelah mengguakana metode optimal

Low Pass Filter


Bagian
ke-

Listing kode

Penjabaran arti

fs = 8000;
fold = fs/2;
stop = 40;

Pendeklarasian frekuensi sampling sebesar


8000Hz, dengan fold atau setengah dari
frekuensi sampling sebesar 4000Hz. dan
stopband attenuation sebesar 40dB

k1
k2
k3
k4

Pendeklarasian setiap koefisien dari


k1,k2,k3,dan k4

dp = 10^(1/20)-1;
ds = 10^(-stop/20);

Pendeklarasian nilai dari ds sebagai


pasband ripple dan stopband attenuation
(dalam magnutide)

ws = dp;
wp = ds;

Pendeklarasian nilai ws sebagai fraction


form (denumerator) dan wp sebagai
fraction form (numerator)

f = [k1 k2 k3 k4];
m = [1 1 0 0 ];
w = [wp ws];

Pendeklarasian nilai f yang berisi koefisien


dan nilaim yang berisi magnitude 1 1 0 0
(low pass)

figure(1);
b = remez(36,f,m,w);
freqz(b,1,512,fs);
axis([0 fs/2 -80 10]);

Mengaplikasikan fungsi remez dan di cetak


pada figure 1 . dengan filter order 36

figure(2);
stem(b);

Mencetak nilai b (berupa impuls respon) ke


figure 23

=
=
=
=

0/fold;
1200/fold;
1500/fold;
4000/fold;

Menampilkan frekuensi respon dengan


penggunaan numerator b (fungsi remez),
frekuensi sampling 8000Hz, waktu sample
512 dengan tanpa feedback.

B. Bandpass Filter
1. Frekuensi respon dari Bandpass filter setelah menggunakan metode optimal

2. Impuls respon dari Bandpass filter setelah mengguakana metode optimal

Bandpass Filter
Bagian
ke-

Listing kode

Penjabaran arti

fs = 8000;
fold = fs/2;
stop = 40;

Pendeklarasian frekuensi sampling sebesar


8000Hz, dengan fold atau setengah dari
frekuensi sampling sebesar 4000Hz. dan
stopband attenuation sebesar 40dB

k1
k2
k3
k4
k5
k6

Pendeklarasian setiap koefisien dari


k1,k2,k3,k4,k5, dan k6

dp = 10^(1/20)-1;
ds = 10^(-stop/20);

Pendeklarasian nilai dari ds sebagai


pasband ripple dan stopband attenuation
(dalam magnutide)

ws = dp;
wp = ds;

Pendeklarasian nilai ws sebagai fraction


form (denumerator) dan wp sebagai
fraction form (numerator)

f = [k1 k2 k3 k4 k5 k6];
m = [0 0 1 1 0 0 ];
w = [ws wp ws];

Pendeklarasian nilai f yang berisi koefisien


dan nilai m yang berisi magnitude 0 0 1 1 0
0 (bandpass). Pendeklarasian ws sebagai
bandstop dan wp sebagai bandpass

figure(1);
b = remez(33,f,m,w);
format long;
freqz(b,1,512,fs);
axis([0 fs/2 -80 10]);

Mengaplikasikan fungsi remez dan di cetak


pada figure 1 . dengan filter order 33

figure(2);
stem(b);

Mencetak nilai b (berupa impuls respon) ke


figure 2

=
=
=
=
=
=

0/fold;
800/fold;
1200/fold;
1600/fold;
2000/fold;
4000/fold;

Menampilkan frekuensi respon dengan


penggunaan numerator b (fungsi remez),
frekuensi sampling 8000Hz, waktu sample
512 dengan tanpa feedback.

3. Bandstop Filter
1. Frekuensi respon dari bandstop filter setelah menggunakan metode optimal

2. Impuls respon dari bandstop filter setelah mengguakana metode optimal

Bandstop Filter
Bagian
ke-

Listing kode

Penjabaran arti

fs = 8000;
fold = fs/2;
stop = 50;

Pendeklarasian frekuensi sampling sebesar


8000Hz, dengan fold atau setengah dari
frekuensi sampling sebesar 4000Hz. dan
stopband attenuation sebesar 40dB

k1
k2
k3
k4
k5
k6

Pendeklarasian setiap koefisien dari


k1,k2,k3,k4,k5 dan k6

dp = 10^(1/20)-1;
ds = 10^(-stop/20);
a = dp/ds;

Pendeklarasian nilai dari ds sebagai


pasband ripple dan stopband attenuation
(dalam magnutide)

ws = dp;
wp = ds;

Pendeklarasian nilai ws sebagai fraction


form (denumerator) dan wp sebagai
fraction form (numerator)

f = [k1 k2 k3 k4 k5 k6];
m = [1 1 0 0 1 1 ];
w = [wp ws wp];

Pendeklarasian nilai f yang berisi koefisien


dan nilai m yang berisi magnitude 1 1 0 0 1
1 (bandstop). Pendeklarasian ws sebagai
bandstop dan wp sebagai bandpass

figure(1);
b = remez(29,f,m,w);
format long;
freqz(b,1,512,fs);
axis([0 fs/2 -80 10]);

Mengaplikasikan fungsi remez dan di cetak


pada figure 1 . dengan filter order 29

figure(2);
stem(b);

Mencetak nilai b (berupa impuls respon) ke


figure 23

=
=
=
=
=
=

0/fold;
1200/fold;
1800/fold;
2000/fold;
2600/fold;
4000/fold;

Menampilkan frekuensi respon dengan


penggunaan numerator b (fungsi remez),
frekuensi sampling 8000Hz, waktu sample
512 dengan tanpa feedback.

IV.

PEMBAHASAN
A. Lowpass Filter
Pada percobaan ini hal tepenting yang harus diperhatikan adalah bagaimana
mencari dan menganalisis suatu error yang ada dari lowpass filter dan dapat
meminimalisir error tersebut menggunakan metode optimal. Lowpass filter
tersebut mempunyai spesifikasi :
Sampling rate = 8000Hz
Passband = 0-1200Hz
Stopband = 1500-4000Hz
Passband riplle =1dB
Stopband Attenuation = 40dB
Pembuatan gelombang ini adalah sama seperti percobaan minggu lalu
mengenai FIR. Menampilkan frekuensi respon dengan penggunaan numerator
fungsi remez. FIR mempunyai karakteristik tanpa feedback (finite) maka pada
denumerator diberi nilai 1. FIR filter ini menggunakan built-in respon pada
ranah frekuensi (component sebagai input) dari sintem diskrit yang
dinotasikan : freqz( )
Freqz() akan menghitung dan memplot magnitude (pada nilai absolut) dari
frekuensi respon. sintaks yang dipakai : freqz(b,1,512,8000)
frekuensi Dapat dianalisis bahwa pada freqz diatas bahwa sapling yang
digunakan 8000Hz dengan 512 sample waktu yang dibutuhkan tanpa
kembalian (1).
Perbedaan dengan minggu lalu adalah pada metode yang digunakan untuk
meminimalisir adanya error yang diberikan agar mencapai spesifikasi yang
ditentukan, minggu lalu menggunakan metode window sedangkan praktikum
minggu ini menggunakan metode optimal.
Kunci dari penggunaan metode ini adalah penggunaan fungsi remez.
remez akan memdesain fase linear FIR menggunakan algoritma ParkMcClellan. Seperti yang telah dipaparkan pada bagian dasar teori bahwasanya
fungsi remez tersebut memerlukan n koefisien, frekuensi point(f),
amplitude point (m) dan error weight(w).
b = remez(36,f,m,w);

1. n koefisien FIR
Mencari n koefisien sendiri adalah dengan cara test and trial (coba-coba)
dengan dasar spesifikasi yang dibutuhkan. Dengan stopband attenuation

adalah 40dB maka spesifikasinya tidak boleh di atas 40dB (pada stop band
attenuation).

dapat dilihat bahwa stopband attenuation di puncaknya adalah bernilai 41.42 dB yang berarti telah sesuai seperti spesifikasi (kurang dari -40dB).
2. Frekuensi point
Frekuensi point ini merupakan nilai yang diinginkan (band stop atau band
pass) dengan memberikan setengah dari frekuensi sampling dibagi dengan
frekuensi band dan di simpang ke dalam sebuah matriks
f = [k1 k2 k3 k4]; dengan :

k1
k2
k3
k4

=
=
=
=

passband
passband
stopband
stopband

0Hz
1200Hz
1500Hz
4000Hz

3. Amplitude Point
Nilai amplitude adalah 1 atau 0 dengan berdasar kepada frekuensi point
yang dimensinya atau panjang matriksnya adalah sama seperti frekuensi
point. Dikarenakan lowpas filter maka amplitude point nya adalah
[ 1 1 0 0] seperti gambar ideal lowpass filter :

nilai amplitude pass band adalah 1 dan nilai amplitude stop band adalah 0
korelasi terhadap frekuensi point :
frekuensi 0Hz (pass band) amplitude 1
frekuensi 1200Hz (pass band) amplitude 1

frekuensi 1500Hz (stop band) amplitude 0


frekuensi 4000Hz (stop band) amplitude 0
4. Error Weight

Perhitungan
dp = 10^(1/20)-1;
ds = 10^(-stop/20);

Lalu didapat Ws dan Wp sebagai faktor error weight.


Lalu fungsi remez akan berjalan dan menghasilkan memdesain fase linear
FIR menggunakan algoritma Park-McClellan (dengan spesifikasi seperti di
atas). Hasil dapat dilihat pada bagian hasil output dan listing bagian low pass
filter.
Untuk membuat impuls plot koefisien maka menggunakan fungsi stem
(penjabaran stem ada pada laporan minggu lalu) dengan komponen freqz
sebagai penarikan fungsi yang sebelumnya nilai b telah didapat dari fungsi
remez. Hasil dapat dilihat pada bagian hasil output dan listing bagian low
pass filter.

B. Band Pass Filter


Pada percobaan ini hal tepenting yang harus diperhatikan adalah bagaimana
mencari dan menganalisis suatu error yang ada dari band pass filter dan dapat
meminimalisir error tersebut menggunakan metode optimal. Band pass filter
tersebut mempunyai spesifikasi :
Sampling rate = 8000 Hz
Passband = 1200-1600 Hz
lower Stopband = 0 Hz-800 Hz
upper Stopband = 2000 Hz - 4000Hz
Passband riplle =1dB
Stopband Attenuation = 40dB
Pembuatan gelombang ini adalah sama seperti percobaan yang pertama
(low pass filter) FIR. Menampilkan frekuensi respon dengan penggunaan
numerator fungsi remez. FIR mempunyai karakteristik tanpa feedback (finite)

maka pada denumerator diberi nilai 1. FIR filter ini menggunakan built-in
respon pada ranah frekuensi (component sebagai input) dari sintem diskrit
yang dinotasikan : freqz( )
Freqz() akan menghitung dan memplot magnitude (pada nilai absolut) dari
frekuensi respon. sintaks yang dipakai : freqz(b,1,512,8000)
frekuensi Dapat dianalisis bahwa pada freqz diatas bahwa sapling yang
digunakan 8000Hz dengan 512 sample waktu yang dibutuhkan tanpa
kembalian (1).
Perbedaan dengan prektikum 1 (low pass filter ) adalah pada metode filter
yang digunakan yaitu menggunakan band pass filter.
Kunci dari penggunaan metode ini adalah penggunaan fungsi remez.
remez akan memdesain fase linear FIR menggunakan algoritma ParkMcClellan. Seperti yang telah dipaparkan pada bagian dasar teori bahwasanya
fungsi remez tersebut memerlukan n koefisien, frekuensi point(f),
amplitude point (m) dan error weight(w).
b = remez(33,f,m,w);

1. n koefisien FIR
Mencari n koefisien sendiri adalah dengan cara test and trial (coba-coba)
dengan dasar spesifikasi yang dibutuhkan. Dengan stopband attenuation
adalah 40dB maka spesifikasinya tidak boleh di atas 40dB (pada stop band
attenuation). serta passband riplle adalah 1dB.

dapat dilihat bahwa stopband attenuation di puncaknya adalah bernilai


-41.51 dB yang berarti telah sesuai seperti spesifikasi (kurang dari -40dB).
2. Frekuensi point
Frekuensi point ini merupakan nilai yang diinginkan (band stop atau band
pass) dengan memberikan setengah dari frekuensi sampling dibagi dengan
frekuensi band dan di simpang ke dalam sebuah matriks
f = [k1 k2 k3 k4 k5 k6]; dengan :

k1 = stop band 0Hz


k2 = stop band 800Hz

k3
k4
k5
k6

=
=
=
=

pass
pass
stop
stop

band
band
band
band

1200Hz
1600Hz
2000Hz
4000Hz

3. Amplitude Point
Nilai amplitude adalah 1 atau 0 dengan berdasar kepada frekuensi point
yang dimensinya atau panjang matriksnya adalah sama seperti frekuensi
point. Dikarenakan band pas filter maka amplitude point nya adalah
[ 0 0 1 1 0 0] seperti gambar ideal lowpass filter :

nilai amplitude pass band adalah 1 dan nilai amplitude stop band adalah 0
korelasi terhadap frekuensi point :
frekuensi 0Hz (stop band) amplitude 0
frekuensi 800Hz (stop band) amplitude 0
frekuensi 1200Hz (pass band) amplitude 1
frekuensi 1600Hz (pass band) amplitude 1
frekuensi 2000Hz (stop band) amplitude 0
frekuensi 4000Hz (stop band) amplitude 0
4. Error Weight

Perhitungan

dp = 10^(1/20)-1;
ds = 10^(-stop/20);

Lalu didapat Ws dan Wp sebagai faktor error weight.


Lalu fungsi remez akan berjalan dan menghasilkan memdesain fase linear
FIR menggunakan algoritma Park-McClellan (dengan spesifikasi seperti di
atas). Hasil dapat dilihat pada bagian hasil output dan listing bagian band pass
filter.
Untuk membuat impuls plot koefisien maka menggunakan fungsi stem
(penjabaran stem ada pada laporan minggu lalu) dengan komponen freqz
sebagai penarikan fungsi yang sebelumnya nilai b telah didapat dari fungsi
remez. Hasil dapat dilihat pada bagian hasil output dan listing bagian band
pass filter.

C. Band Stop Filter


Pada percobaan ini hal tepenting yang harus diperhatikan adalah bagaimana
mencari dan menganalisis suatu error yang ada dari band stop filter dan dapat
meminimalisir error tersebut menggunakan metode optimal. band stop filter
tersebut mempunyai spesifikasi :
Sampling rate = 8000Hz
lower transisi = 600Hz
Upper transisi = 600Hz
Upper Cutoff = 2300Hz
Passband riplle =0.1dB
Stopband Attenuation = 50dB
Maka dari spesifikasi tersebut bisa ditentukan :
Pass band = 0Hz-1200 Hz
Stop band = 1800 Hz-2000Hz
Pass band = 2600 Hz-4000 Hz
Pembuatan gelombang ini adalah sama seperti percobaan sebelunya (low
pass dan band pass ) filter mengenai FIR. Menampilkan frekuensi respon
dengan penggunaan numerator fungsi remez. FIR mempunyai karakteristik
tanpa feedback (finite) maka pada denumerator diberi nilai 1. FIR filter ini
menggunakan built-in respon pada ranah frekuensi (component sebagai input)
dari sintem diskrit yang dinotasikan : freqz( )
Freqz() akan menghitung dan memplot magnitude (pada nilai absolut) dari

frekuensi respon. sintaks yang dipakai : freqz(b,1,512,8000)


frekuensi Dapat dianalisis bahwa pada freqz diatas bahwa sapling yang
digunakan 8000Hz dengan 512 sample waktu yang dibutuhkan tanpa
kembalian (1).
Perbedaan dengan percobaan sebelumnya adalah pada metode yang
digunakan menggunakan band stop filter.
Kunci dari penggunaan metode ini adalah penggunaan fungsi remez.
remez akan memdesain fase linear FIR menggunakan algoritma ParkMcClellan. Seperti yang telah dipaparkan pada bagian dasar teori bahwasanya
fungsi remez tersebut memerlukan n koefisien, frekuensi point(f),
amplitude point (m) dan error weight(w).
b = remez(29,f,m,w);

1. n koefisien FIR
Mencari n koefisien sendiri adalah dengan cara test and trial (coba-coba)
dengan dasar spesifikasi yang dibutuhkan. Dengan stopband attenuation
adalah 50dB maka spesifikasinya tidak boleh di atas 50dB (pada stop band
attenuation).

dapat dilihat bahwa stopband attenuation di puncaknya adalah bernilai 52.78 dB yang berarti telah sesuai seperti spesifikasi (kurang dari -50dB).
2. Frekuensi point
Frekuensi point ini merupakan nilai yang diinginkan (band stop atau band
pass) dengan memberikan setengah dari frekuensi sampling dibagi dengan
frekuensi band dan di simpang ke dalam sebuah matriks
f = [k1 k2 k3 k4 k5 k6]; dengan :

k1
k2
k3
k4
k5
k6

3. Amplitude Point

=
=
=
=
=
=

passband
passband
stopband
stopband
passband
passband

0Hz
1200Hz
1800Hz
2000Hz
2600Hz
4000Hz

Nilai amplitude adalah 1 atau 0 dengan berdasar kepada frekuensi point


yang dimensinya atau panjang matriksnya adalah sama seperti frekuensi
point. Dikarenakan lowpas filter maka amplitude point nya adalah
[ 1 1 0 0 1 1] seperti gambar ideal band stop filter :

nilai amplitude pass band adalah 1 dan nilai amplitude stop band adalah 0
korelasi terhadap frekuensi point :
frekuensi 0Hz (pass band) amplitude 1
frekuensi 1200Hz (pass band) amplitude 1
frekuensi 1800Hz (stop band) amplitude 0
frekuensi 2000Hz (stop band) amplitude 0
frekuensi 2600Hz (pass band) amplitude 1
frekuensi 4000Hz (pass band) amplitude 1

4. Error Weight

Perhitungan
dp = 10^(1/20)-1;
ds = 10^(-stop/20);

Lalu didapat Ws dan Wp sebagai faktor error weight.


Lalu fungsi remez akan berjalan dan menghasilkan memdesain fase linear
FIR menggunakan algoritma Park-McClellan (dengan spesifikasi seperti di
atas). Hasil dapat dilihat pada bagian hasil output dan listing. Hasil dapat
dilihat pada bagian hasil output dan listing bagian band stop filter.
Untuk membuat impuls plot koefisien maka menggunakan fungsi stem
(penjabaran stem ada pada laporan minggu lalu) dengan komponen freqz
sebagai penarikan fungsi yang sebelumnya nilai b telah didapat dari fungsi
remez. Hasil dapat dilihat pada bagian hasil output dan listing bagian band
stop filter.

V.

KESIMPULAN
Filter secara ideal harus memperhatikan spesifikasi penyusunya serta faktor
faktor penghalangnya.
Metode windowing adalah untuk memperoleh respon frekuensi ideal filter dan
menghitung respon impulsenya.
Metode windowing dapat memodifikasi riak tanpa mengubah frekuensi yang
diinginkan.

VI.

DAFTAR PUSTAKA
http://dali.feld.cvut.cz/ucebna/matlab/toolbox/signal/remez.html diakses pada 8 april
2015 pukul 21.00
IEEE. Programs for Digital Signal Processing. IEEE Press. New York: John Wiley
& Sons, 1979. Algorithm 5.1.
IEEE. Selected Papers in Digital Signal Processing, II. IEEE Press. New York: John
Wiley & Sons, 1979.
Rabiner, L.R., J.H. McClellan, and T.W. Parks. "FIR Digital Filter Design
Techniques Using Weighted Chebyshev Approximations." Proc. IEEE 63 (1975).

VII.

TUGAS

a. Optimal Desain Metod


Bagian
ke-

Listing kode

Penjabaran arti

fs = 8000;
fold = fs/2;
stop = 50;

Pendeklarasian frekuensi sampling sebesar


8000Hz, dengan fold atau setengah dari
frekuensi sampling sebesar 4000Hz. dan
stopband attenuation sebesar 40dB

k1
k2
k3
k4
k5
k6

Pendeklarasian setiap koefisien dari


k1,k2,k3,k4,k5 dan k6

dp = 10^(1/20)-1;
ds = 10^(-stop/20);
a = dp/ds;

Pendeklarasian nilai dari ds sebagai


pasband ripple dan stopband attenuation
(dalam magnutide)

ws = dp;
wp = ds;

Pendeklarasian nilai ws sebagai fraction


form (denumerator) dan wp sebagai
fraction form (numerator)

f = [k1 k2 k3 k4 k5 k6];
m = [1 1 0 0 1 1 ];
w = [wp ws wp];

Pendeklarasian nilai f yang berisi koefisien


dan nilai m yang berisi magnitude 1 1 0 0 1
1 (bandstop). Pendeklarasian ws sebagai
bandstop dan wp sebagai bandpass

figure(1);
b = remez(33,f,m,w);
format long;
freqz(b,1,512,fs);
axis([0 fs/2 -80 10]);

Mengaplikasikan fungsi remez dan di cetak


pada figure 1 . dengan filter order 33

figure(2);
stem(b);

Mencetak nilai b (berupa impuls respon) ke


figure 23

=
=
=
=
=
=

0/fold;
1200/fold;
1800/fold;
2000/fold;
2600/fold;
4000/fold;

Menampilkan frekuensi respon dengan


penggunaan numerator b (fungsi remez),
frekuensi sampling 8000Hz, waktu sample
512 dengan tanpa feedback.

b. Rectangular Window
Bagian
ke-

Listing kode

Penjabaran arti

fs=8000;

Pendeklarasian frekuensi sampling sebesar


8000Hz dan frekuensi

lf=1500;
hf=2300;

Pendeklarasian frekuensi cut-off bawah


sebesar 1500Hz dan Pendeklarasian
frekuensi cut-off atas sebesar 2300Hz.

Wl=2*pi*lf/fs;

Pendeklarasian Wl sebagai batas bawah


yang terdiri dari pembagian frekuensi cutoff bawah dengan frekuensi sampling
terhadap pangjang data (2*pi).

Wh=2*pi*hf/fs;

Pendeklarasian Wh sebagai batas atas yang


terdiri dari pembagian frekuensi cut-off
bawah dengan frekuensi sampling
terhadap pangjang data (2*pi).

N=33;

Pendeklarasian nilai taps (filter taps)

h1=zeros(1,N);
window=zeros(1,N);

Pendeklarasian arrai h dan windows


dengan rentang data dari 1 sampai N dan
diisi zeros atau 0 sebagai nilai awal

for i=1:N
n=i-17;
h1(i)=(sin(Wh*n)/(pi*n))+(sin(Wl*n)/(pi*n));
window(i)=1;
end

Merupakan Kode untuk pembuatan impuls


respon bandpass filter. Dengan pengisian
arrai pada h secara satu persatu sebagai
bentuk koefisien noncausal tidak sama
dengan 0. arrai pada window juga diisi
secara satu persatu sesuai rumus
Rectangular window.

h1(17)= ((pi-Wh)+Wl)/pi;

Untuk nilai arrai h saat o (pada arrai nomer


17) berlaku selisih dari frekuensi cut-off
tinggi dengan frekuensi cut-off tinggi dan
pembagian terhadap pi

figure(1)
hw1=h1.*window;
stem(hw1);

Menampilkan Impuls respon dari ideal


bandpass filter setelah diberi Rectangular
window

figure(2)
freqz(hw1,1,512,8000);

Menampilkan Frekuensi respon dari


bandpass filter setelah diberi Rectangular
window

c. Hamming Window
Bagian
ke-

Listing kode

Penjabaran arti

fs=8000;

Pendeklarasian frekuensi sampling sebesar


8000Hz

lf=1500;
hf=2300;

Pendeklarasian frekuensi cut-off bawah


sebesar 1500Hz dan Pendeklarasian
frekuensi cut-off atas sebesar 2300Hz.

Wl=2*pi*lf/fs;

Pendeklarasian Wl sebagai batas bawah


yang terdiri dari pembagian frekuensi cutoff bawah dengan frekuensi sampling
terhadap pangjang data (2*pi).

Wh=2*pi*hf/fs;

Pendeklarasian Wh sebagai batas atas yang


terdiri dari pembagian frekuensi cut-off
bawah dengan frekuensi sampling
terhadap pangjang data (2*pi).

N=33;

Pendeklarasian nilai taps (filter taps)

h1=zeros(1,N);
window=zeros(1,N);

Pendeklarasian arrai h dan windows


dengan rentang data dari 1 sampai N dan
diisi zeros atau 0 sebagai nilai awal

for i=1:N
n=i-17;
h1(i)=(sin(Wh*n)/(pi*n))+(sin(Wl*n)/(pi*n));
window(i)= 0.54+(0.46*cos(pi*n/17))
;
end

Merupakan Kode untuk pembuatan impuls


respon bandpass filter. Dengan pengisian
arrai pada h secara satu persatu sebagai
bentuk koefisien noncausal tidak sama
dengan 0. arrai pada window juga diisi
secara satu persatu sesuai rumus Hamming
window.

h1(17)= ((pi-Wh)+Wl)/pi;

Untuk nilai arrai h saat o (pada arrai nomer


17) berlaku selisih dari frekuensi cut-off
tinggi dengan frekuensi cut-off tinggi dan
pembagian terhadap pi

figure(4)
hw1=h1.*window;
stem(hw1);

Menampilkan Impuls respon dari ideal


bandpass filter setelah diberi Hamming
window

figure(5)
freqz(hw1,1,512,8000);

Menampilkan Frekuensi respon dari


bandpass filter setelah diberi Hamming
window

d. Hanning Window
Bagian
ke-

Listing kode

Penjabaran arti

fs=8000;

Pendeklarasian frekuensi sampling sebesar


8000Hz dan frekuensi

lf=1500;
hf=2300;

Pendeklarasian frekuensi cut-off bawah


sebesar 1500Hz dan Pendeklarasian
frekuensi cut-off atas sebesar 2300Hz.

Wl=2*pi*lf/fs;

Pendeklarasian Wl sebagai batas bawah


yang terdiri dari pembagian frekuensi cutoff bawah dengan frekuensi sampling
terhadap pangjang data (2*pi).

Wh=2*pi*hf/fs;

Pendeklarasian Wh sebagai batas atas yang


terdiri dari pembagian frekuensi cut-off
bawah dengan frekuensi sampling
terhadap pangjang data (2*pi).

N=33;

Pendeklarasian nilai taps (filter taps)

h1=zeros(1,N);
window=zeros(1,N);

Pendeklarasian arrai h dan windows


dengan rentang data dari 1 sampai N dan
diisi zeros atau 0 sebagai nilai awal

for i=1:N
n=i-17;
h1(i)=(sin(Wh*n)/(pi*n))+(sin(Wl*n)/(pi*n));
window(i)= 0.5+0.5*cos(pi*n/15);
end

Merupakan Kode untuk pembuatan impuls


respon bandpass filter. Dengan pengisian
arrai pada h secara satu persatu sebagai
bentuk koefisien noncausal tidak sama
dengan 0. arrai pada window juga diisi
secara satu persatu sesuai rumus Hanning
window.

h1(17)= ((pi-Wh)+Wl)/pi;

Untuk nilai arrai h saat o (pada arrai nomer


16) berlaku selisih dari frekuensi cut-off
tinggi dengan frekuensi cut-off tinggi dan
pembagian terhadap pi

figure(4)
hw1=h1.*window;
stem(hw1);

Menampilkan Impuls respon dari ideal


bandpass filter setelah diberi Hanning
window

figure(5)
freqz(hw1,1,512,8000);

Menampilkan Frekuensi respon dari


bandpass filter setelah diberi Hanning
window

e. Blackman Window
Bagian
ke-

Listing kode

Penjabaran arti

fs=8000;

Pendeklarasian frekuensi sampling sebesar


8000Hz

lf=1500;
hf=2300;

Pendeklarasian frekuensi cut-off bawah


sebesar 1500Hz dan Pendeklarasian
frekuensi cut-off atas sebesar 2300Hz.

Wl=2*pi*lf/fs;

Pendeklarasian Wl sebagai batas bawah


yang terdiri dari pembagian frekuensi cutoff bawah dengan frekuensi sampling
terhadap pangjang data (2*pi).

Wh=2*pi*hf/fs;

Pendeklarasian Wh sebagai batas atas yang


terdiri dari pembagian frekuensi cut-off
bawah dengan frekuensi sampling
terhadap pangjang data (2*pi).

N=33;

Pendeklarasian nilai taps (filter taps)

h1=zeros(1,N);
window=zeros(1,N);

Pendeklarasian arrai h dan windows


dengan rentang data dari 1 sampai N dan
diisi zeros atau 0 sebagai nilai awal

for i=1:N
n=i-17;
h1(i)=(sin(Wh*n)/(pi*n))+(sin(Wl*n)/(pi*n));
window(i)=
0.42+0.5*cos(pi*n/17)+0.08*cos(pi*n*2/17)

Merupakan Kode untuk pembuatan impuls


respon bandpass filter. Dengan pengisian
arrai pada h secara satu persatu sebagai
bentuk koefisien noncausal tidak sama
dengan 0. arrai pada window juga diisi
secara satu persatu sesuai rumus blackman
window.

end

h1(17)= ((pi-Wh)+Wl)/pi;

Untuk nilai arrai h saat o (pada arrai nomer


17) berlaku selisih dari frekuensi cut-off
tinggi dengan frekuensi cut-off tinggi dan
pembagian terhadap pi

figure(4)
hw1=h1.*window;
stem(hw1);

Menampilkan Impuls respon dari ideal


bandpass filter setelah diberi Blackman
window

figure(5)
freqz(hw1,1,512,8000);

VIII. LAMPIRAN

Menampilkan Frekuensi respon dari


bandpass filter setelah diberi Blackman
window

Anda mungkin juga menyukai