Arduino Kombi Termostatı Yapımı. Arduino ile kendi kablosuz kombi termostatımı yaptım. Dışarıdan almaya göre maliyet konusunda oldukça başarılı. Bu yazıda tüm detayları ile termostat yapımından bahsedeceğim.
Arduino Kombi Termostatı Yapımı
Öncelikle kullandığım malzemeleri yazarak başlayalım.
- 1 adet küçük potansiyometri 0,30 TL
- 1 adet 10k ohm potansiyometri 3 TL
- 1 adet 16×2 lcd ekran 5 TL
- 2 adet arduino pro mini 6 + 6 TL
- 1 adet 433 mhz alıcı verici 1,2 TL
- 1 adet led
- 1 adet dh22 sıcaklık nem sensörü 1,5 TL
- yeterince jumper kablo dişi-dişi, dişi-erkek.
- 1 adet pro mini için küçük breadbord 3 TL
- verici anten yapımı için 2 adet 17 cm lik tek damar 26awg kablo
- 2 adet pcb kutusu 10 TL
- 1 adet röle 2 TL
Toplam maliyet: 38 TL
Yani kur farklılığı vs diye düşünürsek maksimum 50tl bu iş halledilir. Piyasada kablosuzlar 300tl civarında.
Görüntülere bakalım:
İşlemler oldukça basit arkadaşlar arduino pro minilerden biini alıcı diğerini verici olarak programlıyoruz. Bağlantıları kuruyoruz ve işlem bu kadar kodlama kısmıyla daha net anlaşılır diye düşünüyorum. Eğer sorularınız olursa yorum kısmından yazabilirsiniz.
Alıcı kodları:
#include <VirtualWire.h> // RF modül için gerekli Arduino kütüphanesi char*mesaj; // Alınan mesajın yazıldığı değişken int ledPin=2; //Ledin bağlı olduğu arduino pini int KombiPin=3; //röleye bağlı olduğu arduino pini void setup() { pinMode(ledPin,OUTPUT); pinMode(KombiPin,OUTPUT); Serial.begin(9600); vw_set_ptt_inverted(true); vw_set_rx_pin(4); //RF alıcı modü data çıkışı bağlı olduğu arduino pini vw_setup(4000); vw_rx_start(); } void loop() { uint8_t buf[VW_MAX_MESSAGE_LEN]; uint8_t buflen = VW_MAX_MESSAGE_LEN; if (vw_get_message(buf, &buflen)) { if(buf[0]=='0'){ Serial.println(buf[0]); digitalWrite(ledPin,LOW); //Ledi söndür... digitalWrite(KombiPin,LOW); //kombiyi kapat sustur... } if(buf[0]=='1'){ // Eğer gelen mesaj 1 ise ... Serial.println(buf[0]); digitalWrite(ledPin,HIGH); //Ledi yak... digitalWrite(KombiPin,HIGH); //kombiyi çalıştır... } } }
Verici kodları:
#include <VirtualWire.h> // RF modül için gerekli Arduino kütüphanesi #include <LiquidCrystal.h> // lcd ekran için kütüphane #include "DHT.h" //kütüphaneyi içeri alıyoruz #define DHTPIN 9 //sıcaklığı okuduğumuz data pini #define DHTTYPE DHT11 // dht hangi verisyon olduğunu yazıyoruz üzerinde yazar DHT dht(DHTPIN, DHTTYPE); //dht kısa ismini ve pinini veriyoruz. char*mesaj; // Gönderilecek mesajın yazıldığı değişken int a,b,c,d; // Kullanacağımız sıcaklık nem değişkenler. LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // lcd ekranı tanımladık void setup() { dht.begin(); //dht haberleşmeyi açtık vw_set_ptt_inverted(true); vw_set_tx_pin(7); // Verici modülün data pin bağlantısını yazıyoruz 7.pin vw_setup(4000); } void loop() { b=dht.read(); // dht11 kontrol a=analogRead(A0); //potansiyometreden gelen ayarlı istenilen sıcaklık. a=map(a,0,1023,35,5); // ayarlı sıcaklığı 5-35 derece arasında sınırlandırdık. c=dht.readTemperature(); // sıcaklığı c ye aktardık d =dht.readHumidity(); // nem i d ye aktardık lcd.begin(16, 2); //lcd ekrana yazıyoruz lcd.setCursor(0, 0); lcd.print("Oda:"); lcd.print(c); lcd.print(" Nem: %"); lcd.print(d); lcd.setCursor(0,1); lcd.print("istenilen:"); lcd.print(a); //Burada istenilen sıcaklık, oda sıcaklığından büyük ise kombi çalışır değilse çalışmaz. if (a > c) { mesaj = "1" ; //Eğer butona basılmış ise mesaj değişkenini 1 yapıyoruz. } else { mesaj = "0" ; //Eğer butona basılmış ise mesaj değişkenini 0 yapıyoruz. } Serial.println(mesaj); //Oluşturduğumuz mesaj değişkenini serial ekranda yazdırdık. vw_send((uint8_t *)mesaj, strlen(mesaj)); //Mesaj değişkenini RF 433 ile alıcı modüle gönderiyoruz. vw_wait_tx(); delay(250); }
Ustad merhaba, kablosuz oda termostati yapmak istiyorum malum satin alsak cok pahali. Sen bu konuda ugrasmissin ve kendine yapmissin fakat ben yaptiklarini biraz daha detaylandirmani mumkunse istiyorum. Her devrenin fotografini cekmissin ama hangi kablo diger yarafta ereye gidiyor buju bilemedim. Mesela kucuk potasyometri demissin ama ben hangisiji alacagimi bilemedim. Robotistandan falan parcalarin linkini verebilirmisin? G cenin bu saatinde el yardim hocam 😉
Yakin zamanda muhtemelen haftaya yrni bir termsotat yapicam orada daha detaylı anlatim ve videolar olacak. sayfayı takipte kalın.
Orçun hocam, inanın bu çalışmayı dört gözle bekliyorum. Sadece ben değil bir çok kişiye faydası dokunacak bir çalışma olacak. Çok teşekkür ederim
Projyi renkli ekran üzerinde yapacağım için malzeme bekliyorum ayrıca çift haberleşme olacağından üzerinde çalışmam gerek. Yaptığım zaman sizlerle paylaşacağım.
Merhabalar, projeniz gerçekten çok güzel ben de yapmak istiyorum ancak elektronik bilgisine sahip değilim. Bundan dolayı montaj videosu ya da devre şeması fotoğraflarını yüklerseniz daha faydalı olur.
Merhabalar, projeniz gerçekten çok güzel ben de yapmak istiyorum ancak elektronik bilgisine sahip değilim. Bundan dolayı montaj videosu ya da devre şeması fotoğraflarını yüklerseniz daha faydalı olur.
Bu konuda yardımcı olursanız çok sevinirim.
Öncelikle elinize sağlık. Benim bir sorum olacak. Oda termostatlarının daha verimli çalışabilmesi için en azından gündüz ve gece olarak farklı modları olması daha fazla enerji tasarrufu yapmamızı sağlayacaktır. Böyle bir zaman programı ile çalışabilecek bir sistem yapabilir miyiz?
Teşekkür ederim. Tabiki yapılabilir ds1302 ile devreyi desteklerseniz zamanı aklında tutar ve ona göre gündüz aç kapat şu derece tut gibi her şey yapılabilir ihtiyaç nedir ona göre planlanabilir. Yapılamaz diye bir şey yok hayal edebilin yeter.
Orçun bey, öncelikle ellerinize sağlık. Ben diyorum ki hani siz yeni versiyonun hazırlığını yaparken biz elimizi alıştırmak için bu projeyi yapmaya çalışsak nasıl olur. Demem o ki bu çalışmanızın şemasını verebilir misiniz acaba Şimdiden teşekkür ederim. Kolay gelsin, iyi çalışmalar.
Merhaba, aklımda bir proje var ama tam olarak bitirmeden çalışıp çalışmadığını test etmeden paylaşmak pek mümkün değil o yüzden bir süre bekleteceğim. Muhtemelen aralık başında bitmiş olacak 16×2 lcd ekranlı 2 butonlu ve çift taraflı haberleşen bir termostat düşünüyorum.
Hocam herşey çok güzel. Ancak bunu bir de kombiye bağlama aşaması var. Bu denendi mi bunun üzerine çalışıyor musunuz ?
Şuan evimde kullanıyorum ben bunu sorunsuz şekilde çalışıyor. Kombiye montajı zorlayacak bir olay değil. Yeni versiyonu yaptığımda kombilere bağlama aşmasını da video alarak anlatacağım.
Merhaba elinizi saglık çok güzel bir çalışma olmuş ben bunun arduino ve esp8266-01 ile olanını yapmaya planlıyorum malumunuz onda tek arduino yeterli oluyor bu yönde çalışmanız varsa paylaşabilirmisiniz kolay gelsin
Oyle düşüncelerim vardi fakat telefondan evde herkes kullanamiyacagi için vazgeçtim. nodemcu ya da esp ile röle kullanarak yapabilirsiniz. esp kullanımını araştırırsaniz çok zorlanmadan yapabilirsiniz.
Elinize sağlık. Projeyi öncelikle kendim yapmayı düşünüyorum. İleride biraz daha geliştirebilirim belki vaktim olursa. Bir şey sormak istiyorum. Röle olarak nasıl bir röle kullandınız? Ben baktı m ama bir çok röle çeşidi var. Ben viessman kombi kullanıyorum. Kombiye göre değişir mi acaba?
Hayir farketmez röle önemli degil sadece hatti açıp kapatacak o kadar. Röle hakkında yazılarım ve videolar mevcut sitede bakabilirsiniz.
Usta ben bu projei gerçekleştirmek istiyorum üniversite hocam proje ödevi verdi ama henüz yeteri kadar iyi değilim bunda o yüzden bağlantıları nasıl yapıcaz o konuda yarıdmcı olma şansınız var mı acaba ?
Hocam şu şekilde bir hata alıyorum ama çözümünü bir türlü bulamadım yardımcı olma şansınız var ise çok mutlu olurum bir türlü çözemedim ne yaptıysam olmadı
Hata tam görünmüyor?
Hocam ben ise bu şekilde bir hata alıyorum ama ne yaptıysam çözemedim yardcımcı olabilirsen çok sevinirim
DHT kutuphanesini silin tamamen sonra aşağıdaki kütüphaneyi zip olarak ekleyin.
http://downloads.arduino.cc/libraries/github.com/adafruit/DHT_sensor_library-1.3.8.zip
Tüm bağlantıları doğru çok fazla kontrol ettim kod da aynen yazdığınız gibi fakat ekranda böyle bişeyler karşılaşıyorum bunu nasıl çözebilirim acaba
Potansiyometreyi bağladıysan orta bacağını v0 3.pine yani bağla ve sağa sola çevirerek ekranda yazı çıkana kadar çevir.
Şu şekilde bir hata alıyorum acaba neden kaynaklanıyordur
şu anda da böyle bir hata veriyor yüklerken fakat yinede yüklemeyi yapıyor potansiyormetreyi de dediğin gibi bağladım fakat değişen bir şey olmadı
char*mesaj; // Alınan mesajın yazıldığı değişken
bu değişkenin yukarıda doğru yazdığından emin ol ve
mesaj=”1″; bunun düz tırnak işareti olmasına dikkat et.
Hocam lütfen bana bir mail atabilir misiniz özelden son bir kaç pürüz kaldışu an istenilen sıcaklığım 21 fakat oda 25 olmasına rağmen alıcı daki röle ve ledim sürekli açık yüzdüm yüzdüm kuyruğa geldim yardımcı olur musun lütfen ferdi.inanc.96@gmail.com
ters bağlamış olabilirsin röle mantığı ters çalışıyor çünkü.
Ayrıca kombi için yeni yaptığım projeyi kullanırsan senin için daha iyi olur.
Ustam güzel bir iş çıkarmışsınız, elinize sağlık. Yaptım ve çalışıyor.
Yapıp kullanabilmenize sevindim teşekkürler
bu yaınlamış olduğunuz proje çalışmasının ŞEMATİK ÇİZİMİ VE ARDUİNO YAZILIMINİ GÖNDEREBİLİRMİSİNİZ
https://orcunakyol.com.tr/kombi-termostat-yapimi-versiyon-2.html bu bağlantıya bakabilirsin yazı içerisinde mevcut.