Sketch per impianto idroponico

Buongiorno a tutti,

mi chiamo Edoardo e sono qui oggi per chiedervi una grossa mano in quanto dovrei realizzare un piccolo sketch che mi permetta di gestire in autonomia un impianto di idroponica stampato in 3D.

Nello specifico i componenti HW sono

  • elettropompa (12V DC; 1.9 A)
  • termistore NTC 10K Ohm (con solo 2 cavi)
  • PWM DC ( 5v-12v 10A)
  • Schermo I2C
  • Encoder rotativo HW-040 (5 vie, POS, NEG, HW, CW e CLK)
  • Arduino Uno

Come prima cosa vorrei riuscire a leggere la temperatura tramite termistore e stamparla sul display I2C e fino a qui nulla di complicato.

Dopodichè vorrei poter controllare la potenza dell'elettropompa tramite PWM e vorrei che venisse stampata sul display I2C la potenza in percentuale. Successivamente mi servirebbe che l'elettropompa parta per N minuti (ad esempio 5 minuti) ogni N tempo (ad esempio ogni 30 minuti) e vorrei che apparisse sul display I2C anche quest'informazione (conto alla rovescia del tempo di attività della pompa), con la possibilità di modificare il tempo di attività della pompa e di attesa tramite l'ecoder rotativo (es. click dell'ecoder per accedere alla selezione dei minuti di attività, ruotare l'ecoder per aumentare o diminuire il tempo, successivo click per entrare nella selezione del tempo di attesa e successivo click per far partire il tutto)

Premetto che ho abbastanza conoscenza di elettronica ma non sono sicuramente un esperto, infatti non ho mai utilizzato encoder rotativi o termistori. Vi chiedo quindi di essere clementi se per caso ho scritto cose sbagliate.

Ok per quello che vuoi fare, ma .... la domanda quale è?

Dove è il circuito che intendi realizzare?
Dove è il codice?
Che problemi hai incontrato?
Che tipo di suggerimenti ti servono?

Capisci che senza queste informazioni ti possiamo solo dire: "ok, prosegui e dicci i problemi che incontri".

Guglielmo

Un termistore non permette misure accurate della temperatura. Usa un sonda one wire, come la DS18B20.

La domanda è che non saprei da che parte iniziare a scrivere il codice, soprattutto la parte dell'encoder. Ho già provato a fare vari test ma non ho abbastanza competenze di programmazione per creare uno sketch così complesso. In ogni caso, do ragione anche a te, quindi procedo a sviluppare il codice secondo le mie capacità e poi lo pubblicherò qui, in modo che possiate darmi dei consigli pratici

Ok ottimo, ti ringrazio!

Emmm ... purtroppo hai presente il REGOLAMENTO, al punto 16.1?

16.1
Tenete sempre presente che qui sul forum nessuno scrive software per conto terzi o realizza schemi su ordinazione, ma si aiuta chi viene qui a correggere/ottimizzare il software che lui scrive o gli schemi che lui realizza .

Quindi, bene quanto scrivi dopo:

... siamo qui per questo :slight_smile:

Guglielmo

P.S.: comunque, al succitato punto, trovi sia degli buoni pdf che un ottimo libro che mi sento di consigliarti per entrare un po' di più nell'ambiente Arduino.

Hai assolutamente ragione. Infatti devi cominciare con cose molto semplici:

  1. Misura della temperatura su LCD con DS18B20
  2. Lettura di un encoder rotativo
  3. ...

Qui ho aiutato una persona a fare un conta spire per un'avvolgitrice (LAB):
https://groups.google.com/g/it.hobby.elettronica.digitale/c/9Bt3sgOMN3w

Per l'encoder puoi usare un loop stretto per le impostazioni, che interrompe tutto il resto, oppure puoi usare un pin change interrupt che chiama una ISR in cui è inserita la funzione dell'encoder, ma diventa ancora più complesso per te che stai appena cominciando.

Ciao a tutti,

sto procedendo con lo studio e la stesura del codice ma nel frattempo mi è venuto un dubbio sui collegamenti elettrici che avevo pensato per gestire l'elettropompa.

Essendo alimentata da 12v pensavo di attivarla tramite relè, tuttavia vorrei collegare un modulo PWM (HW-070, con 4 uscite __ Power +. power -, Output +, output -) in modo da poter regolare la potenza della pompa quando attivata.

Cercando in rete ho trovato esempi che al posto del relè utilizzano un mosfet montato su shield.

Si puo comunque utilizzare un relè oppure è sconsigliato? E se si può fare, quali sono i collegamenti ?

Se passi al PWM devi per forza usare un mosfet il relè è troppo lento a commutare.

Sapresti consigliarmi un mosfet da acquistare che sia compatibile con le mie esigenze?

Serve sapere la corrente e la tensione del motore.

12v 3A

IRLZ44N, logic level robusti ma economici.
Ma la pompa si regola bene in PWM?...

Dato che devi comandarlo con Arduino, per prima cosa deve essere un MOSFET Logic level e, visto tensione e corrente, ti può andare bene un IRL540 che è ampiamente collaudato con progetti Arduino ...

Guglielmo

P.S.: sovrapposrto con la risposta di Datman :grin:

La sto provando proprio ora con il PWM a potenziometro che ho mensionato prima e funziona alla grande.

Cercando in rete ho trovato questa scheda, può andare bene lo stesso?

Mah... Forse...

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.