Anda di halaman 1dari 11

Pengolahan Sinyal Digital

Dasar Fungsi Sinyal


• Hal mendasar untuk memahami DFT adalah memahami dasar teori
sinyal yang digunakan pada DFT. Contoh sederhana fungsi sebuah
sinyal ditunjukan pada gambar dibawah ini :
Bagaimana grafik yang dihasilkan dari
koding dibawah ini
%PROGRAM SINYAL SINUS
x = 0:0.1:1;
y = sin(x*1*pi*2)*2;
subplot(2,2,1);plot(x,y,'LineWidth',2)
title('SINYAL SINUS');
grid on;

%PROGRAM GRAFIK y
x=0:0.01:3;
y=x.^2;
subplot(2,2,3);plot(x,y,'LineWidth',2);
title('GRAFIK y=x^2');
grid on;
Tugas:
1. Dari contoh-contoh program yang sudah anda jalankan, coba
berikan penjelasan arti setiap perintah terhadap output yang
dihasilkannya
2. Coba anda cari bagaimana cara menampilkan grafik untuk tampilan
tiga dimensi dan grafik polar
Magnitude DFT
• Dalam teori DFT sebuah fungsi suatu sinyal dapat dituliskan dalam
bentuk bilangan kompleks yang terdiri dari komponen real dan
komponen imaginary.

• Dengan nilai real dan imaginary dapat dicari nilai magnitude yang


dapat dianalogikan sebagai amplitudo suatu sinyal pada frekuensi
tertentu, selain itu juga dapat mengetahui fasa suatu sinyal.
Dasar pemahaman penulisan fungsi sinyal dalam bentuk
kompleks dapat dilihat pada gambar dibawah ini

 Ilustrasi komponen real dan imaginary pada sebuah sinyal sinusoidal


MATLAB code for DFT
% MATLAB code for DFT
clc;
xn=input('Input sequence: ');
N = input('Enter the number of points: ');
Xk=calcdft(xn,N);
disp('DFT X(k): ');
disp(Xk);
mgXk = abs(Xk);
phaseXk = angle(Xk);
k=0:N-1;
subplot (2,1,1);
stem(k,mgXk);
title ('DFT sequence: ');
xlabel('Frequency');
ylabel('Magnitude');
subplot(2,1,2);
stem(k,phaseXk);
title('Phase of the DFT sequence');
xlabel('Frequency');
ylabel('Phase');
function[Xk] = calcdft(xn,N)
L=length(xn);
if(N<L)
error('N must be greater than or equal to L!!')
end
x1=[xn, zeros(1,N-L)];
for k=0:1:N-1
for n=0:1:N-1
p=exp(-i*2*pi*n*k/N);
W(k+1,n+1)=p;
end
end
disp('Transformation matrix for DFT')
disp(W);
Xk=W*(x1.')
end

Anda mungkin juga menyukai