Arduino Devreleri #39 Arduino Toprak Nem Seviyesini LCD Ekranda Gösterme

Merhabalar, bu yazımızda Arduino Toprak Nem Seviyesini LCD Ekranda Gösterme uygulaması hakkında bilgi vereceğim. Toprak nem seviye sensörü nedir? Nasıl çalışır? Toprak nem ölçer kullanarak nem seviyesini, LCD ekranda nasıl gösterebiliriz?  bunlar hakkında bilgilendirme yapacağım.

Arduino programı ayrıntılı kod kısmı, devre bağlantı şeması, devre kurulumu detaylı anlatımı ve devre çalışma videosu şu şekildedir.

TOPRAK NEM SEVİYE SENSÖRÜ MODÜLÜ – FC-28

Toprak nemi algılama sensörü, toprağın içerisindeki nem miktarını ölçmek için kullanılan bir sensördür.

Toprak nem sensörü FC-28

Toprak nem sensörü iki parça halindedir. Parçanın bir tanesi toprağa batırılacak prob, diğer parça ise elektronik devredir. Toprak nem sensörü probları ölçüm yapılacak toprağa batırılarak kullanılır. Toprağa batırılan nemin meydana getirdiği dirençten dolayı, prob uçları arasında bir gerilim farkı oluşur. Bu gerilim farkının büyüklüğüne göre de nem miktarı ölçülebilir. Topraktaki nem oranı arttıkça iletkenlik de artmaktadır.

Kart üzerinde hem dijital giriş bağlantı pini hem de analog giriş bağlantı pini bulunmaktadır. Eğer sadece nem olup olmadığını kontrol etmek için kullanmak istiyorsak digital pin çıkışını (DO) kullanabiliriz. Eğer nem seviyesini kademe kademe kontrol etmek istiyorsak analog pin çıkışını (AO) kullanabiliriz. Kart üzerinde devrenin çalıştığını gösteren güç ledi, nem seviyesi belli bir orana geldiğinde yanan sensör ledi bulunmaktadır. (Bizim kartımızda yaptığımız hassasiyet ayarına göre analog sensör değeri 540 altına geldiğinde led çalışmaya başlamaktadır. Dijital pin bağlantısında ise yine hassasiyet ayarına göre nem algılandığında led direkt çalışacaktır.) Kart üzerinde yer alan trimpot sayesinde bu hassasiyet ayarını yapabilirsiniz. Toprak probları ile kart arasında iki uçlu bağlantı bulunmaktadır. Bu bağlantı uçları arasında yön fark etmemektedir. Toprakta nem yokken seri port içerisindeki analog değer 1023 olacaktır. Nem seviyesi arttıkça sıfıra (0) doğru bir azalma gerçekleşecektir. (Bizim kartımızda su içerisine daldırdığımızda bile nem seviyesi 275 seviyelerinin altına inmedi.)

Toprak nem sensörü modülü

NOT: Kod bölümü içerisinde yer alan ve // işareti ile başlayan satırlar açıklama satırlarıdır. O satırdaki kod bloğunun ne anlama geldiği ve nasıl çalıştığı ile ilgili bilgi verir. Arduino // işaretli alanı çalıştırmaz. Kod satırından isterseniz // işaret ile başlayan açıklama satırlarını silebilirsiniz.

SU SEVİYESİNİ LCD EKRANDA İZLEME

KOD BÖLÜMÜ:


//Toprak Nem Seviyesi LCD Ekranda Gösterme (Türkçe Karakterli)

#include <LiquidCrystalTr_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2); // Bazı kartlarda arabirim adresi 0x3f olabilir.

int seviye;

