You are on page 1of 20

LAPORAN PRAKTIKUM V

PRAKTEK PENGOLAHAN SINYAL DIGITAL

FILTER DIGITAL JENIS FIR

Oleh :

Anninda Kusumaning Tyas

16507134021

D3 TEKNIK ELEKTRONIKA

JURUSAN PENDIDIKAN TEKNIK ELEKTRONIKA DAN INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS NEGERI YOGYAKARTA

2018
No. Syntax Penjelasan Hasil
Prog % Program 5.5 Mendeklarasikan n dan T,
5.5 % Penerapan filter f1 sebagai frekuensi 1 dan
digital f2 sebagai frekuensi 2. X
n = 0:250;
untuk membuat sinyal
T = 0.01;
f1 = 2; f2 = 30; % sinus yang terdiri dari
frekuensi sinyal penjumlahan 2 sinyal
dalam Hz sinus. Membuat subplot
x = sin(2*pi*f1*n*T) 211 dengan memplotkan
+ sin(2*pi*f2*n*T); (n*T,x). Xlabel dan ylabel
subplot(211), berfungsi untuk memberi
plot(n*T,x), grid; label waktu pada sumbu x
xlabel('waktu dan simpangan pada
(detik)');
ylabel('simpangan');
sumbu y. Title untuk
title('Sinyal memberi judul. Membuat
sebelum difilter'); fungsi buttap filter
[z,p,k] = buttap(2); prototype butterworth
% orde filter = 2 pada orde 2. Zp2tf
[num,den] = berfungsi agar zero pole
zp2tf(z,p,k); bisa melakukan transfer
fc = 5; % fungsi. Fc sebagai
frek cut-off dalam
frekuensi cut off dalam
Hz
wc = 2*pi*fc; % Hz. Sementara wc sebagai
frek cut-off dalam frekuensi cut off dalam
radian/detik rad/detik. Melakukan
[n1,d1] = transformasi low pass to
lp2lp(num,den,wc); low pass dengan fungsi
[nd,dd] = lp2lp. Fs sebagai
bilinear(n1,d1,1/T); frekuensi sampling.
y = filter(nd,dd,x); Bilinear berfungsi dalam
subplot(212),
mengkonversi dari
plot(n*T,y), grid;
xlabel('waktu transformasi s menjadi
(detik)'); transformasi z. Y sebagai
ylabel('simpangan'); variabel filter terhadap
title('Sinyal nd,dd, dan x. Membuat
setelah difilter'); subplot 212 untuk
memplotkan (n*T,y).
Xlabel dan ylabel
berfungsi untuk memberi
label waktu pada sumbu x
dan simpangan pada
sumbu y. Title untuk
memberi judul.
Prog % program 6.1 N sebagai orde filter.
6.1 % perbandingan Membuat filter lowpass
respon frekuensi
filter IIR dan FIR prototype butterworth
N = 11; % orde dengan buttap terhadap
filter orde N. Fungsi zp2tf
[z,p,k] = buttap(N); berfungsi untuk zero
% *** filter IIR ***
[num,den] =
pole melakukan transfer
zp2tf(z,p,k); fungsi. Wc sebagai
wc = 5; % frek frekuensi cut off. Lp2lp
cut-off dalam berfungsi melakukan
rad/det transformasi low pass
[n1,d1] =
lp2lp(num,den,wc); % to low pass. T sebagai
transformasi periode sampling.
frekuensi Bilinear mengubah
T = 0.1; transformasi s menjadi
% periode sampling
transformasi z. Mencari
(detik)
[nd,dd] = frekuensi z dengan
bilinear(n1,d1,1/T); freqz. Mencari sudut
[H,omega] = fasa dengan fungsi fase.
freqz(nd,dd); Membuat subplot 221
fase = 180/pi *
unwrap(angle(H)); dengan mengeplotkan
subplot(221), omega,0.707,omega,abs
plot(omega,0.707,ome (H). Title memberi
ga,abs(H)), grid; judul. Xlabel dan ylabel
title('respon memberi label.
frekuensi filter
IIR'); Membuat subplot 222
xlabel('frekuensi dengan mengeplotkan
(rad/sampel)'), omega,fase sebagai
ylabel('magnitude'); grafik frekuensi dan
subplot(222),
plot(omega,fase),
magnitude pada filter
grid; IIR. Omegac sebagai
xlabel('frekuensi frekuensi cut off digital
'), ylabel('sudut dengan wumus wc * T.
fase (der)'); M sebagai pergeseran, n
omegac = 0.5; %
frekuensi cut-off berfungsi untuk
digital = wc * T penetapan titik plot.
m = (N-1)/2; % Mendeklarasikan
penggeseran variabel h
n = 0:2*m; %
penetapan titik
merepresentasikan
untuk plot respon impuls IIR filter
h = omegac/pi * dan w sebagai window
sinc(omegac*(n- rectangular. Hd
m)/pi); merupakan hasil kali h
w = [ones(1,N)
zeros(1, length(n)- dengan fungsi window.
N)]; % window Dalam perancang filter
hd = h .* w; FIR, respon impulse
[Hd, omega1] = yang tak terhingga akan
freqz(hd, 1);
terpotong menggunakan
phase = 180/pi *
unwrap(angle(Hd)); teknik windowing.
subplot(223), Membuat subplot 223
plot(omega1,0.707,om untuk mengeplotkan
ega1,abs(Hd)), grid; (omega1,0.707,omega1,
title('respon
frekuensi filter abs(Hd). Xlabel dan
FIR'); ylabel memberi label.
xlabel('frekuensi Membuat subplot 224
(rad/sampel)'), untuk mengeplotkan
ylabel('magnitude');
subplot(224),
(omega1,phase). Xlabel
plot(omega1,phase), dan ylabel memberi
grid; label
xlabel('frekuensi
'), ylabel('sudut
fase (der)');

Tgs Amati perbedaan


1a tampilan filter IIR dan Tipe filter Puncak Riak Frekuensi Sudut fasa
filter FIR. Perhatikan hal magnitude magnitude cut off
hal berikut : puncak IIR Puncak Pada 5
magnitude, riak (ripple) magnitude respon
pada magnitude, pada IIR frekuensi
frekuensi cut-off, dan menunjuk filter IIR
sudut fase kan angka tidak
1 ditemukan
riak
dibagian
bawah
spektrum
FIR Puncak Pada 0.5
magnitude respon
pada FIR frekuensi
menunjuk filter FIR
kan angka ditemukan
mendekati riak
1,2 dibagian
bawah
spektrum
Tgs % program 6.1 Perbandingan
1b1 % perbandingan penggunaan window
respon frekuensi
filter IIR dan FIR hamming dan hanning
% Menggunakan w = sebenarnya sangat
[hamming(N)’ terlihat tipis, namun
zeros(1,length(n)- jika diamati lebih lanjut
N)];
N = 11; % orde
maka akan terlihat
filter perbedaan yang
[z,p,k] = buttap(N); mendasar pada dua
% *** filter IIR *** gambar tersebut. Pada
[num,den] = sekitar daerah waktu
zp2tf(z,p,k);
wc = 5; % frek minimum dan
cut-off dalam maksimum terlihat
rad/det amplitudo sinyal pada
[n1,d1] = hamming lebih besar
lp2lp(num,den,wc); %
transformasi dibandingkan dengan
frekuensi hanning. Pada
T = 0.1;
% periode sampling penggunaan filter FIR
(detik) dengab metode
[nd,dd] = hamming tidak
bilinear(n1,d1,1/T); ditemukan riak
[H,omega] =
freqz(nd,dd);
magnitude di bagian
fase = 180/pi * bawah sinyal. Atau
unwrap(angle(H)); dapat dikatakan sinyal
subplot(221), smooth atau halus.
plot(omega,0.707,ome
ga,abs(H)), grid;
title(‘respon
frekuensi filter
IIR’);
xlabel(‘frekuensi
(rad/sampel)’),
ylabel(‘magnitude’);
subplot(222),
plot(omega,fase),
grid;
xlabel(‘frekuensi
‘), ylabel(‘sudut
fase (der)’);
omegac = 0.5; %
frekuensi cut-off
digital = wc * T
m = (N-1)/2; %
penggeseran
n = 0:2*m; %
penetapan titik
untuk plot
h = omegac/pi *
sinc(omegac*(n-
m)/pi);
w =[hamming(N)’
zeros(1,length(n)-
N)]; % window
hd = h .* w;
[Hd, omega1] =
freqz(hd, 1);
phase = 180/pi *
unwrap(angle(Hd));
subplot(223),
plot(omega1,0.707,om
ega1,abs(Hd)), grid;
title(‘respon
frekuensi filter
FIR’);
xlabel(‘frekuensi
(rad/sampel)’),
ylabel(‘magnitude’);
subplot(224),
plot(omega1,phase),
grid;
xlabel(‘frekuensi
‘), ylabel(‘sudut
fase (der)’);
Tgs % program 6.1 Perbandingan
1b2 % perbandingan penggunaan window
respon frekuensi
filter IIR dan FIR hamming dan hanning
% Menggunakan w = [0 sebenarnya sangat
hanning(N-2)’ terlihat tipis, namun
zeros(1,length(n)- jika diamati lebih lanjut
N+1)];
N = 11; % orde
maka akan terlihat
filter perbedaan yang
[z,p,k] = buttap(N); mendasar pada dua
% *** filter IIR *** gambar tersebut. Pada
[num,den] = sekitar daerah waktu
zp2tf(z,p,k);
wc = 5; % frek minimum dan
cut-off dalam maksimum terlihat
rad/det amplitudo sinyal pada
[n1,d1] = hamming lebih besar
lp2lp(num,den,wc); %
dibandingkan dengan
transformasi
frekuensi hanning. Pada
T = 0.1; penggunaan filter FIR
% periode sampling dengan metode hanning
(detik) ditemukan sedikit riak
[nd,dd] =
bilinear(n1,d1,1/T); magnitude di bagian
[H,omega] = bawah sinyal.
freqz(nd,dd);
fase = 180/pi *
unwrap(angle(H));
subplot(221),
plot(omega,0.707,ome
ga,abs(H)), grid;
title('respon
frekuensi filter
IIR');
xlabel('frekuensi
(rad/sampel)'),
ylabel('magnitude');
subplot(222),
plot(omega,fase),
grid;
xlabel('frekuensi
'), ylabel('sudut
fase (der)');
omegac = 0.5; %
frekuensi cut-off
digital = wc * T
m = (N-1)/2; %
penggeseran
n = 0:2*m; %
penetapan titik
untuk plot
h = omegac/pi *
sinc(omegac*(n-
m)/pi);
w =[0 hanning(N-2)'
zeros(1,length(n)-
N+1)]; % window
hd = h .* w;
[Hd, omega1] =
freqz(hd, 1);
phase = 180/pi *
unwrap(angle(Hd));
subplot(223),
plot(omega1,0.707,om
ega1,abs(Hd)), grid;
title('respon
frekuensi filter
FIR');
xlabel('frekuensi
(rad/sampel)'),
ylabel('magnitude');
subplot(224),
plot(omega1,phase),
grid;
xlabel('frekuensi
'), ylabel('sudut
fase (der)');

Ulangi langkah (a) untuk


masing-masing window. Tipe filter Puncak Riak Frekuensi Sudut fasa
magnitude magnitude cut off
IIR Tidak Tidak Hamming
terdapat terdapat =5
perbedaan perbedaan
pada pada Hanning =
respon respon 5
frekuensi frekuensi
IIR baik IIR baik
dengan dengan
metode metode
hamming hamming
maupun maupun
hanning. hanning.

FIR Saat Saat Hamming


mengguna mengguna = 0.5
kan kan
metode metode Hanning =
hamming, hamming, 0.5
puncak tidak
magnitude ditemukan
lebih riak yang
tinggi berarti
yakni sinyal
menunjuk smooth
angka atau
lebih dari halus.
0,7 Sedangka
dibanding n pada
dengan metode
mengguna hanning,
kan terdapat
metode sedikit
hanning. riak pada
bagian
bawah
sinyal.

No. Syntax Penjelasan Hasil


Pro % Program 6.2 Mendeklarasikan
g % Perbandingan variabel n sebagai
Penerapan Filter
6.2 IIR dan FIR panjang, T sebagai
n = 0:150; periode sampling, f1
T = 0.2; % periode serta f2 sebagai
sampling frekuensi sinyal
f1 = 1/(2*pi); f2 =
5/(2*pi); %
dalam satuan Hz.
frekuensi sinyal Variabel x untuk
(Hz) membuat sebuah
x = sinyal input.
cos(2*pi*f1*T*n) + Membuat subplot
cos(2*pi*f2*T*n); %
sinyal input 211 untuk
subplot(211), mengeplotkan sinyal
plot(n*T,x), grid; sebelum di filter.
title('sinyal Title untuk memberi
sebelum difilter');
judul. Xlabel dan
xlabel('waktu'),
ylabel('simpangan') ylabel untuk
; memberi label pada
[z,p,k] = sumbu x dan y.
buttap(3); % orde
filter IIR = 3;
[num,den] = Membuat fungsi
zp2tf(z,p,k); filter butterworth
wc = 2; % dengan buttap
frekuensi cutoff terhadap orde 3 filter
(rad/detik) IIR. Zp2tf untuk
[n1,d1] =
lp2lp(num,den,wc); melakukan transfer
[nd,dd] = fungsi. Wc adalah
bilinear(n1,d1,1/T) frekuensi cut off
; dalam satuan
% frekuensi digital
= wc * T
rad/detik.
y1 = Melakukan
filter(nd,dd,x); transformasi low
subplot(223), pass to low pass
plot(n*T,y1), grid; dengan fungsi lp2lp.
xlabel('waktu'),
ylabel('simpangan')
Bilinear berfungsi
; dalam mengkonversi
title('hasil LPF dari transformasi s
IIR orde 3'); menjadi transformasi
omegac = 0.4; % z. Y1 sebagai sinyal
frekuensi cut-off setelah difilter dengan
digital menggunakan LPF
N = 21; % orde IIR. Membuat subplot
filter FIR 223 dengan
m = (N-1)/2; % mengeplotkan hasil
penggeseran
sinyal y1.
h = omegac/pi *
sinc(omegac*(n-
m)/pi); Omegac sebagai
w = [ones(1,N) frekuensi cut off
zeros(1, length(n)- digital. N sebagai orde
N)]; % window filter FIR atau panjang
hd = h .* w; sinyal. M sebagai
y2 = variabel pergeseran.
filter(hd,1,x); %
sinyal output
Mendeklarasikan
subplot(224), variabel h
plot(n*T,y2), grid; merepresentasikan
title('hasil LPF respon impuls IIR
FIR orde 21'); filter dan w sebagai
xlabel('waktu'),
ylabel('simpangan') window rectangular.
; Hd merupakan hasil
kali h dengan fungsi
window. Dalam
perancang filter FIR,
respon impulse yang
tak terhingga akan
terpotong
menggunakan teknik
windowing. Y2
untuk membuat
sinyal yang telah di
filter dengan LPF
FIR. Membuat subplot
223 dengan
mengeplotkan hasil
sinyal y2.
Tgs % Program 6.2 Dalam percobaan
2a % Perbandingan tugas 2a dan b
Penerapan Filter
IIR dan FIR disimpulkan bahwa
n = 0:150; semakin nilai N
T = 0.2; % periode besar maka sinyal
sampling hasil LPF FIR
f1 = 1/(2*pi); f2 =
5/(2*pi); %
semakin baik.
frekuensi sinyal Semakin besar nilai
(Hz) N maka waktu tunda
x = nya semakin besar
cos(2*pi*f1*T*n) + juga.
cos(2*pi*f2*T*n); %
sinyal input
subplot(211),
plot(n*T,x), grid;
title(‘sinyal
sebelum difilter’);
xlabel(‘waktu’),
ylabel(‘simpangan’)
;
[z,p,k] =
buttap(3); % orde
filter IIR = 3;
[num,den] =
zp2tf(z,p,k);
wc = 2; %
frekuensi cutoff
(rad/detik)
[n1,d1] =
lp2lp(num,den,wc);
[nd,dd] =
bilinear(n1,d1,1/T)
;
% frekuensi digital
= wc * T
y1 =
filter(nd,dd,x);
subplot(223),
plot(n*T,y1), grid;
xlabel(‘waktu’),
ylabel(‘simpangan’)
;
title(‘hasil LPF
IIR orde 3’);
omegac = 0.4; %
frekuensi cut-off
digital
N = 41; % orde
filter FIR
m = (N-1)/2; %
penggeseran
h = omegac/pi *
sinc(omegac*(n-
m)/pi);
w = [ones(1,N)
zeros(1, length(n)-
N)]; % window
hd = h .* w;
y2 =
filter(hd,1,x); %
sinyal output
subplot(224),
plot(n*T,y2), grid;
title(‘hasil LPF
FIR orde 21’);
xlabel(‘waktu’),
ylabel(‘simpangan’)
;

Tgs % Program 6.2 Dalam percobaan


2b % Perbandingan tugas 2a dan b
Penerapan Filter
IIR dan FIR disimpulkan bahwa
n = 0:150; semakin nilai N
T = 0.2; % periode besar maka sinyal
sampling hasil LPF FIR
f1 = 1/(2*pi); f2 =
5/(2*pi); %
semakin baik.
frekuensi sinyal Semakin besar nilai
(Hz) N maka waktu tunda
x = nya semakin besar
cos(2*pi*f1*T*n) + juga.
cos(2*pi*f2*T*n); %
sinyal input
subplot(211),
plot(n*T,x), grid;
title('sinyal
sebelum difilter');
xlabel('waktu'),
ylabel('simpangan')
;
[z,p,k] =
buttap(3); % orde
filter IIR = 3;
[num,den] =
zp2tf(z,p,k);
wc = 2; %
frekuensi cutoff
(rad/detik)
[n1,d1] =
lp2lp(num,den,wc);
[nd,dd] =
bilinear(n1,d1,1/T)
;
% frekuensi digital
= wc * T
y1 =
filter(nd,dd,x);
subplot(223),
plot(n*T,y1), grid;
xlabel('waktu'),
ylabel('simpangan')
;
title('hasil LPF
IIR orde 3');
omegac = 0.4; %
frekuensi cut-off
digital
N = 81; % orde
filter FIR
m = (N-1)/2; %
penggeseran
h = omegac/pi *
sinc(omegac*(n-
m)/pi);
w = [ones(1,N)
zeros(1, length(n)-
N)]; % window
hd = h .* w;
y2 =
filter(hd,1,x); %
sinyal output
subplot(224),
plot(n*T,y2), grid;
title('hasil LPF
FIR orde 21');
xlabel('waktu'),
ylabel('simpangan')
;
Pro % program 6.3 Mendesain filter FIR
g % perbandingan dengan fungsi firl.
filter FIR
6.3 N = 31; % orde Mendeklarasikan
filter variabel N sebagai
omegac = 0.8; % orde filter FIR atau
frekuensi cut-off panjang sinyal.
digital
wn = omegac/pi;
Omegac sebagai
b1 = fir1(N,wn); % frekuensi cut off
function untuk digital. Variabel wn
mendesain filter sebagai dan b1 untuk
FIR mendesain filter FIR.
[H,omega] =
freqz(b1,1); Freqz untuk
fase = 180/pi * frekuensi dan fase
angle(H); untuk mengetahui
subplot(221), sudut fase nya.
plot(omega,0.707,om
Membuat subplot
ega,abs(H)), grid;
xlabel('frekuensi') 221 untuk
, mengeplotkan
ylabel('magnitude') (omega,0.707,omega
; ,abs(H). Xlabel
subplot(222),
plot(omega,unwrap(f untuk memberi label
ase)), grid; frekuensi pada
xlabel('frekuensi') sumbu x dan
, ylabel('sudut magnitude pada
fase'); sumbu y. Membuat
% *** Desain filter
FIR secara subplot 222 untuk
sederhana *** mengeplotkan
m = (N-1)/2; % respon frekuensi dan
penggeseran sudut fase sinyal
n = 0:2*m; %
penetapan titik
dengan desain filter
untuk plot FIR dengan fungsi
h = omegac/pi * firl.
sinc(omegac*(n-
m)/pi); Mendesain filter FIR
w = [ones(1,N)
zeros(1,length(n)- dengan sederhana.
N)]; % window Variabel m sebagai
hd = h .* w; pergeseran, n untuk
[Hd,omega1] = menetapkan titik
freqz(hd,1);
fase1 = 180/pi *
plot,
angle(H); Mendeklarasikan
subplot(223), variabel h
plot(omega1,0.707,o merepresentasikan
mega1,abs(Hd)), respon impuls IIR
grid;
xlabel('frekuensi') filter dan w sebagai
, window rectangular.
ylabel('magnitude') Hd merupakan hasil
; kali h dengan fungsi
subplot(224),
window. Freqz untuk
plot(omega1,unwrap(
fase1)), grid; frekuensi dan fase
xlabel('frekuensi') untuk mengetahui
, ylabel('sudut sudut fase nya.
fase'); Membuat subplot
223 untuk
mengeplotkan
(omega1,0.707,omeg
a1,abs(Hd)). Xlabel
untuk memberi label
frekuensi pada
sumbu x dan
magnitude pada
sumbu y. Membuat
subplot 224 untuk
mengeplotkan
respon frekuensi dan
sudut fase sinyal
dengan desain filter
FIR dengan teknik
sederhana
menggunakan
windowing.

Tgs % program 6.3 Perbandingan


3a % perbandingan penggunaan window
filter FIR
N = 31; % orde hamming dan
filter hanning sebenarnya
omegac = 0.8; % sangat terlihat tipis,
frekuensi cut-off namun jika diamati
digital
wn = omegac/pi;
lebih lanjut maka
b1 = fir1(N,wn); % akan terlihat
function untuk perbedaan yang
mendesain filter mendasar pada
FIR puncak
[H,omega] =
freqz(b1,1); magnitudenya. Saat
fase = 180/pi * menggunakan
angle(H); hamming sinyal
subplot(221), smooth atau mulus
plot(omega,0.707,om
tanpa riak. Namun
ega,abs(H)), grid;
xlabel('frekuensi') saat menggunakan
, hanning terjadi riak
ylabel('magnitude') dekat dengan puncak
; magnitude. Yang
subplot(222),
plot(omega,unwrap(f berarti pada
ase)), grid; penggunaan hanning
xlabel('frekuensi') sinyal yg dihasilkan
, ylabel('sudut tidak bagus.
fase');
% *** Desain filter
FIR secara
sederhana ***
m = (N-1)/2; %
penggeseran
n = 0:2*m; %
penetapan titik
untuk plot
h = omegac/pi *
sinc(omegac*(n-
m)/pi);
w = [hamming(N)'
zeros(1,length(n)-
N)]; % window
hd = h .* w;
[Hd,omega1] =
freqz(hd,1);
fase1 = 180/pi *
angle(H);
subplot(223),
plot(omega1,0.707,o
mega1,abs(Hd)),
grid;
xlabel('frekuensi')
,
ylabel('magnitude')
;
subplot(224),
plot(omega1,unwrap(
fase1)), grid;
xlabel('frekuensi')
, ylabel('sudut
fase');

Tgs % program 6.3 Perbandingan


3b % perbandingan penggunaan window
filter FIR
N = 31; % orde hamming dan
filter hanning sebenarnya
omegac = 0.8; % sangat terlihat tipis,
frekuensi cut-off namun jika diamati
digital
wn = omegac/pi;
lebih lanjut maka
b1 = fir1(N,wn); % akan terlihat
function untuk perbedaan yang
mendesain filter mendasar pada
FIR puncak
[H,omega] =
freqz(b1,1); magnitudenya. Saat
fase = 180/pi * menggunakan
angle(H); hamming sinyal
subplot(221), smooth atau mulus
plot(omega,0.707,om
tanpa riak. Namun
ega,abs(H)), grid;
xlabel('frekuensi') saat menggunakan
, hanning terjadi riak
ylabel('magnitude') dekat dengan puncak
; magnitude. Yang
subplot(222),
plot(omega,unwrap(f
berarti pada
ase)), grid; penggunaan hanning
xlabel('frekuensi') sinyal yg dihasilkan
, ylabel('sudut tidak bagus.
fase');
% *** Desain filter
FIR secara
sederhana ***
m = (N-1)/2; %
penggeseran
n = 0:2*m; %
penetapan titik
untuk plot
h = omegac/pi *
sinc(omegac*(n-
m)/pi);
w = [0 hanning(N-
2)'
zeros(1,length(n)-
N+1)]; % window
hd = h .* w;
[Hd,omega1] =
freqz(hd,1);
fase1 = 180/pi *
angle(H);
subplot(223),
plot(omega1,0.707,o
mega1,abs(Hd)),
grid;
xlabel('frekuensi')
,
ylabel('magnitude')
;
subplot(224),
plot(omega1,unwrap(
fase1)), grid;
xlabel('frekuensi')
, ylabel('sudut
fase');

Tipe Puncak Riak Frekuensi Sudut fasa


window magnitude magnitude cut off
w= Tidak Tidak 0.8
[hamming terdapat terdapat
(N)’ perbedaan riak pada
zeros(1,le pada sinyal
ngth(n)- window dengan
N)]; hamming windowin
maupun g
hanning. mengguna
Puncak kan
magnitude metode
tetap pada hamming
angka 1

w = [0 Tidak Ditemuka 0.8


hanning( terdapat n sedikit
N-2)’ perbedaan riak pada
zeros(1,le pada sinyal
ngth(n)- window dengan
N+1)]; hamming windowin
maupun g hanning.
hanning. Riak
Puncak terdapat
magnitude pada
tetap pada dekat
angka 1 puncak.

Pro % Program 6.4 Mendeklarasikan N


g % Karakteristik sebagai orde filter.
respon frekuensi
6.4 % filter yang F1 sebagai frekuensi
didesain dengan yang akan di filter
function fir2 dengan
N = 30; % orde menggunakan filter
filter
% *** filter low
lowpass dan di
pass *** desain dengan
f1 = [0 0.3 0.3 1]; function fir2. Nilai
m1 = [1 1 0 0]; f1 yakni 0 0.3 0.3 1
b1 = fir2(N,f1,m1); berarti bahwa sinyal
[h1,w1] =
freqz(b1,1,128); yang ditampilkan
subplot(211), adalah sinyal dari
plot(f1,m1,w1/pi,ab frekuensi 0 sampai
s(h1)), grid; 1. M1 adalah
title('karakteristi
k LPF');
magnitude dengan
xlabel('frekuensi nilai 1 1 0 0 yang
ternormalisasi'), berarti akan
ylabel('magnitude') menampilkan sinyal
; berfrekuensi rendah
% *** filter high
pass *** saja yakni 0 – 0,3.
f2 = [0 0.7 0.7 1]; B1 merupakan
m2 = [0 0 1 1]; metode pendesainan
b2 = fir2(N,f2,m2); filter low pass
[h2,w2] =
dengan
freqz(b2,1,128);
subplot(212), menggunakan fungsi
plot(f2,m2,w2/pi,ab fir2. Fungsi fir2
s(h2)), grid; sendiri merupakan
title('karakteristi fungsi untuk
k HPF');
xlabel('frekuensi
mendesaian filter
ternormalisasi'), dengan
ylabel('magnitude') menggunakan
; frekuensi dan
magnitude. Freqz
merupakan respon
frekuensi filter
digital. Membuat
subplot 211 dengan
mengeplotkan hasil
karakteristik sinyal
yang sudah di filter
dg filter lowpass.
Mendeklarasikan f2
sebagai frekuensi i
yang akan di filter
dengan
menggunakan filter
highpass dan di
desain dengan
function fir2. Nilai
f1 yakni 0 0.7 0.7 1
berarti bahwa sinyal
yang ditampilkan
adalah sinyal dari
frekuensi 0 sampai
1. M1 adalah
magnitude dengan
nilai 0 0 1 1 yang
berarti akan
menampilkan sinyal
berfrekuensi rendah
saja yakni 0,7 – 1.
B2 merupakan
metode pendesainan
filter high pass
dengan
menggunakan fungsi
fir2. Membuat
subplot 212 dengan
mengeplotkan hasil
karakteristik sinyal
yang sudah di filter
dg filter highpass.

Tgs % Program 6.4 Untuk membuat


4 % Karakteristik desain filter band
respon frekuensi
% filter yang pass dengan fungsi
didesain dengan fir2, maka nilai f dan
function fir2 m harus dirubah.
N = 30; % orde Bandpass sendiri
filter
% *** filter band
berarti adalah
pass *** gabungan filter
f1 = [0 0.3 0.7 1]; highpass dan
m1 = [0 1 1 0]; lowpass dalam satu
b1 = fir2(N,f1,m1); sinyal. Sementara
[h1,w1] =
freqz(b1,1,128); untuk bandstop
subplot(211), sinyal yang
plot(f1,m1,w1/pi,ab dilewatkan adalah
s(h1)), grid; kebalikannya dari
title(‘karakteristi
bandpass.
k Band Pass
Filter’);
xlabel(‘frekuensi
ternormalisasi’),
ylabel(‘magnitude’)
;
% *** filter band
stop ***
f2 = [0 0.3 0.7 1];
m2 = [1 0 0 1];
b2 = fir2(N,f2,m2);
[h2,w2] =
freqz(b2,1,128);
subplot(212),
plot(f2,m2,w2/pi,ab
s(h2)), grid;
title(‘karakteristi
k Band Stop
Filter’);
xlabel(‘frekuensi
ternormalisasi’),
ylabel(‘magnitude’)
;

Pro % Program 6.5 Mendeklarasikan n


g % Penerapan filter sebagai panjang
yang didesain dari
6.5 function fir2 sinyal, T sebagai
n = 0:200; periode sampling, x1
T = 0.2; % sebagai fungsi untuk
periode sampling membuat sinyal x1
x1 = cos(n*T);
x2 = cos(5*n*T);
dan x2 adalah fungsi
x = x1 + x2; untuk membuat
subplot(221), sinyal x2. X untuk
plot(n*T,x1), grid; membuat sinyal
title(‘sinyal x1’); gabungan antara x1
xlabel(‘waktu’),
ylabel(‘simpangan’) dan x2. Subplot 221
; untuk mengeplotkan
subplot(222), sinyal x1, subplot
plot(n*T,x2), grid; 222 untuk
title(‘sinyal x2’);
mengeplotkan sinyal
xlabel(‘waktu’),
ylabel(‘simpangan’) x2, dan subplot 223
; untuk mengeplotkan
subplot(223), sinyal gabungan x.
plot(n*T,x), grid;
title(‘sinyal x1 +
x2’);
Mendeklarasikan N
xlabel(‘waktu’), ebagai orde filter. F1
ylabel(‘simpangan’) sebagai frekuensi
; yang akan di filter
N = 30; % orde dengan
filter
% *** Low Pass menggunakan filter
Filter FIR **** lowpass dan di
f1 = [0 0.2 0.2 1]; desain dengan
m1 = [1 1 0 0]; function fir2. Nilai
b1 = fir2(N,f1,m1);
y1 =
f1 yakni 0 0.2 0.2 1
filter(b1,1,x); berarti bahwa sinyal
yang ditampilkan
% sinyal keluaran adalah sinyal dari
subplot(224), frekuensi 0 sampai
plot(n*T,y1), grid;
title(‘sinyal hasil 1. M1 adalah
LPF FIR’); magnitude dengan
xlabel(‘waktu’), nilai 1 1 0 0 yang
ylabel(‘simpangan’) berarti akan
;
menampilkan sinyal
berfrekuensi rendah
saja yakni 0 – 0,2.
B1 merupakan
metode pendesainan
filter low pass
dengan
menggunakan fungsi
fir2. Y1 adalah
variabel sinyal yang
telah difilter
highpass dan di
desain dgn fungsi
fir2. Subplot 224
untuk mengeplotkan
sinyal y1.

Tgs % Program 6.5 Mendeklarasikan n


5 % Penerapan filter sebagai panjang
yang didesain dari
function fir2 sinyal, T sebagai
n = 0:200; periode sampling, x1
T = 0.2; % sebagai fungsi untuk
periode sampling membuat sinyal x1
x1 = cos(n*T);
x2 = cos(5*n*T);
dan x2 adalah fungsi
x = x1 + x2; untuk membuat
subplot(221), sinyal x2. X untuk
plot(n*T,x1), grid; membuat sinyal
title(‘sinyal x1’); gabungan antara x1
xlabel(‘waktu’),
ylabel(‘simpangan’) dan x2. Subplot 221
; untuk mengeplotkan
subplot(222), sinyal x1, subplot
plot(n*T,x2), grid; 222 untuk
title(‘sinyal x2’);
mengeplotkan sinyal
xlabel(‘waktu’),
ylabel(‘simpangan’) x2, dan subplot 223
; untuk mengeplotkan
subplot(223), sinyal gabungan x.
plot(n*T,x), grid;
title(‘sinyal x1 +
x2’); Mendeklarasikan N
xlabel(‘waktu’), ebagai orde filter. F1
ylabel(‘simpangan’) sebagai frekuensi
; yang akan di filter
N = 30; % orde dengan
filter
% *** High Pass menggunakan filter
Filter FIR **** highpass dan di
f1 = [0 0.8 0.8 1]; desain dengan
m1 = [0 0 1 1]; function fir2. Nilai
b1 = fir2(N,f1,m1);
y1 = f1 yakni 0 0.8 0.8 1
filter(b1,1,x); berarti bahwa sinyal
% sinyal keluaran yang ditampilkan
subplot(224), adalah sinyal dari
plot(n*T,y1), grid;
title(‘sinyal hasil
frekuensi 0 sampai
HPF FIR’); 1. M1 adalah
xlabel(‘waktu’), magnitude dengan
ylabel(‘simpangan’) nilai 0 0 1 1 yang
; berarti akan
menampilkan sinyal
berfrekuensi rendah
saja yakni 0,8 – 1.
B1 merupakan
metode pendesainan
filter high pass
dengan
menggunakan fungsi
fir2. Y1 adalah
variabel sinyal yang
telah difilter
highpass dan di
desain dgn fungsi
fir2. Subplot 224
untuk mengeplotkan
sinyal y1.

Selesai.

You might also like