REALISASI ALAT
Pembuatan Sensor Parkir
1. Proses Pembuatan Alat
Pada proses pembuatan suatu rangkaian ,tahapan yang
terpenting adalah perancangan yang baik dan sistematik akan memberikan
kemudahan dalam proses penyelesaian .Sehingga tujuan dari perancangan peralalatan
ini yaitu mendapatkan suatu system yang benar efisien dan baik seperti yang
diharapkan .Pada perancangan kali ini penulis akan memulai dari penempatan
komponen-komponen Elektro pada sebuah papan project / bread board
(LCD,LED,BUZZER dan komponen pedukung lainya) di port boardArduino. Adapun
komponen-komponen tersebut adalah sebagai berikut :
1.
Sensor Ultra sonic, di gunakan untuk membaca jarak objek dengan
kendaraaan.
2. LCD (Liquid Crystal Display) 1602,
sebagai display penampil jarak hasil pengukuran dari sensor ultra sonic.
3.
LED Light Emitting Dioda yang memancarkan sinar berwarna hijau dan
kuning sebagai tanda .
4.
LED Light Emitting Dioda yang memancarkan sinar berwarna merah sebagai
tanda bahwa jarak kendaraan pada posisi yang rawan terjadi benturan
5. Mini Buzzer, di gunakan sebagai
alarm peringatan tanda jarak kendaraan pada posisi tidak aman dimana dia
bekerja setelah jarak yang terbaca dari hasil pengukuransensor ultra sonic
menujukan angka yang sesuai dengan yang telah di program sebelumnya.
6. Perancangan catu daya, sebagai
sumber tegangan Dari tiap-tiap komponen hardwere yang di gunakan dengan
fungsi-fungsinya yang telah di jelaskan di atasdapat di gambarkan secara
ringkas dengan diagram blok sebagai berikut.
7. Relay , digunakan sebagai alat
penghubung ( kontak ) yang menggerakan solenoid / motor servo .
8. Selenoid , sebagai alat yang akan
menarik tuas rem .sehingga roda akan berhenti
.
LCD 1602 akan
menampilkan informasi tentang keberadaan jarak benda atau objek yang ada di
depan dan belakang kendaraan kemudian, LED berwarna hijau, kuning dan merah
sebagai display tambahan selain tampilan pada layar LCD dan mini buzzer sebagai
alarm tanda jika sensor pada kendaraan mendeteksi keberadaan benda atau obek
yang berada di depan dan belakang kendaraan.
LCD akan menampilkan kata
“JARAK AMAN” dan LED hijau akan menyala pada saat awal start, kemudian LCD akan
menampilkan jarak yang terbaca oleh sensor ultra sonik yang di pasang pada
bagian depan dan belakang kendaraan. apabila salah satu dari sensor ultra sonic
tersebut mendeteksi benda atau objek yang ada di sekitarnya, jika jarak benda
yang terdeteksi masih dalam keadaan jarak aman atau lebih dari 20cm atau
seperti yang sudah di set sebelumnya buzzer tidak berbunyi. Tapi, jika jarak
yang terbaca menunjukan kurang kurang dari 20 yang berarti jarak dalam keadaan
tidak aman, maka buzzer akan berbunyi dan lampu merah berkedip per 10s atau
sesuai dengan yang di seting pada progran, kemudian jika jarak benda atau objek
yang terdeteksi semakin dekat maka bunyibuzzer dan kedipan LED berwarna merah
semakin cepat, sesuai dengan pengaturan awal pada program.
2.
Perancangan Hardware
Pada perancangan hardwere ini, pertama tama harus disiapkan
bahan bahan yang diperlukan .Bahan utama yaitu Board Arduino Uno R 3 ,LCD 16 x
2 ,serta kabel kabel penghubung ,penyusun menggunakan port-port digital dari
papan arduino uno untuk di hubungkan pada LCD, sensor ultra sonic lampu LED
serta buzzer.
Untuk memudahkan dalam penulisan perancangan hardware, pada
penyusunan laporan ini, penulis memecah bagian – bagian rangkaian, Rangkaian –
rangkaian tersebut antara lain terdiri dari :
1. Perancangan rangkaian power supply
2. Perancangan Rangkaian LCD 1602
3. Perancangan Rangkaian sensor Ultra sonic
4. Perancangan pada Board plan rangkaian
2.1. Perancangan Rangkaian Power
Supply
Untuk dapat mengoprasikan alat pendeteksi jarak aman kendaraan
ini memerlukan power suplay 7-12 volt, maka dalam rangkaian di tambahkan
rangkaian untuk penstabil tegangan yaitu :
•Tegangan
9 volt DC
Tegangan
9 volt DC digunakan untuk membrikan supply tegangan pada Arduino, karena akan
bekerja secara maksimal jika mendapat tegangan diantara 7 – 12 volt. Komponen
yang digunakan dalam rangkaian power supply ini adalah IC regulator 7809,
dengan aplikasi rangkaian sebagai berikut:
Output
dari tegangan ini digunakan untuk memberikan tegangan supply dari Arduino,
karena arduino bekerja cukup stabil dengan tegangan 7 – 12 volt, meskipun dalam
spesifikasinya tegangan input 4 volt – 30 volt.
2.2. Perancangan Rangkaian sensor
Ultra Sonik
Sensor ultra sonic adalah sebuah alat yang bekerja
berdasarkan prinsip pantulan gelombang suara sehingga dapat mendeteksi
keberadaan suatu objek di depanya. Sensor ini bekerja di daerah batas gelombang
suara dari 40 KHz sampai dengan 400 KHz. sensor ultra sonic memerlukan catu
daya 5v untuk dapat bekerja.arus pada mode siaga : < 2 mA lebar sudut
deteksi ± 15º hingga mempunyai jarak deteksi akurat mencapai 1m dapat
mendeteksi (namun kurang presisi) hingga 3m.
2.3. Perancangan LCD
Dalam tugas akhir ini penulis menggunakan LCD 16 x 2, karena
kompenen ini mampu menanpilkan 2 baris karakter yang masing-masing dapat
menampilkan 16 karakter. Dengan penggunaan port-portnya seperti pada gambar
dibawah.
Perancangan sofware prototype alat pendeteksi jarak aman
pada kendaraan ini menggunakan bahasa C/C++ yang disederhanakan. Dalam
prototype ada beberapa pemrogaman yang dibutuhkan antara lain:
3.1. Pemrogaman LCD
Untuk dapat menampilkan kata / tulisan pada LCD 16 x 2 di
butuhkan pemrograman
3.2.
Pemrograman Sensor Ultra Sonik
Untuk dapat mendeteksi sebuah objek atau
benda pada sensor di berikan program.
3.3.
Pemrograman Arduino
Dalam proses ini langkah yang harus diperhatikan
adalah harus sudah ditentukan cara kerja dari alat tersebut .Pemrograman bisa
dilakukan dengan memasukan angka angka yang diinginkan ke dalam board arduino
uno.Adapun program tersebut adalah sebagai berikut :
#include
<LiquidCrystal.h>
//#include
<NewPing.h>
#include
<Ultrasonic.h>
LiquidCrystal
lcd(12, 11, 10, 5, 4, 3);
//NewPing
sonarDepan(6, 7, 200);
//NewPing
sonarBelakang(9, 8, 200);
Ultrasonic
ultrasonicBelakang(9,8);
Ultrasonic
ultrasonicDepan(6,7);
int
relay = 2;
int
dangerLed = 1;
int
readyLed = 0;
int
buzzer = 13;
void
setup()
{
lcd.begin(16, 2);
pinMode(relay, OUTPUT);
pinMode(dangerLed, OUTPUT);
pinMode(readyLed, OUTPUT);
pinMode(buzzer, OUTPUT);
lcd.setCursor(0,0);
lcd.print("Bismillah.....");
for(int geser = 15; geser>=0; geser--)
{
lcd.print("Bismillah.....");
lcd.setCursor(geser,1);
lcd.print("Accident Prevention
");
delay(250);
lcd.clear();
}
for(int geser = -1; geser>=-21; geser--)
{
lcd.print("Bismillah.....");
lcd.setCursor(geser,1);
lcd.print("Accident Prevention &
Security System");
delay(250);
lcd.clear();
}
for(int geser = -1; geser>=-16; geser--)
{
lcd.print("Bismillah.....");
lcd.setCursor(geser,1);
lcd.print(" Security System");
delay(250);
lcd.clear();
}
}
int
jarakDepan, jarakBelakang;
int
tunda, kecepatanKedip;
void
loop()
{
/*
char lcdBuff[16];
lcd.setCursor(0, 1);
lcd.print(millis() / 1000);
lcd.setCursor(0, 0);
sprintf(lcdBuff,"%3d",sonarDepan.ping_cm());
lcd.print(lcdBuff);
lcd.setCursor(10,0);
sprintf(lcdBuff,"%3d",sonarBelakang.ping_cm());
lcd.print(lcdBuff);
digitalWrite(relay, LOW);
digitalWrite(dangerLed, LOW);
digitalWrite(buzzer, LOW);
digitalWrite(readyLed, LOW);
delay(1000);
digitalWrite(buzzer, HIGH);
digitalWrite(dangerLed, HIGH);
digitalWrite(relay, HIGH);
digitalWrite(readyLed, HIGH);
delay(1000);
*/
char lcdBuff[16];
lcd.setCursor(0,0);
lcd.print("Depan");
lcd.setCursor(1, 1);
sprintf(lcdBuff,"%3d
cm",ultrasonicDepan.Ranging(CM));
lcd.print(lcdBuff);
lcd.setCursor(8,0);
lcd.print("Belakang");
lcd.setCursor(10,1);
sprintf(lcdBuff,"%3d
cm",ultrasonicBelakang.Ranging(CM));
lcd.print(lcdBuff);
jarakDepan = ultrasonicDepan.Ranging(CM);
jarakBelakang =
ultrasonicBelakang.Ranging(CM);
if(jarakDepan > 20 &&
jarakBelakang > 20)
{
digitalWrite(readyLed, HIGH);
digitalWrite(relay, LOW);
digitalWrite(buzzer, LOW);
digitalWrite(dangerLed, LOW);
}
else if((jarakDepan <= 20 &&
jarakDepan > 10) || (jarakBelakang <= 20 && jarakBelakang >
10))
{
digitalWrite(readyLed, LOW);
digitalWrite(relay, LOW);
tunda= millis()/500;
kecepatanKedip = tunda%2;
if(kecepatanKedip == 0)
{
digitalWrite(dangerLed, HIGH);
digitalWrite(buzzer, HIGH);
}
else
{
digitalWrite(dangerLed, LOW);
digitalWrite(buzzer, LOW);
}
}
else if((jarakDepan <= 10 &&
jarakDepan > 5) || (jarakBelakang <= 10 && jarakBelakang > 5))
{
digitalWrite(readyLed, LOW);
digitalWrite(relay, LOW);
tunda= millis()/250;
kecepatanKedip = tunda%2;
if(kecepatanKedip == 0)
{
digitalWrite(dangerLed, HIGH);
digitalWrite(buzzer, HIGH);
}
else
{
digitalWrite(dangerLed, LOW);
digitalWrite(buzzer, LOW);
}
}
else
{
digitalWrite(buzzer, LOW);
digitalWrite(dangerLed, LOW);
digitalWrite(readyLed, LOW);
digitalWrite(relay, HIGH);
}
Komentar
Posting Komentar