ROBOTKODLA
ROBOTKODLA Genç Mucit

Eğlen, Kodla, Geleceği Tasarla

Model: TMP36 Yalın Sensör Çipi Başlangıç Seviye Üretici: Analog Devices

TMP36 Düşük Gerilim Hassas Analog Sıcaklık Sensörü (-40°C ~ +125°C)

Analog Devices üretimi, 2.7V - 5.5V ile çalışan, 0°C için 500 mV ofset üreterek negatif sıcaklıkları tek kaynaktan okuyan analog sıcaklık sensörüdür.

Önemli Güvenlik ve Teknik Sınırlama Bilgisi

LM35'ten farklı olarak 0°C altında negatif voltaj üretmez; 0°C için 500 mV ofset voltajı üretir. Bu sayede simetrik negatif beslemeye gerek kalmadan tek kaynakla -40°C'yi ölçer.

Teknik Özellikler ve Elektriksel Parametreler

Çalışma Voltajı 2.70V - 5.50V Lojik Seviye Giriş/Çıkış
Akım Tüketimi 50 µA Tipik çalışma modu
Haberleşme Arayüzü Analog Voltaj (10 mV / °C) Protokol türü
Ölçüm Aralığı -40°C ile +125°C Etkili çalışma sınırı
Hassasiyet / Doğruluk±1°C (25°C'de), ±2°C (tüm aralıkta)Ölçüm sapma payı
Tepki SüresiHava ortamında 5-10 saniyeÖrnekleme hızı
Ölçüm TürüOrtam ve Yüzey SıcaklığıFiziksel büyüklük
Pin Sayısı3 PinModül header pinleri

Pin Bağlantıları ve Görevleri (Pinout)

Pin #Pin AdıSinyal TürüGörev & Açıklama
1 VCC (+) Güç +2.7V - +5.5V besleme girişi
2 VOUT Analog Çıkış 10 mV/°C sıcaklık gerilimi (0°C = 500 mV)
3 GND (-) Toprak Toprak hattı

Geliştirme Kartı Uyumluluk Durumu

Arduino Uno / Nano ✓ Uyumlu
5V Lojik

Doğrudan bağlantı ve yerleşik 5V desteği.

ESP32 (NodeMCU) ✓ Uyumlu
3.3V Lojik

3.3V ile tam uyumlu çalışır.

Raspberry Pi Pico ✓ Uyumlu
3.3V Lojik

MicroPython veya C/C++ SDK ile desteklenir.

BBC Micro:bit ✓ Uyumlu
3.3V Lojik

MakeCode blokları veya MicroPython ile uyumlu.

STM32 (BluePill) ✓ Uyumlu
3.3V (5V Tolerant)

5V tolerant GPIO pinleri doğrudan bağlanabilir.

Örnek Kaynak Kod Kütüphanesi

Arduino Uno Arduino C++ ✓ Test Edildi

TMP36 Sıcaklık Hesaplama Kodu

Gerekli Kütüphaneler: Standart
const int sensorPin = A0;

void setup() {
  Serial.begin(9600);
}

void loop() {
  int rawADC = analogRead(sensorPin);
  float voltage = rawADC * (5.0 / 1023.0);
  
  // TMP36 formülü: (Voltaj - 0.5V) / 0.01V
  float temperatureC = (voltage - 0.5) * 100.0;

  Serial.print("Voltaj: ");
  Serial.print(voltage, 3);
  Serial.print(" V -> Sıcaklık: ");
  Serial.print(temperatureC, 1);
  Serial.println(" °C");

  delay(1000);
}
Seri Monitör Çıktısı (Simülasyon):
Sıcaklık: 24.3 °C

Çalışma Mantığı ve Fiziksel İlkeler

TMP36 Nasıl Çalışır?

TMP36, yarı iletken bant aralığı (bandgap) prensibini kullanan hassas bir sıcaklık sensörüdür.

Her 1°C sıcaklık artışı için çıkış gerilimi tam 10 mV (0.01V) artar.

LM35 ile TMP36 Arasındaki Kritik Fark:

LM35 0°C'de 0V çıkış verir; bu nedenle eksi dereceleri (-10°C gibi) ölçmek için negatif voltaj kaynağı gerekir.

TMP36 ise 0°C'de tam 500 mV (0.5V) çıkış üretir. Böylece -40°C'de çıkış voltajı 100 mV (0.1V) olur ve Arduino tek bir 5V besleme ile negatif sıcaklıkları rahatça okuyabilir:

$$\text{Sıcaklık (°C)} = \frac{\text{Voltaj (V)} - 0.5}{0.01}$$

Artıları ve Sınırlamaları

Güçlü Yönleri (Avantajlar)
  • Negatif beslemeye ihtiyaç duymadan -40°C ile +125°C aralığı
  • Ultra düşük akım tüketimi (50 µA)
  • Kalibrasyon gerektirmeyen fabrika ayarlı doğrusal çıkış
  • Sınırlamaları (Dezavantajlar)
  • Analog gürültülerden etkilenebilir (filtre kondansatörü önerilir)
  • Dijital sensörler (DS18B20) kadar yüksek çözünürlük sunmaz
  • Sık Karşılaşılan Sorunlar ve Çözümleri

  • Sensör ters takılırsa anında aşırı ısınır; TO-92 kılıfın düz yüzü kendinize bakarken bacaklar: 1-VCC, 2-VOUT, 3-GND'dir.