Jak korzystać z czujników wyjściowych 3,3 V i 5 V w Arduino?

13

Aby uzyskać pełną rozdzielczość z Arduino ADC przy użyciu czujników 3,3 V, musisz zrobić dwie rzeczy.

  1. Podłączyć zasilacz 3,3 V do styku AREF.
  2. Wywołaj analogReference (EXTERNAL) w kodzie.

Ale co jeśli muszę mieszać czujniki wyjściowe 3,3 V i 5 V. Jakie są moje opcje?

tuupola
źródło

Odpowiedzi:

10

Prostym rozwiązaniem jest zastosowanie dzielnika rezystora (stosunek około 1: 1,94) i zmniejszenie sygnału 5 V do wartości szczytowej 3,3 V. W ten sposób zachowałbyś pełną rozdzielczość bez konieczności przełączania odniesienia. Odpowiednim dzielnikiem byłoby użycie 18k od czujnika do wejścia analogowego i 33k od wejścia analogowego do ziemi. To przełożyłoby wejście 5 V na wejście 3,23 V. Zastosowanie rezystorów o wyższej precyzji zbliżyłoby się w razie potrzeby do 3,3 V. Musisz upewnić się, że czujnik może dostarczyć prąd potrzebny dla danej wartości - w tym przypadku około 0,1 mA. Rezystancja wejściowa wejść analogowych ATMega wynosi około 100 M omów, więc możesz znacznie zwiększyć te wartości (zmniejszając obciążenie czujnika), zanim zaczniesz martwić się efektem rezystancji wejściowej.

JohnC
źródło
3

Dwie rzeczy, żyj ze zmniejszoną rozdzielczością z czujników 3,3 V i utrzymuj wartość odniesienia na 5 V. To, co zwykle robię i jest wystarczająco dobre.

Możesz także przełączać analogReference w locie podczas odczytywania każdego odpowiedniego czujnika. Pamiętam, jak czytałem o mieszaniu zewnętrznych odniesień i wewnętrznych odniesień i posiadania szeregowego rezystora ograniczającego na twoim AREF, więc uważnie przeczytaj tę część odniesienia Arduino.

ka1kjz
źródło
2

Możesz także rozważyć znalezienie nowszych wersji czujników. Możesz być w stanie uzyskać czujniki, które działają z tymi samymi limitami napięcia, lub możesz odkryć, że dostępne są nowsze wersje czujników, które zapewnią Ci cyfrowe wyjścia i mogą być odpytywane za pomocą I2C lub innych prostych protokołów komunikacji szeregowej. Oczywiście wymagałoby to zakupu nowego układu, ale nie są one strasznie drogie i nie tylko wyeliminują problem, ale zapewnią projektowi większą precyzję, ponieważ nie musisz się martwić hałasem w twoim obwodzie.

John C i szynka nie wymagają przeprojektowania całego projektu, aby pasowały do ​​nowych chipsów, i zapewniają doskonałe, proste rozwiązania. Z mojego doświadczenia wynika, że ​​korzystałem z czujnika 3v3 z zasilaniem i napięciem 5v i miałem większe problemy z hałasem niż z utratą rozdzielczości w przypadkowych projektach. Jest to najłatwiejsze wyjście, ale wymaga odrobiny matematyki i odpowiednio głosowałem za postem ka1kjz (sprawdź arkusze referencyjne).

Jeśli chodzi o rozwiązanie dzielnika napięcia, o ile korzystasz z precyzyjniejszych rezystorów, zyskujesz przewagę, że wszystkie pomiary znajdują się w tym samym zakresie napięcia i zyskujesz korzyść z korekcji ratiometrycznej dzięki zastosowaniu AREF do śledzenia dowolnych wahań napięcia. W praktyce jednak odkryłem, że hałas i brak technik kalibracyjnych w moich projektach spowodowały więcej błędów niż niewielkie tętnienia napięcia lub 10% rezystorów, które mogłyby zasadnie spowodować. Z tego powodu głosowałem również za rozwiązaniem JohnC, ponieważ omawia to wszystko bardziej szczegółowo.

Lou
źródło