Arduino sıcaklık ölçme etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Arduino sıcaklık ölçme etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

Arduino LM35 Sıcaklık Sensörü İle Sıcaklık Ölçme

 Arduino LM35 Sıcaklık Sensörü Kullanımı

    Arduino ile LM35 sıcaklık sensörü kullanımı oldukça basittir, zira sensörün çalışma prensibi zaten oldukça basittir; her bir derece için sinyal bacağında 10mV luk voltaj değişimi gerçekleşir ve tamamen olmasa da (her zaman biraz hata vardır) bu değişimin doğrusal olduğunu söyleyebiliriz.

LM35 Pin Tanımları    

Lm35 Sıcaklı Sensörünün 3 adet pini bulunmaktadır :

  1. + Pini : Arduino 'nun 5V pinlerinden birine bağlanır.
  2.  - Pini : Arduino 'nun GND pinlerinden birine bağlanır.
  3.  S Pini: Sinyal çıkış pini olup, Arduino 'nun Analog pinlerinden (A0,A1 vs) birine bağlanır.

Lm35 Arduino Bağlantısı 

Arduino Lm35 wiring

Görselde görmüş olduğunuz Lm35 modül ile 2°C ile 150°C arasında sıcaklık ölçümlerini yapabiliriz. LM35 modül ile -55 ile 150 derece arasındaki sıcaklıkları da ölçmek mümkün ancak bu farklı bir yazının konusu olabilir; devre üzerinde bazı modifikasyonlara ihtiyacı oluyor.


Arduino Lm35 ile Sıcaklık Ölçme Örnek Kod

Öncelikle Arduino ile Voltaj ölçme konusunda bilginiz yoksa : Arduino ile voltaj okuma  konusunu okumanızı tavsiye ederim.  Aşağıdaki kod ile her 5 saniyede bir sıcaklığı ölçüp seri monitöre yazdırabiliriz :

// Arduino LM35 Code Example
// by HakkanR 07.11.2022
// https://www.devrelerim.com/2022/11/arduino-lm35-scaklk-sensoru-ile-scaklk.html
void setup() {
  Serial.begin(115200);
}

void loop() {
  int adcValue = analogRead(A0);
  float VonPin = adcValue * 0.0048828125f; // 5/1024
  float degreeInCelsius = VonPin / 0.01f;  // celsius/10mV
  Serial.print("Temp :");
  Serial.print(degreeInCelsius);
  Serial.println("°C");
  delay(5000);
}

Kod açıklaması :
  • adcValue ile analog pine gelen voltajın ADC sonucu olan değeri elde ediyoruz
  • VonPin ile ADC 'den gelen dönüşüm değerini (5/1024) ile çarpıp voltaj değerine çaviriyoruz
  • degreeinCelcius değeri ile okumuş olduğumuz voltaj değerinin içinde kaçtane 10mV olduğunu, yani kaç derece olduğunu hesaplamak için 0.01f e bölüyoruz
 Burada diğer tüm değişkenlerden kurtulup : yani tüm matematiği peşinen yapıp :

  float degreeInCelsius = analogRead(A0)*0.48828125f);

yazarak da işin içinden çıkabiliriz. Detaylıca ne yaptığımız anlaşılsın diye adım adım yazmış olduk sadece.


setup kısmındaki satır seri iletişimi başlatmak için,
Serial.print lerle yazdırmak istediklerimizi yazdırıyoruz, 
delay(5000); 5 saniyelik bekleme yapıyor, süreyle ihtiyacınıza göre oynayabilirsiniz, Bu arada derece işareti ° ALT + 0176 tuş kombinasyonuyla çıkıyor. 😏

Herkese kolay gelsin.

Türksat Saat Kanalı ve IRIG-B Time Code

Türksat Saat Kanalından Saat Bilgisi Nasıl Alınır? Uyduda kanalları dolaşırken, şu Türksat Saat kanalı hep dikkatimi çekmiştir. Özellikle  S...