Pada kesempatan kali ini saya akan menjelaskan mengenai bagaimana cara membuat sebuah alat yang dapat mendeteksi benda dengan jarak tertentu selama 3 detik jadi syarat benda tersebut terdeteksi adalah dia berhenti atau sensor tertutup oleh benda tersebut selama 3 detik kemudian alarm atau buzzer akan menyala. jika kurang dari 3 detik maka led dan buzzer tidak akan menyala untuk lebih jelasnya berikut adalah komponen dan programnya.
a. Arduino Uno
b. Sensor IR Proximity
c. Modul Relay
d. Program Arduino IDE
int relay1 = 4;
int relay2 = 5;
int sw1 = 2;
int sw2 = 3;
int led1 = 6;
int led2 = 8;
int buzzer = 11;
int sen1 = A0;
int sen2 = A5;
int sen3 = A2;
int sen1x = 0;
int sen2x = 0;
int sen3x = 0;
int counter1;
int counter2;
int counter3;
int x;
int y;
int kondisi;
//ada benda adc < 500
//tidak ada benda adc > 500
void setup(){
pinMode(relay1,OUTPUT);
pinMode(relay2,OUTPUT);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(7,OUTPUT);
pinMode(9,OUTPUT);
pinMode(buzzer,OUTPUT);
pinMode(sw1,INPUT_PULLUP);
pinMode(sw2,INPUT_PULLUP);
pinMode(buzzer,OUTPUT);
digitalWrite(7,LOW);
digitalWrite(9,LOW);
digitalWrite(relay1,LOW);
digitalWrite(relay2,LOW);
Serial.begin(9600);
}
void loop(){
sen1x = analogRead(sen1);
sen2x = analogRead(sen2);
sen3x = analogRead(sen3);
x = digitalRead(2);
y = digitalRead(3);
Serial.print(sen1x);
Serial.print(" ");
Serial.print(sen2x);
Serial.print(" ");
Serial.print(sen3x);
Serial.print(" ");
Serial.println(kondisi);
if(sen1x < 500){
counter1++;
}
if(sen1x > 500){
counter1 = 0;
}
if(counter1 >= 15){
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(buzzer,HIGH);
digitalWrite(relay1,HIGH);
kondisi = 1;
}
if(sen3x < 500){
counter3++;
}
if(sen3x > 500){
counter3 = 0;
}
if(counter3 >= 15){
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(buzzer,HIGH);
digitalWrite(relay1,HIGH);
digitalWrite(relay2,HIGH);
kondisi = 3;
}
if(sen2x < 700){
counter2++;
}
if(sen2x > 700){
counter2 = 0;
}
if(counter2 >= 15){
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(buzzer,HIGH);
digitalWrite(relay2,HIGH);
kondisi = 2;
}
if((x == 0)&&(kondisi == 1)&&(sen1x > 500)){
digitalWrite(relay1,LOW);
digitalWrite(led1,LOW);
digitalWrite(buzzer,LOW);
kondisi = 0;
}
if((y == 0)&&(kondisi == 2)&&(sen2x > 700)){
digitalWrite(relay2,LOW);
digitalWrite(led2,LOW);
digitalWrite(buzzer,LOW);
kondisi = 0;
}
if((y == 0)&&(kondisi == 3)&&(sen3x > 500)){
digitalWrite(relay1,LOW);
digitalWrite(relay2,LOW);
digitalWrite(led2,LOW);
digitalWrite(buzzer,LOW);
kondisi = 0;
}
delay(200);
}
e. VIDEO HASILNYA
No comments:
Post a Comment