Sensor
potensiometer sebagai sudut pintu
Langkah Kerja Rangkaian
1. Siapkan
rangkaian seperti gambar.1.
Gambar.1.
Liquid Crystal yang digunakan.
PIN LCD 16x2
|
PIN ARDUINO UNO
R3
|
RS
|
7
|
E
|
6
|
D4
|
5
|
D5
|
4
|
D6
|
3
|
D7
|
2
|
PIN LED
PIN LED
|
OUTPUT
|
13
|
LED HIJAU
|
12
|
LED KUNING
|
11
|
LED MERAH
|
PIN POTENSIOMETER
PIN
POTENSIOMETER
|
OUTPUT
|
A0
|
ADC
|
2. Lalu
masukan program berikut ke dalam program.
#include<LiquidCrystal.h>
LiquidCrystal lcd(7,6, 5, 4, 3, 2);
int adc=0;
int der=0;
int a=5;
int b=21;
int c=61;
float volt = 0;
byte Derajat=B11011111;
void
setup()
{
lcd.begin(16, 2);
lcd.setCursor(0, 0);
lcd.print("Sudut Pada Pintu");
lcd.clear();
pinMode(13,OUTPUT); //inisialisasi kaki output untuk LED
pinMode(12,OUTPUT);
pinMode(11,OUTPUT);
}
void
loop()
{
adc = analogRead(A0); //Membaca Analog pada kaki A0
volt = (5.0 / 1023.0) * adc; //ADC di ubah kedalam voltage
der =
(volt*300)/5; //Voltage
di ubah dalam bentuk derajat
lcd.setCursor(0, 1);
lcd.print("Derajat=");
lcd.setCursor(0, 0);
lcd.print(adc); //ADC
lcd.setCursor(8,0);
lcd.print(volt); //ADC to Volt
lcd.setCursor(8, 1);
lcd.print(der); //derajat
lcd.setCursor(14, 1);
lcd.write(Derajat); //simbol derajat
delay(10);
if(der<a)
{
digitalWrite(13,LOW);
digitalWrite(12,LOW);
digitalWrite(11,LOW);
}
if(a<=der)
{
digitalWrite(13,HIGH);
digitalWrite(12,LOW);
digitalWrite(11,LOW);
}
if(b<=der)
{
digitalWrite(13,LOW);
digitalWrite(12,HIGH);
digitalWrite(11,LOW);
}
if(c<=der)
{
digitalWrite(13,LOW);
digitalWrite(12,LOW);
digitalWrite(11,HIGH);
}
lcd.clear();
}
3.
Analisa Program:
Mula-mula potensiometer pada kaki
port Anlog (A0) di baca oleh arduino dan di ubah ke dalam bentuk ADC (0-1023),
diubah kedalam bentuk voltage dan diubah
ke dalam bentuk derajat. Ketika sudut lebih besar 5˚ derajat sampai 20˚ maka
lampu LED Hijau menyala, Ketika sudut lebih besar 21˚ derajat sampai 60˚ maka
lampu LED Kuning menyala, Ketika sudut lebih besar 60˚ derajat sampai 90˚ dan derajat seterusnya maka lampu LED Merah
menyala.
Shieldnya ada kolo mau minta email widipradana@gmail.com
BalasHapus