Progetto: Individuazione di misura la pioggia e l'umidità del terreno utilizzando Intel Galileo

  • Dec 26, 2019
click fraud protection

In questo articolo potrete imparare a utilizzare sensori analogici con Intel Galileo. Vi mostrerò come utilizzare un semplice sensore di sensore di pioggia e umidità del suolo.

Questo progetto può essere utilizzato in azienda: per prendere decisioni migliori su quando l'acqua colture, nonché molto utile disporre di informazioni sulla quantità di pioggia caduta, e il livello di umidità suolo.

Nonostante il fatto che ho usato nel progetto Galileo Intel, si potrebbe anche utilizzare lo stesso codice e la connessione con Arduino.

I componenti che ho usato:

  1. Intel Galileo - 1 pc.
  2. Layout digitare IB401 esperimenti con 400 punti e creste
  3. Tester di umidità - 1 pc.
  4. Sensore pioggia FC-37 - 1 PC.

Come funziona il sensore di umidità del suolo?

Tester di umidità è molto semplice.

Si misura la resistenza del suolo e la converte in tensione 0 e 5 V. Si può leggere questo valore tramite scheda Intel Galileo analogiche uscite.

sensore di umidità del terreno
sensore di umidità del terreno

Questo vi darà un intero 0-1024 nel codice.

Nella pagina delle informazioni del tester di umidità, si può vedere che il sensore vi darà il seguente output per il terreno asciutto, terreno umido e acqua:

instagram viewer

  • Il sensore nel terreno asciutto: 0 ~ 300
  • Il sensore in un terreno umido: 300 ~ 700
  • Il sensore in acqua: 700 ~ 950

Diverse piante necessitano di un livello di umidità. È possibile misurare in termini di valore di riferimento reale - e poi utilizzarlo nel progetto.

Come funziona il pluviometro?

Su tale sensore A è anche un semplice valore di tensione da 0 a 5 V. E si può leggere con uno degli ingressi analogici Intel Galileo vostra tavola.

sensore pioggia FC-37
sensore pioggia FC-37

I sensori hanno anche un'uscita digitale. Sarà alto quando il livello di umidità supera una certa soglia. È possibile controllare la soglia con il potenziometro integrato.

Ma dal momento che è facile da fare nel codice, è possibile ignorare questa conclusione e utilizzare solo l'uscita analogica del progetto.

Passo 1: Collegare i componenti

Collegare i fili di collegamento dal 5 V e GND da Galileo a due righe vuote nel layout.

Utilizzare i cavi di collegamento per collegare la VCC e GND dal sensore umidità del terreno a 5V e GND nel layout.

E collegare un ponticello dal contatto SIG umidità del terreno sensore al A0 terminale a bordo Intel Galileo.

Fare lo stesso con sensore pioggia: collegare la VCC e GND a 5V e terra sul layout.

E collegare A0 dal sensore pioggia A1 Galileo.

Collegare l'alimentazione della scheda Intel Galileo, e quando l'indicatore USB si illumina, collegare il cavo USB dal computer a Galileo.

Ora siete pronti per la programmazione.

Fase 2: Scarica il codice per leggere i valori dal sensore di umidità del suolo

Controllare il sensore di umidità del terreno scaricando il seguente codice:

int sensorPin = A0; // seleziona il pin di ingresso per il sensore
void setup () {
porta seriale // Inizializza
Serial.begin (9600);
}
void loop () {
// leggere i valori dal sensore
int = SensorValue analogRead (sensorPin);

// Visualizza il valore
Serial.println (SensorValue);

// ritardo di 200 ms.
ritardo (200);
}

Quindi toccare le dita per i due contatti del sensore per garantire che ci sia una reazione. Se si vede un cambiamento dei valori quando si tocca i due contatti, il che significa che tutto funzioni.

Fase 3: controllare il sensore pioggia

Ora modificare il codice al fine di verificare il pluviometro.

Utilizzare lo stesso codice come sopra, ma invece modificare la variabile sensorPin su A1. È possibile controllare il pluviometro, per esempio, con una spugna bagnata.

Fase 4. Unire il codice in uno

Infine, combinare tutti il ​​codice di questi due sensori in un unico programma e rendere più piacevole uscita seriale:

int sensorPinSoil = A0; // PIN ingresso per sensore di umidità del terreno
int sensorPinRain = A1;
// PIN ingresso per il sensore pioggia

void setup () {
Serial.begin (9600);
}
void loop () {
int = soilValue analogRead (sensorPinSoil);
int = rainValue analogRead (sensorPinRain);
// output ad un valore formato leggibile
Serial.print ( "sensore pioggia valore corrente");
Serial.println (rainValue);
Serial.print ( "valore attuale del suolo sensore di umidità");
Serial.println (soilValue);
Serial.println ( "");
ritardo (200);
}

Fatto! Test! E non dimenticare di iscriverti al mio feed RSS.