1
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
berbagai kapabilitas MATLAB, yang dapat dimulai M13 =
dengan perintah demo.
6
2.2 VARIABEL DAN OPERASI MATRIKS
Submatriks juga dapat diakses dengan cara yang
Tipe variabel dasar pada MATLAB adalah mirip dengan menggunakan operator colon (:)
matriks (pada versi 5 dan ke atas, MATLAB juga seperti yang dijelaskan pada sesi berikut.
menyediakan berbagai tipe data seperti pada
bahasa pemrograman lainnya). Untuk 2.2.1 OPERATOR KOLON
mendeklarasikan sebuah variabel, Anda hanya Operator colon (:) sangat berguna untuk
perlu memberikan nilai tertentu padanya pada membuat index arrays. Gunakan perintah help
MATLAB prompt. Sebagai contoh colon untuk mengetahui deskripsi detail
tentang kapabilitasnya. Notasi colon didasarkan
>>M = [ 1 2 6; 5 2 1] pada ide bahwa sebuah selang indeks dapat
M= dihasilkan dengan perintah
126
521 iii = nilai awal : interval : nilai akhir
Ketika definisi sebuah matriks melibatkan sebuah Tanpa parameter interval, nilai default‐nya adalah
rumus yang panjang atau banyak entri, maka 1. Metode perhitungan ini mirip dengan notasi
sebuah perintah MATLAB yang sangat panjang loop DO pada FORTRAN, namun metode pada
dapat dipecah menjadi dua (atau lebih) baris MATLAB selangkah lebih maju dengan cara
dengan cara menempatkan sebuah tanda (…) pada menggabungkannya dengan pengindeksan
akhir dari sebuah baris yang ingin dilanjutkan. matriks. Untuk sebuah matriks A 9 x 8, A(2,3)
Sebagai contoh : adalah elemen skalar yang berada pada baris
kedua dan kolom ketiga dari matriks A. Jadi
P = [ 1, 2, 4, 6, 8 ]+ [ pi, 4, exp(1), 0, -1] + … sebuah submatriks 4 x 3 dapat diekstrak dengan
[ cos(0.1*pi), sin(pi/3), tan(3), atan(2), sqrt(pi) ]; perintah A(2:5,1:3). Tanda colon juga berfungsi
sebagai sebuah wild card, misalnya, A(2,:) adalah
Ketika sebuah ekspresi perintah atau pernyataan baris kedua matriks A.
diakhiri dengan tanda semicolon (;), maka hasilnya Pengindeksan mundur akan membalikkan sebuah
tidak akan ditampilkan di layar. Hal ini sangat vektor, misalnya X(9:‐1:1) untuk sebuah vektor
membantu ketika Anda bekerja dengan matriks yang berisi 9 buah elemen. Kadang‐kadang, Anda
dengan ukuran yang sangat besar. juga memerlukan sebuah daftar yang berisi semua
nilai elemen pada matriks, jadi A(:) memberikan
Ukuran dari sebuah matriks dapat diketahui sebuah vektor kolom 72 x 1, yang merupakan hasil
dengan operator size: concatenation elemen‐elemen setiap kolom matrik
A. Ini merupakan contoh reshaping matriks.
>>Msize = size(M) Teknik reshaping yang lebih umum dapat
dilakukan dengan fungsi reshape(A,M,N). Sebagai
Msize = contoh, matriks A 9 x 8 dapat di‐reshape menjadi
sebuah matriks 12 x 6 dengan Anew =
23 reshape(A,12,6).
Oleh karena itu, kita tidak perlu menggunakan 2.2.2 OPERASI MATRIKS DAN ARRAY
variabel khusus untuk melacak jumlah baris dan Operasi default pada MATLAB adalah operasi
kolom suatu matriks. Ada dua jenis variabel matriks. Jadi A*B berarti perkalian matriks, yang
matriks pada MATLAB, yakni skalar (scalars) dan akan dibahas pada bagian berikut. Operasi
vektor (vectors). Sebuah skalar adalah sebuah perkalian matriks AB hanya dapat dilakukan bila
matriks yang hanya berisi satu elemen, jadi kedua matriks tersebut memiliki dimensi yang
berukuran 1 x 1. Sebuah vektor adalah sebuah kompatibel, yakni jumlah kolom matriks A harus
matriks yang hanya berisi satu baris atau sama dengan jumlah baris matriks B. Sebagai
kolom.Elemen individu dari sebuah variabel contoh, sebuah matriks 5 x 8 dapat mengalikan
matriks dapat diakses dengan memberikan indeks sebuah matriks 8 x 3 untuk menghasilkan sebuah
baris dan kolom, sebagai contoh : matriks AB 5 x 3. Secara umum, bila A adalah m x
n, maka B haruslah n x p, dan hasil perkalian AB
>>M13 = M(1,3) akan memiliki dimensi m x p. Umumnya perkalian
2
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
matriks tidak bersifat komutatif, yakni AB ≠ BA. pointwise, .^ berarti pemangkatan pointwise.
Bila p ≠ m, maka perkalian AB tidak terdefinisi. Misalnya, xx = (0.9).^(0:49) akan menghasilkan
Beberapa kasus khusus untuk perkalian matriks suatu vector yang nilainya sama dengan (0,9)n
adalah outer product dan inner product. Pada untuk n = 0,1, 2, …49.
outer product, sebuah vektor kolom mengalikan
sebuah vektor baris untuk menghasilkan sebuah 2.2.4 OPERASI CONCATENATION ARRAY
matriks. Bila kita membiarkan semua elemen salah
satu vektor tersebut berupa ‘1’ , maka kita akan Operasi ini digunakan untuk menempelkan dua
memperoleh hasil yang berulang. atau lebih array dengan syarat syarat tertetu sesuai
dengan operasi concatenation yangdiinginkan.
Dalam MATLAB terdapat dua buah fungsi yang
dapat digunakan untuk melakukan proses
concatenation (penempelan) arrays. Fungsi
tersebut adalah vertcat dan horzcat. Penjelasan
lanjut dapat dilihat pada help MATLAB untuk
fungsi‐fungsi tersebut.
Untuk inner product, sebuah vektor baris
mengalikan sebuah vektor kolom, jadi hasilnya
berupa skalar. Bila kita membiarkan semua elemen
salah satu vektor tersebut berupa ‘1’, maka kita
akan memperoleh penjumlahan semua elemen
vektor lainnya.
3
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
dan help graphics (versi 4) atau help graph2d, help adalah memanggil fungsi‐fungsi toolbox
graph3d, dan help specgraph (versi 5). sebanyak/sesering mungkin.
2.3.2 MEMPLOT BEBERAPA GRAFIK Perhatikan bahwa tidak ada loop yang diperlukan,
Anda juga dapat membuat beberapa meskipun cos(x) melakukan operasi kosinus pada
grafik/plot pada satu window dengan setiap elemen array. Kebanyakan fungsi
menggunakan fungsi subplot. Fungsi ini tidak transcendental mengikuti aturan pointwise ini.
melakukan proses plotting, namun hanya Pada beberapa kasus khusus, adalah sangat
membagi window menjadi beberapa segmen. penting untuk membedakan eksponensial matriks
Sebagai contoh, perintah subplot(3,2,3) akan (expm) dengan eksponensial pointwise (exp):
membagi figure window menjadi tiga baris dan
dua kolom (jadi terdapat enam segmen) dan
mengarahkan plot berikutnya ke segmen kiri baris
kedua. Grafik pada PA.1 diperoleh dengan
perintah subplot(2,1,1) dan subplot(2,1,2).
4
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
File teks tersebut dapat dibuat dengan fs=18000 Hz untuk masing-masing frekuensi
menggunakan sembarang editor ASCII seperti sinyal f1 = 400 Hz, f2 = 2400 Hz,
program Notepad atau pada editor teks MATLAB. dan f3 = 6000 Hz. Ketikkan pula
Ekstensi file harus berupa .m dan script tersebut theta1 = -pi+2*pi*rand(1,1);
dieksekusi pada MATLAB dengan hanya theta2 = - pi+2*pi*rand(1,1);
mengetikkan nama file (dengan atau tanpa theta3 = -pi+2*pi*rand(1,1);
ekstensi). Program‐program tersebut umumnya dan catat nilai variabelnya. Ketikkan
dikenal dengan istilah m‐file. Berikut merupakan >>sin1=sin(2*pi*i*f1/fs+theta1);
contoh sebuah m‐file: sin2=sin(2*pi*i*f2/fs+theta2);
sin3=sin(2*pi*i*f3/fs+theta3);
tt = 0:0.3:4; xx = sin(0.7*pi*tt); subplot(2,1,1) plot(
tt, xx) 3. Jumlahkan ketiga sinyal tersebut menjadi satu
sinyal dengan mengetik
title(‘tt = 0:0.3:4; xx = f. >>sintot1=(sin1+sin2+sin3)/3;
4. Plot sinyal tersebut dengan mengetikkan
sin(0.7*pi*tt); plot( tt, xx)’) perintah >>stem(i,sintot1);.
>>sintot1=(sin1+sin2+sin3)/3;
subplot(2,1,2) stem( tt, xx) 5. Lihat respons frekuensi dari sinyal tersebut
dengan perintah freqz.
title(‘‘tt = 0:0.3:4; xx = sin(0.7*pi*tt); plot( tt, xx)’) 6. Buat sebuah sinyal sintot2 yang merupakan
rata-rata aritmetik sinyal-sinyal
Bila perintah‐perintah ini disimpan dengan file sinusoidal berfase sama dengan frekuensi f =
bernama plotstem.m maka pengetikan plotstem [200:600:8000]. (Petunjuk:
pada command prompt akan menjalankan file gunakan prinsip for loop.)
tersebut, dan kedelapan baris perintah akan 7. Plot sinyal tersebut dengan mengetikkan
dieksekusi sama halnya bila mereka diketikkan perintah >>stem(i,sintot2);.
baris per baris pada command prompt. Hasilnya 8. Lihat spektrum frekuensi dari sinyal tersebut
adalah dua buah plot seperti yang tampak pada dengan perintah freqz.
gambar PA.1.
Pertanyaan :
Uraian pada bagian/ bab ini (dan bab lainnya)
dapat ditulis dalam bentuk sub-bab jika 1. Mengapa digunakan frekuensi sampling
diperlukan. fs=18000 Hz? Kaitkan dengan fenomena
aliasing.
3. METODOLOGI 2. Apakah terjadi aliasing pada sintot2? Analisis
3.1 Alat dan Bahan hasilnya.
Alat dan bahan yang harus disediakan dalam
kegiatan Praktikum Pengolahan Sinyal Digital 3.2.2 Desain dan Simulasi Filter FIR
pada Modul 1 Pengenalan Matlab yaitu sebagai Akan didesain tiga buah filter FIR dengan
berikut : spesifikasi sebagai berikut:
a. PC/Laptop yang sudah terinstall aplikasi
- Frekuensi sampling 8000 Hz
Matlab.
b. Modul Praktikum Sistem Kendali.
- FIR LPF orde 30 dengan frekuensi cut-off
1000 Hz
3.2 Langkah Percobaan - Filter BPF orde 30 dengan frekuensi
passband 1000–4000 Hz
3.2.1 Membuat Sinyal Masukan Filter - Filter HPF orde 30 dengan frekuensi cut-off
Berikut Langkah percobaan dalam 5000 Hz
membuat sinyal masukan filter yaitu :
1. Pada MATLAB, representasikan sinyal dalam 1. Rancang ketiga filter tersebut dengan rumus
vektor (matriks 1 x N, N merupakan panjang >> wn=fc(fs/2);
vektor). Diinginkan panjang sinyal sebesar 100 dan cari koefisien-koefisien filternya dengan
sampel sehingga dituliskan perintah perintah fir1. Catat seluruh koefisien filter.
>>i=0:99; 2. Lihat frekuensi respons masing-masing filter
2. Buat 3 (tiga) sinyal sinusoidal berfase berbeda dengan perintah freqz. Gambarkan hasilnya.
dengan frekuensi sampling 3. Frekuensi cut-off pada filter FIR didefinisikan
sebagai frekuensi ketika magnitudonya sama
5
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
dengan setengah magnitudo maksimal diatas yaitu f1, f2, dan f3 menggunakan sintor1.
respons frekuensi filter. Lakukan analisis pada Berikut hasil percobaan yang dilakukan :
frekuensi cut-off.
4. Gunakan perintah impz untuk mendapatkan
plot respons impuls dari filter yang telah
didesain.
Pertanyaan :
6
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
Berikut hasil simulasi Matlab untuk respon
frekuensi sinyal sintot2 yaitu sebagai berikut :
• FIR LPF Orde 30 (Fc = 1000 Hz) Berdasarkan data simulasi dan perhitungan
Syntax Matlab yang digunakan sebagai manual, nilai untuk Wn memiliki nilai yang sama
berikut : yaitu sebesar 0.1111.
7
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
Untuk menghasilkan koefisien dari filter dapat Percobaan yang dilakukan merupakan
menggunakan perintah”fir1”, maka muncul implementasi filter FIR Band Pass Filter (BPF) orde
koefisien dari filter seperti di bawah ini : 30 dengan rentang frekuensi 1000-4000 Hz. Pada
grafik respons impuls, terlihat bahwa titik
frekuensi cut-off terletak pada nilai 0.5 rad/sample.
Hal ini mengindikasikan bahwa saat sinyal
mencapai frekuensi cut-off, terjadi efek redaman
yang mengakibatkan penurunan intensitas sinyal
pada output. Konsep dasar Band Pass Filter
menjelaskan bahwa filter FIR BPF merespons sinyal
dengan mengurangi intensitasnya saat mencapai
frekuensi cut-off. Pada nilai Wn = 0.5, sinyal
mengalami peredaman total yang terlihat melalui
gelombang kecil (ripple) pada frekuensi di atas Wn
= 0.5.
𝑓𝑐 1000
• Filter BPF Orde 30 (F Passband 1000-4000 Hz) Wn = 𝑓𝑠 == 1800 = 0.1111
2 2
Pada percobaan filter BPF, digunakan suntax
program Matlab sebagai berikut : Wn =
𝑓𝑐
𝑓𝑠 ==
2000
1800 = 0.2222
2 2
𝑓𝑐 3000
Wn = 𝑓𝑠 == 1800 = 0.3333
2 2
8
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
4.3 MELAKUKAN PENAPISAN
Penapisan sinyal adalah Penapisan sinyal
adalah proses menghilangkan, mengurangi, atau
memodifikasi komponen frekuensi tertentu dalam
suatu sinyal. Tujuan dari penapisan sinyal dapat
bervariasi, seperti memisahkan sinyal yang
diinginkan dari sinyal bising atau mengubah
karakteristik frekuensi sinyal. Penapisan sinyal
umumnya dilakukan dengan menggunakan filter,
baik itu filter analog maupun filter digital. Filter
Gambar 4.13 Respons Impulse FIR HPF digunakan untuk mengubah respons frekuensi
sinyal dengan cara melewati atau menghambat
komponen frekuensi tertentu. Hal ini
memungkinkan untuk memisahkan, memperkuat,
atau memperlemah sinyal pada rentang frekuensi
tertentu sesuai dengan kebutuhan aplikasi yang
diinginkan.
Oleh karena itu, dalam melakukan penapisan
sinyal sintot1 dan sinyal sintot2 digunakan
menggunakan filter LPF, BF, dan HPF FIR.
• Sinyal SINTOT 1
Penggunaan Filter FIR LPF
Dari hasil simulasi didapatkan bentuk
grafik gelombang sebagai berikut :
Gambar 4.14 Koefisien Filter
𝑓𝑐 5000
Wn = 𝑓𝑠 == 1800 = 0.5555
2 2 Gambar 4.16 Respons impulse Sintot 1 FIR LPF
9
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
Gambar 4.17 Respon Frekuensi Sintot 1 FIR BPF
Gambar 4.21 Respons Frekuensi Sintot 2 FIR LPF
• Sinyal SINTOT 2
Penggunaan Filter FIR LPF Penggunaan FIR HPF
Didapatkan hasil percobaan simulasi yaitu sebagai
Didapatkan hasil percobaan simulasi yaitu :
berikut :
10
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
bahwa Sintot1 memungkinkan sinyal yang berada
di rentang pass band untuk melewati filter setelah
proses penapisan. Hal ini dapat diamati dari grafik
respons frekuensi yang menunjukkan adanya
penurunan yang tajam pada komponen frekuensi
di luar rentang pass band. Dengan kata lain, Sintot1
secara efektif memfilter sinyal yang memiliki
frekuensi di luar rentang yang diinginkan.
Di sisi lain, grafik Sintot2 juga menunjukkan
penurunan respons frekuensi, tetapi dengan
Gambar 4.25 Respons Frekuensi Sintot 2 FIR HPF
perubahan yang kurang tajam dibandingkan
dengan Sintot1. Hal ini mengindikasikan bahwa
Sintot2 memiliki karakteristik filter yang
memberikan pengurangan yang lebih halus
terhadap komponen frekuensi di luar rentang yang
diinginkan.
Secara khusus, pada titik 0.5 rad/sample, terlihat
penurunan respons frekuensi yang
mengindikasikan penurunan intensitas sinyal pada
frekuensi tersebut. Titik ini merupakan titik
frekuensi cut-off pada filter, di mana filter mulai
menghambat atau memperlemah sinyal pada
Gambar 4.26 Respons impulse Sintot 2 FIR HPF frekuensi yang lebih tinggi.
Pada simulasi HPF FIR dapat diamati
Diatas disajikan gambar hasil percobaan Dalam penapisan sinyal, Sintot1 berfungsi untuk
untuk sinyal sintot1 dan sintot2 yang dilakukan membiarkan hanya sinyal dengan frekuensi tinggi
penapisan menggunakan filter LPF, BPF, dan HPF melewati filter, sehingga terjadi peningkatan
FIR yang dari masing-masing filter menunjukan respons pada titik 0.3 rad/sample pada grafik
dari respons frekuensi dan respon impulsenya. magnitude. Dengan kata lain, filter pada Sintot1
efektif dalam menghambat atau memperlemah
Untuk simulasi sinyal sintot 1 yang sinyal dengan frekuensi rendah, sementara sinyal
menggunakan filter FIR LPF Dalam penapisan dengan frekuensi tinggi dapat melewati filter
sinyal, Sintot1 terlihat hanya membiarkan sinyal dengan respons yang meningkat pada titik
dengan frekuensi rendah melewati proses tersebut.
penapisan. Hal ini dapat diamati dari adanya
gelombang yang tersisa setelah sinyal melewati Pada Sintot2 yang merupakan filter High Pass
filter. Dengan kata lain, Sintot1 menghasilkan Filter (HPF) FIR, peningkatan respons frekuensi
keluaran yang mempertahankan komponen terjadi lebih lambat dibandingkan dengan Sintot1.
frekuensi rendah dari sinyal asli. Pada grafik magnitude Sintot2, peningkatan
respons dimulai pada titik 0.4 rad/sample. Hal ini
Sementara itu, pada Sintot2 terlihat adanya menunjukkan bahwa filter pada Sintot2
penurunan dan stabilisasi nilai Normalized memberikan pengaruh yang lebih gradual dalam
Frequency sebelum mencapai titik yang lebih menghambat atau memperlemah sinyal dengan
rendah. Hal ini menunjukkan bahwa Sintot2 frekuensi rendah, sehingga respons frekuensi
memiliki respons frekuensi yang berbeda dengan meningkat secara bertahap setelah titik tersebut.
Sintot1. Dalam kasus ini, perubahan nilai
Normalized Frequency yang lebih rendah terjadi
setelah terjadi penurunan dan stabilisasi pada nilai
tersebut. Fenomena ini menunjukkan adanya 5 KESIMPULAN
pengaturan atau perubahan karakteristik filter
Berdasarkan percobaan dan pengamatan yang
yang menghasilkan respons frekuensi yang
telah dilakukan, maka dapat ditarik kesimpulan
berbeda pada Sintot2 dibandingkan dengan
yaitu sebagai berikut :
Sintot1.
1. MATLAB (singkatan dari Matrix Laboratory)
Untuk simulasi BPF yang menggunakan
adalah sebuah lingkungan komputasi numerik
frekuensi cut-off dari rentang nilai 1000-4000 Hz
dan bahasa pemrograman yang dikembangkan
dapat diamati dalam penapisan sinyal, terlihat
11
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA
oleh MathWorks. Program MATLAB dirancang
khusus untuk memfasilitasi pemrosesan,
analisis, dan visualisasi data dalam konteks
ilmiah, teknik, dan matematika.
2. Sinyal sintot (atau sering juga disebut sebagai
sinyal sintetis) merujuk pada sinyal buatan atau
yang dibuat secara artifisial dalam konteks
pengolahan sinyal. Sinyal sintetis ini dibuat
dengan menggunakan model matematis atau
algoritma tertentu untuk menghasilkan sinyal
dengan karakteristik dan properti yang
diinginkan.
3. Filter digital adalah sebuah komponen atau
sistem yang digunakan dalam pengolahan
sinyal digital untuk melakukan manipulasi,
pemrosesan, atau pemisahan sinyal
berdasarkan karakteristik frekuensi atau waktu.
Filter digital bekerja dengan memanipulasi
spektrum frekuensi atau respons waktu dari
sinyal digital yang masuk.
4. Penapisan sinyal adalah proses yang digunakan
dalam pengolahan sinyal untuk memisahkan
atau memodifikasi komponen sinyal
berdasarkan karakteristik tertentu. Tujuan dari
penapisan sinyal adalah untuk mendapatkan
sinyal yang lebih bersih, menghilangkan
gangguan atau komponen yang tidak
diinginkan, atau mengekstrak informasi spesifik
dari sinyal.
DAFTAR PUSTAKA
[1] Atina, Aplikasi Matlab pada Teknologi
Pencitraan Medis, Program Studi Fisika,
FMIPA Universitas PGRI Palembang,
Indonesia, 2019.
[2] R. Rahmadewi, "Modul Praktikum Pengolahan
Sinyal Digital," [Online]. [Accessed 01 Juni
2023].
12
Laporan Praktikum - Laboratorium Produksi – FT UNSIKA