İçindekiler:

IoT APIS V2 - Otonom IoT özellikli Otomatik Bitki Sulama Sistemi: 17 Adım (Resimlerle)
IoT APIS V2 - Otonom IoT özellikli Otomatik Bitki Sulama Sistemi: 17 Adım (Resimlerle)

Video: IoT APIS V2 - Otonom IoT özellikli Otomatik Bitki Sulama Sistemi: 17 Adım (Resimlerle)

Video: IoT APIS V2 - Otonom IoT özellikli Otomatik Bitki Sulama Sistemi: 17 Adım (Resimlerle)
Video: Uykuda Askere Gelen Karabasan Kamera da 2024, Temmuz
Anonim
IoT APIS V2 - Otonom IoT özellikli Otomatik Tesis Sulama Sistemi
IoT APIS V2 - Otonom IoT özellikli Otomatik Tesis Sulama Sistemi
IoT APIS V2 - Otonom IoT özellikli Otomatik Tesis Sulama Sistemi
IoT APIS V2 - Otonom IoT özellikli Otomatik Tesis Sulama Sistemi

Bu proje, önceki talimatımın bir evrimidir: APIS - Otomatik Bitki Sulama Sistemi

APIS'yi neredeyse bir yıldır kullanıyorum ve önceki tasarımı geliştirmek istedim:

  1. Tesisi uzaktan izleme yeteneği. Bu proje bu şekilde IoT özellikli hale geldi.
  2. Toprak nemi probunu değiştirmek kolaydır. Nem probunun üç farklı tasarımından geçtim ve hangi malzemeyi kullanırsam kullanayım er ya da geç aşındı. Dolayısıyla yeni tasarımın mümkün olduğu kadar uzun süre dayanması ve hızlı ve kolay bir şekilde değiştirilmesi gerekiyordu.
  3. Kovadaki su seviyesi. Kovada ne kadar su kaldığını söyleyebilmek ve kova boşaldığında sulamayı durdurmak istedim.
  4. Daha iyi görünüyor. Gri bir proje kutusu iyi bir başlangıçtı ama ben biraz daha iyi görünen bir şey yaratmak istedim. Bu hedefe ulaşabildiysem yargıç sen olacaksın…
  5. Özerklik. Yeni sistemin güç ve/veya internetin kullanılabilirliği açısından özerk olmasını istedim.

Ortaya çıkan proje, öncekinden daha az yapılandırılabilir değildir ve ek kullanışlı özelliklere sahiptir.

Ayrıca yeni aldığım 3D yazıcımı da kullanmak istedim, bu yüzden bazı parçaların basılması gerekecek.

Adım 1: Donanım

Donanım
Donanım
Donanım
Donanım

IoT APIS v2'yi oluşturmak için aşağıdaki bileşenlere ihtiyacınız olacak:

  1. NodeMcu Lua ESP8266 ESP-12E WIFI Geliştirme Kartı - banggood.com'da
  2. SODIAL(R) 3-Pin Ultrasonik Sensör Mesafe Ölçme Modülü, Çift Dönüştürücü, Kart Üzerinde Üç-Pin - on amazon.com
  3. DC 3V-6V 5V Küçük Dalgıç Su Pompası Akvaryum Balık Tankı Pompası - ebay.com'da
  4. Üç renkli LED - amazon.com'da
  5. Vero panosu - amazon.com'da
  6. PN2222 transistör - amazon.com'da
  7. Plastik vidalar, cıvatalar ve somunlar
  8. Lehimleme ekipmanı ve malzemeleri
  9. Teller, dirençler, başlıklar ve diğer çeşitli elektronik bileşenler
  10. Boş Tropicana OJ 2.78 QT kavanozu
  11. 2 galvanizli çivi

Adım 2: Genel Tasarım

Genel tasarım
Genel tasarım
Genel tasarım
Genel tasarım

Genel tasarım aşağıdaki bileşenlerden oluşur: 1. Toprak nemi probu ve bitki sulama muhafazası (birleşik - 3d baskılı)2. Borulama ve kablolama3. Tepsi su sızıntısı sensörü (3d baskılı)4. OJ kavanozunun üstüne monte edilmiş kontrol modülü (3d baskılı kutuya yerleştirilmiş ve eklenmiştir)5. Dalgıç su pompası6. DüğümMCU çizimi7. IoT yapılandırması8. Güç kaynağı: Güç çıkışı üzerinden USB -VEYA- güneş paneli (otonom mod)Her bileşeni ayrı ayrı tartışalım

Adım 3: Dalgıç Su Pompası

Dalgıç Su Pompası
Dalgıç Su Pompası
Dalgıç Su Pompası
Dalgıç Su Pompası

Dalgıç su pompası, OJ kavanozunun tutacağının altına yerleştirilmiştir (su seviyesi ölçümüyle etkileşimi önlemek için). Pompa, girişe serbest su akışı sağlamak için kavanozun tabanının yaklaşık 2-3 mm üzerinde "uçacak" şekilde yerleştirilir.

Normal çalışma için pompanın tamamen suya daldırılması gerektiğinden, kavanozdaki minimum su seviyesi yaklaşık 3 cm (yaklaşık 1 inç) olmalıdır.

Adım 4: OJ Kavanozunun Üstüne Monte Edilen Kontrol Modülü

OJ Kavanozunun Üstüne Monte Edilen Kontrol Modülü
OJ Kavanozunun Üstüne Monte Edilen Kontrol Modülü
OJ Kavanozunun Üstüne Monte Edilen Kontrol Modülü
OJ Kavanozunun Üstüne Monte Edilen Kontrol Modülü
OJ Kavanozunun Üstüne Monte Edilen Kontrol Modülü
OJ Kavanozunun Üstüne Monte Edilen Kontrol Modülü

Su kabı olarak standart büyük Tropicana OJ kavanozunu seçtim. Bunlar yaygın olarak bulunur ve standarttır.

Orijinal musluk çıkarıldıktan sonra kontrol modülü kavanozun üstüne yerleştirilir.

Kontrol modülünün bulunduğu platform 3d yazdırılır. STL dosyası, bu talimatın dosyalar ve eskiz bölümlerinde sağlanır.

Pompa, boru tesisatı ve kablo tesisatı, su seviyesi ölçümü için yer açmak üzere Tropicana kavanozunun tutacağından geçirilir.

Su seviyesi, kontrol modülü platformuna entegre edilmiş ultrasonik mesafe sensörü ile ölçülür. Su seviyesi, boş bir kavanozun mesafe ölçümü ile fark olarak belirlenir ve belirli bir seviyeye kadar su ile doldurulmuş kavanoz.

Kontrol modülü ve US sensörü, 3d baskılı bir "kubbe" ile kaplanmıştır. Kubbenin STL dosyası, bu talimatın dosyalar ve eskizler bölümünde verilmiştir.

Adım 5: Kontrol Modülü - Şemalar

Kontrol Modülü - Şemalar
Kontrol Modülü - Şemalar
Kontrol Modülü - Şemalar
Kontrol Modülü - Şemalar

Kontrol modülü şemaları (bileşenlerin listesi dahil) ve devre tahtası tasarım dosyaları bu talimatın dosyalar ve eskizler bölümünde sağlanmaktadır.

NOT: NodeMCU ile çalışmak, mevcut GPIO pinleri açısından zorlu bir görev oldu. Hemen hemen tüm GPIO'lar, onları derin uyku modunda kullanılamaz veya (önyükleme işlemi sırasında oynadıkları özel işlevler nedeniyle) kullanılamaz hale getiren bir dizi işleve hizmet eder. Sonunda GPIO'ların kullanımı ile gereksinimlerim arasında bir denge bulmayı başardım, ancak birkaç sinir bozucu yineleme aldı.

Örneğin, derin uyku sırasında bir dizi GPIO "sıcak" kalır. LED'i derin uyku sırasında güç tüketimini azaltma amacını alt edenlere bağlamak.

Adım 6: Tepsi Su Sızıntı Sensörü

Tepsi Su Sızıntı Sensörü
Tepsi Su Sızıntı Sensörü
Tepsi Su Sızıntı Sensörü
Tepsi Su Sızıntı Sensörü
Tepsi Su Sızıntı Sensörü
Tepsi Su Sızıntı Sensörü

Tencerenizin alt kısmında bir taşma deliği varsa, suyun alt tepsiden taşma ve zemine (raf veya bitkinizin bulunduğu her neyse) dökülme riski vardır.

Toprak nemi ölçümünün prob pozisyonundan, toprak yoğunluğundan, sulama çıkışına olan uzaklıktan vb. büyük ölçüde etkilendiğini fark ettim. Diğer bir deyişle, sadece toprak nemi ile gitmek, su alt tepsiden taşar ve dökülürse evinize zarar verebilir.

Taşma sensörü, çubukların etrafına sarılmış iki tel ile tencere ve alt tepsi arasında bir aralayıcıdır. Tepsiye su dolduğunda, iki kablo birbirine bağlanır ve böylece mikrodenetleyiciye alt tepside su bulunduğu sinyalini verir.

Sonunda su buharlaşır ve teller ayrılır.

Alt tepsi 3d yazdırılır. STL dosyası, bu talimatın dosyalar ve çizimler bölümünden edinilebilir.

Adım 7: Toprak Nemi Probu ve Sulama Muhafazası

Image
Image
Toprak Nemi Probu ve Sulama Muhafazası
Toprak Nemi Probu ve Sulama Muhafazası
Toprak Nemi Probu ve Sulama Muhafazası
Toprak Nemi Probu ve Sulama Muhafazası

Kombine bir toprak nem probu ve sulama muhafazası olacak şekilde altıgen 3d baskılı bir muhafaza tasarladım.

Bu talimatın dosyalar ve eskizler bölümünde bir 3d baskı dosyası (STL) mevcuttur.

Muhafaza, birbirine yapıştırılması gereken iki parçadan oluşur. Boruyu takmak için muhafazanın yan tarafına değiştirilmiş bir dikenli bağlantı parçası yapıştırılmıştır.

Galvanizli çivileri yerleştirmek için toprak nemi sondası görevi gören iki adet 4,5 mm'lik delik sağlanmıştır. Mikrodenetleyiciye bağlantı, çivilere uyacak şekilde özel olarak seçilen metal ara parçalar aracılığıyla sağlanır.

3 boyutlu tasarım, harika ve kullanımı kolay ancak güçlü bir 3 boyutlu tasarım aracı olan www.tinkercad.com kullanılarak yapılır.

NOT: Neden önceden üretilmiş toprak problarından birini kullanmadığımı sormak isteyebilirsiniz. Cevap şudur: Bunların üzerindeki folyo haftalar içinde erir. Aslında, sınırlı bir süre ile bile tırnaklar voltaj altındadır, yine de aşınırlar ve yılda en az bir kez değiştirilmeleri gerekir. Yukarıdaki tasarım, çivilerin saniyeler içinde değiştirilmesine izin verir.

Adım 8: Borulama ve Kablolama

Boru ve Kablolama
Boru ve Kablolama

Su plana göre Süper Yumuşak Lateks Kauçuk Yarı Şeffaf Boru (1/4" İç Çaplı ve 5/16" Dış Çaplı) ile sağlanır.

Pompa çıkışı daha büyük bir boru ve bir adaptör gerektirir: Kimyasallara Dirençli Polipropilen Dikenli Bağlantı, 1/4" x 1/8" Tüp Kimliği için Düz Azaltma.

Son olarak, 1/8 Tüp ID için Düz Kimyasal Dirençli Polipropilen Dikenli Bağlantı, sulama muhafazasına bağlantı görevi görür.

9. Adım: NodeMCU Çizimi

DüğümMCU Kroki
DüğümMCU Kroki

NodeMCU çizimi, IoT APIS v2'nin çeşitli özelliklerini uygular:

  1. Mevcut WiFi ağına bağlanır -VEYA- WiFi Erişim Noktası olarak çalışır (yapılandırmaya bağlı olarak)
  2. Yerel saati elde etmek için NTP sunucularını sorgular
  3. Tesis izleme ve sulama ve ağ oluşturma parametrelerinin ayarlanması için web sunucusu uygular
  4. Toprak nemini, alt tepsi su sızıntılarını, kavanozdaki su seviyesini ölçer ve 3 renkli LED ile görsel gösterge sağlar.
  5. Çevrimiçi ve güç tasarrufu çalışma modlarını uygular
  6. Her bir sulama çalışmasıyla ilgili bilgileri yerel olarak dahili flash belleğe kaydeder

Adım 10: NodeMCU Sketch - WiFi

NodeMCU Sketch - WiFi
NodeMCU Sketch - WiFi

Varsayılan olarak IoT APIS v2, "Plant_XXXXXX" adlı yerel bir WiFi erişim noktası oluşturur; burada XXXXXX, NodeMCU kartındaki ESP8266 yongasının seri numarasıdır.

Yerleşik web sunucusuna URL aracılığıyla erişebilirsiniz: https://plant.io dahili DNS sunucusu, cihazınızı APIS durum sayfasına bağlayacaktır.

Durum sayfasından, IoT APIS v2'nin WiFi ağınıza bağlanmasını sağlayabileceğiniz ve durumu buluta raporlamaya başlayabileceğiniz sulama parametreleri sayfasına ve ağ parametreleri sayfasına gidebilirsiniz.

IoT APIS, çevrimiçi ve güç tasarrufu sağlayan işlem modlarını destekler:

  1. Çevrimiçi modda IoT APIS, WiFi bağlantısını her zaman açık tutar, böylece tesis durumunuzu istediğiniz zaman kontrol edebilirsiniz
  2. Güç tasarrufu modunda, IoT APIS, periyodik olarak toprak nemini ve su seviyesini kontrol ederek cihazı arada "derin uyku" moduna geçirir, böylece güç tüketimini önemli ölçüde azaltır. Ancak, cihaz her zaman çevrimiçi olarak mevcut değildir ve parametreler yalnızca cihazın açıldığı süre boyunca değiştirilebilir (şu anda her 30 dakikada bir, saat/yarım saatlik gerçek zamanlı saat ile hizalı). Cihaz, yapılandırma değişikliklerine izin vermek için her 30 dakikada bir 1 dakika çevrimiçi kalacak ve ardından derin uyku moduna girecektir. Kullanıcı cihaza bağlanırsa, her bağlantı için "up" süresi 3 dakikaya uzar.

Cihaz yerel WiFi ağına bağlandığında, IP adresi IoT bulut sunucusuna bildirilir ve mobil izleme cihazında görünür.

Adım 11: NodeMCU Taslak - NTP

NodeMCU Çizimi - NTP
NodeMCU Çizimi - NTP

IoT APIS v2, NIST zaman sunucularından yerel saati almak için NTP protokolünü kullanır. Cihazın "gece" moduna girmesi gerekip gerekmediğini belirlemek için doğru zaman kullanılır, yani pompayı çalıştırmaktan veya LED'i yanıp sönmekten kaçının.

Gece saati, iş günleri ve hafta sonu sabahı için ayrı ayrı yapılandırılabilir.

Adım 12: NodeMCU Sketch - Yerel Web Sunucusu

NodeMCU Sketch - Yerel Web Sunucusu
NodeMCU Sketch - Yerel Web Sunucusu
NodeMCU Sketch - Yerel Web Sunucusu
NodeMCU Sketch - Yerel Web Sunucusu
NodeMCU Sketch - Yerel Web Sunucusu
NodeMCU Sketch - Yerel Web Sunucusu

IoT APIS v2, durum raporlaması ve yapılandırma değişiklikleri için yerel bir web sunucusu uygular. Ana sayfa, mevcut nem ve su seviyesi, alt tepside taşan suyun varlığı ve en son sulama çalıştırma istatistikleri hakkında bilgi sağlar. Ağ yapılandırma sayfası (erişilebilir) ağ yapılandırma düğmesi aracılığıyla), yerel WiFi ağına bağlanma ve Çevrimiçi ve Güç Tasarrufu modları arasında geçiş yapma olanağı sağlar. (Ağ yapılandırmasındaki değişiklikler cihazın sıfırlanmasına neden olur)Sulama yapılandırma sayfası (su yapılandırma düğmesi aracılığıyla erişilebilir) sulama parametrelerini (sulamayı başlatmak/durdurmak için toprak nemi, sulama çalıştırması süresi ve çalıştırmalar arasındaki doyma duraklaması, çalıştırma sayısı) sağlar, vb.) Web sunucusu HTML dosyaları, IoT APIS Arduino IDE taslağının veri klasöründe bulunur. Burada bulunan "ESP8266 Sketch Data Upload" aracı kullanılarak SPIFF dosya sistemi olarak NodeMCU flash belleğe yüklenmelidirler.

Adım 13: NodeMCU Sketch - Yerel Sulama Günlüğü ve Dahili Dosya Sistemine Erişim

NodeMCU Sketch - Yerel Sulama Günlüğü ve Dahili Dosya Sistemine Erişim
NodeMCU Sketch - Yerel Sulama Günlüğü ve Dahili Dosya Sistemine Erişim

Ağ bağlantısının mevcut olmaması durumunda, IoT APIS v2 sistemi tüm sulama etkinliklerini yerel olarak günlüğe kaydeder.

Günlüğe erişmek için cihaza bağlanın ve '/edit' sayfasına gidin, ardından watering.log dosyasını indirin. Bu dosya, kayıt başlatıldığından beri tüm sulama işlemlerinin geçmişini içerir.

Bu tür bir günlük dosyası örneği (sekmeyle ayrılmış biçimde) bu adıma eklenmiştir.

NOT: İndirme sayfası, IoT APIS v2 çalışırken Erişim Noktası modundayken kullanılamaz (çevrimiçi Java Script kitaplığına bağımlılık nedeniyle).

Adım 14: NodeMCU Sketch - Toprak Nemi, Alt Tepsi Su Sızıntısı, Su Seviyesi, 3 Renkli LED

Image
Image
NodeMCU Sketch - Toprak Nemi, Alt Tepsi Su Sızıntısı, Su Seviyesi, 3 Renkli LED
NodeMCU Sketch - Toprak Nemi, Alt Tepsi Su Sızıntısı, Su Seviyesi, 3 Renkli LED
NodeMCU Sketch - Toprak Nemi, Alt Tepsi Su Sızıntısı, Su Seviyesi, 3 Renkli LED
NodeMCU Sketch - Toprak Nemi, Alt Tepsi Su Sızıntısı, Su Seviyesi, 3 Renkli LED

Toprak nemi ölçümü, orijinal APIS ile aynı prensibe dayanmaktadır. Ayrıntılar için lütfen bu talimata bakın.

Su tepsisi sızıntıları, dahili PULLUP dirençleri kullanılarak tencerenin altında bulunan tellere anlık olarak voltaj uygulanarak tespit edilir. Ortaya çıkan PIN durumu DÜŞÜK ise, tepside su vardır. PIN durumu YÜKSEK devrenin "bozuk" olduğunu, dolayısıyla alt tepside su olmadığını gösterir.

Su seviyesi, kavanozun üstünden su yüzeyine olan mesafeyi ölçerek ve boş bir kavanozun dibine olan mesafeyle karşılaştırarak belirlenir. Lütfen 3 pinli sensörün kullanımına dikkat edin! Bunlar HC-SR04 dört pinli sensörlerden daha pahalıdır. Maalesef NodeMCU'da GPIO'larım bitti ve tasarımın ek devreler olmadan yalnızca bir NodeMCU'da çalışmasını sağlamak için elimden gelen her kabloyu kesmek zorunda kaldım.

APIS durumunu görsel olarak belirtmek için 3 renkli LED kullanılır:

  1. Orta derecede yanıp sönen YEŞİL - WiFi ağına bağlanılıyor
  2. Hızlı yanıp sönen YEŞİL - NTP sunucusunu sorgulama
  3. Kısa sabit YEŞİL - WiFi'ye bağlandı ve NTP'den geçerli saati başarıyla aldı
  4. Kısa, kesintisiz BEYAZ - ağ başlatma tamamlandı
  5. Hızla yanıp sönen BEYAZ - Erişim Noktası Modu başlatılıyor
  6. Hızla yanıp sönen MAVİ - sulama
  7. Orta Derecede Yanıp Sönen MAVİ - doygun
  8. Kısaca sabit AMBER ve ardından kısaca sürekli KIRMIZI - NTP'den zaman alınamıyor
  9. Dahili web sunucusuna erişim sırasında kısaca sabit BEYAZ

LED "gece" modunda çalışmaz. GECE modu ancak cihaz, NTP sunucularından yerel saati en az bir kez alabilmişse güvenilir bir şekilde belirlenebilir (yerel Gerçek Zamanlı Saat, NTP'ye bir sonraki bağlantı kurulana kadar kullanılacaktır)

LED işlevi örneği burada YouTube'da mevcuttur.

Adım 15: Güneş Enerjisi, Güç Bankası ve Otonom Çalışma

Güneş Enerjisi, Güç Bankası ve Otonom Çalışma
Güneş Enerjisi, Güç Bankası ve Otonom Çalışma
Güneş Enerjisi, Güç Bankası ve Otonom Çalışma
Güneş Enerjisi, Güç Bankası ve Otonom Çalışma
Güneş Enerjisi, Güç Bankası ve Otonom Çalışma
Güneş Enerjisi, Güç Bankası ve Otonom Çalışma

IoT APIS v2'nin arkasındaki fikirlerden biri, otonom olarak çalışabilme yeteneğiydi.

Mevcut tasarım, bunu başarmak için bir güneş enerjisi paneli ve geçici bir 3600 mAh güç bankası kullanıyor.

  1. Güneş paneli amazon.com'da mevcuttur
  2. Güç bankası amazon.com'da da mevcuttur

Güneş paneli de 2600 mAh pil içeriyor, ancak güç tasarrufu modunda bile 24 saat APIS çalışmasını sürdüremedi (pilin aynı anda şarj ve deşarj ile iyi başa çıkmadığından şüpheleniyorum). İki pilin birleşimi yeterli güç sağlıyor ve gün boyunca her iki pilin de yeniden şarj edilmesini sağlıyor gibi görünüyor. Güneş paneli, güç bankasını şarj ederken, güç bankası APIS cihazını çalıştırır.

Lütfen aklınızda bulundurun:

Bu bileşenler isteğe bağlıdır. Cihaza 1A akım sağlayan herhangi bir USB adaptörü ile güç verebilirsiniz.

Adım 16: IoT Entegrasyonu - Blynk

IoT Entegrasyonu - Blynk
IoT Entegrasyonu - Blynk
IoT Entegrasyonu - Blynk
IoT Entegrasyonu - Blynk
IoT Entegrasyonu - Blynk
IoT Entegrasyonu - Blynk

Yeni tasarımın hedeflerinden biri, toprak nemi, su seviyesi ve diğer parametreleri uzaktan izleme yeteneğiydi.

Kullanım kolaylığı ve çekici görsel tasarımı nedeniyle bir IoT platformu olarak Blynk'i (www.blynk.io) seçtim.

Çizimim TaskScheduler ortak çoklu görev kitaplığına dayandığından, Blynk cihaz kitaplıklarını kullanmak istemedim (TaskScheduler için etkin değiller). Bunun yerine Blynk HTTP RESTful API kullandım (burada mevcut).

Uygulamayı yapılandırmak olabildiğince sezgiseldir. Lütfen ekteki ekran görüntülerini takip edin.

Adım 17: Eskizler ve Dosyalar

Eskizler ve Dosyalar
Eskizler ve Dosyalar

IoT APIS v2 taslağı burada github'da bulunur: Sketch

Eskiz tarafından kullanılan birkaç kitaplık burada bulunur:

  1. TaskScheduler - Arduino ve esp8266 için ortak çoklu görev kitaplığı
  2. AvgFilter - sensör verilerinin düzgünleştirilmesi için Ortalama filtrenin tamsayı uygulaması
  3. RTCLib - donanım ve yazılım Gerçek Zamanlı Saatin uygulanması (benim tarafımdan değiştirildi)
  4. Zaman - Zaman kitaplığı için değişiklikler
  5. Saat dilimi - saat dilimi hesaplamalarını destekleyen kitaplık

NOT:

Veri sayfaları, pin belgeleri ve 3B dosyalar, ana çizimin "dosyalar" alt klasöründe bulunur.

Yerleşik web sunucusu için HTML dosyaları, arduino-esp8266fs-plugin (ana çizim klasörünün "data" alt klasöründen bir dosya sistemi dosyası oluşturur ve bunu flash belleğe yükler) kullanılarak NODE MCU flash belleğine yüklenmelidir.

Kapalı Bahçe Yarışması 2016
Kapalı Bahçe Yarışması 2016
Kapalı Bahçe Yarışması 2016
Kapalı Bahçe Yarışması 2016

2016 İç Mekan Bahçecilik Yarışmasında İkincilik

Önerilen: