• Tidak ada hasil yang ditemukan

Pengenalan Ucapan Dengan Metode FFT Pada Mikrokontroler ATMega32.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Pengenalan Ucapan Dengan Metode FFT Pada Mikrokontroler ATMega32."

Copied!
31
0
0

Teks penuh

(1)

i

PENGENALAN UCAPAN DENGAN METODE FFT PADA

MIKROKONTROLER ATMEGA32

Disusun Oleh :

Nama : Rizki Septamara

Nrp

: 0622034

Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha,

Jl. Prof.Drg.Suria Sumantri, MPH no.65, Bandung, Indonesia.

Email : ans87_0622034@yahoo.com

ABSTRAK

Teknologi suara adalah salah satu aplikasi teknologi yang sangat berguna

dalam kehidupan sehari-hari. Contohnya, dalam menyalakan sebuah lampu orang

hanya menepuk tangannya, dan lampu pun akan menyala, dan masih banyak lagi

dari teknologi suara yang dapat digunakan untuk mengontrol sesuatu.

Pada Tugas Akhir ini, dirancang sebuah alat yang dapat mengenali ucapan

dengan menggunakan metode FFT (Fast Fourier Transform). Dengan metode ini

akan didapatkan sinyal dalam domain frekuensi, hal ini bertujuan agar pola

karakteristik ucapan kata yang satu dengan yang lainnya dapat dibedakan. Sinyal

suara masuk yang merupakan sinyal analog dikonversikan menjadi sinyal digital

dengan

ADC

pada

mikrokontroler

ATMega32,

selanjutnya

akan

ditransformasikan menggunakan transformasi fourier diskrit (FFT). Langkah

berikutnya, informasi yang didapat dibandingkan dengan database nilai FFT

beberapa ucapan yang telah disimpan sebelumnya dalam memori EEPROM

mikrokontroler, dan dicari

error

terkecil dengan metode RMSE (Root Mean

Squared Error). Kata-kata yang dikenali adalah

kanan

,

kiri

,

maju

,

mundur

, dan

stop

.

Berdasarkan percobaan yang dilakukan dalam Tugas Akhir ini, sistem

pengenalan ucapan yang dibuat berhasil direalisasikan dengan persentase

keberhasilan yang paling tinggi adalah kata maju (91.33%) dan persentase

keberhasilan yang paling kecil adalah kata mundur (66.67%).

(2)

ii

SPEECH RECOGNITION WITH FFT METHOD IN ATMEGA32

MICROCONTROLLER

Composed by :

Name : Rizki Septamara

Nrp

: 0622034

Electrical Engineering, Maranatha Cristian University,

Jl. Prof.Drg.Suria Sumantri, MPH no.65, Bandung, Indonesia.

Email : ans87_0622034@yahoo.com

ABSTRACT

Voice technology is one of technology application that very useful in

routine life. For example, to turn on the lamp, people just clap his hand and the

lamp will be aglow, and still many more from voice technology that applicable to

control something.

In this Final Project, an instrument will be designed that can recognize a

speech used FFT (Fast Fourier Transform) method. This method will get a signal

in frequency domain, that purpose a signal characteristic pattern from one with

other can distinguishable. A voice signal that is an analog signal will be

conversioned to be a digital signal with ADC in ATMega32 microcontroller and

will transformed with discrete fourier transform. Next, an information that geted

will be compared with database that saved in microcontroller EEPROM, and

search the samallest error with RMSE (Root Mean Squared Error) method. A

words that recognized are

right

,

left

,

forward

,

back

, and

stop

.

According to the experiments in this Final Project, a speech recognition

system fare well made with highest success persentage is

forward

word (91.33%)

and lowest success persentage is

back

word (66.67%).

(3)

v

DAFTAR ISI

Halaman

ABSTRAK ...

i

ABSTRACT ...

ii

KATA PENGANTAR ...

iii

DAFTAR ISI ...

v

DAFTAR TABEL ...

viii

DAFTAR GAMBAR ...

ix

DAFTAR RUMUS ...

xi

BAB I

PENDAHULUAN

I.1 Latar Belakang ...

1

I.2 Identifikasi Masalah ...

2

I.3 Perumusan Masalah ...

