Sisukord:

IoT APIS V2 - autonoomne IoT -toega automatiseeritud taimede niisutussüsteem: 17 sammu (koos piltidega)
IoT APIS V2 - autonoomne IoT -toega automatiseeritud taimede niisutussüsteem: 17 sammu (koos piltidega)

Video: IoT APIS V2 - autonoomne IoT -toega automatiseeritud taimede niisutussüsteem: 17 sammu (koos piltidega)

Video: IoT APIS V2 - autonoomne IoT -toega automatiseeritud taimede niisutussüsteem: 17 sammu (koos piltidega)
Video: Autonomous trains: Technology Explained 2024, Juuli
Anonim
IoT APIS V2 - autonoomne IoT -toega automatiseeritud taimede niisutussüsteem
IoT APIS V2 - autonoomne IoT -toega automatiseeritud taimede niisutussüsteem
IoT APIS V2 - autonoomne IoT -toega automatiseeritud taimede niisutussüsteem
IoT APIS V2 - autonoomne IoT -toega automatiseeritud taimede niisutussüsteem

See projekt on minu eelmise juhendi areng: APIS - automatiseeritud taimede niisutussüsteem

Olen kasutanud APIS -i peaaegu aasta ja tahtsin eelmist disaini täiustada:

  1. Võimalus tehast eemalt jälgida. Nii sai see projekt IoT-toega.
  2. Lihtne mulla niiskussondi vahetada. Olen läbinud kolm erinevat niiskussondi konstruktsiooni ja olenemata sellest, millist materjali ma kasutasin, lagunes see varem või hiljem. Seega pidi uus disain kestma nii kaua kui võimalik ning olema kiiresti ja lihtsalt asendatav.
  3. Veetase ämbris. Tahtsin öelda, kui palju vett on ämbris veel saadaval, ja lõpetada jootmine, kui ämber on tühi.
  4. Parem välimus. Hall projektikarp oli hea algus, kuid tahtsin luua midagi, mis näeks natuke parem välja. Teie olete kohtunik, kui ma suutsin selle eesmärgi täita …
  5. Autonoomia. Tahtsin, et uus süsteem oleks võimsuse ja/või Interneti kättesaadavuse osas autonoomne.

Saadud projekt on eelkäijast vähem konfigureeritav ja sellel on täiendavaid kasulikke funktsioone.

Tahtsin kasutada ka oma äsja omandatud 3D-printerit, nii et mõned osad tuleb printida.

Samm: riistvara

Riistvara
Riistvara
Riistvara
Riistvara

IoT APIS v2 loomiseks vajate järgmisi komponente:

  1. NodeMcu Lua ESP8266 ESP -12E WIFI arendusnõukogu - saidil banggood.com
  2. SODIAL (R) 3-pin ultrahelianduri kauguse mõõtmise moodul, kahe anduriga, kolme kontaktiga pardal-on amazon.com
  3. DC 3V -6V 5V väike sukeldatav veepump akvaariumi akvaariumpump - eBay.com
  4. Kolmevärviline LED - saidil amazon.com
  5. Vero pardal - saidil amazon.com
  6. PN2222 transistor - saidil amazon.com
  7. Plastist kruvid, poldid ja mutrid
  8. Jootmisseadmed ja -tarvikud
  9. Juhtmed, takistid, päised ja muud mitmesugused elektroonilised komponendid
  10. Tühi Tropicana OJ 2,78 QT purk
  11. 2 tsingitud naela

2. etapp: üldine disain

Üldine disain
Üldine disain
Üldine disain
Üldine disain

Üldine disain koosneb järgmistest osadest: 1. Mulla niiskussond ja taimede kastmisruum (kombineeritud - 3D trükitud) 2. Torud ja juhtmestik 3. Salve veelekkeandur (3D trükitud) 4. Juhtmoodul, mis on paigaldatud ELT purgi ülaosale (paigutatud ja suletud 3D trükitud ümbrisesse) 5. Sukeldunud veepump6. NodeMCU visand7. IoT konfiguratsioon 8. Toide: USB toitepistiku kaudu - VÕI - päikesepaneel (autonoomne režiim) Arutleme iga komponendi üle eraldi

Samm: veealune veepump

Sukeldunud veepump
Sukeldunud veepump
Sukeldunud veepump
Sukeldunud veepump

Sukeldunud veepump asub OJ purgi käepideme all (et vältida veetaseme mõõtmist). Pump on paigutatud nii, et see "hõljuks" umbes 2-3 mm purgi põhja kohal, et võimaldada vaba vee sissevoolu.

Kuna pump peaks normaalseks tööks olema täielikult sukeldatud, peaks minimaalne veetase purgis olema umbes 3 cm (umbes 1 tolli).

Samm 4: ELT purgi peale paigaldatud juhtmoodul

Juhtmoodul, mis on paigaldatud ELT purgi peale
Juhtmoodul, mis on paigaldatud ELT purgi peale
Juhtmoodul, mis on paigaldatud ELT purgi peale
Juhtmoodul, mis on paigaldatud ELT purgi peale
Juhtmoodul, mis on paigaldatud ELT purgi peale
Juhtmoodul, mis on paigaldatud ELT purgi peale

Veemahutiks valisin tavalise suure Tropicana OJ purgi. Need on laialdaselt saadaval ja standardsed.

Juhtmoodul asetatakse purgi peale pärast algse kraani eemaldamist.

Platvorm, millel juhtimismoodul asub, on trükitud 3D -vormingus. STL -fail on toodud selle juhendi failide ja visandite jaotistes.

Pump, torud ja juhtmed juhitakse läbi Tropicana purgi käepideme, et vabastada ruumi veetaseme mõõtmiseks.

Veetaset mõõdetakse juhtmooduli platvormiga integreeritud ultraheli kaugusanduriga. Veetase määratakse nii, et erinevus on tühja purgi kaugus ja purk, mis on veega täidetud teatud tasemeni.

Juhtmoodul ja USA andur on kaetud 3D trükitud "kupliga". Kupli STL -fail on toodud selle juhendi jaotises Failid ja visandid.

5. samm: juhtimismoodul - skeemid

Juhtmoodul - skeemid
Juhtmoodul - skeemid
Juhtmoodul - skeemid
Juhtmoodul - skeemid

Juhtmooduli skeemid (sh komponentide loend) ja leivaplaadi kujundusfailid on toodud selle juhendi jaotises Failid ja visandid.

MÄRKUS. NodeMCU -ga töötamine osutus olemasolevate GPIO -tihvtide osas keeruliseks ülesandeks. Peaaegu kõik GPIO -d täidavad mitmeid funktsioone, mis muudab need kas kasutamiseks kättesaamatuks või sügava unerežiimi jaoks võimatuks (nende erifunktsioonide tõttu, mida nad käivitusprotsessi ajal mängivad). Lõpuks õnnestus mul leida tasakaal GPIO -de kasutamise ja oma nõuete vahel, kuid see võttis paar masendavat iteratsiooni.

Näiteks jäävad paljud GPIOd sügava une ajal kuumaks. LED -ide ühendamine nendega, kes võitsid sügava une ajal energiatarbimise vähendamise eesmärgi.

6. samm: salve veelekke andur

Salve veelekke andur
Salve veelekke andur
Salve veelekke andur
Salve veelekke andur
Salve veelekke andur
Salve veelekke andur

Kui teie potti põhjas on ülevooluava, on oht, et vesi voolab alumisele alusele ja võib põrandale (riiul või mis iganes teie taim asub) maha voolata.

Märkasin, et mulla niiskuse mõõtmist mõjutavad suuresti sondi asukoht, mulla tihedus, kaugus jootmisavast jne. Teisisõnu, ainult mulla niiskuse tõttu võib teie kodu kahjustada, kui vesi ületab alumise salve ja valgub üle.

Ülevooluandur on poti ja alumise aluse vahekaugus, mille ümber on kaks traati. Kui salve täidab vesi, ühendatakse kaks juhtmest, andes seega mikrokontrollerile märku, et alumises salves on vett.

Lõpuks aurustub vesi ja juhtmed on lahti ühendatud.

Alumine salv on trükitud 3D -vormingus. STL -fail on saadaval selle juhendi jaotises Failid ja visandid.

7. samm: mulla niiskussond ja kastmisruum

Image
Image
Mulla niiskusandur ja kastmisruum
Mulla niiskusandur ja kastmisruum
Mulla niiskusandur ja kastmisruum
Mulla niiskusandur ja kastmisruum

Kujundasin kuusnurkse 3D -trükitud korpuse, mis oleks kombineeritud mulla niiskussond ja kastmisruum.

3D -printimisfail (STL) on saadaval selle juhendi jaotises Failid ja visandid.

Korpus koosneb kahest osast, mis tuleb kokku liimida. Torude kinnitamiseks liimitakse korpuse küljele muudetud okastarvik.

