Taula de continguts:

IoT APIS V2: sistema de reg de plantes automatitzat habilitat per IoT autònom: 17 passos (amb imatges)
IoT APIS V2: sistema de reg de plantes automatitzat habilitat per IoT autònom: 17 passos (amb imatges)

Vídeo: IoT APIS V2: sistema de reg de plantes automatitzat habilitat per IoT autònom: 17 passos (amb imatges)

Vídeo: IoT APIS V2: sistema de reg de plantes automatitzat habilitat per IoT autònom: 17 passos (amb imatges)
Vídeo: Документальный фильм «Экономика солидарности в Барселоне» (многоязычная версия) 2024, De novembre
Anonim
IoT APIS V2: sistema de reg automàtic de plantes automatitzat habilitat per IoT
IoT APIS V2: sistema de reg automàtic de plantes automatitzat habilitat per IoT
IoT APIS V2: sistema de reg automàtic de plantes automatitzat habilitat per IoT
IoT APIS V2: sistema de reg automàtic de plantes automatitzat habilitat per IoT

Aquest projecte és una evolució del meu anterior instructable: APIS - Sistema de reg automàtic de plantes

Fa gairebé un any que faig servir APIS i volia millorar el disseny anterior:

  1. Capacitat de controlar la planta de forma remota. Així es va convertir aquest projecte en IoT.
  2. Fàcil de substituir la sonda d'humitat del sòl. He viscut tres dissenys diferents de la sonda d’humitat i, independentment del material que he fet servir, tard o d’hora es va erosionar. Per tant, se suposava que el nou disseny havia de durar el major temps possible i ser substituït ràpidament i fàcilment.
  3. Nivell de l’aigua a la galleda. Volia saber quanta aigua encara hi ha a la galleda i deixar de regar quan la galleda estigui buida.
  4. Millor aspecte. Un quadre de projecte gris era un bon començament, però volia crear quelcom que quedés una mica millor. Seràs el jutge si fos capaç d'aconseguir aquest objectiu …
  5. Autonomia. Volia que el nou sistema fos autònom en termes de potència i / o disponibilitat d’Internet.

El projecte resultant no és menys configurable que el seu predecessor i té funcions útils addicionals.

També volia utilitzar la meva impressora 3D recentment adquirida, de manera que s’hauran d’imprimir algunes de les parts.

Pas 1: maquinari

Maquinari
Maquinari
Maquinari
Maquinari

Necessitareu els components següents per crear IoT APIS v2:

  1. NodeMcu Lua ESP8266 ESP-12E Taula de desenvolupament WIFI - a banggood.com
  2. SODIAL (R) Mòdul de mesura de distància del sensor ultrasònic de 3 pins, transductor dual, tres pins a la placa: a amazon.com
  3. Bomba d'aigua submergible petita DC 3V-6V 5V Bomba d'aquari de peixos d'aquari - a ebay.com
  4. LED de tres colors: a amazon.com
  5. Tauler Vero: a amazon.com
  6. Transistor PN2222: a amazon.com
  7. Cargols, cargols i femelles de plàstic
  8. Equips i subministraments de soldadura
  9. Filferros, resistències, capçaleres i altres components electrònics diversos
  10. Pot buit de Tropicana OJ 2,78 QT
  11. 2 claus galvanitzats

Pas 2: disseny general

Disseny general
Disseny general
Disseny general
Disseny general

El disseny general consta dels components següents: 1. Sonda d'humitat del sòl i tancament de reg de plantes (combinat - imprès en 3D) 2. Tubs i cablejat3. Sensor de fuites d'aigua de la safata (imprès en 3D) 4. Mòdul de control muntat a la part superior del pot OJ (col·locat i inclòs a la caixa impresa en 3D) 5. Bomba d'aigua submergida6. Esbós de NodeMCU7. Configuració de l'IoT8. Font d'alimentació: USB mitjançant presa de corrent -OR- panell solar (mode autònom) Analitzem cada component individualment

Pas 3: bomba d'aigua submergida

Bomba d'aigua submergida
Bomba d'aigua submergida
Bomba d'aigua submergida
Bomba d'aigua submergida

La bomba d'aigua submergida es troba a sota de la nansa del pot OJ (per evitar interferències amb el mesurament del nivell d'aigua). La bomba es col·loca de manera que estigui "planant" uns 2-3 mm per sobre de la part inferior del pot per permetre un flux lliure d'aigua a la presa.

