Anda di halaman 1dari 12

Percobaan III

Penggunaan Visual DSP++


Diki Dirgiantara (13116041)
Asisten : Nicolas Jeremia (13115008)
Tanggal Percobaan : 06/10/2018
EL3104 Praktikum Pengolahan Sinyal Digital
Laboratorium Teknik Elektro
Institut Teknologi Sumatera

Abstrak—Berdasarkan praktikum yang telah dilakukan


mengenai penggunaan VDSP++. Penggunaan ini meliputi
pengertian dan penjelasan fungsi tool-tool dengan
diimplementasikan untuk pemfilteran suara. Pemfilteran ini
menggunakan bantuan source code yang diinputkan ke dalam
blackfin. Dalam pengimplementasiannya dapat menggunakan
software DSP++ dengan hasil keluaran dapat di dengarkan
langsung atau menggunakan bantuan adacity . B. VIEW
View nilai variabel pada kode:
Kata Kunci—audacity, DSP++, tool-tool, source code, filter. Visual DSP++ terdapat tool yang dapat menunjukan nilai-nilai
variabel pada kode. Prosedurnya adalah sebagai berikut:

I. PENDAHULUAN
View Debug Windows Expression
P ENGGUNAAN visual DSP++ 5.1.2 pada praktikum ini
memberikan pengertian dan penjelasan fungsi tool-tool
yang terdapat visual DSP++ dan mampu melakukan View grafik waktu dan frekuensi
debugging dengan visual DSP++. Pemograman DSP++ Visual DSP++ memiliki tool yang dapat memperlihatkan
menggunakan software VDSP++ versi 5.1.2. berdasarkan grafik waktu dan frekuensi dari sinyal-sinyal. Adapun
langkah pengimplementasiannya pemrogaman DSP++ prosedur untuk memperlihatkan grafik dan frekuensi sinyal
menginputkan source code ke dalam prosessor blackfin dalam tersebut seperti di bawah ini:
bentuk object code. Praktikan dapat mengubah dengan cepat
dan mudah antara editing, building, dan debugging pada saat Debug Windows
View Plot New
project development dan debugging yang diintegrasikan.

II. LANDASAN TEORETIS III. METODOLOGI

A. Pemograman Blackfin A. Alat dan Bahan


DSP++ adalah sebuah easy-to-install dan easy-to-use 1. 1 Unit Komputer
diintegrasikan dengan pengembangan software dan debugging 2. Software DSP++5.1.2
yang cukup efisien memanagemen project dari awal hingga
akhir dalam interface tunggal. B. Langkah Kerja
Pemrograman Blackfin digunakan software VDSP++
Percobaan Meneruskan Sinyal Keluaran Sebagai Hasil
(VisualDSP++) versi 5.1.2. Perangkat lunak ini digunakan
Amplifikasi Sinyal Masukan
untuk mengembangkan proyek berisi source code yang
nantinya akan dimasukkan ke dalam prosesor Blackfin dalam Hubungkan kabel
bentuk object code. VDSP++ ini mampu untuk men-debug, plug(male) dari sinyal
monitoring memori pada prosesor DSP serta mampu masukan pada
jack(female) dari board
melakukan analisis secara real time. Terdapat fase dalam BF561EZ pada kanal 0.
penggunaan VisualDSP++ yang ditunjukkan oleh blok
diagram pada gambar berikut :
Hubungkan kabel
plug(male) dari sinyal
keluaran pada
jack(female) dari board
BF561EZ juga pada
kanal 0, selanjutnya
Buka proyek yang
bernama Talkthrough
dari kumpulan contoh Buka proyek yang
program bernama Talkthrough
dari kumpulan contoh
program
Untuk melihat source
code dari proyek ini,
buka Process_data.c
pada bagian
CoreASourceFiles
(dengan jalan klik tanda Buka Process_data.c
(+) pada tulisan CoreA pada bagian CoreA
dan Source Files) dari
Project window

Amati terdapat code


Lakukan secara tertulis sebagai
bersamaan Visual DSP, berikut:
Proses compile, build iChannel0LeftOut =
dan load iChannel0LeftIn;
iChannel0RightOut =
iChannel0RightIn;
iChannel1LeftOut =
iChannel1LeftIn;
iChannel1RightOut =
Jalankan iChannel1RightIn;
progam yang
telah di-build

Ubah baris pertama


Lakukan pengamatan pada
dan kedua menjadi
sinyal masukan dan sinyal seperti berikut :
keluaran iChannel0LeftOut =
2*iChannel0LeftIn;
iChannel0RightOut =
0.25*iChannel0RightIn
;
Percobaan Masukan Sinyal Keluaran sebagai Hasil
Amplifikasi Sinyal Masukan

