Bu uygulamamızda LM35 DZ sıcaklık sensörü üzerinden Arduino ile okumuş olduğumuz analog değerleri belirli matematiksel işlemler sonucunda sıcaklık değeri olarak seri ekran üzerinde yazdıracağız.

LM35 Nedir?

LM35 serisi hassas sıcaklık sensörü entegre devresidir. LM35 santigrat dereceye doğru orantılı olarak bir çıkış gerilimi vermektedir. LM35 sıcaklık sensörü -55 °C ile 150°C arasında sıcaklık değerlerini ölçebilmektedir. LM35 sıcaklık sensörü 1°C’ye karşılık olarak yaklaşık 10mV çıkış gerilimi vermektedir. Bu çıkış gerilim değerlerini referans alarak Arduino programında yapacağımız matematiksel işlemler sıcaklık bilgisini rahatlıkla edinmiş oluruz.

Malzeme Listesi:

Devre Şeması:

Arduino Kodu:

#define Lm35Pin A0
float OkunanDeger = 0;
float Sicaklik = 0;
float GerilimDegeri = 0;
void setup() {
Serial.begin(9600); //Seri ekranın 9600 baud rate hızında ayarlıyoruz.
}
void loop() {
OkunanDeger = analogRead(Lm35Pin);
Serial.print("Okunan Analog Sensör Değeri: ");
Serial.println(OkunanDeger);
// A0 pinin üzerinden okunan değeri mV cinsinden gerilim değerine dönüştürüyoruz.
GerilimDegeri = (OkunanDeger/1023)*5000;
// 10mV – 1°C'ye karşılık geldiği dolayı elde etmiş olduğumuz gerilim değerini 10'a bölerek sıcaklık değerine dönüştürüyoruz.
Sicaklik = GerilimDegeri / 10.0;
Serial.print("Sıcaklık Değeri: ");
Serial.print(Sicaklik);
Serial.println("°C ");
Serial.println("**********************************");
delay(1000); // Okuma parazitlerinden arınmak için kısa bir geçikme veriyoruz.
}

Öncelikle pin ve değişken tanımlamalarını yapıyoruz. Seri ekranı 9600 baud rate hızında başlatıyoruz. analogRead(Lm35Pin); ile lm35 sıcaklık sensörünün çıkışını analog olarak okuyoruz ve OkunanDeger adlı değişkene atıyoruz. Okumuş olduğumuz bu değer 0 ile 1023 arasındadır. Bu değeri seri ekran üzerinde yazdırıyoruz.

Okunan analog değer gerilim değerini ifade etmediğinden okumuş olduğumuz bu değeri gerilim değerine çeviriyoruz.

Bu çevirmeyi GerilimDegeri = (OkunanDeger/1023)*5000; ile elde ediyoruz. Burada elde ettiğimiz gerilim değeri mV cinsindendir.

Başta da belirtiğimiz üzere 10mV – 1°C’ye karşılık geldiğinden okumuş olduğumuz gerilim değerini 10 ’a bölerek sıcaklık bilgisini santigrat cinsinden elde ediyoruz.  Elde etmiş olduğumuz sıcaklık bilgisini seri ekran üzerinden yazdırıyoruz. Son olarak okunacak olan parazit gerilim değerlerini elimine etmek için belli bir süre gecikme tanımlıyoruz. Yazmış olduğumuz programın çıktısı aşağıda gösterilen seri ekran görüntüsü şeklindedir.

Sizde yapmış olduğumuz bu uygulamaya ek olarak okunan değer aralığına göre belirli ledlerin yanmasını sağlayan uygulamayı gerçekleştirebilirsiniz.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz