giovedì 21 Novembre 2024
Home / Domotica / piGarden e piGardenWeb: realizza il tuo impianto di irrigazione con Raspberry Pi

piGarden e piGardenWeb: realizza il tuo impianto di irrigazione con Raspberry Pi

Chi possiede un po’ di verde presso la propria abitazione, con l’arrivo dell’Estate è costretto a rimboccarsi le maniche per dedicarsi all’irrigazione del proprio giardino. Questa attività per alcune persone potrà essere anche divertente ma per quanto mi riguarda la considero abbastanza noiosa. E’ per questo che un giorno di circa tre anni fa ho pensato di utilizzare un vecchio Raspberry Pi B che avevo in un cassetto per cercare di automatizzare l’irrigazione del mio giardino. Da allora è passato po’ di tempo e il lavoro fatto si è concretizzato in un progetto che prende il nome di piGarden.

PiGarden è uno script bash che permette di trasformare un Raspberry Pi in una centralina per il controllo dell’irrigazione. Queste sono le principali caratteristiche:

  • Definizione delle zone da irrigare (ognuna comandata dalla propria elettrovalvola comandata da un relativo GPIO)
  • Supporto per elettrovalvole mono-stabili e bi-stabili
  • Possibilità di schedulazione avvio e termine irrigazione per le varie zone
  • Controllo condizioni meteo, tramite sensore hardware o servizio on-line, per prevenire irrigazioni in presenza di pioggia
  • Espandibilità per mezzo di appositi driver facilmente scrivibili (elettrovalvole comandate da apparecchi esterni, interfacciamento con servizi meteo online)
  • API esposte su socket tcp per potere controllare piGarden da software terzi
  • Architettura master-slave che permette di fare comunicare più moduli piGarden tra di loro, magari per gestire l’irrigazione di vaste aree verdi.
  • Gestione eventi (avvio irrigazione, stop irrgazione, cambio condizioni meteo, ecc…); ad ogni evento è possibile associare un proprio script bash per gli usi più disparati (invio notifiche via mail. ecc..)

L’utilizzo di piGarden è strettamente legato alla linea di comando linux costringendoci frequentemente a smanettare con tastiera sul nostro amato terminale. Purtroppo questa via non è sempre tra le più comode, ho quindi sviluppato un’interfaccia web di gestione che ci rende tutto più comodo. Questa prende il nome di piGardenWeb (si lo so: ho molta fantasia), con la quale potremo amministrare l’impianto di irrigazione semplicemente con il nostro smartphone o pc.

Ma andiamo con ordine e vediamo di cosa abbiamo bisogno per realizzare il nostro impianto.

Lista della spesa

Il materiale che sto per indicare è un’indicazione di massima e non vuole essere certo un elenco esaustivo, sono quindi delle indicazioni di massima riferita al mio caso d’uso ed ognuno può adattarla alle proprie esigenze.

Starter Kit Colibri

Per iniziare mi sono affidato ad uno Starter Kit Colibi di Claber. Il contenuto di questo kit permette di servire l’irrigazione di un’unica zona di 50 mt/q. Dato che a me occorreva gestire tre zone, ho seguito un po’ l’istinto e ho separato i vari componenti per creare le varie zone che mi servivano. In aggiunta ho poi acquistato separatamente altri tubi e innesti che mi servivano completare l’impianto di distribuzione.

Claber Starter Kit Colibri

Nel kit sono presenti cinque irrigatori Colibri da interrare del giardino. Quando l’impianto non è in funzione gli irrigatori rimangono invisibili, quando invece viene azionato, grazie alla pressione dell’acqua questi si innalzano ed iniziano ad irrigare il terreno circostante.

Elettrovalvole

Dobbiamo acquistare tante elettrovalvole quanto vogliamo siano le zone gestite. Dobbiamo inoltre scegliere la tipologia dell’elettrovalvola: mono-stabile o bi-stabile. La differenza tra le due tipologia è quelle mono-stabili hanno bisogno di un’alimentazione continua affinché queste rimangano eccitate (e quindi aperte per fare irrigare), mentre le bi-stabili necessitano di un piccolo impulso elettrico iniziale per eseguire l’apertura, e di un ulteriore impulso con tensione negativa per eseguire la chiusura. Il vantaggio è che non dobbiamo tenere sotto tensione l’elettrovalvola per tutto il tempo di irrigazione. Io ho optato per l’utilizzo di elettrovalvole bi-stabili ed ho utilizzato una semplice batteria a 9Vper impartire i comandi di apertura e chiusura.

L’elettrovalvola che ho scelto è la Claber 78215-10 Elettrovalvole 9V

Claber 78215-10 Elettrovalvole 9V

Se invece avete intenzione di utilizzare elettrovalvole monostabili dovrete munirvi anche del’apposito alimentatore con cui azionarle.

Raspberry Pi

Come centralina ho utilizzato un vecchio Raspberry Pi B (di prima generazione), ma va benissimo qualsiasi altra versione, anche più recente.

Raspberry Pi B

Relè

In accoppiata con il nostro Raspy ho preso un paio di moduli SunFounder 4 Channel 5V Relay Shield Module. Ogni modulo gestisce quattro relè. Due relè serviranno per simulare un doppio deviatore per gestire l’inversione di polarità utilizzata per comandare l’avvio e la chiusura delle elettrovalvole bi-stabili. I restanti relè saranno dedicati ognuno ad una elettrovalvola.

SunFounder 4 Channel 5V Relay Shield Module

Sensore di rilevamento pioggia

Come sensore di rilevamento pioggia ho acquistato quello che vedete qui sotto. Si trova online a pochi euro. Se non volete utilizzare un sensore hardware sarà possibile controllare lo stato meteo direttamente da OpenWeatherMap o Wunderground.

Rilevatore Pioggia Raspberry Pi

Assemblaggio e collegamenti

Adesso che sappiamo cosa ci serve procediamo all’assemblaggio ed al collegamento dell singole parti.

Come detto in precedenza abbiamo due possibilità, gestire elettrovalvole bi-stabili oppure mono-stabili.

Impianto con elettrovalvole bi-stabili

Come detto prima l’apertura o la chiusura dell’elettrovalvola viene eseguita a seconda della polarità applicatagli. Per gestire l’inversione della polarità ho simulato un doppio deviatore utilizzando due relè del primo modulo. Il seguente schema illustra il funzionamento del doppio deviatore.

Schema doppio deviatire

Le due coppie A e B indicano i morsetti dei due relè, ai quali arriva in ingresso il polo positivo e negativo della batteria a 9V. Quando entrambi i relè sono commutati sul A, il doppio deviatore lascia passare tensione positiva all’elettrovalvola (M), mentre quando sono commutati su B fanno arrivare una tensione negativa.

Ricapitolando, avremo a monte di tutto una batteria a 9V collegata ad un doppio deviatore con il quale viene gestita la polarità. In uscita dal doppio deviatore vi saranno collegati i vari relè che quando chiusi trasmetteranno il segnale di apertura/chiusure alle rispettive elettrovalvole.

Riporto qui di seguito lo schema completo della centralina e subito dopo il dettaglio dei collegamenti del doppio deviatore e del primo relè di pilotaggio dell’elettrovalvola.

Schema centralina di irrigazione (Raspberry PI)

Dettaglio alimentazione relè

Nello schema vediamo che il polo positivo della batteria 9V viene collegato al morsetto 2 del primo relè (SW1) del modulo (MSW1), mentre il polo negativo sempre al morsetto 2 del secondo relè (SW2). Al morsetto 1 del relè SW1 viene collegata la massa delle elettrovalvole: vediamo infatti che questo va a collegarsi sul polo negativo della prima elettrovalvola (EV1). L’uscita del morsetto 1 del relè SW2 viene invece collegata in entrata agli altri relè che si occupano di impartire il segnale di apertura/chiusura alle elettrovalvole. In questo caso vediamo che viene collegata al morsetto 2 del relè SW3 che si occupa di fare arrivare il segnale alla prima elettrovalvola.

L’inversione di polarità viene invece gestita dai seguenti due ponti:

  • Relè SW1, morsetto 1 <——> relè SW2, morsetto 3
  • Relè SW1, morsetto 3 <——> relè SW2, morsetto 1

Per finire qui di seguito riporto la foto dei collegamenti fatti sui tre relè.

Foto alimentazione elettrovalvola

Impianto con elettrovalvole mono-stabili

Se avete optato per l’utilizzo di elettrovalvole mono-stabili, le connessioni si semplificano e non servirà più la batteria a 9V che veniva utilizzata per impartire l’impulso di apertura/chiusura delle elettrovalvole. Sarà invece necessario che vi dotiate di un alimentatore/trasformatore che possa fornire l’alimentazione a corrente continua (generalmente 24V, 12V o 9V) richiesta dalle elettrovalvole mono-stabili che deciderete di utilizzare. I due relè dedicati all’inversione di polarità non aranno più necessari e sara sufficiente collegare il polo positivo del vostro alimentatore all’ingresso dei relè che comanderanno l’apertura/chiusura dell’elettrovalvole. Il polo negativo lo potrete invece collegare direttamente al rispettivo contatto delle elettrovalvole.

Di seguito riporto il dettaglio dello schema di collegamento.

Schema centralina irrigazione con valvole monostabili e raspberry pi

Collegamento del sensore di pioggia

Il sensore che ho utilizzato prevede un’alimentazione variabile da 3.3 a 5 Volts e due uscite, una digitale e l’altra analogica, che ci indicano lo stato meteorologico. E’ inoltre presente un trimmer con cui è possibile regolare la tolleranza di rilevamento.

Come si può notare nella foto qui sotto, ho collegato al pin VCC e GND rispettivamente l’alimentazione di 3.3V e la massa provenienti dal Raspberry Pi. Il pin OD (output digital) l’ho collegato in ingresso ad un porta GPIO in modo da fare rilevare al raspberry la presenza di pioggia. Su questo pin viene emesso normalmente un segnale a 3.3V, in presenza di pioggia invece viene azzerato il voltaggio passando a 0V. Ne consegue quindi che la porta GPIO a cui è collegato assumerà il valore 1 in assenza di pioggia e il valore 0 con pioggia.

Foto sensore pioggia

Schema sensore pioggia

Connessioni GPIO

Impianto Irrigazione Raspberry Pi Gpio

Tutto il progetto è stato realizzato utilizzato un Raspberry Pi “modello B” di prima generazione e quindi tutte le connessione che indicherò faranno riferimento alla piedinatura di questo modello specifico. Niente vieta però di utilizzare un Raspberry Pi diverso da quello indicato o di eseguire le connessioni dei vari apparati a porte GPIO diverse da quelle qui specificate. Infatti nello script di gestione che illustrerò nel prossimo articolo, sarà possibile rimappare ogni elemento andando a definire gli ingressi/uscite in un apposito file di configurazione.

Nella tabella che segue sono riepilogate le connessioni GPIO eseguite e le connessioni per fornire l’alimentazione ai vari moduli/sensori. La colonna Physical indica la numerazione fisica corrispondente ai vari piedini presenti sul Raspberry Pi, mentre la colonna BCM indica l’id con cui vengono identificate le porte GPIO. Questi id verranno poi utilizzati nel file di configurazione dello script per mappare i vari elementi.

Ogni elemento della tabella può essere ritrovato nello schema elettrico riportato qui sotto.

Schema centralina di irrigazione (Raspberry PI)

Per eseguire eventuali verifiche del corretto collegamento dei vari pin sul Raspberry Pi è possibile utilizzare da shell il comando GPIO con il quale, oltre a programmare e impostare lo stato delle varie porte, è anche possibile visualizzarne lo stato. Questa utility non è direttamente presente ma deve essere installata mediante la libreria wiringPi, la quale sarà anche necessaria per il corretto funzionamento dello script di gestione.

Installazione wiringPi

L’installazione può essere eseguita impartendo i seguenti comandi da shell direttamente dalla propria home:

Una volta eseguiti installato wiringPi è possibile utilizzare il comando GPIO readall per visualizzare lo stato di tutte le porte GPIO, che nel mio caso sono come segue:

Installazione e configurazione del software

Come detto in precedenza piGarden è controllato dal uno script bash di gestione che il vero e proprio cuore del sistema. Oltre a questo è possibile installare anche piGardenWeb che ci permette di gestire il nostro impianto da una comoda interfaccia web. I due componenti comunicano tra loro tramite socket tcp e possono risiedere sia sullo stesso raspberry che su due diversi.

Vediamo ora in dettaglio l’installazione e configurazione dello script bash.

piGarden.sh, lo script di gestione

Installazione e configurazione di piGarden

Per installare i vari componenti software occorre essere collegati al nostro Raspberry via ssh ho da console per impartire i comandi necessari nel terminale.

L’installazione verrà eseguita nella home del vostro utente (generalmente l’utente pi) e sarà necessario utilizzare git per scaricare piGarden del proprio repository di github. Procediamo quindi ad aggiornare il sistema ed a installare git:

bene, una volta installato git procediamo scaricando piGarden:

in questo modo verrà creata la cartella piGarden che conterrà lo script piGarden.sh ed altre varie sottocartelle di cui vi parlerò più avanti.

Ora procediamo con l’installazione delle librerie e pacchetti necessari per fare funzionare piGarden: wiringPicurlgzipjq.

Curl, Gzip, Grep, Sed, Ucspi-tcp:

Jq:

WiringPi:

Adesso che abbiamo installato tutto il necessario possiamo provvedere a configurare piGarden. Per fare questo dobbiamo copiare in /etc il file di configurazione di esempio:

Apriamo adesso il file di configurazione appena creato ed andiamo a modificare i parametri di configurazione come più ci fa comodo.

Innanzi tutto definiamo la tipologia di elettrovalvole che abbiamo utilizzato nel nostro impianto, bi-stabili o mono-stabili. Per fare questo scorriamo il file fintanto che non troviamo la definizione relativa a EV_MONOSTABLE. Impostando il valore ad uno imposteremo il supporto per le elettrovalvole mono-stabili, se invece imposteremo il valore zero, verrà impostato il supporto per le elettrovalvole bi-stabili:

Scorrendo ancora nel file di configurazione troveremo le seguenti definizioni:

questa configurazione è già pronta per fare gestire sei zone (elettrovalvole) e per poter funzionare su di un Raspberry Pi B collegato ai vari moduli hardware come descritto nei precedenti post. Rimane soltanto da variare i nomi delle zone (alias) se quelli impostati di default non vi soddisfano. I nomi vanno assegnati alle variabili EV1_ALIAS, EV2_ALIAS, EV3_ALIAS, ecc.. e non devono contenere spazi.

Se invece volete diminuire o aumentare le zone gestite, dovete intervenire sulla variabile EV_TOTAL assegnandovi il numero totale delle elettrovalvole presenti nell’impianto, poi per ognuna di esse definite altre due variabili in cui indicare il nome della zona (alias) e la porta GPIO dove è collegata l’elettrovalvola. La coppia di variabili dovrà rispettare la seguente nomenclatura, dove x indica il numero della zona che viene definita:

EVx_ALIAS=”Nome_zona”
EVx_GPIO=17
EVx_NORAIN=1

nella prima variabile viene definito il nome della zona, che dovrà contenere una stringa alfanumerica senza spazi, mentre la seconda indica la porta GPIO su cui è collegata l’elettrovalvola della zona. La terza definizione indica che la zona non sarà soggetta a interruzione di irrigazione in caso di pioggia, se la definizione non viene inserita, la zona sarà soggetta alle condizioni meteo.

Nel caso in cui l’elettrovalvola venga gestita da una scheda di terze parti invece di essere collegata direttamente su un GPIO del raspberry, nel parametro EVx_GPIO andrà inserito il nome dell’apposito driver più i parametri che questi richiede. Per maggiori informazioni su questo aspetto fare riferimenti al post “piGarden: gestione driver“.

