Arduino w połączeniu z czujnikiem wilgotności gleby
Krótki poradnik pokazuje jak wykorzystać czujnik wilgotności gleby za pośrednictwem mikrokontrolera Arduino.
W przykładzie wykorzystano następujące elementy:
Podłączenie
Moduł jest zasilany bezpośrednio z Arduino, więc nie potrzebujemy zewnętrznego źródła energii. Piny podpinamy według poniższej tabeli:
Pin Arduino | Pin Czujnika |
---|---|
5 V | VCC |
GND | GND |
pin A0 | A0 |
pin 2 | D0 |
Pozostałe dwa piny z modułu czujnika łączymy z sondą pomiarową za pomocą dołączonego do zestawu przewodu tak, jak na poniższym schemacie:
Schemat układu.
Obsługa
Wyjście D0 działa cyfrowo. Domyślnie jest w stanie wysokim, natomiast po wykryciu wilgotności przechodzi w stan niski. Czułość możemy regulować za pomocą wbudowanego potencjometru. Wyjście A0 działa analogowo i zmniejsza wartość napięcia wraz ze wzrostem wilgotności (jest do niego odwrotnie proporcjonalne). W przykładzie wykorzystamy prosty kod programu, który na bieżąco będzie wyświetlał na monitorze szeregowym wartości odczytane z A0 i D0.
int sensor_A0 = A0; // podłączenie od A0 na czujniku do A0 na Arduino int sensor_D0 = 2; // podłączenie od D0 na czujniku do pinu 2 na Arduino int wartosc_A0; // zmienna dla wartości A0 int wartosc_D0; // zmienna dla wartości A0 void setup() { Serial.begin(9600); // uruchomienie monitora szeregowego pinMode(2, INPUT); // ustawienie pinu 2 jako wejście } void loop() { wartosc_A0 = analogRead(sensor_A0); // pobranie wartości z A0 wartosc_D0 = digitalRead(sensor_D0); // pobranie wartości z D0 Serial.print("D0: "); // wyświetlenie na monitorze szeregowym Serial.print(wartosc_D0); Serial.print(" -- A0: "); Serial.println(wartosc_A0); delay(200); // opóźnienie pomiędzy kolejnymi odczytami }
Efekty działania programu możemy zobaczyć na poniższym screenie.
Zrzut ekranu szeregowego monitora.