» elettronica » Arduino »Sistema di irrigazione automatico per piante d'appartamento ad Arduino

Sistema di irrigazione automatica Arduino per piante d'appartamento

Ciao a tutti!

Voglio condividere il mio homebrew ramoscelloche mi sta servendo da oltre un anno.
Iniziare a padroneggiare Arduino, Ho pensato a quale tipo di progetto implementare. Mi sono ricordato che ho molte piante da interno che periodicamente dimenticano di annaffiare, e il problema dell'irrigazione durante le vacanze e i viaggi d'affari ha un posto dove stare.

Il sistema è costituito dai seguenti componenti:

L'unità di controllo è il cuore del sistema. Ecco le batterie, Arduino, modulo orario DS3231, display, convertitori di tensione e controlli.


Vicino alle piante è un contenitore di acqua. Ci sono pompe sommerse nel contenitore che pompano l'acqua attraverso i tubi negli impianti.


La distribuzione dell'acqua tra le piante può essere ulteriormente regolata utilizzando un pettine con rubinetti.

Tutti gli elementi tecnici del sistema possono essere nascosti dietro tende e pentole in modo che non siano molto evidenti


Panoramica del sistema:


Parametri chiave del sistema:

1. Durata della batteria di circa 5 mesi
2. Il sistema supporta il controllo di 3 pompe. Per ogni pompa, è possibile collegare un pettine con 2-4 rubinetti e controllare ulteriormente il flusso di acqua. In totale abbiamo l'opportunità di collegare fino a 12 impianti
3. Il tempo è preso da un modulo orologio indipendente separato DS3231. La pompa viene attivata quando l'ora specificata nell'impostazione (ad esempio, 8:00).
4. Il display mostra informazioni
5. Le impostazioni di irrigazione sono indicate nel codice del programma, possono essere modificate mediante il riflashing di Arduino

Spiegazione delle informazioni visualizzate sul display:
La prima riga è l'intestazione della tabella. Ogni riga mostra informazioni sulla rispettiva pompa. La prima colonna: mostra il periodo di lavoro (PR). Ad esempio, con un valore di "5" - la pompa funzionerà ogni 5 giorni. La seconda colonna è l'ora di funzionamento (PD) - l'ora all'inizio della quale si accenderà la pompa. La terza colonna è il tempo di funzionamento (BP) - il tempo di funzionamento della pompa in secondi. La quarta colonna - giorni rimanenti (PRIMA) - mostra quanti giorni sono rimasti fino all'operazione successiva. Vengono inoltre visualizzate la data e l'ora.



Il sistema non ha feedback, quindi le impostazioni devono essere selezionate empiricamente. È meglio raggruppare le piante vicine in termini di fabbisogno di annaffiature (alcune tollerano bene la siccità, mentre altre amano l'irrigazione abbondante) e le dimensioni dei vasi.
Le impostazioni sono approssimativamente le seguenti: ogni 5 giorni accendere la pompa alle 8:00 per 30 secondi.
Di seguito, verrà indicato in quale parte del codice si trovano queste impostazioni.

Nel codice del programma, è possibile disabilitare la seconda e la terza pompa. In questo caso, le informazioni verranno visualizzate solo sulle pompe incluse.

L'autonomia è garantita da:
• Alimentato da batterie 18650
• Arduino e si addormenta profondamente (Powerdown) e si sveglia da Watсhdog
• Bit stabilizzatore di tensione Arduino sulla gamba sinistra
• Il display è spento durante il funzionamento. Per attivare il display, è necessario tenere premuto il pulsante di sospensione per circa 10 secondi.
• Tutti i LED indicatori vengono rimossi dai moduli

Il sistema consuma circa 3 mA, 1 pompa consuma circa 350 mA in funzione.

Dettagli principali:

• Contenitore per alimenti per abitazioni
• Clone cinese Arduino nano
• Modulo in tempo reale DS3231
• 18650 batterie
• Potenzia il modulo fino a 5 V (corrente circa 1 A)
• Abbassamento del modulo fino a 3,3 V per alimentare il display
• Display Nokia 5110
• Modulo TP4056 per caricare (+ protezione) la batteria
• Indicatore di carica della batteria
• Vari "effetto crespo": transistor ad effetto di campo, resistori, condensatori (elettrolitici e ceramici)
• Interruttori e pulsanti

Montaggio "schema" del dispositivo:



Spiegazioni secondo lo schema:

1. 4 batterie 18650 sono collegate in parallelo. La capacità totale è di circa 13000 mA / h.
2. La batteria è collegata al modulo di protezione e protezione TP4056. La ricarica avviene tramite il connettore micro USB dalla ricarica del telefono. La ricarica è necessaria con una corrente di almeno 1A. Il tempo stimato per la ricarica completa è di 13-14 ore. I LED indicatori possono essere spenti e visualizzati sullo chassis.
3. Successivamente, un convertitore boost fino a 5 V è collegato tramite l'interruttore. Alimenterà la maggior parte dei componenti del circuito, comprese le pompe. Con una diminuzione del livello di carica della batteria, la tensione diminuirà da 4,2 V a 2,7 V, il che non è sufficiente per il funzionamento del circuito. Il modulo fornirà una tensione stabile. Un filtro fatto di condensatori elettrolitici e ceramici è posto all'uscita del modulo. Il condensatore elettrolitico svolge un ruolo levigante e stabilizzante. Il condensatore ceramico è usato per combattere le interferenze ad alta frequenza. Se il modulo "emette un segnale acustico" dell'induttore durante il funzionamento, per eliminare questo fenomeno, è possibile posizionare un ulteriore condensatore elettrolitico all'ingresso del modulo. Condensatori elettrolitici con una capacità di 1000 microfarad a 6,3 V. I condensatori ceramici sono adatti da 1-2 microfarad. Il circuito utilizzato a 10 uF, perché avevo un sacco di extra.
4. Per alimentare il display, è necessaria una tensione di 3,3 V, quindi viene aggiunto un convertitore buck con filtri simili dai condensatori.
5. Modulo orologio DS3231, necessario per un timing più preciso. Il LED di alimentazione (1) è saldato sul modulo DS3231. Questo viene fatto a fini di risparmio energetico. Se si utilizzano batterie normali (non ricaricabili), è necessario dissaldare il resistore (2). Il modulo è progettato per batterie ricaricabili, inclusa la ricarica. Se la batteria è normale, la corrente di carica la renderà rapidamente inutilizzabile.
Sistema di irrigazione automatica Arduino per piante d'appartamento

6. Il cervello principale del sistema è la piattaforma nano di Arduino. Ai fini del risparmio energetico, è necessario dissaldare tutti i LED (o almeno solo Power), oltre a mordere la gamba sinistra del regolatore di tensione.

7. La pompa è controllata tramite transistor ad effetto di campo. Tutti quelli che si aprono con una tensione di 5 V e sono in grado di commutare corrente da 1A. All'inizio ho usato quelli già pronti. Ho saldato una batteria di transistor ad effetto di campo + resistori (100 Ohm per proteggere l'Arduino, 10k Ohm per tirare l'otturatore del transistor a terra in modo che il mosfet si chiuda) + ho anche saldato i connettori KF 301-2P per fissare i fili

Successivamente ha realizzato una batteria più compatta su mosfet SMD AO3400

Da qualche parte in mezzo anno 2 transistor ad effetto di campo sono falliti. Il motivo era che, in modalità di frenata, il motore del collettore funziona come un generatore. Per proteggere il transistor ad effetto di campo, è necessario utilizzare un diodo protettivo. Ho usato 1N4007.


8. Il display mostra tutte le informazioni. Per riattivare il display, è necessario tenere premuto il pulsante per un massimo di 10 secondi. Se si modifica il minuto in ore, il sistema andrà in sospensione e il display si spegnerà.

Processo di costruzione:

Primi test su una breadboard e scrittura del firmware


Successivamente, tutto è collegato con un'installazione a cerniera

Raccolto il corpo e testato con pompe reali

Ho praticato dei buchi nella custodia, ho dipinto tutto con un primer nero opaco e ho fissato i componenti sull'adesivo hot-melt


Punti di assemblaggio aggiuntivi:
• Un contenitore di acqua deve essere sempre posizionato sotto le pentole, altrimenti esiste il rischio che l'acqua continui a versare dopo lo spegnimento delle pompe.
• La distanza dal fondo del contenitore all'estremità del tubo non deve superare i 70 cm. Sarà più difficile per la pompa sollevare l'acqua a un'altezza maggiore.
• Su una mini pompa con Ali, i tubi trasparenti 6x1,5 mm sono fantastici
• È importante che l'apertura della pompa di aspirazione dell'acqua non poggi contro la parete del serbatoio dell'acqua, altrimenti non vi sarà alcuna pressione normale.
• Non utilizzare parti in ferro (fascette, filo, ecc.) Per fissare il tubo alla pompa, tutto si arrugginisce molto rapidamente.
• La pompa ha fili corti. Molto probabilmente dovranno essere aumentati. Per sigillare i fili è meglio usare l'adesivo hot melt e sulla parte superiore termorestringente.

La logica del programma:

• Arduino si alza dal sonno
• Le letture del modulo DS3231 (data e ora) sono assegnate alle variabili
• Quando la data cambia, cambia il valore del contatore dei giorni precedenti
• Se il periodo di lavoro (impostazione) coincide con il numero di giorni trascorsi, l'ora viene controllata
• Se l'ora (impostazione) e l'ora del modulo orario coincidono, accendere la pompa per l'ora specificata nelle impostazioni
• Arduino va a dormire
• Se si tiene premuto il pulsante di sospensione, l'alimentazione viene fornita al display e Arduino si riattiva

Le impostazioni di irrigazione sono indicate qui in questa parte del codice:


Applico uno schizzo e librerie

In generale, sono soddisfatto del sistema. Ha regolarmente annaffiato le mie piante sul davanzale della finestra per circa un anno. Ora ho spostato il sistema in un'altra stanza, e nel mio ho messo insieme uno nuovo, più conveniente e interessante, ma questa è un'altra storia ...
8.9
8.9
8.8

Aggiungi un commento

    • sorrideresorrisiXaxabeneDONTKNOWyahoonea
      capozeroimbrogliaresìSì-sìaggressivosegreto
      scusaballaredance2dance3perdonoaiutobevande
      arrestoamicibuonogoodgoodfischiodeliquiolinguetta
      fumobattimanicraydeclarederisoriodon-t_mentionscaricare
      caloreadiratolaugh1mdaincontromoskingnegativo
      not_ipopcornpunireleggerespaventarespaventacerca
      schernirethank_youquestoto_clueumnikacutoconcordare
      cattivobeeeblack_eyeblum3arrossirevanterianoia
      censuratospiritosagginesecret2minacciarevittoriayusun_bespectacled
      ShokRespektlolPrevedbenvenutoKrutoyya_za
      ya_dobryiaiutantene_huliganne_othodiFludbandovicino
9 commento
L'autore
Sono completamente d'accordo
Citazione: EandV
Ma nella mia stanza non ho un rubinetto, non voglio tirare il tubo attraverso l'intero appartamento dal gabinetto.
Sì, e pericoloso: non si sa mai che tipo di guasto si verificherà nell'automazione, è possibile riempire l'appartamento sottostante.
Ora è chiaro sull'indicatore, disegneremmo un rettangolo con una spiegazione: sarebbe chiaro che non è un LED che non può essere acceso in questo modo.
L'autore
Bene, qui sei generalmente serio. Sicuramente una scelta competente.
Nel mio caso, è importante che nessuna delle piante muoia. Con questo, il mio prodotto fatto in casa sembra far fronte.
L'autore
Concordo con te sul fatto che per le serre hai bisogno di una soluzione leggermente diversa. Giusto / sbagliato dipende dalla situazione specifica. Nel mio caso, in una delle stanze ho bisogno di annaffiare 9 piante in vaso sul davanzale della finestra quando sono in viaggio d'affari o in vacanza o se ne sono semplicemente dimenticato. Se creo un sensore di umidità in ogni vaso, allora avrò una rete sul davanzale della finestra, se creo il sensore solo in una parte dei vasi, il significato dell'uso del feedback viene perso. I sensori di umidità sono buoni da usare per terreni aperti (in modo da non innaffiare di nuovo dopo la pioggia) o per una grande pianta in una grande pentola o letti, che verrà irrigata come un sistema separato. Le valvole sono decisamente migliori per un giardino / frutteto / serra. Ma nella mia stanza non ho un rubinetto, non voglio tirare il tubo attraverso l'intero appartamento dal gabinetto.
L'autore
Grazie per il tuo feedback!
Questo è il primo dei miei sistemi di approvvigionamento automatico.Ora ne ho fatto un altro (le principali differenze: ci sono pulsanti per modificare le impostazioni senza lampeggiare e tutto è assemblato su una scheda a circuito stampato e non su un'installazione a parete). I piani includono un sistema con un sensore di umidità del suolo, ma questa soluzione non è sempre adatta.

Ho preso la pompa qui: https://ru.aliexpress.com/item/32813225037.html?spm=a2g0s.9042311.0.0.274233edOrtSYd
In linea di principio, puoi guidare nella ricerca di "micro pump", ti darà un sacco di opzioni. Tutte le pompe alimentate da 5V sono adatte.

Spiegare l'errore con l'indicatore del livello della batteria. L'immagine con il LED è molto arbitraria, in effetti è un indicatore con ali (nel programma in cui ho disegnato il circuito non ho trovato l'immagine dell'indicatore), che mostra le "levette" del livello di carica (essenzialmente un voltmetro digitale)
Sembra così: https://ru.aliexpress.com/item/32850741087.html?spm=a2g0s.9042311.0.0.274233ed90SPcD
È collegato in parallelo con l'uscita da TP4056, in modo che non si illumini continuamente, viene acceso tramite il pulsante.
Anche quest'anno mi sono confuso con l'irrigazione a goccia. Applicato il controller Logo Siemens. Gestione dell'irrigazione su 3 linee. Ogni linea è controllata manualmente (se necessario, o da un timer settimanale. (Chiunque abbia incontrato un tale controller lo sa). La pompa è una su tutte le linee - normale pompa per 300 sfregamenti. con aliexpress. Ascesa d'acqua fino a 3 metri. Distribuzione dal pettine attraverso elettrovalvole (anche con Ali). Manutenzione automatica del livello dell'acqua nel serbatoio. Controllo della temperatura e ventilazione automatica.
In generale, ora vado in serra solo per il raccolto.
Ospite Vladimir
E sono interessato all'argomento, ma sono in Arduino zero. È più corretto irrigare non per tempo, ma per umidità del suolo. Personalmente, ho bisogno di un tale dispositivo per l'irrigazione nelle serre. Suggerisco di usare non con le pompe, ma con valvole elettroniche.
Grande uso di Arduino per un vero scopo!
È possibile un ulteriore sviluppo del progetto (controllo dell'umidità del suolo, controllo del livello dell'acqua in un contenitore).
Ci sono un paio di piccole osservazioni: sarebbe bello fornire un collegamento alle pompe (per i componenti elettronici, tutto è più o meno chiaro e senza collegamenti) ed è necessario fissare la connessione del LED "Indicatore del livello della batteria" nella figura che rappresenta il circuito.

Ti consigliamo di leggere:

Passalo per lo smartphone ...