Yağmur Yıldız

Oluşturulma Tarihi: 2021-04-18 13:32:57

Akıllı Bardak Altlığı

Çalışırken çayının soğuduğunu fark etmiyor musun? O zaman bu proje tam sana göre!

  • Proje Numarası :#15252
  • Donanım Bileşeni kullanmadım  Adet: 1

  • El Aleti kullanmadım  Adet: 1

DHT11 sensörümüz anlık olarak ölçümler yaparak LCD ekranımıza okuduğu değerleri yazdırır.

Öncelikle devre şemamıza (şekil-1) uygun bir şekilde devremizi kuralım. Ben kablo dağınıklığını önlemek amacıyla kartımın 5V çıkışından breadboardumun üst yatay hattına bir 5V hattı, kartımın GND çıkışından breadboardumun alt yatay hattına bir GND hattı kurdum. Sensör ve motorumun güç bağlantısını bu hatlar üzerinden yapacağım.

LCD ekranın;

  • SCL Pinini Deneyap Kart’ımın SCL Pinine

  • SDA Pinini Deneyap Kart’ımın SDA Pinine

  • GND Pinini GND Hattına

  • 5V Pinini 5V Hattına 

 

DHT11 sensörün;

  • Sinyal Pinini Deneyap Kart’ımın 12. Pinine

  • GND Pinini GND Hattına

  • 5V Pinini 5V Hattına

 

bağlıyoruz.

İlk olarak “DHT Sensor Library” ve “Adafruit Unified Sensor” kütüphanelerini Arduino IDE’sine ekliyorum. Bu kütüphaneleri DHT11 sensörümü kullanmak için ekledim. Ardından programlamaya geçiyorum.

Programlamaya başlarken önce temel tanımlamaları yapıyorum, bu kodları void setup kısmının üstüne yazacağım. Bu kodlar kütüphaneleri programımıza eklememizi ve programımıza kullanacağımız sensör ve ekranı tanıtmamızı sağlıyor.

#include "deneyap.h"

#include "DHT.h"

#include <LiquidCrystal_I2C.h>

 

#define DHTPin D12

#define DHTTYPE DHT11

 

DHT dht(DHTPin, DHTTYPE);

LiquidCrystal_I2C lcd(0x3F, 16, 2);

 

Void Setup kısmında LCD ve DHT11’in çalışmasını başlatacak kodlarımı yazıyorum.

lcd.init();

lcd.backlight();

dht.begin();
 

Void Loop kısmına DHT11 sensörüm ile sıcaklık ve nem verilerini okuyarak başlıyorum. Daha sonra bu verileri kullanarak Celcius cinsinden sıcaklık çıktısı verecek fonksiyonumu çalıştırıyorum.

float nem = dht.readHumidity();

float sicaklik = dht.readTemperature();

float sic_c = dht.computeHeatIndex(sicaklik, nem, false);

 

Son olarak okunan verileri LCD ekrana yazdıracak kod satırlarını ekliyorum.

lcd.setCursor(0,0);

lcd.print("Sicaklik: ");

lcd.setCursor(10,0);

lcd.print(sic_c);

Şema

Proje Ortakları

Location for : Listing Title