Questo sensore è denominato “Soil Moisture Sensor” ovvero sensore di umidità del terreno, a differenza, per esempio del sensore DHt11 che misura l’umidità dell’aria.
Il sensore si può usare, per esempio, per misurare l’umidità nel terreno delle piante, per poi procedere ad innaffiarle, magari con un sistema automatico comandato da Arduino.
Indice
Utilizzo del sensore
Nel caso di siccità, un segnale di allarme potrebbe essere emesso o una pompa elettrica di un impianto automatico d’irrigazione essere attivata automaticamente.
Principio di funzionamento
Il funzionamento del Soil Moisture Sensor è del tutto simile ad un altro sensore, il sensore di livello, entrambi si basano sulla conduttività. Vedere articolo Sensore di livello dell’acqua – Water sensor
Si attiva quando l’acqua contenuta nella terra mette in conduzione le piste delle due parti del sensore. Sono alternativamente connesse alla tensione positiva e alla linea GND e permettono alla corrente di fluire tra le due piste.
Questo valore viene elaborato elettronicamente nel sensore e trasmesso sotto forma di un segnale a un ingresso analogico della scheda.
In questo caso la scheda, non misura la tensione elettrica come tale, ma converte il segnale analogico presente in ingresso in un valore numerico.
Dato che il sensore presenta una tensione d’uscita compreso tra 0 e 2,6 V circa, si leggeranno valori compresi tra 0 e 550 circa.
Un led presente sul sensore segnala la presenza della tensione di alimentazione.
NOTA: per via del tipo di funzionamento del sensore, si ricorda che se si vuole prolungare la sua vita, occorre ridurre il processo di corrosione.
Un metodo è quello di non collegare direttamente l’alimentazione del sensore a VCC ma ad un pin digitale e quindi fornire l’alimentazione di 5V quando si vuole effettuare la lettura rapida, e poi spegnerlo.
Se avete costantemente il sensore di umidità del terreno alimentato questo si corroderà nel corso del tempo, e più acqua si trova nel vostro terreno, più sarà veloce la sua corrosione.
Caratteristiche
Tensione di funzionamento: | 3-5V DC |
Corrente di funzionamento: | meno di 20mA |
Tensione d'uscita: | 0÷2.6V (con il sensore completamente immerso in acqua) |
Sensore Tipo: | Analogico |
Area di rilevamento: | 40 x 16 mm |
Processo di produzione: | FR4 HASL doppia faccia |
temperatura di funzionamento: | 10 °C-30 °C |
Umidità: | 10% -90% senza condensa |
Dimensioni del sensore: | 62 x 20 x 8 mm |
Schema elettrico del sensore
Lo schema elettrico del sensore è molto semplice, nel circuito è visibile il LED1 la cui accessione segnala la sola presenza della tensione di alimentazione.
Sia lo schema elettrico che il PCB può essere scaricato dal mio account presso OSHWLab, utilizzando questo link
Lo schema e il relativo PCB sono stati realizzati con il programma EasyEDA: un servizio per il disegno di circuiti e la loro simulazione, progettazione e produzione di PCB. Provatelo è gratuito!
Dove trovare il sensore
Il modulo sensore è venduto dalla ICstation.com con codice 3274 (Soil Hygrometer Humidity Detection Module Moisture Sensor Water Detector Board for Arduino)
Il sensore di umidità del terreno può essere trovato presso il sito Homotix, codice prodotto HMT0114, ricordate di inserire il codice “ADRIROBOT” per ottenere uno sconto del 3%.
Questo sensore si trova tra l’altro all’interno del Kit Keyestudio 37 in 1 Starter Kit per BBC micro:bit, il codice del sensore è Ks0049 (pagina WIKI)
Il Kit può essere acquistato presso Amazon, o AliExpress. Il codice dell’articolo è ks0361
Acquisto presso Amazon | Acquisto presso AliExpress |
Schema del circuito di prova
Per testare il sensore si utilizzano i seguenti componenti
Arduino UNO | Moisture sensor |
KY-019 5V relay module | Cavi colorati |
I pin utilizzati sono i seguenti
Funzione | Arduino | Sensore | Relè |
---|---|---|---|
Alimentazione relè | Pin +5V | Pin V | |
Alimentazione Sensore | Pin D3 | Pin V | |
GND sensore e relè | Pin GND | Pin G | Pin G |
Uscita sensore | Pin A0 | Pin S | |
Attivazione Relè | Pin D2 | Pin S |
Versione con componenti Keyestudio
Sotto la foto del circuito con utilizzo di componenti Keyestudio:
- Scheda di controllo Ks0486 Scheda Keyestudio PLUS
- Sensore di umidità del terreno Ks0049
- Modulo relè singolo Ks0011
Programma di prova
Il programma attiva un relè a cui può essere collegata una pompa oppure un’elettrovalvola per irrigare per esempio dei vasi quando siete in vacanza.
L’attivazione viene fatta in base alla lettura dell’umidità del terreno eseguita dal sensore dotato di due terminali, in base alla conducibilità del terreno, il cui valore analogico in uscita varia.
Impostando la soglia, il relè viene eccitato e la pompa si attiva
NOTA: Per evitare problemi di corrosione, il sensore non è costantemente alimentato, ma questo viene fatto attivando il pin digitale D3, per il solo tempo di lettura.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | int lettura = 0; int pompa = 2; //Pin a cui è collegato i rele' per attivare al pompa int sensore = 3; //Pin di alimentazione del sensore void setup() { Serial.begin(9600); pinMode (pompa, OUTPUT); // Imposta il pin 3 Relè POMPA come uscita. pinMode (sensore, OUTPUT); //Imposta il pin 2 SENSORE come uscita. } void loop() { digitalWrite(sensore, HIGH); // Accende sensore lettura = analogRead(A0); //Pin pettura sensore Serial.print("Valore umidita':"); Serial.println(lettura); if (lettura < 200 ) //se il valore del sensore è inferiore a "200", allora... { digitalWrite(pompa, HIGH); //attiva la pompa //digitalWrite(pompa, LOW); //attiva la pompa nel caso di logica invertita } else //..altrimenti... { digitalWrite(pompa, LOW); //disattiva la pompa /digitalWrite(pompa, HIGH); //disattiva la pompa nel caso di logica invertita } digitalWrite(sensore, LOW); // Spegne sensore delay(1000); } |
Video illustrativo
Visualizza questo post su Instagram