20140616 110944 arac

Araç Bataryası Ölçme

Arkadaşlar bir yere giderken aracınızı durdurdunuz ve calıştırmaya calıştınız ve calışmadı , o zaman sakın arabayı tekmelemeyin. Bu calışmayı bataryanızın seviyesini ve aracinizin aküyü sarj edip etmediğini kontrol için gerçekleştirdim.

Projemizde sadece batarya ölçümü değil aynı zamanda araç içi ısı de nem değerlerini de ölçmesi için DHT11  sensörünü ekledim .

Araç batarya ölçücü projemizde ihtiyacınız olan bazı bilgileri paylaşmak istiyorum

  1. ilk adımda Araç Çalışmıyorken bu testi kullanmalısınız çünkü araç çalıştığında batarya şarj edilmeye başlıyacaktır bundan dolayı yanlış bilgiler elde edebilirsiniz çalışmazken iyi seviyeden olan bataryanın değeri 12.4Volt ile 13.1 Volt arasında olması gerekir. Batarya seviyesi 10.7 volt ile 11.7 volt arasında ise bataryanız normaldir. Ama batarya seviyesi 10.7 nin altındaysa o zaman batarya sizi yarı yolda bırakabilir.  Projelendirmede yüzdelik dilimi kullanmaya çalıştım . ama ihtiyaca göre yukardaki bilgilere göre değişiklikler yapabilirsiniz.
  2. Projenin programı real time ölçmeye göre ayarlanmamıştır dolayısıyla anlık bilgi alamazsınız (5sn gecikme)
  3. Bu cihazı araca taktıktan sonra birde arabayı çalıştırarak değere bakın.

Arac bataryasi

Projede arduinoyu standalone kullandım

 

20140616 111001 arac

 

20140616 110944 arac

 

20140616 111029 arac

Projenin araç içerisinde kullanılabilmesi için çakmaklığa takılabilen bir aparatı gözden çıkararak kendi bağlantı noktamı gerçekleştirdim.

Kutu çok çirkin görünüyor ama elimde başka kutu olmadığından dolayı mazur görün .

 

 

 

Programımız

 


#include "DHT.h"

#define DHTPIN 6 // DHT11 nereye bağlıysa o bacak yazılır

#define DHTTYPE DHT11 // DHT 11


// Connect pin 1 (on the left) of the sensor to +5V
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor
#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5,4, 3, 2);
DHT dht(DHTPIN, DHTTYPE);
int analogInput =A0;
float vout = 0.0;
float vin = 0.0;
float R1 = 98750.0; // !! Daha hassas olcum için Multimetreden değerini ekledim R1 !!
float R2 = 9840.0; // !! Daha hassas olcum için Multimetreden değerini ekledim R2 !!
int value = 0;
int yuzde = 0 ;


void setup() {
pinMode(analogInput, INPUT);
lcd.begin(16, 2);
lcd.print("LUTFEN BEKLEYIN");
lcd.setCursor(0,1);
lcd.print(" DENEME SURUMU");
dht.begin();
delay(1000);
}

void loop() {
baslangic:
float h = dht.readHumidity();
float t = dht.readTemperature();

value = analogRead(analogInput);

vout = (value * 5.0) / 1024.0;
vin = vout / (R2/(R1+R2));
// alınan değere göre % delik dilime çevirmemiz gerekiyor .
yuzde = map(value,183,250,0,100);
if (yuzde >= 100 ){
yuzde = 100;
}

///////////////////////////////////////////////
///////////////////////////////////////////////
if (yuzde < 40 ){
lcd.setCursor(0,0);
lcd.print("TEHLIKELI SEVIYE");
lcd.setCursor(0,1);
lcd.print(" % ");
lcd.print(yuzde);
lcd.print(" DOLU");
delay(10000);

}
if (isnan(t) || isnan(h)) {
lcd.clear();
lcd.print("SICAKLIK PROBLEMI");
delay(1000);
} else {
for (int i = 0 ; i < 10 ; i++ ){
lcd.clear();
lcd.setCursor(0,0);
lcd.print("NEM ");
lcd.print("ISI ");
lcd.print("VOLT ");

lcd.setCursor(0,1);
lcd.print("");
lcd.print(h);
lcd.print("% ");
lcd.print(t);
lcd.print("*C ");
lcd.print(vin);
lcd.print("V ");
delay(500);
goto baslangic ;
}
lcd.clear();
lcd.setCursor(0,0);
lcd.print(" ARAC BATARYASI");
lcd.setCursor(0,1);
lcd.print(vin);
lcd.print("V ");
lcd.print(yuzde);
lcd.print(" DOLU");
delay(3000);

}

}

Not: Gerilim bölücü olarak kullanılan dirençler %5 toleranslı olduğundan dolayı dijital termometre ile ölçülerek gerçek değerleri programa yerleştirilmelidir.

Boş zamanlarda arduino ile uğraşan kendi halinde bir Öğretmen.

  

Bir Cevap Yazın

Time limit is exhausted. Please reload CAPTCHA.