Podczas wakacyjnej nieobecności, nasze domowe rośliny, z powodu braku regularnego podlewania i odpowiedniego oświetlenia, narażone są często na uschnięcie. Prezentowany układ (Fig. 1) umożliwia kontrolę podstawowych parametrów wegetacji roślin, t.j. wilgotności gleby i stopnia nasłonecznienia. W zależności od wartości tych parametrów układ umożliwia podjęcie automatycznych akcji nawadniania i/lub doświetlania rośliny. Projekt wykorzystuje tanie i łatwo dostępne komponenty elektroniczne: płytkę prototypową Arduino oraz czujniki, silnik pompy wody i inne.
Projekt wykorzystuje dwa rodzaje czujników: wilgotności oraz nasłonecznienia. Do pomiaru wilgotności gleby wykorzystuje się tzw. higrometry. Są to czujniki rezystancyjne. Tanie sensory dostępne w handlu składają się z dwóch części: małej płytki z elektroniką oraz czujnika złożonego z dwóch elektrod, służącego do kontroli zawartości wody w glebie (Fig. 2). Czujnik posiada potencjometr slużący do regulacji czułości wyjścia cyfrowego oraz diodę LED zasilania oraz diodę LED wyjścia cyfrowego. Układ posiada piny: VCC, GND, oraz dwa sygnały wyjściowe: cyfrowe (D0) oraz analogowe (A0). W handlu znajduje się wiele podobnych czujników np. typu YL-69, HL-69 czy FC-28.
Czujnik umożliwia skorzystanie z dwóch rodzajów sygnałów wyjściowych: cyfrowego (stan niski bądź wysoki) oraz analogowego. Napięcie na wyjściu analogowym czujnika wilgtności zmienia się płynnie w zależności od zawartości wilgoci w glebie. Kiedy gleba jest wilgotna, napięcie wyjściowe jest niskie. Gdy gleba jest sucha, napięcie wyjściowe jest wysokie (Tab. 1). Przetwornik analogowo-cyfrowy układu arduino zmienia to napięcie na odpowiadające mu wartości sygnałów wyrażone w skali od 0-1023. Wartość cyfrowego sygnału wyjściowego uzależniona jest od predefiniowanej wartości progowej. Poniżej niej wartość sygnalu cyfrowego będzie niska (0), a powyżej - wysoka (1). Wartość progową reguluje się za pomocą potencjometra.
| Gleba | Napięcie na wy analogowym | Wartość na wy przetwornika AC Arduino |
|---|---|---|
| sucha | wysokie (np. 4,2V) | 1023 |
| wilgotna | niskie (0V) | 0 |
Jako czujnik oświetlenia wykorzystano fotorezystor. Wykonano dzielnik napięcia, który podłączono do pinu analogowego mierzącego napięcie wyjściowe. Wartość rezystora dobrano eksperymentalnie (około 1,5kΩ).
Elementem odpowiedzialnym za nawadnianie roślin jest silnik (pompa) RS-360SH (Fig. 3). Wymaga ona zasilania 3-12V (do ciągłej pracy rekomendowane jest napięcie 5V 2A). Nie powinno się go podłączać na dłuższy czas do napięcia większego niż 7,5V.
Układ stale dokonuje pomiarów wilgotności gleby i usłonecznienia. Pomierzone wartości z czujników przekazywane są na wejścia analogowe Arduino (kolejno: A0 i A5). Po przeworzeniu, parametry w postaci procentowej są wyświetlane na wyświetlaczu ciekłokrystalicznym Nokia 5110. Pomiary dokonywane są z częstotliwością wyznaczaną za pomocą zmienej MeasurementBreak. W zależności od ustawienia zmiennej NumberOfMeasurements, układ dokonuje zliczeń n pomiarów. Wartości analogowe są sumowane, a następnie obliczana jest z nich średnia arytmetyczna. Wartość uśredniona decyduje o uruchomieniu urządzenia nawadniającego i lampy doświetlającej roślinę. Wartości progowe wilgotności gleby oraz usłonecznienia dobrano eksperymentalnie. W przypadku wilgotności, włączenie przekaźnika następuje wtedy gdy średni pomiar parametru staje się mniejszy bądź równy 850. Spadek wilgotności gleby poniżej wartości krytycznej powoduje załączenie przekaźnika pompy, co uruchamia silnik. Woda zaczyna być pompowana ze zbiornika źródłowego do doniczki. Silnik popmpuje wodę przez okres 3 sek. Po tym czasie pompa zostaje wyłączona i następuje okres 10-sekundowej przerwy, potrzebnej na wsiąknięcie wody i rozprowadzenie jej w przestrzeniach porowych gruntu. Po tym okresie układ przechodzi do trybu wykonania kolejnej serii pomiarów i sytuacja zaczyna się powtarzać. Bezpośrednio po dokonaniu pomiaru wilgotności, układ dokonuje pomiaru usłonecznienia. Aby zapobiec sytuacji ciągłego włączenia oświetlenia w godzinach nocnych, zdarzenie załączenia lampy uzależniono od zaistnienia warunków niepełnego oświetlenia. Jeżeli przeciętny pomiar oświetlenia obliczony jako średnia arytmetyczna z n pomiarów, wskaże wartość z przedziału (700, 850>, mikrokontroler zaświeci lampę. Będzie ona zapalona do momentu kolejnego pomiaru. W praktyce, kolejny pomiar dokonywany jest w warunkach doświetlenia i kolejna uśredniona wartość pomiarów wyłączy lampę. Jeśli w kolejnym okresie czasu warunki pomiarowe światła nie pogorszą się (np. z powodu nocy), światło zostanie ponownie zapalone. Sytuacja zacznie się od tego momentu powtarzać. Wartości chwilowe czujników oraz wartości uśrednione, wysyłane są na port szeregowy.