Ana içeriğe geç

Arduino I2C LCD Bar Göstergeli Su Seviye Sensörü Projesi

Bu projede Su seviye sensörü kullanılarak depodaki Sunın seviyesi ölçülür
ve ölçülen değerler I2C bağlantılı 16x2 LCD ekran üzerinde
bar (doluluk çubuğu) şeklinde görsel olarak gösterilir.

Bu proje; su deposu, akıllı tarım, endüstriyel tank izleme ve
STEM / eğitim projeleri için oldukça uygundur.


Proje Amacı

  • Su seviyesini sensör ile ölçmek
  • Ölçülen değeri %0 – %100 aralığına dönüştürmek
  • LCD ekranda doluluk çubuğu (bar) olarak göstermek
  • Kullanıcıya Su seviyesini hızlı ve anlaşılır biçimde sunmak

Gerekli Malzemeler

  • Arduino Uno / Nano
  • Su seviye sensörü (analog)
  • 16x2 I2C LCD ekran
  • Jumper kablolar
  • Breadboard

Devre Bağlantıları

I2c led devre şeması

Su Seviye Sensörü Bağlantısı

Sensör PinArduino
VCC5V
GNDGND
A0A0

I2C LCD Bağlantıları

LCD PinArduino Uno
GNDGND
VCC5V
SDAA4
SCLA5

📌 Arduino Mega: SDA → 20, SCL → 21


Proje Nasıl Çalışır?

  1. Arduino, Su seviye sensöründen analog veri okur
  2. Okunan değer 0–1023 aralığındadır
  3. Bu değer %0–%100 aralığına ölçeklenir
  4. LCD’nin ikinci satırında doluluk çubuğu oluşturulur
  5. Çubuk uzunluğu Su seviyesine göre artar veya azalır

LCD’de Gösterilen Bilgiler

Sivi Seviyesi

██████░░░░░

  • : Dolu alan
  • : Boş alan

Arduino Kodu (I2C LCD + Bar Göstergesi)

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);

int seviyePin = A0;
int seviyeDegeri = 0;

void setup() {
lcd.init();
lcd.backlight();

lcd.setCursor(0, 0);
lcd.print("Sivi Seviyesi");
}

void loop() {
seviyeDegeri = analogRead(seviyePin);

// 0–1023 -> 0–16 karakter
int barUzunlugu = map(seviyeDegeri, 0, 1023, 0, 16);

lcd.setCursor(0, 1);

for (int i = 0; i < 16; i++) {
if (i < barUzunlugu) {
lcd.print((char)255); // Dolu blok
} else {
lcd.print(" ");
}
}

delay(500);
}

Bar (Doluluk Çubuğu) Mantığı

  • LCD bir satırda 16 karakter gösterebilir

  • Sensör değeri 16 parçaya bölünür

  • Her parça bir blok karakteri ile temsil edilir

  • Seviye arttıkça blok sayısı artar

Bu yöntem sayesinde kullanıcı sıvı seviyesini tek bakışta anlayabilir.

Sensör Kalibrasyonu

Her sensör farklı değerler üretebilir. Daha doğru sonuç için:

  • Sensörü boş tankta ölç

  • Sensörü tam dolu tankta ölç

  • Gerekirse map() değerlerini ayarla

Kimler İçin Uygun?

  • Arduino’ya yeni başlayanlar

  • Tarım ve su deposu projeleri

  • Okul ve STEM projeleri

  • Endüstriyel seviye izleme fikirleri

Sonuç

Arduino I2C LCD bar göstergeli sıvı seviye sensörü projesi, analog sensör okuma ve görsel veri sunumunu bir arada öğreten basit ama etkili bir uygulamadır.

Bu proje, daha gelişmiş akıllı depo ve otomasyon sistemlerinin temelini oluşturur.