İçindekiler:

ESP8266/NodeMCU ve Blynk Kullanan Yayıcı Termostat: 7 Adım (Resimlerle)
ESP8266/NodeMCU ve Blynk Kullanan Yayıcı Termostat: 7 Adım (Resimlerle)

Video: ESP8266/NodeMCU ve Blynk Kullanan Yayıcı Termostat: 7 Adım (Resimlerle)

Video: ESP8266/NodeMCU ve Blynk Kullanan Yayıcı Termostat: 7 Adım (Resimlerle)
Video: ESP8266 NodeMCU ile Blynk Kullanımı 2024, Temmuz
Anonim
ESP8266/NodeMCU ve Blynk Kullanan Yayıcı Termostat
ESP8266/NodeMCU ve Blynk Kullanan Yayıcı Termostat
ESP8266/NodeMCU ve Blynk Kullanan Yayıcı Termostat
ESP8266/NodeMCU ve Blynk Kullanan Yayıcı Termostat
ESP8266/NodeMCU ve Blynk Kullanan Yayıcı Termostat
ESP8266/NodeMCU ve Blynk Kullanan Yayıcı Termostat

Geçenlerde çiçek ve sebze tohumlarımın mevsimin başlarında çimlenmesine yardımcı olması gereken ısıtmalı bir çoğaltıcı satın aldım. Termostatsız geldi. Ve termostatlar oldukça pahalı olduğu için kendim yapmaya karar verdim. Bu fırsatı Blynk ile biraz oynamak için kullanmak istediğimden, termostatımı etrafta yattığım bir ESP8266/NodeMCU geliştirme kartına dayandırdım.

Önceki projeler için, ne zaman sıkışsam ilham almak ve yardım almak için instructables.com gibi siteleri çok kullanırdım. Kendime küçük bir katkı yapmaktan daha adil değil, işte benim ilk talimatım!

Sorumluluk Reddi: Bu proje AC 230V üzerinde çalışır, bu oldukça tehlikelidir ve yanlış olan herhangi bir şey sizi öldürebilir. Herhangi bir hasar, yaralanma veya can kaybından sorumlu tutulamam. Bunu kendi sorumluluğunuzda yapın

Adım 1: Kullandığım Şeylerin Listesi

Kullandığım Şeylerin Listesi
Kullandığım Şeylerin Listesi
Kullandığım Şeylerin Listesi
Kullandığım Şeylerin Listesi
Kullandığım Şeylerin Listesi
Kullandığım Şeylerin Listesi

1 DüğümMCU V3.0

2 DS18B20 1 kablolu sıcaklık sensörü

1 Röle modülü

1 LCD1602 I2C ekran

3 Renkli basmalı düğmeler

1 adet şeffaf kapaklı 158x90x60 kasa

1 5V USB telefon şarj cihazı

1 Kısa USB 2.0 A Erkek - B Erkek Mikro 5 Pinli Veri Kablosu

1 4.7kΩ Direnç

1 su geçirmez kontrplak blok, yaklaşık 10x5x2cm

1 adet beyaz plastik tüp, çap 12 mm, uzunluk 16 cm

1 230V fişli güç kablosu

1 230V dişi güç soketi (2 pin)

1 230V dişi güç soketi (3 pin)

1 6 konumlu 2 sıralı terminal bloğu

Bir ucunda 3,5 mm stereo jak fişi olan 1 stereo ses kablosu

1 adet 3.5mm stereo soket dişi

2 M16 kablo rakoru konektörü

1 adet beyaz perspex yaklaşık 160x90

Ve bazı bağlantı telleri, ısıyla daralan makaron, yapıştırıcı, çift taraflı yapışkan bant, siyah sprey boya, PCB kartı ayırıcı ara parçaları, M3 cıvatalar ve 1,5 mm/6,5 mm/12 mm/16 mm matkap

Adım 2: Termostatın Tasarlanması

Termostatın Tasarlanması
Termostatın Tasarlanması

Söylendiği gibi, termostat bir ESP8266/NodeMCU geliştirme kartı etrafında inşa edilmiştir.

Yayıcıdaki hem toprağın hem de havanın gerçek sıcaklığı 2 sıcaklık sensörü ile ölçülecektir. Bu sensörler, 1-Wire olarak adlandırılan bir arayüze sahiptir, bu da onların bir giriş portuna paralel olarak bağlanabilecekleri anlamına gelir. Bu mükemmel veri sayfasında belirtildiği gibi, 1-Wire bus, yaklaşık 5kΩ'luk bir harici çekme direnci gerektirir. Sensör sinyal hattı ile NodeMCU'nun 3.3V'si arasında 4.7kΩ direnç kullanıyorum.

