evtermometresi

Ev Termometresi Yapımı

Internette dolaşırken güzel ve kullanışlı bir proje olan 2×7 segmentli DS18B20 ısı ensörü ile yapılmış bu projeyi paylaşmadan edemedim.

Projenin şekli çok ilgi çekici, ev şeklinde olan bu şekil kapı zillerinde kullanılıyor.

evtermometresi1

Projemizde kullanılan malzemeler arduino, DS18B20 dallas ısı entegresi , 4,7Kohm direnç ve 2 adet 7 segmenli display. Projemizin çalışması ise DS18B20 ısı entegresinden alınan değer arduino ile ölçüldükten sonra bunu 2 x 7 segmentli displayde gösterir. Proje 3 adet kalem pille çalışmaktadır (4,5 volt) .

Projenin bağlantı şeması aşağıda görüldüğü gibidir.

evtermometresi baglanti

evtermometresi baglanti1


/* Arduino 7 Segment Display ile düzenlenmiş bir proje www.arduinom.org */

//Libraries
#include <SevenSeg.h>
#include <OneWire.h>
#include <DallasTemperature.h>

/*---------------DS18B20--------------------*/
// sensörün data çıkışı 2 numaralı pine bağlanmıştır
#define ONE_WIRE_BUS 2
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

/*---------7 Segment 2 digit display--------*/
//SevenSeg(A, B, C, D, E, F, G);
SevenSeg disp (6, 7, 8, 9, 10, 11, 12);
const int numOfDigits =2;
int digitPins [numOfDigits]={3,4};
int digitL;
int digitR;
int temp;

void setup() {
sensors.begin();
disp.setDigitPins ( numOfDigits , digitPins );
disp.setCommonCathode();
disp.setDutyCycle(80);

disp.setTimer (2);
disp.startTimer ();
}

void loop(){
sensors.requestTemperatures();
temp = sensors.getTempCByIndex(0);
disp.write(temp,0);
}
ISR( TIMER2_COMPA_vect ){
disp.interruptAction ();
}

Proje alıntıdır.

 

Kütüphanemiz

 

Boş zamanlarda arduino ile uğraşan kendi halinde bir Öğretmen.

  
  1. kazimkz 3 Nisan 2016 03:38

    gösterdiğiniz ilgi için teşekkür ederim. sürüm 1.6.9. , , kütüphanelerini — taslak-library ekle- .ZIP kitaplığı ekle diyerek tek tek ekledim ve buralarda verdiği hataları artık geçiyor. ancak –SevenSeg(A, B, C, D, E, F, G);– kısmını geçemiyorum. ekran alıntısını koyabilsem buraya keşke.

    Cevapla
    • Arduinocu 3 Nisan 2016 06:37

      Kazım bey programda dediğiniz gibi hatayı gördüm SevenSeg(A,B,C,D,E,……..) kodunun önüne // koymam gerekiyorken koymamışım . Yeni farkettim birde bendeki kütüphaneyi yazının sonuna iliştiriyorum . Bu şekilde inşaAllah herhangi bir sıkıntı almazsınız.
      Zamanınızı bu kadar israf ettiğim için özürdilerim.
      Saygılar

      Cevapla
      • kazimkz 3 Nisan 2016 22:58

        Rica ederim. Ben teşekkür ederim. Benim yapmak şstediğim buradaki sensör yerine analog girişe pot bağlayarak pot değerini görmek ve bu değeri başka bir değerle karşılaştırmak. Umarım çok fazl değişikliğe gerek kalmaz.

        Cevapla
  2. kazimkz 30 Mart 2016 16:02

    Teşekkürler. Yukarıda verilen kod da derleme esnasında “SevenSeg(A, B, C, D, E, F, G);” kısmında hata veriyor.
    Ayrıca bu kodu lm35 olarak nasıl ayarlayabilirim.

    Cevapla
    • Mehmet Selim 30 Mart 2016 18:23

      BU HATA SEVENSEG KÜTÜPHANESİNİ KURMADIĞINIZDAN DOLAYI OLUYOR . YAZININ ALTINDA SEVEN SEG KÜTÜPHANESİNİ EKLEYEREK TEKRAR DENEYİN.

      Cevapla
      • kazimkz 31 Mart 2016 18:30

        sevenseg.h kütüphanesini kurmuştum. o zaman sevenseg.h hatası veriyordu. şimdi kütüphane kısmını geçiyor ama sevenseg kısmında kalıyor.

        Cevapla
      • kazimkz 31 Mart 2016 18:33

        yazının altındaki zip dosyasını indirip çalıştırdığımda da aynı hatayı alıyorum.

        Cevapla
        • Kenan 1 Nisan 2016 16:02

          Arduino ide 1.6.x sürümünü kullanıyorsanız kütüphaneyi indirmenizi tavsiye ederim .

          Cevapla
          • kazimkz 3 Nisan 2016 03:40

            Yukarıdaki kodlar da sizde hata almadan derleniyor mu?

          • kazimkz 3 Nisan 2016 04:12

            SevenSeg(A, B, C, D, E, F, G); satırını komple sildiğimde derleme bitiyor.

  3. konyali 18 Eylül 2015 09:59

    Projenin kendisi hakikaten çekici ama , Bu projenin LM35 versiyonunu yayınlayabilirseniz daha verimli olacaktır.

    Cevapla

Bir Cevap Yazın

Time limit is exhausted. Please reload CAPTCHA.