Arduino – LM35 Sıcaklık Sensörü ve LCD ile Termometre Uygulaması

İsis programında göstereceğim. LM35 sıcaklık sensöründen okunan analog voltaja göre LM016L 2X16 lcd de gösterim yapacağız.



LM35 Sensörü hakkında biraz bilgi vereyim; Analog olarak çıkış verir. -55 ile 150 derece arasında ölçüm yapabilir.10mV/derece hasasiyetindedir.Ayrıca Arduino referans gerilimimiz 5V oldugundan dolayı analog okuma kanalından maksimum 5V okuyabiliriz.Arduino bu bilgiyi 10 bitlik bilgiye çevireceğinden dolayı 5V 1023 tam sayısına karşılık gelmektedir(0 da dahil).Buna göre 5/1023=0,0048=4,88mV hassasiyetinden ölçüm yapabileceğimiz anlamına gelir.

#include <LiquidCrystal.h> //LCD kütüphanesini ekledik.
LiquidCrystal lcd(22, 23, 24, 25, 26, 27); //LiquidCrystal lcd( RS , ENABLE , D4 , D5 , D6 , D7) //pinlerimizi buna göre ayarlıyoruz. Arduinomuza bu şekilde tanımlayabiliriz.

float sicaklik; // lcd de sonuç olarak gösterilecek değer
float analogdeger; // sıcaklık sensöründen okunan analog voltaj
int analogpin0=A0;
void setup()
{
lcd.begin(16,2); //lcd.begin(sutunsayisi,satirsayisi) Lcd ekranımızı sütun ve satır sayısına göre kuruyoruz.
}
void loop()
{
baslangic(); // giriş yazıları
analogdeger=analogRead(analogpin0);
analogdeger = (analogdeger/1023)*5000;//değeri mV'a dönüştürür lm35 yapısı gereği bu işlemi yaptık
sicaklik=analogdeger/10,0; // her 10mV 1 derece sıcaklık yaptığı için. 10 a bölerek sıcaklığı bulduk.
lcd.clear();
lcd.setCursor(0,0);
lcd.print("SICAKLIK DEGERI:");
lcd.setCursor(0,1);
lcd.print(sicaklik);// float bir deger olduğu için tırnak kullanmadık dikkat edin
lcd.setCursor(7,1);
lcd.print("DERECEDIR");
delay(2000);

}
void baslangic()
{
lcd.clear(); //komutu ile ekranı temizliyoruz.
lcd.setCursor(2,0); // komutu yazı yazacağımız adrese imlecimizi götürür.Burada (3,0) değeri
//ilk satırın 3. karakter kutusuna yerleştirir.
lcd.print("ATILGAN ARGE"); // lcd.print(""); komutu ile türkçe karakterler dışında çıktı yazı yazabiliriz.
lcd.setCursor(3,1);
lcd.print("INOVASYON");
delay(1000);

}

Rate this post