Tetap hubungkan kabel


plug(male) dari sinyal
masukan pada
jack(female) dari board Pada menu bar klik
BF561EZ pada kanal 0 Project  Build
serta kabel plug(male) Project
dari sinyal keluaran
pada jack(female) dari
board BF561EZ juga
pada kanal 0.
Hubungkan pula ujung
lain dari kabel tersebut
pada speaker.
Jalankan program
yang telah di buil
Jalankan program
yang telah di buil

Lakukan pengamatan sinyal masukan dan


keluaran
Pada menu bar klik
Project  Build
Percobaan FIR dengan circular Buffer sederhana Project

Tetap hubungkan
kabel plug(male) Ketik inisiasi source
dari sinyal masukan code yang telah
pada jack(female) disediakan
dari board BF561EZ
pada kanal 0 serta
kabel plug(male)
dari sinyal keluaran Lakukan pengamatan sinyal masukan dan
pada jack(female) keluaran
dari board BF561EZ
juga pada kanal 0.
Hubungkan pula
ujung lain dari kabel IV. HASIL DAN ANALISIS
tersebut pada
speaker.
A. Tugas I : Percobaan Meneruskan Sinyal Masukan Dari
Input Sebagai Keluaran Pada Port Output

Berdasarkan percobaan meneruskan sinyal masukan dari input


sebagai keluaran pada port output yang telah dilakukan,
praktikan melalukan perbedaan sinyal input dengan
Buka proyek yang
menggunakan blacktifin BF561EZ. Berikut source code yang
bernama Talkthrough digunakan pada percobaan ini:
dari kumpulan contoh
program

Buka Process_data.c
Figure 1 source code percobaan meneruskan dari input sebagai
keluaran

Dari source code yang telah diinputkan menggunakan blackfin


BF561EZ, maka diperoleh output sinyal:
Figure 3 source code percobaan meneruskan sinyal amplifikasi
keluaran sebagai hasil amplifikasi sinyal masukan

Dari source code di atas kemudian di-build dan debug  run


diperoleh bentuk keluaran pada audacity. Hasil keluaran
sebagai amplikasi sinyal masukan sebagai berikut:

Figure 2 sinyal akuistik dan analisis sinyal input yang diteruskan

Gambar di atas merupakan suara praktikan yang direkam


menggunakan headset kemudian diteruskan pada port output
melalui prosessor blackfin. Penggunaan proosessor ini harus
terlebih dahulu menginputkan source code dari DSP++ yang
telah diberikan. Pada saat proses data praktikan menambahkan
kode untuk meneruskan menjadi output. Adapun kode yang di Figure 4 sinyal akuistik dan analisis sinyal amplifikasi masukan
tambahkan sebagai berikut:
Percobaan ini menggunakan sampling suara praktikan sebagai
sinyal input selama ±7 detik. Berdasarkan fig.4 dapat
dianalisis bahwa terdapat perbedaan sinyal output dan sinyal
input yang dihasilkan. Sinyal input diperoleh dari percobaan
meneruskan sinyal masukan dari input sebagai keluaran pada
port output. Perbedaan tersebut diakibatkan oleh modifikasi
pada bagian source code. Modifikasi tersebut sebagai berikut:
Berdasarkan analisis yang diperoleh program tersebut akan
meneruskan sinyal input secara langsung menjadi sinyal
output tanpa ada perubahan. Hal ini terjadi karena penggunaan
channel 0 pada input dan output. Oleh karena itu, percobaan
ini telah dilakukan secara maksimal dengan audacity maupun
dengan indra pendengaran secara langsung.

Keempat baris kode di atas menunjukkan bahwa setiap


B. Tugas 2 : Percobaan Meneruskan Sinyal Keluaran sinyal masukan diteruskan begitu saja sebagai sinyal
Sebagai Hasil Amplifikasi Sinyal Masukkan. keluaran. Baris pertama menunjukkan bahwa kanal 0 kiri
masukan diteruskan pada kanal 0 kiri keluaran. Baris kedua
menunjukkan bahwa kanal 0 kanan diteruskan pada kanal 0
Berdasarkan percobaan meneruskan sinyal keluaran sebagai kanan keluaran, dan seterusnya.
hasil amplifikasi sinyal masukan, praktikan melakukan seperti yang telah dikatakan sebelumnya bahwa terdapat
mengamplifikasi sinyal masukan dengan mengubah-ubah modifikasi source code pada percobaan ini. Modifikasi
amplitude dari sinyal . Percobaan ini bertujuan untuk tersebut terletak pada baris pertama dan kedua source code di
memberikan gambaran mudah mengenai pengolahan- atas.
pengolahan sinyal secara sederhana yang mungkin dilakukan
dalam Blackfin BF561EZ. Source kode yang digunakan pada
percobaan ini adalah sebagai berikut:
Berdasarkan run source code fig. 7 diperoleh sinyal akuistik
Dengan adanya modifikasi source code di atas terjadi dan analisis sinyal dalam bentuk gafik. Adapun sinyal tersebut
perubahan sinyal output. Perubahan terjadi di speaker kanan seperti berikut:
dengan amplitude ¼ kali dari sinyal inputnya sedangkan
amplitude terkecil berada di speaker kiri dengan amplitude 2
kali sinyal input.
C. Tugas 3 : Percobaan FIR dengan Circular Buffer
Berdasarkan percobaan yang telah dilakukan modifikasi
terhadap amplitude sinyal masukan. Pengolahan tersebut
dianggap sebagai pengolahan sinyal yang sederhana. Namun
pada umumnya proses pengubahan sinyal masukan menjadi
sinyal keluaran adalah melalui proses pemfilteran secara
konvolutif. Percobaan yang telah dilakukan menggunakan
filter FIR dengan koefisiennya ditentukan secara
Figure 8 sinyal akuistik dan analisis sinyal pascafilterasi pada
sembarang. Dapat diperhatikan bahwa proses konvolusi yang
percobaan FIR dengan Circular Buffer
dilakukan adalah menggunakan circular buffer karena proses
pemfilteran harus dilakukan secara on-line. Berdasarkan analisis data di atas diperoleh bahwa sinyal
Percobaan ini menggunakan source code di bawah ini: output akan jelas terlihat berbeda dengan sinyal input. Hal ini
membuktikan telah terjadi pemfilteran FIR pada sinyal input.
Dari pembuktian yang telah dilakukan bahwasuara praktikan
yang diiinputkan terdengar lebih jernih dan dilihat pada fig.8
bahwa terlihat terpotong pada bagian bawah dibandingkan
fig.7. temuan ini mengindikasikan bahwa praktikan telah
mampu memfilter FIR.

Figure 5 source code prafilterasi pada percobaan FIR dengan


V. SIMPULAN
Circular Buffer
 VDSP++ mampu men-debug, memonitoring memori pada
Berdasarkan run source tersebut diperoleh sinyal akuistik dan prosessor dan dapat melakukan analisis realtime.
analisis sinyal dalam bentuk gafik.  Terdapat beberapa tahapan dalam penggunaan VDPS++
diantaranya: desain, code and build, debug, dan analisis.
 Pemfilteran FIR dengan circular buffer mampu memilah
suara asli dan noise.
 Pengolahan-pengolahan sinyal secara sederhana dapat
dilakukan dengan board blackfin BF561EZ.
 Pembuktian pemfilteran dapat menggunakan media
pendengaran langsung maupun dengan bantuan software
audacity.

REFERENSI

[1] J. G. Proaksis dan D. G. Monalakis, “Digital Signal Processing


Figure 6 sinyal akuistik dan analisis sinyal prafilterasi pada Principles, Algorithms, and Applications,” in textbook, 3nd ed., vol.
percobaan FIR dengan Circular Buffer 1, N e w j e r s e y : Prentice-Hall, 1997,
[2] Mervin T Hutabarat, Praktikum Pengolahan Sinyal Digital Laboratorium
Teknik Elektro, Institut Teknologi Sumatera, 2018.
[3] http://www.analog.com/en/design-center/processors-and-dsp/evaluation-
and-development-software/vdsp-bf-sh-ts.html diakses 10 Oktober 2018
pada pukul 11.37 WIB
[4] Ding Ji-feng, Xu Shuang*, Zhang Jun-xing and Yang Ya-ning (2015,
Sep) Filter Design Based on DSP Builder [online], Part B: The Open
Electrical & Electronic Engineering Journal, 9, 15-21. Available:
https://benthamopen.com/contents/pdf/TOEEJ/TOEEJ-9-15.pdf

Figure 7 source code pascafilterasi pada percobaan FIR dengan


Circular Buffer
Lampiran
1. Source code untuk tugas I
2. <?xml version="1.0" standalone="no" ?>
3. <!DOCTYPE project PUBLIC "-//audacityproject-1.3.0//DTD//EN"
"http://audacity.sourceforge.net/xml/audacityproject-1.3.0.dtd" >
4. <project xmlns="http://audacity.sourceforge.net/xml/"
projname="PEROCBAAN1_data" version="1.3.0" audacityversion="2.0.3"
sel0="4.1679818594" sel1=
5. "4.1679818594" vpos="160" h="0.0000000000" zoom="86.1328125000"
rate="44100.0">
6. <tags/>
7. <wavetrack name="Audio Track" channel="0" linked="1" mute="0" solo="0"
height="150" minimized="0" isSelected="0" rate="44100" gain="1.0" pan="0.0">
8. <waveclip offset="1.47217687">
9. <sequence maxsamples="262144" sampleformat="262159"
numsamples="374784">
10. <waveblock start="0">
11. <simpleblockfile filename="e0000317.au"
len="262144" min="-0.026215" max="0.030975" rms="0.001566"/>
12. </waveblock>
13. <waveblock start="262144">
14. <simpleblockfile filename="e0000d4b.au"
len="112640" min="-0.004883" max="0.0047" rms="0.000586"/>
15. </waveblock>
16. </sequence>
17. <envelope numpoints="0"/>
18. </waveclip>
19. </wavetrack>
20. <wavetrack name="Audio Track" channel="1" linked="0" mute="0"
solo="0" height="150" minimized="0" isSelected="0" rate="44100" gain="1.0"
pan="0.0">
21. <waveclip offset="1.47217687">
22. <sequence maxsamples="262144" sampleformat="262159"
numsamples="374784">
23. <waveblock start="0">
24. <simpleblockfile filename="e0000cf0.au"
len="262144" min="-0.026215" max="0.030975" rms="0.001566"/>
25. </waveblock>
26. <waveblock start="262144">
27. <simpleblockfile filename="e0000c6c.au"
len="112640" min="-0.004852" max="0.0047" rms="0.000586"/>
28. </waveblock>
29. </sequence>
30. <envelope numpoints="0"/>
31. </waveclip>
32. </wavetrack>
33. <wavetrack name="Audio Track" channel="0" linked="1" mute="0"
solo="0" height="150" minimized="0" isSelected="1" rate="44100" gain="1.0"
pan="0.0">
34. <waveclip offset="1.47217687">
35. <sequence maxsamples="262144" sampleformat="262159"
numsamples="501760">
36. <waveblock start="0">
37. <simpleblockfile filename="e000095c.au"
len="262144" min="-0.462036" max="0.483978" rms="0.060063"/>
38. </waveblock>
39. <waveblock start="262144">
40. <simpleblockfile filename="e0000237.au"
len="239616" min="-0.377747" max="0.483063" rms="0.054039"/>
41. </waveblock>
42. </sequence>
43. <envelope numpoints="0"/>
44. </waveclip>
45. </wavetrack>
46. <wavetrack name="Audio Track" channel="1" linked="0" mute="0"
solo="0" height="150" minimized="0" isSelected="1" rate="44100" gain="1.0"
pan="0.0">
47. <waveclip offset="1.47217687">
48. <sequence maxsamples="262144" sampleformat="262159"
numsamples="501760">
49. <waveblock start="0">
50. <simpleblockfile filename="e00007ad.au"
len="262144" min="-0.461975" max="0.483978" rms="0.060063"/>
51. </waveblock>
52. <waveblock start="262144">
53. <simpleblockfile filename="e0000275.au"
len="239616" min="-0.377686" max="0.483063" rms="0.054039"/>
54. </waveblock>
55. </sequence>
56. <envelope numpoints="0"/>
57. </waveclip>
58. </wavetrack>
59. </project>END top_level_mips;

2. Screenshot hasil tugas 2


1. <?xml version="1.0" standalone="no" ?>
2. <!DOCTYPE project PUBLIC "-//audacityproject-1.3.0//DTD//EN"
"http://audacity.sourceforge.net/xml/audacityproject-1.3.0.dtd" >
3. <project xmlns="http://audacity.sourceforge.net/xml/" projname="PERCOBAAN_2(1;2,2;0.25)_data"
version="1.3.0" audacityversion=
4. "2.0.3" sel0="0.0000000000" sel1="0.0000000000" vpos="0" h="0.0000000000" zoom="86.1328125000"
rate="44100.0">
5. <tags/>
6. <wavetrack name="Audio Track" channel="2" linked="0" mute="1" solo="0" height="150"
minimized="0" isSelected="0" rate="44100" gain="1.0" pan="0.0">
7. <waveclip offset="0.00000000">
8. <sequence maxsamples="262144" sampleformat="262159" numsamples="523264">
9. <waveblock start="0">
10. <simpleblockfile filename="e000025b.au" len="262144" min="-
0.63269" max="0.654083" rms="0.090754"/>
11. </waveblock>
12. <waveblock start="262144">
13. <simpleblockfile filename="e0000ed2.au" len="261120" min="-
0.507904" max="0.656097" rms="0.060744"/>
14. </waveblock>
15. </sequence>
16. <envelope numpoints="0"/>
17. </waveclip>
18. </wavetrack>
19. <wavetrack name="Audio Track" channel="2" linked="0" mute="1" solo="0" height="150"
minimized="0" isSelected="0" rate="44100" gain="1.0" pan="0.0">
20. <waveclip offset="-0.13000000">
21. <sequence maxsamples="262144" sampleformat="262159" numsamples="575488">
22. <waveblock start="0">
23. <simpleblockfile filename="e00002a7.au" len="262144" min="-
0.048462" max="0.050903" rms="0.007149"/>
24. </waveblock>
25. <waveblock start="262144">
26. <simpleblockfile filename="e0000fd0.au" len="262144" min="-
0.039368" max="0.049683" rms="0.004"/>
27. </waveblock>
28. <waveblock start="524288">
29. <simpleblockfile filename="e0000a48.au" len="51200" min="-
0.004303" max="0.004517" rms="0.000558"/>
30. </waveblock>
31. </sequence>
32. <envelope numpoints="0"/>
33. </waveclip>
34. </wavetrack>
35. </project>

3. Source code untuk Tugas III


Bagian a

<?xml version="1.0" standalone="no" ?>


<!DOCTYPE project PUBLIC "-//audacityproject-1.3.0//DTD//EN" "http://audacity.sourceforge.net/xml/audacityproject-
1.3.0.dtd" >
<project xmlns="http://audacity.sourceforge.net/xml/" projname="percobaan3_data" version="1.3.0"
audacityversion="2.0.3" sel0="3.2624036281" sel1="3.2624036281" vpos="0" h="0.0000000000" zoom="86.1328125000"
rate="44100.0">
<tags/>
<wavetrack name="Audio Track" channel="2" linked="0" mute="0" solo="0" height="150" minimized="0"
isSelected="1" rate="44100" gain="1.0" pan="0.0">
<waveclip offset="0.00000000">
<sequence maxsamples="262144" sampleformat="262159" numsamples="530432">
<waveblock start="0">
<simpleblockfile filename="e0000024.au" len="262144" min="-0.622925"
max="0.791199" rms="0.122393"/>
</waveblock>
<waveblock start="262144">
<simpleblockfile filename="e000060b.au" len="262144" min="-0.49295"
max="0.678558" rms="0.050454"/>
</waveblock>
<waveblock start="524288">
<simpleblockfile filename="e00002a9.au" len="6144" min="-0.004242"
max="0.002258" rms="0.000213"/>
</waveblock>
</sequence>
<envelope numpoints="0"/>
</waveclip>
</wavetrack>
</project>

Bagian b

<tags/>
<wavetrack name="4094_REC004" channel="0" linked="1" mute="0" solo="0" height="150" minimized="0"
isSelected="1" rate="48000" gain="1.0" pan="0.0">
<waveclip offset="0.00000000">
<sequence maxsamples="262144" sampleformat="262159" numsamples="360576">
<waveblock start="0">
<simpleblockfile filename="e00005b6.au" len="262144" min="-1.031792"
max="1.030527" rms="0.167172"/>
</waveblock>
<waveblock start="262144">
<simpleblockfile filename="e0000878.au" len="98432" min="-0.83033"
max="1.023964" rms="0.087635"/>
</waveblock>
</sequence>
<envelope numpoints="0"/>
</waveclip>
</wavetrack>
<wavetrack name="4094_REC004" channel="1" linked="0" mute="0" solo="0" height="150" minimized="0"
isSelected="1" rate="48000" gain="1.0" pan="0.0">
<waveclip offset="0.00000000">
<sequence maxsamples="262144" sampleformat="262159" numsamples="360576">
<waveblock start="0">
<simpleblockfile filename="e0000dc7.au" len="262144" min="-1.031792"
max="1.030527" rms="0.167172"/>
</waveblock>
<waveblock start="262144">
<simpleblockfile filename="e0000241.au" len="98432" min="-0.83033"
max="1.023964" rms="0.087635"/>
</waveblock>
</sequence>
<envelope numpoints="0"/>
</waveclip>
</wavetrack>
</project>

4. Screenshot Tugas I
5. Screenshot Tugas 2

6. Screenshot Tugas 3

Anda mungkin juga menyukai