Selamlar, bu yazımda ısı sensörü uygulamasını anlatacağım..
Senaryo şu: Isı arttıkça yanan led sayısı da yanacak.
..
İlk olarak devre şemamızı çizelim ki akımın geçtiği yolları bilelim.
***
Benim yaptığım:
Benim yaptığımın kodları:
Not: Kodların orijinalinde fahrenaytla hiçbir işlem yapmamasına rağmen fahrenaytı da vermiş. Ben bu kısımları tamamen sildim. Çünkü programın çalışmasında hiçbir yerde fahrenayt fonksiyonlarına gerek olmuyordu. (Neden koydular acaba :-/ )
***
Devrenin orijinali:
(Ben kendi devremi birazcık değiştirdim.)
Kodların orijinali ise şu:
*********** *********** *********** ***********
// C++ code
//
int baselineTemp = 0;
int celsius = 0;
int fahrenheit = 0;
void setup()
{
pinMode(A0, INPUT);
Serial.begin(9600);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
}
void loop()
{
// set threshold temperature to activate LEDs
baselineTemp = 40;
// measure temperature in Celsius
celsius = map(((analogRead(A0) - 20) * 3.04), 0, 1023, -40, 125);
// convert to Fahrenheit
fahrenheit = ((celsius * 9) / 5 + 32);
Serial.print(celsius);
Serial.print(" C, ");
Serial.print(fahrenheit);
Serial.println(" F");
if (celsius < baselineTemp) {
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
}
if (celsius >= baselineTemp && celsius < baselineTemp + 10) {
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
}
if (celsius >= baselineTemp + 10 && celsius < baselineTemp + 20) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
}
if (celsius >= baselineTemp + 20 && celsius < baselineTemp + 30) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
}
if (celsius >= baselineTemp + 30) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
}
delay(1000); // Wait for 1000 millisecond(s)
}
*********** *********** *********** ***********
Bu Devre Günlük Hayatta
Ne İşimize Yarayacak?
Sıcaklık Sensörü (Analog Giriş) Açıklaması:
Bu projede Arduino’yu bir termometreye dönüştüreceksin! Bir sıcaklık sensörü kullanarak cilt sıcaklığını ölç ve çıktıyı üç LED ile göster. Arduino dijital bir araç olmasına rağmen, sıcaklık sensörü gibi analog bir girişten gelen sinyalleri, analog pinler üzerinden erişilen dahili Analog-Dijital Dönüştürücü (ADC) sayesinde yorumlayabilir.
Çalışma düzlemindeki örnek devreyi keşfetmek için simülasyonu başlat, sensöre tıkla, ardından sıcaklık kaydırıcısını sürükleyerek giriş değerini değiştir ve LED’lerde oluşan desenleri gözlemle.
Bu derste, örneğin yanında bu simüle devreyi kendin kuracaksın. Fiziksel devreyi de kurmak istersen bir Arduino Uno kartı, USB kablosu, lehimsiz breadboard, üç LED, üç adet aynı değerde direnç (100–1K arası herhangi bir değer, tercihen 220 ohm), bir TMP36 sıcaklık sensörü ve bağlantı kablolarını hazırla.
Önemi: Sıcaklık sensörü – Arduino – LED üçlemesi ilk bakışta basit bir elektronik devre gibi görünür. Ancak IoT mantığıyla düşündüğümüzde, bu devre aslında akıllı sistemlerin temelini oluşturan bir mimarinin prototipidir.
Veri işleme Süreçleri:
TMP36 sensörü → veri üretiyor (Giriş)
Arduino → veriyi sayısal olarak işliyor
LED’ler → çıktı veriyor (eyleyici gibi davranıyor) (devreyi harekete geçiriyor. Çıktı üretiyor)
🌐 1. Senin Devren: IoT’ye Dönüşmeye En Uygun Çekirdek
Devren şu an şu fonksiyonları yapıyor:
-
TMP36 sensörü analog sıcaklık verisi sağlıyor
-
Arduino bu veriyi işleyip üç LED üzerinden durum analizi sunuyor
-
Kodun modüler, eşik değerleri esnek, mantık yapısı IoT için hazır
Bu devre IoT’nin edge device dediğimiz uç birimidir.
Tek eksik:
↳ İnternet bağlantısı + veri gönderecek bir protokol + bulut tarafı + dashboard
Bir ESP8266/ESP32 eklediğimiz anda sistem bir anda “akıllı cihaz” olur.
🌩️ 2. Bu Devre İnternete Bağlansaydı Ne Olurdu?
Aşağıda gerçekçi ve pedagojik + hayal gücü kombinasyonu IoT senaryoları var.
🌱 Senaryo 1: Akıllı Sera – Mikro İklim Kontrol Sistemi
Bu devre sıcaklığa göre LED yakıyor.
IoT’ye bağlansa:
-
Sıcaklık anlık olarak telefondan izlenir
-
Sıcaklık yükselirse otomatik havalandırma fanı çalışır
-
Kritik seviyede bildirim gider:
“Sera ısı eşiğini aştı, bitki tipine uygun iklim bozuluyor!” -
Günlük/haftalık sıcaklık grafikleri çıkartılır
-
Farklı seralardaki değerler karşılaştırılır
Gereken küçük eklemeler:
ESP32 + röle + mini fan → tam bir tarım IoT sistemi.
🧪 Senaryo 2: Laboratuvar Sıcaklık İzleme (Özellikle Okullar İçin)
Sen bir eğitimcisin, bunu çok seveceksin.
Kimya veya biyoloji laboratuvarlarında sıcaklık kritik olabilir.
Devre internete bağlı olduğunda:
-
Laboratuvarın sıcaklığı sürekli buluta gönderilir
-
Belirlediğin eşikler aşılırsa okul yönetimine SMS / e-posta uyarısı gider
-
Admin paneli üzerinden tüm geçmiş sıcaklık kayıtları görüntülenir
Bu sistem birçok okulda yok, senin devre prototip olabilir.
🏠 Senaryo 3: Ev Ortamı – Yaşlı / Bebek Takip Sistemi
Biraz duygu katalım sosyalii…
Bu sistem evde şu amaçla kullanılabilir:
-
Bebek odası aşırı ısınırsa telefon uyarı verir
-
Yaşlı bir bireyin odasında sıcaklık çok düşerse ısıtıcı otomatik açılır
-
Günlük sıcaklık profilinden “odada yaşam belirtisi var mı?” bile anlaşılır
Hatta:
Evdeki sıcaklık desenlerinden “evde kim var, hareket var mı” gibi IoT çıkarımları bile yapılabilir.
🏭 Senaryo 4: Fabrikalarda Makine Aşırı Isınma İzleme
Sanayi IoT’de ısı kritik bir göstergedir.
Senin devrenin IoT versiyonu:
-
Motor, kompresör, rulman, fırın gibi ekipmanlara yerleştirilebilir
-
Sıcaklık belirli bir eşiği aşarsa makine otomatik durur
-
Arıza gerçekleşmeden önce erken uyarı sistemi olur
-
Cloud üzerinden IoT analitik ile “makine sağlık raporu” çıkar
Buna predictive maintenance (öngörülü bakım) denir.
Senin devren bunun çekirdeğidir.
📚 Senaryo 5: Okul Binaları İçin Enerji Verimliliği Projesi
Ekotema, sürdürülebilirlik, okul yönetimi ile iş birliği…
Devre internetli olduğunda:
-
Okulun her sınıfına yerleştirilebilir
-
Sıcaklık haritası çıkarılır
-
Bazı sınıflar gereksiz ısınıyor mu?
-
Pencereler açık bırakılmış mı?
-
Klima/kalorifer kontrolü ne kadar verimli?
Bu IoT projesi MEB’e proje yarışmalarında bile gider.
🚑 Senaryo 6: Sağlık Alanı – Taşınabilir Termal Takip
TMP36 vücut sıcaklığına yakın değerler üretebildiği için:
-
Ateş ölçer benzeri IoT bileklik
-
Yaşlı bakım evleri için “ateş takibi sistemi”
-
Hastanelerde COVID benzeri senaryolarda temassız odalararası izleme
Tabii burada tıbbi doğruluk sınırlıdır ama prototip olarak mükemmel.
🧊 Senaryo 7: Soğuk Zincir İzleme (Market – Eczane – Nakliye)
Gerçek bir IoT çözümü:
-
Soğuk dolapların sıcaklığını sürekli takip eder
-
Bozulabilir gıdalarda kritik eşiği aşınca bildirim gönderir
-
Aşı taşımada sıcaklık kaydı tutulur
-
TIR veya kargo kutusunda veri buluta aktarılır
Bu tarz sistemler Türkiye’de yaygın ama hâlâ geliştirilebilir.
🛰️ Senaryo 8 (Hayal-Realite Harmanı): Belediyeye Bağlı Akıllı Sokak Istı Kontrolü
Biraz sosyalii tarzı fantastik gerçekçilik katalım:
-
Sokaklara gömülü küçük IoT modüller olur
-
Şehir sıcaklık haritası anlık izlenir
-
Buzlanma riski olan bölgeler otomatik tespit edilir
-
Belediye ekiplerine rota oluşturulur
-
Karla mücadele ve tuzlama işlemleri optimize edilir
İstanbul, Ankara gibi büyükşehirlerde uygulanabilir.
***
VERİLERİ GÖRSELLEŞTİRME:
🖥️ Isı Sensörü IoT Dashboard Tasarımı (Örnek Arayüz)
Dashboard = kontrol paneli.
Bu panel, devrenden gelen sıcaklık verilerini anlamlı bir şekilde gösterir.
🎨DURUM GÖSTERGELERİ
-
Sade ve okunabilir arayüz
-
Canlı güncellenen (real-time) grafik
-
Mobil uyumlu görünüm
-
Öğretmen–öğrenci ve endüstri kullanımına uygun
-
🟢 Normal
-
🟡 Orta Seviye
-
🔴 Kritik Seviye
⭐ A) ANLIK SICAKLIK KARTI
Ekranın sol üstünde büyük bir kutu:
“Şu anki sıcaklık: 28.7°C”
-
Büyük font
-
Fon rengi durumuna göre değişir:
-
0–29°C → Açık yeşil
-
30–39°C → Sarı
-
40°C ve üzeri → Kırmızı
-
-
Altta küçük bilgi:
-
Sensör: TMP36
-
Son güncelleme: 1 saniye önce
-
Bu kart devrenin LED’lerle verdiği bilgiyi görsel olarak yansıtır.
⭐ B) CANLI GRAFİK (Real-Time Line Chart)
Ekranın orta kısmında, Firebase’den gelen sıcaklık değerlerini gösteren bir zaman-serisi grafik:
-
X ekseni: Saat – dakika – saniye
-
Y ekseni: Sıcaklık
-
60 saniyelik kayıyor grafik (real-time chart)
-
Düşüş/çıkış anında canlı hareketli çizgi
Grafiğin alt özellikleri:
-
Minimum – maksimum – ortalama sıcaklık
-
Günlük trend analizi
-
“En yüksek sıcaklık 14:32’de 41.8°C olarak ölçüldü.” gibi notlar
Alternatif Dashboard Yapıları:
Tablolar
Sütun Grafiği
Pasta Grafiği
Çizgi Grafiği
Matrisler
Kontrol Tabloları
Checkboxlar
Tick - Cross
Form Ögeleri
...
Konu ile ilgili Ödevler:
Bu devrenin algoritmasını oluşturun.
Siz de uygun UI/UX tasarım ilkeleriyle bir dashboard hazırlayın.