İstenen hedef toprak sıcaklığını artırabilmek veya azaltabilmek için 2 adet buton ve ayrıca mevcut ve hedef sıcaklıklar hakkında bazı geri bildirimler sağlamak için 16x2 karakter LCD ekran eklenmiştir. Bu LCD ekranın yerleşik bir arka ışığı vardır. Arka ışığın sürekli açık kalmasını önlemek için bir süre sonra ekranı karartmak için bazı kodlar eklemeye karar verdim. Arka ışığı tekrar etkinleştirebilmek için başka bir buton ekledim. Son olarak, yayıcıdaki ısı kablosuna giden gücü açıp kapatmak için bir röle modülü eklenir.

Yukarıdaki resim, bu bileşenlerin ana üniteye nasıl bağlandığını göstermektedir.

Adım 3: Termostatı 'Blynk' Yapmak

Termostatı 'Blynk' yapmak
Termostatı 'Blynk' yapmak
Termostatı 'Blynk' yapmak
Termostatı 'Blynk' yapmak
Termostatı 'Blynk' yapmak
Termostatı 'Blynk' yapmak

Daha sonra kodumuzda Blynk uygulamasından bazı verilere ihtiyacımız olacağı için, önce Blynk işine bakalım.

Blynk başlangıç talimatlarının ilk 3 adımını izleyin.

Şimdi Blynk uygulamasında yeni bir proje oluşturun. Proje adı olarak 'Propagator' seçtim. Cihaz listesinden 'NodeMCU'yu seçin, bağlantı türü 'WiFi'dir. Karanlık temayı seviyorum, bu yüzden 'Karanlık'ı seçtim. Tamam'a bastıktan sonra, e-posta adresinize bir Yetkilendirme Simgesinin gönderildiğini belirten bir açılır pencere gösterilecektir. Postanızı kontrol edin ve bu jetonu yazın, daha sonra NodeMCU koduna ihtiyacımız var.

Şimdi gösterilen boş ekrana dokunun ve şunu ekleyin:

  • 2 gösterge (her biri 300 enerji, yani toplamda 600)
  • 1 Süper Grafik (900 enerji)
  • 1 Değer Göstergesi (200 enerji)
  • 1 Kaydırıcı (200 enerji)
  • 1 LED (100 enerji)

Bu, ücretsiz 2000 enerji bakiyenizi tam olarak tüketir;-)

Yukarıdaki resimler, ekranın bu öğelerle nasıl düzenleneceğini gösterir. Her bir öğeye dokunarak ayrıntılı ayarlar yapılabilir (yukarıdaki resimlerde de gösterilmiştir).

Bittiğinde, 'oynat' düğmesini seçerek projenizi etkinleştirin. Uygulama (elbette) bağlanamayacak, çünkü henüz bağlanacak bir şey yok. Öyleyse bir sonraki adıma geçelim.

Adım 4: Her Şeyi Çalıştıran Kod

Şimdi ESP8266/NodeMCU'muzu programlama zamanı. Bunun için buradan indirebileceğiniz Arduino IDE uygulamasını kullanıyorum. ESP8266/NodeMCU'ya kurmak için, Magesh Jayakumar'ın bu harika talimatına bir göz atın.

Propagator Termostatım için oluşturduğum kod aşağıdaki Thermostat.ino dosyasında bulunabilir.

Bu kodu yeniden kullanmak istiyorsanız, koddaki WiFi SSID'nizi, parolanızı ve Blynk Yetkilendirme simgenizi güncellediğinizden emin olun.

Adım 5: Sıcaklık Sensörü Modülünün Oluşturulması

Sıcaklık Sensörü Modülünün Oluşturulması
Sıcaklık Sensörü Modülünün Oluşturulması
Sıcaklık Sensörü Modülünün Oluşturulması
Sıcaklık Sensörü Modülünün Oluşturulması
Sıcaklık Sensörü Modülünün Oluşturulması
Sıcaklık Sensörü Modülünün Oluşturulması

Yayıcının tabanı, yaklaşık 2 cm kalınlığında keskin bir kum veya çok ince kum tabakası ile doldurulacaktır. Bu, alt ısıyı daha eşit bir şekilde yayacaktır. 'Toprak' sıcaklığını doğru bir şekilde ölçmek için su geçirmez DS18B20 sıcaklık sensörünü kullanmaya karar verdim. Yayıcım içerideki havanın sıcaklığını ölçmek için yerleşik bir analog termometre ile gelmesine rağmen, hava sıcaklığını elektronik olarak da ölçmek için başka bir sıcaklık sensörü eklemeye karar verdim.

Her iki sensörü de güzel bir şekilde yerinde tutmak için basit bir ahşap yapı oluşturdum. Bir parça su geçirmez kontrplak aldım ve toprak sıcaklık sensörünü tutmak için yan yana 6,5 mm'lik bir delik açarak sensör telini bloktan geçirdim. Bunun yanında, kontrplak bloğun ortasına toplam yüksekliğin yaklaşık 3/4'üne kadar 12 mm'lik bir delik ve bloğun ortasından 12 mm'lik delikle biten kenardan 6,5 mm'lik bir delik açtım. Bu delik hava sıcaklık sensörünü tutar.

Hava sıcaklığı sensörü, 12 mm'lik deliğin içine uyan plastik beyaz bir tüple kaplıdır. Tüpün uzunluğu yaklaşık 16 cm'dir. Tüpün alt yarısında (sensörün olduğu yerde) delinmiş birkaç 1.5 mm deliği vardır, üst yarısı siyaha boyanmıştır. Fikir, tüpün siyah kısmındaki havanın biraz ısınması, yukarı çıkması ve kaçması, böylece sensörün etrafında bir hava akışı oluşturmasıdır. Umarım bu, hava sıcaklığının daha iyi okunmasına yol açar. Son olarak, kumun veya kumun girmesini önlemek için sensör kablolarının delikleri yapıştırıcı ile doldurulur.

Sensörleri bağlamak için bir ucunda stereo 3,5 mm jak fişi olan eski bir stereo ses kablosu kullandım. Diğer taraftaki konektörleri kestim ve 3 kabloyu lehimledim (ses kablomda bakır toprak, kırmızı ve beyaz kablo var):

- sensörlerden (toprak) gelen her iki siyah kablo da ses kablosunun topraklama kablosuna gider

- her iki kırmızı kablo (+) kırmızı kabloya gider

- her iki sarı kablo (sinyal) beyaz kabloya gider

Lehimli parçaları bir miktar ısıyla daralan makaronla ayrı ayrı izole ettim. Ayrıca 2 sensör kablosunu bir arada tutmak için ısıyla daralan makaron kullanıldı.

Tamamlanan Sıcaklık Sensörü modülü yukarıdaki 4. resimde gösterilmektedir.

Sıcaklık Sensörü modülünün tamamlanmasından sonra, bir çift taraflı yapışkan bant kullanılarak ısıtılan yayıcının ortasına kurulur. Tel, yayıcı tabanındaki mevcut açıklıktan (telin oturması için biraz büyütmem gerekti) beslenir.

Adım 6: Termostat Modülünün Oluşturulması

Termostat Modülünün Oluşturulması
Termostat Modülünün Oluşturulması
Termostat Modülünün Oluşturulması
Termostat Modülünün Oluşturulması
Termostat Modülünün Oluşturulması
Termostat Modülünün Oluşturulması
Termostat Modülünün Oluşturulması
Termostat Modülünün Oluşturulması

ESP8266/NodeMCU, ekran, röle ve 5V güç kaynağı, şeffaf kapaklı 158x90x60 mm kasaya düzgün bir şekilde sığar.

NodeMCU'yu, LCD ekranı ve röleyi kasanın içine monte etmek için bir taban plakasına ihtiyacım vardı. 3D baskılı bir taban plakası sipariş etmeyi düşündüm, bu yüzden SketchUp'ta bir.stl dosyası oluşturdum. Fikrimi değiştirdim ve bunu 4 mm beyaz perspex parçasından kendim yaptım. SketchUp'ı kullanarak, 3 mm'lik deliklerin delineceği tam yeri işaretlemek için bir şablon oluşturdum. Örnek için.skp dosyasına bakın. Bileşenler, uygun uzunlukta bazı ayırıcı ara parçalar kullanılarak taban plakasına monte edilir.

Kasanın yan taraflarındaki düğmeler ve konektörler için delikler açtım, düğmeleri ve konektörleri taktım ve yanlış bağlantılardan kaçınmak için farklı renklerde kablolar kullanarak kabloladım. 230V AC parçalarını dikkatlice bağladım. Yine: 230V AC tehlikeli olabilir, projenin bu bölümünü hazırlarken ne yaptığınızı bildiğinizden emin olun!

5V güç kaynağı ve terminal bloğu, çift taraflı yapışkan bantla kasanın alt kısmında yerinde tutulur.

Kabloları NodeMCU'ya bağladıktan sonra, kasadaki bazı m3 cıvatalarla taban plakasını sabitlemek biraz uğraştı.

Son eylem: şeffaf kapağı yerine yerleştirin ve işimiz bitti!

7. Adım: Sonuç

Bu termostatı yayıcım için inşa etmek ve onu inşa etme ilerlememi takip etmek ve bu talimatı yazmak gerçekten eğlenceliydi.

Termostat bir cazibe gibi çalışır ve Blynk uygulamasını kullanarak kontrol etmek ve izlemek de iyi çalışır.

Ama her zaman iyileştirme için yer vardır. 'Hedefi aşmaktan' çok fazla kaçınarak sıcaklık kontrolünü iyileştirmeyi düşünüyorum. Muhtemelen sözde PID kütüphanesine bir göz atacağım.

Başka bir fikir: Her seferinde kasayı açmak zorunda kalmadan NodeMCU yazılımını güncellemek için 'Over The Air' OTA seçeneği ekleyebilirim.

Önerilen: