T1 612008079 BAB III

(1)

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


(2)

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


(3)

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


(4)

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.


(5)

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


(6)

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


(7)

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


(8)

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


(9)

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

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

sehingga nilai → dan → − .

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


(10)

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.

� =�� × �� … … … .

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.


(11)

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


(12)

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


(13)

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

[�] = untuk semua n

Menghitung nilai ralat e[n] Menghitung w[n+1] dengan

algoritma NLMS Selesai


(14)

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.8 x(n)*h(n)-w`(n)*u(n) jumlah iterasi


(15)

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


(16)

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()


(17)

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


(1)

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


(2)

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

[�] = untuk semua n

Menghitung nilai ralat e[n]

Menghitung w[n+1] dengan algoritma NLMS


(3)

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.8

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


(4)

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


(5)

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()


(6)

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