Projekt: Wykrywanie deszczu i wilgotności gleby pomiaru przy użyciu Intel Galileo

  • Dec 26, 2019
click fraud protection

W tym artykule dowiesz się, jak korzystać z czujników analogowych z Intel Galileo. Pokażę ci, jak używać prostego czujnika z czujnikiem deszczu i wilgotności gleby.

Projekt ten może być stosowany w gospodarstwie: do podejmowania lepszych decyzji dotyczących gdy do wody uprawy roślin, a także bardzo przydatne informacje na temat ile padał deszcz, a poziom wilgotności gleba.

Pomimo faktu, że użyłem w projekcie Intel Galileo, można również użyć tego samego kodu i połączenie z Arduino.

Składniki, które użyłem:

  1. Intel Galileo - 1 szt.
  2. UKŁAD TYP IB401 eksperymenty z 400 punktów i grzbietów
  3. Czujnik wilgotności gleby - 1 szt.
  4. czujnik deszczu FC-37 - 1 szt.

Jak działa czujnik wilgotności gleby?

Czujnik wilgotności gleby jest bardzo prosta.

Mierzy opór gleby i przekształca je na napięcie od 0 do 5 V. Można czytać tę wartość poprzez wyjścia analogowe Intel Galileo pokładzie.

Czujnik wilgotności gleby
Czujnik wilgotności gleby

To daje liczbę całkowitą od 0 do 1024 w kodzie.

Na stronie informacyjnej Soil Moisture Sensor, można zobaczyć, że czujnik daje następujący wynik dla suchej gleby wilgotnej gleby i wody:

instagram viewer
  • Czujnik w suchej glebie: 0 ~ 300
  • Czujnik w wilgotnej gleby: 300 ~ 700
  • Czujnik w wodzie: 700 ~ 950

Różne rośliny potrzebują poziom wilgoci. Można mierzyć w rzeczywistej wartości referencyjnej - a następnie użyć go w swoim projekcie.

Jak działa miernik deszczu?

Z takim czujnikiem a także prosty wartość napięcia od 0 do 5 V. I można go odczytać z jednego z wejść analogowych Intel Galileo forum.

Czujnik deszczu FC-37
Czujnik deszczu FC-37

Czujniki mają również wyjście cyfrowe. To będzie wysoka, gdy poziom wilgotności przekracza pewien próg. Można kontrolować próg pomocą zintegrowanego potencjometru.

Ale ponieważ jest to łatwe do zrobienia w kodzie, można pominąć ten wniosek i używać tylko wyjście analogowe projektu.

Krok 1: Połączyć składniki

Podłączyć przewody łączące z 5 V i GND z Galileo do dwóch pustych wierszy w układzie.

Za pomocą przewodów łączących do łączenia VCC, GND i z czujnika wilgotności gleby 5V oraz GND w układzie.

I podłączyć zworkę z kontaktu SIG czujnik wilgotności gleby do zacisków A0 na pokładzie Intel Galileo.

Zrób to samo z czujnikiem deszczu: podłączenie VCC i GND do 5V a masą na układzie.

A0 i połączyć z czujnikiem deszczu na A1 na Galileo.

Podłącz zasilanie płyta Intel Galileo, a gdy świeci się kontrolka USB, podłącz kabel USB z komputera do Galileo.

Jesteś teraz gotowy do programowania.

Krok 2: Pobierz kod do odczytu wartości z czujnika wilgotności gleby

Sprawdzić czujnik wilgotności gleby, pobierając poniższy kod:

Int sensorPin = A0; // wybierz pinowe wejście dla czujnika
void setup () {
// Inicjalizacja portu szeregowego
Serial.begin (9600);
}
nieważne pętli () {
// odczyt wartości z czujnika
Int sensorValue = analogRead (sensorPin);

// wyświetli wartość
Serial.println (sensorValue);

// opóźnienie 200 ms.
opóźnienia (200);
}

Następnie dotknij palcami obu styków czujnika, aby upewnić się, że nie ma reakcji. Jeśli widzisz zmianę wartości po dotknięciu dwa kontakty, co oznacza, że ​​wszystko działa.

Krok 3: Sprawdź czujnik deszczu

Teraz zmienić kod w celu sprawdzenia miernika deszczu.

Używać tego samego kodu, jak wyżej, ale zamiast zmienić zmienną sensorPin na A1. Można sprawdzić miernik deszczu, na przykład za pomocą wilgotnej gąbki.

Etap 4. Połączyć kod w jednym

Wreszcie, połączyć cały kod dla tych dwóch czujników do jednego programu i uczynić bardziej przyjemne wyjście szeregowe:

Int sensorPinSoil = A0; // kod PIN wejściowego czujnika wilgotności gleby
Int sensorPinRain = A1;
// PIN wejście dla czujnika deszczu

void setup () {
Serial.begin (9600);
}
nieważne pętli () {
Int soilValue = analogRead (sensorPinSoil);
Int rainValue = analogRead (sensorPinRain);
// Wyjście do czytelnego formatu wartości
Serial.print ( „czujnik deszczu Aktualna wartość”);
Serial.println (rainValue);
Serial.print ( „Aktualna wartość gruntu czujnika wilgotności”);
Serial.println (soilValue);
Serial.println ( "");
opóźnienia (200);
}

Gotowe! Test! I nie zapomnij zapisać się do mojego kanału RSS.