Menampilkan Sinyal Menggunakan MATLAB
A.
Perangkat
Lunak MATLAB
MATLAB (MATrix LABoratory) adalah suatu perangkat lunak interaktif yang dibuat oleh Works Inc. MATLAB mengintegrasikan kalkulus digital, visualisasi data dan pemrograman lingkungan terbuka. MATLAB secara khusus didesain untuk pemrosesan sinyal digital dan pemodelan sistem digital yang kompleks serta simulasinya. Perangkat lunak ini dapat bekerja pada platform Windows maupun UNIX.
B.
Perintah
MATLAB
Perintah MATLAB yang biasa digunakan pada praktikum yaitu:
Perintah
|
Keterangan
|
+, -, *, /, ^
|
Operator aritmatika yang biasa
digunakan. Tambah, kurang, kali, bagi, pangkat
|
>, <=, >, >=
|
Operator hubungan antara bilangan
yang biasa digunakan. Lebih kecil, lebih kecil sama dengan, lebih besar,
lebih besar sama dengan
|
==
|
Nilai yang sama
|
~=
|
Nilai yang tidak sama
|
&
|
Logika AND
|
|
|
Logika OR
|
~
|
Logika NOT
|
=
|
Operator penempatan variabel
|
,
|
Digunakan untuk memisahkan
argument sebuah fungsi atau elemen pada data array
|
[]
|
Digunakan untuk membuat data
array
|
()
|
Digunakan untuk ekspresi
aritmatika
|
:
|
Digunakan untuk indeks variabel
|
;
|
Digunakan pada akhir statmen agar
tidak menampilkan keluaran.
|
...
|
Digunakan untuk melanjutkan
perintah pada baris selanjutnya
|
%
|
Digunakan untuk memberikan
komentar
|
ans
|
Nama variabel untuk hasil
|
pi
|
|
sin, cos, tan, cot, sec
|
Fungsi trigonometri
|
max
|
Komponen terbesar
|
min
|
Komponen terkecil
|
mean
|
Rata-rata
|
sum
|
Jumlah dari elemen-elemen
|
zeros
|
Memberikan nilai 0 pada array
|
ones
|
Memberikan nilai 1 pada array
|
plot
|
Plot vector atau matriks atau
gambar sinyal.
|
subplot
|
Membuat sumbu pada posisi tile
|
stairs
|
Gambar grafik dengan step tangga
|
stem
|
Plot data sekuensial
|
Xlabel,
ylabel
|
Menambahkan teks disamping sumbu
x dan sumbu y
|
title
|
Menambahkan teks diatas sumbu
sebagai judul.
|
grid
|
Menambahkan garis grid
|
figure
|
Buat jendela gambar baru
|
clf
|
Hapus gambar yang aktif
|
close all
|
Tutup semua jendela aktif
|
clc
|
Hapus semua command aktif
|
hold on/off
|
Menyimpan atau membuang plot
aktif dan semua properti sumbu
|
axis
|
Control
skala sumbu dan tampilannya.
|
Tabel 1: Perintah MATLAB yang Digunakan Pada Praktikum
C. Sinyal
Sinusoida
Membuat model sinyal harus terlebih dahulu mendefinisikan nilai dari sinyal yang akan dimodelkan. Contoh: s1=sin(0:0.1:2*pi);
Nilai pada variabel s1 mengambil nilai dari sin 0 - 2*pi dengan rentang nilai 0.1. Kemudian
dari nilai tersebut buat plot dengan perintah:
figure, plot(s1, 'r'), hold on, stem(s1, 'g');
title('ES-12-01'); xlabel('x'); ylabel('y');grid on
Maksud dari perintah
diatas adalah, menampilkan gambar dari plot nilai s1 dengan warna garis merah, gambar
disimpan, tampilkan nilai sekuensial dari s1 dengan warna garis hijau, beri
judul ES-12-01, beri nama sumbu x dengan x, beri nama sumbu y dengan x, dan
aktifkan garis grid.
Hasilnya adalah sebagai berikut:
Gambar 1. Sinyal Sinusoida dengan Nilai Sekuensial |
Jika
menginginkan garis yang tebal pada sinyal sinusoida beri perintah LineWidth.
Contoh perintah sebagai berikut:
D. Subplot Dua
Gambar
Jika ingin menampilkan dua gambar pada satu jendela dapat
menggunakan perintah subplot. Di bawah ini perintah untuk menampilkan dua gambar yang
terdiri dari dua kolom satu garis dengan komentar (maksud dari perintah
perbaris).
x=[0:0.1:2*pi] %Untuk mengambil
nilai dari rentang 0 – 2*pi dengan jeda 0.1
s1=sin(x); %nilai variabel s1 adalah nilai sin(x)
s2=cos(x); %nilai variabel s2 adalah nilai cos(x)
figure; %tampil sebagai gambar
subplot(2,1,1); %tampilkan gambar dengan subplot terdiri dari
2 baris,
dengan satu kolom, dengan x=1 (gambar
pertama)
plot(x,s1,'r','LineWidth',3); %tampilkan pada plot x=1 gambar dari s1 dengan
garis
warna merah, ukuran garis=3
title('Sinyal 1'); %beri judul Sinyal 1
ylabel('Amplitudo'); %label nama y adalah Amplitudo
xlabel('Waktu'); %label nama x adalah Waktu
grid on; %beri garis2 putus pada gambar.
Gambar diatas hanya menampilkan satu gambar sinyal sinusoida
pada kolom satu baris satu. Kemudian tambahkan perintah berikut:
subplot(2,1,2); %tambahkan pada subplot 2 baris, 1
kolom, dengan x=2
stem(s1, 'b', 'LineWidth',2); %tambahkan garis nilai diskrit nilai s1, dengan
garis
biru, ukuran garis=2
title('Sinyal 2'); %beri judul Sinyal 2
ylabel('Amplitudo'); %label nama koordinat y adalah Amplitudo
xlabel('Waktu'); %label nama koordinat x adalah Waktu
grid on; %beri garis putus2 pada gambar.
Gambar 4. Plotting Gambar Sinyal Dua Kolom Satu Baris |
E. Subplot Tiga
Gambar
Sama seperti perintah diatas, namun terdiri dari 3 kolom dan
satu baris. Contoh perintah sebagai berikut:
x=[0:0.1:2*pi] %Ambil
nilai dari 0-2*pi dengan rentang 0.1
s1=sin(x); %Beri nilai
variabel s1 dengan nilai sin(x)
s2=cos(x); %Beri nilai variabel s2 dengan nilai
cos(x)
figure; %Buat jendela gambar baru
subplot(3,1,1); %Buat
subplot tiga kolom, baris ke satu kolom
kedua gambar 1
plot(s1,'r','LineWidth',3); %Plot nilai s1 beri warna garis merah, ukuran
garis 3pt
title('Sinyal 1'); %Beri judul Sinyal 1
ylabel('Amplitudo'); %Beri nama sumbu y dengan Amplitudo
xlabel('Waktu'); %Beri nama sumbu x dengan Waktu
grid on; %Tampilkan
garis grid
subplot(3,1,2); %Buat
subplot tiga kolom, bari ke satu kolom
kedua gambar 2
stem(s1, 'b', 'LineWidth',2); %Plot nilai sekuensial dari nilai s1, beri
warna
garis
biru, ukuran garis 2pt
title('Sinyal 2'); %Beri judul sinyal 2
ylabel('Amplitudo'); %Beri nama sumbu y dengan Amplitudo
xlabel('Waktu'); %Beri nama sumbu x dengan Waktu
grid on; %Tampilkan garis grid
subplot(3,1,3); %Buat subplot tiga kolom, baris
ke satu kolom
ketiga gambar 3
plot(s1, 'r', 'LineWidth', 3), hold on, stem(s2, 'g', 'LineWidth', 2);
%Plot
nilai s1 dengan warna garis merah, ukuran
Garis
3pt. Simpan dan timpa dengan garis nilai
Sekuensial
dari nilai s2 dengan warna garis
Hijau dan ukuran garis 2pt
title('Sinyal 3'); %Beri judul sinyal 3
ylabel('Amplitudo'); %Beri nama sumbu y dengan Amplitudo
xlabel('Waktu'); %Beri nama sumbu x dengan Waktu
grid on; %Tampilkan garis grid
Gambar 5. Plotting Sinyal 3 Kolom 1 Baris |
F. Sinyal Tangga
Sinyal berbentuk kotak bisa didapatkan dari perintah sinyal
tangga (stairs). Contoh
dari perintah sinyal tangga sebagai berikut:
s1=[ 1 1 2 2 4 4 2 2 1 1 0] %Beri nilai variabel s1 dengan: 1 1 2 2 4 4 2
2
1 1 0
stairs(s1); %Buat bentuk sinyal tangga
dari nilai s1.
Hasilnya
sebagai berikut:
Gambar 6. Sinyal Tangga |
Adapun perintah untuk membuat sinyal kotak dari sinyal tangga
diatas sebagai berikut:
s1=[1 1 2 2 1 1 2 2]; %Beri nilai variabel s1 dengan: 1 1 2 2
1 1 2 2
stairs(s1), axis ([0 11 0 4]); %Buat bentuk sinyal tangga dari nilai s1
dengan pengaturan sumbu Xmin = 0, Xmax = 11,
Ymax=0, dan Ymax= 4.
G.
Sinyal Ramp
Perintah untuk membuat sinyal ramp sebagai berikut:
n=3;
s=3;
t=0:n-1;
plot(t,s*t);
ylabel('Amplitude');
xlabel('Time
Index');
title('Ramp Signal');
title('Ramp Signal');
Hasilnya
sebagai berikut:
H.
Sinyal
Eksponensial
Perintah untuk membuat gambar sinyal eksponensial sebagai berikut:
n=3;
a=3;
t=0:.1:n-1;
y=exp(a*t);
plot(t,y);
ylabel('Amplitudo');
xlabel('Time
index');
title('Exponential
Signal');
Hasilnya
sebagai berikut
I.
Sinyal Unit Step
Perintah untuk membuat gambar sinyal unit step sebagai
berikut:
t=0:n-1;
y=ones(1,n);
plot(t,y);
ylabel('Amplitudo');
xlabel('Time
Index');
title
('Unit Step Signal');
J.
Pencerminan
Sinyal (Fold)
Sinyal dapat dicerminkan, dengan fungsi awal adalah x(n) maka fungsi untuk pencerminannya adalah x(-n). Adapun perintah pada MATLAB sebagai
berikut:
x=[6 3 0 2 1 2 4 0 1 0];
n=(0:9);
nf=-1.*n;
subplot(1,2,1), stem(n,x, 'linewidth',2), title('Sinyal Asli'),
hold on;
subplot(1,2,2), stem(nf,x, 'linewidth',2), title('Sinyal Fold');
Nilai
variabel x adalah NIM penulis. Hasil dari perintah diatas sebagai berikut:
Gambar 10. Sinyal Pencerminan (Fold) |
Comments
Post a Comment