Collegare un sensore da 5V ad una board da 3.3V

Ciao gente :wave:
Ho qualche problema a capire come collegare un sensore che necessita di 5V alla board che lavora a 3.3V. Di seguito i due oggetti:

Ho letto della possibilità di usare un relé da 5V, dovrei però, mi pare di capire, usare un alimentazione separata per il sensore. Ho solo un alimentazione da 5V con uscita USB quindi credo di aver bisogno di un convertitore USB per collegare i fili di alimentazione del sensore e poi il sensore al relé corretto?

Dò una descrizione del progetto in modo da spiegare meglio. Devo leggere l'umidità del terreno delle piante e mandare il tutto su un canale telegram. Ho usato un sensore diverso e un Arduino uno già su un altra pianta e funziona tutto correttamente, in quel caso però il sensore era I2C e quindi con un level shifter non ho avuto problemi. In questo caso essendo un sensore analogico e una board che lavora a 3.3V ho delle necessità diverse.

Avrei quindi bisogno di capire come faccio ad alimentare correttamente il sensore da 5V avendo una board da 3.3V.
Grazie mille

Buongiorno,
essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con molta attenzione tutto il succitato REGOLAMENTO. Grazie.

Guglielmo

P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposito thread, nel rispetto del suddetto regolamento nessuno ti risponderà (eventuali risposte verrebbero temporaneamente nascoste), quindi ti consiglio di farla al più presto. :wink:

@gpb01 scusami, colpa mia avrei dovuto leggere più attentamente.

Il sensore in questione viene descritto come funzionante anche con 3.3V, ma
dai commenti c'è chi dice che con 3.3V legge sempre 0.

Hai un link al manuale di questo sensore?
PS: sarebbe meglio avere lo schema teorico di quel sensore.

Nota
Hai messo la spunta su Risolto per errore.

Ciao.

Grazie per la risposta, e per la spunta😅
Allora io ho provato a collegarlo e leggevo all'inizio oltre 4950 come valore di umidità per poi andare a 0. Ho letto anche io i commenti da Amazon e ho pensato fosse per quello.

Il link al manuale è qui modulo di sensore umido del suolo V1.2
Purtroppo non posso allegare il PDF, le specifiche degne di nota nel manuale a mio avviso sono queste:

  • Tensione di alimentazione 5V
  • Tensione di uscita: Analogico
  • GND GND Filo nero
  • VCC 5V Filo rosso
  • AOUT A0 Filo blu

Credo il problema sia appunto la differenza di V tra il sensore e la scheda

Ho dato uno sguardo al datasheet ricavandone poche informazioni utili.
Sembra proprio che non è possibile alimentare il sensore con tensione di 3.3V,
ma obbligatoriamente 5V.

Nel datasheet mostrano come collegarlo ad una Raspberry PI che lavora a 3.3V, ma
usano una schedina con su un convertitore analogico/digitale collegato su A0 al sensore.
La schedina analogico/digitale è connessa con Raspberry sul canale I2c (SDA, SCL).

L'unica soluzione pratica consigliabile è di usare un potenziometro (trimmer) da regolare in modo
che la massima tensione fornita dal sensore non superi i 3.3V che sarebbero il fondo scala.

Quindi io lo alimento a 5V, metto il sensore in acqua e misuro con il multimetro la tensione tra
tra pin Uscita e GND e mi aspetto di misurare 5.0V o molto prossimo.

Collego il trimmer i due estremi Uscita e GND, misuro tra pin centrale del trimmer e GND e regolo fino ad ottenere
3.3V.

Ciao.

Grazie mille. Non sono molto esperto di elettronica, come funziona questo trimmer? Io ho ordinato un relé da 5V per gestire la differenza di voltaggio, ma poi leggendo bene ho letto che servirebbe anche uno step up boost. Il funzionamento del trimmer è simile allo stepup? Avresti un link di un trimmer da consigliare?

Come passo 5V al trimmer e quindi poi al sensore? Tramite un alimentatore esterno?

Totalmente fuori strada. Dovresti prima sperimentare l'uso di un potenziometro o trimmer resistivo con
arduino UNO o anche ESP32. Ti serve anche un multimetro e saperlo usare per misurare tensione DC.

Potenziometro e trimmer resistivo sono simili, cambia la dimensione e la finalità d'uso.
Nel tuo caso devi tarare, per cui un trimmer resistivo è più indicato, ma se hai dentro un potenziometro
usi quello.

Ciao.

Questi farebbero al caso mio quindi https://amzn.eu/d/ga0d7GV ?

Scusa non mi torna una cosa ma al trimmer come passo 5V?

Si sono ok. Ma a te serve solo il valore di 10000 ohm (10K).
Se ingrandisci l'immagine vedi:

GND    OUT     AOUT
 3      2       1 
CW

Misurare tra GND e AOUT(1) con il sensore infilato un bicchiere di acqua.
Mi aspetto di leggere sul display del multimetro 5.0v (4.99) o valore molto prossimo.
Misurare tra GND e OUT(2) e regolare il trimmer fino a visualizzare 3.3V su display del multimetro.

Collegare OUT(2) ad un pin analogico di ESP32, acquisisci i valori con analogRead() e li stampi sul
serial monitor. Dovrebbe visualizzare valori di circa 4090÷4095.

Rimuovi il sensore dal dentro il bicchiere pieno di acqua e osserva il serial monitor
I valori dovrebbero scendere. Asciugando il sensore dovrebbero scendere ulteriormente.
Lascia andare avanti così per un poco per rilevare qual'è il minimo valore che devi considerare
come umidità zero o umidità residua.

Mi pare ovvio ma non è detto, il sensore devi alimentarlo a 5V.

Ciao.

Ottimo. Grazie mille. Allora aspetto che mi arrivi il multimetro sabato e faccio un test. Non appena ho news posto qui. Grazie davvero per l'aiuto

Nel fare esperimenti fai attenzione a non bagnare il circuito del sensore o altri circuiti. Io per assicurarmi che ciò non possa accadere accidentalmente userei una bustina da usare come cappuccio.
Certo per fare passare i fili devi fare un piccolo foro nella bustina.

Ciao.

Ci sta, comunque pensavo di usare magari una pianta appena irrigata confrontandola con una non irrigata da un po' di tempo. Così posso tarare correttamente il sensore. Non appena arrivano multimetro e il trimmer sperimento il tutto

Per questo tipo di taratura è presto. Serve fare in modo che il sensore rilevi valore massimo assoluto di umidità. E dall'altro lato il valore minimo assoluto oltre il quale in nessuno condizioni si può ottenere meno questo valore.

Se sottopongo il sensore al massimo valore assoluto di umidità, tra AOUT e GND devo misurare 5.0 o comunque un valore molto prossimo al valore di tensione di alimentazione del sensore.
Solo in seguito dovrai tarare il trimmer in modo da misurare tra GND e il pin 2 del trimmer una tensione di 3.3V.
Considera che si tratta qui di valori nominali e pertanto con multimetro alla mano potresti scoprire che la ESP è alimentata a 3.32V o 3.295V e in questo caso devi tarare il trimmer per avere 3.295, poco meno si, poco più non va bene.

Dimenticavo, ho capito che non hai componenti elettronici passivi a portata di mano, tipo condensatori, resistori?

Ci sono buone probabilità che il valore analogico convertito in un numero nel range 0÷4095 (12-bit risoluzione) non sarà stabile ma ballerino e allora qualche condensatore da 10nF÷470nF ti potrebbe fare comodo averlo a portata di mano qualora servisse. Per le resistenze visto il kit che hai acquistato al loro posto puoi usare un trimmer e poi tararlo sul valore resistivo a piacere.

Ciao.

Ho solamente resistenze classiche da 100 ohm tipo, non ho condensatori, in effetti un po' di condensatori avrebbe senso averli sempre.

Mentre per il valore del sensore avevi notato infatti instabilità collegandolo direttamente, per poi attestarsi a 0 e alcune volte a 4095, quindi mi sa che potrei avere la stessa cosa da te descritta.

Inizierò con l'acqua, hai ragione, ha più senso capire i limiti, spero il sensore non si rovini

Hai seriamente rischiato di guastare la ESP32 che potrebbe pure avere qualche circuito interno al chip che lo protegge da extratensioni.
I valori ballerini sono dovuti principalmente da inquinamento elettromagnetico, ora i fili possono comportarsi nei confronti di alcuni segnali in inquinanti come delle antenne. Per dire sul filo collegato da un lato al pin 2 del trimmer e dall'altro lato ad un pin della ESP32, ci sarà "Segnale utile" + "Segnale rumore", va da se che dobbiamo minimizzare "il rumore" per avere un rapporto S/N più alto possibile.
S/N è il rapporto da "Segnale utile" / Noise (rumore).

Ciao.

Grazie per tutte queste info.
Dovrei studiare un attimo qualcosa di elettronica, sono davvero a 0 :sweat_smile:

Rieccomi, scusate il letargo. Ho ricevuto tutto quello di cui avevo bisogno, trimmer, multimetro e un cavo per alimentare esternamente il sensore.

@Maurotec ti chiedo scusa, ma non ho ben chiaro una cosa. Ho comprato un cavo USB, https://amzn.eu/d/0HgYmCY , che ha un uscita con fili vivi in modo da poter alimentare il sensore. Il GND non dovrei forse collegarlo sia al cavo USB che al trimmer?
Quel che ho fatto per ora è VCC e GND sensore collegato al cavo USB alimentato a 5V. Però mi pare di capire, non potendo leggere dal multimetro il valore analogico, io debba passare dal trimmer, quindi collegare GND e AOUT al trimmer e leggere il valore tramite il PIN centrale del trimmer, regolare fin quando non arrivo a 3.3V. Corretto?

Scusami, non ho abbastanza esperienza e magari sto dicendo scemenze.

Sembra corretta la descrizione dei collegamenti.
Ti consiglio carta e matita (e gomma) e disegni uno schema di collegamento.
Per il funzionamento del potenziometro (o trimmer resistivo) e il suo simbolo vedi qui.

GND è il nodo di riferimento di qualunque circuito. Si dice che Vcc si trova ad una d.d.p (Differenza Di Potenziale) di 5Volt, rispetto al nodo GND. Se non si specifica il nodo riferimento è implicitamente il nodo di GND,

Ciao.

Non capisco come mai non lo usi direttamente con la tensione da 3.3V visto che c'è scritto chiaramente che funziona.