Anda di halaman 1dari 16

MODUL

1
PENGGUNAAN VISUAL DSP++5.1.2
Enggar Yudhoyoso (118130078)
Asisten : Tri Wijaya (13117033)
Tanggal Percobaan : 26/04/2021
EL3031_A-3_Praktikum_Pengolahan_Sinyal_Digital
Laboratorium Teknik Elektro
Institut Teknologi Sumatera

Abstrak- Pada Praktikum Modul ketiga Praktikum


Pengolahan Sinyal Digital dengan judul Penggunaan Visual II. LANDASAN TEORI
DSP++ bertujuan agar praktikan dapat mempelajari dan
memahami dari berbagai fungsi – fungsi tool – tool yang A. VISUAL DSP++
terdapat dalam VisualDSP++ dan juga mampu melakukan
debugging dengan VisualDSP++. Dalam praktikum kali ini, Untuk pemrograman Blackfin digunakan software VDSP++
praktikan akan menggunakan board yang tersedia di (VisualDSP++) versi 5.1.2. Perangkat lunak ini digunakan
laboratorium yaitu Board Blackfin BF561EZ, software untuk mengembangkan proyek berisi source code yang
VisualDSP dan juga Audacity yang bertujuan untuk nantinya akan dimasukkan ke dalam prosesor Blackfin dalam
menganalisa sinyal pada domain waktu dan frekuensi yang bentuk object code. VDSP++ ini mampu untuk men-debug,
digunakan sebagai alat pendukung praktikum. Para monitoring memori pada prosesor DSP serta mampu
praktikan akan melakukan percobaan yaitu meneruskan melakukan analisis secara real time.
sinyal masukan dari input sebagai keluaran pada port Terdapat fase dalam penggunaan VisualDSP++ yang
output, meneruskan sinyal keluaran sebagai hasil ditunjukkan oleh blok diagram pada gambar berikut :
amplifikasi sinyal masukan, dan juga Percobaan FIR
dengan Circular Buffer sederhana. Hasil dari pengamatan
percobaan ini akan menampilkan suatu spektrum sinyal
dari input bunyi dan sinyal output amplifikasi.

Kata Kunci : Audacity, Visual DSP++, FIR


Beberapa tool penting pada VisualDSP++ :
I. PENDAHULUAN 1.View
a. View nilai variabel pada kode:
Dalam kemajuan teknologi, Perkembangan teknologi di Pada VisualDSP++ ini terdapat tool yang dapat
masa sekarang akan terus mengalami perubahan dari waktu ke memperlihatkan nilai-nilai variabel pada kode. Prosedurnya
waktu. Dari perkembangan Digital Signal Processing (DSP)
adalah sebagai berikut:
saat ini semakin maju dikarenakan DSP sangat bermanfaat dan
• Pada Menu bar klik : View Debug Windows
banyak digunakan dalam berbagai hal, untuk bidang kesehatan,
Expressions.
navigasi, komunikasi, dan lain-lain. Sinyal digital
Lalu Muncul :
dintranformasikan agar dapat dibuat dalam kebutuhan manusia
sehari-hari, salah satu manfaat dari transformasi sinyal digital
adalah di bidang komunikasi, yaitu dapat mengkompresi data.
Adapun tujuan dari dilakukannya praktikum modul 3 ini adalah
sebagai berikut :
a. Praktikan mengerti dan mampu menjelaskan fungsi-
fungsi tool-tool yang terdapat VisualDSP++.
b. Praktikan mampu melakukan debugging dengan
VisualDSP++.

• Klik pada bagian yang kosong pada kolom Name lalu


masukan nama variabel yang hendak dicari namanya.
Setelah itu, tipe, ukuran dan nilai dari variabel tersebut
akan muncul pada kolom lainnya. Sebagai catatan, III. METODOLOGI
nilai tidak dapat dilihat apabila program sedang dalam
mode Run. A. Alat dan Bahan

b. View grafik waktu dan frekuensi: 1. Laptop / Desktop

Pada VisualDSP++ ini terdapat tool yang dapat 2. Aplikasi VirtualDSP++


memperlihatkan grafik waktu dan frekuensi dari sinyal-sinyal.
Prosedur:
B. Langkah Kerja
• Pada Menu bar klik : View Debug Windows Plot
New... Pastikan komputer yang akan
Lalu muncul : digunakan berfungsi dengan normal
dan tidak ada masalah apapun

Software VirtualDSP++ sudah


terinstal dalam komputer.

1. Percobaan meneruskan sinyal masukan dari input sebagai


keluaran pada port output

• Pilih Type grafik yang hendak ditampilkan


• Berikan judul dan nama yang sesuai untuk grafik yang
hendak ditampilkan.
• Pilih variabel yang hendak ditinjau nilainya dengan
menekan tombol Browse...
• Masukan nilai Count lebih dari 0 dan pilih tipe Data:
yang bersesuaian
• Tekan tombol Add pada sebelah kiri, lalu tekan tombol
OK.

B. AUDACITY

Audacity adalah aplikasi pemberi efek suara yang terbaik yang


pernah ada di dunia sumber terbuka (open source). Aplikasi ini
dibangun dengan pustaka WxWidgets sehingga dapat berjalan
pada berbagai sistem operasi.
Dengan Audacity, pengguna bisa mengoreksi berkas suara
tertentu, atau sekadar menambahkan berbagai efek yang
disediakan. Selain itu, pengguna juga dapat berkreasi dengan
suara yang dimiliki sendiri.
Pada praktikum ini, software audacity digunakan untuk
melihat bentuk sinyal input dan output serta meliha respons
frekuensinya
Dihubungkan kabel plug dari sinyal masukan pada Lakukan langkah langkah Sama seperti
percobaan Sebelumnya untuk langkah
jack dari board BF551EZ pada kanal 0. Selanjutnya 1-2,
dihubungkan ujung lain dari kabel tersebut pada
speaker

Buka proyek yang


bernama Talkthrough
Buka proyek yang bernama Talkthrough dari dari
kumpulan contoh program kumpulan contoh
program.

Untuk melihat source code dari proyek ini,


buka Process_data.c pada bagian CoreA
Buka Process_data.c pada bagian CoreA
menuju SourceFiles (dengan jalan klik tanda
SourceFiles
(+) pada tulisan CoreA dan Source Files) dari
Project window. (dengan jalan klik tanda (+) pada tulisan
CoreA dan
Source Files) dari Project window.

Pada VisualDSP, proses Compile, Build dan Load


dapat dilakukan bersamaan. Pada menu bar
dilakukan CoreA
dengan cara menekan tombol F7 pada keyboard. SourceFiles
Amati terdapat code tertulis sebagai
berikut:
iChannel0LeftOut = iChannel0LeftIn:
iChannel0RightOut = iChannel0RightIn;
Untuk menjalankan program yang telah di-build, iChannel1LeftOut = iChannel1LeftIn;
pada menu bar klik Debug menuju Run. Atau dapat iChannel1RightOut = iChannel1RightIn;
pula dilakukan dengan cara menekan tombol F5 pada
keyboard.

Diubah baris pertama dan kedua menjadi


Lakukan pengamatan pada sinyal seperti berikut : iChannel0LeftOut =
masukan dan keluaran. 2*iChannel0LeftIn; iChannel0RightOut =
0.25*iChannel0RightIn;

2. Percobaan meneruskan sinyal keluaran sebagai hasil


amplifikasi sinyal masukan.
Ketik F7 Pada Keyboard, setelah
itu tekan tombol F5 pada
keyboard

Dilakukan pengamatan pada sinyal masukan dan keluaran. Dimati


perubahan yang terjadi antara sinyal masukan dan keluaran baik pada
kanal 0 kanan dan kiri
Lakukan langkah - langkah Sama Seperti percobaan sebelumnya dari
langkah 1 dan 2
3. Percobaan FIR dengan Circular Buffer sederhana

Buka proyek yang bernama Talkthrough dari


kumpulan contoh program.

Buka Process_data.c pada bagian CoreA SourceFiles


(dengan jalan klik tanda (+) pada tulisan CoreA dan
Source Files) dari Project window

Ketik kode inisialisasi seperti pada modul. Lalu pada bagian void
Process_Data(void), masukan kode-kode yang ada pada modul.

Pada menu bar di klik Project -> Build Project. Untuk menjalanan
program yang telah di-build, pada menu bar di klik Debug -> run.

Dilakukan pengamatan pada sinyal


masukan dan keluaran
IV. HASIL DAN ANALISIS Dari bentuk sinyal input diatas, dapat terlihat pada gambar 1
dalam melihat sinyal input domain waktu terlihat mulainya
A. Percobaan meneruskan sinyal masukan dari input sebagai gelombang terdapat pada detik 1.00 dan dilakukan selama 10
keluaran pada port output detik. Ketika keluaran sinyal dilakukan setelah 10 detik, maka
akan Kembali seperti semula. Ketika pada gambar kedua yaitu
Pada percobaan pertama yaitu meneruskan sinyal masukan dari spektrum sinyal input frekuensi dapat terlihat bahwa Port Kiri
input sebagai keluaran pada port output yaitu melihat sinyal lebih besar nilai frekuensi dibandingkan plot kanan, ketika
keluaran dan sinyal masukan yang didapatkan pada percobaan sinyal maksimal dari bentuk spektrum sinyal input frekuensi
kali ini dengan menggunakan board BF561EZ dan setelah berada dititik terendah yaitu sekitar -90dB namun semakin
merangkai para praktikan akan meneruskan sinyal keluaran kekiri akan semakin menaik sehingga mencapai nilai -29dB.
audio tanpa diubah apapun. Dengan bentuk keluaran sinyal Hasil yang didapatkan dikarenakan pada kode yang dibuat
adalah sebagai berikut: hanya meneruskan sinyal input langsung menjadi sinyal output
tanpa adanya perubahan apapun dan pada aplikasi
VirtualDSP++ sesuai dengan perintah yang ada di modul.

iChannel0LeftOut = iChannel0LeftIn;

iChannel0RightOut=iChannel0RightIn;
iChannel1LeftOut=iChannel1LeftIn;
iChannel1RightOut= iChannel1RightIn;

Keempat baris kode diatas menunjukkan bahwa setiap sinyal


Gambar 1 sinyal input domain waktu masukan diteruskan begitu saja sebagai sinyal keluaran. Baris
pertama menunjukkan bahwa kanal 0 kiri masukan diteruskan
Bentuk keluaran sinyal pada gambar 1 didapatkan pada aplikasi pada kanal 0 kiri keluaran. Baris kedua menunjukkan bahwa
Audacity dari laboratorium. kanal 0 kanan diteruskan pada kanal 0 kanan keluaran, dan
seterusnya. Pada nilai perintah diatas terlihat bahwa channel di
0 terdapat pada channel input dan output. Ketika perintah
channel 1 terlihat pada channel masukan maka nilai
keluarannya juga sama. Percobaan satu dibuat untuk melihat
sinyal keluaran pada port output.

B. Percobaan meneruskan sinyal keluaran sebagai hasil


amplifikasi sinyal masukan.

Pada percobaan kedua yaitu meneruskan sinyal keluaran


sebagai hasil amplifikasi sinyal masukan. Para praktikan akan
melakukan percobaan yang hampir sama dengan percobaan
pertama dengan sedikit modifikasi terletak pada nilai amplitude
yang sudah tersedia pada modul. Untuk percobaan ini, berikut
hasil gambar grafik nilai output yang diperoleh dari praktikum
kali ini:

Gambar 2 spektrum sinyal input domain frekuensi

Pada percobaan pertama yaitu mengamati perbedaan dari sinyal


yaitu praktikan diminta untuk melakukan percobaan dengan
menggunakan aplikasi VirtualDSP++ lalu memasukan plug ke
kabel jack yang ada pada board. Pada gambar diatas, praktikan
menggunakan sampling sinyal input dari music “Indonesia
Raya” yang dilakukan melalui device dengan alat Board
BF561EZ. Gambar 3 sinyal input domain waktu
iChannel0LeftOut= 2*iChannel0LeftIn;
Gambar diatas merupakan bentuk keluaran sinyal pada gambar iChannel0RightOut=0.25*iChannel0Righ
1 didapatkan pada aplikasi Audacity dari laboratorium. tIn;

Untuk percobaan kedua, perintah yang diminta tidak jauh


berbeda dengan percobaan pertama, dengan pergantian baris
pertama dan kedua yang diminta pada modul. Ketika terjadi
perubahan nilai yang diminta maka akan terjadi perubahan dari
bentuk keluaran sinyal yang didapatkan dimana sinyal speaker
yang terletak di kanan akan mengalami penambahan sekita
seperempat kali dari bentuk sinyal inputnya, kemudian untuk
nilai amplitude sinyal output speaker di kiri akan berubah sesuai
yang diminta menjadi 2 kali sinyal input.

C. Percobaan FIR dengan Circular Buffer sederhana

Pada percobaan ketiga yaitu percobaan FIR dengan Circular


Buffer Sederhana. Para praktikan akan melakukan percobaan
yang hampir sama dengan percobaan pertama dan kedua
dengan sedikit modifikasi yang sudah tersedia pada modul.
Untuk percobaan ini, berikut hasil gambar grafik nilai output
yang diperoleh dari praktikum kali ini:

Gambar 4 spektrum sinyal input domain frekuensi

Pada percobaan kedua yaitu meneruskan sinyal keluaran


sebagai hasil amplifikasi sinyal masukan yaitu para praktikan
akan diminta untuk melakukan percobaan dengan
menggunakan aplikasi VirtualDSP++ yang juga para praktikan
akan diminta untuk memasukan kabel-kabel plug ke kabel jack
yang ada pada board. Pada kedua gambar tersebut, praktikan
akan menggunakan sinyal sampling input dari music Gambar 5 sinyal input domain waktu
“Indonesia Raya” yang dilakukan melalui input input kabel
yang sudah dimasukan ke aplikasi audacity dengan alat Board
BF561EZ.
Dari bentuk sinyal input diatas, terlihat pada gambar ketiga
dalam melihat sinyal input domain waktu terlihat mulainya
gelombang terdapat pada detik 2.00 dan dilakukan selama 10
detik hingga 12.00. ketika setelah dimatikan musicnya maka
bentuk sinyal akan Kembali seperti semula. Pada gambar
keempat yaitu spektrum sinyal input domain frekuensi dapat
terlihat bahwa Port Kiri lebih besar nilai frekuensi
dibandingkan plot kanan, ketika sinyal maksimal dari bentuk
spektrum sinyal input frekuensi berada dititik terendah yaitu
sekitar -90dB namun semakin kekiri akan semakin menaik
sehingga mencapai nilai -29dB. Hasil yang didapatkan
dikarenakan pada kode yang dibuat hanya meneruskan sinyal
input langsung menjadi sinyal output tanpa adanya perubahan
apapun dan pada aplikasi VirtualDSP++ sesuai dengan perintah
yang ada di modul.
2.4663e+008, 2.3425e+008, 2.1099e+008,
1.7958e+008, 1.4354e+008, 1.0666e+008,
7.2381e+007, 4.3334e+007, 2.1061e+007,
5.9122e+006, -2.8071e+006, -6.5343e+006,
-7.0440e+006, -6.0388e+006, -4.8192e+006,
-4.0920e+006};
//////////////////////////////////////////////////////////
///
//----------------------------------------------------------------------
----//
// Function: Process_Data()
//
//
//
// Description: This function is called from inside the
SPORT0 ISR every //
// time a complete audio frame has been received. The new
//// input samples can be found in the variables
iChannel0LeftIn,//
// iChannel0RightIn, iChannel1LeftIn and iChannel1RightIn
//
// respectively. The processed data should be stored in //
// iChannel0LeftOut, iChannel0RightOut,
iChannel1LeftOut, //
// iChannel1RightOut, iChannel2LeftOut and
Gambar 6 spektrum sinyal input domain frekuensi
iChannel2RightOut //
// respectively.
Pada percobaan FIR dengan Circular Buffer Sederhana
//
masukan yaitu para praktikan akan diminta untuk melakukan //----------------------------------------------------------------------
percobaan dengan menggunakan aplikasi VirtualDSP++ yang ----//
juga para praktikan akan diminta untuk memasukan kabel-kabel void Process_Data(void)
plug ke kabel jack yang ada pada board. Percobaan kali ini {
dilakukan hampir sama dengan percobaan percobaan //iChannel0LeftOut =2*iChannel0LeftIn;
sebelumnya namun sedikit mengalami perbedaan diawal. //iChannel0RightOut =0.25*iChannel0RightIn;
Berdasarkan data yang didaptkan pada kedua gambar tersebut, //iChannel1LeftOut = iChannel1LeftIn;
output output yang didapatkan dari kedua sinyal tidak jauh //iChannel1RightOut = iChannel1RightIn;
berbeda dengan sinyal input. Hal ini terlihat pada gambar sinyal
//channel0
output pada domain waktu, keadaan awal nilai gambar sinyal //////////////////////////////////////////////////
output masih 0, ketika music dinyalakan, maka nilai gambar
//
sinyal terlihat seperti gelombang. Hal ini juga terlihat pada saat
//
music “Indonesia Raya” diputar, untuk gambar keenam yaitu //Left
spektrum sinyal terlihat bahwa pada freq 5000Hz mengalami //////////////////////////////////////////////////
kenaikan yang signifikan hingga -28dB di 43Hz ketika //
spectrum mulai menurun. //
#include "Talkthrough.h" //Buffering input
#define BUFFERLENGTH 32 bufferLeft[i] = iChannel1LeftIn;
int //convolution with circular buffer
bufferLeft[BUFFERLENGTH],bufferRight[BUFFERLEN tempLeft=0;
GTH]={0,0,0}; for (j = 0; j < BUFFERLENGTH; j++){
int tempLeft, tempRight = 0; tempLeft += (filter[j] >> 16) * (bufferLeft[(i + j)
int i,j=0; % BUFFERLENGTH] >> 15);
/////////////////////////////////////////////////// }
/// //Output
//Filter Coefficients (from MATLAB): iChannel1LeftOut = tempLeft;
int filter[BUFFERLENGTH]= { -4.0920e+006, // //Right
-4.8192e+006, -6.0388e+006, -7.0440e+006, //
-6.5343e+006, -2.8071e+006, 5.9122e+006, //Buffering input
2.1061e+007, 4.3334e+007, 7.2381e+007, bufferRight[i]= iChannel1RightIn;
1.0666e+008, 1.4354e+008, 1.7958e+008, //convolution with circular buffer
2.1099e+008, 2.3425e+008, 2.4663e+008, tempRight=0;
for (j = 0; j < BUFFERLENGTH; j++) [2] https://pradinipus.wordpress.com/2011/05/06/232/
{ [3] https://helloitsaph.wordpress.com/2018/04/23/apa-itu-
tempRight += (filter[j] >> 16) * (bufferRight[(i + j) audacity/
% BUFFERLENGTH] >> 15);
}
//Output
iChannel1RightOut=tempRight;
////////////////////////////////////////////////////////
//decreasing i (circular)
///////////////////////////////////////////////////////
//
i=(i+BUFFERLENGTH-1)%BUFFERLENGTH;
////////////////////////////////////////////////////////
//
//channel1
/////////////////////////////////////////////////////////
////////////////////////////////////////////////
//Left
//////////////////////////////////////////////////////
iChannel0LeftOut = iChannel0LeftIn;
//////////////////////////////////////////////////////
//right
//////////////////////////////////////////////////////
iChannel0RightOut = iChannel0RightIn;
}

Dari kode yang dibuat,terlihat perbedaan yang signifikan untuk


percobaan ketiga. Ketika umumnya proses pengolahan sinyal
masukan menjadi sinyal keluaran adalah melalui proses
pemfilteran yang dilakukan secara konvolutif. Grafik visual
percobaan 3 ini nilai nilai koefisien, yang mana nilai nilai audio
port kiri tersebut adalah sebagai titik untuk plot grafik, dan
menentukan panjang sinyal terekam. Dari grafik diatas,
Melakukan filter sinyal untuk sedikit memperbaiki sinyal
berakibat perubahan efek visual terdengar yang terekam.

V. SIMPULAN

1. Software VisualDSP++ digunakan untuk mengatur


development board dalam mengolah sinyal. Dengan
Software tersebut bisa direalisasikan beberapa skema
pemrosesan sinyal
2. Prinsip kerja DSP yaitu mengubah sinyal analog
menjadi sinyal diskrit oleh ADC (Analog to Digital
Converter) sebelum diolah dalam DSP. kemudian
output DSP dikonversikan lagi dalam bentuk analog
oleh DAC (Digital to Analog Converter).

VI. REFERENSI

[1] Laboratorium Teknik Elektro ITERA, Modul 3.


Penggunaan VirtualDSP++ PSD, Lampung Selatan:
ITERA, 2021.
Lampiran

Anda mungkin juga menyukai