Scorrendo ancora più in basso nel file di configurazione troviamo le seguenti definizioni:

Con i parametri sopra riportati possiamo configurare il controllo sulle condizioni meteorologiche per far in modo che venga evitata l’irrigazione in caso di pioggia. Come avevo spiegato prcedentemente, abbiamo a disposizione due tipi di controllo meteo: tramite le api di alcuni servizi online oppure, se l’abbiamo integrato nella centralina, tramite sensore hardware.

Nel file di configurazione è presente la variabile RAIN_GPIO che indica la porta GPIO dove verrà collegato il sensore hardware di rilevamento pioggia e naturalmente siete liberi di variarlo a vostro piacimento. Se non avete integrato il sensore hardware nella vostra installazione, dovrete impostata la variabile RAIN_GPIO senza valore per evitare rilevazioni errate da parte di piGarden, lo fate impostando la variabile in questo modo:

Meteo online

Se decidiamo di utilizzare un servizio online, potremo scegliere tra OpenWeatherMap (gratuito) e Wunderground (a pagamento). Fatta questa scelta dovremo indicare il nome del servizio nella variabile WEATHER_SERVICE inserendo il valore openweathermapoppure wunderground.

Per completare la configurazione dovremo recuperare l’api key, che uno dei due servizi ci ha assegnato, e inserirla nell’apposita variabile di configurazione (OPENWEATHERMAP_KEY o WUNDERGROUND_KEY). Dovremo anche indicare la località di rifermento per la quale dobbiamo recuperare le condizioni meteo definendole in OPENWEATHERMAP_LOCATION o WUNDERGROUND_LOCATION. Nel file di configurazione di esempio è definita la località Pieve a Nievole. Per costruire la stringa che identifica la vostra località, sia OpenWeatherMap che Wunderground vi vengono in aiuto con appositi strumenti online.

Come ultima cosa dobbiamo indicare nella variabile NOT_IRRIGATE_IF_RAIN_ONLINE quanti secondi dovranno trascorrere dall’ultima pioggia per fare si che l’impianto di irrigazione riprenda ad irrigare in modo regolare. Il valore inserito di default è 86400 secondi, ovvero 24 ore. In questo modo se nelle ultime 24 ore ha piovuto, la centralina interromperà l’irrigazione se in esecuzione oppure eviterà che questa si avvi se impartiremo il comando di apertura di una elettrovalvola.

Nel caso abbiate scelto di installare un sensore hardware, similmente a come indicato prima, abbiamo a disposizione la variabile NOT_IRRIGATE_IF_RAIN_SENSOR nella quale dobbiamo indicare sempre il numero di secondi che dovranno passare dall’ultima pioggia che il sensore ha rilevato, per far si che la centralina riprenda ad irrigare in modo regolare. Anche in questo caso il valore di default è di 24 ore.

Nel caso non volessimo eseguire nessun controllo sulle condizioni meteorologiche basterà assegnare il valore zero alle due variabili NOT_IRRIGATE_IF_RAIN_ONLINENOT_IRRIGATE_IF_RAIN_SENSOR.

Come già indicato più in alto è inoltre possibile escludere alcune zone dal controllo delle condizioni meteo in modo da non interrompere l’irrigazione in caso di pioggia. Un classico utilizzo potrebbe essere per l’irrigazione di zona al coperto. Per eseguire questa impostazione basterà definire il parametro EVx_NORAIN=1 dove x sarà il numero dell’elettrovalvola interessata.

Seguendo con la configurazioni troviamo i parametri relativi al socket server che espone le api per il controllo di piGarden via rete. Il socket server è utilizzato come canale di comunicazione con piGardenWeb, l’interfaccia web di controllo. Le variabili di configurazioni interessate sono le seguenti:

Se avete intenzione di installare piGardenWeb e piGarden sullo stesso Raspberry potete lasciare tranquillamente i parametri sopra elencati con i valori di default. Se invece avete intenzione di installare piGardenWeb su un’altro hardware oppure di esporre le api del socket server in rete, consiglio di impostare un utente e password in TCPSERVER_USER e TCPSERVER_PWD.

Altri due parametri che possono interessare sono LOG_FILE e LOG_FILE_MAX_SIZE che indicano rispettivamente la posizione del file di log che lo script genera e la dimensione massima che questo potrà avere. Una volta raggiunta questa dimensione il file di log verrà compresso e rinominato dando così spazio ad un nuovo file di log.

Le altre variabili STATUS_DIR, GPIO, JQ, CURL, WC, GZIP, MV, TR, CUT, TCPSERVER, CRONTAB, GREP, SED, READLINK, STAT contengono percorsi e nomi dei comandi di sistema utilizzati dallo script.

In fine sono presenti un altro insieme di variabili utilizzate per definire le porte GPIO e gli stati da utilizzare per la gestione dell’alimentazione del elettrovalvole e per la connessione del sensore meteo.

Utilizzo dello script

Ora che abbiamo installato piGarden vediamo come utilizzarlo.

Inizializzazione centralina

Prima di potere eseguire qualsiasi operazione la centralina deve essere inizializzata. Questa operazione configura nella giusta modalità le porte GPIO ed eseguire la chiusura di tutte le elettrovalvole. L’inizializzazione avviene digitando il seguente comando:

Il mio consiglio è quello di inserire il comando nel crontab utente in modo che venga eseguito all’avvio del Raspberry Pi. Potete farlo fare direttamente a piGarden con il seguente comando:

Apertura e chiusura delle elettrovalvole

L’apertura e la chiusura delle elettrovalvole avviene passando a piGarden.sh l’argomento open o close seguito dall’alias della zona come definito nel file di configurazione. Esempio:

in questo modo viene prima aperta e poi chiusa l’elettrovalvola relativa alla zona definita con il nome giardino_posteriore.

Se vogliamo schedulare l’apertura e la chiusura di questa zona, possiamo inserire i due comandi nel crontab.

Se non volete editare manualmente il crontab potete delegare a piGarden l’inserimento delle schedulazioni di avvio e chiusura utilizzando i seguenti comandi:

Controllo condizioni meteorologiche

Per fare si che venga gestito il ritardo e l’interruzione dell’irrigazione in caso di pioggia lo script deve interrogare costantemente il servizio online e/o il sensore hardware. Per fare questo andranno inserite nel crontab le apposite schedulazioni. Lo potete fare utilizzando direttamente piGarden, in questo modo:

Altri comandi

PiGarden mette a disposizione molti altri comandi, potete vederli in dettaglio dal messaggio di aiuto che compare avviando lo script senza alcun parametro.

piGardenWeb, il pannello web di amministrazione

pigardenweb dashboard

Il pannello di amministrazione web ci permetterà di comandare tramite browser da pc o smartphone, le diverse zone del nostro impianto di irrigazione, di programmare le schedulazioni e di tenere sotto controllo le condizioni atmosferiche rilevate dal servizio online configurato in piGarden.

L’applicazione web è basata sul framework Laravel 5.2 ed alcuni componenti di Backpack for Laravel. Gira sia su apache che nginx ed ha bisogno di un database per gestire le credenziali di accesso al pannello.

Per motivi di leggerezza in questo post verrà indicato come installarlo su nginx utilizzando sqlite come base dati.

Per funzionare piGardenWeb necessita di alcuni pacchetti tra cui php 5.5.9 o superiore. Se sul vostro Raspberry avete installato Raspbian 9 stretch, sul sistema sarà presente php 7. Di seguito sono riportate le istruzioni sia per Raspbian 9 stretch che per il più vecchio Raspbian 8 jessie con php 5.

Installazione prerequisiti

L’installazione può essere eseguita come segue:

Una volta installato i pacchetti php è necessario fare alcune modifiche al file /etc/php5/fpm/php.ini. Se avete Raspbian 9 con php7, il file da modificare è /etc/php/7.0/fpm/php.ini. Variate il file in modo da decommentare la linea relativa a cgi.fix_pathinfo al quale andrà assegnato il valore zero, come segue:

Dobbiamo abilitare i moduli php sqlite e mcrypt:

A questo punto scarichiamo con git piGardenWeb nella propria home:

Configuriamo nginx prendendo il file di configurazione presente in piGardenWeb e personalizzandolo se necessario:

Creiamo adesso il file di configurazione di piGardenWeb, creiamo e inizializiamo il database, generiamo l’application key (necessaria per laravel) e impostiamo i giusti permessi ai file:

Facciamo partire il server web nginx:

Adesso, avviamo il socket server che permette a piGardenWeb di comunicare con piGarden. Lo facciamo impartendo il seguente comando da terminale:

Dashboard

A questo punto aprendo il browser e puntando a su http://indirizzo_ip_del_tuo_raspberry_pi dovresti visualizzare la home page di piGardenWeb:

Home - piGardenWeb

Cliccando sul link Registrati posto in alto a destra è possibile creare l’utente con cui loggarsi successivamente al pannello di amministrazione:

Registrazione - piGardenWeb

Creato il primo utente è possibile quindi loggarsi dall’apposita pagina di login:

Login - piGardenWeb

Una volta loggati ci troveremo sulla dashboard di piGardenWeb da dove potremo aprire e chiudere le elettrovalvole delle varie zone, controllare lo stato dell’ultima pioggia e le attuali condizioni meteorologiche:

Dashboard - piGardenWeb

Una volta arrivati alla dashboard, dobbiamo eseguire il setup iniziale in modo che vengano creati i crontab necessari per l’inizializzazione della centralina all’avvio del sistema, per l’avvio automatico del socket server e per il monitoring delle condizioni meteorologiche. Per fare questo dovrete raggiungere il menu SETUP / Setup Iniziale e cliccare sul pulsante Esegui il setup.

Setup iniziale - piGardenWeb

Una volta eseguito il setup iniziale potremo disabilitare la registrazione pubblica degli utenti andando a variare il file .env ed impostando la variabile REGISTRATION_OPEN con il valore false:

Dal file .env sarà possibile anche variare i parametri smtp utilizzati per l’invio delle notifiche via mail e in particolare quelle per eseguire il reset della password:

Oltre a quanto visto sopra da piGardenWeb potremo anche forzare l’apertura delle varie elettrovalvole in caso di pioggia e di gestire le schedulazioni di apertura e chiusura di ogni elettrovalvola:

Zona - piGardenWeb

Schedulazione - piGardenWeb

Oltre alle schedulazioni è disponibile la funzione di “avvio ritardato”,  questa ci permette di avviare l’irrigazione delle singole zone subito o dopo alcuni minuti, impostando nell’immediato anche la durata dell’irrigazione. A differenza della schedulazioni questa viene eseguita una sola volta e non verrà più ripetuta una volta terminata.

piGarden: avvio ritardato

 

Possiamo anche gestire, aggiungere o rimuovere gli utenti che potranno accedere al pannello di amministrazione:

Utenti - piGardenWeb

Conclusioni

Siamo arrivati alla fine di questo lungo articolo, e spero che il progetto vi piaccia.

Ricordo in oltre che piGarden mette a disposizione altre funzioni avanzate come le seguenti, che vi invito ad approfondire sul sito ufficiale  mentre per discuterne ci trovate su questa pagina dedicata nel forum.

 

Se vuoi restare aggiornato, seguici anche sui nostri social: Facebook , TwitterYouTubeGoogle+Telegram

AUTORI

 lejubila: (David Bigagli)
“Appassionato di informatica, linux, Raspberry Pi, domotica”

 

A proposito di Enrico Sartori

Tecnico Informatico Windows | Volontario digitale | Technical Editor per RaspberryItaly e MoreWare | con mille hobby. Email: info@enricosartori.it

Vedi Anche

MagPi 145 doppia pagina

MagPi in Italiano! Raspberry Pi Pico 2

Estratto, tradotto in italiano, di The MagPi N°145 la rivista ufficiale della Fondazione Raspberry Pi.

Powered by themekiller.com