Akhir nya malam ini ada waktu untuk ngetik , dan saya akan berbagi sebuah project sederhana manggunakan arduino yang berbasis timer , dan kita akan menggunakan timer internal dari arduino untuk mengontrol relay switch, yang bisa di gunakan untuk mengontrol peralatan listrik ataupun yang lain nya dengan timer, sistem kerja project ini sangat sederhana yaitu arduino mengontrol pin out yang terhubung dengan driver relay dan mengaktifkan driver relay tersebut dengan jeda waktu.
Project ini juga menggunakan sebuat buzzer yang akan berbunyi apabila timer telah menunjukan nilai nol (0) , dan utuk mengulangi start nya dengan menekan tombol reset pada arduino, maka program akan dijalankan ulang, pada project ini bisa untuk di modifikasi menjadi alat apa saja yang berhubungan dengan timer , asal jangan di jadikan timer untuk detonator BOM ya..hehehe
Pertama tama siapkan board arduino, disini saya menggunakan arduino uno R3 , siapkan juga buzzer , LCD dan Relay, lalu di rangkai sesuai skematik di bawah ini :
skematik relay timer switch
Pada skematik di atas terdapat Potensio meter 10k (P1 10K) sebenar nya itu adalah opsional, bisa di tambahkan ataupun di hilanggkan dengan menjumper nya, dan fungi potensio tersebut adalah untuk mengatur brightnes LCD , untuk sketc nya seperti berikut :
#include <LiquidCrystal.h>
LiquidCrystal lcd(7,8,9,10,11,12);
int runTimer = 1;
int runFor = 60; // timer
int buzzerPin = 13;
int relayPin=4;
int data = 0;
void setup() {
pinMode(buzzerPin, OUTPUT);
pinMode(relayPin,OUTPUT);
lcd.begin(16, 2);
}
void loop() {
if(runTimer == 1){
digitalWrite(relayPin,LOW); // relay OFF
lcd.clear();
lcd.print("TIMER=");
//Start timer
timer();
} else {
digitalWrite(relayPin,HIGH); // relay ON
}
runTimer = 0;
lcd.noDisplay();
delay(250);
for(int duration = 0; duration < 100; duration ++){
digitalWrite(buzzerPin, HIGH);
delayMicroseconds(500);
digitalWrite(buzzerPin, LOW);
delayMicroseconds(500);
}
lcd.display();
delay(250);
}
void timer() {
for(int timer = runFor;timer > 0; --timer){
if(timer >= 10) {
lcd.setCursor(6,0);
} else {
lcd.setCursor(6,0);
lcd.print("0");
lcd.setCursor(7,0);
}
lcd.print(timer);
lcd.print(" SECOND!");
delay(1000);
}
lcd.setCursor(0,0);
lcd.clear();
lcd.print(" TIMER ALERT!");
}
Compile program di atas dan download ke arduino , setelah itu silakan di ujicoba alat nya, untuk dokumentasi alat yang sudah jadi seperti gambar di bawah ini :
arduino timer control relay
Selesai sudah project kali ini..heheh.., terimakasih telah berkunjung ke blog ini apabila ada kesalahan dan pertanyaan silakan isikan di kolom komentar, terimakasih.