Tsingitud naelte paigutamiseks on kaks 4,5 mm ava, mis toimivad mulla niiskussondidena. Ühendus mikrokontrolleriga saavutatakse spetsiaalsete küünte jaoks sobivate metallvaheseinte abil.

3D-disain on tehtud saidi www.tinkercad.com abil, mis on suurepärane ja hõlpsasti kasutatav, kuid samas võimas 3D-disainitööriist.

MÄRKUS. Võib-olla soovite küsida, miks ma lihtsalt ei kasutanud ühte eelnevalt valmistatud mullaandurit? Vastus on: nende foolium lahustub mõne nädala jooksul. Tegelikult, isegi piiratud aja jooksul, on küüned pinge all, need siiski erodeeruvad ja neid tuleb vähemalt kord aastas välja vahetada. Ülaltoodud disain võimaldab naelu mõne sekundi jooksul vahetada.

Samm: torud ja juhtmestik

Torud ja juhtmestik
Torud ja juhtmestik

Vesi tarnitakse plaanile ülipehme latekskummist pool läbipaistva toru kaudu (1/4 "siseläbimõõduga ja 5/16" välisläbimõõduga).

Pumba väljalaskeava jaoks on vaja suuremat toru ja adapterit: kemikaalikindel polüpropüleenist okastraat, vähendav sirge 1/4 "x 1/8" toru ID jaoks.

Lõpuks on jootmiskambri pistikuks kemikaalikindel polüpropüleenist okastarvik, sirge 1/8 toru ID jaoks.

9. samm: NodeMCU visand

NodeMCU visand
NodeMCU visand

NodeMCU visand rakendab mitmeid IoT APIS v2 funktsioone:

  1. Ühendab olemasoleva WiFi -võrguga - VÕI - töötab WiFi pääsupunktina (sõltuvalt konfiguratsioonist)
  2. Pärib kohaliku aja saamiseks päringuid NTP -serveritest
  3. Rakendab veebiserverit taimede jälgimiseks ning jootmis- ja võrguparameetrite reguleerimiseks
  4. Mõõdab mulla niiskust, alumise vee lekkeid, veetaset purgis ja annab visuaalse näidu kolme värvi LED -i kaudu
  5. Rakendab võrgu- ja energiasäästurežiime
  6. Salvestab sisemise välkmälu kohta teabe iga jootmise kohta kohapeal

Samm 10: NodeMCU Sketch - WiFi

NodeMCU Sketch - WiFi
NodeMCU Sketch - WiFi

Vaikimisi loob IoT APIS v2 kohaliku WiFi -pöörduspunkti nimega "Plant_XXXXXX", kus XXXXXX on NodeMCU pardal oleva ESP8266 kiibi seerianumber.

Sisseehitatud veebiserverile pääsete juurde URL-i kaudu: https://plant.io sisemine DNS-server ühendab teie seadme APIS-i olekulehega.

Olekulehelt saate liikuda jootmisparameetrite lehele ja võrguparameetrite lehele, kus saate panna IoT APIS v2 ühenduse looma WiFi -võrguga ja alustada oleku teatamist pilvele.

IoT APIS toetab võrgu- ja energiasäästurežiime:

  1. Veebirežiimis hoiab IoT APIS WiFi -ühenduse kogu aeg üleval, nii et saate oma tehase olekut igal ajal kontrollida
  2. Energiasäästurežiimis kontrollib IoT APIS perioodiliselt mulla niiskust ja veetaset, lülitades seadme vahepeal "sügava une" režiimi, vähendades seega oluliselt selle energiatarbimist. Seade pole aga võrgus kogu aeg saadaval ja parameetreid sai muuta ainult seadme sisselülitamise ajal (praegu iga 30 minuti järel, joondatud reaalajas kella/poole tunniga). Seade jääb võrku 1 minutiks iga 30 minuti järel, et lubada konfiguratsioonimuudatusi, ja lülitub seejärel sügava unerežiimi. Kui kasutaja loob seadmega ühenduse, pikeneb „üles” aeg iga ühenduse puhul 3 minutini.

Kui seade on ühendatud kohaliku WiFi -võrguga, teatatakse selle IP -aadress IoT pilveserverile ja see on mobiilseireseadmes nähtav.

Samm 11: NodeMCU Sketch - NTP

NodeMCU Sketch - NTP
NodeMCU Sketch - NTP

IoT APIS v2 kasutab NTP -protokolli NIST -aja serveritest kohaliku aja saamiseks. Õiget aega kasutatakse selleks, et teha kindlaks, kas seade peaks minema öörežiimi, st vältige pumba töötamist või LED -i vilkumist.

