Il precedente articolo dedicato all’irrigazione arduino hai imparato a condividere i valori rilevati da arduino su una pagina Web, ora è tempo di verificare i valori che rileva il sensore di umidità del terreno.
Per irrigare il tuo giardino solo in condizioni ottimali sarà necessario raccogliere alcuni dati dai sensori collegati ad Arduino.
Ipotizziamo di utilizare arduno uno R3 e dei sensori analogici puoi collegare fino a 6 sensori al tuo progetto di irrigazione arduino in modo da raccogliere sufficenti valori da analizzare e sulla base dei quali eseguire un’adeguata irrigazione delle piante.
Il sensore di umidità del terreno per l’irrigazione arduino
Il sensore che ho scelto per il mio progetto è il Moisture Sensor della DFRobot:
questo sensore, come riporta il sito del costruttore, è in grado di operare anche con le due liste di contatti immerse nell’acqua, riportando valori differenti:
- 0 ~300 : dry soil ( terreno asciutto )
- 300~700 : humid soil ( terreno umido )
- 700~950 : in water ( in acqua )
Questo dato è molto utile perché ti fornisce già un’idea delle condizioni del terreno in base ai valori letti.
Avrai notato che sono range abbastanza ampi di 300/400 valori ciascuno e che non arrivano a 1023 ossia i 5v convertiti dall’ADC di arduino, questo è dovuto al fatto che il range di tensione presente sul pin di output è:
Output voltage signal: 0~4.2v
Current: 35mA
come riporta il sito DFRobot, per cui al massimo otterrai il valore 950 in condizioni di immersione totale del sensore in acqua.
Collegare il sensore di umidità del terreno
Il sensore Moisture Sensor presenta 3 pin:
- pin 1 alimentazione positiva ( +5v ) cavo rosso
- pin 2 alimentazione negativa o massa ( Gnd ) cavo nero
- pin 3 segnale analogico in Volt ( 0~4.2v ) cavo blu
Sketch di lettura del sensore umidità del terreno Moisture Sensor
Lo sketch per eseguire il test è molto semplice:
int sensorPin = A0; int sensorValue = 0; void setup() { Serial.begin( 9600 ); pinMode(sensorPin, INPUT); } void loop() { sensorValue = analogRead(sensorPin); Serial.print("Valore: "); Serial.println( sensorValue ); delay(500); }
il suo compito, in questa fase, è di rilevare i valori acquisiti dal sensore di umidità del terreno e scriverli sul monitor seriale in modo che tu possa visualizzarli.
Lo sketch non presenta difficoltà se hai chiari concetti quali la lettura di un pin analogico e l’invio di informazioni al monitor seriale.
Linea 01: definisci il pin a cui hai collegato il sensore di umidità del terreno;
linea 02: imposta una variabile di tipo integer che memorizza il valore letto dal sensore;
linea 05: attiva la comunicazione tra Arduino ed il Monitor Seriale;
linea 06: imposta l’uso del pin Analogico come pin di INPUT;
linea 10: leggi il valore sul pin analogico con il comando analogRead( pin ) e memorizzalo nella variabile sensorValue;
linea 12: scrivi sul monitor seriale il valore letto dal comando alla linea 10;
linea 13: attendi 1/2 secondo tra una letura e la successiva;
Il video test dell’irrigazione arduino con sensore del terreno
Ecco il video del test sul sensore di umidità del terreno per l’irrigazione arduino:
Buona irrigazione !!!
Prima di inserire un commento, per favore, leggi il regolamento
62 pings
Skip to comment form