2

I.4 Tujuan ...

2

I.5 Pembatasan Masalah ...

2

I.6 Spesifikasi Alat yang Digunakan ...

3

I.7 Sistematika Penulisan ...

3

BAB II

LANDASAN TEORI

II.1 Transformasi Fourier ...

5

II.1.1 Transformasi Fourier Diskrit ...

5

II.2 RMSE (Root Mean Squared Error) ...

7

II.3 Pengertian Suara ...

7

II.3.1 Frekuensi ...

8

II.3.2 Periode ...

9

II.3.3 Amplituda ...

9

II.3.4 Proses ADC (Analog to Digital Converter) ...

9

II.4 Pengertian Microphone ...

12

(4)

vi

II.4.2 Microphone Dynamic ...

14

II.4.3 Microphone Condensor ...

15

II.5 Pengontrol Mikro ATmega16 ...

16

II.5.1 Pengenalan ATMEL AVR RISC ...

16

II.5.2 Pengontrol Mikro ATMega32 ...

17

II.5.2.1 Fitur ATMega32 ...

17

II.5.2.2 Konfigurasi Pin ATMega32 ...

18

II.5.2.3 Blok Diagram ATMega32 ...

23

II.5.2.4 Peta Memori ATMega ...

24

II.6 Op-Amp (Operational Amplifier) ...

25

II.6.1 Penguat Inverting ...

27

II.6.2 Penguat Non-Inverting ...

28

BAB III PERANCANGAN DAN REALISASI

III.1 Desain Sistem ...

30

III.2 Desain Hardware ...

32

III.2.1 Desain Penguat Microphone ...

33

III.2.2 Desain Mikrokontroler ...

35

III.2.2.1 ADC ATMega32 ...

36

III.2.2.2 Port C ATMega32 ...

36

III.3 Algoritma Pemrograman Sistem Pengenalan Ucapan ...

37

III.3.1 Diagram Alir Pembuatan Database ...

37

III.3.2 Diagram Alir Proses Pengenalan Ucapan ...

48

BAB IV DATA PENGAMATAN DAN ANALISI DATA

IV.1 Gambar Sinyal Suara untuk Tiap Kata ...

50

IV.2 Gambar Sinyal Input dan Output Menggunakan Penguat

Microphone ...

55

IV.3 Pengujian Hasil Pengucapan untuk Tiap Kata ...

55

(5)

vii

V.2 Saran ...

58

DAFTAR PUSTAKA ...

60

LAMPIRAN A FOTO ALAT PENGENALAN UCAPAN

LAMPIRAN B SKEMATIK ALAT PENGENALAN UCAPAN

LAMPIRAN C PROGRAM PADA PENGONTROL MIKRO ATMEGA32

(6)

viii

DAFTAR TABEL

Halaman

Tabel 2.1 Fungsi Khusus Port A ...

19

Tabel 2.2 Fungsi Khusus Port B ...

20

Tabel 2.3 Fungsi Khusus Port C ...

21

Tabel 2.4 Fungsi Khusus Port D ...

21

Tabel 3.1 Hasil FFT untuk Kata Kanan ...

38

Tabel 3.2 Hasil FFT untuk Kata Kiri ...

40

Tabel 3.3 Hasil FFT untuk Kata Maju ...

42

Tabel 3.4 Hasil FFT untuk Kata Mundur ...

44

Tabel 3.5 Hasil FFT untuk Kata Stop ...

46

(7)

ix

DAFTAR GAMBAR

Halaman

Gambar 2.1 Transformasi Fourier ...

5

Gambar 2.2 Gelombang Suara Halo ...

8

Gambar 2.3 Gelombang Sinusoidal ...

9

Gambar 2.4 Proses Sampling ...

10

Gambar 2.5 Proses Kuantisasi ...

11

Gambar 2.6 Proses Pengkodean ...

12

Gambar 2.7 Respon Frekuensi Microphone Arang ...

13

Gambar 2.8 Penampang Microphone Arang ...

14

Gambar 2.9

Respon Frekuensi Microphone Dynamic ...

14

Gambar 2.10

Elemen Penyusun Microphone Dynamic ...

15

Gambar 2.11

