Anda di halaman 1dari 24

TRANSFORMASI FOURIER

DISKRIT

NAFALIA KURNIAWATI

160534611621

1 (SATU)
TRANSFORMASI FOURIER DISKRIT

A. TUJUAN
 Siswa mampu memahami konsep dasar transformasi sinyal awaktu diskrit dan
mampu menyusun program simulasinya

B. DASAR TEORI
1. Transformasi Fourier
Untuk membandingkan gambaran dari deret fourier untuk sinyal yang periodik,
transformasi Fourier digunakan untuk menunjukkan sinyal yang kontinyu dan
bersifat tidak periodik sebagai superposisi dari gelombang sinus kompleks.
Dimaksudkan bahwa sinyal periodik dapat direpresentasikan sebagai penjumlahan
sinus dan cosinus dengan deret Fourier menghasilkan sinyal yang sangat kuat. Kita
akan menyampaikan hasilnya dalam sinyal yang aperiodik. Penjabarandari deret
Fourier ke sinyal aperiodik dapat diselesaikan dengan memperpanjang periodnya
menjadi tak terbatas. Untuk mendekatinya, kita dapat mengasumsikan bahwa deret
Fourier dari perluasan secara periodik dari sinyal yang tidak periodik x(t) itu ada.
Sinyal yang tidak periodik x(t) didefinisikan dalam interfal t0 _ t _ t0 + T dengan T
> 0. Artinya, x(t) = 0 berada pada luar interval ini. Kita dapat menghasilkan
ekstensi periodik x(t) dari sinyal nonperiodik x(t) dengan memilih T konstan
dimana T > 2(t0 + T) untuk lt0 _ -__ l dan T > -2t0 untuk lt0 < -__l, dan
menunjukkan

2. Transformasi Fourier Diskrit


Transformasi Fourier Diskrit (TFD) adalah salah satu bentuk transformasi
Fourier di mana sebagai ganti integral, digunakan penjumlahan.
Dalam matematika sering pula disebut sebagai transformasi Fourier
berhingga (finite Fourier transform), yang merupakan suatu transformasi Fourier
yang banyak diterapkan dalam pemrosesan sinyal digital dan bidang-bidang terkait
untuk menganalisa frekuensi-frekuensi yang terkandung dalam suatu
contoh sinyal atau isyarat, untuk menyelesaikan persamaan diferensial parsial, dan
untuk melakukan sejumlah operasi, misalnya saja operasi-operasi konvolusi. TFD
ini dapat dihitung secara efesien dalam pemanfaataannya menggunakan
algoritma transformasi Fourier cepat (TFC). marilah kita kembali sejenak tentang
sesuatu yangsudah popular di telinga kita yaitu Fourier transform (FT).
Transformasi Fourier untuk sebuah sinyal waktu kontinyu x(t) secara matematis
dituliskan sebagai

X (ω ) = ∫ x(t )e− jωt dt dimana ω ∈ (− ∞, ∞) (1)

Sementara DFT dibentuk dengan menggantikan integral


berhingga dengan sederetan jumlahan pada suatu nilai berhingga:

N −1

− jωk tn

X (ωk )∆∑ x(tn )e k = 0,1, 2,....., N −1 (2)

Simbol ∆ memiliki arti equal by definition atau dalam bahasa yang m udah
bagi kita adalah bahwa sisi kiri secara definisi akan senilai dengan sisi kanan.
Sementara x(tn) selanjutnya akan kita kenal juga sebagai x(n), yang merupakan
notasi sample ke-n pada sinyal input. X(ωk) juga dapat dijumpai sebagai X(k)
yang merupakan spectral sample ke-k.

Selanjutnya untuk proses pengolahan sinyal digital, kita DFT mutlak


diperlukan karena kita akan berhubungan dengan sinyal waktu diskrit, yang
merupakan bentuk tersampel dari sinyal waktu kontinyu. Dan dalam praktikum ini
kita akan memanfaatkan bentuk dasar library fft yang merupakan pengembangan
dari algorithma dasar DFT. Mengapa kita menggunakan fft? Hal ini bisa dijawab
dengan anda masuk ke Matlab command like dan ketikkan help fft Akan muncul
keterangan:

FFT Discrete Fourier transform.

FFT(X) is the discrete Fourier transform


(DFT) of vector X. For matrices, the FFT
operation is applied to each column. For
N-D arrays, the FFT operation operates on
the first non-singleton dimension.

FFT(X,N) is the N-point FFT, padded


with zeros if X has less than N points
and truncated if it has more.

Cukup jelas bagi kita mengapa kita bisa memanfaatkan library fft dalam
praktikum kali ini.

Pengambilan sampel untuk analisis DFT dari sinyal kontinyu perlu


diperhatikan agar tidak terjadi kesalahan. Analisis DFT dari sinyal kontinyu
menggunakan perkiraan berupa sampel-sampel, maka perlu dipahami adanya
keterbatasan sampel-sampel terhadap bentuk sinyal kontinyu yang sebenarnya.
Ada tiga yang bisa terjadi akibat kesalahan perkiraan sinyal kontinyu, yaitu:

a. Aliasing, karena sample rate tidak cukup tinggi untuk menghindari overlap
spectrum.
b. Leakage, timbul efek distorsi spectrum karena pengabaian sinyal frekuensi
pada waktu yang tak terhingga
c. Picker-fence effect timbul karena ketidakmampuan DFFT mengobservasi
sinyal sebagai sinyal kontinyu, karena perhitungan spectrum yang terbatas.
C. ALAT DAN BAHAN
1. PC multimedia yang sudah dilengkapi dengan OS Windows
2. Perangkat Lunak Matlab yang dilengkapi dengan Tool Box DSP

D. KESELAMATAN DAN KESEHATAN KERJA (K3)


1. Gunakanlah baju Praktek.
2. Pindah peralatan yang tidak digunakan.
3. Selalu patuhi prosedur saat praktek.
4. Baca jobsheet.

E. LANGKAH-LANGKAH PRAKTIKUM
1. Siapkan alat dan bahan
2. Buka aplikasi MATLAB pada laptop anda
3. Gunakan mouse agar memudahkan saat praktek
4. Buat file baru untuk menulis program seusai membaca jobsheet
Sebelum memasuki bentuk DFT yang benar-benar representatif dalam
pengolahan ke domain frekuensi yang sebenarnya, kita akan memulai dengan
langkah yang paling dasar dengan tujuan anda akan merasa lebih mudah
memahaminya bagaimana sebenarnya konsep DFT bekeja.

F. HASIL
1. Dasar Pembentukan DFT
Disni kita mulai dengan mencoba melihat bentuk transformasi Fourier dari
sinyal cosinus yang memiliki periode eksak didalam window yang terdapat pada
sampel. Langkahnya adalah sebagai berikut:
1. Bangkitkan sinyal sinus x(t) = 3cos(2πt), pada t = nT. Untuk suatu n = 0~ 99,
dan T=0,01.

Script program :
%File Name: dft_1.m
n=0:199;
T=0.01;
x_t=3*cos(2*pi*n*T);
plot(n,x_t)
grid;

Output :

Analisis Data :

Pada program ini hasil dari script yang sudah dibuat sebelumnya
merupakan sinyal cosinus. Hal ini dapat diperoleh dari rumus
x_t=3*cos(2*pi*n*T);. Fungsi dari grid; untuk menampilkan garis sesuai dengan
sumbu x dan y.

2. Untuk sementara anda jangan memperhatikan apakah sinyal yang muncul sesuai
dengan nilai sebenarnya. Biarkan axis dan ordinatnya masih dalam angka
seadanya. Anda ganti bagian perintah plot(n,x_t) dengan stem(n,x_t). Coba
perhatikan apa yang anda dapatkan.

Script program :
%File Name: dft_1.m
n=0:199;
T=0.01;
x_t=3*cos(2*pi*n*T);
plot(n,x_t)
grid;
plot(n,x_t)
stem(n,x_t)

Output :
Analisis Data :

Pada program ini hasil dari script yang sudah dibuat sebelumnya
merupakan sinyal cosinus. Tetapi pada program ini digunakan fungsi stem.
Nilai dari sinyal yang diatas dapat diperoleh dari rumus
x_t=3*cos(2*pi*n*T);. Fungsi dari grid; untuk menampilkan garis
sesuai dengan sumbu x dan y.

3. Untuk memulai langkah program DFT, kita mulai dengan membuat


program baru, yang mengacu pada bentuk persamaan berikut ini.

Atau dalam bentuk real dan imaginer:

%File Name: dft_2.m


