sto provando il nuovo sensore umidità capacitivo (arrivato ieri sera)
ne ho preso un kit con 5.
noto che il valore analogico in questo è circa 600 a "secco", se lo bagno il valore decresce ma molto meno marcatamente rispetto all'altro sensore che provavo settimana scorsa.
mettendo delle gocce di acqua sulla superficie del sensore il valore si abbassa al minimo a circa 400.
se invece lo avvolgo su carta assorbente e poi la bagno il valore al minimo va a 500 circa.
diventa leggermente + complicato "assumere" dei valori per far partire l'allarme ...
vorrei capire quanto mi posso "spingere" con la lunghezza dei cavetti dalla scheda arduino ai sensori in campo...
cerco da tempo di capire quali sono i limiti di lunghezza dei cavi verso i sensori esterni ad arduino, ma sembra un argomento tabù....
qui qualcuno ne sa nulla?
per esempio stavo stimando che su una vettura normale compatta, pensando di mettere 1 sensore in bagagliaio, ed 1 per ogni zona poggiapiedi occupanti (quindi 4+1 sensori) potrei avere dei cavi che vanno da una lunghezza minima di 1,5 metri ad almeno 3,5/4 metri...
Dipende dal tipo di connessione e si incappa in problemi di vario tipo, ci sono connessioni più adatte e connessioni meno adatte a seconda dei casi, per cui una trattazione generica è un po' difficile da fare.
Ad es. l'I2C è pensato per lavorare sulla stessa scheda, quindi pochi centimetri, ma ci sono degli extender per aumentare le distanze.
ok...
difatti io avevo già escluso di usare i2c (tempo fa per altro progettino mi ero reso conto che non si poteva collegare con sensori a distanza di qualche metro...)
la connessione che intendo fare è semplicissima:
porto dalla scheda arduino il cavo GND e il cavo +5V al sensore, poi con un altro cavo arrivo dall'uscita del sensore e vado ai pin di ingresso analogici di Arduino (1 solo sensore = pin A0 per esempio)
per collegarmi sui pin di Arduino userei i banali cavetti che si trovano nei "kit", e all'altra estremità (verso il sensore) li taglio, sbuccio l'isolante dal conduttore, e li saldo a stagno a uno spezzone di cavetto allarme (esempio 4x0,75 mmq) collegato all'altro capo al sensore. ovviamente il punto che vado a stagnare lo isolo con termorestringente.
potrei eventualmente anche collegare dei faston o un qualsiasi piccolo connettore, senza tagliare e saldare i cavettini..
diciamo che potrei avere 1 solo sensore, e il cavo che lo collega ad Arduino potrebbe essere lungo da 1,5 metri a oltre 3 metri.
potrebbe funzionare o il cavetto troppo lungo impedisce il buon funzionamento?
Il cavetto funge da antenna per i disturbi elettromagnetici, quindi minimo minimo dovrebbe essere un cavetto schermato, altrimenti rischi che il tuo pin analogico legga tutto questo sporco invece del dato del sensore.
Poi, magari, si aspetta qualcuno più esperto che chiarisca meglio i dettagli.
Fosse stato un segnale digitale sarebbe stato un po' diverso, ma per un segnale analogico questo problema diventa rilevante.
preso uno dei cavi allarme "recuperati" e senza tagliarlo (non mi piace tagliare i cavi prima di "stenderli" e/o avere la misura necessaria) ho preparato i 3 cavetti che mi servono nelle 2 estremità.
poi in fretta ho saldato i cavettini dei kit arduino da un lato (appunto per connetterci Arduino1), e dall'altro lato ho saldato i cavettini col connettore al sensore.
isolato i punti saldati.
collegato il tutto e fatto le mie prove.
il cavo sarà lungo circa 4 metri. ah, mi sbagliavo, sbucciando l'isolante mi son accorto che è un cavo schermato, quindi meglio!
a "secco" il valore in uscita si attesta su 590/600.
mettendo qualche goccia di acqua sopra il sensore il valore si abbassa a 500/450.
direi che il tutto può funzionare senza fare troppi "magheggi"; poi dato che sicuro il cavo che mi servirà sarà al massimo 1,5 metri, direi che va + che bene
Ottimo.
Se vuoi farti un'idea dell'effetto antenna prova la stessa cosa con un cavo normale e le letture ti dovrebbero oscillare molto di più.
Buon proseguimento.
nel frattempo ho posizionato uno dei sensori capacitivi, preparato il cavo agli estremi (tagliato + corto per circa 1,6 metri di lunghezza) e già steso in una vettura.
adesso, avrei in mente una cosa aggiuntiva:
siccome ho un monitor 2,4" touch , lo volevo usare per visualizzare il valore letto dal sensore quando accendo il dispositivo di "allarme" acqua, ma mi accorgo solo ora che questo monitor mi va ad impegnare praticamente tutti i pin di Arduino. come potrei fare a usare il monitore e contemporaneamente leggere il valore dal sensore?
ah, allora da come ho capito la cosa non è banalissima ed il DHT11 che già ho preso non va proprio bene per l'applicazione che ho da fare....
Non è che non vada proprio bene.
Io, per esempio, uso quintalate di DHT22 all'esterno (chiusi in una scatoletta con 4 silenziatori pneumatici da 3/8") e i più vecchi hanno già 3 anni.
Qualcuno l'ho già cambiato ma visto il basso costo non è un gran problema.
Se poi li usi in ambienti chiusi con poco sbalzo di umidità non dovresti avere grossi problemi.
Di sicuro NON VA BAGNATO, ma lo potresti usare come pre-allarme di alta umidità.
Comunque già ce l'hai, ti conviene provarlo.
purtroppo però il DHT11 (o simile) potrebbe anche venire bagnato nei posti dove lo metterei...
nel frattempo ho preso (come suggerito da altri) dei sensori umidità/temp. capacitivi, e ne ho già posizionato uno sotto alla moquette di un'auto per tener sotto controllo la situazione. ci ho già steso anche il cavetto ed ovviamene lato sensore è già collegato (non è una cosa banale, (anzi direi è quasi impossibile senza rimuovere sedili e moquette stessa..) arrivare a dove ho posizionato il sensore...
ho già predisposto il cavetto anche dal lato opposto per collegarci Arduino, con già saldato sui cavetti gli appositi connettori, adesso basta solo che lo collego (spero sabato di trovare del tempo e provarlo...)
su Arduino ci collegherò un led+il buzzer per avere un allarme visivo-sonoro nel caso l'umidità rilevata dal sensore sarà eccessiva (quindi probabilmente il sensore si sta bagnando a causa di infiltrazioni). ci vorrei però collegare anche un monitor (o il touch, o un display a 2 righe) per visualizzare in tempo reale il valore letto dal sensore e capire "circa" quale può essere il livello di umidità nella zona del sensore. devo capire però come collegare il monitor o il display...
per queste "applicazioni" mi servono dei sensori affidabili e che non posso sostituire frequentemente (al di là del loro eventuale basso costo) data proprio la difficoltà/tempo a "raggiungerli"...bisognerebbe perderci ore a rismontare i pannelli/moquette dei vari rivestimenti delle vetture/roulotte o altro mezzo che sia...
ok, sono riuscito a collegare il cavetto del sensore ad Arduino, e col pc ho verificato i valori letti da monitor seriale.
valori che "oscillano" tra 593 e 598, il che significa bassa umidità ed assenza di bagnato (e per fortuna che non c'è traccia di acqua!!!)
quindi ok, con questo mini-collaudo posso dire che la mia piccola applicazione funziona:
-il sensore è posato bene (per non farlo andare a contatto con la lamiera sottostante ho ricoperto la stessa con un pezzo di nastro telato isolante, e l'ho fissato con un pezzetto di biadesivo e un pò di colla a caldo);
-il cavetto di collegamento con tutte le saldature che ho fatto agli estremi per i connettori e il tutto ben isolato con termorestringente è ben fatto
ora mi resta solo da fare una scatoletta con il buzzer ben collegato ed almeno un led di segnalazione, e dei collegamenti veloci ad Arduino (che voglio poter togliere/mettere in rapidità in qualsiasi momento mi servisse), ed uno "spinotto" per collegare il cavetto del sensore.
finchè non capisco come collegarci un piccolo monitor/display proverò a fare una segnalazione visiva a + led, magari in questo modo:
-led verde = valori letti da 550 a 590 = umidità bassa / non bagnato
-led giallo = valori letti da 500 a 550 = umidità media / inizia a bagnarsi
-led rosso = valori letti < 500 = umidità alta / bagnatissimo