Frekuensi Respon Microphone Condensor ...

15

Gambar 2.12 Elemen PenyusunMicrophone Condensor ...

16

Gambar 2.13

Konfigurasi PIN ATMega32 ...

19

Gambar 2.14 ADC Control and Status Register A - ADCSRA ...

20

Gambar 2.15 Register Port A ...

22

Gambar 2.16 Blok Diagram ATMega32 ...

23

Gambar 2.17 Peta Memori Program ATMega32 ...

24

Gambar 2.18 Peta Memori Data ATMega32 ...

25

Gambar 2.19 Penguat Diferensial ...

26

Gambar 2.20 Simbol Op-Amp ...

27

Gambar 2.21 Rangkaian Dasar Penguat Inverting ...

27

Gambar 2.22 Rangkaian Dasar Penguat Non-Inverting ...

28

Gambar 3.1 Blok Diagram Sistem Implementasi Pengenalan Ucapan ...

30

Gambar 3.2 Penguat Microphone ...

33

Gambar 3.3 Rangkaian Mikrokontroler ...

35

Gambar 3.4 Diagram Alir Pembuatan Database ...

37

(8)

x

Gambar 3.6 Spektrum Frekuensi Kata

Kiri

...

41

Gambar 3.7 Spektrum Frekuensi Kata

Maju

...

43

Gambar 3.8 Spektrum Frekuensi Kata

Mundur

...

45

Gambar 3.9 Spektrum Frekuensi Kata

Stop

...

47

Gambar 3.10 Diagram Alir Proses Pengenalan Ucapan ...

48

Gambar 4.1 Sinyal Suara untuk Kata Kanan ...

50

Gambar 4.2 Sinyal Suara untuk Kata Kiri ...

50

Gambar 4.3 Sinyal Suara untuk Kata Maju ...

51

Gambar 4.4 Sinyal Suara untuk Kata Mundur ...

51

Gambar 4.5 Sinyal Suara untuk Kata Stop ...

51

(9)

xi

DAFTAR RUMUS

Halaman

Rumus 2.1 ...

5

Rumus 2.2 ...

6

Rumus 2.3 ...

7

Rumus 2.4 ...

7

Rumus 2.5 ...

11

Rumus 2.6 ...

12

Rumus 2.7 ...

28

(10)

LAMPIRAN A

(11)
(12)

LAMPIRAN B

(13)
(14)

LAMPIRAN C

PROGRAM PADA PENGONTROL MIKRO

(15)

C-1

PROGRAM UTAMA

/***************************************************** This program was produced by the

CodeWizardAVR V1.25.3 Professional Automatic Program Generator

© Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com

Project : Version : Date : 8/15/2010

Author : F4CG Company : F4CG Comments:

Chip type : ATmega32 Program type : Application Clock frequency : 4.000000 MHz Memory model : Small External SRAM size : 0 Data Stack size : 512

*****************************************************/

#include <mega32.h> #include <math.h> #include <stdio.h> #include <delay.h>

// Alphanumeric LCD Module functions #asm

.equ __lcd_port=0x15 ;PORTC #endasm

#include <lcd.h>

// Standard Input/Output functions #include <stdio.h>

#define ADC_VREF_TYPE 0x60

// Read the 8 most significant bits // of the AD conversion result

unsigned char read_adc(unsigned char adc_input) {

ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Start the AD conversion

ADCSRA|=0x40;

// Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0);

(16)

C-2

// Declare your global variables here

unsigned int k,n,adc[25],j,s,x;

float r[25],i[25],m[25],hasil,hasil2,hasil3,hasil4,hasil5,h1,h2,h3,h4,h5;

eeprom float kanan[25]={3192.7, 106.08, 72.18, 81.76, 50.98, 76.93, 88.87, 56.03, 60.68, 46.23, 49.2, 48.1, 54.48, 54.48, 48.1, 49.2, 46.23, 60.68, 56.03, 88.87, 76.93, 50.98, 81.76, 72.18, 106.08};

eeprom float kiri[25]={4439.3, 229.27, 220.49, 278.26, 193.43, 192.52, 159.28, 217.87, 202.32, 133, 169.44, 170.84, 138.14, 138.14, 170.84, 169.44, 133, 203.32, 217.87, 159.28, 192.46, 193.43, 278.26, 220.49, 229.27}; eeprom float maju[25]={3793.5, 170.19, 126.59, 151.54, 207.31, 108.64, 138.11, 154.18, 130.93, 123.19, 155.44, 118.19, 136.08, 136.08, 118.19, 155.44, 124.19, 130.84, 154.18, 168.11, 108.64, 361.31, 151.54, 126.59, 170.19}; eeprom float mundur[25]={4410.4, 394.04, 268.62, 177.38, 131.38, 105.58, 132.27, 203.04, 141.03, 114.90, 202.45, 147.31, 194.64, 194.64, 147.25, 202.39, 114.9, 141.03, 203.04, 132.27, 105.58, 131.44, 177.38, 268.62, 394.04};

eeprom float stop[25]={5072.8, 151.38, 187, 184.37, 145.77, 146.19, 127.72, 207.98, 85.35, 127.39, 198.06, 119.13, 118.52, 118.52, 119.13, 198.06, 127.39, 85.35, 207.92, 127.72, 146.19, 145.77, 184.37, 187, 151.38};

void main(void) {

// Declare your local variables here

// Input/Output Ports initialization // Port A initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;

DDRA=0x00;

// Port B initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00;

DDRB=0x00;

// Port C initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;

DDRC=0x00;

// Port D initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00;

DDRD=0x00;

// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected TCCR0=0x00;

TCNT0=0x00; OCR0=0x00;

(17)

C-3

// Mode: Normal top=FFFFh

// OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off

// Input Capture on Falling Edge // Timer 1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00;

// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00;

TCCR2=0x00; TCNT2=0x00; OCR2=0x00;

// External Interrupt(s) initialization // INT0: Off

// INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;

// USART initialization

// Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: Off

// USART Transmitter: On // USART Mode: Asynchronous // USART Baud rate: 9600 UCSRA=0x00;

UCSRB=0x08; UCSRC=0x86; UBRRH=0x00; UBRRL=0x19;

// Analog Comparator initialization // Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;

(18)

C-4

// ADC initialization

// ADC Clock frequency: 31.250 kHz // ADC Voltage Reference: AVCC pin // Only the 8 most significant bits of // the AD conversion result are used ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0x87;

// LCD module initialization riski: lcd_init(16); lcd_gotoxy(0,0); lcd_putsf("Silakan Bicara:"); while (1) {

for (n=0; n<25; n++) { ulang:

adc[n]=read_adc(0); if (adc[n]<=110) {goto ulang; }

else goto lanjut; lanjut:

delay_ms(20);

};

for (k=0; k<25; k++) { for (j=0; j<25; j++)

{ r[k]=r[k]+adc[j]*cos(6.28*k*j/25); i[k]=i[k]+adc[j]*sin(6.28*k*j/25); m[k]=sqrt((r[k]*r[k])+(i[k]*i[k])); };

};

for (s=0;s<25;s++)

(19)

C-5

{lcd_gotoxy(0,1); lcd_putsf("kanan"); delay_ms(2000); lcd_gotoxy(0,1); lcd_putsf("Accepted"); delay_ms(2000); }

else if ((h2<h1)&&(h2<h3)&&(h2<h4)&&(h2<h5)&&(h2<375)) {lcd_gotoxy(0,1); lcd_putsf("maju"); delay_ms(2000); lcd_gotoxy(0,1); lcd_putsf("Accepted"); delay_ms(2000); }

else if ((h3<h1)&&(h3<h2)&&(h3<h4)&&(h3<h5)&&(h3<375)) {lcd_gotoxy(0,1); lcd_putsf("kiri"); delay_ms(2000); lcd_gotoxy(0,1); lcd_putsf("Accepted"); delay_ms(2000); }

else if ((h4<h1)&&(h4<h2)&&(h4<h3)&&(h4<h5)&&(h4<375)) {lcd_gotoxy(0,1); lcd_putsf("mundur"); delay_ms(2000); lcd_gotoxy(0,1); lcd_putsf("Accepted"); delay_ms(2000); }

(20)

C-6

m[x]=0;

hasil=0; hasil2=0; hasil3=0; hasil4=0; hasil5=0; }; goto riski;

// Place your code here

(21)

C-7

PROGRAM PEMBUATAN DATABASE

/***************************************************** This program was produced by the

CodeWizardAVR V1.25.3 Professional Automatic Program Generator

© Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com

Project : Version : Date : 8/10/2010

Author : F4CG Company : F4CG Comments:

Chip type : ATmega32 Program type : Application Clock frequency : 4.000000 MHz Memory model : Small External SRAM size : 0 Data Stack size : 512

*****************************************************/

#include <mega32.h> #include <math.h> #include <stdio.h> #include <delay.h>

// Alphanumeric LCD Module functions #asm

.equ __lcd_port=0x15 ;PORTC #endasm

#include <lcd.h>

// Standard Input/Output functions #include <stdio.h>

#define ADC_VREF_TYPE 0x60

// Read the 8 most significant bits // of the AD conversion result

unsigned char read_adc(unsigned char adc_input) {

ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Start the AD conversion

ADCSRA|=0x40;

// Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0);

(22)

C-8

// Declare your global variables here

unsigned int k,n,adc[25],j; float r[25],i[25],m[25];

char buffer[33],buffer2[33],buffer3[33],buffer4[33],buffer5[33];

void main(void) {

// Declare your local variables here

// Input/Output Ports initialization // Port A initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;

DDRA=0x00;

// Port B initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00;

DDRB=0x00;

// Port C initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;

DDRC=0x00;

// Port D initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00;

DDRD=0x00;

// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected TCCR0=0x00;

TCNT0=0x00; OCR0=0x00;

// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer 1 Stopped // Mode: Normal top=FFFFh // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off

// Input Capture on Falling Edge // Timer 1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00;

(23)

C-9

TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00;

// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00;

TCCR2=0x00; TCNT2=0x00; OCR2=0x00;

// External Interrupt(s) initialization // INT0: Off

// INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;

// USART initialization

// Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: Off

// USART Transmitter: On // USART Mode: Asynchronous // USART Baud rate: 9600 UCSRA=0x00;

UCSRB=0x08; UCSRC=0x86; UBRRH=0x00; UBRRL=0x19;

// Analog Comparator initialization // Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;

SFIOR=0x00;

// ADC initialization

// ADC Clock frequency: 31.250 kHz // ADC Voltage Reference: AVCC pin // Only the 8 most significant bits of // the AD conversion result are used ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0x87;

(24)

C-10

while (1)

{

for (n=0; n<25; n++) { ulang:

adc[n]=read_adc(0); if (adc[n]<=110) {goto ulang; }

else goto lanjut; lanjut:

delay_ms(20); };

for (k=0; k<25; k++) { for (j=0; j<25; j++)

{ r[k]=r[k]+adc[j]*cos(6.28*k*j/25); i[k]=i[k]+adc[j]*sin(6.28*k*j/25); m[k]=sqrt((r[k]*r[k])+(i[k]*i[k]));

sprintf(buffer,"%3.1f %3.1f %3.1f %3.1f %3.1f",m[0],m[1],m[2],m[3],m[4]); lcd_gotoxy(0,0);

lcd_puts(buffer); delay_ms(500);

sprintf(buffer2,"%3.1f %3.1f %3.1f %3.1f %3.1f ",m[5],m[6],m[7],m[8],m[9]); lcd_gotoxy(0,0);

lcd_puts(buffer2); delay_ms(500);

sprintf(buffer3,"%3.1f %3.1f %3.1f %3.1f %3.1f ",m[10],m[11],m[12],m[13],m[14]); lcd_gotoxy(0,0);

lcd_puts(buffer3); delay_ms(500);

sprintf(buffer4,"%3.1f %3.1f %3.1f %3.1f %3.1f ",m[15],m[16],m[17],m[18],m[19]); lcd_gotoxy(0,0);

lcd_puts(buffer4); delay_ms(500);

sprintf(buffer5,"%3.1f %3.1f %3.1f %3.1f %3.1f ",m[20],m[21],m[22],m[23],m[24]); lcd_gotoxy(0,0);

lcd_puts(buffer5); delay_ms(500); };

};

// Place your code here

(25)

1

Universitas Kristen Maranatha

BAB I

PENDAHULUAN

Pada bab ini berisi latar belakang, identifikasi masalah, perumusan masalah,

tujuan, pembatasan masalah, spesifikasi alat, dan sistematika penulisan.

1.1

Latar Belakang

Seiring dengan perkembangan zaman, sistem pengenalan suara sangat

berguna dalam kehidupan sehari-hari seperti dalam menyalakan sebuah

lampu, orang hanya menepuk tangannya dan lampu pun akan menyala. Sistem

pengenalan suara pun sangat berguna dalam mengontrol sesuatu, seperti

mengontrol sebuah robot. Misal, untuk menggerakan robot maju ke depan,

maka orang hanya mengucapkan kata maju, sehingga robot pun akan maju ke

depan sesuai dengan perintah yang diberikan.

(26)

BAB I PENDAHULUAN

2

Universitas Kristen Maranatha

1.2

Identifikasi Masalah

Identifikasi masalah dalam pembuatan Tugas Akhir ini adalah cara

mengaplikasikan mikrokontroler ATmega32 agar dapat menampilkan kata

yang diucapkan pada LCD display.

1.3

Perumusan Masalah

Perumusan masalah dalam pembuatan Tugas Akhir ini adalah:

1. Bagaimana cara mendapatkan karakteristik spektrum dari sinyal suara yang

diucapkan dengan metode FFT (

Fast Fourier Transform

)?

2. Bagaimana cara mengaplikasikan mikrokontroler ATMega32 agar dapat

menampilkan kata pada LCD display sesuai dengan apa yang diucapkan?

1.4

Tujuan

Tujuan yang hendak dicapai dari pembuatan Tugas Akhir ini adalah:

1. Dapat mendapatkan karakteristik spektrum dari sinyal suara yang

diucapkan dengan metode FFT (

Fast Fourier Transform

).

2. Dapat mengaplikasikan mikrokontroler ATMega32 agar dapat

menampilkan kata pada LCD display sesuai dengan apa yang diucapkan.

1.5

Pembatasan Masasah

Pembatasan masalah dalam pembuatan Tugas Akhir ini adalah:

1. Jumlah kata yang dikenali sebanyak lima buah kata, yaitu

kanan

,

kiri

,

maju

,

mundur

, dan

stop

.

2. Keadaan di sekitar tidak berisik.

(27)

BAB I PENDAHULUAN

3

Universitas Kristen Maranatha

4. Waktu yang dibutuhkan untuk mengucapkan kata yang dikenali sekitar 1.5

detik.

1.6

Spesifikasi Alat yang Digunakan

Spesifikasi alat pada pembuatan Tugas Akhir ini adalah:

1. Microphone

2. Penguat

Microphone

3. Mikrokontroler ATmega32

4. LCD Display 16x2

1.7

Sistematika Penulisan

Laporan Tugas akhir ini disusun dengan sistematika sebagai berikut:

Bab I Pendahuluan

Pada bab ini berisi tentang latar belakang, identifikasi masalah, perumusan

masalah, tujuan, pembatasan masalah, spesifikasi alat yang digunakan, dan

sistematika penulisan laporan tugas akhir.

Bab II Landasan Teori

Pada bab ini berisi teori-teori penunjang, yaitu berupa teori FFT (

Fast Fourier

Transform

), teori RMSE (

Root Mean Square Error

), teori sinyal suara, teori

microphone

, teori mikrokontroler ATMega32, dan teori Op-Amp.

Bab III Perancangan dan Realisasi

(28)

BAB I PENDAHULUAN

4

Universitas Kristen Maranatha

Bab IV Data Pengamatan dan Analisis Data

Pada bab ini berisi tentang gambar sinyal suara untuk tiap kata, gambar sinyal

input dan output pada penguat

microphone

, serta data pengamatan dan

analisis dari alat yang dibuat berdasarkan persentase keberhasilan dari

beberapa pengujian yang dilakukan.

Bab V Kesimpulan dan Saran

(29)

58

Universitas Kristen Maranatha

BAB V

KESIMPULAN DAN SARAN

Pada bab ini berisi kesimpulan dari Tugas Akhir dan saran-saran yang

perlu dilakukan untuk perbaikan di masa mendatang.

V.1

Kesimpulan

Dalam merealisasikan dan memprogram sistem pengenalan

ucapan, dapat disimpulkan bebarapa hal seperti berikut :

1. Sistem pengenalan ucapan dapat diralisasikan menggunakan

mikrokontroler ATMega32 dengan menggunakan metode FFT (

Fast

Fourier Transform

).

2. Persentase keberhasilan dari uji coba dalam Tugas Akhir ini untuk kata

kanan sebesar 89.33%, persentase keberhasilan untuk kata kiri sebesar

70.67%, persentase keberhasilan untuk kata maju sebesar 91.33%,

persentase keberhasilan untuk kata mundur sebesar 66.67%, dan

persentase keberhasilan untuk kata stop sebesar 88%.

3. Kata maju memiliki persentase keberhasilan yang paling tinggi, yaitu

91.33% dan kata mundur memiliki persentase keberhasilan yang paling

kecil, yaitu 66.67%.

4. Hasil dari tiap pengujian berbeda-beda, hal ini disebabkan karena intonasi,

kecepatan bicara, dan keras lemahnya suara saat mengucapkan suatu kata

selalu berbeda-beda.

V.2

Saran

Saran-saran yang dapat diberikan untuk perbaikan dan pengembangan

Tugas Akhir ini di masa mendatang adalah :

1. Proses pengenalan tidak dilihat dari sisi spektrumnya saja tetapi dilihat

dari sisi yang lainnya.

(30)

BAB V KESIMPULAN DAN SARAN

59

(31)

60

Universitas Kristen Maranatha

DAFTAR PUSTAKA

1. Andrianto, Heri,

Pemrograman Mikrokontroler AVR ATMega16

Menggunakan Bahasa C

, 2008.

2. Basuki, Achmad.

Pengolahan Citra Digital Menggunakan Visual Basic

.

Graha Ilmu, 2005.

3. Pitas, Ioannis.

Digital Image Processing Algorithms

. Prentice Hall, 1993.

4. Stefanus, Wiliam.

Diktat Kuliah Operational Amplifier (Op-Amp),

2008.

5.

http://courses.cit.cornell.edu/ee476/FinalProjects/

6.

http://emy-maidah.blogspot.com/2009/10/jenis-jenis-microphone.html

7.

http://en.wikipedia.org/wiki/Mean_squared_error

8.

http://go-kerja.com/proses-produksi-suara-manusia/

9.

http://id.wikipedia.org/wiki/Mikrofon

10.

http://jfkoernia.wordpress.com/2010/08/07/microphone-prinsip-kerja/

11.

http://kursusaudio.wordpress.com/category/bab-1-teori-suara/

12.

Referensi

Dokumen terkait

The primary aim of this study is to document the demographic parameters, the predominant injury mechanisms and severity, geographical positioning data (i.e coordinates of

Tujuan diadakannya  workshop tersebut adalah  untuk membahas pengembangan pengelolaan sumber daya air saat ini di Sungai Mekong, menguraikan pentingnya sumber daya air..

The aim of this paper is to propose a fuzzy logic model for landslide susceptibility assessment in District Mansehra of Pakistan using the available information and the expert

Hasil analisis membuktikan bahwa coeficient corelasi sebesar 0,799 dan nilai p value sebesar 0,003 (P&lt;5%), sehingga dapat dinyatakan ada hubungan

Dengan hal hal tersebut maka peneliti termotivasi untuk mengambil judul “ Pengaruh Pajak Hotel, Pajak Restoran dan Pajak Hiburan Terhadap Pendapatan Asli Daerah

Orang yang mempunyai golongan darah AB tidak dapat memberikan. darahnya kepada orang

CHRISTINA SAGALA: Dampak Pengerukan Pasir Terhadap Kelimpahan Plankton dengan Parameter Fisika Kimia di Hulu Sungai Belawan, Kecamatan Pancur Batu, Kabupaten Deli Serdang..

Teknologi pengendalian lalat kacang yang efektif dan efisien adalah cara kimiawi dengan menggunakan insektisida yang bersifat sistemik (monokrotofos), diaplikasikan pada pagi hari