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ı

Su Seviye Sensörü Bağlantısı
| Sensör Pin | Arduino |
|---|---|
| VCC | 5V |
| GND | GND |
| A0 | A0 |
I2C LCD Bağlantıları
| LCD Pin | Arduino Uno |
|---|---|
| GND | GND |
| VCC | 5V |
| SDA | A4 |
| SCL | A5 |
📌 Arduino Mega: SDA → 20, SCL → 21
Proje Nasıl Çalışır?
- Arduino, Su seviye sensöründen analog veri okur
- Okunan değer 0–1023 aralığındadır
- Bu değer %0–%100 aralığına ölçeklenir
- LCD’nin ikinci satırında doluluk çubuğu oluşturulur
- Ç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.