Skip to content

Codice per il progetto orto idroponico Campo delle Fragole

License

Notifications You must be signed in to change notification settings

fablab-imperia/orto-idroponico

Repository files navigation

Orto idroponico

Sistema di controllo per coltivazione idroponica che consente circolazione dell'acqua e parziale correzione dei valori di PH e conducibilità della stessa.

Read this in other languages: English 🇬🇧 🇺🇸.

Sommario

Componenti

Struttura e pompe:

  • x2 pompe peristaltiche 12V DC (per fertilizzante e acido)
  • Pompa di ricircolo dell'acqua 230V AC (ad esempio per acquari)
  • Tubi PVC e raccordi
  • Scatola di derivazione (sufficientemente grande da proteggere l'intera elettronica)
  • Struttura di sostegno, contenitori per acqua, acido e fertilizzante
  • Eventuale interruttore generale

Elettronica:

  • ESP32 NodeMCU Development Board
  • Sonda pH e relativo modulo
  • Sensore Temperatura DS18B20 e relativo modulo
  • Sensore Conducibilità e relativo modulo
  • LM2596 convertitore step-down
  • Display LCD I2C 4x20 caratteri
  • Convertitore di livelli logici bidirezionale
  • Adafruit ADC ADS1115 (compatibile anche con ADS1015*)
  • Modulo con due Relé a Stato Solido
  • Modulo singolo Relé a Stato Solido HY-M285
  • x2 transistor BC337-40 (o equivalenti)
  • x2 resistori 680 Ω
  • Alimentatore 12V DC
  • PCB o altra soluzione di montaggio (es millefori)

*È necessario definire il tipo di ADC utilizzato nel file /orto-controller-web/parameters.hpp

Possono essere necessari anche altri componenti (cavi, viti...) e strumenti (trapano, saldatore...) utili alla realizzazione del progetto.

Schema di Montaggio

I collegamenti ai pin sono definiti nel file pinouts.hpp e possono essere modificati opportunamente (prestando attenzione a non utilizzare impropriamente i pin riservati o con funzioni particolari, si veda il pinout della scheda per i dettagli).

alt Orto Idroponico Schematic

Configurazione e Calibrazione

Prima di procedere con la compilazione del software è necessario assegnare a condCalibrationPoints[] e phCalibrationPoints[] i valori per la calibrazione dei sensori.

Inoltre è possibile modificare i parametri principali dal file parameters.hpp e i collegamenti con i pin della scheda dal file pinouts.hpp

Compilazione del Software

Arduino IDE

Per procedere con la compilazione mediante Arduino IDE è possibile procedere con i seguenti passaggi:

  1. Installazione dell'IDE di Arduino

  2. Clonazione del repository

git clone https://github.com/fablab-imperia/orto-idroponico.git
  1. Installazione delle dipendenze tramite Arduino Library Manager (selezionare Sketch > Gestione Librerie ) oppure scaricando i file zip dal sito di ogni libreria oppure copiando le librerie della cartella libraries:
  1. Installazione della scheda ESP32 nell'IDE:

    • a. Da File > Preferenze > URL Gestore Schede Aggiuntive aggiungere https://dl.espressif.com/dl/package_esp32_index.json
    • b. Da Strumenti > Schede > Gestore Schede cercare ESP32 e installare la relativa scheda
    • c. Selezionare ESP32 Dev Module da Strumenti > Schede
  2. Installare ESP32 FS-plugin nell'ide di Arduino

  3. Aprire il file orto-controller-web/orto-controller-web.ino nell'IDE di Arduino

  4. Avviare la compilazione e caricare il programma sulla scheda (assicurarsi di aver selezionato la scheda e la porta seriale corretta dal menu Strumenti)

  5. Caricare i file web sulla scheda da Strumenti > ESP32 Sketch Data Upload

Visual Studio Code e PlatformIO

Per procedere con la compilazione mediante Visual Studio Code:

  1. Installare Visual Studio Code
  2. Installare l'estensione Platformio
  3. Aprire la cartella orto-controller-web
  4. Installare le librerie richieste
  5. Avviare la compilazione
  6. Caricare i file web sulla scheda

Utilizzo e Interfaccia Grafica

Dopo aver caricato correttamente il programma e i dati, la scheda crea una rete WiFi con SSID e password specificate qui (di default SSID OrtoWeb e password OrtoWeb12345). Collegarsi con le credenziali corrette alla rete WiFi e, tramite un browser (es. Firefox, Chrome), connettersi all'indirizzo IP della scheda, stampato all'avvio sul monitor seriale (di default 192.168.4.1).

Verrà visualizzata la seguente interfaccia grafica.

alt Manual Control Interface

alt Automatic Control Interface

L'interfaccia è composta dei seguenti elementi:

  1. Indicatore sensori (i pallini neri negli indicatori b e c indicano il target attualmente impostato), il range dell'indicatore è impostato qui con i parametri min e max:

    • a. Temperatura dell'acqua (range indicatore: 0-35 °C)
    • b. pH dell'acqua (range indicatore: 0-14)
    • c. Conducibilita dell'acqua (range indicatore: 0-3000 uS/cm)
  2. Pannello di controllo manuale (attivabile con pulsante 4.a)

    • a. Pulsante per abilitare il controllo automatico con i parametri definiti alla sezione (4); alla pressione questa sezione viene sostituita dalla sezione (4)
    • b. Attiva manualmente la pompa peristaltica del concime per la durata della pressione del pulsante (interrompe l'erogazione appena si rilascia il bottone)
    • c. Attiva manualmente la pompa peristaltica dell'acido (per la correzione del pH) per la durata della pressione del pulsante (interrompe l'erogazione appena si rilascia il bottone)
    • d. Attiva/Disattiva la pompa per il ricircolo dell'acqua, alla pressione commuta il suo stato e la sua funzione (da Attiva a Disattiva e viceversa)
  3. Mostra o Nasconde i dati grezzi ricevuti dalla scheda, mostrati nella sezione (5) (di default sono nascosti)

  4. Pannello di controllo automatico (attivabile con pulsante 2.a)

    • a. Pulsante per abilitare il controllo manuale, sospendento la correzione automatica di fertilizzante e pH e spegnendo la pompa di ricircolo; alla pressione questa sezione viene sostituita dalla sezione (2)
    • b. Parametri di configurazione del controllo automatico:
      • a. valore target del pH
      • b. valore target della conducibilità
      • c. durata di attivazione delle pompe di fertilizzante e acido in caso di correzione dei valori
      • d. tempo che intercorre tra due controlli e correzioni (attivazione pompe peristaltiche) successive
      • e. durata ciclo periodico di ricircolo dell'acqua (se posto a 0 la pompa sarà sempre attiva e il parametro f verrà ignorato)
      • f. tempo di attivazione della pompa per il ricircolo dell'acqua in ogni periodo definito al punto e
    • c. Il pulsante è normalmente disabilitato, viene attivato automaticamente quando si modifica uno o più dei precedenti parameteri (i parametri modificati vengono evidenziati in verde). Le modifiche dei parametri hanno effetto solo dopo il salvataggio. I dati salvati vengono mantenuti anche dopo lo spegnimento, perché memorizzati nella memoria EEPROM del controllore.
  5. Log dei dati grezzi ricevuti dall scheda, la visualizzazione può essere abilitata e disabilitata con il pulsante (3)

I dati dei sensori e i parametri di stato (es controllo automatico/manuale, impostazioni salvate, attivazione manuale della pompa) vengono sincronizzati automaticamente in tempo reale su tutti i client connessi alla scheda.

Licenza

Sistema di gestione orto idroponico Fablab Imperia

Copyright ©2021 Fablab Imperia, Francesco Scarrone, Stefano Semeria, Valerio Pace

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

About

Codice per il progetto orto idroponico Campo delle Fragole

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •