bab iii perancangan sistem penyama€¦ · berada pada sekitar 45 – 50 db. karena standar nilai...

17
27 BAB III PERANCANGAN SISTEM PENYAMA Pembahasan pada bab ini berisi perancangan sistem medan jauh penyuara dalam bentuk program pada perangkat lunak Python yang akan dijalankan oleh Rasberry Pi B. Pada subbab yang pertama, menjelaskan tentang penggunaan perangkat keras sebagai pengirim dan penerima isyarat. Pada subbab berikutnya menjelaskan pembentukan isyarat MLS diikuti subbab 3.3 dengan penjelasan alih ragam Hilbert. Subbab 3.4 menjelaskan tentang proses penyamaan dengan algoritma galat kuadrat terkecil ternormalisasi dan 3.5 menjelaskan proses penjendelaan. Sistem penyama yang dirancang terdiri dari penguat audio, penyuara, dan ruangan gedung C yaitu C107 dan CX01 tempat penyamaan dilakukan sampai pada titik di lokasi sekitar kepala pendengar. Karakteristik sistem tanggapan ruang tersebut perlu diketahui terlebih dahulu dengan cara mengukur tanggapan impuls sistem. Posisi pendengar yang terletak pada medan jauh penyuara menyebabkan pendekatan bentuk muka gelombang bunyi yang diterima pendengar dari penyuara berberntuk bola. Pengukuran tanggapan impuls sistem dilakukan dengan menggunakan isyarat Maximum Length Sequence (MLS). Penyama yang fungsi pindahnya merupakan invers dari fungsi pindah sistem yang akan disamakan kemungkinan besar tidak stabil dikarenakan sistem memiliki nol di luar lingkaran satuan atau sistem tidak berfase minimum[4]. Tanggapan ruang terukur umumnya tidak berfase minimum, sehingga perlu dilakukan pembentukan sistem berfase minimum dengan menggunakan alih ragam Hilbert. Pada Rasberry Pi B penambahan library pada perangkat lunak Python diperlukan untuk mendapatkan

Upload: others

Post on 27-Feb-2021

10 views

Category:

Documents


0 download

TRANSCRIPT

27

BAB III

PERANCANGAN SISTEM PENYAMA

Pembahasan pada bab ini berisi perancangan sistem medan jauh penyuara dalam

bentuk program pada perangkat lunak Python yang akan dijalankan oleh Rasberry Pi

B. Pada subbab yang pertama, menjelaskan tentang penggunaan perangkat keras

sebagai pengirim dan penerima isyarat. Pada subbab berikutnya menjelaskan

pembentukan isyarat MLS diikuti subbab 3.3 dengan penjelasan alih ragam Hilbert.

Subbab 3.4 menjelaskan tentang proses penyamaan dengan algoritma galat kuadrat

terkecil ternormalisasi dan 3.5 menjelaskan proses penjendelaan.

Sistem penyama yang dirancang terdiri dari penguat audio, penyuara, dan

ruangan gedung C yaitu C107 dan CX01 tempat penyamaan dilakukan sampai pada

titik di lokasi sekitar kepala pendengar. Karakteristik sistem tanggapan ruang tersebut

perlu diketahui terlebih dahulu dengan cara mengukur tanggapan impuls sistem. Posisi

pendengar yang terletak pada medan jauh penyuara menyebabkan pendekatan bentuk

muka gelombang bunyi yang diterima pendengar dari penyuara berberntuk bola.

Pengukuran tanggapan impuls sistem dilakukan dengan menggunakan isyarat

Maximum Length Sequence (MLS).

Penyama yang fungsi pindahnya merupakan invers dari fungsi pindah sistem

yang akan disamakan kemungkinan besar tidak stabil dikarenakan sistem memiliki nol

di luar lingkaran satuan atau sistem tidak berfase minimum[4]. Tanggapan ruang

terukur umumnya tidak berfase minimum, sehingga perlu dilakukan pembentukan

sistem berfase minimum dengan menggunakan alih ragam Hilbert. Pada Rasberry Pi

B penambahan library pada perangkat lunak Python diperlukan untuk mendapatkan

28

fungsi alih ragam Hilbert. Penambahan ini meliputi library untuk komputasi ilmiah

yaitu NumPy dan SciPy sehingga perangkat keras Raspberry Pi B dan perangkat lunak

Python dapat digunakan untuk pengolahan sinyal secara maksimal.

Pada tahap selanjutnya penyamaan dilakukan pada tanggapan impuls sistem fase

minimum dengan menggunakan algoritma galat kuadrat terkecil ternormalisasi.

Setelah melalui tahapan algoritma NLMS sistem penyama mungkin menghasilkan

isyarat keluaran yang cacat karena tanggapan fase penyama bersifat tidak linear atau

tundaan kelompok penyama yang tidak konstan. Pada tahapan akhir sistem penyama,

tapis digital FIR fase linear dibentuk lewat proses penjendelaan dan diaplikasikan

sebelum keluaran. Tanggapan impuls penyama menjadi tapis digital FIR berfase linear

melalui proses penjendelaan sehingga akan menghasilkan tundaan kelompok yang

konstan di semua frekuensi.

Sistem penyama medan jauh penyuara yang dirancang dengan menggunakan

Rasberry Pi B dan Wolfson Audio Card dapat digambarkan pada diagram kotak

berikut.

Gambar 3.1. Diagram kotak sistem penyama medan jauh penyuara menggunakan Rasberry Pi B

dan Wolfson Audio Card.

Ruang

Penguat

Isyarat

Audio

Rasberry

Pi sebagai

DSP Processor

29

Mikropon yang digunakan adalah mikropon pada Wolfson Audio Card yaitu

WM7220 DMIC MEMS yang memiliki an pola penerimaan bunyi omnidirectional

[14], grafik sensitifitas mikropon terhadap frekuensi ditunjukkan pada gambar berikut.

Gambar 3.2. Grafik sensitifitas mikropon terhadap frekuensi

Total Harmonic Distortion (THD) mikropon terhadap level tekanan bunyi ditunjukkan

pada grafik berikut

30

Gambar 3.3. THD mikropon terhadap level tekanan bunyi

Penyuara menggunakan penguat isyarat audio yang berguna untuk memperkuat

aras tekanan suara isyarat pengeksitasi untuk mengatasi pengaruh derau latar yang

berada pada sekitar 45 – 50 dB. Karena standar nilai S/N antara isyarat yang diterima

di mikropon dengan derau latar belakang adalah 30 – 50 dB [1], maka penguat isyarat

audio menguatkan isyarat hingga aras isyarat suara yang diterima di mikropon sebesar

75 – 100 dB.

Cara kerja sistem penyama ini dijelaskan sebagai berikut.

1. DSP Processor membangkitkan isyarat MLS kemudian menyuarakannya.

2. DSP Processor merekam pantulan isyarat MLS yang berupa isyarat MLS dan

tanggapan impuls ruang dengan tundaan.

3. DSP Processor mencari tanggapan impuls sistem.

4. DSP Processor mencari tanggapan impuls sistem fase minimum menggunakan

tapis alih ragam Hilbert.

5. DSP Processor menghitung inverse tanggapan impuls penyama menggunakan

algoritma galat kuadrat terkecil ternormalisasi.

31

6. DSP Processor menghitung lama proses iterasi algoritma galat kuadrat terkecil

ternormalisasi.

7. DSP Processor membentuk tapis penyama berstruktur tapis FIR fase linear

dengan metode penjendelaan (windowing).

8. DSP Processor menggunakan tapis penyama tersebut pada isyarat suara yang

diterimanya sebelum hasil penyamaannya diteruskan ke penguat isyarat audio

dan disuarakan oleh penyuara.

Berikut adalah penjelasan perancangan setiap tahapan program yang didahului

dengan diagram alir program.

Gambar 3.4. Diagram alir program sistem penyama

Mulai

Membangkitkan isyarat MLS dan menyuarakannya

Mencari tanggapan impuls sistem

Mencari tanggapan impuls system fase mimimum

dengan alih ragam Hilbert

Menghitung tanggapan impuls penyama

menggunakan algoritma NLMS

Membentuk tapis penyama fase linear dengan metode

penjendelaan

Selesai

32

3.1. Menyuarakan dan Merekam Isyarat pada modul Rasberry Pi B dan

Wolfson Audio Card

Pertama – tama untuk menyuarakan isyarat menggunakan modul Wolfson Audio

Card, kita perlu menjalankan script untuk Wolfson Audio Card dengan memberikan

perintah melalui LXTerminal pada Rasberry Pi. Untuk menyuarakan isyarat digunakan

perintah berikut.

./Playback_to_Lineout.sh <Enter>

Perintah diatas berarti menjalanan script Playback_to_Lineout.sh dari Rasberry Pi

sehingga perangkat keras pada Wolfson Audio Card dapat menjalankan fungsinya. Isi

dari script diatas ditunjukkan pada gambar berikut

Gambar 3.5. Script Playback_to_Linout.sh

Melalui script ini keluaran stereo gain pada kanal dan kiri dapat disesuaikan sesuai

kebutuhan. Dalam perancangan ini, gain yang digunakan bernilai 32 pada kedua kanal.

Isyarat MLS yang disuarakan melalui Wolfson Audio Card selanjutnya akan

diterima kembali untuk mengetahui tanggapan impuls ruang. Fungsi untuk merekam

dan mencuplik isyarat MLS yang digunakan untuk pengukuran diperlukan. Langkah

33

awal untuk merekam dengan menjalankan script melalui LXTerminal Rasberry Pi

dengan perintah berikut

./Record_from_DMIC.sh <Enter>

Perintah diatas menjalankan script Record_from_DMIC.sh yang digunakan untuk

menjalankan perangkat keras mikropon pada Wolfson Audio Card. Isi dari script diatas

ditunjukkan pada gambar berikut.

Gambar 3.6. Script Record_from_DMIC.sh

Gain input digital sebesar 128 pada setiap mikropon dan gain input sebesar 32. Nilai 32

pada kedua script menunjukkan aras kekerasan isyarat sebesar 0 decibel. Kemudian

perintah pada LXTerminal berikut digunakan untuk mulai merekam isyarat.

arecord –c 2 –f S16_LE –r 44100 nama_file.wav <Enter>

Dimana rincian perintah diatas sebagai berikut.

-c = Jumlah kanal yang digunakan, nilai 2 untuk stereo dan 1 untuk mono

-f = Format perekaman, dalam hal ini rekaman berupa isyarat audio 16-bit Little Endian

-r = Kecepatan cuplik. Dalam perancangan ini 44100 Khz

34

3.2. Pembangkit Isyarat MLS dan Pengukuran Tanggapan Impuls

Pengukuran tanggapan impuls sistem dilakukan dengan menggunakan isyarat

MLS karena pada metode ini pengaruh derau latar belakang pada pengukuran dapat

dengan mudah dikurangi[1]. Nilai S/N isyarat MLS terhadap derau yang dianjurkan

adalah 30-50 dB [1]. Nilai aras derau latar belakang yang terukur saat pengukuran

dilakukan adalah sekitar 45 – 50 dB, sedangkan penguat isyarat audio perlu diatur

penguatannya sedemikian hingga aras isyarat MLS yang diterima di mikropon adalah

80 dB.

Untuk standar pengukuran ruangan, isyarat MLS yang dibangkitkan adalah 16

bit. Panjang dari isyarat MLS yang dihasilkan adalah 216 bit = 65536 bit. Dengan

frekuensi cuplik 44100 kHz, durasi dari isyarat MLS tersebut adalah (65536/44100) s

kurang lebih 1.486s, nilai ini untuk mencegah tidak terjadinya time-aliasing pada

pengukuran tanggapan impuls. Untuk isyarat MLS 16-bit, berikut bit taps yang

digunakan dalam program.

case 16

taps=4;

tap1=2;

tap2=3;

tap3=5;

tap4=16;

Penggalan program untuk rekursi XOR[15]

for i = (2^n)-1:-1:1

xorbit = xor(buff(tap1),buff(tap2));

if taps==4

xorbit2 = xor(buff(tap3),buff(tap4));

xorbit = xor(xorbit,xorbit2);

end

buff = [xorbit buff(1:n-1)];

y(i) = (-2 .* xorbit) + 1;

end

35

Gambar dari 256 cuplikan pertama bit MLS yang diplotkan pada MatLab tampak seperti

di bawah ini.

Gambar 3.7. Plot bit dari 256 cuplikan pertama isyarat MLS.

Pada gambar 4.5. ditunjukkan bit – bit yang dibangkitkan oleh register geser sebanyak

216 cuplikan. Sesuai dengan teori pada Bab 2.2. nilai bit ini kemudian dikonversi

sehingga nilai 0 → 1 dan 1 → −1.

Tanggapan impuls sistem kemudian diperoleh dengan menghitung korelasi

silang antara isyarat MLS yang disuarakan dan isyarat MLS yang diterima oleh

mikropon di titik lokasi pendengar. Dalam perhitungan korelasi silang tersebut

diperlukan adanya tundaan sebesar N cuplikan karena adanya perbedaan jarak tempuh

di antara kedua isyarat yang berupa jarak yang ditempuh isyarat MLS dari penyuara ke

0 50 100 150 200 250-0.2

0

0.2

0.4

0.6

0.8

1

36

mikropon di titik lokasi pendengar. Untuk menyuarakan isyarat MLS, menggunakan

bantuan fungsi sounds pada MATLAB.

Besar dari nilai cuplikan N tergantung pada jarak penyuara ke mikropon

seperti yang dirumuskan pada persamaan berikut.

𝑁 =𝑥

𝑐× 𝐹𝑠 … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … (3.1)

dengan:

N adalah tundaan pada isyarat MLS dalam perhitungan korelasi silang (sample); x

adalah jarak penyuara ke mikropon (m); dan c adalah cepat rambat bunyi pada suhu

ruang (m/s);

Pada pengukuran tanggapan impuls, jarak antara penyuara ke mikropon adalah

2 m, sehingga besarnya nilai N adalah (2/343) * 44100 = 257,142 cuplikan ≈ 257

cuplikan.

Sebelumnya, nilai variabel taps telah ditentukan untuk berapa bit isyarat MLS

yang dibutuhkan (dalam perancangan ini 16-bit MLS). Urutan kerja program pada

pengukuran tanggapan impuls sistem menggunakan isyarat MLS adalah:

1. Membangkitkan isyarat MLS dengan menentukan berapa bit MLS yang

diinginkan.

2. Nilai variable taps digunakan untuk rekursi dan menentukan keluaran MLS pada

cuplikan ke n.

3. Menyuarakan isyarat MLS melalui penyuara sekaligus merekam isyarat MLS

yang diterima oleh mikropon di titik lokasi pendengar.

4. Mencari tanggapan impuls sistem dengan menghitung korelasi silang antara

isyarat MLS yang disuarakan oleh penyuara dan isyarat MLS yang diterima oleh

mikropon dengan memperhitungkan tundaan sebesar N cuplikan.

37

Urutan kerja program tersebut dapat dinyatakan pada diagram alir berikut.

Gambar 3.8. Diagram alir program pencarian tanggapan impuls sistem.

3.3. Tanggapan Impuls Sistem Fase Minimum Dengan Alih Ragam Hilbert

Sesuai dengan penjelasan konsep alih ragam Hilbert pada sistem fase minimum

pada BAB 2, cara kerja tapis alih ragam Hilbert sebagai berikut.

1. Menghitung alih ragam Fourier waktu diskret (DFT) dari tanggapan impuls

ruang..

2. Menghitung logaritma natural dari magnitudo tanggapan frekuensi sistem

terukur.

3. Tapis alih ragam Hilbert menghitung fase pengganti yang membentuk sistem

fase minimum

4. Mengganti fase tanggapan frekuensi ruang terukur dengan fase pengganti yang

diperoleh.

Mulai

Membangkitkan isyarat MLS 16-bit

Melakukan rekursi berdasarkan variable taps sebagai output

MLS cuplikan ke n

Menyuarakan dan merekam isyarat MLS pada titik

dengar

Selesai

Menghitung tanggapan impuls ruang dengan korelasi

silang dan tundaan N

38

5. Menghitung alih ragam Fourier balik waktu diskret (IDFT) dari tanggapan

frekuensi ruang baru yang diperoleh untuk memperoleh tanggapan impuls ruang

berfase minimum.

Urutan kerja program tersebut dapat dinyatakan pada diagram alir berikut.

Gambar 3.9. Diagram alir program pencarian tanggapan impuls sistem fase

minimum.dengan alih ragam Hilbert

3.4 Pencarian Tanggapan Impuls Penyama Menggunakan Algoritma Galat

Kuadrat Terkecil Ternormalisasi

Urutan kerja program pencarian tanggapan impuls penyama menggunakan

algoritma galat kuadrat terkecil adalah:

1. Membentuk vektor 𝒘[𝑛] sebagai tapis adaptif

2. Mengisi nilai vektor 𝒘[𝑛] dengan 0 sebagai nilai awal

3. Menghitung energi sinyal masukan 𝒙𝑇(𝑛)𝒙(𝑛)

Mulai

Menghitung DFT dari tanggapan impuls ruang

Menghitung logaritma natural dari magnitudo

tanggapan frekuensi ruang terukur

Menghitung alih ragam Hilbert dari logaritma natural

magnitudo tanggapan frekuensi ruang terukur

Mengganti fase tanggapan frekuensi ruang terukur dengan

fase pengganti hasil tapis alih ragam Hilbert

Menghitung IDFT dari tanggapan frekuensi

sistem fase minimum

Selesai

39

4. Menghitung nilai parameter µ

5. Membentuk vektor 𝒆[𝑛]

6. Menghitung vektor 𝒅[𝑛] = 𝒙[𝑛] ∗ 𝒉[𝑛]

7. Menghitung nilai ralat e[n]

8. Menghitung nilai w[n+1] dengan persamaan rekursi NLMS

Diagram alir program rekursi NLMS ditunjukkan pada gambar berikut

Gambar 3.10. diagram alir program pencarian tanggapan impuls penyama menggunakan

algoritma galat kuadrat terkecil ternormalisasi.

Dengan 𝒉[𝑛] adalah deretan impuls dengan jumlah sample n = 21 dari suatu tanggapan

frekuensi dan 𝒙[𝑛] merupakan fungsi acak yang dibangkitkan dengan fungsi rand()

dengan jumlah sample n = 1000 pada MATLAB berikut penggalan program rancangan

simulasi perhitungan rekursi algoritma galat kuadrat terkecil ternormalisasi

Mulai

Membentuk vektor 𝒘[𝑛]

Menghitung 𝒙𝑇(𝑛)𝒙(𝑛)

Menghitung 𝒅[𝑛] = 𝒙[𝑛] ∗ 𝒉[𝑛]

Memberi nilai inisial vektor

𝒘[𝑛] = 0 untuk semua n

Menghitung nilai ralat e[n]

Menghitung w[n+1] dengan

algoritma NLMS

Selesai

40

w=zeros(M,1);

w_least=zeros(M,1);

mu=0.5;

mu_least=0.025;

d=conv(h,u);

N=length(u);

u=u(:);

d=d(:);

for n=M:N

