• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Analogowy czujnik wilgotnosci gleby
#1
Mam problem z czujnikiem wilgotnosci gleby a dokladnie to nie wiem co mam na wyjsciu. Podlaczylem czujnik do wejscia analogowego w arduino i odpalilem przykladowy program. Program wyswietlal komunikat czy ziemia jest wilgotna czy sucha a zaleznosci od ad_value wiec ustawilem zeby wyswietlal ad_value w szeregowym monitorze i pokazuje liczby od 0 (nie wbity w ziemie) do jakichs wartosci rzedu kilkaset (w podlanej ziemii ponad 500). Czytalem user Manual i nic tam nie ma jak przeskalowac te wartosci.

Czujnik mam taki:
https://botland.com.pl/czujniki-wilgotno...ogowy.html
W opisie czujnika jest przykladowy program ktorego uzylem i user Manual.
 
Odpowiedź
#2
Wydaje mi się, że liniowo. Jeśli suchy, wiszący w powietrzu czujnik daje Ci odczyt 0, włóż go jeszcze do wody i wtedy sprawdź pomiar. Wtedy przeskaluj wynik funkcją map według wzoru:

int wilgotnosc = map(0,x,0,100);
gdzie x będzie wartością zanurzenia czujnika w wodzie.

Map działa tak, że możesz przekształcić jeden zakres w inny. Pierwsze dwie liczby w nawiasie to zakres, jaki uzyskujesz (np. od 0 do 256) z czujnika, natomiast drugie - zakres przelicznika. Dla przykładu, jeśli uzyskujesz pomiary o wartościach 10-150, a chcesz mieć wyniki w postaci 1-10, musisz wpisać: map(10,150,1,10);
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości