Hai sobat, saya akan menjelaskan bagaimana cara membuat Alat
Pengukur dan Pengontrol Ketinggian Air Berbasis Arduino atau Water Level
Indicator atau Water Level Measure And Control With Arduino UNO.
Alat ini berguna untuk mengisi bak penampungan air yang
bekerja secara otomatis, alat akan mengisi dan berhenti mengisi bak sesuai set
poin yang telah ditentukan pada sketch arduino softwarenya.
Sebelumnya kita persiapkan terlebih dahulu alat dan bahan
yang diperlukan.
Alat dan Bahan :
Arduino Uno
Project Board atau Breadboard
Sensor Ultra Sonik HC-SR04
Resistor 1k Potensiometer 10k
Buzzer
LCD 16x2
Kabel Jumper
Relay Modul 5V
Pompa Akuarium
Setelah alat dan bahan telah siap, buatlah rangkaian seperti
pada diagram dibawah ini!
Untuk rangkaian pompa air nya :
Pin 8 pada arduino di masukan pada N1 atau N2 pada Relay
Modul 5V dan VCC pada Relay Modul 5V dihubungkan pada pin VCC/5V arduino uno.
Untuk rangkaian buzzer nya :
Dibawah ini adalah Sketch Arduino :
#include <LiquidCrystal.h>
#define trigger 7
#define echo 6
#define motor 8
#define buzzer 13
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
float time=0,distance=0;
int temp=0;
void setup()
{
lcd.begin(16,2);
pinMode(trigger,OUTPUT);
pinMode(echo,INPUT);
pinMode(motor,
OUTPUT);
pinMode(buzzer,
OUTPUT);
lcd.print(" Water Level Indicator ");
lcd.setCursor(0,1);
lcd.print(" kelompok 2
");
delay(5000);
}
void loop()
{
lcd.clear();
digitalWrite(trigger,LOW);
delayMicroseconds(2);
digitalWrite(trigger,HIGH);
delayMicroseconds(10);
digitalWrite(trigger,LOW);
delayMicroseconds(2);
time=pulseIn(echo,HIGH);
distance=time*340/20000;
lcd.clear();
lcd.print("Water
Space In ");
lcd.setCursor(0,1);
lcd.print("Tank
is: ");
lcd.print(distance);
lcd.print("Cm");
delay(5000);
if(distance<2
&& temp==0)
{
digitalWrite(motor, LOW);
digitalWrite(buzzer, HIGH);
lcd.clear();
lcd.print("Water Tank Full ");
lcd.setCursor(0,1);
lcd.print("Motor Turned OFF");
delay(5000);
digitalWrite(buzzer, LOW);
delay(3000);
temp=1;
}
else
if(distance<2 && temp==1)
{
digitalWrite(motor, LOW);
lcd.clear();
lcd.print("Water Tank Full ");
lcd.setCursor(0,1);
lcd.print("Motor Turned OFF");
delay(5000);
}
else
if(distance>10)
{
digitalWrite(motor,
HIGH);
lcd.clear();
lcd.print("LOW
Water Level");
lcd.setCursor(0,1);
lcd.print("Motor Turned ON");
delay(5000);
temp=0;
}
}
Semoga bermanfaat sobat :-)



Tidak ada komentar:
Posting Komentar