uvec=u(n:-1:n-M+1);

e(n)=d(n)-w'*uvec;

www(n)=conj(e(n));

w=w+mu/(a+uvec'*uvec)*uvec*conj(e(n));

mse(n)= mean(e(n).^2);

end

secara simulasi, ralat yang dihasilkan atau nilai vektor 𝒆[𝑛] akan menuju titik

konvergensi seperti yang ditunjukkan gambar berikut.

Gambar 3. 11. Tanggapan impuls 𝒆(𝑛) dengan dengan iterasi sepanjang

sampel 𝒙(𝑛)

0 100 200 300 400 500 600 700 800 900 1000-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8x(n)*h(n)-w`(n)*u(n)

jumlah iterasi

41

3.5 Pembentukan Tapis Penyama Berstruktur Tapis FIR Fase Linear dengan

Penjendelaan

Sesuai dengan penjelasan pendekatan tapis FIR fase linear pada Subbab 2.4,

terdapat beberapa jendela yang dapat dipilih untuk membentuk tapis penyama sebagai

tapis digital FIR fase linear, yakni jendela kotak, Bartlett, Hann, Hamming, dan

Blackman. Setiap jendela akan menghasilkan tapis digital FIR dengan karakteristik

masing-masing. Beberapa karakteristik tapis digital yang penting khususnya dalam

perancangan tapis penyama adalah riak pita lolos (passband ripple) lebar pita transisi

(transition band) dan pelemahan pita henti (stopband attenuation). Berikut adalah

gambar yang menunjukkan karakteristik tapis lolos rendah hasil perancangan dan

perbandingannya dengan tapis lolos rendah ideal.

Gambar 3.12. Perbandingan karakteristik tapis lolos rendah hasil perancangan dengan tapis

lolos rendah ideal.

Pada Gambar 3.12 terlihat tapis lolos rendah ideal memiliki nilai magnitudo riak

pita lolos sebesar nol, lebar pita transisi sebesar nol, dan pelemahan pita henti sebesar

nol pula. Hal tersebut tak dapat dicapai oleh tapis lolos rendah hasil perancangan dari

42

berbagai cara, termasuk penjendelaan. Pada perancangan tapis penyama, jendela yang

baik akan menghasilkan tapis digital FIR fase linear dengan karakteristik tapis

mendekati tapis ideal.

Contoh pembentukan jendela Hann dengan sample sebanyak 51 dalam

perangkat lunak Python sebagai berikut.

>>> window = np.hanning(51)

>>> plt.plot(window)

[<matplotlib.lines.Line2D object at 0x...>]

>>> plt.title("Hann window")

<matplotlib.text.Text object at 0x...>

>>> plt.ylabel("Amplitude")

<matplotlib.text.Text object at 0x...>

>>> plt.xlabel("Sample")

<matplotlib.text.Text object at 0x...>

>>> plt.show()

Gambar 3.13. Jendela Hann dalam sample menggunakan perangkat lunak Python

43

Kerja program pembentukan tapis penyama berstruktur tapis FIR fase linear

menggunakan metode penjendelaan adalah dengan mengalikan tanggapan impuls

penyama yang diperoleh dari algoritma galat kuadrat terkecil dengan nilai koefisien

jendela. Hasil dari perkalian tersebut adalah tapis penyama digital yang telah

berstruktur tapis FIR fase linear.

Kerja program pembentukan tapis penyama berstruktur tapis FIR fase linear

tersebut dapat dinyatakan pada diagram alir berikut.

Gambar 3.14. Diagram alir program pembentukan tapis penyama berstruktur tapis FIR fase

linear menggunakan metode penjendelaan.

Pada tugas akhir ini, dipilih jendela Hann dengan panjang 22050 atau setengah

dari frekuensi cuplik audio dikarenakan paling mendekati kriteria tapis ideal.

.

Mulai

Mengalikan tanggapan impuls penyama dengan

nilai koefisien jendela

Selesai