Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Bezprzewodowe czujniki wilgotności gruntu

Sareph 01 Sep 2020 11:40 68481 12
IGE-XAO
  • Bezprzewodowe czujniki wilgotności gruntu
    Ponieważ moja dziewczyna jest maniakiem kwiatów, zaznaczyła sobie coś co by można wetknąć w grunt, zapomnieć o tym, że w tym gruncie jest przez parę miesięcy a w międzyczasie dowiadywać się z tego ile mniej więcej wody znajduje się w ziemi (aka "kiedy najlepiej podlewać"), najlepiej po WiFi. Z WiFi nic nie wyszło, bo w sumie wszystko co używa WiFi ma pobór prądu z kosmosu, a chcemy mieć tak około pół roku pracy na baterii 300-400mAh. Opcją był jeszcze BLE (nRF52), ale też odpadł z powodu w sumie małej wygody.
    Skończyło się na STM32F030 w parze z LT8920. STMa chyba nie trzeba przedstawiać, a LT8920 jest transciverem radiowym w pasmie 2,4GHz, którego główną zaleta jest mała liczba potrzebnych dodatkowych elementów, potrzebne są całe dwa kondensatory i 12MHz kryształ. Do tego pobór prądu w uśpieniu na poziomie 6uA i do tego koszt 25 centów za sztukę. Ale nie ma róży bez kolców, zasięg w praktyce jest ok, ale mogło by być lepiej: około 1-2 betonowe ściany, do tego tragiczna dokumentacja.

    Pomiar wilgotności odbywa się metoda pojemnościową:

    Bezprzewodowe czujniki wilgotności gruntu Bezprzewodowe czujniki wilgotności gruntu Bezprzewodowe czujniki wilgotności gruntu

    Na wejście układu pomiarowego podawany jest 2,4MHz sygnał PWM z 30% wypełnieniem. Ten po przejściu przez filtr złożony ze ścieżek na PCB, ewentualnej wody w otoczeniu i R2 ulega spłaszczeniu. Interesuje nas w tym momencie jaki jest mniej więcej maksymalny poziom po przefiltrowaniu, a zmierzenie tego umożliwia detektor maksimów złożony z D1 (to tak na prawdę dioda 4148, pod ręką nie było odpowiedniego symbolu w eagle), C1 i R3. Potem już wystarczy nawet niezbyt szybki ADC i określenie poziomów napięcia w suchym i mokrym otoczeniu celem kalibracji.

    Bezprzewodowe czujniki wilgotności gruntu

    Ładowanie przez gniazdo mini USB za pomocą TP4057, stabilizację do 3V zapewnia HT7530-7, oba w obudowach SOT23-5. Szczytowy pobór prądu w trakcie pomiaru/nadawania osiąga około 60mA, 22mA w odbiorze, a w trybie uśpienia nie przekracza 30uA. Pomiar/wysyłka odbywa się raz na 5 minut, trwa około 55ms. To teoretycznie powinno pozwolić na pracę z 400mAh akumulatorka lipo przez około 8 miesięcy, uwzględniając 3% samorozładowanie i bez uwzględnienia ręcznego trybu nasłuchu.

    Bezprzewodowe czujniki wilgotności gruntu

    Układ posiada jeden przycisk, którego działanie rożni się w zależności od czasu ptrzytrzymania:

    * pojedyncze naciśniecie - natychmiastowy pomiar i wysłanie aktualnych danych w pakiecie (migniecie diodą)
    * przytrzymanie przez 3s - układ przechodzi w tryb nasłuchu, to umożliwia zdalne przejście do bootloadera i wgranie nowego firmware przez radio lub odczyt danych na żywo przez centralkę, ewentualnie także zmianę parametrów (miganie diodą co 1s)
    * przytrzymanie przez 10s - reset + wejście do bootloadera na 30s (miganie diodą 3x s)

    Obecnie nie ma innej opcji wyłączenia transmisji danych niż odłączenie baterii. Ale tak sobie myślę, że zmiana STM32F030 na F07x dała by opcję konfiguracji przez USB, przydatną w wypadku wprowadzenia przypadkiem jakichś bardzo złych ustawień. To jednak może w kolejnej wersji, obecna jak na nasze potrzeby się sprawdza całkiem dobrze.

    Bezprzewodowe czujniki wilgotności gruntu

    Przy okazji pomiaru wilgotności gleby układ mierzy tez napięcie na baterii, opcjonalnie temperaturę (NTC), napięcie na USB podczas ładowania.

    Do zbierania danych z czujników wykorzystywany jest zegar:

    Bezprzewodowe czujniki wilgotności gruntu

    Zbudowany na STM32F107 (i 18 wyświetlaczach matrycowych 8x8 20/1.9mm), posiada port ethernet, kilka czujników podających parametry środowiska w który się znajduje i transciver na LTC8920 co umożliwia mu wymianę danych z czujnikami.

    Bezprzewodowe czujniki wilgotności gruntu

    Ale ten opisany będzie dokładniej jak w moje kochanie zrobi coś sensownego z jego WebUI ;)

    Cool? Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    Sareph
    Level 24  
    Offline 
    Sareph wrote 597 posts with rating 332, helped 62 times. Been with us since 2004 year.
  • IGE-XAO
  • #2
    khoam
    Level 41  
    Sareph wrote:
    Na wejście układu pomiarowego podawany jest 2,4MHz sygnał PWM z 30% wypełnieniem.

    Rozumiem, że wypełnienie i częstotliwość tego sygnału jest stała? Czym był podyktowany wybór akurat tych parametrów?
  • #3
    Sareph
    Level 24  
    khoam wrote:
    Rozumiem, że wypełnienie i częstotliwość tego sygnału jest stała? Czym był podyktowany wybór akurat tych parametrów?
    Tak, stała. Eksperymentalnie mi z tego wyszedł najszerszy zakres pomiarowy, w tym wypadku 2100 na 12bit ADC.
  • IGE-XAO
  • #5
    Sareph
    Level 24  
    398216 Usunięty wrote:
    A w jaki sposób zabezpieczysz płytkę przed wpływem wilgoci?
    Nie zabezpieczałem, solder maska jest w sumie na wodę odporna, a FR4 jej praktycznie nie wchłania. Jedna rzecz, o której nie wspomniałem - czujniki dostane jeszcze obudowy w wolnej chwili, żeby im przypadkowe polanie nie zaszkodziło, ale większość kwiatów dostaje wodę do podstawka, więc w te stronę też raczej nic im się nie stanie. ;)
  • #6
    gkalfail
    Level 8  
    Bardzo fajny projekt. Gratulacje!

    Interesuje mnie jak wygląda sprawa z anteną. Czy to jest po prostu kawałek przewodu na 1/4 długości fali? Nie potrzeba żadnego dostrajacza impedencji, albo czegoś podobnego? Jakieś wymagania co do grubości przewodu, pcb etc?

    (Jak widać po pytaniach od razu "podpaliłem się" aby użyć LT8920 w swoim projekcie. Jeszcze nigdy nic nie robiłem RF a w szczególności na 2.4GHz i myślę, że projekt z tym układem mógłby być moim pierwszym w tej działce :D )
  • #8
    Sareph
    Level 24  
    gkalfail wrote:
    Bardzo fajny projekt. Gratulacje!

    A dziekuję.

    gkalfail wrote:
    Interesuje mnie jak wygląda sprawa z anteną. Czy to jest po prostu kawałek przewodu na 1/4 długości fali?
    Dokładnie tak.

    gkalfail wrote:
    Nie potrzeba żadnego dostrajacza impedencji, albo czegoś podobnego? Jakieś wymagania co do grubości przewodu, pcb etc?
    Jak pisałem, dokumentacja układu jest upośledzona i nie zawiera absolutnie żadnych wskazówek na temat tego co ten układ lubi najbardziej za antenę. A układ przykładowy w dokumentacji wygląda tak:

    Bezprzewodowe czujniki wilgotności gruntu

    Miejscami nawet zapomnieli zmienić nazwy układów, bo w dokumentacji czasem są odwołania do LT8900 albo 8910, wygląd jakby ktoś wziął dokumentacje z któregoś z nich, nazwał ze to od 8920 będzie teraz i nawet nie zrobił search & replace aby pozamieniać wszystkie nazwy.

    Także wybrałem rozwiązanie najprostsze, drut 1/4 długości jak najbliżej układu i działa. Wydaje mi się, że gdzieś w internecie widziałem układ na tym transciverze z anteną podłączona przez jeden kondensator i ściągnięta do masy za pomocą rezystora 10k, ale to by było na tyle.

    gkalfail wrote:
    (Jak widać po pytaniach od razu "podpaliłem się" aby użyć LT8920 w swoim projekcie. Jeszcze nigdy nic nie robiłem RF a w szczególności na 2.4GHz i myślę, że projekt z tym układem mógłby być moim pierwszym w tej działce :D )
    Nie krepuj się, na papierze wygląda całkiem spoko, i serio 3 elementy dodatkowe i działa. Chociaż bardzo wątpię w te 200m zasięgu, ale za to jest banalny w obsłudze, nawet z tą upośledzoną dokumentacja. ;)

    Dodano po 3 [minuty]:

    Jogesh wrote:
    A jaki zasięg w otwartej przestrzeni?
    Nie sprawdzałem. Ale *wydaje mi się*, że przy minimalnej prędkości i maksymalnej mocy (której w sumie nie do końca wiadomojak ustawić, bo taka dobra dokumentacja) może by było ze 100m.

    Jogesh wrote:
    Czy nie wolałes zastosować procka z serii 'L'. Są bardziej energooszczędne.
    Niby tak, ale w sumie F0 jakieś zawsze są pod ręką, więc zamiast zamawiać specjalnie do tego Lki, wziąłem to, czego mam zapas. I tak wyszło energooszczędnej niż początkowe założenie ładowania co pół roku. ;)
  • #9
    pier
    Level 23  
    Symbole +12V na schemacie to chyba błąd?

    Długo już Używasz tych czujników? Pytam bo ja od kilku miesięcy testuje swoją wersję i zauważyłem że gleba wokół czujnika potrafi się luzować i fałszować wyniki.
    Zjawisko bardziej uciążliwe jeśli podlewamy kwiaty bezpośrednio do doniczki.
  • #10
    Sareph
    Level 24  
    pier wrote:
    Symbole +12V na schemacie to chyba błąd?

    Tak, skopiowałem ten fragment z innego schematu gdzie faktycznie było 12V i po prostu tak zostało.

    pier wrote:
    Długo już Używasz tych czujników? Pytam bo ja od kilku miesięcy testuje swoją wersję i zauważyłem że gleba wokół czujnika potrafi się luzować i fałszować wyniki.
    Około miesiąca i zauważyłem coś takiego ale nie dzieje się samo z siebie, za to na przykład naciśnięcie przycisku potrafi lekko ruszyć czujnikiem i zmienić wykazaną wartość o polowe. Problem wystarczająco rozwiązuje ubicie ziemi w okół czujnika, przynajmniej wystarczająco aby nie było problemu z podłączeniem kabelka/odłączeniem usb, byle delikatnie. ;)
  • #11
    .:KoSik:.
    Level 18  
    Projekt bardzo fajny.
    Jakiś czas temu popełniłem podobny projekt ale zasilany z CR2032. Na jednej baterii dzała już 4 miesiące bez zauważalnego spadku napięcia wiec powinna wytrzymać jeszcze trochę.
    W moim projekcie trochę inaczej podszedłem do samego pomiaru ale nie będę ponownie opisywał (jest tu: https://www.elektroda.pl/rtvforum/topic3681817.html

    Co do luzowania gleby to u mnie dzieje sie tak zaraz po obsadzeniu czujnika. Po 2-3 tygodniach delikatne ruchy na boki nie wpływają na pomiary.

    Skoda, ze nie wrzuciłeś wykresów z pomiarów z dłuższego okresu. Można by wtedy zobaczyć jaka jest stabilność pomiarów.

    Pozdrawiam
  • #12
    Sareph
    Level 24  
    .:KoSik:. wrote:
    Projekt bardzo fajny.
    A dziekuje.

    .:KoSik:. wrote:
    Jakis czas temu popelnilem podobny projekt ale zasilany z CR2032. Na jednej baterii dzala juz 4 miesiace bez zauwazalnego spadku napiecia wiec powinna wytrzymac jeszcze troche.
    Ja sie nad 2032 zastanawiałem, ale przy szczytowym poborze okolo 60mA stwierdziłem, ze nie będę testował jak sie one zachowają i wezmę bezpieczna opcje. ;)

    .:KoSik:. wrote:
    W moim projekcie troche inaczej podszedlem do samego pomiaru ale nie bede ponownie opisywal (jest tu: https://www.elektroda.pl/rtvforum/topic3681817.html).
    Hmm, w sumie myślę, ze dało by się u mnie zastosować i te metodę i sprawdzić czy jest jakaś różnica.

    .:KoSik:. wrote:
    Skoda, ze nie wrzuciles wykresow z pomiarow z dluzszego okresu. Moznaby wtedy zobaczyc jaka jest stabilnosc pomiarow.
    Bo jeszcze nie ma zapisu długoterminowych danych, jak będą to pewnie uzupełnię.
  • #13
    kaczodp
    Level 14  
    Sareph wrote:
    khoam wrote:
    Rozumiem, że wypełnienie i częstotliwość tego sygnału jest stała? Czym był podyktowany wybór akurat tych parametrów?
    Tak, stała. Eksperymentalnie mi z tego wyszedł najszerszy zakres pomiarowy, w tym wypadku 2100 na 12bit ADC.

    Dioda D1 trochę przeszkadza w pomiarach. Taki sposób pomiaru stosowano w miernikach analogowych. Pojemność można mierzyć przez pomiar czasu impulsu a nie napięcia. Dioda nie jest potrzebna a zakres pomiarowy szerszy. STM32 może mierzyć sprzętowo czas więc program jest prosty.

    Dodano po 1 [minuty]:

    pier wrote:
    Symbole +12V na schemacie to chyba błąd?

    Długo już Używasz tych czujników? Pytam bo ja od kilku miesięcy testuje swoją wersję i zauważyłem że gleba wokół czujnika potrafi się luzować i fałszować wyniki.
    Zjawisko bardziej uciążliwe jeśli podlewamy kwiaty bezpośrednio do doniczki.

    Bo pomiar wilgotności gleby to nie taka prosta sprawa. Sam pomiar pojemności tu nie pomoże. Spróbuj zmierzyć pojemność wody, dodaj soli i wynik sie zmieni a wydawałoby się, że nie powinien. Dlatego dobry czujnik (sam czujnik) kosztuje ok 150zł.