Arduino w połączeniu z czujnikiem opadów deszczu YL-83
Ten krótki tutorial pokazuje jak obsłużyć czujnik opadów deszczu za pośrednictwem płytki Arduino.
W przykładzie wykorzystano następujące elementy:
- Arduino Uno
- Deszcz :-)
Podłączenie
Moduł jest zasilany bezpośrednio z Arduino, więc nie potrzebujemy zewnętrznego źródła energii. Piny podłączamy według 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 podłączenia czujnika opadów deszczu.
Obsługa
Wyjście D0 działa cyfrowo. Domyślnie jest w stanie wysokim, natomiast po wykryciu opadów przechodzi w stan niski. Czułość możemy regulować za pomocą wbudowanego potencjometru. Natomiast wyjście A0 generuje sygnał analogowy i zmniejsza wartość napięcia wraz ze wzrostem opadów (jest odwrotnie proporcjonalne do natężenia deszczu). W przykładzie wykorzystamy prosty program, 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.

