Skocz do zawartości

Jak podłączyć wiele czujników analogowych?


Pomocna odpowiedź

Napisano

Mam pytanie. Chciałam zrobić taki projekt do sprawdzania wilgotności gleby w wielu różnych miejscach i ewentualnie innych parametrów. Większość czujników, które posiadam to czujniki analogowe. Czy do arduino mogę podpiąć tylko 6 czujników analogowych jak mam 6 pinów analogowych czy jest jakiś sposób żeby jednak wszystkie czujniki podłączyć?

A drugie pytanie to na co powinnam zwracać uwagę robiąc taki układ w arduino ? Tzn. czy np. za dużo czujników sprawi, że arduino nie będzie działać poprawnie bądż wcale?

Z góry dziękuję za odpowiedzi

Możesz też użyć specjalizowanych przetworników z wbudowanymi multiplekserami np: taki zależy też jakiej rozdzielczości oczekujesz ten co zaproponowałem ma 12bitów

  • Lubię! 1

czujników mam minimum 12. A arduino uno mam i mam na nim 6 pinów analogowych.
A czy mógłbyś powiedzieć za co odpowiada ta rozdzielczość? Bo jestem początkująca i w sumie nie bardzo wiem co przez to rozumieć

@Stokrotka

2^(rozdzielczość) - tyle różnych wartości może odczytać przetwornik z zakresu Vmax-Vmin, więc odczyt będzie się zmieniał co (Vmax-Vmin)/[2^rozdzielczość] np. dla napięcia Vmax 1.024V, Vmin = 0V, rozdzielczość = 10 wynik to:

(1.024 - 0)V/(2^10) = 1024mV/1024 = 1mV, czyli 100mV to 100, 1V to 1000, 500mV to 500 etc.

Im większa rozdzielczość tym więcej wartości mieści się w pełnym zakresie.

Tak jak pisze @H1M4W4R1 rozdzielczość to taka minimalna cegiełka jaką potrafi zmierzyć przetwornik. Ponieważ nie wiemy nic o twoich czujnikach trudno powiedzieć jakiej rozdzielczości potrzebujesz.

(edytowany)

Powiedziałbym że to zależy od tego gdzie dany czujnik ma pracować i faktycznie jeśli jest to jakiś czujnik wilgotności gleby, czy fotorezystor zwykle nie potrzeba wielkich rozdzielczości czy dokładności, i przeważnie dla takich zastosowań wystarczy te 8bitów (czyli 256 schodków). Że nie mamy informacji o twoich czujnikach miałem na myśli że nie było powiedziane nic o nich np: jaki model, co mierzy itd. Być może trochę niefortunnie zaproponowałem przetwornik 12bit ale nie szukałem zbytnio co na dzisiaj oferuje rynek. 

Edytowano przez _LM_
(edytowany)

No widzisz, dlatego warto już na początku napisać co, gdzie chcesz podłączyć. Czujniki 017,015,001,028 są "cyfrowe" co oznacza że mają wbudowane odpowiednie przetworniki a więc nie potrzebują wejść analogowych mikrokontrolera. Co do tych z botlandu ile to jest kilkanaście? Ile ich faktycznie chcesz użyć? Ja wiem że za chwilę napiszesz: 

53 minuty temu, Stokrotka napisał:

jestem początkująca

Ale policzyć swoje graty w szufladzie chyba łatwo? 🙂 Teraz ważne pytanie: te czujki wilgotności to gdzie będą pracowały? Pytam bo być może wystarczy wykorzystać to, co one oferują. W istocie mają na pokładzie zamontowane komparatory dzięki którym dostaniesz informacje w formie cyfrowej: sucho/wilgotno nie będzie trzeba wtedy kombinować z rozszerzaniem ilości wejść analogowych. 

Edytowano przez _LM_

Napisałam kilkanaście bo mimo, że w szufladzie mam ich 7 to w razie możliwości chciałam dokupić ich jeszcze więcej. (Robię ten projekt dla moich roślinek, więc wiadomo, że im więcej pomiarów tym dokładniejsze wyniki i precyzyjniejsza robota będzie wykonana ). A więc gdzie będą pracowały. Nie wiem czy rozumiem pytanie we właściwy sposób, ale tak:
będą pracowały teoretycznie na dworze, ale w szklarni więc nic im się nie powinno stać. Pewnie postaram się to włożyć może w jakąś obudowę, które się da i których nie zaburzy to działania. No a czujniki wilgotności gleby no to w glebie również w tej szklarni 😆