Ööaeg on seadistatav tööpäeviti ja nädalavahetuse hommikuks eraldi.

12. samm: NodeMCU visand - kohalik veebiserver

NodeMCU Sketch - kohalik veebiserver
NodeMCU Sketch - kohalik veebiserver
NodeMCU Sketch - kohalik veebiserver
NodeMCU Sketch - kohalik veebiserver
NodeMCU Sketch - kohalik veebiserver
NodeMCU Sketch - kohalik veebiserver

IoT APIS v2 rakendab olekuaruandluse ja konfiguratsioonimuudatuste jaoks kohalikku veebiserverit. Kodulehekülg pakub teavet praeguse niiskuse ja veetaseme, ülevooluvee olemasolu kohta alumises salves ja viimase kastmisperioodi statistikat. võrgu konfigureerimise nupu kaudu) võimaldab luua ühenduse kohaliku WiFi -võrguga ning vahetada võrgu- ja energiasäästurežiimide vahel. (Muutused võrgukonfiguratsioonis põhjustavad seadme lähtestamise) Kastmise konfiguratsioonileht (ligipääsetav vee konfigureerimise nupu kaudu) pakub võimalust muuta jootmisparameetreid (mulla niiskus kastmise alustamiseks/lõpetamiseks, jootmise kestus ja küllastuspaus pauside vahel, korduste arv jne) Veebiserveri HTML -failid asuvad IoT APIS Arduino IDE visandi andmekaustas. Need tuleks SPODF -failisüsteemina üles laadida NodeMCU välkmällu, kasutades siin asuvat tööriista "ESP8266 Sketch Data Upload".

Samm 13: NodeMCU visand - kohalik jootmislogi ja juurdepääs sisemisele failisüsteemile

NodeMCU visand - kohalik jootmislogi ja juurdepääs sisemisele failisüsteemile
NodeMCU visand - kohalik jootmislogi ja juurdepääs sisemisele failisüsteemile

Kui võrguühendus pole saadaval, logib süsteem IoT APIS v2 kõik jootmistööd kohalikult.

Logile juurdepääsemiseks looge ühendus seadmega ja navigeerige lehele "/redigeeri", seejärel laadige alla fail watering.log. See fail sisaldab kõigi jootmiste ajalugu alates logimise algusest.

Selle sammu juurde on lisatud sellise logifaili näide (vahekaardiga eraldatud vormingus).

MÄRKUS. Allalaadimisleht pole saadaval, kui IoT APIS v2 töötab pääsupunkti režiimis (sõltuvuse tõttu veebipõhisest Java Scripti teegist).

14. samm: NodeMCU visand - mulla niiskus, alumise salve veeleke, veetase, 3 värvi LED

Image
Image
NodeMCU Sketch - mulla niiskus, alumise salve veeleke, veetase, 3 värvi LED
NodeMCU Sketch - mulla niiskus, alumise salve veeleke, veetase, 3 värvi LED
NodeMCU Sketch - mulla niiskus, alumise salve veeleke, veetase, 3 värvi LED
NodeMCU Sketch - mulla niiskus, alumise salve veeleke, veetase, 3 värvi LED

Pinnase niiskuse mõõtmine põhineb samal põhimõttel nagu algne APIS. Palun vaadake selle juhendi kohta üksikasju.

Veesalve lekked tuvastatakse, rakendades sisemiste PULLUP -takistite abil hetkeks pinget poti all asuvatele juhtmetele. Kui PIN -koodi olek on LOW, on salves vett. PIN -i olek HIGH näitab, et vooluahel on "katki", seetõttu pole aluses salves vett.

Veetaseme määramiseks mõõdetakse kaugust purgi ülaosast veepinnani ja võrreldakse seda tühja purgi põhjaga. Pange tähele 3 -kontaktilise anduri kasutamist! Need on kallimad kui nelja kontaktiga andurid HC-SR04. Kahjuks lõppesid NodeMCU GPIO -d ja ma pidin katkestama kõik juhtmed, et saaksin disainida ainult ühe NodeMCU ilma täiendavate ahelateta.

APIS -i oleku visuaalseks näitamiseks kasutatakse kolme värvi LED -i:

  1. Mõõdukalt vilkuv ROHELINE - WiFi -võrguga ühenduse loomine
  2. Kiiresti vilkuv ROHELINE - päringuid esitav NTP -server
  3. Lühike kindel ROHELINE - WiFi -ga ühendatud ja NTP -lt praegune aeg edukalt saadud
  4. Lühike tahke VALGE - võrgu lähtestamine on lõppenud
  5. Kiiresti vilkuv VALGE - pääsupunkti režiimi käivitamine
  6. Kiiresti vilkuv SININE - jootmine
  7. Mõõdukalt vilkuv SININE - küllastav
  8. Lühidalt tugev AMBER, millele järgneb põgusalt punane - ei saa NTP -lt aega
  9. Sisemisele veebiserverile juurdepääsu ajal lühidalt valge

LED ei tööta öörežiimis. NIght -režiimi oli võimalik usaldusväärselt määrata ainult siis, kui seade suutis NTP -serveritest vähemalt korra kohaliku aja saada (kohalikku reaalajas kella kasutatakse kuni järgmise ühenduse loomiseni NTP -ga)

LED -funktsiooni näide on YouTube'is saadaval siin.

15. samm: päikeseenergia, toitepank ja autonoomne töö

Päikeseenergia, Power Bank ja autonoomne töö
Päikeseenergia, Power Bank ja autonoomne töö
Päikeseenergia, Power Bank ja autonoomne töö
Päikeseenergia, Power Bank ja autonoomne töö
Päikeseenergia, Power Bank ja autonoomne töö
Päikeseenergia, Power Bank ja autonoomne töö

Üks IoT APIS v2 ideedest oli võime iseseisvalt tegutseda.

Praegune disain kasutab selle saavutamiseks päikesepaneeli ja vahepealset 3600 mAh akupanka.

  1. Päikesepaneel on saadaval saidil amazon.com
  2. Toitepank on saadaval ka saidil amazon.com

Päikesepaneelil on sisseehitatud ka 2600 mAh aku, kuid see ei suutnud isegi energiasäästurežiimis 24 tundi APIS -i tööd säilitada (ma kahtlustan, et aku ei saa samaaegse laadimise ja tühjenemisega hästi hakkama). Tundub, et kahe aku kombinatsioon annab piisavalt energiat ja võimaldab mõlemat akut päeva jooksul uuesti laadida. Päikesepaneel laeb toiteallikat, toitepank aga APIS -seadet.

Pane tähele:

Need komponendid on valikulised. Saate seadet lihtsalt toita mis tahes USB -adapteriga, mis tagab 1A voolu.

16. samm: Interneti -integratsioon - Blynk

IoT integratsioon - Blynk
IoT integratsioon - Blynk
IoT integratsioon - Blynk
IoT integratsioon - Blynk
IoT integratsioon - Blynk
IoT integratsioon - Blynk

Uue disaini üheks eesmärgiks oli võimalus jälgida pinnase niiskust, veetaset ja muid parameetreid eemalt.

Valisin Ily platvormiks Blynk (www.blynk.io) selle kasutusmugavuse ja ahvatleva visuaalse disaini tõttu.

Kuna minu visand põhineb TaskScheduleri ühistööülesannete raamatukogul, ei soovinud ma kasutada Blynk -seadme teeke (need pole TaskScheduleri jaoks lubatud). Selle asemel kasutasin Blynk HTTP RESTful API -d (saadaval siin).

Rakenduse seadistamine on nii intuitiivne kui võimalik. Palun järgige lisatud ekraanipilte.

17. samm: visandid ja failid

Visandid ja failid
Visandid ja failid

IoT APIS v2 visand asub siin githubis: Sketch

Mõned visandis kasutatud teegid asuvad siin:

  1. TaskScheduler - Arduino ja esp8266 ühistuline mitme ülesande raamatukogu
  2. AvgFilter - keskmise filtri täisarvuline rakendamine andurite andmete silumiseks
  3. RTCLib - riist- ja tarkvara reaalajas kella rakendamine (minu poolt muudetud)
  4. Aeg - ajaraamatukogu muudatused
  5. Ajavöönd - ajavööndi arvutusi toetav raamatukogu

MÄRGE:

Andmelehed, nööpnõeladokumentatsioon ja 3D-failid asuvad põhijoonise alamkaustas "failid".

Sisseehitatud veebiserveri HTML-failid tuleks üles laadida NODE MCU välkmällu, kasutades arduino-esp8266fs-pluginat (mis loob failisüsteemi faili peamise visandikausta alamkaustast "data" ja laadib selle välkmällu)

Siseaiandusvõistlus 2016
Siseaiandusvõistlus 2016
Siseaiandusvõistlus 2016
Siseaiandusvõistlus 2016

Siseaiandusvõistluse 2016 teine koht

Soovitan: