Translate

Deteksi Benda Menggunakan Sensor Proximity IR Arduino

Deteksi Benda Menggunakan Sensor Proximity IR Arduino


         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