
| ?️ Proje #002 — Proje İçerikleri DHT11 Sensör ile Sıcaklık & Nem Ölçer | Seviye ★★☆☆☆ Kolay Yaş grubu 8 – 10 yaş Süre 45 – 60 dakika Ön koşul Proje #001 (LED) |
| ? Bu projede öğrenilecekler Sensör nedir, nasıl çalışır • DHT11'in yapısı • Kütüphane kurulumu • Serial Monitor kullanımı • Değişken ve veri tipi (float, int) • Gerçek dünya verisi okuma |
| Adet | Malzeme | Değer / Model | Sette var mı? |
| 1 | Arduino Uno R3 | – | ✅ Evet |
| 1 | DHT11 Sıcaklık & Nem Sensörü | 3 veya 4 pinli modül | ✅ Evet |
| 1 | Breadboard | Tam boy | ✅ Evet |
| 3 | Jumper kablo | Erkek-erkek | ✅ Evet |
| 1 | USB kablo | Tipo-B | ✅ Evet |
| — | DHT sensor kütüphanesi | Adafruit DHT (ücretsiz) | ✅ IDE'den kurulur |
| ? Gerçek hayatta DHT11 nerede kullanılır? Akıllı ev sistemleri • Hava istasyonları • Seracılık ve tarım otomasyonu • HVAC (ısıtma-soğutma) sistemleri • Müze ve arşiv nem kontrolü |
| DHT11 Pini | Arduino Pini | Açıklama |
| VCC (+) | 5V | Sensörü besleyen güç pini |
| DATA (S) | Pin 2 | Sensör verisinin iletildiği dijital pin |
| GND (−) | GND | Ortak toprak |
| DEVRE DİYAGRAMI DHT11 Modülü Arduino Uno ┌───────────┐ │ VCC (+) │──────────────── 5V │ DATA (S) │──────────────── Pin 2 │ GND (−) │──────────────── GND └───────────┘ |
| 1 | DHT11'i breadboard'a yerleştir Sensörü breadboard'un ortasına koy. Her pin ayrı bir sıraya denk gelsin. |
| 2 | VCC bağlantısı DHT11'in VCC (+) pinini Arduino'nun 5V pinine bağla. Kırmızı kablo tercih et. |
| 3 | DATA bağlantısı DHT11'in DATA (S) pinini Arduino'nun dijital Pin 2'sine bağla. Sarı veya yeşil kablo. |
| 4 | GND bağlantısı DHT11'in GND (−) pinini Arduino'nun GND pinine bağla. Siyah kablo tercih et. |
| 5 | USB bağla Arduino'yu bilgisayara USB ile bağla. Bağlantı tamamlandı — kütüphane kurulumuna geç. |
| 1 | Arduino IDE'yi aç Menüden Araçlar → Kütüphane Yöneticisi'ne tıkla (veya Ctrl+Shift+I). |
| 2 | DHT'yi ara Arama kutusuna "DHT" yaz. "DHT sensor library by Adafruit" çıkacak. |
| 3 | Kütüphaneyi kur "Kur" (Install) butonuna tıkla. Birkaç saniye içinde kurulum tamamlanır. |
| 4 | Adafruit Unified Sensor Sistem "Adafruit Unified Sensor" kütüphanesini de kurmak isteyecek — "Tümünü Kur" (Install All) de. |
| ? Kütüphane nedir? Kütüphane, başkalarının yazdığı hazır kod paketidir. DHT11 sensörü okumak için onlarca satır karmaşık kod yerine, kütüphane bunu tek bir komuta indirger. Mühendisler tekerleği yeniden icat etmez — kütüphane kullanır. |
| mBLOCK — Blok Kodlama Yapısı ┌──────────────────────────────────────────────┐ │ Başlat (Bayrak tıklandığında) │ └──────────────────┬───────────────────────────┘ ┌──────────────────────────────────────────────┐ │ Sonsuza Kadar Tekrarla │ │ ┌────────────────────────────────────────┐ │ │ │ Seri porta yaz: │ │ │ │ "Sıcaklık: " + DHT11 sıcaklık (Pin2)│ │ ← DHT bloğu │ │ Seri porta yaz: │ │ │ │ "Nem: " + DHT11 nem (Pin2) │ │ ← DHT bloğu │ │ 2000 milisaniye bekle │ │ ← Her 2 saniyede bir ölç │ └────────────────────────────────────────┘ │ └──────────────────────────────────────────────┘ |
| ARDUINO IDE — C++ Kodu // ═══════════════════════════════════════════════ // ALPGEN Robotics — Proje #002 // DHT11 ile Sıcaklık & Nem Ölçer // alpgenrobotics.com // ═══════════════════════════════════════════════ #include <DHT.h> // DHT kütüphanesini dahil et // Pin ve sensör tipi tanımla #define DHT_PIN 2 // DATA pini → Arduino Pin 2 #define DHT_TIP DHT11 // Sensör tipi: DHT11 DHT dht(DHT_PIN, DHT_TIP); // DHT nesnesini oluştur // ─────────────────────────────────────────────── void setup() { Serial.begin(9600); // Seri haberleşmeyi başlat dht.begin(); // DHT sensörünü başlat Serial.println("DHT11 Sıcaklık & Nem Ölçer"); Serial.println("ALPGEN Robotics — alpgenrobotics.com"); Serial.println("─────────────────────────────────"); } // ─────────────────────────────────────────────── void loop() { delay(2000); // DHT11 en az 2sn'de bir ölçer // Sensörden veri oku float nem = dht.readHumidity(); float sicaklik_C = dht.readTemperature(); // Celsius float sicaklik_F = dht.readTemperature(true); // Fahrenheit // Okuma başarılı mı? Kontrol et if (isnan(nem) || isnan(sicaklik_C)) { Serial.println("HATA: Sensör okunamadı!"); return; } // Isı indeksi hesapla (gerçek hissedilen sıcaklık) float hissedilen = dht.computeHeatIndex(sicaklik_C, nem, false); // Serial Monitor'e yaz Serial.print("? Sıcaklık : "); Serial.print(sicaklik_C); Serial.print(" °C | "); Serial.print(sicaklik_F); Serial.println(" °F"); Serial.print("? Nem : "); Serial.print(nem); Serial.println(" %"); Serial.print("? Hissedilen: "); Serial.print(hissedilen); Serial.println(" °C"); Serial.println("─────────────────────────────────"); } // ─────────────────────────────────────────────── |
| Kod | Ne yapar? |
| #include <DHT.h> | DHT kütüphanesini projeye dahil eder. Kütüphane olmadan sensör okunamaz. |
| DHT dht(DHT_PIN, DHT_TIP); | "dht" adında bir sensör nesnesi oluşturur. Hangi pine bağlı, hangi model olduğunu tanımlar. |
| Serial.begin(9600); | Bilgisayar ile Arduino arasındaki iletişimi 9600 baud hızında başlatır. |
| float nem = dht.readHumidity(); | Nem değeri
İlgili Ürünler
|