(edytowany)

Myślę że dane z tych czujników wilgotności nie będą precyzyjne - wynika to z specyfiki ich działania. Nie znam się na tym aby szczegółowo omówić temat. Także dla takich pomiarów spokojnie wystarczy rozdzielczość ośmiobitowa. Tu masz dwa wyjścia: albo zrobić tak jak sugerował @ethanak albo szukać zewnętrznych przetworników ac czyli czegoś co ja pokazałem.

Przydałoby ci się trochę podstaw bo tak przy zerowej wiedzy trudno będzie z marszu coś zbudować

Edytowano przez _LM_

Książki to nie wszystko, ważna jest też praktyka także powoli i do celu. Spróbuj zbudować ten układ na dostępnych 6 czy tam 8 wejściach analogowych i przedstaw tu na forum wyniki działania. W ten sposób szybciej uzyskasz zarówno podpowiedzi jak i doświadczenie. 

  • Lubię! 1

Po pierwsze: takie czujniki wilgotności gleby z reguły działają na zasadzie zmniejszenia oporności gdy gleba jest wilgotna. Poczytaj więc o: "prawo Ohma".

Po drugie: jeśli chcesz mierzyć oporność gleby, musisz przyłożyć jakieś napięcie, żeby popłynął prąd. Będziesz mierzyła ten prąd pośrednio - mierząc napięcie na oporniku, przez który ten prąd płynie. Poczytaj więc o: "dzielnik napięcia". Twój "czujnik" to po prostu jeden z oporników dzielnika.

Ponieważ chcesz mierzyć oporność gleby zrób najpierw próbę: wbij "czujnik" (czyli te dwa druty) w ziemię i ją zwilżaj. Jednocześnie mierz oporność między końcówkami Twojego czujnika. (Mam nadzieję, że masz multimetr? Niedrogi miernik możesz kupić nawet za kilknanaście złotych. Nie potrzebujesz nic lepszego niż taki...). Zorientujesz się, czego się w ogóle można spodziewać - będziesz mogła dobrać rezystor polaryzujący glebę. Ja bym w ogóle nie podawał napięcia non stop - końcówki czujnika skorodują, jak podasz napięcie cały czas. Możesz wykorzystać wyjście cyfrowe do sterowania napięciem "badającym" oporność. Badaj oporność raz na jakiś czas - to raczej nie jest jakiś szybkozmienny parametr.

Popróbuj najpierw na swoich 6-ciu wejściach analogowych. Ja to przejdziesz, to będziesz mogła myśleć o zwiększeniu ilości wejść.

Możesz natknąć się na problemy:

-zakłóceń przy dłuższych kablach dołączeniowych (możesz próbować ratować się robiąc "skrętkę"  taki kabel będzie mniej podatny na zakłócenia z sieci zasilającej, możesz też dołączyć Twoje wejście analogowe przez kondensator do masy - popróbuj dołączać coraz większe kondensatory - częstotliwość sieciowa 50Hz jest dość mała, więc kondensator powienien być raczej dość duży, żeby skutecznie zbijać zakłócenia)

- elektryczność statyczna, różne prądy błądzące (jak wbijesz te czujniki daleko od siebie w szklarni, to kto wie, czy gdzieś jakiś prąd nie płynie - choćby gdy się włączy światło...), itp - warto by Twoje Arduino zabezpieczyć - służą do tego "transile" (swego rodzaju diody, które nie pozwalają na "zwiększenie napięcia ponad wytrzymałość wyprowadzeń scalaka").

To są podstawy.

A robienie "większej ilości wejść" możesz załatwić mierząc jednym wejściem analogowym kilka wbitych "czujników" - napięcie polaryzujące każdy czujnik włączasz innym wyjściem cyfrowym. Jedyne co, to musisz między "wyjściem" czujnika a Twoim wejściem analogowym włączyć diodę, żeby się wzajemnie nie zakłócały. Dokładność pomiaru przy "bardzo wilgotnej glebie" spadnie, ale to da się nieco skompensować dobierając odpowiednio rezystor polaryzujący glebę.

Takie coś da się zrobić nie wydając więcej niż dosłownie kilka złotych. Niekoniecznie trzeba od razu przetwornik czy nawet klucz analogowy/multiplekser.

  • Lubię! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...