Com que la bomba ha d’estar totalment submergida per al seu funcionament normal, el nivell mínim d’aigua al pot ha de ser d’uns 3 cm (aproximadament 1 polzada).

Pas 4: Mòdul de control muntat a la part superior del pot OJ

Mòdul de control muntat a la part superior del pot OJ
Mòdul de control muntat a la part superior del pot OJ
Mòdul de control muntat a la part superior del pot OJ
Mòdul de control muntat a la part superior del pot OJ
Mòdul de control muntat a la part superior del pot OJ
Mòdul de control muntat a la part superior del pot OJ

Vaig escollir un pot gran estàndard de Tropicana OJ com a contenidor d’aigua. Aquests són àmpliament disponibles i estàndard.

El mòdul de control es col·loca a la part superior del pot després d’eliminar l’aixeta original.

La plataforma on es troba el mòdul de control està impresa en 3D. El fitxer STL es proporciona a les seccions de fitxers i esbossos d'aquesta instrucció.

La bomba, els tubs i el cablejat s’encaminen a través del mànec del pot Tropicana per netejar l’espai per mesurar el nivell de l’aigua.

El nivell de l'aigua es mesura mitjançant el sensor de distància ultrasònic integrat amb la plataforma del mòdul de control. El nivell de l'aigua es determina ja que la diferència és la mesura de distància d'un pot buit i el pot omplert d'aigua fins a un nivell determinat.

El mòdul de control i el sensor dels EUA estan coberts amb una "cúpula" impresa en 3D. El fitxer STL de la cúpula es proporciona a la secció de fitxers i esbossos d'aquesta instrucció.

Pas 5: mòdul de control: esquemes

Mòdul de control - Esquemes
Mòdul de control - Esquemes
Mòdul de control - Esquemes
Mòdul de control - Esquemes

Els esquemes del mòdul de control (inclosa la llista de components) i els fitxers de disseny de taules de pa es proporcionen a la secció de fitxers i esbossos d'aquesta instrucció.

NOTA: Treballar amb NodeMCU ha demostrat ser una tasca difícil en termes de pins GPIO disponibles. Gairebé tots els GPIO tenen diverses funcions, cosa que fa que no estiguin disponibles per al seu ús o siguin impossibles d’utilitzar en mode de repòs profund (a causa de les funcions especials que juguen durant el procés d’arrencada). Al final, vaig aconseguir trobar un equilibri entre l’ús de GPIO i els meus requisits, però va suposar algunes iteracions frustrants.

Per exemple, un nombre de GPIO romanen "calents" durant el son profund. La connexió del LED a aquells que van derrotar l’objectiu de reduir el consum d’energia durant el son profund.

Pas 6: safata de sensor de fuites d'aigua

Sensor de fuites d’aigua de la safata
Sensor de fuites d’aigua de la safata
Sensor de fuites d’aigua de la safata
Sensor de fuites d’aigua de la safata
Sensor de fuites d’aigua de la safata
Sensor de fuites d’aigua de la safata

Si la vostra olla té un forat de desbordament a la part inferior, hi ha el risc que l’aigua desbordi la safata inferior i es vessi al terra (la prestatgeria o el que sigui on es troba la vostra planta).

Vaig notar que la mesura de la humitat del sòl es veu molt afectada per la posició de la sonda, la densitat del sòl, la distància a la sortida de l’aigua de reg, etc.

El sensor de desbordament és un espaiador entre l’olla i la safata inferior, amb dos cables embolicats al voltant de les barres. Quan l'aigua omple la safata, els dos cables es connecten, cosa que indica al microcontrolador que hi ha aigua a la safata inferior.

Finalment, l’aigua s’evapora i els cables es desconnecten.

La safata inferior està impresa en 3D. El fitxer STL està disponible a la secció de fitxers i esbossos d'aquesta instrucció.

Pas 7: Sonda d’humitat del sòl i recinte de reg

Image
Image
Sonda d’humitat del sòl i recinte de reg
Sonda d’humitat del sòl i recinte de reg
Sonda d’humitat del sòl i recinte de reg
Sonda d’humitat del sòl i recinte de reg

Vaig dissenyar un recinte imprès en hexàgon 3D per ser una sonda combinada d’humitat del sòl i un recinte de reg.

Hi ha disponible un fitxer d'impressió en 3D (STL) a la secció de fitxers i esbossos d'aquesta instrucció.

El recinte consta de dues parts, que s’han d’enganxar. Un accessori de pues modificat s’enganxa al lateral del recinte per fixar el tub.

Es proporcionen dos forats de 4,5 mm per col·locar les ungles galvanitzades, que serveixen com a sondes d'humitat del sòl. La connectivitat amb el microcontrolador s’aconsegueix mitjançant espaiadors metàl·lics seleccionats específicament per adaptar-se a les ungles.

El disseny en 3D es fa mitjançant www.tinkercad.com, que és una eina de disseny en 3D fantàstica i fàcil d’utilitzar però potent.

NOTA: us podeu preguntar per què no he utilitzat simplement una de les sondes de sòl prefabricades? La resposta és: el paper d'alumini es dissol en poques setmanes. De fet, fins i tot amb un temps limitat, les ungles estan sota tensió, encara s’erosionen i cal canviar-les almenys un cop a l’any. El disseny anterior permet substituir les ungles en qüestió de segons.

Pas 8: Tubs i cablejat

Tubs i cablejat
Tubs i cablejat

L’aigua es subministra al pla mitjançant tubs semi-clars de cautxú de làtex súper suau (amb diàmetre interior de 1/4 "i diàmetre exterior de 5/16").

La sortida de la bomba requereix una canonada més gran i un adaptador: accessoris de polipropilè resistent a productes químics, reductora recta per a identificació de tub de 1/4 "x 1/8".

Finalment, un acoblament de polipropilè resistent als productes químics, de forma recta per a tub d'identificació de 1/8 , serveix de connector al tancament de reg.

Pas 9: esbós de NodeMCU

Esbós de NodeMCU
Esbós de NodeMCU

L’esbós de NodeMCU implementa diverses funcions de IoT APIS v2:

  1. Es connecta a la xarxa WiFi existent -OR- com a punt d'accés WiFi (segons la configuració)
  2. Consulta els servidors NTP per obtenir hora local
  3. Implementa un servidor web per al control de plantes i l’ajust de paràmetres de reg i xarxa
  4. Mesura la humitat del sòl, les fuites d’aigua de la safata inferior, el nivell d’aigua al pot i proporciona una indicació visual mitjançant un LED de 3 colors
  5. Implementa modes d’operació en línia i estalvia energia
  6. Desa informació sobre cadascun dels regs que s’executen localment a la memòria flash interna

Pas 10: NodeMCU Sketch: WiFi

NodeMCU Sketch: WiFi
NodeMCU Sketch: WiFi

Per defecte, IoT APIS v2 crearà un punt d'accés WiFi local anomenat "Plant_XXXXXX", on XXXXXX és el número de sèrie del xip ESP8266 a bord de NodeMCU.

Podeu accedir al servidor web integrat mitjançant l’URL: https://plant.io El servidor DNS intern connectarà el vostre dispositiu a la pàgina d’estat d’APIS.

Des de la pàgina d'estat, podeu navegar a la pàgina de paràmetres de reg i a la pàgina de paràmetres de xarxa, on podeu connectar IoT APIS v2 a la vostra xarxa WiFi i començar a informar de l'estat al núvol.

L’API IoT admet modes d’operació en línia i d’estalvi d’energia:

  1. En el mode en línia, IoT APIS manté la connexió WiFi sempre activa, de manera que pugueu comprovar l’estat de la vostra planta en qualsevol moment
  2. En el mode d’estalvi d’energia, IoT APIS comprova la humitat del sòl i el nivell de l’aigua periòdicament, posant el dispositiu en mode de son profund, reduint així dràsticament el seu consum d’energia. Tanmateix, el dispositiu no està disponible en línia tot el temps i els paràmetres només es poden canviar durant el moment en què el dispositiu s’encén (actualment cada 30 minuts, alineats amb el rellotge en temps real d’hora / mitja hora). El dispositiu es mantindrà en línia durant 1 minut cada 30 minuts per permetre canvis de configuració i, a continuació, entrarà en mode de repòs profund. Si l'usuari es connecta al dispositiu, el temps de "pujada" s'amplia a 3 minuts per a cada connexió.

Quan el dispositiu està connectat a una xarxa WiFi local, la seva adreça IP s’informa al servidor de núvol IoT i és visible al dispositiu de monitorització mòbil.

Pas 11: NodeMCU Sketch - NTP

NodeMCU Sketch - NTP
NodeMCU Sketch - NTP

IoT APIS v2 utilitza el protocol NTP per obtenir hora local dels servidors d’hora NIST. S’utilitza el temps correcte per determinar si el dispositiu ha d’entrar en mode “nocturn”, és a dir, evitar fer funcionar la bomba o parpellejar el LED.

La nit es pot configurar per separat per als dies laborables i els caps de setmana al matí.

Pas 12: NodeMCU Sketch: servidor web local

NodeMCU Sketch: servidor web local
NodeMCU Sketch: servidor web local
NodeMCU Sketch: servidor web local
NodeMCU Sketch: servidor web local
NodeMCU Sketch: servidor web local
NodeMCU Sketch: servidor web local

IoT APIS v2 implementa un servidor web local per als informes d’estat i els canvis de configuració. mitjançant el botó de configuració de la xarxa) proporciona la possibilitat de connectar-se a la xarxa WiFi local i canviar entre els modes en línia i l’estalvi d’energia. (Els canvis a la configuració de la xarxa faran que el dispositiu es restableixi) La pàgina de configuració de reg (accessible mitjançant el botó de configuració de l'aigua) proporciona paràmetres de reg de canvi de capacitat (humitat del sòl per iniciar / aturar el reg, la durada de la regada i la pausa de saturació entre les sèries, el nombre de sèries), etc.) Els fitxers HTML del servidor web es troben a la carpeta de dades de l’esbós IDE APIS Arduino de IoT. S'han de penjar a la memòria flash NodeMCU com a sistema de fitxers SPIFF mitjançant l'eina "ESP8266 Sketch Data Upload" que es troba aquí.

Pas 13: Esbós de NodeMCU: registre de reg local i accés al sistema de fitxers intern

NodeMCU Sketch: registre de reg local i accés al sistema de fitxers intern
NodeMCU Sketch: registre de reg local i accés al sistema de fitxers intern

En cas que la connectivitat de xarxa no estigui disponible, el sistema IoT APIS v2 registra totes les activitats de reg localment.

Per accedir al registre, connecteu-vos al dispositiu i aneu a la pàgina "/ edita" i, a continuació, descarregueu el fitxer watering.log. Aquest fitxer conté l'historial de totes les proves de reg des que s'ha iniciat el registre.

A aquest pas s’adjunta un exemple d’aquest fitxer de registre (en format separat per pestanyes).

NOTA: La pàgina de descàrrega no està disponible quan s’executa IoT APIS v2 és el mode de punt d’accés (a causa de la dependència de la biblioteca Java Script en línia).

Pas 14: Esbós de NodeMCU: humitat del sòl, filtració d'aigua de la safata inferior, nivell d'aigua, LED de 3 colors

Image
Image
Esbós de NodeMCU: humitat del sòl, filtració d’aigua de la safata inferior, nivell d’aigua, LED de 3 colors
Esbós de NodeMCU: humitat del sòl, filtració d’aigua de la safata inferior, nivell d’aigua, LED de 3 colors
Esbós de NodeMCU: humitat del sòl, filtració d'aigua a la safata inferior, nivell d'aigua, LED de 3 colors
Esbós de NodeMCU: humitat del sòl, filtració d'aigua a la safata inferior, nivell d'aigua, LED de 3 colors

La mesura de la humitat del sòl es basa en el mateix principi que l’APIS original. Consulteu allò indicable per obtenir més informació.

Les fuites de la safata d’aigua es detecten aplicant momentàniament tensió als cables situats sota l’olla mitjançant resistències PULLUP internes. Si l'estat PIN resultant és BAIX, hi haurà aigua a la safata. L'estat PIN de HIGH indica que el circuit està "trencat", per tant no hi ha aigua a la safata inferior.

El nivell de l’aigua es determina mesurant la distància des de la part superior del pot fins a la superfície de l’aigua i comparant-lo amb la distància fins al fons d’un pot buit. Tingueu en compte l’ús del sensor de 3 pins. Aquests són més cars que els sensors de quatre pins HC-SR04. Malauradament, em vaig quedar sense GPIO a NodeMCU i vaig haver de tallar tots els cables que vaig poder per fer que el disseny funcionés en un sol NodeMCU sense circuits addicionals.

El LED de 3 colors s’utilitza per indicar visualment l’estat APIS:

  1. VERD parpellejant moderadament: es connecta a la xarxa WiFi
  2. Parpelleig ràpid de VERD: consulta del servidor NTP
  3. VERD sòlid breu: s'ha connectat a WiFi i ha obtingut l'hora actual de NTP amb èxit
  4. BLANC sòlid breu: finalització de la inicialització de la xarxa
  5. BLANC intermitent ràpidament: iniciació del mode de punt d'accés
  6. Parpelleig ràpid BLAU: reg
  7. BLAU parpellejant moderadament: saturació
  8. AMBER breument sòlid seguit de VERMELL breument sòlid: no es pot obtenir temps de NTP
  9. BLANC breument sòlid durant l'accés al servidor web intern

El LED no funciona en mode "nocturn". El mode NIght només es pot determinar de manera fiable si el dispositiu ha pogut obtenir l'hora local dels servidors NTP almenys una vegada (s'utilitzarà el rellotge de temps real local fins que s'estableixi la propera connexió a NTP)

Aquí es pot trobar un exemple de la funció LED a YouTube.

Pas 15: energia solar, banc d'energia i funcionament autònom

Energia solar, banc d'energia i funcionament autònom
Energia solar, banc d'energia i funcionament autònom
Energia solar, banc d'energia i funcionament autònom
Energia solar, banc d'energia i funcionament autònom
Energia solar, banc d'energia i funcionament autònom
Energia solar, banc d'energia i funcionament autònom

Una de les idees darrere de IoT APIS v2 era la capacitat d’operar de forma autònoma.

El disseny actual utilitza un panell d'energia solar i un banc d'alimentació provisional de 3600 mAh per aconseguir-ho.

  1. El panell solar està disponible a amazon.com
  2. Power bank també està disponible a amazon.com

El panell solar també ha incorporat una bateria de 2600 mAh, però no va poder mantenir l'operació APIS les 24 hores ni en el mode d'estalvi d'energia (sospito que la bateria no funciona bé amb la càrrega i la descàrrega simultànies). Una combinació de dues bateries sembla proporcionar una alimentació adequada i permetre tornar a carregar les dues bateries durant el dia. El panell solar carrega el banc d’energia, mentre que el banc d’alimentació encén el dispositiu APIS.

Tingueu en compte:

Aquests components són opcionals. Només podeu alimentar el dispositiu amb qualsevol adaptador USB que proporciona corrent 1A.

Pas 16: integració de l'IoT: Blynk

Integració IoT: Blynk
Integració IoT: Blynk
Integració IoT: Blynk
Integració IoT: Blynk
Integració IoT: Blynk
Integració IoT: Blynk

Un dels objectius del nou disseny era la capacitat de controlar la humitat del sòl, el nivell de l’aigua i altres paràmetres a distància.

Vaig triar Blynk (www.blynk.io) com a plataforma IoT per la seva facilitat d'ús i atractiu disseny visual.

Com que el meu esbós es basa en la biblioteca multitarea cooperativa de TaskScheduler, no volia utilitzar les biblioteques de dispositius Blynk (no estan habilitades per a TaskScheduler). En lloc d'això, he utilitzat l'API RESTful HTTP de Blynk (disponible aquí).

Configurar l'aplicació és tan intuïtiu com podria ser. Seguiu les captures de pantalla adjuntes.

Pas 17: esbossos i fitxers

Esbossos i fitxers
Esbossos i fitxers

L’esbós IoT APIS v2 es troba aquí al github: Sketch

Aquí es troben algunes biblioteques que utilitza l'esbós:

  1. TaskScheduler: biblioteca multitarea cooperativa per a Arduino i esp8266
  2. AvgFilter: implementació sencera del filtre Mitjà per suavitzar les dades del sensor
  3. RTCLib: implementació del maquinari i el programari Real Time Clock (modificat per mi)
  4. Time: modificacions de la biblioteca Time
  5. Fus horari: biblioteca que admet càlculs de zones horàries

NOTA:

Els fulls de dades, la documentació de pins i els fitxers 3D es troben a la subcarpeta "fitxers" de l'esbós principal.

Els fitxers HTML del servidor web integrat s’han de penjar a la memòria flash NODE MCU mitjançant arduino-esp8266fs-plugin (que crea un fitxer del sistema de fitxers a partir de la subcarpeta “dades” de la carpeta principal d’esbossos i el penja a la memòria flash)

Concurs de jardineria interior 2016
Concurs de jardineria interior 2016
Concurs de jardineria interior 2016
Concurs de jardineria interior 2016

Accèsit al concurs de jardineria interior 2016

Recomanat: