Vous êtes sur la page 1sur 6

ADDG_A_04_03411740000006_RISTA FITRI INDRIANI

Script Description
clear all, clc, close all

Fs = 300; Diketahui frekuensi sampling sebesar 300Hz,


Ts = 1/Fs;
x = 0:Ts:1; Ts sebesar 0.003. x merupakan time domain
Nx = length(x); yaitu banyak data dari 0 sampai 1 dicacah
f = [10 20 30]; sebesar Ts. N adalah length dari x. f
ytotal = 0; menunjukkan frekuensi sinyal sebesar 10 20
30. Ytotal dibuat 0 tujuan agar tidak
mempengaruhi yi Nx merupakan panjang dari
time domain (x).

for i = 1:length(f) For digunakan sebagai fungsi looping, fungsi


yi = sin(2*pi*f(i)*x); i menunjukkan seberapa banyak looping yang
ytotal = yi+ytotal;
end dilakukan. Y total menunjukkan fungsi baru
yang meliputi penjumlahan ytotal awal dan yi
% ytotal = ytotal +
2*rand(1,length(ytotal));

Fft merupakan fungsi fourier transform. Jika


Y = fft(ytotal,Nx); panjang x lebih kecil dari besar n, x
xf = (0:1:length(Y)-1)*Fs/Nx;
ditambahkan 0 (zero padding) sampai n,
namun jika panjang x lebih besar dari n,
rangkaian x dipotong.

figure(1) Figure 1 yang terdiri atas 2 grafik. Pada


subplot(2,1,1), plot(x,ytotal), hold gambar grafik pertama merupakan hubungan
on, grid on, title('data time dari pencacahan waktu sampling dengan
domain'),xlabel('time'),
ylabel('amplitude') ytotal, sementara pada gambar kedua
subplot(2,1,2), plot(xf,abs(Y)./Nx), menunjukkan plot dari xf dengan absolut Y
hold on, grid on, title('data atau absolut fast fourier transform
frequency
domain'),xlabel('frequency'),
ylabel('amplitude')

fc = 10; Fc merupakan cut of frequency dimana


Nh = length(x); merupakan nilai yang dijadikan target yang
hsupp = (-(Nh-1)/2:(Nh-1)/2); terletak di antara transition band, dimana
disini digunakan nilai 10. Nh adalah panjang
yang berkaitan dengan time domain. Hsupp
merupakan rentang waktu dari filter yang
ADDG_A_04_03411740000006_RISTA FITRI INDRIANI

digunakan dimana disini dirumuskan sebagai


berikut : hsupp : (-(Nh-1)/2:(Nh-1)/2)

m = 2*fc/Fs; m merupakan hasil dari 2 kali cut of


% h = sin(m*pi.*hsupp)./(pi.*hsupp);
frequency dengan frekuensi sampling. m
% h(ceil(length(h)/2)) = m/pi;
% h = adalah omega c atau kecepatan radian c.
sin((2*pi*fc/Fs).*hsupp)./(pi.*hsupp); h ideal dihasilkan melalui perkalian dari
% h(ceil(length(h)/2)) = kecepatan radian c dengan sin carinal dari
(2*pi*fc/Fs)/pi; perkalian kecepatan radian c dengan rentang
% h = (2*fc/Fs)*sinc((2*fc/Fs)*hsupp);
hideal = m*sinc(m*hsupp); waktu dari filter.
h = hamming(Nh)'.*hideal; %h is our h adalah hamming window
filter Sementara H merupakan hasil fft dari h atau
% h = blackman(Nh)'.*h; %h is our filter dengan Nh dari panjang x.
filter
H = fft(h,Nh);
amp_H = abs(H);
xfh=(0:1:length(H)-1)*Fs/Nh; Amplitude H yang digunakan dari absolut H

%sinc filtering-----------------
figure(2) Pada figure 2 yang pertama merupakan plot
subplot(2,1,1), plot(hsupp,h,'-'),hold
on, grid on, title('filter time dari hsupp atau rentang waktu filter dengan h
domain'), xlabel('time'), atau filter yang digunakan.
ylabel('amplitude')
subplot(2,1,2), plot(xfh,(-amp_H),'- Sementara pada figure 2 yang kedua
'),hold on, grid on, title('filter merupakan hasil dari plot xfh dengan minus
frequency domain'),
xlabel('frequency'), nilai amplitude dari H atau fft dari h dengan
ylabel('amplitude') filter.

Yfil = Y.*H; Y Yfil adalah sinyal hasil filtering ,


merupakan perkalian sinyal FFT dikali
dengan H adalah fast fourier transform dari
hamming dan panjang hamming
yfil = ifft(Yfil); Sinyal hasil filtering diinverskan

%-------------------------------
%sinc filtering-----------------
figure(3) Pada gambar 3 digunakan subplot (2,1,1)
subplot(2,1,1)
plot(xf,abs(Yfil)/Nx,'-'),grid on, pada satu figure terdapat 2 gambar grafik dan
hold on, title('hasil filtering, pada baris pertama menunjukkan xf dan
frequency domain')%sinc filtering- abs(Yfil)/Nx
ADDG_A_04_03411740000006_RISTA FITRI INDRIANI

plot(xf,abs(Y)/Nx,'r-'), legend('hasil
filter', 'data awal')
subplot(2,1,2)
plot(x,yfil,'-'),grid on, hold on, Pada gambar 3 digunakan subplot (2,1,2)
title('hasil filtering, time pada satu figure terdapat 2 gambar grafik dan
domain')%sinc filtering- pada baris kedua menunjukkan plot yfil
plot(x,ytotal,'r-'), legend('hasil
filter', 'data awal')
%-------------------------------

% %fdesign---------------
m = 2*fc/Fs; D merupakan fungsi untuk membuat
d = spesifikasi filter dari object. D dibentuk dari
fdesign.highpass('Fst,Fp,Ast,Ap',m- 'Fst,Fp,Ast,Ap',m-0.01,m+0.01,60,1.
0.01,m+0.01,60,1); Hd adalah design dari spesifikasi filter dengan
Hd = design(d,'equiripple');
yfd = filter(Hd,ytotal); equiripple.
Fungsi yfd merupakan filter dari design
spesifikasi filter dengan equiripple dengan
ytotal.

%fir-------------------
Wn = (2/Fs)*fc; Wn adalah titik-titik cut off frekuensi yang
b = fir1(Nx,Wn,'high'); penting.
yfir = filter(b,1,ytotal);
Fir1 adalah fungsi filter Finite Impulse
Respone yang terdiri dari panjang x, titik cut
off frekensi yang penting.
Sementara yfir adalah fungsi filter dari b, 1,
dengan ytotal.
figure(4)
plot(yfd,'-'), grid on, hold on
Figure 4 menghasilkan 2 figure. Figure yang
plot(yfir,'-'), grid on, hold on, pertama fungsi filter yfd
legend('fdesign','fir1') Sementara figure kedua menghasilkan fungsi
filter finite impulse respone.
fvtool(b); %nampilin 2 gambar fir Fvtool(b) digunakan untuk menampilkan 2
fvtool(Hd); %fdesign
figure baru. Sementara fvtool(Hd) digunakan
untuk menampilkan fdesign.
ADDG_A_04_03411740000006_RISTA FITRI INDRIANI

Figure 1
Dari gambar diatas digunakan perbedaan frekuensi sampling 1 yaitu 300 Hz. Sementara frekuensi
yang digunakan sama yaitu 10 Hz, 20 Hz, dan 30 Hz. Perbedaan frekuensi sampling
mempengaruhi dalam script ini. Semakin besar frekuensi sampling maka semakin rapat ketika
proses Fast Fourier Transform. Fast Fourier Transform digunakan untuk mengubah frekuensi
domain menjadi domain waktu. Hal tersebut dilihat melalui grafik sinusoidal dari hubungan dari
pencacahan waktu sampling dari 0 hingga 1 dengan ytotal yang bernilai 0. Sementara grafik
selanjutnya merupakan double sided spectrum yang merupakan hasil dari proses fast fourier
transform.
ADDG_A_04_03411740000006_RISTA FITRI INDRIANI

Figure 2
Pada figure 2 digunakan fungsi Fc adalah batas dari frekuensi yang bernilai 10, Lh adalah panjang
hamming dengan penjumlahan panjang x dan 1, Nh adalah panjang dari x, hsupp adalah
pencacahan selisih panjang x dan 1 dengan 2 negatif dan positif, hceil digunakan untuk
menghilangkan bilangan imaginer di fft. H adalah fast fourier transform dari hamming dan panjang
hamming, amp_H adalah absolut dari hamming, xfh adalah perbandingan dari pencacahan dari 0
hingga length(H)-1 dengan jumlah cacah 1 dikali frekuensi sampling dibagi panjang hamming.
Pada Figure 2 yang grafik pertama merupakan hasil dari hubungan hsupp dan h. Sementara pada
grafik kedua merupakan hasil plot xfh dengan amplitude H. Cekungan pada grafik yang pertama
dihasilkan dari cut off frekuensi.

Figure 3
Figure 3 merupakan grafik hasil filtering dengan frequency domain dengan time domain. Grafik
yang berwarna merah menunjukkan data awal yang digunakan. Sementara grafik warna biru
merupakan grafik hasil dari invers fast fourier transform.

Figure 4
ADDG_A_04_03411740000006_RISTA FITRI INDRIANI

dari filter fir1 didapatkan hasil berupa grafik data sinyal highpass pada figure(4) cenderung lebih
"landai" perihal ripple effect ampliitudonya jika dibandingkan dengan filter fdesign. hal ini
diakibatkan oleh adanya fitur 'equiripple' pada filter fdesign yang membuat hasil filter ini cepat
menyesuaikan riplle effect pada amplitudonya dengan sebagian besar amplitudo yang erbentuk
pada bagian akhir grafik.

Figure 5
Pada figure(5) filter fir1 memiliki ripple effect yang lebih tinggi jika dibandingkan dengan yang
dimiliki filter fdesign pada figure(6) pada bagian stopband keduanya. walaupun memiliki kisaran
magnitudo yang sama (60dB), namun ripple effect yang terjadi pada hasil filter fdesign jauh lebih
merata jika dibandingkan dengan hasil filter fir1. hal ini diaku=ibatkan pengaruh fitur 'equiripple'
yang membuat ripple effect pada hasil filter fdesign lebih seragam.

Figure 6
Pada figure 6 dihasilkan passband, transition band, dan stopband. Passband amplitudonya
dibawah -60 sementara stopband memiliki amplitude 0.

Vous aimerez peut-être aussi