void setup(){ 
Serial.begin(9600);
lcd.begin();
}
void loop(){
  
seviye = analogRead(A0);
Serial.print("Toprak Nem Seviyesi: ");
Serial.println(seviye);
if (seviye<=540) // Sensörde 540 değerinin altında kart üzerindeki sensör led'de ışık vermektedir.
 { 
lcd.clear(); // Yazılar üst üste binmemesi için ekranı temizliyoruz 
lcd.setCursor(0, 0); 
lcd.print("Toprak Nem"); 
lcd.setCursor(0, 1); 
lcd.print("Seviyesi Yüksek"); 
} 
else if (seviye>540 && seviye<=800) 
{ 
lcd.clear(); 
lcd.setCursor(0, 0); 
lcd.print("Toprak Nem"); 
lcd.setCursor(0, 1); 
lcd.print("Seviyesi Normal"); 
} 
else if (seviye>800)
{
lcd.clear(); 
lcd.setCursor(0, 0);
lcd.print("Toprak Kuru");
lcd.setCursor(0, 1);
lcd.print("Lütfen Sulayınız");
} 
delay(1000); 
}

DEVRENİN ÇALIŞMASI:

Toprak nem seviye sensörü ölçüm probu toprak içerisine yerleştirilir. Toprak kuru vaziyette iken ekranda “Toprak Kuru Lütfen Sulayınız” yazacaktır. Toprak sulandığı zaman, topraktaki nem seviyesi normal duruma geldiğinde ekranda “Toprak Nem Seviyesi Normal” yazacaktır. Toprak daha fazla sulandığında nem seviyesi üst sınırlara ulaştığı zaman ekran “Toprak Nem Seviyesi Yüksek” yazacaktır. Toprak nem sensörü değerlerini aynı zamanda seri port ekranından da takip edebilirsiniz.

DEVRE BAĞLANTI ŞEMASI:

Arduino Toprak Nem Seviyesini LCD Ekranda Gösterme

DEVRE KURULUMU:

Malzemeler:

Arduino Uno
Breadboard
1 adet toprak nem seviye sensörü
1 adet LCD I2C Ekran
7 adet bir ucu dişi, diğer ucu erkek jumper kablo
2 adet iki ucu erkek jumper kablo

Toprak nem seviye sensörü üzerinde yer alan pinlere dişi jumper kabloların uçları yerleştirilir. Sensörün Vcc (+) pinini, breadboard alt kısmında artı şeride bağlanır. sensörün GND (-) pini, yine breadboard alt kısmında eksi şeride bağlanır. Sensörün DATA (A0) pini, Arduino’nun A0 numaralı pinine bağlanır.

LCD ekran üzerinde monteli olarak gelen I2C modülü üzerine 4 adet dişi jumper kablonun uçları yerleştirilir. SDA ve SCL pinlerine bağlı kablolar, Arduino üzerindeki SDA ve SCL pinlerine bağlanır. I2C modülü üzerindeki VCC kablo ucu, breadboard alt kısmındaki artı şeride bağlanır. I2C modülü üzerindeki GND kablo ucu, breadboard alt kısmındaki eksi şeride bağlanır. Breadboard artı şeridine bir kablo bağlayarak kablonun diğer ucunu Arduino’nun 5 Volt çıkışına, yine breadboard eksi şeridine bir kablo bağlayarak kablonun diğer ucunu Arduino da GND çıkışına bağlanarak devre tamamlanır.

Arduino Toprak Nem Seviyesini LCD Ekranda Gösterme

Devre hakkında yorumlarınızı aşağıdaki yorum kısmına yazabilirsiniz. Youtube kanalımızda da mBlock ve Arduino ile ilgili ders videoları bulabileceksiniz. Youtube kanalıma abone olmayı da unutmayınız.

https://www.youtube.com/@candemirahmet

Oval@3x 2

Bu ipuçlarını kaçırmayın!

Kayıt butonuna bastıktan sonra e-postanız gelen kutunuza giderek gelen e-postayı onaylamayı unutmayınız. Gelen kutusunda görülmeyen postalar için Önemsiz -Spam klasörünü kontrol edebilirsiniz. Eğer kayıt e-postası ulaşmadıysa iletişim menüsünden bu durumu bildirebilirsiniz.

Yazan: Ahmet Candemir
Teknik Öğretmen - Cisco Instructor - Microsoft MCP - ECDL MS Office Advanced Expert - Adobe Eğitmeni - MEB Fatih Projesi Koordinatörü - Robotik Kodlama Eğitmeni