MODUL 1
SINYAL: REPRESENTASI DOMAIN WAKTU
PEMBANGKITAN SEQUENCES
% Program P1_1
% Generation of a Unit Impulse Sequence
clf;
% Generate a vector from -10 to 20
n = -10:20;
% Generate the unit impulse sequence
u = [zeros(1,10) 1 zeros(1,20)];
% Plot the unit impulse sequence
stem(n,u);
xlabel('Time index n');ylabel('Amplitude');
title('Unit Sample Sequence');
axis([-10 20 0 1.2]);
Tugas Modul:
a. Tunjukkan unit impulse sequence u[n] yang dibangkitkan oleh Program P1_1.
b. Sebutkan fungsi dari perintah clf , axis , title , xlabel and ylabel.
clf : menghapus seluruh objek yang ada pada saat ini
axis : memberi batasan atau skala pada gafik
title : memberi judul di atas grafik
xlabel : memberi label untuk sumbu x
ylabel : memberi label untuk sumbu y
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
c. Ubah Program P1_1 untuk membangkitkan sebuah delayed unit impulse sequence ud[n] dengan
delay sebanyak 11 samples dan tunjukkan sequence yang dibangkitkan oleh program tersebut.
clf;
n = -10:20;
ud = [zeros(1,21) 1 zeros(1,9)];
stem(n,ud);
xlabel('Time index n');ylabel('Amplitude');
title('Unit Sample Sequence');
axis([-10 20 0 1.2]);
d. Ubah Program P1_1 untuk membangkitkan sebuah unit step sequence s[n] dan tunjukkan
sequence yang dibangkitkan oleh program tersebut.
clc;
clf;
n = -10:20;
s = [zeros(1,10) ones(1,21)];
stem(n,s);
xlabel('Time index n');ylabel('Amplitude');
title('Unit Step Sequence');
axis([-10 20 0 1.2]);
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
e. Ubah Program P1_1 untuk membangkitkan sebuah unit step sequence sd[n] yang mendahului 7
samples dan tunjukkan sequence yang dibangkitkan oleh program tersebut.
clf;
n = -10:20;
sd = [zeros(1,3) ones(1,28)];
stem(n,sd);
xlabel('Time index n');ylabel('Amplitude');
title('Unit Sample Sequence');
axis([-10 20 0 1.2]);
% Program P1_2
% Generation of special sequence
clf;
% First function
c1 = -(1/12)+(pi/6)*i; K1 = 2; n1 = 0:40;
x1 = K1*exp(c1*n1);
% Second function
n2 = 0:35; a2 = 1.2; K2 = 0.2;
x2 = K2*a2.^n2;
% Third function
n3 = 0:99;
f3 = 0.1;
phase3 = 0;
A3 = 2;
arg = 2*pi*f3*n3 - phase3;
x3 = A3*sin(arg);
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
Tugas Modul :
a. Tunjukkan sequence yang dihasilkan dengan menjalankan program tersebut. Fungsi apakah itu?
i.
j.
k.
l.
m.
n.
% Program P1_3
% Generation of a uniformly distributed Random Sequence
n = 1:100;
A = 2;
x = A*rand(1,100)-ones(1,100);
clf;
stem(n,x);
axis([1 100 -4 4]);
grid;
title('Uniformly distributed Random Sequence');
xlabel('Time index n');
ylabel('Amplitude');
axis;
c. Ubah A menjadi sama dengan pada kedua program diatas. Tunjukkan sinyal tersebut!
BELUM PAHAM
e. Program MATLAB dibawah digunakan untuk membangkitkan dan menampilkan display dari
sebuah sinyal acak dengan panjan 100 dengan elemen yang terdistribusi secara uniform pada
interval [-2,2] dan juga membuat plot dari sebuah sequence acak yang dihasilkan dari menjalankan
program.
n = 1:100;
A = 2;
x = A*rand(1,100)-ones(1,100);
clf;
plot(n,x);
axis([1 100 -2 2]);
grid;
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
f. Program MATLAB yang digunakan untuk menghasilkan dan menampilkan 5 sampel sequence sebuah
sinyal sinusoidal acak dengan panjang 31.
{X[n]} = {Acos(ωn + )}
dimana amplitude dan phase A merupakan variable acak yang statistically independent yang
memiliki distribusi probabilitas secara uniform antara 0 A 4 (untuk amplitudo) and antara
0 (untuk phase). Kemudian muncullah juga 5 sample sequence yang diperoleh dari
menjalakan program pada 5 waktu berbeda.
BELUM PAHAM
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
% Program P1_4
% Generation of a normally distributed Random Sequence
n = 1:100;
a = 5;
b = 1;
x = a.*randn(1,100)+b;
%mean(x)
%std(x)
clf;
stem(n,x);
axis([1 100 -5 5]);
grid;
title('Normally distributed Random Sequence');
xlabel('Time index n');
ylabel('Amplitude');
axis;
a = 2 b = -2
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
a=3b=2
c. Apa fungsi dari a dan b? (Jika belum paham, aktifkan script mean(x) and std(x). Ulangi 1.4b
)
A merupakan standar deviasi dan b merupakan mean
e. Bangkitkan sebuah sinyal acak yang terdistribusi normal dengan mean (1) dan standard deviation
(1)
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
% Program P1_5
% Signal Smoothing by Averaging
clf;
R = 51;
d = 0.8*(rand(R,1) - 0.5); % Generate random noise
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
m = 0:R-1;
s = 2*m.*(0.9.^m); % Generate uncorrupted signal
x = s + d'; % Generate noise corrupted signal
subplot(2,1,1);
plot(m,d','r-',m,s,'g--',m,x,'b-.');
xlabel('Time index n');ylabel('Amplitude');
legend('d[n] ','s[n] ','x[n] ');
x1 = [0 0 x];x2 = [0 x 0];x3 = [x 0 0];
y = (x1 + x2 + x3)/3;
subplot(2,1,2);
plot(m,y(2:R+1),'r-',m,s,'g--');
legend( 'y[n] ','s[n] ');
xlabel('Time index n');ylabel('Amplitude');
Quests:
a. Tunjukkan sinyal yang dibangkitkan dari menjalankan Program 1.5
d. Hubungan antara sinyal x1, x2, x3, dan sinyal x adalah : x1, x2, x3 merupakan komponen dari
sinyal x
e. Sebutkan fungsi dari perintah legend
Memberi keterangan dari setiap elemen penting yang ada pada grafik dengan kotak yang terletak
di pojok kanan atas
f. Sebutkan fungsi dari argumen ‘r-’ & ‘g--‘ f
Fungsi dari argument ‘r-’ adalah untuk memberikan warna merah pada garis lurus.
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
Fungsi dari argument ‘g--‘ adalah untuk memberikan warna hijau pada garis putus-putus.
g. *Buatlah sinyal yang lebih smooth dengan delay sebanyak 5 samples dan bandingkan dengan sinyal
sebelumnya!
% Program P1_5
% Signal Smoothing by Averaging
clf;
R = 51;
d = 0.8*(rand(R,1) - 0.5); % Generate random noise
m = 0:R-1;
s = 2*m.*(0.9.^m); % Generate uncorrupted signal
x = s + d'; % Generate noise corrupted signal
subplot(2,1,1);
plot(m,d','r-',m,s,'g--',m,x,'b-.');
xlabel('Time index n');ylabel('Amplitude');
legend('d[n] ','s[n] ','x[n] ');
x1 = [0 0 0 0 0 0 0 x];x2 = [0 0 0 0 0 0 x 0];x3 = [0 0 0 0 0 x 0
0]; x4 = [0 0 0 0 x 0 0 0]; x5 = [0 0 0 x 0 0 0 0]; x6 = [0 0 x 0
0 0 0 0]; x7 = [0 x 0 0 0 0 0 0]; x8 = [x 0 0 0 0 0 0 0];
y = (x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8)/8;
subplot(2,1,2);
plot(m,y(2:R+1),'r-',m,s,'g--');
legend( 'y[n] ','s[n] ');
xlabel('Time index n');ylabel('Amplitude');
a. Bangkitkan sebuah sinyal linear y = ax + b dalam range [1..100] menggunakan for. Contoh: [1 4 7
10…298]
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
clf;
for x = 1:100
a=4;
b=3;
y(x) = a*x+b;
end
stem(y);
b. Bangkitkan sebuah sinyal periodik dengan time period minimum 4 samples dalam range [1..100].
Contoh: [1 2 5 4 3 1 2 5 4 3 … 1 2 5 4 3]
clf;
t = 1:100;
x = sin(2*pi*0.1*t)+0;
stem(t,x)
axis([0 100 -1 1])
xlabel('Time (s)')
ylabel('Amplitude')
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
title('Periodic Wave')
c. Bangkitkan sinyal DC Squarewave, AC Squarewave, dan Sawtooth dengan amplitudo 1 and periode 10
dalam range [1..100]. Gunakan perintah subplot.
clf;
fs1 = 100;
t1 = 0:1/fs1:100;
x1 = square(2*pi*0.2*t1)+1
subplot(2,2,1);
plot(t1,x1);
axis([0 100 -2 5]);
xlabel('Time (sec)');
ylabel('Amplitude');
title('DC Square Periodic Wave');
fs2 = 100;
t2 = 0:1/fs2:100;
x2 = square(2*pi*0.1*t2);
subplot(2,2,2);
LABORATORIUM TEKNIK SISTEM DAN SIBERNETIKA
JURUSAN TEKNIK ELEKTRO B.405 DAN AJ.204
plot(t2,x2)
axis([0 100 -1.2 1.2])
xlabel('Time (sec)')
ylabel('Amplitude')
title('AC Square Periodic Wave')
fs3 = 100;
t3 = 0:1/fs3:100;
x3 = sawtooth(2*pi*0.1*t3);
subplot(2,2,3);
plot(t3,x3);
axis([0 100 -1.2 1.2])
xlabel('Time (sec)')
ylabel('Amplitude')
title('Sawtooth Periodic Wave')