21
29 BAB III PEMBAHASAN 3.1. Tinjauan Umum Alat Untuk memudahkan dalam pembuatan desain sistem, langkah pertama adalah membuat diagram blok sebagai acuan dimana diagram blok mempunyai fungsi untuk menjelaskan susunan sistem yang saling berkaitan sehingga membentuk sistem dari alat yang dibuat yaitu desain perangkat keras (hardware) dan perangkat lunak (software). 3.2. Blok Rangkaian Pembuatan blok diagram merupakan acuan dimana masing-masing blok mempunyai keterkaitan satu dengan yang lain sehingga membentuk suatu sistem kontrol yang berpusat pada mikrokontroler . POWER SUPLLY MIKROKONTROLER ATMEGA 16 OUTPUT - BUZZER - LCD SENSOR ULTRASONIK Gambar III.1. Blok Diagram Rangkaian

O UTP UT MIKR O KO NTR O LE R PO WE R S U LY ATME G A 1 6 · dengan konsumsi daya rendah oprasi dasar pada pada LCD adalah intruksi mengakses proses internal, intruksi menulis data,

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

29

BAB III

PEMBAHASAN

3.1. Tinjauan Umum Alat

Untuk memudahkan dalam pembuatan desain sistem, langkah pertama adalah

membuat diagram blok sebagai acuan dimana diagram blok mempunyai fungsi untuk

menjelaskan susunan sistem yang saling berkaitan sehingga membentuk sistem dari

alat yang dibuat yaitu desain perangkat keras (hardware) dan perangkat lunak

(software).

3.2. Blok Rangkaian

Pembuatan blok diagram merupakan acuan dimana masing-masing blok

mempunyai keterkaitan satu dengan yang lain sehingga membentuk suatu sistem

kontrol yang berpusat pada mikrokontroler .

POWER SUPLLYMIKROKONTROLER

ATMEGA 16

OUTPUT

- BUZZER

- LCD

SENSOR

ULTRASONIK

Gambar III.1. Blok Diagram Rangkaian

30

Untuk penjelasan blok diagram alat yang dibuat adalah sebagai berikut :

1. Power Suply

Blok ini berfungsi sebagai sumber daya untuk disalaurkan kepada semua rangkaian.

Pada blok ini, Tegangan diturunkan dengan transformator step down dan terdapat

dua tegangan output yaitu tegangan 5Vdc dan 12 Vdc.

2. Sensor Ultrasonik

Sensor Ultrasonik merupakan inputan yang akan mendeteksi objek yang

selakanjutnya akan dikirim ke mikrokontroler untuk diproses.

3. Mikrokontroler ATMEGA 16

Mikrokontroler Atmega 16 digunakan untuk mengontrol inputan yang masuk

kerangkaian kontroler yang akan di deteksi di proses dan di keluarkan hasilnya

melalui LCD dan alarm.

4. Rangkaian Output

Rangkaian output terdiri dari LCD 16x2 dan buzzer .

31

3.3. Gambar Rangkain

Gambar rangkaian skema keseluruhan pada pembuatan alat pendeteksi

kendaraan yang a kan mendahului dapat di lihat pada gambar III.2.

Gambar III.2. Rangkaian Alat

3.4. Cara Kerja Alat

Pada bagian ini akan di bahas seraca rinci mengenai cara kerja alat yang

dibuat. Cara kerja alat tersebut meliputi catu daya, proses dan output. Berikut adalah

carakerja masing-masing rangkaian yang ada pada alat.

3.4.1. Catu Daya (Power Supply)

Pada rangkaian power suply ini digunakan trafo 1Amper jenis step down

dengan sumber tegangan listrik 220 Volt yang diturunkan menjadi 12 Volt AC dan di

32

searahkan dengan dioda bridge menjadi 12 Vdc dan kemudian di perkecil lagi

menggunkan IC 7805 sehingga keluarannya di perhalus menjadi 5 Vdc.

Rangkaian ini diguankan sebagai sumber tegangan untuk seluruh rangkaian,

catu daya dengan keluaran 5 Vdc digunakan untuk sumber tegangan seluruh

rangkaian termasuk diantaranya sistem minimum, LCD, Buzzer dan Sensor.

Gambar III.3. Rangkaian Power Supply

3.4.2. Rangakaian Sistem Minimum

Pada rangkaian ini yang berfungsi sebagai pusat kendali dari seluruh sistem

komponen utama adalah mikrokontroler atmega16. Disinilah semua program yang

telah dibuat disimpan untuk kemudian dijalankan sehingga seluruh rangkaian dapat

berjalan seuaia dengan apan yang kita inginkan.

Port yang digunakan yaitu Port A0-A3 sebagai input dari pin triger sensor

ultrasonik, port B sebagai output ke LCD, port D0-D3 sebagai output dari pin echo

sensor ultrasonik sebagai penerima sinyal pantulan dari frekuensi triger, port D4

sebagai output ke alarm atau buzzer . untuk dapat membaca inputan dan menjalankan

33

perintah output Atmega 16 ini memerlukan program Code Vision AVR dan untuk

mengupload program di gunakan AVR OspII.

Gambar III.4. Rangkaian Sistem Minimum

3.4.3. Rangkaian Sensor

Rangkaian sensor pada alat ini terdiri dari sensor ultrasonik HC-SR04dan

pada keadaan normal sensor ini akan berloigka 1 (high) ketika ada objek yang

melintas diarea pemancara sinyal sensor, maka sensor akan menghitung jarak dari

objek menerima pantulan dari objek proses perhitungannya menggunakan data yang

34

sudah terdapat pada librari yang terdapat pada sensor HC-SR04 proses pantulan

inilah yang kemudian di kirimkan ke mikrokontroler untuk di proses .

Setelah mikrokontroler menerima sinyal dari sensor, kemudian mikrokontroler

akan menjalankan sistem sesuai dengan perintah program. Jika sensor berlogika 1

(high) maka buzzer akan menyala selama objek berada pada area sensor.

Gambar III.5. Rangkaian Sensor

3.4.4. Rangkaian LCD

Rangkaian LCD dengan mikrokontroler atmega16 ini mempunyai 16 kaki

pin (16 pin header) dengan tata letak urutannya sesuan sesuai konfigurasi kaki LCD

yaitu pin 1 sebagai grounding , pin 2 sebagai VCC, pin 3 sebagai kontras (trimport)

pin 4 sebagai RS (register select) dan pin 5 untuk R/W (read /write).

Akses LCD yang digunakan bertipe 4, bit dengan demikian hanya pin data pin

4 sampai 7 yang di hubungkan ke port mikrokontroler.

35

LCD yang digunakan adalah jenis LCD modul dengan tampilan 16 x2 baris

dengan konsumsi daya rendah oprasi dasar pada pada LCD adalah intruksi mengakses

proses internal, intruksi menulis data, membaca kondisi sibuk, dan intruksi membaca

data.

Gambar III.6.Rangkaian LCD

3.4.5. Rangkaian Buzzer

Rangkain ini berfungsi sebagai alarm kepada pengguna tentang adanya benda

(kendaraan) yang akan mendahului dari arah belakang alarm pada rangkaian ini

menggunakan buzzer 5 Vdc yang tidak terlalu berisik sehingga tidak mengganggu

pendengaran selain itu di perlihatkan pula dengan tampilan LCD tentang keberadaan

atau posisis dari kendaraan yang mendahului tadi baik dari sebelah kiri atau pun

kanan.

36

Ketika mikrokontroler menerima sinyal logika 1 (high) dari sensor ultrasonik

maka mikrokontroler akan meneruskan logika 1 (high) menjadi output ke alarm atau

buzzer sehingga pengguna bisa lebih berhati-hati pada saat bekendara agar tidak salah

dalam pengambilan keputusan baik saat hendak mendahului maupun akan di dahului.

Gambar III.7. Rangkaian Buzzer

37

3.5. Perancangan Program

3.5.1. Flowchart Program

START

INISIALISASI

SISTEM

OBJEK

MENDEKAT

ADA

PERGERAKAN ?

LEWAT LEBIH

DARI 20 DETIK?

BUZER

BERHENTI

END

N

N

Y

SENSOR

DETECTIONS

OBJEK BERGERAK

-BUZER ON

- LCD ON

Y

Gambar III.8. Flowchart Program

38

Program diawali dengan menyalakan power yaitu pemberian catudaya setelah

itu muncul tampilan pembuka dan bunyi buzzer dua kali d lanjutkan dengan

pembacaan sensor – sensor.

1. Jika terdapat objek pada area sensor 4 (kanan belakang ) maka sensor akan

menyala dan ditampilkan peringatan pada layar LCD (belakang kanan).

2. Jika terdapat objek pada area sensor 3 (Kiri belakang ) maka sensor akan

menyala dan ditampilkan peringatan pada layar LCD ( belakang kiri).

3. Jika terdapat objek pada area sensor 2 (kanan depan ) maka sensor akan

menyala dan ditampilkan peringatan pada layar LCD depan kanan).

4. Jika terdapat objek pada area sensor 1 (kiri depan ) maka sensor akan

menyala dan ditampilkan peringatan pada layar LCD (depa kiri).

.

39

3.5.2. Konstruksi Sistem (coding)

Dalam menjalankan alat pendeteksi kendaraan yang akan mendahului, di

perlukan program yang dimasukan dalam mikrokontroler. Pada pembuatan alat ini

menggunakan aplikasi CVAPR. Berikut penjelasan kontruksi sistem (coding).

1. Inisiasi Program

Untuk inisiasi program yang di buat, dalam pembuatan alat pendeteksi

kendaraan yang akan mendahului dapat dilihat sebagai berikut:

#include <mega16.h>

#include <stdio.h>

#include <delay.h>

#asm

.equ __lcd_port=0x18 ;PORTB

#endasm

#include <lcd.h>

Penjelasan dari listing program diatas adalah:

#include <mega16.h> :merupakan perintah untuk memanggil library fungtions IC

Atmega 16

#include <stdio.h> :merupakan perintah untuk memanggil library fungtions pada

bahasa C

#include <delay.h> merupakan perintah untuk memanggil library fungtions dilay

#asm : mendeklarasikan penggunaan bahasa asembler

.equ __lcd_port=0x18 ;PORTB :pemilihan output LCD pada PORTB

#endasm :akhir penggunaan bahasa asembler

40

Deklarasi variabel

unsigned int konter0=0; mendeklarasikan nilai variabel dengan satuan bilangan bulat

pada sensor 1

unsigned char jarak0; mendeklarasikan nilai variabel berupa karakter yang

diperoleh dari perhitungan konter 0 dengan rumus baku

sensor.

unsigned char jarak01; mendeklarasikan nilai variabel bayangnan berupa karakter

yang diperoleh dari perhitungan konter 0 dengan rumus

baku sensor.

unsigned int konter1=0; mendeklarasikan nilai variabel dengan satuan bilangan

bulat pada sensor 2

unsigned char jarak1; mendeklarasikan nilai variabel berupa karakter yang diperoleh

dari perhitungan konter 0 dengan rumus baku sensor

unsigned char jarak11; mendeklarasikan nilai variabel bayangnan berupa karakter

yang diperoleh dari perhitungan konter 0 dengan rumus

baku sensor.

unsigned int konter2=0; mendeklarasikan nilai variabel dengan satuan bilangan

bulat pada sensor 3

unsigned char jarak2; mendeklarasikan nilai variabel berupa karakter yang diperoleh

dari perhitungan konter 0 dengan rumus baku sensor

41

unsigned char jarak21; mendeklarasikan nilai variabel bayangnan berupa karakter

yang diperoleh dari perhitungan konter 0 dengan rumus

baku sensor.

unsigned int konter3=0; mendeklarasikan nilai variabel dengan satuan bilangan bulat

pada sensor 3

unsigned char jarak3; mendeklarasikan nilai variabel berupa karakter yang diperoleh

dari perhitungan konter 0 dengan rumus baku sensor

unsigned char jarak31; mendeklarasikan nilai variabel bayangnan berupa karakter

yang diperoleh dari perhitungan konter 0 dengan rumus

baku sensor.

unsigned char text1[16]; Deklarasi Texl LCD

unsigned char text[16]; Deklarasi Tekt LCD

a) Fungsi perintah program pada sensor 1 (kiri depan)

unsigned char baca_kiri_d() variabel konter0=0;

PORTA.0=1;

delay_us(15);

PORTA.0=0;

while(PIND.0==0){};

while(PIND.0==1)

{konter0++;

};

jarak0=konter0*10/100; // hasil konversi dengan rumus regresi linier

return jarak0;

42

}

b) Fungsi perintah program pada sensor 2 (Kanan Depan)

signed char baca_kanan_d(){

konter1=0;

PORTA.1=1;

delay_us(15);

PORTA.1=0;

while(PIND.1==0){};

while(PIND.1==1)

{konter1++;

};

jarak1=konter1*10/100; // hasil konversi dengan rumus regresi linier

return jarak1;

}

c) Fungsi perintah program pada sensor 3 (kiri Belakang)

signed char baca_kiri_b(){

konter2=0;

PORTA.2=1;

delay_us(15);

PORTA.2=0;

while(PIND.2==0){};

while(PIND.2==1)

{konter2++;

43

};

jarak2=konter2*10/100; // hasil konversi dengan rumus regresi linier

return jarak2;

}

d) Fungsi perintah program pada sensor 1 (Kanan Belakang)

signed char baca_kanan_b(){

konter3=0;

PORTA.3=1;

delay_us(15);

PORTA.3=0;

while(PIND.3==0){};

while(PIND.3==1)

{konter3++;

};

jarak3=konter3*10/100; // hasil konversi dengan rumus regresi linier

return jarak3;

}

{

PORTA=0x00; merupakan perintah untuk memberikan awalan logika 0 (nol) pada

semua PORT A

DDRA=0xFF; merupakan perintah untuk menjadikan semua PORT A sebagai inpu

PORTB=0x11;

44

DDRB=0x00; merupakan perintah untuk menjadikan semua PORT B sebagai

output

PORTD=0xFF; merupakan perintah untuk memberikan awalan logika 0 (nol) pada

semua PORT

DDRD=0x00; merupakan perintah untuk menjadikan semua PORT sebagai output

;

/lcd_init(16); Inisiasi modul LCD dengan ukuran 16x2 (16 kolom,2baris)

Program Utama

lcd_clear(); Perintah untuk mehapus LCD

PORTA.4=1; Untuk menyalakan buzzer

delay_ms(20); Lama waktu buzzer menyala

PORTA.4=0; Untuk mematikan

lcd_gotoxy(0,0);

lcd_puts(" Bismillah "); Tampilan LCD bertulis “Bismilah”

lcd_gotoxy(0,1);

lcd_puts(" TA 2016 ");

delay_ms(300);

lcd_clear();

PORTA.4=1;

delay_ms(20);

PORTA.4=0;

lcd_gotoxy(0,0);

lcd_puts("SENSOR KENDARAAN");

45

lcd_gotoxy(0,1);

lcd_puts("YANG MENDAHULUI");

delay_ms(300);

lcd_clear();

PORTA.4=1;

delay_ms(20);

PORTA.4=0;

lcd_gotoxy(0,0);

lcd_puts(" Wahyu Gunawan ");

lcd_gotoxy(0,1);

lcd_puts(" 13130795 ");

delay_ms(300);

lcd_clear();

while (1) :perintah perulangan program, agar program berjalan realtime.

{

jarak01=baca_kiri_d(); :variabel "jarak01" memanggil isi dari variabel

"baca_kiri_d"

sprintf(text,"jarak= %3d cm", jarak01); cetak karakter pada modul LCD.

jarak11=baca_kanan_d();

sprintf(text,"jarak= %3d cm",jarak11);

46

jarak21=baca_kiri_b();

sprintf(text,"jarak= %3d cm",jarak21);

jarak31=baca_kanan_b();

sprintf(text,"jarak= %3d cm",jarak31);

if (jarak01<5) kondisi pemilihan. jika hasil perhitunngan vaariabel jarak01 kurang

dari 5

{

PORTA.4=1;

delay_ms(50);

PORTA.4=0;

sprintf(text1," Kiri Depan");

}

if (jarak11<5)

{

PORTA.4=1;

delay_ms(50);

PORTA.4=0;

sprintf(text1," Kanan Depan");

}

if (jarak21<5)

{

47

PORTA.4=1;

delay_ms(50);

PORTA.4=0;

sprintf(text1," Kiri Belakang ");

}

if (jarak31<5)

{

PORTA.4=1;

delay_ms(50);

PORTA.4=0;

sprintf(text1," Kanan Belakang ");

};

lcd_clear();

lcd_gotoxy(0,0);

lcd_puts(text1);

lcd_gotoxy(0,1);

lcd_puts(" ! WASPADA ! ");

delay_ms(30);

};

48

3.6. Hasil Percobaan

Untuk mengetahui alat yang dibuat dapat berfungsi sesuai dengan yang

diharapkan maka perlu dilakukan pengujian alat, Hasil pengujian alat akan dijelaskan

berikut ini:

1. Pengujian Catu Daya

Pengujian pada catu daya ini perlu dilakukan untuk memastikan tidak

terjadinya kerusakan komponen pada rangkaian akibat arus yang tidak sesuai atau

kelebihan tegangan pengujian ini mengunakan alat pengukur tegangan (multitester)

selain meminimalisir kesalahan pada tegangan pengukuran catu daya ini di lakukan

untuk mengetahui apakah rangkaian catu daya ini berfungsi dengan baik atau tidak.

Hasil pengujian catu daya dapa dilihat pada tabel III.1.

Tabel III.2

Pengujian Catu Daya 5 volt DC

No Tegangan yang diukur Hasil Pengukuran

1 Tegangan sekunder trafo 12 volt AC

2 Tegangan penyearah sebelum masuk IC

regulator 11,8 volt DC

3 Tegagan keluaran IC regulator 4,7 volt DC

2. Pengujian sensor

Pada alat ini, mikrokontroler atmega 16 digunakan sebagai pusat kendali

atau kontrol kesekuruhan sistem meliputi pembacaan sensor menghidupkan alarem

dan tampilan pada LCD.

49

Saat salah satu sensor mendeteksi ada objek atau kendaraan semua output

akan menerima perintah dari mikrokontroler untuk menyala sebagai pemberi

peringatan kepada pengguna akan kedatangan kendaraan dari belakang dan di

tampilkan pada layar LCD dalam bentuk tulisan agar waspada.

Tabel III.2

Hasil Pengujian Jarak Sensor

Percobaan Jarak (cm) Respon Sensor Keterangan

1 5 Sangat Kuat Terdeteksi

2 10

Sangant Kuat

Terdeteksi

3 15 Sangat kuat Terdeteksi

4 25 Kuat Terdeteksi

5 30 Kuat Terdeteksi

6 35 Lemah Tidak Terdeteksi

7 40 Lemah Tidak Terdeteksi

Pada tabel uji coba diatas menujukan bahwa, dari jarak 5 sampai dengan 30

centimeter terjadi respon yang kuat terhadap adanya objek yang memasuki area

sensor dan alarem berbunyi sedangkan pada jarak 35 centimeter lebih terjadi respon

yang lemah pada pembacaan sensor dan menyebabkan sensor gagal membaca dan

menyalakan alarm.