clear all;
N=200;
nn=N-1;
for k=1:200;
x_n=0.0;
for n=1:nn
x_n = (3*cos(0.02*pi*n)).*(exp(-j*k*2*pi*n/200)) + x_n;
end
yR(k)=real(x_n);
yI(k)=imag(x_n);
magni_k(k)=sqrt(real(x_n).*real(x_n) +imag(x_n).*imag(x_n));
end
figure(1)
stem(yR)
axis([0 200 0 350])
xlabel('indek fekuensi')
title('Bagian Real')
grid;
figure(2)
stem(yI)
axis([0 200 0 350])
xlabel('indek frekuensi')
title('Bagian Imajiner')
grid;

Anda perhatikan ada dua nilai non-zero dalam domain frekuensi indek,
tepatnya pada n=2 dan n=N-2 atau 198, masing-masing bernilai 300. Nilai
ini merepresentasikan AN/2, dimana A=3 yang merupakan amplitudo sinyal
cosinus dan N = 200 merupakan jumlah sample yang digunakan. Sementara
bagian imajiner bernilai nol semua, mengapa?

Gambar 2. Bagian imajiner pada domain frekuensi


Script Program :
%File Name: dft_2.m
clear all;
N=200;
nn=N-1;
for k=1:200;
x_n=0.0;
for n=1:nn
x_n = (3*cos(0.02*pi*n)).*(exp(-j*k*2*pi*n/200)) + x_n;
end
yR(k)=real(x_n);
yI(k)=imag(x_n);
magni_k(k)=sqrt(real(x_n).*real(x_n) +imag(x_n).*imag(x_n));
end
figure(1)
stem(yR)
axis([0 200 0 350])
xlabel('indek fekuensi')
title('Bagian Real')
grid;
figure(2)
stem(yI)
axis([0 200 0 350])
xlabel('indek frekuensi')
title('Bagian Imajiner')
grid;

Output :

Analisis Data :

Pada program ini merupakan menentukan sinyal bilangan real dan


imajiner. Hal ini dapat dibuktikan dari rumus pada script diatas yaitu, x_n =
(3*cos(0.02*pi*n)).*(exp(-j*k*2*pi*n/200))+x_n;. Untuk mengetahui
apakah dari rumus tersebut bilangan imajiner atau real maka menggunakan
fungsi yR(k)=real(x_n); untuk real dan yI(k)=imag(x_n); untuk imajiner .
dan akan dipanggil menggunakan fungsi stem(yR) untuk real dan
stem(yI)untuk imajiner. Fungsi dari grid; untuk menampilkan garis sesuai
dengan sumbu x dan y.
4. Coba ulangi langkah 1-3 dengan merubah dari sinyal cosinus menjadi sinyal
sinus. Untuk langkah k-1 anda rubah
x_t=3*cos(2*pi*n*T); Æ menjadi Æ x_t=3*sin(2*pi*n*T);
Demikian juga pada untuk langkah ke-3 bentuk
x_n = (3*cos(0.02*pi*n)).*(exp(-j*k*2*pi*n/200)) + x_n;

menjadi

x_n = (3*sin(0.02*pi*n)).*(exp(-j*k*2*pi*n/200)) + x_n;

Apa yang anda dapatkan?

Script program :
%File Name: dft_1.m
n=0:199;
T=0.01;
x_t=3*sin(2*pi*n*T);
plot(n,x_t)
grid;
%plot(n,x_t)
stem(n,x_t);
subplot(4,1,2);
%File Name: dft_2.m
clear all;
N=200;
nn=N-1;
for k=1:200;
x_n=0.0;
for n=1:nn
x_n = (3*sin(0.02*pi*n)).*(exp(-j*k*2*pi*n/200)) + x_n;end
yR(k)=real(x_n);
yI(k)=imag(x_n);end
subplot(4,1,2);
stem(yR)
axis([0 200 0 800])
xlabel('indek fekuensi')
title('Bagian Real')
grid;
stem(yI)
axis([0 200 0 800])
xlabel('indek frekuensi')
title('Bagian Imajiner')
grid;
subplot(4,1,2);

Output :
Analisis data :
Pada program ini berfungsi untuk menampilkan gabungan dari script 1-
3. Sinyal pada program ini merupakan sinyal cosinus dikarenakan pada script
ditulis rumus x_t=3*sin(2*pi*n*T); pada script 1,2 dan x_n =
(3*sin(0.02*pi*n)).*(exp(-j*k*2*pi*n/200)) + x_n; pada script 3.
Pada program ini menggunakan fungsi dari subplot untuk menampilkan lebih
dari 1 sinyal pada 1 program. Fungsi dari grid; untuk menampilkan garis sesuai
dengan sumbu x dan y. pada program ini sinyal yang tampil merupakan sinyal
sinus.

5. Ulangi langkah 1-3 dengan merubah nilai sample N=200, menjadi N=1000. Apa
yang anda dapatkan?

Script Program :
%File Name: dft_1.m
n=0:199;
T=0.01;
x_t=2*cos(2*pi*n*T);
plot(n,x_t);
grid;
subplot(4,1,1);
%File Name: dft_1.m
n=0:199;
T=0.01;
x_t=3*cos(2*pi*n*T);
plot(n,x_t)
grid;
%plot(n,x_t)
stem(n,x_t);
subplot(4,1,2);
%File Name: dft_2.m
clear all;
N=1000;
nn=N-1;
for k=1:200;
x_n=0.0;
for n=1:nn
x_n = (3*cos(0.02*pi*n)).*(exp(-
j*k*2*pi*n/200)) + x_n;
end
yR(k)=real(x_n);
yI(k)=imag(x_n);end
subplot(4,1,2);
stem(yR)
axis([0 200 0 800])
xlabel('indek fekuensi')
title('Bagian Real')
grid;
figure(2)stem(yI)
axis([0 200 0 800])
xlabel('indek frekuensi')
title('Bagian Imajiner')
grid;
subplot(4,1,2);

Output :
Analisis data :
Pada program ini berfungsi untuk menampilkan gabungan dari script 1-
3. Sinyal pada program ini merupakan sinyal cosinus dikarenakan pada script
ditulis rumus x_t=3*cos(2*pi*n*T); pada script 1,2 dan x_n =
(3*cos(0.02*pi*n)).*(exp(-j*k*2*pi*n/200)) + x_n; pada script 3.
Pada program ini menggunakan fungsi dari subplot untuk menampilkan lebih
dari 1 sinyal pada 1 program. Fungsi dari grid; untuk menampilkan garis sesuai
dengan sumbu x dan y. pada program ini sinyal yang ditampilkan adalah sinyal
cosinus. Pada program ini nilai dari axis([0 200 0 800]) terjadi perubahan
dikarenakan sinyal yang ditampilkan tidak terlihat jelas berapa nilai yang
ditampilkan. Hal ini dikarenakan pada program ini terjadi perubahan nilai dari N
yang diubah menjadi 1000.

2. Zero Padding
Kita mulai dengan sebuah sinyal waktu diskrit berupa sekuen unit step.

Gambar 3. Sekuen unit step

Apabila kita menggunakan transformasi Fourier pada sinyal ini, akan


diperoleh bentuk seperti berikut:

Gambar 4. Transformasi fourier sekuen unit

Untuk memahami konsep zero padding pada DFT, anda ikuti langkah-
langkah percobaan berikut ini.
1. Buat program baru untuk pembangkitan sekuen unit step dan gunakan juga fft
untuk memperoleh nilai DFT.

Script Program :
k=3;
n1=0;
n2=4;
n=[n1:n2];
x=[(k-n)>=0];
figure(3);
stem(n,x);
xlabel('n');
ylabel('x[n]');
grid;

n=input ('Masukkan panjang sinyal step Sekuen N=');


t=0:n-1;
%y=ones(1,n);
y=[1,1,1,1];
figure(1);
plot(t,y);
axis([0 4 -0.1 1.1])
ylabel ('Amplitude');
xlabel ('Time Index');
title ('Unit Step Signal');
grid on;

x=fft(y);
m=abs(x);
f=(0:length(x)-1)*100/length(x);
figure(2)
plot(f,m)
title('Magnitude')
;
Output :
2. Modifikasi program anda dengan menambahkan nilai nol sebanyak 4
angka di belakang sekuen bernilai satu tersebut.

Script Program :
k=3;
n1=0;
n2=4;
n=[n1:n2];
x=[(k-n)>=0];
figure(3);
stem(n,x);
xlabel('n');
ylabel('x[n]');
grid;

n=input ('Masukkan panjang sinyal step Sekuen N=');


t=0:n-1;
%y=ones(1,n);
y=[1,1,1,1,0,0,0,0];
figure(1);
plot(t,y);
axis([0 4 -0.1 1.1])
ylabel ('Amplitude');
xlabel ('Time Index');
title ('Unit Step Signal');
grid on;

x=fft(y);
m=abs(x);
f=(0:length(x)-1)*100/length(x);
figure(2)
plot(f,m)
title('Magnitude')

Output :
3. Modifikasi program anda sehingga nilai nol dibelakang sekuen unit step
menjadi 12, catat apa yang terjadi.

Script Program :
k=3;
n1=0;
n2=4;
n=[n1:n2];
x=[(k-n)>=0];
figure(3);
stem(n,x);
xlabel('n');
ylabel('x[n]');
grid;

n=input ('Masukkan panjang sinyal step Sekuen N=');


t=0:n-1;
%y=ones(1,n);
y=[1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0];
figure(1);
plot(t,y);
axis([0 4 -0.1 1.1])
ylabel ('Amplitude');
xlabel ('Time Index');
title ('Unit Step Signal');
grid on;

x=fft(y);
m=abs(x);
f=(0:length(x)-1)*100/length(x);
figure(2)
plot(f,m)
title('Magnitude')

Output :

Lanjutkan penambahan nilai nol menjadi 16, dan catat apa yang terjadi.

Gambar 5. Sekuen unit step dan hasil DFT


Jelaskan konsep zero padding yang telah anda buat simulasinya…..(smile)

Script Program :
k=3;
n1=0;
n2=4;
n=[n1:n2];
x=[(k-n)>=0];
figure(3);
stem(n,x);
xlabel('n');
ylabel('x[n]');
grid;
n=input ('Masukkan panjang sinyal step Sekuen N=');
t=0:n-1;
%y=ones(1,n);
y=[1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];
figure(1);
plot(t,y);
axis([0 4 -0.1 1.1])
ylabel ('Amplitude');
xlabel ('Time Index');
title ('Unit Step Signal');
grid on;
x=fft(y);
m=abs(x);
f=(0:length(x)-1)*100/length(x);
figure(2)
plot(f,m)
title('Magnitude')
Output :
Analisis data :
Pada program diatas berfungsi untuk menampilkan zero padding. Perubahan
dari sinyal magnitude terjadi berdasarkan dari nilai y pada program diatas.
semakin banyak data atau nilai 0 yang kita inputkan pada program maka sinyal
magnitude akan semakin halus dan mendektai bentuk sinyal sinusoidal.

3. Representasi Dalam Domain Frekuensi


Cara yang paling mudah dalam menguji program transformasi ke domain
frekuensi adalah dengan menggunakan sinyal bernada tunggal, yaitu sinyal
dengan fungsi dasar sinusoida. Untuk itu coba anda perhatikan dengan yang
telah anda lakukan pada percobaan ke-1, yaitu pada pemahaman dasar DFT.
Disitu sinyal cosinus yang ditransformasikan menghasilkan bentuk dalam
tampilan indek frekuensi. Dengan mengkobinasikan percobaan ke-1 dan
percobaan ke-2 kita akan mampu menyusun sebuah program DFT yang mampu
digunakan untuk pengamatan sinyal waktu diskrit dan melihat tampilannya
dalam domain frekuensi. Untuk itu ikuti langkah berikut.

1. Susun sebuah program baru dengan algorithma yang merupakan


kombinasi dari percobaan ke-1 dan percobaan ke-2.

Script Program:
%prak_SS_7_2.m
% zero-padded data:
clear all
T = 128; % sampling rate
zpf = 2; % zero-padding factor

n = 0:1/T:(T-1)/T; % discrete time axis


fi = 5; % frequency
xw = [sin(2*pi*n*fi),zeros(1,(zpf-1)*T)];
nn=length(xw);
k=0:nn-1;
% Plot time data:
subplot(2,1,1);
plot(zpf*k/nn,xw);%normalisasi absis domain waktu
axis([0 zpf -1.1 1.1])
xlabel('domain waktu (detik)')
% Smoothed, interpolated spectrum:
X = fft(xw);
spec = abs(X);
f_X=length(X)
f=0:f_X-1;
% Plot spectral magnitude:
subplot(2,1,2);
plot(f/T,spec);
axis([0 T/T 0 100])
xlabel('domain frekuensi (x pi), ternormalisasi terhadap
frekuensi sampling')
Output :

Analisis data :
Pada program ini berfungsi untuk menampilkan domain waktu dan
domain frekuensi (x pi), ternormalisasi terhadap frekuesi sampling. Dan
menggunakan rumus xw = [sin(2*pi*n*fi),zeros(1,(zpf-1)*T)];. Setiap
tampilan pada masing-masing sinyal dari rumus dasar akan dirubah sesuai
dengan script diatas. plot(zpf*k/nn,xw); untuk domain waktu dan
plot(f/T,spec); untuk domain frekuensi (x pi), ternormalisasi terhadap
frekuesi sampling. Setelah dilakukan perubahan maka akan ditampilkan dari
perubahan masing-masing sinyal.
2. Lakukan beberapa modifikasi, sehingga tampilannya nilai frekuensi
dalam Hz.
% Plot spectral magnitude:
% subplot(2,1,2);
% plot(f/2,spec);
% axis([0 T/2 0 100])
% xlabel('domain frekuensi')
Amati dan catat hasilnya.

Script Program:
%prak_SS_7_2.m
% zero-padded data:
clear all
T = 128; % sampling rate
zpf = 2; % zero-padding factor

n = 0:1/T:(T-1)/T; % discrete time axis


fi = 5; % frequency
xw = [sin(2*pi*n*fi),zeros(1,(zpf-1)*T)];
nn=length(xw);
k=0:nn-1;
% Plot time data:
subplot(2,1,1);
plot(zpf*k/nn,xw);%normalisasi absis domain waktu
axis([0 zpf -1.1 1.1])
xlabel('domain waktu (detik)')
% Smoothed, interpolated spectrum:
X = fft(xw);
spec = abs(X);
f_X=length(X)
f=0:f_X-1;
% Plot spectral magnitude:
subplot(2,1,2);
plot(f/2,spec);
axis([0 T/2 0 100])
xlabel('domain frekuensi')

Output :
Analisis data :
Pada program ini berfungsi untuk menampilkan domain waktu dan domain
frekuensi. Dan menggunakan rumus xw = [sin(2*pi*n*fi),zeros(1,(zpf-1)*T)];.
Setiap tampilan pada masing-masing sinyal dari rumus dasar akan dirubah
sesuai dengan script diatas. plot(zpf*k/nn,xw); untuk domain waktu dan
plot(f/2,spec);untuk domain frekuensi. Setelah dilakukan perubahan maka akan
ditampilkan dari perubahan masing-masing sinyal. Dari domain frekuensi (x
pi), ternormalisasi terhadap frekuensi sampling dan domain frekuensi terdapat
perbedaan dari besar nilai f.

3. Lakukan modifikasi kembali untuk mendapatkan nilai magnitudo dalam


besaran dB
% Plot spectral magnitude:
% subplot(2,1,2);
% plot(f/2,spec);
% axis([0 T/2 0 40])
% xlabel('domain frekuensi dalam dB')
grid

Amati dan catat hasilnya

Script Program :
%prak_SS_7_2.m
% zero-padded data:
clear all
T = 128; % sampling rate
zpf = 2; % zero-padding factor

n = 0:1/T:(T-1)/T; % discrete time axis


fi = 5; % frequency
xw = [sin(2*pi*n*fi),zeros(1,(zpf-1)*T)];
nn=length(xw);
k=0:nn-1;
% Plot time data:
subplot(2,1,1);
plot(zpf*k/nn,xw);%normalisasi absis domain waktu
axis([0 zpf -1.1 1.1])
xlabel('domain waktu (detik)')
% Smoothed, interpolated spectrum:
X = fft(xw);
spec = abs(X);
f_X=length(X)
f=0:f_X-1;
% Plot spectral magnitude:
subplot(2,1,2);
plot(f/2,spec);
axis([0 T/2 0 40])
xlabel('domain frekuensi dalam dB')
grid;
Output :

Analisis data :
Pada program ini berfungsi untuk menampilkan domain waktu dan
domain frekuensi. Dan menggunakan rumus xw = [sin(2*pi*n*fi),
zeros(1,(zpf-1)*T)];.Setiap tampilan pada masing-masing sinyal dari
rumus dasar akan dirubah sesuai dengan script diatas.
plot(zpf*k/nn,xw); untuk domain waktu dan plot(f/2,spec);untuk
domain frekuensi. Setelah dilakukan perubahan maka akan ditampilkan
dari perubahan masing-masing sinyal. Dari domain frekuensi (x pi),
ternormalisasi terhadap frekuensi sampling, domain frekuensi dan
domain frekuensi dalam Db terdapat perbedaan dari besar nilai f. pada
sinyal domain frekuensi dalam Db hasil sinyal terdapat sinyal yang tidak
dapat dilihat hal tersebut dikarenakan nilai dari axis([0 T/2 0 40]).

4. Sekarang coba bangkitkan sebuah sinyal sinus dan dapatkan nilai


frekuensinya dengan memanfaatkan DFT. Dimana sinyal sinus ini memiliki
bentuk dasar sebagai berikut. x(n) = (1/64)*(sin(2*π*n/64)+
(1/3)*sin(2*π∗15*n/64))

Script Program :
Output :
Analisis data :
G. TUGAS PRAKTIKUM

1. Apa yang dimaksud dengan zero padding?


Zero padding adalah penambahan angka Nol pada depan angka. Zero
padding digunakan untuk memformat bilangan dengan diawali angka 0
(nol) dengan tujuan menghasilkan jumlah digit yang tetap. Dalam
pemrograman PHP dapat digunakan untuk menampilkan integer dalam
format zero-padded langsung ditampilkan pada klien atau untuk digunakan
pada proses selanjutnya misalnya sebagai parameter pada fungsi lain yang
dibuat.
2. Apa pengaruh perbedaan nilai zero padding pada tampilan sinyal dalam
domain frekuensi?
Zero Padding Zero padding merupakan penambahan angka nol saja.
yaitu penambahan angka 0 sebanyak 4 angka dibelakang sekuen yang
bernilai satu pada fft hasilnya akan termodifikasi dengan nilai DFT yang
didapatkan pada praktikum
3. Berapa sample yang dipersyaratkan dalam operasi DFT?
Dasar Pembentukan DFT DFT (Discrete Fourier Transform) berfungsi
untuk menjumlahkan seluruh fungsi diferensial pada suatu sistem. Maka
dari inilah yang dimanfaatkan pada operasi konvolusi dan terlihat pada
sinyal yang dihasilkan memiliki bagian real dan imajner yang membuktikan
bahwa setiap operasi pada listing program telah dijumlahkan.
4. Apa perbedaan tampilan nilai frekuensi dalam radiant dan tampilan frekuensi
dalam Hz?
Representasi dalam domain frekuensi Representasi dalam domanin
frekuensi merupakanPenggabungkan antara percobaan pertama dan kedua
yaitu DFT dan zero padding sehingga kita dapat melihat sinyal waktu
diskrit dalam domain frekuensi. Jadi, hasil yang didapatkan merupakan
representasi sinyal waktu diskrit dalam domain frekuens
5. Apa yang dimaksud tampilan nilai magnitudo dalam dB?
Penampilan sinyal magnitude hasil perhitugan dalam satuan suara.

H. KESIMPULAN
1. Transformasi Fourier Diskrit (TFD) adalah salah satu bentuk transformasi
Fourier di mana sebagai ganti integral, digunakan penjumlahan.
2. Transformasi fourier diskrit membangkitkan sinyal cosinus yang
ditransformasikan dan menghasilkan bentuk dalam tampilan indek frekuensi.
3. Untuk melihat sinyal waktu diskrit dalam domain frekuensi dibutuhkan zero
padding.
4. Transformasi Fourier Diskrit merujuk pada transformasi matematik bebas
atau tidak bergantung bagaimana transformasi tersebut dihitung.
5. Transformasi Fourier Cepat merujuk pada satu atau beberapa algoritma
efesien untuk menghitung TFD.

I. DAFTAR PUSTAKA
 https://phpmu.com/zero-padding-atau-angka-nol-di-depan-dengan-php/diakses
pada 06-11-2017
 https://www.mathworks.com/help/search.html?qdoc=zero+padding&submitsear
ch diakses pada 07-11-2017
 https://www.mathworks.com/help/signal/ug/amplitude-estimation-and-zero-
padding.html diakses pada 07-11-2017
 http://web.mst.edu/~kosbar/test/ff/dfs/zeropad.html diakses pada 08-11-2017

Anda mungkin juga menyukai