stem gitar bass menggunakan harmonic product … · semua senar pada gitar bass tersebut seharusnya...
TRANSCRIPT
TUGAS AKHIR
STEM GITAR BASS MENGGUNAKAN
HARMONIC PRODUCT SPECTRUM
Diajukan untuk memenuhi syaratMemperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
disusun oleh:
ALMEDIO MARVES DA COSTA
NIM: 135114002
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
i
TUGAS AKHIR
STEM GITAR BASS MENGGUNAKAN
HARMONIC PRODUCT SPECTRUM
Diajukan untuk memenuhi syaratMemperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
disusun oleh:
ALMEDIO MARVES DA COSTA
NIM: 135114002
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
FINAL PROJECT
BASS GUITAR TUNER USING
HARMONIC PRODUCT SPECTRUM
In a partial fulfillment of the requirementsfor the degree of Sarjana Teknik
Electrical Engineering Study Program
created by:
ALMEDIO MARVES DA COSTA
Student’s Number: 135114002
ELECTRICAL ENGINEERING STUDY PROGRAM
DEPARTMENT OF ELECTRICAL ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya
atau bagian kariah orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar
pustaka sebagaimana karya ilmiah.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
HALAMAN PERSEMBAHAN MOTTO HIDUP
MOTTO:
Skripsi ini kupersembahkan untuk
Tio Leopoldino Marçal da Costa
Jadikan setiap tempat yang baik sebagai tempat belajarmu
dan
jadikan setiap orang yang baik sebagai gurumu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA
ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma:
Nama : ALMEDIO MARVES DA COSTA
Nomor Mahasiswa : 135114002
Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas
Sanata Dharma karya ilmiah yang berjudul:
STEM GITAR BASS MENGGUNAKAN
HARMONIC PRODUCT SPECTRUM
Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada
Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk
media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas,
dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis tanpa
perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap
mencantumkan nama saya sebagai penulis.
Dengan ini pernyataan yang saya buat dengan sebenarnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
INTISARI
Musik dapat disebut sebagai media seni. Pada umumnya orang mengungkapkankreativitas dan ekspresi seninya melalui bunyi-bunyian atau suara, oleh karena itulahpengertian musik sangat universal. Alat musik yang digunakan juga bervariasi, salah satunyaalat musik petik yaitu gitar bass elektrik. Dalam memainkan alat musik seperti gitar bass,semua senar pada gitar bass tersebut seharusnya menghasilkan nada yang akurat atau tidakfals, untuk itu, tuning perlu dilakukan pada senar-senar gitar bass tersebut. Salah satu solusiuntuk permasalahan ini adalah dengan menggunakan stem (tuner) gitar bass elektrik.Dibentuklah stem gitar bass untuk melakukan tuning pada gitar bass.
Stem gitar bass pada tugas akhir ini menggunakan USB Guitar Link Cable dankomputer untuk mengoperasikannya. USB Guitar Link Cable berfungsi untukmenghubungkan komputer dengan gitar bass elektrik dan menerima gelombang suara gitarbass elektrik. Komputer berfungsi untuk memproses data hasil rekaman, menampilkan hasilframe blocking, hasil FFT, hasil HPS, dan nada, status (kurang, pas, lebih) serta frekuensiyang dihasilkan saat melakukan tuning berupa teks. Sistem pada stem gitar bass tersebutmenggunakan FFT, HPS, dan look up table sudah berhasil dibuat dan dapat bekerja sesuaiperancangan.
Program stem gitar bass menggunakan harmonic product spectrum secara real timemampu mengenali frekuensi sebesar 100%. Parameter pengenalan frekuensi bass terbaikberada pada panjang frame blocking 32 sampai panjang frame blocking 512.
Kata Kunci: Gitar Bass Elektrik, FFT (Fast Fourier Transform), HPS (Harmonic ProductSpectrum), Look Up Table, Panjang Frame Blocking.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
Music can be referred as a medium of art. Generally, the people express their artisticcreativity by sounds or voices, so the understanding of music is very universal. Theinstruments used also varies, the ones of the instruments used is the string instrument like anelectric bass guitar. Playing a musical instrument like a bass guitar, all the strings of bassguitar should be accurate tone or no false, for that, need to make a tuning for all strings ofthe bass guitar. The one of solution for this problem is using the electric bass guitar tuner.Made bass guitar tuner for tuning the bass guitar.
Bass guitar tuner on this final project using USB Guitar Link Cable and computerto operate it. The function of USB Guitar Link Cable to connect the computer with electricbass guitar and receive sound waves of the electric bass guitar. The computer functions toprocess the result of recording data shows the result of frame blocking, the result of FFT, theresult of HPS, and tone, status (less, tune, over) and the frequency that get when was tuningin the form of text. The system on the bass guitar tuner using FFT, HPS, and look up tablehas been successfully created and can work according to the design.
Bass guitar tuner program using the harmonic product spectrum in real time is ableto recognize the frequency of 100%. The best recognitions of bass frequency parameters arein the frame blocking length of 32 to frame blocking length of 512.
Keywords: Electric Bass Guitar, FFT (Fast Fourier Transform), HPS (Harmonic ProductSpectrum), Look Up Table, Frame Blocking length.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
KATA PENGANTAR
Dengan menyebut nama Tuhan Yesus Kristus Yang Maha Baik, kiranya pantaslah
penulis memanjatkan puji syukur atas segala nikmat yang telah diberikan kepada penulis,
baik kesempatan maupun kesehatan, sehingga penulis dapat menyelesaikan tugas akhir
ini dengan baik.
Tugas akhir yang telah penulis buat berjudul Stem Gitar Bass Menggunakan
Harmonic Product Spectrum. Tugas akhir ini dapat hadir seperti sekarang ini tidak lepas
dari bantuan dan dukungan banyak pihak. Untuk itu sudah sepantasnya penulis
mengucapkan terima kasih yang sebesar-besarnya kepada:
1. Tuhan Yesus Kristus atas berkat penyertaan-Nya sehingga Tugas Akhir ini
selesai dengan baik.
2. Bunda Maria, terima kasih Bunda atas segalanya.
3. Santo dan Santa yang selalu setia melindungiku selama ini.
4. Sudi Mungkasi, S.Si, M.Math.Sc., Ph.D., selaku Dekan Fakultas Sains dan
Teknologi Universitas Sanata Dharma.
5. Petrus Setyo Prabowo, S.T., M.T., selaku Ketua Program Studi Teknik Elektro
Universitas Sanata Dharma.
6. Dr. Ir. Linggo Sumarno, M.T., selaku dosen pembimbing Tugas Akhir yang
penuh pengertian dan selalu sabar membimbing dan mendorong untuk cepat
menyelesaikan Tugas Akhir ini.
7. Dr. Ir. Iswanjono, M.T., selaku dosen pembimbing akademik yang telah
mendampingi, membimbing, dan memberikan saran kepada penulis selama
menempuh pendidikan di Universitas Sanata Dharma.
8. Dr. Ir. Iswanjono, M.T. dan Dr. Damar Widjaja, S.T., M.T., selaku dosen penguji
yang telah memberikan masukan, bimbingan, saran untuk merevisi laporan tugas
akhir ini.
9. Bapak dan Ibu dosen yang telah mengajarkan banyak ilmu yang bermanfaat
selama menempuh pendidikan di Program Studi Teknik Elektro, Fakultas Sains
dan Teknologi, Universitas Sanata Dharma.
10. Para staff sekretariat Teknik Elektro, atas bantuannya dalam membantu dan
melayani mahasiswa.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
11. Kedua orang tua serta keluarga besarku di Timor-Leste atas doa dan dukungan
kepada penulis.
12. Keluarga yang selalu bersamaku di Yogyakarta (Tia Marta, Maun Tody, Ino,
Rúben, Iva, Nildo, Nânci, Azio, Teta atas doa dan dukungan kepada penulis.
13. Para saudara-saudaraku Maltib, 2F, CN-B, Baya Leste, Manleuana atas doa dan
dukungan kepada penulis.
14. Para sahabat Teknik Elektro 2013 atas bantuannya selama masih kuliah, serta doa
dan dukungannya agar penulis tetap semangat dalam menyelesaikan laporan tugas
akhir ini.
15. Semua pihak yang tidak dapat disebutkan satu persatu atas dukungan dan bantuan
yang telah diberikan dalam penyelesaian laporan tugas akhir ini.
Pada akhirnya, penulis sangat menyadari bahwa laporan tugas akhir ini masih
terdapat banyak kekurangan. Oleh karena itu, penulis sangat mengharapkan masukan, kritik,
dan saran yang sifatnya membangun agar laporan tugas akhir ini nantinya bisa menjadi lebih
baik dan bermanfaat sebagaimana mestinya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
DAFTAR ISI
Halaman
HALAMAN JUDUL ................................................................................................. i
HALAMAN PERSETUJUAN .................................................................................. iii
HALAMAN PENGESAHAN ................................................................................... iv
PERNYATAAN KEASLIAN KARYA.................................................................... v
HALAMAN PERSEMBAHAN MOTTO HIDUP ................................................... vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH
UNTUK KEPENTINGAN AKADEMIS.................................................................. vii
INTISARI .................................................................................................................. viii
ABSTRACT .............................................................................................................. ix
KATA PENGANTAR............................................................................................... x
DAFTAR ISI ............................................................................................................. xii
DAFTAR GAMBAR................................................................................................. xv
DAFTAR TABEL ..................................................................................................... xvii
BAB I: PENDAHULUAN....................................................................................... 1
1.1. Latar Belakang ............................................................................................ 1
1.2. Tujuan dan Manfaat Penelitian.................................................................... 3
1.3. Batasan Masalah.......................................................................................... 3
1.4. Metodologi Penelitian ................................................................................. 4
BAB II: DASAR TEORI......................................................................................... 6
2.1. Gitar Bass Elektrik ...................................................................................... 6
2.2. USB Guitar Link Cable ............................................................................... 7
2.3. Sampling ...................................................................................................... 8
2.4. Preprocessing .............................................................................................. 10
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
2.4.1. Normalisasi...................................................................................... 10
2.4.2. Frame Blocking ............................................................................... 11
2.4.3. Windowing ....................................................................................... 13
2.5. DFT dan FFT............................................................................................... 15
2.6. Harmonic Product Spectrum (HPS)............................................................ 17
2.7. Resolusi Frekuensi ...................................................................................... 19
BAB III: RANCANGAN PENELITIAN............................................................... 20
3.1. Sistem Stem Gitar Bass Elektrik ................................................................. 20
3.1.1. Gitar Bass Elektrik .......................................................................... 20
3.1.2. USB Guitar Link Cable ................................................................... 20
3.1.3. Laptop.............................................................................................. 21
3.1.4. Proses Perekaman ............................................................................ 21
3.1.5. Proses Mendeteksi Frekuensi dan Penentuan Keluaran .................. 21
3.2. Nada Uji ...................................................................................................... 23
3.3. Perancangan Tampilan Program GUI MATLAB ....................................... 24
3.4. Perancangan Alur Program ......................................................................... 25
3.4.1. Rekam.............................................................................................. 26
3.4.2. Normalisasi...................................................................................... 27
3.4.3. Frame Blocking ............................................................................... 28
3.4.4. Windowing ....................................................................................... 29
3.4.5. FFT dan Spektrum Frekuensi .......................................................... 30
3.4.6. Harmonic Product Spectrum (HPS) ................................................ 31
3.4.7. Penentuan Frekuensi........................................................................ 32
3.4.8. Look Up Table ................................................................................. 33
3.4.9. Penentuan Teks Nada Standar ......................................................... 34
3.4.10. Keluaran (Teks) ............................................................................... 36
3.5. Rancangan Pengujian .................................................................................. 37
BAB IV: HASIL DAN PEMBAHASAN................................................................ 38
4.1. Pengujian Program Stem Gitar Bass Menggunakan Harmonic Product
Spectrum ...................................................................................................... 38
4.2. Penjelasan Sintaks Program secara Real Time ............................................ 41
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
4.3. Analisis Hasil Data Pengujian..................................................................... 48
BAB V: KESIMPULAN DAN SARAN ................................................................. 54
5.1. Kesimpulan.................................................................................................. 54
5.2. Saran............................................................................................................ 54
DAFTAR PUSTAKA .............................................................................................. 55
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
DAFTAR GAMBAR
Halaman
Gambar 2.1. Gitar Bass Elektrik................................................................................ 7
Gambar 2.2. USB Guitar Link Cable......................................................................... 8
Gambar 2.3. Contoh hasil Sampling.......................................................................... 9
Gambar 2.4. Hasil Normalisasi dari Gambar 2.3 ...................................................... 11
Gambar 2.5. Frame Blocking [10]............................................................................. 12
Gambar 2.6. Sinyal yang akan diambil untuk Frame Blocking dari Gambar 2.4 ..... 12
Gambar 2.7. Hasil Frame Blocking dari Gambar 2.6................................................ 13
Gambar 2.8. Hasil Hamming Window dari Gambar 2.7............................................ 14
Gambar 2.9. Hasil FFT dari Gambar 2.8................................................................... 16
Gambar 2.10. Contoh Perhitungan FFT 2 Titik Menggunakan Butterfly.................. 16
Gambar 2.11. Contoh Perhitungan FFT 4 Titik Menggunakan Butterfly.................. 17
Gambar 2.12. Harmonic Product Spectrum [14] ...................................................... 18
Gambar 2.13. Hasil HPS dari Gambar 2.9 ................................................................ 19
Gambar 3.1. Diagram Blok Sistem Stem Gitar Bass Elektrik................................... 20
Gambar 3.2. Diagram Proses Mendeteksi Frekuensi dan Penentuan Keluaran ........ 21
Gambar 3.3. Diagram Blok Proses Pengambilan Nada Uji....................................... 23
Gambar 3.4. Tampilan Proses Program GUI Matlab ................................................ 24
Gambar 3.5. Diagram Alir Sistem Stem Gitar Bass Elektrik .................................... 25
Gambar 3.6. Diagram Alir Sub Rutin Rekam ........................................................... 26
Gambar 3.7. Diagram Alir Normalisasi..................................................................... 27
Gambar 3.8. Diagram Alir Frame Blocking .............................................................. 28
Gambar 3.9. Diagram Alir Windowing...................................................................... 29
Gambar 3.10. Diagram Alir FFT dan Spektrum Frekuensi ....................................... 30
Gambar 3.11. Diagram Alir Harmonic Product Spectrum........................................ 31
Gambar 3.12. Diagram Alir Penentuan Frekuensi .................................................... 32
Gambar 3.13. Diagram Alir Proses Penentuan Frekuensi Akhir untuk Look Up
Table .......................................................................................................................... 33
Gambar 3.14. Diagram Alir Proses Penentuan Teks Nada Standar .......................... 34
Gambar 3.15. Diagram Alir Proses Menampilkan Teks Keluaran............................ 36
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
Gambar 4.1. GUI Software Stem Gitar Bass Menggunakan Harmonic Product
Spectrum .................................................................................................................... 39
Gambar 4.2. Pemilihan Senar Gitar Bass .................................................................. 40
Gambar 4.3. Contoh ketika GUI dijalankan untuk melakukan tuning pada Senar
Pertama ...................................................................................................................... 40
Gambar 4.4. Sintaks Program untuk Proses Merekam.............................................. 41
Gambar 4.5. Sintaks Program untuk Proses Normalisasi .......................................... 42
Gambar 4.6. Sintaks Program untuk Proses Frame Blocking ................................... 42
Gambar 4.7. Sintaks Program untuk Proses Windowing ........................................... 43
Gambar 4.8. Sintaks Program untuk Proses FFT ...................................................... 43
Gambar 4.9. Sintaks Program untuk Proses HPS...................................................... 44
Gambar 4.10. Sintaks Program untuk Frekuensi Keluaran ....................................... 44
Gambar 4.11. Sintaks Program untuk Teks Nada Keluaran...................................... 45
Gambar 4.12. Sintaks Program untuk Pushbutton “CLEAR”................................... 46
Gambar 4.13. Sintaks Program untuk Pushbutton “BERHENTI” ............................ 47
Gambar 4.14. Popupmenu di GUI.fig........................................................................ 47
Gambar 4.15. String Popupmenu .............................................................................. 47
Gambar 4.16. Grafik Pengaruh Panjang Frame Blocking Terhadap Tingkat
Pengenalan Sistem..................................................................................................... 51
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvii
DAFTAR TABEL
Halaman
Tabel 2.1. Nilai Frekuensi Gitar Bass Elektrik 4 Senar [5]....................................... 7
Tabel 3.1. Keterangan Tampilan Utama Sistem........................................................ 24
Tabel 4.1. Hasil Pengujian Sistem dengan Panjang Frame Blocking 512 ................ 48
Tabel 4.2. Hasil Pengujian Sistem dengan Panjang Frame Blocking 256 ................ 49
Tabel 4.3. Hasil Pengujian Sistem dengan Panjang Frame Blocking 128 ................ 49
Tabel 4.4. Hasil Pengujian Sistem dengan Panjang Frame Blocking 64 .................. 49
Tabel 4.5. Hasil Pengujian Sistem dengan Panjang Frame Blocking 32 .................. 50
Tabel 4.6. Hasil Pengujian Sistem dengan Panjang Frame Blocking 16 .................. 50
Tabel 4.7. Persentase Akurasi yang didapat dari Seluruh Panjang Frame Blocking. 51
Tabel 4.8. Hasil Perhitungan Resolusi pada Seluruh Panjang Frame Blocking........ 52
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Musik adalah salah satu media ungkapan kesenian, musik mencerminkan
kebudayaan masyarakat pendukungnya. Di dalam musik terkandung nilai dan norma-norma
yang menjadi bagian dari proses enkulturasi budaya, baik dalam bentuk formal maupun
informal. Musik itu sendiri memiliki bentuk yang khas, baik dari sudut struktual maupun
jenisnya dalam kebudayaan. Musik dapat juga disebut sebagai media seni. Pada umumnya
orang mengungkapkan kreativitas dan ekspresi seninya melalui bunyi-bunyian atau suara,
oleh karena itulah pengertian musik sangat universal, tergantung bagaimana orang
memainkannya serta menikmatinya. Musik termasuk seni manusia yang paling tua. Bahkan
bisa dikatakan, tidak ada sejarah peradaban manusia dilalui tanpa musik [1].
Seni musik adalah cetusan ekspresi perasaan atau pikiran yang dikeluarkan secara
teratur dalam bentuk bunyi. Bisa dikatakan, bunyi (suara) adalah elemen musik paling
dasar. Suara musik yang baik adalah hasil interaksi dari tiga elemen, yaitu irama, melodi,
dan harmoni. Irama adalah pengaturan suara dalam suatu waktu, panjang, pendek dan
temponya, dan ini memberikan karakter tersendiri pada setiap musik. Kombinasi beberapa
tinggi nada dan irama akan menghasilkan melodi tertentu. Selanjutnya, kombinasi yang
baik antara irama dan melodi melahirkan bunyi yang harmoni.
Alat musik yang digunakan juga bervariasi, salah satunya alat musik petik yaitu
gitar bass. Alat musik gitar bass terdiri dari 2 jenis, yaitu gitar bass akustik dan gitar bass
elektrik. Pada bahasan kali ini, yang akan dibahas penulis adalah gitar bass elektrik. Gitar
bass elektrik biasa disebut bass elektrik atau bass saja. Bass adalah alat musik berdawai
yang menggunakan listrik untuk memperbesar suaranya, bass menggunakan beberapa
pickup untuk mengubah bunyi atau getaran dari senar gitar bass menjadi arus listrik yang
akan dikuatkan kembali dengan menggunakan seperangkat amplifier dan loudspeaker.
Penampilannya mirip dengan gitar listrik tetapi gitar bass memiliki tubuh yang lebih besar,
leher yang lebih panjang, dan biasanya memiliki empat senar (gitar listrik memiliki enam
senar) [2].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
Dalam memainkan alat musik gitar bass, semua senar pada gitar bass tersebut
seharusnya menghasilkan nada yang akurat atau tidak fals, untuk itu, tuning perlu dilakukan
pada senar-senar gitar bass tersebut. Tuning pada senar gitar bass, untuk menghasilkan nada
yang akurat, adalah salah satu pekerjaan yang cukup sulit, terutama bagi para pemain gitar
bass pemula. Melakukan tuning pada gitar bass membutuhkan pendengaran yang cukup
akurat untuk dapat menyatakan akurasi dari suatu nada. Salah satu solusi untuk
permasalahan ini adalah dengan menggunakan stem (tuner) gitar bass elektrik. Dengan
perangkat ini, seorang pemain bass bisa melakukan tuning hanya dengan melihat indikator
akurasi pada alat tersebut.
Nada dari gitar bass tersebut merupakan bunyi yang teratur dan mempunyai
frekuensi yang tertentu. Frekuensi yang dimiliki oleh senar gitar bass, berbeda dengan senar
lainnya karena frekuensi dipengaruhi oleh panjang senar dan diameter senar. Perbedaan
frekuensi yang dihasilkan oleh senar, dapat diolah dengan digital signal processing.
Berkaitan dengan hal tersebut, dari beberapa penelitian sebelumnya telah
dilakukan yaitu implementasi algortima Fast Fourier Transform (FFT) untuk pengolahan
sinyal digital pada tuning gitar dengan open string, yang prinsip kerjanya adalah untuk
mengetahui nilai tingkat akurasi FFT pada tuning gitar listrik dan bukan listrik. Selain itu,
pengujian dilakukan untuk mengetahui kemampuan sistem melakukan pencocokan nada
gitar. Pada penelitian ini, masukan adalah suara gitar yang dipetik secara open string atau
tanpa kunci, sedangkan keluaran adalah nilai frekuensi senar gitar dan pencocokan nada
gitar. Perancangan perangkat lunak ini menggunakan program Matlab R2008b, dari
penelitian yang telah dilakukan, FFT mampu mendapatkan tingkat akurasi tuning gitar
terbaik yaitu sebesar 99,43% [3].
Berdasarkan latar belakang di atas, dan penelitian yang telah dilakukan
sebelumnya, penulis ingin membuat tuner pada gitar bass elektrik. Metode yang digunakan
dan instrumen musik yang digunakan dalam penelitian ini berbeda dengan penelitian
sebelumnya, yaitu dengan menggunakan metode Harmonic Product Spectrum (HPS), FFT,
spektrum frekuensi, dan menentukan frekuensi dengan menggunakan look up table untuk
proses akhir penentuan nada gitar bass elektrik yang dilakukan tuning. Pada umumnya gitar
bass memiliki frekuensi yang lebih rendah dibandingkan dengan gitar biasa, jadi dua
penelitian ini menggunakan frekuensi standar yang berbeda. Meskipun di penelitian
sebelumnya juga menggunakan FFT, tetapi di penelitian kali ini, penulis menambahkan
metode lain seperti HPS yang digunakan untuk mengetahui frekuensi standar dari nada
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
tersebut. Alasan menggunakan HPS karena suatu nada memiliki tingkatan nada atau biasa
disebut harmonik. Harmonik merupakan harmonisasi dari nada standar atau harmonik
pertama, sehingga setiap kelipatan dari nada standar pertama merupakan harmonisasi nada
dari nada standar, yang membedakan dari nada standar dengan nada harmonik terdapat pada
besar nilai frekuensi, jadi dengan metode HPS dapat membedakan nada standar dengan
nada harmonik, sehingga hasil akhir yang diharapkan mampu mendapatkan tingkat akurasi
tuning bass terbaik.
Dalam sistem tuning ini, nada standar uji G 1st string, D 2nd string, A 3rd string, E
4th string yang telah melalui proses perekaman diproses terlebih dahulu agar menghasilkan
spektrum frekuensi untuk menentukan frekuensi keluaran dalam look up table. Prosesnya
akan melalui tahap perekaman, kemudian preprocessing yang terdiri dari normalisasi, frame
blocking, dan windowing. Kemudian menghitung FFT untuk mendapatkan spektrum
frekuensi dan kemudian dilakukan proses pengkalian hasil FFT dengan metode HPS untuk
mendapatkan hasil sinyal yang bersih dari harmonisasi. Nilai frekuensi yang dilihat dari
hasil plot HPS digunakan sebagai penentuan frekuensi keluaran.
1.2. Tujuan dan Manfaat Penelitian
Tujuan penelitian ini adalah menghasilkan aplikasi stem atau tuner gitar bass
elektrik. Manfaat dari penelitian ini adalah:
a. Membuat aplikasi yang mampu melakukan tuning pada senar gitar bass elektrik
secara real time.
b. Sebagai alat bantu untuk mempermudah, mempercepat dan lebih akurat dalam
tuning gitar bass elektrik.
c. Mengetahui tingkat akurasi FFT dan HPS dalam mendeteksi frekuensi nada.
1.3. Batasan Masalah
Tugas Akhir ini dibatasi pada hal-hal sebagai berikut:
a. Sinyal masukan berasal dari senar gitar bass elektrik yang tuning secara real time.
b. Gitar yang dipakai adalah gitar bass elektrik (Squier Fender Precision Bass).
c. Nada-nada yang diukur adalah nada-nada open string (nada senar lepas).
d. Tuning didasarkan pada setelan standar (G-D-A-E dari senar 1 sampai senar 4).
e. Tidak membahas alat musik gitar bass elektrik secara mendalam.
f. Parameter yang diamati adalah frekuensi yang dihasilkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
g. Menggunakan software Matlab dalam pembuatan program stem gitar bass elektrik.
h. Implementasi menggunakan software Matlab.
i. Menggunakan metode HPS, Hamming window, FFT, dan look up table untuk
penentuan keluarannya.
j. Titik FFT yang digunakan sebanyak 512.
1.4. Metodologi Penelitian
Metodologi yang digunakan pada tugas akhir ini adalah:
a. Pengumpulan bahan-bahan literatur berupa buku, jurnal, dan artikel.
Bertujuan untuk mempelajari dasar teori yang mendukung penelitian, meliputi
teori nada, tuning gitar, instrumen gitar, dan software Matlab.
b. Pengumpulan Data
Merekam nada-nada gitar yang sudah tuned sebagai referensi serta untuk
mempermudah dalam merancang sistem.
c. Konsultasi dengan Pembimbing
Bertujuan untuk mengkaji dan merumuskan metode yang tepat dalam melakukan
penelitian.
d. Perancangan subsistem di dalam program keseluruhan
Tahap perancangan subsistem perangkat lunak bertujuan untuk mencari bentuk
model yang optimal dari sistem yang akan dibuat dengan mempertimbangkan berbagai
faktor-faktor permasalahan dan kebutuhan yang telah ditentukan. Penulis menggunakan
software Matlab untuk pembuatan program tuner gitar bass elektrik. Program akan
bekerja jika user memberikan perintah melalui komputer, program akan mengolah
perintah yang telah diterima dan melalui proses recording. Setelah proses recording,
komputer akan mengolah nada kemudian memberikan keluaran teks nada pada senar
gitar bass elektrik yang sedang tuning kalau sudah mencapai nada standarnya.
e. Analisis Performa
Proses ini dilakukan untuk mengetahui performa sistem yang telah dirancang, maka
pengujian dilakukan terhadap sistem dengan memainkan (tuning) gitar bass secara real
time. Pengujian ini menggunakan parameter yaitu analisis perbandingan frekuensi yang
dihasilkan oleh sistem dengan frekuensi standar yang tertera pada Tabel 2.1. Setelah
membandingkan frekuensi yang dihasilkan oleh sistem dengan frekuensi standar, maka
dilakukan juga perhitungan untuk mengetahui persentase akurasi antara frekuensi sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
dengan frekuensi standar tersebut. Tujuannya untuk mengetahui performa yang dicapai
oleh sistem.
f. Pengambilan Kesimpulan
Tahap ini adalah tahap pengambilan kesimpulan berdasarkan analisis terhadap
percobaan yang telah dilakukan dengan menyelidiki pengaruh panjang frame blocking
terhadap tingkat keberhasilan tuner gitar bass elektrik.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
BAB II
DASAR TEORI
2.1. Gitar Bass Elektrik
Gitar bass juga disebut bass elektrik atau hanya bass. Gitar bass adalah alat musik
yang dimainkan terutama dengan jari atau ibu jari, dengan cara plucking, slapping, popping,
strumming, tapping, thumping, atau dengan menggunakan pick. Gitar bass mirip dengan
gitar elektrik biasa, namun gitar bass mempunyai neck dan scale yang lebih panjang, dan
gitar bass umumnya hanya mempunyai empat senar, sedangkan gitar elektrik biasa
mempunyai enam senar. Gitar bass elektrik empat senar umumnya tune sama dengan double
bass, yang sesuai dengan pitches satu oktaf lebih rendah dari empat senar bernada terendah
gitar biasa yaitu (E, A, D, dan G). Gitar bass adalah instrumen transposing, seperti yang
dinotasikan dalam bass Clef satu oktaf lebih tinggi daripada kedengarannya (seperti double
bass), untuk memainkan gitar bass elektrik harus dihubungkan ke amplifier. Gitar bass
elektrik memiliki pickup dan terhubung ke amplifier dan speaker [2].
Jumlah frets yang terdapat pada leher atau neck bass dapat bervariasi. Bass asli
memiliki 20 frets, dan sebagian besar gitar bass memiliki antara 20 dan 24 frets. Bass yang
menggunakan antara 24 dan 36 frets (2 dan 3 oktaf) juga ada. Panjang skala pada neck bass
(jarak antara nut dan jembatan atau bridge) yaitu 34 inci (864 mm).
Kebanyakan gitar bass elektrik menggunakan magnetic pickups. Getaran senar
(logam besi dalam medan magnet) di magnetic pickups menghasilkan variasi kecil dalam
fluks magnetik threading dalam gulungan pickup. Proses ini menghasilkan tegangan listrik
kecil dalam kumparan. Sinyal tingkat rendah ini kemudian diperkuat dan diputar melalui
speaker.
Badan atau body bass biasanya terbuat dari kayu, meskipun bahan lain seperti grafit
(misalnya, beberapa desain Steinberger) juga telah digunakan. Sementara berbagai kayu
yang digunakan untuk body, neck, dan fret board bass, jenis kayu yang paling umum
digunakan untuk body adalah alder dan ash, untuk neck yaitu maple, dan untuk fret board
adalah rosewood [4]. Gitar bass yang penulis memakai untuk melakukan penelitian ini
terlihat pada Gambar 2.1.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
Gambar 2.1. Gitar Bass Elektrik
Tabel 2.1. Nilai Frekuensi Gitar Bass Elektrik 4 Senar [5]
4 Senar Nada Open String Frekuensi (Hz)
Senar Pertama G 98
Senar Kedua D 73,42
Senar Ketiga A 55
Senar Keempat E 41,20
Nada di atas berurutan mulai dari senar pertama hingga senar keempat. Senar
pertama memiliki frekuensi paling tinggi, lalu hingga senar keempat yang memiliki
frekuensi paling rendah. Nada tersebut adalah nada standar tuning gitar bass elektrik.
2.2. USB Guitar Link Cable
USB Guitar Link Cable adalah alat penghubung komputer dengan gitar elektrik atau
gitar bass elektrik. USB Guitar Link Cable adalah alat profesional yang memungkinkan
untuk menghubung komputer menjadi platform kerja yang fantastis dimana seorang guitarist
atau bassist dapat menggunakan efek klasik, di studio maupun di panggung. USB Guitar
Link Cable memungkinkan seorang musisi untuk merekam, bermain dengan cara playback,
atau bermain langsung menggunakan modeling dan efek gitar yang sudah disediakan di alat
ini. Alat ini bisa menggunakan di indoor maupun outdoor dan mudah untuk dibawa ke mana-
mana [6]. USB Guitar Link Cable memiliki beberapa spesifikasi sebagai berikut:
a. Variable-speed file playback function untuk MP3, WAV, AIFF audio files, dan
mudah untuk mempelajari dan praktekan.
b. ¼” TS Guitar Input, ¼” TRS Headphone Output.
c. Kualitas Audio: 16-bit, 48 kHz.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
d. Menggunakan kabel USB konektor untuk menghubungkan ke komputer.
e. Sistem Operasi PC yang digunakan adalah Microsoft Windows XP (SP2), Windows
Vista, Windows 7, dan Mac OS 8.5, 8.6, 9.
Gambar 2.2. USB Guitar Link Cable
2.3. Sampling
Sampling adalah proses pengambilan nilai-nilai sinyal pada titik-titik diskret
sepanjang variabel waktu dari sinyal waktu kontinyu, sehingga didapatkan sinyal waktu
diskret (proses pencuplikan gelombang suara yang menghasilkan gelombang diskret).
Jumlah titik-titik yang diambil setiap detik dinamakan sampling rate. Sampling rate
menandakan banyaknya jumlah sampel dalam satuan Hertz (Hz) yang diambil dalam satuan
waktu (detik). Artinya batas frekuensi yang dapat dikirim per detiknya. Pada proses
sampling, sebaiknya sampling rate memenuhi kriteria Nyquist yang menyatakan bahwa
sampling rate harus lebih besar dua kali frekuensi tertinggi analog [7]. Secara matematis
dapat dituliskan sebagai berikut:
≥ (2.1)
dengan fs adalah sampling rate dan fm adalah frekuensi tertinggi sinyal suara analog. Hasil
sampling sinyal suara gitar bass diperlihatkan pada Gambar 2.3.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
Gambar 2.3. Contoh hasil Sampling
Contoh perhitungannya:
Nada standar pada senar pertama dari gitar bass memiliki frekuensi fundamental
sebesar 98 Hz, oleh karena itu, frekuensi sampling dari nada tersebut adalah sebagai berikut:
≥ 2≥ 2 × 98 Hz
≥ 196 Hz
Perlu diketahui bahwa suatu nada tidak hanya memiliki nada standar, tetapi juga
memiliki tingkatan nada atau biasa disebut dengan nada harmonik. Nada harmonik
merupakan kelipatan dari nada standar.
Contoh perhitungannya:
Nada standar pada senar pertama dari gitar bass memiliki frekuensi fundamental
sebesar 98 Hz. Nada harmonik ketiga dari nada tersebut memiliki frekuensi sebesar 98 Hz ×
3 = 294 Hz, oleh karena itu, frekuensi sampling dari nada tersebut adalah sebagai berikut:
0 1000 2000 3000 4000 5000 6000-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
Data Tercuplik
Am
plitu
do
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
≥ 2≥ 2 × 294 Hz
≥ 588 Hz
2.4. Preprocessing
Preprocessing adalah proses-proses awal yang dilakukan sebelum proses
membangkitkan spektrum. Tujuan dari preprocessing ini adalah untuk menyetarakan sinyal
nada masukan agar lebih muda diproses untuk pencocokan nadanya. Preprocessing terdiri
dari beberapa proses yaitu normalisasi, frame blocking, dan windowing.
2.4.1. Normalisasi
Normalisasi adalah proses pengolahan suara untuk menaikkan atau menurunkan
amplitudo dari sebuah file suara agar semua sampel di dalamnya berada pada rentang
tertentu. Pada pengambilan suara ini perlu adanya normalisasi supaya amplitudo dari nada
gitar yang dilakukan tuning dapat menjadi maksimal. Proses normalisasi ini dilakukan
dengan cara membagi setiap nilai data masukan yaitu nada terekam dengan nilai absolut
maksimal dari data masukan tersebut. Berikut rumus untuk proses normalisasi [8]:
= ( ( )) (2.2)
dengan Xnorm adalah hasil data sinyal normalisasi dan Xin adalah data masukan dari sampling.
Hasil proses normalisasi sinyal suara gitar bass diperlihatkan pada Gambar 2.4.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
Gambar 2.4. Hasil Normalisasi dari Gambar 2.3
Contoh perhitungan normalisasi sebagai berikut:
Misalnya Xin memiliki nilai sebanyak [0,2 0,8 1 1,8 2], maka cara untuk
menghitungnya sebagai berikut:
max (abs(Xin)) = 2
Xnorm = Xin / max (abs(Xin))
Xnorm = [0,2 0,8 1 1,8 2] / 2
Xnorm = [0,1 0,4 0,5 0,9 1]
2.4.2. Frame Blocking
Frame Blocking adalah proses yang bertujuan untuk membagi sampel sinyal nada
pada beberapa frame tertentu atau slot dengan panjang tertentu, yang nantinya dapat
memudahkan dalam perhitungan dan analisa sinyal. Satu frame terdiri dari beberapa sampel
tergantung berapa detik suara akan disampel dan berapa besar frekuensi pencuplikannya [9].
Panjang frame yang digunakan sangat mempengaruhi keberhasilan dalam analisa spektral.
Di satu sisi, ukuran dari frame harus sepanjang mungkin untuk dapat menunjukkan resolusi
frekuensi yang baik. Tetapi di lain sisi, ukuran frame juga harus cukup pendek untuk dapat
menunjukkan resolusi waktu yang baik.
0 1000 2000 3000 4000 5000 6000-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Data Tercuplik
Am
plitu
do
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
Hasil perekaman suara gitar bass merupakan sinyal analog yang berada dalam
domain waktu yang bergantung waktu. Pada proses ini, pemotongan sinyal dilakukan dalam
slot-slot waktu tertentu agar memenuhi syarat invariant dan dapat dianggap invariant.
Frame blocking berfungsi untuk mereduksi data yang nantinya akan diproses dalam
sistem dan dapat mempercepat proses perhitungan pada Fast Fourier Transform dengan
jumlah data pada setiap frame memiliki 2N data sampel. Gambar 2.5 menunjukkan contoh
potongan-potongan frame yang akan diambil beberapa bagian dari frame tersebut untuk
proses selanjutnya. Gambar 2.6 menunjukkan sinyal yang akan diambil untuk frame
blocking dan Gambar 2.7 menunjukkan contoh hasil frame blocking.
Gambar 2.5. Frame Blocking [10]
Gambar 2.6. Sinyal yang akan diambil untuk Frame Blocking dari Gambar 2.4
0 1000 2000 3000 4000 5000 6000-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Data Tercuplik
Am
plitu
do
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
Gambar 2.7. Hasil Frame Blocking dari Gambar 2.6
2.4.3. Windowing
Suara yang dipotong-potong menjadi beberapa frame membuat data suara menjadi
discontinue, hal ini mengakibatkan kesalahan data proses Fourier transform. Agar tidak
terjadi kesalahan data pada proses Fourier transform maka sampel suara yang telah dibagi
menjadi beberapa frame perlu dijadikan suara kontinyu dengan cara mengalikan setiap frame
dengan window tertentu. Ada beberapa fungsi window yang telah ada di antaranya Kaiser,
Hamming, Triangular, dan Rectangular. Jenis window yang dipakai pada proses ini adalah
Hamming Window. Fungsi window yang paling sering digunakan dalam aplikasi voice
recognition adalah Hamming Window. Hamming Window mempunyai side lobe yang paling
kecil dan main lobe yang paling besar sehingga hasil windowing akan lebih halus dalam
menghilangkan efek diskontinuitas. Hamming Window adalah sebuah vektor dengan jumlah
elemen sebanyak n. Biasanya n akan disesuaikan dengan banyaknya elemen pada frame
sehingga banyaknya elemen pada Hamming Window akan sama dengan banyaknya elemen
pada frame. Persamaan dari Hamming Window [11]:
( ) = , − , (2.3)
0 100 200 300 400 500 600-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Data Tercuplik
Am
plitu
do
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
dengan N adalah jumlah data dari sinyal dan n adalah waktu diskret ke [0, 1, 2, …, N-1].
Hasil proses Hamming Window sinyal suara gitar bass diperlihatkan pada Gambar 2.8.
Gambar 2.8. Hasil Hamming Window dari Gambar 2.7
Contoh perhitungan Hamming Window:
Diketahui: π = 3,14, n = 0, 1, 2, dan N = 512.
w (n) = 0,54 – 0,46 cos (2πn/(N-1))
w (0) = 0,54 – 0,46 cos (2 × 3,14 × 0/(512-1))
w (0) = 0,54 – 0,46 cos 0
w (0) = 0,54 – 0,46 × 1
w (0) = 0,08
w (1) = 0,54 – 0,46 cos (2 × 3,14 × 1/(512-1))
w (1) = 0,54 – 0,46 cos 0,0123
w (1) = 0,54 – 0,46 × 0,9999
w (1) = 0,080046
w (2) = 0,54 – 0,46 cos (2 × 3,14 × 2/(512-1))
w (2) = 0,54 – 0,46 cos 0,0246
w (2) = 0,54 – 0,46 × 0,9997
w (2) = 0,080138
0 100 200 300 400 500 600-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
Data Tercuplik
Am
plitu
do
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
2.5. DFT dan FFT
DFT (Discrete Fourier Transform) adalah suatu bentuk transformasi yang umum
digunakan untuk mengubah sinyal dari domain waktu menjadi sinyal domain frekuensi. DFT
dapat dituliskan dalam persamaan [12]:
[ ] = ∑ [ ] (2.4)
dengan k = 0, 1, …, N-1, X [k] adalah runtun keluaran (domain frekuensi), x [n] adalah runtun
masukan (domain waktu), N adalah jumlah sampel, adalah ( ), nilai x dan X adalah
nilai bilangan kompleks, variabel j adalah satuan imajiner, dan nilai ( ) adalah primitive
n-th root of unity.
FFT (Fast Fourier Transform) merupakan pengembangan dari komputasi dengan
menggunakan DFT dengan cepat dan efisien. Perhitungan DFT secara langsung akan
membutuhkan operasi aritmatik sebanyak O (N2) sedangkan perhitungan dengan FFT akan
membutuhkan operasi sebanyak O (NlogN).
FFT merupakan turunan dari persamaan DFT jumlah perhitungan digital pada DFT
dapat dikurangi secara signifikan sehingga dengan adanya penemuan FFT, maka
perhitungan digital terhadap spektrum-spektrum frekuensi dapat diwujudkan secara
sederhana dalam implementasinya.
FFT biasanya diimplementasikan dengan cara memanfaatkan faktorisasi dari N
(jumlah sampel yang ditransformasikan) dan juga bahwa ( ) adalah primitive n-th root of
unity. Algoritma yang terkenal salah satunya adalah algoritma FFT Cooley-Tukey.
Algoritma ini menggunakan skema Divide and Conquer yang memecah N secara rekursif
menjadi dua buah DFT.
Algoritma FFT Cooley-Tukey yang paling sederhana adalah radix-2 Decimation In
Time. Radix-2 yang dimaksud adalah pembagian N menjadi dua buah DFT yang sama
panjang (dibagi dua), sehingga dinamakan radix-2. Secara umum, N bisa difaktorisasi
menjadi N1 x N2. Jika nilai N1 yang menjadi radix, maka algoritmanya dinamakan
Decimation In Time (DIT). Sedangkan jika N2 yang dijadikan radix, maka algoritmanya
dinamakan Decimation In Frequency (DIF). Dalam pemrosesan sinyal digital dikenal
butterfly digunakan untuk mendeskripsikan decimation tersebut dalam FFT.
Hasil proses FFT sinyal suara gitar bass diperlihatkan pada Gambar 2.9.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
Gambar 2.9. Hasil FFT dari Gambar 2.8
Contoh perhitungan FFT 2 dan 4 titik:
a. Dalam suatu sinyal memiliki nilai x (n) = {1, 3} dan berapakah x (k)?
b. Dalam suatu sinyal memiliki nilai x (n) = {1, 2, 3, 4} dan berapakah x (k)?
Metode yang akan digunakan untuk menghitung dua persoalan yang di atas adalah
dengan metode radix-2 Decimation In Time.
FFT 2 titik: x (n) = {1, 3} dan x (k) = ?
x (n) x (k)
x (0) = 1 1 4
x (1) = 3 -2
-1
Gambar 2.10. Contoh Perhitungan FFT 2 Titik Menggunakan Butterfly
Perhitungannya sebagai berikut:
x (0) = 1 + 3 = 4
x (1) = -3 + 1 = -2
x (k) = {4, -2}
0 50 100 150 200 250 3000
5
10
15
20
25
30
35
40
45
50
Frekuensi (Hz)
Am
plitu
do
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
FFT 4 titik: x (n) = {1, 2, 3, 4} dan x (k) = ?
x (n) x (k)
x (0) = 1 1 4 4 S0 x (0) = 10
x (2) = 3 -2 -2 S1 x (1) = -2 + 2j
-1
x (1) = 2 1 6 = 1 S2 x (2) = 2
6 × 1 = 6 -1
x (3) = 4 -2 = − S3 x (3) = -2 - 2j
-1 -4 + 2j = 2j -1
Gambar 2.11. Contoh Perhitungan FFT 4 Titik Menggunakan Butterfly
Perhitungannya sebagai berikut:
S0 = x (0) + x (2) = 1 + 3 = 4 x (0) = S0 + S2 = 4 + 6 = 10
S1 = x (0) - x (2) = 1 – 3 = -2 x (1) = S1 + S3 = -2 + 2j
S2 = [x (1) + x (3)] = (2 + 4) × 1 = 6 x (2) = S0 - S2 = 4 – 6 = -2
S3 = [x (1) - x (3)] = (2 – 4) × (-j) = 2j x (3) = S1 - S3 = -2 - 2j
x (k) = {10, -2 + 2j, -2, -2 – 2j}
2.6. Harmonic Product Spectrum (HPS)
HPS merupakan teknik sederhana yang dapat bertahan di berbagai kondisi.
Algoritma dari HPS dapat bekerja dengan baik pada real time dengan 200 Mhz. Bila sinyal
masukan berupa musik, maka spektrum terdiri dari serangkaian puncak, sesuai dengan
frekuensi standar dengan komponen harmonik pada kelipatan bilangan bulat dari frekuensi
standar. Spektrumnya akan dilakukan beberapa kali proses downsampling. Ketika
dibandingkan dengan spektrum asli setelah melewati proses downsampling dapat dilihat
perbedaan antara puncak fundamental dan puncak harmonik. Puncak pertama dalam
spektrum asli bertepatan dengan puncak kedua dalam spektrum terkompresi dengan faktor
dua, yang bertepatan dengan puncak ketiga dalam spektrum terkompresi dengan faktor tiga,
oleh karena itu, ketika berbagai spektrum yang dikalikan bersama-sama, hasilnya akan
membentuk puncak yang jelas pada frekuensi fundamental [13].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
Puncak dalam spektrum merupakan kelipatan harmonik dari frekuensi
fundamental, oleh karena itu, dikompresi dengan bilangan bulat dan menambahkan hasil
frekuensi terkompresi dari spektrum akan memberikan puncak tertinggi pada semua
harmonik [14]. HPS merupakan suatu metode yang berfungsi untuk melihat frekuensi
standar yang terdapat pada sinyal masukan. Secara matematis HPS dapat dirumuskan pada
persamaan: ( ) ≡ ∏ | ( )| (2.5)
Suatu nada memiliki tingkatan nada atau biasa disebut harmonik. Harmonik
merupakan harmonisasi dari nada standar atau harmonik pertama, sehingga setiap kelipatan
dari nada standar pertama merupakan harmonisasi nada dari nada standar, yang
membedakan dari nada standar dengan nada harmonik terdapat pada besar nilai frekuensi,
oleh karena itu, metode ini digunakan agar dapat diketahui frekuensi standar dari nada
tersebut. Aplikasi dengan metode ini yaitu dengan melakukan downsampling pada nada-
nada harmonik. Proses downsampling dilakukan dengan membagi data dari sinyal asli
hingga beberapa kali dari harmonisasinya, sehingga hanya nada standar atau harmonik
pertama saja yang akan muncul. Proses downsampling diperlihatkan pada Gambar 2.12.
| ( )|| ( )|| ( )|| ( )|
Gambar 2.12. Harmonic Product Spectrum [14]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
0 50 100 150 200 250 3000
500
1000
1500
Frekuensi (Hz)
Am
plitu
do
Gambar 2.12 menunjukkan bagaimana proses HPS dilakukan dan menunjukkan
juga pemahaman dari persamaan (2.5). Proses dimulai dengan melakukan perkalian sebesar
|F (ω)|2 pada sinyal masukan untuk menyelaraskan harmonik pertama dengan nada standar.
Dengan proses yang sama dilakukan juga perkalian sebesar |F (2ω)|2 pada sinyal masukan
untuk menyelaraskan harmonik kedua dengan hasil proses sebelumnya. Dengan proses yang
sama dilakukan kurang lebih sebanyak 4 kali agar hasil dari HPS dapat terlihat. Proses yang
dimaksud di atas adalah proses downsampling. Hasil akhir dari HPS yaitu dapatnya nilai
frekuensi akhir pada masing-masing senar yang dilakukan tuning. Setelah melewati dua kali
proses downsampling, hasil proses HPS pada sinyal suara gitar bass dapat terlihat dengan
jelas pada frekuensi akhirnya yang diperlihatkan pada Gambar 2.13.
Gambar 2.13. Hasil HPS dari Gambar 2.9
2.7. Resolusi Frekuensi
Resolusi frekuensi berkaitan dengan penampakan detail sinyal dalam ranah
frekuensi. Jika resolusi frekuensi makin kecil, maka sinyal akan tampak makin detail.
Sebaliknya, jika resolusi frekuensi makin besar, sinyal akan tampak kurang detail. Secara
matematis, resolusi frekuensi dirumuskan sebagai berikut [15]:∆ = (2.6)
dengan fs adalah frekuensi pencuplikan dan NFFT adalah panjang FFT yang digunakan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
BAB III
RANCANGAN PENELITIAN
3.1. Sistem Stem Gitar Bass Elektrik
Diagram blok sistem stem (tuning) gitar bass elektrik diperhatikan pada Gambar
3.1.
Proses Tuning
USB Guitar Link Cable
Gitar Bass Elektrik
Laptop
Gambar 3.1. Diagram Blok Sistem Stem Gitar Bass Elektrik
3.1.1. Gitar Bass Elektrik
Gitar bass elektrik digunakan sebagai objek penelitian oleh penulis, gitar bass
elektrik memiliki 4 nada standar yang akan dilakukan tuning untuk mendapatkan nada
standarnya yaitu pada senar pertama nada G, senar kedua nada D, senar ketiga nada A, dan
senar keempat nada E.
3.1.2. USB Guitar Link Cable
USB Guitar Link Cable adalah alat penghubung komputer dengan gitar bass
elektrik, fungsinya untuk menangkap suara dari gitar bass elektrik, kemudian menyalurkan
pada laptop kemudian diproses untuk tuning gitar bass elektrik.
Proses Perekaman
Proses Mendeteksi Frekuensi
Penentuan Keluaran
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
3.1.3. Laptop
Laptop memiliki soundcard yang berfungsi untuk mengubah sinyal analog (suara
gitar) yang masuk lewat USB Guitar Link Cable menjadi sinyal digital. Soundcard yang
digunakan adalah soundcard yang sudah terpasang pada motherboard. Dalam konversi
sinyal analog menjadi sinyal digital dan kemudian disimpan diperlukan pengaturan yang
meliputi pengaturan frekuensi sampling dan channel. Pengaturan tersebut dilakukan pada
proses perekaman oleh program yang akan dibuat.
3.1.4. Proses Perekaman
Proses perekaman adalah proses pengambilan nada pada gitar bass, dan masuknya
data nada terekam berupa sinyal digital. Saat proses perekaman berlangsung sinyal analog
dikonversi menjadi sinyal digital dengan frekuensi sampling. Nada yang telah menjadi sinyal
digital tersebut disimpan disebut nada terekam dan kemudian dapat diproses untuk dikenali
lewat proses stem gitar bass elektrik.
3.1.5. Proses Mendeteksi Frekuensi dan Penentuan Keluaran
Proses ini untuk mendeteksi dan mengetahui frekuensi dari sinyal masukan yaitu
suara gitar bass dan untuk mendapatkan nada standar pada senar satu sampai senar empat.
Gambar 3.2 merupakan diagram proses untuk mengetahui frekuensi dari sinyal masukan.
Masukan (wav)
Keluaran (teks)
Gambar 3.2. Diagram Proses Mendeteksi Frekuensi dan Penentuan Keluaran
Preprocessing
FFT dan Spektrum Frekuensi
Harmonic Product Spectrum
Penentuan Frekuensi
Penentuan Nada (Look Up Table)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
1. Masukan
Masukan adalah hasil dari sampling nada gitar bass elektrik yang direkam langsung
(real time).
2. Preprocessing
Preprocessing merupakan proses awal yang berfungsi untuk menyetarakan sinyal
masukan. Preprocessing terdiri dari:
a. Normalisasi
Proses ini adalah proses pengolahan suara untuk menaikkan atau menurunkan
amplitudo nada agar semua sampel di dalamnya berada pada rentang tertentu dan nada
masukannya menjadi maksimum, sehingga efek dari kuat atau lemahnya suara yang
dikeluarkan alat musik tidak terlalu memengaruhi proses tuning gitar bass tersebut.
b. Frame Blocking
Proses frame blocking bertujuan untuk membagi sampel sinyal nada pada beberapa
frame tertentu atau slot dengan panjang tertentu dan akan memilih data dari nada terekam.
Data yang dipilih dapat mewakili semua nada yang terekam.
c. Windowing
Windowing berfungsi untuk mengurangi efek diskontinuitas dari potongan-
potongan sinyal yang dijadikan beberapa frame. Suara yang dipotong-potong menjadi
beberapa frame membuat data suara menjadi diskontinuitas. Dalam penelitian ini
menggunkan Hamming Window.
3. FFT dan Spektrum Frekuensi
Pada proses tuning gitar bass elektrik ini, nilai FFT sama dengan nilai frame blocking.
Proses ini untuk membangkitkan spektrum frekuensi. Setelah melihat keluaran spektrum
frekuensi, maka dapat diketahui frekuensi untuk chord senar yang dilakukan tuning.
4. Harmonic Product Spectrum (HPS)
Proses HPS ini digunakan untuk mengalikan nilai spektrum frekuensi yang
didapatkan, hal ini bertujuan untuk menghilangkan sinyal harmonik pada frekuensi, dan
fungsinya untuk membentuk puncak yang jelas pada frekuensi fundamental. Proses ini
dilakukan setelah nilai dari spektrum frekuensi sudah diketahui.
5. Penentuan Frekuensi
Proses ini untuk menentukan frekuensi nada pada senar gitar bass elektrik yang
dilakukan tuning, dari proses FFT dan spektrum frekuensi, maka dapat diketahui nilai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
frekuensinya yaitu nilai frekuensi yang paling tinggi yang berada di urutan pertama setelah
melalui proses FFT dan spektrum frekuensi.
6. Penentuan Nada Senar
Setelah mengetahui nilai frekuensi yang dihasilkan, maka dapat diketahui nada
keluarannya pada masing-masing senar, dari senar pertama sampai senar keempat. Pada
proses penentuan ini menggunakan look up table.
7. Keluaran (teks)
Keluarannya akan menampilkan teks nada standar dari senar satu hingga senar empat
apabila proses tuning sudah sampai nada standar dari masing-masing senar gitar bass
elektrik.
3.2. Nada Uji
Fungsi dari nada uji ialah untuk menjalankan program tuner bass secara belum real
time. Proses ini bertujuan untuk pencuplikan gelombang suara yang akan menghasilkan
gelombang diskret termodulasi pulsa. Nada uji juga digunakan sebagai referensi awal untuk
mencari frekuensi keluaran look up table. Berikut adalah diagram blok pada proses
pengambilan nada uji yang ditunjukkan pada Gambar 3.3.
Masukan (Suara Gitar Bass Elektrik) Keluaran (wav)
Gambar 3.3. Diagram Blok Proses Pengambilan Nada Uji
Perekaman
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
3.3. Perancangan Tampilan Program GUI MATLAB
Gambar 3.4 menunjukkan tampilan proses program GUI Matlab dan Tabel 3.1
memperlihatkan keterangan tampilan utama sistem.
Gambar 3.4. Tampilan Proses Program GUI Matlab
Tabel 3.1. Keterangan Tampilan Utama Sistem
Nama KeteranganHasil FrameBlocking
Berfungsi untuk menampilkan grafik hasil frameblocking
Hasil FFTBerfungsi untuk menampilkan grafik hasil FastFourier Transform (FFT)
Hasil HPSBerfungsi untuk menampilkan grafik hasilHarmonic Product Spectrum (HPS)
Pilih SenarBerfungsi untuk memilih senar berapa yang ingindilakukan tuning
Frekuensi (Hz)Berfungsi untuk menampilkan frekuensi akhir nadadalam satuan Hertz
NADABerfungsi untuk menampilkan nada standar padasenar yang dipilih
Hasil Frame Blocking Hasil FFT Hasil HPS
Pilih Senar Frekuensi (Hz)
NADA
BERHENTI
Status
MULAI CLEAR
STEM GITAR BASS MENGGUNAKAN HARMONIC PRODUCT SPECTRUM
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
Tabel 3.1. (Lanjutan) Keterangan Tampilan Utama Sistem
3.4. Perancangan Alur Program
Diagram alir sistem stem gitar bass elektrik ditunjukkan pada Gambar 3.5.
Gambar 3.5. Diagram Alir Sistem Stem Gitar Bass Elektrik
Nama Keterangan
StatusBerfungsi untuk menampilkan; Kurang, Pas atauLebih pada proses tuning untuk mendapatkan nadastandar pada senar yang sedang dilakukan tuning
MULAIBerfungsi untuk menjalankan proses tuning bass,setelah sudah memilih senar berapa yang ingindilakukan tuning
CLEARBerfungsi untuk membersihkan semua hasilkeluaran, jika senar yang dipilih sudah tuned
BERHENTI Berfungsi untuk menghentikan proses tuning
START A
Masukan SuaraGitar Bass
Keluaran Teks
A
Proses Perekaman
Normalisasi
Frame Blocking
Windowing
FFT dan SpektrumFrekuensi
Harmonic Product Spectrum
Penentuan Frekuensi
Penentuan Nada(Look Up Table)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
Pada sistem tuning gitar bass elektrik ini terdapat pada proses-proses yang perlu
dilakukan, yang bermula dari perekaman hingga hasil akhir yang akan memberikan tampilan
yaitu teks untuk nada standar serta frekuensi dari nada tersebut, hasil frame blocking, hasil
FFT, hasil HPS, dan hasil tuning yang nantinya akan ditampilkan status (kurang, pas, atau
lebih) pada masing-masing senar yang didapatkan saat proses tuning berlangsung.
3.4.1. Rekam
Diagram alir sub rutin rekam ditunjukkan pada Gambar 3.6.
Tidak
Ya
Gambar 3.6. Diagram Alir Sub Rutin Rekam
Pada proses perekaman, proses pertama akan melewati sampling yang tujuannya
untuk merekam nada gitar bass elektrik dengan nilai frekuensi sampling yang telah
ditentukan oleh penulis yaitu 512 Hertz. Penulis memilih nilai frekuensi sampling tersebut
START
Keluaran:Nada Terekam
END
Sampling
Mulai?
Masukan: Pilih“Nomor Senar” di GUI
Input: Tekan Tombol“MULAI” di GUI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
karena frekuensi sampling minimal harus dua kali lebih besar dari frekuensi tertinggi dari
sinyal yang dilakukan sampling tersebut, dari Tabel 2.1 terlihat bahwa frekuensi terbesar
yang dimiliki pada senar gitar bass dari senar pertama hingga senar keempat yaitu dengan
nilai frekuensi sebesar 98 Hz yang terdapat pada nada G. Jadi penulis cukup untuk memilih
nilai pada frekuensi sampling yaitu 512 Hertz. Nilai untuk frekuensi sampling didapatkan
berdasarkan persamaan (2.1). Jadi semua sampel nada yang diambil dalam proses
perekaman, melalui sampling terlebih dahulu sebelum masuk ke tahap selanjutnya. Hasil
keluaran untuk proses perekaman dalam bentuk wav.
3.4.2. Normalisasi
Diagram alir normalisasi ditunjukkan pada Gambar 3.7.
Gambar 3.7. Diagram Alir Normalisasi
Tujuan dari proses normalisasi adalah untuk menaikkan atau menurunkan
amplitudo dari sebuah file suara agar semua sampel di dalamnya berada pada rentang tertentu
START
Masukan:Nada Terekam
Mencari Nilai MaksimalDari Data Nada
Terekam
END
Data Nada Rekamdibagikan dengan NilaiMaksimal Nada Rekam
Keluaran: HasilNormalisasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
sehingga dapat terbentuk pada skala yang sama, agar kuat atau lemahnya suara nada gitar
yang dilakukan tuning tidak terlalu memengaruhi proses penganalan.
Berdasarkan persamaan (2.2), proses normalisasi ini dilakukan dengan cara
membagi setiap nilai data masukan yaitu nada terekam dengan nilai absolut maksimal dari
data masukan tersebut, sehingga didapatkan sinyal yang ternormalisasi untuk nada terekam.
3.4.3. Frame Blocking
Diagram alir frame blocking ditunjukkan pada Gambar 3.8.
Tidak Tidak Tidak
Ya Ya
Ya
Tidak Tidak
Ya Ya
Gambar 3.8. Diagram Alir Frame Blocking
Setelah proses normalisasi, maka proses selanjutnya yaitu frame blocking. Panjang
frame yang diberikan yaitu 16, 32, 64, 128, 256, dan 512. Panjang frame yang digunakan
START
Masukan: HasilNormalisasi
END
Mengambil DataSepanjang Nilai Frame
Frame= 16
Frame= 32
Frame= 64
Keluaran: HasilFrame Blocking
di GUI
Frame= 128
Frame= 256
Frame512
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
sangat mempengaruhi keberhasilan dalam analisa spektral. Di satu sisi ukuran dalam frame
harus sepanjang mungkin untuk dapat menunjukkan resolusi frekuensi yang baik. Tetapi di
sisi lain ukuran frame juga harus cukup pendek untuk dapat resolusi waktu yang baik. Dalam
proses ini, data yang diambil mulai dari sinyal yang paling kiri dan akan diambil sepanjang
nilai frame yang sudah diberikan, sehingga dapat memudahkan dalam perhitungan dan
analisa sinyal. Data yang diambil dapat mewakili data terekam. Data yang diambil tersebut
merupakan keluaran untuk proses frame blocking.
3.4.4. Windowing
Diagram alir windowing ditunjukkan pada Gambar 3.9.
Gambar 3.9. Diagram Alir Windowing
Suara yang dipotong-potong menjadi beberapa frame membuat data suara menjadi
discontinue, hal ini mengakibatkan kesalahan data proses Fourier transform. Fungsinya
windowing untuk mengurangi efek diskontinuitas tersebut saat sinyal ditransformasikan ke
domain frekuensi. Proses ini menggunakan fungsi hamming yang ada di program Matlab.
Hamming window membuat hasil windowing akan lebih halus dalam menghilangkan efek
diskontinuitas, untuk mendapatkan hasil untuk proses windowing, maka hasil frame blocking
START
Masukan: HasilFrame Blocking
Hasil Frame Blocking dikalikandengan Hamming Window
END
Keluaran: HasilWindowing
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
dikalikan dengan hamming window. Fungsi window yang paling sering digunakan dalam
aplikasi voice recognition adalah hamming window. Hamming Window mempunyai side
lobe yang paling kecil dan main lobe yang paling besar sehingga hasil windowing akan lebih
halus dalam menghilangkan efek diskontinuitas. Berdasarkan persamaan (2.3), hamming
window adalah sebuah sebuah vektor dengan jumlah sebanyak n. Nilai n akan disesuaikan
dengan banyaknya elemen pada frame sehingga banyaknya elemen pada hamming window
akan sama dengan banyaknya elemen pada frame. Hal tersebut akan menghilangkan efek
diskontinuitas pada proses Fourier transform ini.
3.4.5. FFT dan Spektrum Frekuensi
Diagram alir FFT dan spektrum frekuensi ditunjukkan pada Gambar 3.10.
Gambar 3.10. Diagram Alir FFT dan Spektrum Frekuensi
START
Masukan: HasilWindowing
Menghitung NilaiFFT
END
PenentuanSpektrum
Keluaran: SpektrumFrekuensi
Output di GUI“Hasil FFT”
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
Dalam proses ini, perhitungan dengan FFT digunakan untuk membangkitkan
spektrum frekuensi. Dalam proses perhitungan FFT tersebut menggunakan fungsi FFT yang
ada di program Matlab. Setelah mendapatkan nilai FFT, proses selanjutnya adalah mencari
spektrum frekuensi, tujuannya untuk mendapatkan keluaran spektrum frekuensi. Sebelum
mendapatkan keluaran spektrum frekuensi, ada juga proses yang harus dilewati yaitu proses
penentuan spektrum. Proses ini akan diproses setelah menghitung nilai FFT, dan untuk
menentukan spektrum dalam proses tersebut dengan cara yaitu ambil separuh bagian kiri
dari FFT. Proses tersebut adalah salah satu cara untuk mengubah sinyal dari domain waktu
ke domain frekuensi. Berdasarkan persamaan (2.4), FFT merupakan pengembangan dari
komputasi dengan menggunakan DFT untuk mengubah sinyal dari domain waktu ke domain
frekuensi, dan FFT dapat menghitung DFT dengan cepat dan efisien untuk membangkitkan
spektrum frekuensi.
3.4.6. Harmonic Product Spectrum (HPS)
Diagram alir Harmonic Product Spectrum (HPS) ditunjukkan pada Gambar 3.11.
Gambar 3.11. Diagram Alir Harmonic Product Spectrum
Proses HPS ini dilakukan setelah mencari spektrum frekuensi, pada tahap ini sinyal
keluaran dari hasil perhitungan FFT yang sudah membangkitkan spektrum frekuensi tersebut
START
Masukan: SpektrumFrekuensi
Perkalian SpektrumFrekuensi Menggunakan
Harmonic Product Spectrum
END
Keluaran: Hasil PerkalianSpektrum Frekuensi
Menggunakan HarmonicProduct Spectrum
B
B
Output di GUI“Hasil HPS”
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
akan diproses berdasarkan algoritma HPS, dan dengan cara dikalikan nilai hasil spektrum
yang ada, hasilnya akan membentuk puncak yang jelas pada frekuensi fundamental, artinya
untuk mendapatkan hasil sinyal yang bebas dari harmonik. Berdasarkan persamaan (2.5),
HPS merupakan suatu metode yang berfungsi untuk melihat frekuensi standar yang terdapat
pada sinyal masukan. Puncak dalam spektrum merupakan kelipatan harmonik dari frekuensi
fundamental, oleh karena itu, dikompresi dengan bilangan bulat dan menambahkan hasil
frekuensi terkompresi dari spektrum akan memberikan puncak tertinggi pada semua
harmonik. Hasil akhir dari Harmonic Product Spectrum ini diteruskan ke dalam proses
penentuan frekuensi.
3.4.7. Penentuan Frekuensi
Diagram alir penentuan frekuensi ditunjukkan pada Gambar 3.12.
Gambar 3.12. Diagram Alir Penentuan Frekuensi
Dengan hasil perkalian spektrum frekuensi menggunakan HPS, sudah bisa
menentukan hasil keluaran nilai frekuensi pada nada masukan. Hasil dari perkalian frekuensi
yang didapatkan dijadikan hasil untuk menentukan range nada yang mana dari hasil
frekuensi yang didapatkan dalam proses penentuan frekuensi ini, dari frekuensi tersebut,
hasil keluaran dapat diketahui apakah masih kurang, sudah pas, atau sudah lebih dari nada
standar pada masing-masing senar gitar bass yang sedang dilakukan tuning.
START
Masukan: Hasil PerkalianSpektrum Frekuensi
Menggunakan HarmonicProduct Spectrum
Menentukan Nilai Frekuensi
END
Keluaran: NilaiFrekuensi
C
C
Output di GUI“Frekuensi (Hz)”
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
3.4.8. Look Up Table
Dalam perancangan tuner gitar bass elektrik ini, menggunakan look up table pada
proses penentuan nadanya, untuk menentukan frekuensi pada look up table, penulis memakai
frekuensi yang sudah ditentukan pada nada standar gitar bass elektrik sesuai standar
internasional yang terdapat pada Tabel 2.1. Pengambilan nada gitar bass dilakukan melalui
tahap perekaman. Setalah proses perekaman maka akan melalui preprocessing yang terdiri
dari proses normalisasi, frame blocking, dan windowing. Setelah itu, menghitung dengan
FFT dan penentuan spektrum setelah itu dilakukan proses HPS, sehingga didapatkan plot
Harmonic Product Spectrum. Prosesnya ditunjukkan pada Gambar 3.13.
Gambar 3.13. Diagram Alir Proses Penentuan Frekuensi Akhir untuk Look Up Table
START
Keluaran (Fekuensi)
Masukan: Suara Gitar Bass
Perekaman
Preprocessing
FFT dan SpektrumFrekuensi
Harmonic Product Spectrum
Penentuan Frekuensi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
3.4.9. Penentuan Teks Nada Standar
Diagram alir penentuan teks nada standar ditunjukkan pada Gambar 3.14.
Tidak Tidak Tidak
Ya Ya Ya
Tidak Tidak
Ya Ya Ya
Tidak Tidak
Ya Ya Ya
Gambar 3.14. Diagram Alir Proses Penentuan Teks Nada Standar
START
Masukan:
Nilai Frekuensi
Senar 1 Senar 2 Senar 3
frek<98
END
D
frek<73
D
frek>73
E F
G H
Senar 4
Kurang Pas Lebih
Kurang Pas Lebih
frek=98 frek>98
frek=73
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
Tidak Tidak
Ya Ya Ya
Tidak Tidak
Ya Ya Ya
Gambar 3.14. (Lanjutan) Diagram Alir Proses Penentuan Teks Nada Standar
Data masukan berupa frekuensi dari masing-masing senar gitar bass yang terdapat
setelah melewati beberapa proses yang ada di atas. Setelah mendapatkan frekuensi tersebut,
maka akan dibandingkan dengan frekuensi masukan pada look up table yang sudah diatur
sesuai frekuensi standar gitar bass yang terdapat pada Tabel 2.1. Jika frekuensi yang didapat
sesuai dengan frekuensi standarnya, maka di situlah akan mendapatkan nada standar pada
senar yang dilakukan tuning. Singkatnya yaitu setelah mengetahui nilai frekuensinya, maka
hasil keluaran teks nada standar dari masing-masing senar gitar bass yang dilakukan tuning
tersebut dapat diketahui. Penentuan hasilnya dengan menggunakan look up table terlihat
pada Gambar 3.13, dari frekuensi akhir yang didapatkan, maka range frekuensi look up table
dapat ditentukan untuk nada standar pada masing-masing senar gitar bass.
E
frek<55
G
frek<41
H
F
LebihPasKurang
Kurang Pas Lebih
frek=55 frek>55
frek=41 frek>41
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
3.4.10. Keluaran (Teks)
Di bagian akhir ini (keluaran) akan menampilkan teks nada standar gitar bass sesuai
dengan senar yang dipilih untuk melakukan tuning dan akan menampilkan juga status
(Kurang, Pas, atau Lebih) pada hasil keluarannya. Setelah proses penentuan teks nada
selesai, maka akan mendapatkan keluarannya. Proses ini menggunakan call back yang
terdapat pada GUI Matlab dengan inisialisasi sebagai status untuk proses tuning. Berikut ini
adalah diagram alir proses untuk menampilkan teks keluaran.
Tidak
Ya
Gambar 3.15. Diagram Alir Proses Menampilkan Teks Keluaran
START
Masukan:
Indeks Nilai Maksimum
Proses Tuning
END
Sudah Tuned?
Status
set(handles.edit,'string',status)
Output di GUI“NADA” dan
“Status”
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
3.5. Rancangan Pengujian
Untuk mengetahui performa sistem yang telah dirancang, maka pengujian
dilakukan terhadap sistem dengan memainkan (tuning) gitar bass secara real time. Proses
pengujiannya yaitu menganalisis perbandingan frekuensi yang dihasilkan oleh sistem
(frekuensi sistem) dengan frekuensi standar yang ada di dalam sistem (frekuensi standar
sistem).
Untuk mengetahui tingkat akurasi nada yang dihasilkan pada senar gitar bass, perlu
dilakukan perbandingan antara frekuensi yang didapat pada sistem (dari semua panjang
frame blocking yang sudah disebut di bagian sebelumnya) dengan frekuensi standar sistem
yang tertera pada Gambar 3.14. Sebelum melakukan pengujian, senar gitar bass harus berada
pada posisi tuned. Senar gitar bass dinyatakan sudah tuned kalau keluarannya sudah sesuai
dengan diagram alir proses penentuan teks nada standar sistem yang tertera pada Gambar
3.14. Pengujian dilakukan sebanyak sepuluh kali pada masing-masing senar gitar bass, lalu
dihitung frekuensi rata-ratanya. Frekuensi rata-rata yang didapatkan menggunakan rumus:
(3.1)
Setelah melewati proses pengambilan dan perhitungan untuk mendapatkan
frekuensi rata-rata, pengujian ini sangat membutuhkan akurasi yang tinggi dalam mendeteksi
frekuensi. Hal ini dibutuhkan sebagai catuan dalam memberikan feedback yang efektif. Nilai
akurasi yang didapatkan menggunakan rumus [13]:
(3.2)
Setelah membandingkan frekuensi yang dihasilkan oleh sistem dengan frekuensi
standar sistem, maka didapat persentase akurasi antara frekuensi sistem dengan frekuensi
standar sistem pada masing-masing senar gitar bass. Selanjutnya akan dihitung juga rata-
rata akurasi dari setiap panjang frame blocking, lalu dibuat grafik untuk memperlihatkan
lebih jelas pengaruh panjang frame blocking terhadap tingkat pengenalan sistem.
Setelah melewati semua proses pengujian yang di atas, performa dari sistem
tersebut akan dinyatakan sudah berjalan dengan baik, jika persentase dari tingkat pengenalan
sistem mendekati atau mencapai 100%.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
BAB IV
HASIL DAN PEMBAHASAN
Bab ini akan membahas mengenai langkah-langkah pada program yang telah dibuat
dan program akan diuji terlebih dahulu untuk mengetahui cara kerjanya apakah sudah sesuai
dengan perancangan. Pengujian berguna untuk mengetahui kinerja program tersebut dalam
melakukan tuning pada gitar bass. Hasil pengujian berupa data-data, dengan data-data hasil
pengujian menunjukkan program yang telah dirancang dapat berjalan baik atau tidak, dan
dari data tersebut dapat dianalisa cara kerjanya. Setelah dianalisa, kesimpulan dapat ditarik
untuk sistem ini.
4.1. Pengujian Program Stem Gitar Bass Menggunakan Harmonic
Product Spectrum
Perancangan dan pengujian program stem gitar bass ini menggunakan software
Matlab R2010a. Pengujian program stem gitar bass ini menggunakan spesifikasi laptop
sebagai berikut:
1. Tipe Laptop : Acer Aspire S3-951
2. Prosesor : Intel(R) Core(TM) i3-2367M CPU @ 1.40GHz 1.40 GHz
3. RAM : 4 GB
4. Sistem Operasi : Windows 7 Ultimate 64-bit
Dalam perancangan sistem ini, tujuan membuat GUI adalah untuk memudahkan
user mengakses program ini. Berikut ini langkah-langkah untuk menjalankan program stem
gitar bass:
1. Pertama, buka software Matlab terlebih dahulu dan ubah current folder sesuai
lokasi disimpannya program yang telah dibuat.
2. Kedua, ketik perintah “tunergui” pada command window untuk menjalankan file
GUI yang telah dibuat kemudian tekan enter.
3. Ketiga, setelah menekan enter, maka GUI siap digunakan untuk pengujian secara
real time. Untuk lebih jelasnya, lihat pada Gambar 4.1.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
Gambar 4.1. GUI Software Stem Gitar Bass Menggunakan Harmonic Product Spectrum
Pada tampilan GUI Gambar 4.1, terdapat tiga pushbutton, satu buah popupmenu,
tiga axes, serta tiga edit text. Berikut ini adalah penjelasan tentang fungsi pushbutton,
popupmenu, axes, serta edit text yang digunakan pada GUI.
a. Pushbutton “MULAI”: Untuk memulai proses tuning gitar bass.
b. Pushbutton “CLEAR”: Untuk membersihkan semua hasil keluaran, jika senar yang
dipilih sudah tuned.
c. Pushbutton “BERHENTI”: Untuk menghentikan proses tuning.
d. Popupmenu “Pilih Senar”: Untuk memilih senar berapakah yang ingin dilakukan
tuning oleh user, apakah senar pertama, senar kedua, senar ketiga, atau senar
keempat (lihat Gambar 4.2). Setelah selesai memilih senar, kemudian user dapat
memulai tuning gitar bass dengan menekan tombol “MULAI”. Hasil tuning terlihat
seperti pada Gambar 4.3.
e. Axes “Hasil Frame Blocking”: Untuk menampilkan grafik hasil frame blocking.
f. Axes “Hasil FFT”: Untuk menampilkan grafik hasil fast Fourier transform.
g. Axes “Hasil HPS”: Untuk menampilkan grafik hasil harmonic product sprctrum.
h. Edit text “NADA”: Untuk menampilkan nada standar dari senar yang dipilih oleh
user untuk melakukan tuning.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
i. Edit text “Status”: Untuk menampilkan status dari senar yang sedang dilakukan
tuning, apakah masih kurang, sudah pas, atau sudah melebihi nada standar dari
senar tersebut.
j. Edit text “Frekuensi (Hz)”: Untuk menampilkan frekuensi keluaran dari senar yang
sedang dilakukan tuning.
Gambar 4.2. Pemilihan Senar Gitar Bass
Gambar 4.3. Contoh ketika GUI dijalankan untuk melakukan tuning pada Senar Pertama
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
4.2. Penjelasan Sintaks Program secara Real Time
Untuk sintaks program secara real time, pushbutton dan popupmenu yang terdapat
pada GUI akan diisi sintaks program tertentu agar nantinya GUI dapat berjalan dengan baik
dan lancar. Untuk lebih jelasnya, berikut ini penjelasannya.
a. Pushbutton “MULAI”
Pada saat menekan pushbutton “MULAI” ini, sistem akan mulai merekam suara
masukan dari gitar bass dan akan diproses lebih lanjut. Untuk lebih jelasnya berikut ini
proses-prosesnya dan juga sintaks programnya.
Proses merekam suara gitar bass
Sintaks program yang digunakan ditunjukkan pada Gambar 4.4.
Gambar 4.4. Sintaks Program untuk Proses Merekam
Berdasarkan sintaks program di atas, dapat dilihat bahwa terdapat sintaks
while. Sintaks ini digunakan untuk melakukan proses perulangan atau biasa
dikenal dengan looping selama kondisi ekspresi terpenuhi. Untuk
menghentikan proses looping tersebut dengan cara menggunakan sintaks
global. Sintaks global fungsinya untuk menghentikan sintaks while.
Langkah-langkah untuk mendapatkan hasil keluarannya ditunjukkan pada
Gambar 3.6. Proses tersebut menghasilkan hasil sampling sinyal suara gitar
bass seperti pada contoh Gambar 2.3. Selanjutnya hasil dari proses tersebut
akan dinormalisasikan.
global hentihenti=0;while henti==0
disp('tuning process..')pause(1);
% Variabel Penelitianframe=512; % Panjang Frame Blockingfs=512; % Frekuensi Samplinghfs=fs/2;
sg=wavrecord(frame,fs,'double'); % Sinyal Gitar (untukmasukan wav)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
Proses Normalisasi
Sintaks program yang digunakan ditunjukkan pada Gambar 4.5.
Gambar 4.5. Sintaks Program untuk Proses Normalisasi
Proses pertama yang akan diproses oleh sistem setelah dapat masukan (suara
gitar bass) yaitu proses normalisasi sinyal suara gitar bass terekam.
Normalisasi dilakukan dengan cara membagi data masukan (data sinyal suara
gitar bass terekam) dengan nilai absolut data tersebut. Langkah-langkah
untuk mendapatkan hasil keluarannya ditunjukkan pada Gambar 3.7. Proses
tersebut menghasilkan hasil normalisasi sinyal suara gitar bass seperti pada
contoh Gambar 2.4.
Proses Frame Blocking
Sintaks program yang digunakan ditunjukkan pada Gambar 4.6.
Gambar 4.6. Sintaks Program untuk Proses Frame Blocking
Setelah proses normalisasi, proses selanjutnya adalah frame blocking yang
tujuannya untuk mengambil sebagian data sesuai panjang nilai frame
blocking yang sudah ada yang nantinya akan ditampilkan pada kotak axes 1
(Hasil Frame Blocking). Langkah-langkah untuk mendapatkan hasil
keluarannya ditunjukkan pada Gambar 3.8. Sebagian data yang diambil untuk
diproseskan selanjutnya, seperti pada contoh Gambar 2.6, dan akan
menghasilkan hasil frame blocking seperti pada contoh Gambar 2.7. Setelah
melewati proses tersebut, data hasil frame blocking akan memasuki proses
selanjutnya yaitu proses windowing.
% Normalisasiy1=sg/max(abs(sg));
% Frame Blockingx0=y1(1:frame);axes(handles.axes1)plot(x0)xlabel('Data Tercuplik','Fontsize',8)ylabel('Amplitudo','Fontsize',8)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
Proses Windowing
Sintaks program yang digunakan ditunjukkan pada Gambar 4.7.
Gambar 4.7. Sintaks Program untuk Proses Windowing
Setelah melewati proses frame blocking, hasil dari proses frame blocking
tersebut akan melalui proses windowing untuk menghilangkan diskontinuitas
yang diakibatkan oleh proses frame blocking. Proses windowing ini
menggunakan Hamming Window. Dalam proses ini, hasil frame blocking
dikalikan dengan hamming. Langkah-langkah untuk mendapatkan hasil
keluarannya ditunjukkan pada Gambar 3.9. Proses tersebut menghasilkan
hasil windowing seperti pada contoh Gambar 2.8. Setelah mendapatkan hasil
windowing, maka hasil tersebut akan dilanjutkan pada proses FFT.
Proses FFT
Sintaks program yang digunakan ditunjukkan pada Gambar 4.8.
Gambar 4.8. Sintaks Program untuk Proses FFT
Setelah melewati proses windowing, hasil dari proses windowing tersebut
akan memasuki pada tahap selanjutnya yaitu perhitungan dengan FFT,
perhitungan ini untuk membangkitkan spektrum yang kemudian akan
dianalisis untuk mengetahui frekuensi nada yang dihasilkan saat user
melalukan tuning dan hasil FFT akan ditampilkan pada kotak axes 2 (Hasil
FFT). Langkah-langkah untuk mendapatkan hasil keluarannya ditunjukkan
pada Gambar 3.10. Proses tersebut menghasilkan hasil FFT seperti pada
contoh Gambar 2.9. Setelah mendapatkan hasil FFT, proses selanjutnya yang
harus dilalui untuk mendapatkan frekuensi keluarannya yaitu proses HPS.
% Windowingh=hamming(frame);y2=x0.*h;
% FFTy3=abs(fft(y2,fs));y3=y3(1:hfs);axes(handles.axes2)plot(y3)xlabel('Frekuensi (Hz)','Fontsize',8)ylabel('Amplitudo','Fontsize',8)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
Proses HPS
Sintaks program yang digunakan ditunjukkan pada Gambar 4.9.
Gambar 4.9. Sintaks Program untuk Proses HPS
Setelah melewati proses FFT, kemudian yang akan dilakukan adalah
perkalian elemen frekuensi dengan menggunakan HPS sehingga dapat
diketahui pasti letak frekuensi sebenarnya dari nada gitar bass yang dilakukan
tuning dan hasil HPS akan ditampilkan pada kotak axes 3 (Hasil HPS).
Langkah-langkah untuk mendapatkan hasil keluarannya ditunjukkan pada
Gambar 3.11. Proses tersebut menghasilkan hasil HPS seperti pada contoh
Gambar 2.13.
Frekuensi Keluaran
Sintaks program yang digunakan ditunjukkan pada Gambar 4.10.
Gambar 4.10. Sintaks Program untuk Frekuensi Keluaran
Berdasarkan sintaks program di atas ini, fungsinya untuk menampilkan
frekuensi keluaran yang dilihat pada amplitudo tertinggi yang dihasilkan oleh
HPS setelah melewati beberapa proses yang ada di atas dan hasilnya akan
ditampilkan pada kotak edit 1 (Frekuensi (Hz)) yang berupa string. Langkah-
langkah untuk mendapatkan hasil keluarannya ditunjukkan pada Gambar
3.12.
% HPSy4=y3(1:2:hfs); % Downsamplingy4(hfs)=0; % Zero Paddingy5=y3.*y4; % Perkalian Elemenaxes(handles.axes3)plot(y5)xlabel('Frekuensi (Hz)','Fontsize',8)ylabel('Amplitudo','Fontsize',8)
% Frekuensi Keluaranfrek=find(y5==max(y5))-1;set(handles.edit1,'string',frek);set(hObject,'Backgroundcolor',[1 1 0]);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
Teks Nada Keluaran
Berikut ini adalah listing program untuk look up table dan untuk
menampilkan hasil teks nada keluaran.
Gambar 4.11. Sintaks Program untuk Teks Nada Keluaran
Berdasarkan sintaks program di atas ini, jika frekuensi keluaran yang
dihasilkan saat melakukan tuning yang ditampilkan pada kotak edit 1
(Frekuensi (Hz)) lebih rendah dari nilai yang sudah setting sebagai frekuensi
referensi untuk melakukan look up table, maka di kotak edit 3 (Status) akan
% Cek kurang, pas, atau lebih (LUT)status = get(handles.popupmenu1,'value');if status == 1set(handles.edit2,'string','G');
if frek<98set(handles.edit3,'string','Kurang');
elseif frek==98set(handles.edit3,'string','Pas');
elseset(handles.edit3,'string','Lebih');
end
elseif status == 2set(handles.edit2,'string','D');
if frek<73set(handles.edit3,'string','Kurang');
elseif frek==73set(handles.edit3,'string','Pas');
elseset(handles.edit3,'string','Lebih');
end
elseif status == 3set(handles.edit2,'string','A');
if frek<55set(handles.edit3,'string','Kurang');
elseif frek==55set(handles.edit3,'string','Pas');
elseset(handles.edit3,'string','Lebih');
end
elseif status == 4set(handles.edit2,'string','E');
if frek<41set(handles.edit3,'string','Kurang');
elseif frek==41set(handles.edit3,'string','Pas');
elseset(handles.edit3,'string','Lebih');
endendend
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
menampilkan teks “Kurang” yang berarti proses tuning belum mencapai nada
standar, dengan hal yang sama, jika di kotak edit 3 (Status) menampilkan teks
“Pas” berarti proses tuning sudah mencapai nada standar, dengan hal yang
sama pula, jika di kotak edit 3 (Status) menampilkan teks “Lebih” maka
proses tuning sudah melebihi nada standar pada gitar bass. Di kotak edit 2
(NADA) akan menampilkan nada standar dari masing-masing senar yang
dipilih untuk melakukan tuning, jika user memilih senar pertama untuk
melakukan tuning, maka di kotak edit 2 akan menampilkan teks “G” yang
berarti nada standar dari senar pertama adalah nada G, dengan hal yang sama,
kotak edit 2 akan menampilkan juga nada standar pada senar kedua, senar
ketiga, dan senar keempat, jika user memilih untuk melakukan tuning.
Langkah-langkah untuk mendapatkan hasil keluarannya ditunjukkan pada
Gambar 3.14.
b. Pushbutton “CLEAR”
Untuk menjalankan pushbutton ini, maka diisi sintaks berikut:
Gambar 4.12. Sintaks Program untuk Pushbutton “CLEAR”
Pushbutton “CLEAR” ini berfungsi untuk membersihkan axes dan edit pada GUI,
jika senar gitar yang dilakukan tuning sudah mencapai nada standar dan ingin
melakukan lagi tuning yang baru pada senar yang lain.
axes(handles.axes1)plot(0)axes(handles.axes2)plot(0)axes(handles.axes3)plot(0)set(handles.edit1,'string','');set(handles.edit2,'string','');set(handles.edit3,'string','');clear allclc
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
c. Pushbutton “BERHENTI”
Untuk menjalankan pushbutton ini, maka diisi sintaks berikut:
Gambar 4.13. Sintaks Program untuk Pushbutton “BERHENTI”
Pushbutton “BERHENTI” ini berfungsi untuk menghentikan proses tuning.
Berdasarkan sintaks program yang di atas ini, dapat dilihat bahwa terdapat sintaks
global. Sintaks ini fungsinya untuk menghentikan proses looping yang terdapat
pada sistem ini. Karena di awal program menggunakan sintaks while untuk
melakukan looping pada sistem ini, jadi di akhir program ini harus menggunakan
sintaks global untuk menghentikan looping tersebut.
d. Popupmenu “Pilih Senar”
Popupmenu “Pilih Senar” ini, fungsi hanya untuk memilih senar berapakah yang
ingin dilakukan tuning. Sintaks pada popupmenu ini sudah tergabung pada program
look up table yang terdapat pada bagian pushbutton “MULAI” pada poin kedelapan
(Teks Nada Keluaran). Untuk menjalankan popupmenu ini, dengan cara mengisi
string pada popupmenu tersebut, caranya sebagai berikut:
Klik dua kali pada kotak popupmenu yang terdapat pada GUI.fig.
Gambar 4.14. Popupmenu di GUI.fig
Mengisi string pada popupmenu tersebut di Inspector: uicontrol.
Gambar 4.15. String Popupmenu
global hentihenti=1;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
4.3. Analisis Hasil Data Pengujian
Dalam pengujian program ini, seluruh panjang frame blocking yaitu 512, 256, 128,
64, 32, dan 16 akan diuji untuk mencari frekuensi keluaran yang dihasilkan oleh sistem,
selanjutnya hasil dari pengujian tersebut akan dibandingkan dengan frekuensi standar yang
ada di dalam sistem. Penulis mengambil data sebanyak sepuluh kali dari masing-masing
nada yang sudah tuned dari setiap panjang frame blocking.
Frekuensi standar yang digunakan dalam sistem ini, khususnya pada senar bass
kedua dan keempat sedikit berbeda dengan frekuensi standar bass yang tertera pada Tabel
2.1 dikarenakan ada keterbatasan resolusi FFT yang digunakan dalam sistem ini, yang hanya
bisa menghasilkan resolusi sebesar 1 Hertz.
Untuk menghitung frekuensi rata-rata dari sistem menggunakan persamaan (3.1),
menghitung akurasi dari hasil pengujian menggunakan persamaan (3.2), setelah itu akan
dihitung rata-rata akurasi (%) yang didapat dari seluruh data pengujian untuk mengetahui
pengaruh panjang frame blocking terhadap sistem.
1. Pengujian Sistem dengan Panjang Frame Blocking 512.
Perbandingan frekuensi yang dihasilkan oleh sistem dengan frekuensi standar.
Tabel 4.1. Hasil Pengujian Sistem dengan Panjang Frame Blocking 512
Senar
FrekuensiStandarSistem(Hz)
Frekuensi Sistem (Hz)Akurasi
(%)Pengujian ke Rata-
Rata1 2 3 4 5 6 7 8 9 10
Pertama 98 98 98 98 98 98 98 98 98 98 98 98 100Kedua 73 73 73 73 73 73 73 73 73 73 73 73 100Ketiga 55 55 55 55 55 55 55 55 55 55 55 55 100
Keempat 41 41 41 41 41 41 41 41 41 41 41 41 100Rata-rata Akurasi 100
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
2. Pengujian Sistem dengan Panjang Frame Blocking 256.
Perbandingan frekuensi yang dihasilkan oleh sistem dengan frekuensi standar.
Tabel 4.2. Hasil Pengujian Sistem dengan Panjang Frame Blocking 256
Senar
FrekuensiStandarSistem(Hz)
Frekuensi Sistem (Hz)Akurasi
(%)Pengujian ke Rata-
Rata1 2 3 4 5 6 7 8 9 10
Pertama 98 98 98 98 98 98 98 98 98 98 98 98 100Kedua 73 73 73 73 73 73 73 73 73 73 73 73 100Ketiga 55 55 55 55 55 55 55 55 55 55 55 55 100
Keempat 41 41 41 41 41 41 41 41 41 41 41 41 100Rata-rata Akurasi 100
3. Pengujian Sistem dengan Panjang Frame Blocking 128.
Perbandingan frekuensi yang dihasilkan oleh sistem dengan frekuensi standar.
Tabel 4.3. Hasil Pengujian Sistem dengan Panjang Frame Blocking 128
Senar
FrekuensiStandarSistem(Hz)
Frekuensi Sistem (Hz)Akurasi
(%)Pengujian ke Rata-
Rata1 2 3 4 5 6 7 8 9 10
Pertama 98 98 98 98 98 98 98 98 98 98 98 98 100Kedua 73 73 73 73 73 73 73 73 73 73 73 73 100Ketiga 55 55 55 55 55 55 55 55 55 55 55 55 100
Keempat 41 41 41 41 41 41 41 41 41 41 41 41 100Rata-rata Akurasi 100
4. Pengujian Sistem dengan Panjang Frame Blocking 64.
Perbandingan frekuensi yang dihasilkan oleh sistem dengan frekuensi standar.
Tabel 4.4. Hasil Pengujian Sistem dengan Panjang Frame Blocking 64
Senar
FrekuensiStandarSistem(Hz)
Frekuensi Sistem (Hz)Akurasi
(%)Pengujian ke Rata-
Rata1 2 3 4 5 6 7 8 9 10
Pertama 98 98 98 98 98 98 98 98 98 98 98 98 100Kedua 73 73 73 73 73 73 73 73 73 73 73 73 100Ketiga 55 55 55 55 55 55 55 55 55 55 55 55 100
Keempat 41 41 41 41 41 41 41 41 41 41 41 41 100Rata-rata Akurasi 100
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
5. Pengujian Sistem dengan Panjang Frame Blocking 32.
Perbandingan frekuensi yang dihasilkan oleh sistem dengan frekuensi standar.
Tabel 4.5. Hasil Pengujian Sistem dengan Panjang Frame Blocking 32
Senar
FrekuensiStandarSistem(Hz)
Frekuensi Sistem (Hz)Akurasi
(%)Pengujian ke Rata-
Rata1 2 3 4 5 6 7 8 9 10
Pertama 98 98 98 98 98 98 98 98 98 98 98 98 100Kedua 73 73 73 73 73 73 73 73 73 73 73 73 100Ketiga 55 55 55 55 55 55 55 55 55 55 55 55 100
Keempat 41 41 41 41 41 41 41 41 41 41 41 41 100Rata-rata Akurasi 100
6. Pengujian Sistem dengan Panjang Frame Blocking 16.
Perbandingan frekuensi yang dihasilkan oleh sistem dengan frekuensi standar.
Tabel 4.6. Hasil Pengujian Sistem dengan Panjang Frame Blocking 16
Senar
FrekuensiStandarSistem(Hz)
Frekuensi Sistem (Hz)Akurasi
(%)Pengujian ke Rata-
Rata1 2 3 4 5 6 7 8 9 10
Pertama 98 97 98 99 98 97 97 98 97 97 97 97,5 99,49Kedua 73 71 35 46 43 47 35 45 44 45 45 45,6 39,91Ketiga 55 33 34 55 32 35 32 80 67 71 32 47,1 83,23
Keempat 41 41 45 40 44 42 39 39 41 43 39 41,3 99,27Rata-rata Akurasi 80,48
Tabel-tabel data hasil percobaan sudah mendapatkan persentase tingkat pengenalan
sistem dari masing-masing senar gitar bass melalui perhitungan untuk seluruh panjang frame
blocking yang dipakai. Berikut ini adalah tabel persentase akurasi yang didapat dari seluruh
panjang frame blocking dan dibuat juga grafik untuk memperlihatkan lebih jelas pengaruh
panjang frame blocking terhadap tingkat pengenalan sistem.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
50
60
70
80
90
100
16 32 64 128 256 512
Tin
gkat
Pen
gena
lan
(%)
Panjang Frame Blocking (Titik)
Pengaruh Panjang Frame BlockingTerhadap Tingkat Pengenalan Sistem
Tabel 4.7. Persentase Akurasi yang didapat dari Seluruh Panjang Frame Blocking
Panjang Frame Blocking Tingkat Pengenalan (%)
512 100
256 100
128 100
64 100
32 100
16 80,48
Gambar 4.16. Grafik Pengaruh Panjang Frame Blocking
Terhadap Tingkat Pengenalan Sistem
Dari Tabel 4.7 dan grafik yang di Gambar 4.16, dilihat bahwa tingkat pengenalan
yang mencapai 100% yaitu dari panjang frame blocking 512 sampai pada panjang frame
blocking 32. Pada panjang frame blocking 16 tingkat pengenalan sistem menurun sampai
80,48%. Hal tersebut terjadi karena adanya keterbatasan dari resolusi frekuensi.
Resolusi frekuensi berkaitan dengan penampakan detail sinyal dalam ranah
frekuensi. Jika resolusi frekuensi makin kecil, maka sinyal akan tampak makin detail.
Sebaliknya, jika resolusi frekuensi makin besar, sinyal akan tampak kurang detail.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
Frekuensi pencuplikan yang digunakan dalam sistem ini sebesar 512 Hertz dan panjang FFT
yang digunakan dalam sistem ini bergantung pada panjang frame blocking. Pada penelitian
ini dievaluasi panjang frame blocking 512, 256, 128, 64, 32, dan 16. Berikut ini adalah
perhitungan untuk mengetahui resolusi frekuensi FFT pada seluruh panjang frame blocking
yang digunakan dalam sistem ini berdasarkan persamaan (2.6).
1. Panjang Frame Blocking 512∆ = = 512512 = 12. Panjang Frame Blocking 256∆ = = 512256 = 23. Panjang Frame Blocking 128∆ = = 512128 = 44. Panjang Frame Blocking 64∆ = = 51264 = 85. Panjang Frame Blocking 32∆ = = 51232 = 166. Panjang Frame Blocking 16∆ = = 51216 = 32
Tabel 4.8. Hasil Perhitungan Resolusi pada Seluruh Panjang Frame Blocking
Panjang Frame Blocking Resolusi (Hz)
512 1
256 2
128 4
64 8
32 16
16 32
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
Berdasarkan hasil perhitungan yang ada di Tabel 4.8, terlihat bahwa resolusi
frekuensi yang dihasilkan oleh panjang frame blocking 16 lebih besar dibandingkan dengan
panjang frame blocking yang lain. Resolusi 1 Hertz berarti sistem ini akan mendeteksi
perubahan frekuensi setiap 1 Hertz dan jika resolusinya sebesar 32 Hertz, maka sistem ini
akan mendeteksi perubahan frekuensi setiap 32 Hertz.
Resolusi frekuensi berkaitan dengan penampakan detail sinyal dalam ranah
frekuensi, jadi resolusi frekuensi yang ada pada panjang frame blocking 16 membuat sinyal
tampak tidak detail dalam ranah frekuensi, sehingga pada data hasil pengujian panjang frame
blocking 16 menghasilkan frekuensi yang tidak sesuai dengan frekuensi standar sistem yang
ada.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Berdasarkan penelitian yang telah dilakukan, dimulai dari tahap perancangan
sistem, percobaan dan pengujian sistem, serta pembahasan, maka dapat disimpulkan sebagai
berikut:
1. Sistem pada stem gitar bass sudah dapat berjalan sesuai dengan perancangan yang
dapat menampilkan plot hasil frame blocking, hasil FFT, hasil HPS, dan tampilan
teks nada, status, serta frekuensi.
2. Berdasarkan pengujian secara real time yang telah dilakukan, dengan panjang
frame blocking 16 mendapatkan tingkat pengenalan sebesar 80,48% dan pada
panjang frame blocking 32 sampai panjang frame blocking 512 mampu
mendapatkan tingkat pengenalan maksimal sebesar 100%.
5.2. Saran
Dengan dibuatnya software stem gitar bass menggunakan harmonic product
spectrum ini, saran yang diharapkan dapat membantu pengembangan sistem ini adalah
sebagai berikut:
1. Mencoba menggunakan metode yang berbeda sehingga dapat dibandingkan tingkat
pengenalan frekuensinya.
2. Pengembangan sistem dengan menggunakan metode yang bisa menghasilkan
resolusi frekuensi yang lebih kecil dari 1 Hertz.
3. Untuk pengembangannya, dapat juga dengan membuat hardware stem gitar bass.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
DAFTAR PUSTAKA
[1] Sandiko, T.B., 2009, Apresiasi Musik Tradisi Melayu di Sumatera Utara, Tugas
Akhir, Jurusan Sendratasik, Program Studi Seni Musik, Universitas Negeri Medan,
http://musiktopan.blogspot.co.id/ diakses tanggal 10 September 2016.
[2] Munthoriq, I., 2014, Mengenal Alat Musik Gitar Bass dan Bagian-Bagiannya,
https://klinikmusik.wordpress.com/2014/11/18/mengenal-alat-musik-gitar-bass-
dan-bagian-bagiannya/ diakses tanggal 12 September 2016.
[3] Dianputra, R., Puspitaningrum, D., Ernawati, 2014, Implementasi Algoritma Fast
Fourier Transform untuk Pengolahan Sinyal Digital pada Tuning Gitar dengan
Open String, Jurnal Teknologi Informasi, vol.10, no.2, hal 240-248.
[4] Darknick, 2014, Mengenal Jenis Kayu Yang Digunakan Untuk Membuat Gitar,
http://www.yowisband.com/mengenal-jenis-kayu-yang-digunakan-untuk-
membuat-gitar/ diakses tanggal 21 September 2016.
[5] Robinson A., 2001, Seventh String Software,
https://www.seventhstring.com/resources/notefrequencies.html/ diakses tanggal
26 September 2016.
[6] -----, 2006, USB Guitar Link Cable User Manual, User Manual, Behringer.
[7] Sklar, B., 2001, Digital Communications Fundamentals and Applications, 2nd ed,
Communications Engineering Services, Tarzana, California and University of
California, Los Angeles.
[8] Hakim, L., 2012, Analisa Suara Serak Berbasis Transformasi Wavelet dan
Algoritma Jaringan Syaraf Tiruan, Tugas Akhir, Jurusan Teknik Elektro, Institut
Teknologi Sepuluh Nopember, Surabaya.
[9] Bhaskoro, S.B., Ariani, I., Alamsyah, A.A., 2014, Transformasi Pitch Suara
Manusia Menggunakan Metode PSOLA, Jurnal ELKOMIKA Institut Teknologi
Nasional Bandung, vol.2, no.2, hal 138.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
[10] Lukman, A., 2009, Identifikasi Frekuensi Suara Nyamuk Betina Menggunakan
Algoritma Fast Fourier Transsform,
http://jurnal.stmikelrahma.ac.id/assets/file/Achmad%20Lukman_stmikelrahma.pd
f, diakses 6 Januari 2017.
[11] Kubota, N., Liu, K.K.H., Obo, T., 2016, Intelligent Robotics and Applications, Part
II, Tokyo, Japan.
[12] Radiana, S.G., __, Discrete Fourier Transform Menjadi Fast Fourier Transform,
http://te.ugm.ac.id/~risanuri/isyaratsystem/paperDFTkeFFT.pdf diakses tanggal 3
Januari 2017.
[13] Arfina, S.R., 2016, Simulasi Feedback pada Permainan Biola untuk Pemula
Menggunakan Metode HPS, Prodi S1 Teknik Telekomunikasi, Fakultas Teknik
Elektro, Universitas Telkom Bandung.
[14] Noll, A.M., 1969, Pitch Determination of Human Speech by the Harmonic Product
Spectrum, the Harmonic Sum Spectrum, and a Maximum Likelihood Estimate,
Symposium on Computer Processing in Communications Polytechnic Institute of
Brooklyn.
[15] Sumarno, L., Wihadi, R.B.D., Tjendro, Widyastuti, W., 2015, Pengenalan
Kerusakan Mekanis Pompa Air Berbasis Sinyal Getaran pada Ranah Frekuensi,
JNTETI, vol.4, no.2.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-1
0 1000 2000 3000 4000 5000 6000-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
Data Tercuplik
Ampli
tudo
0 1000 2000 3000 4000 5000 6000-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Data Tercuplik
Ampli
tudo
LAMPIRAN
Proses Menyeluruh yang dicerminkan dalam Bentuk Flowchart:
START
Masukan SuaraGitar Bass
Proses Perekaman
Normalisasi
I
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-2
0 100 200 300 400 500 600-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Data Tercuplik
Ampl
itudo
0 100 200 300 400 500 600-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
Data Tercuplik
Ampl
itudo
0 50 100 150 200 250 3000
5
10
15
20
25
30
35
40
45
50
Frekuensi (Hz)
Ampl
itudo
Frame Blocking
Windowing
FFT dan SpektrumFrekuensi
I
J
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-3
0 50 100 150 200 250 3000
500
1000
1500
Frekuensi (Hz)
Ampl
itudo
Harmonic ProductSpectrum
Penentuan Frekuensi
Look Up Table
Keluaran Teks
END
J
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-4
Sintaks Program Real Time:
GUI (tunerGUI.m):
function varargout = tunerGUI(varargin)% TUNERGUI M-file for tunerGUI.fig% TUNERGUI, by itself, creates a new TUNERGUI or raises the existing% singleton*.%% H = TUNERGUI returns the handle to a new TUNERGUI or the handle to% the existing singleton*.%% TUNERGUI('CALLBACK',hObject,eventData,handles,...) calls the local% function named CALLBACK in TUNERGUI.M with the given inputarguments.%% TUNERGUI('Property','Value',...) creates a new TUNERGUI or raisesthe% existing singleton*. Starting from the left, property value pairsare% applied to the GUI before tunerGUI_OpeningFcn gets called. An% unrecognized property name or invalid value makes propertyapplication% stop. All inputs are passed to tunerGUI_OpeningFcn via varargin.%% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows onlyone% instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help tunerGUI
% Last Modified by GUIDE v2.5 14-Mar-2017 11:24:38
% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn', @tunerGUI_OpeningFcn, ...'gui_OutputFcn', @tunerGUI_OutputFcn, ...'gui_LayoutFcn', [] , ...'gui_Callback', []);
if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});
end
if nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
elsegui_mainfcn(gui_State, varargin{:});
end% End initialization code - DO NOT EDIT
% --- Executes just before tunerGUI is made visible.function tunerGUI_OpeningFcn(hObject, ~, handles, varargin)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-5
% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to tunerGUI (see VARARGIN)
% Choose default command line output for tunerGUIhandles.output = hObject;
% Update handles structureguidata(hObject, handles);
% UIWAIT makes tunerGUI wait for user response (see UIRESUME)% uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line.function varargout = tunerGUI_OutputFcn(~, ~, handles)% varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structurevarargout{1} = handles.output;
% --- Executes during object creation, after setting all properties.function popupmenu1_CreateFcn(hObject, evendata, handles)% hObject handle to popupmenu1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcnscalled
% Hint: popupmenu controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');end
function edit1_Callback(~, ~, ~)% hObject handle to edit1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit1 as text% str2double(get(hObject,'String')) returns contents of edit1 as adouble
% --- Executes during object creation, after setting all properties.function edit1_CreateFcn(hObject, ~, ~)% hObject handle to edit1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-6
% handles empty - handles not created until after all CreateFcnscalled
% Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');end
function edit2_Callback(~, ~, ~)% hObject handle to edit2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit2 as text% str2double(get(hObject,'String')) returns contents of edit2 as adouble
% --- Executes during object creation, after setting all properties.function edit2_CreateFcn(hObject, ~, ~)% hObject handle to edit2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcnscalled
% Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');end
function edit3_Callback(~, ~, ~)% hObject handle to edit3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit3 as text% str2double(get(hObject,'String')) returns contents of edit3 as adouble
% --- Executes during object creation, after setting all properties.function edit3_CreateFcn(hObject, ~, ~)% hObject handle to edit3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcnscalled
% Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-7
if ispc && isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');end
% --- Executes during object creation, after setting all properties.function text1_CreateFcn(~, ~, ~)% hObject handle to text1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcnscalled
% --- Executes during object creation, after setting all properties.function text2_CreateFcn(~, ~, ~)% hObject handle to text2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcnscalled
% --- Executes during object creation, after setting all properties.function text3_CreateFcn(~, ~, ~)% hObject handle to text3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcnscalled
% --- Executes during object creation, after setting all properties.function text4_CreateFcn(~, ~, ~)% hObject handle to text4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcnscalled
% --- Executes during object creation, after setting all properties.function text5_CreateFcn(~, ~, ~)% hObject handle to text5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcnscalled
% --- Executes during object creation, after setting all properties.function text6_CreateFcn(~, ~, ~)% hObject handle to text6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcnscalled
% --- Executes during object creation, after setting all properties.function text7_CreateFcn(~, ~, ~)% hObject handle to text7 (see GCBO)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-8
% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcnscalled
% --- Executes on selection change in popupmenu1.function popupmenu1_Callback(hObject, eventdata, handles)% hObject handle to popupmenu1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)
% Hints: contents = cellstr(get(hObject,'String')) returns popupmenu1contents as cell array% contents{get(hObject,'Value')} returns selected item frompopupmenu1
%========================================================================%========================================================================% --- Executes on button press in pushbutton1.function pushbutton1_Callback(hObject, ~, handles)% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global hentihenti=0;while henti==0
disp('tuning process..')pause(1);
% Variabel Penelitianframe=512; % Panjang Frame Blockingfs=512; % Frekuensi Samplinghfs=fs/2;
sg=wavrecord(frame,fs,'double'); % Sinyal Gitar (untuk masukan wav)
% Normalisasiy1=sg/max(abs(sg));
% Frame Blockingx0=y1(1:frame);axes(handles.axes1)plot(x0)xlabel('Data Tercuplik','Fontsize',8)ylabel('Amplitudo','Fontsize',8)
% Windowingh=hamming(frame);y2=x0.*h;
% FFTy3=abs(fft(y2,fs));y3=y3(1:hfs);axes(handles.axes2)plot(y3)xlabel('Frekuensi (Hz)','Fontsize',8)ylabel('Amplitudo','Fontsize',8)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-9
% HPSy4=y3(1:2:hfs); % Downsamplingy4(hfs)=0; % Zero Paddingy5=y3.*y4; % Perkalian Elemenaxes(handles.axes3)plot(y5)xlabel('Frekuensi (Hz)','Fontsize',8)ylabel('Amplitudo','Fontsize',8)
% Frekuensi Keluaranfrek=find(y5==max(y5))-1;set(handles.edit1,'string',frek);set(hObject,'Backgroundcolor',[1 1 0]);
% Cek kurang, pas, atau lebih (LUT)status = get(handles.popupmenu1,'value');if status == 1set(handles.edit2,'string','G');
if frek<98set(handles.edit3,'string','Kurang');
elseif frek==98set(handles.edit3,'string','Pas');
elseset(handles.edit3,'string','Lebih');
end
elseif status == 2set(handles.edit2,'string','D');
if frek<73set(handles.edit3,'string','Kurang');
elseif frek==73set(handles.edit3,'string','Pas');
elseset(handles.edit3,'string','Lebih');
end
elseif status == 3set(handles.edit2,'string','A');
if frek<55set(handles.edit3,'string','Kurang');
elseif frek==55set(handles.edit3,'string','Pas');
elseset(handles.edit3,'string','Lebih');
end
elseif status == 4set(handles.edit2,'string','E');
if frek<41set(handles.edit3,'string','Kurang');
elseif frek==41set(handles.edit3,'string','Pas');
elseset(handles.edit3,'string','Lebih');
endendend
% --- Executes on button press in pushbutton7.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-10
function pushbutton7_Callback(hObject, eventdata, handles)% hObject handle to pushbutton7 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)axes(handles.axes1)plot(0)axes(handles.axes2)plot(0)axes(handles.axes3)plot(0)set(handles.edit1,'string','');set(handles.edit2,'string','');set(handles.edit3,'string','');clear allclc
function berhenti_Callback(~, ~, ~)% hObject handle to berhenti (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global hentihenti=1;%========================================================================%========================================================================
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI