Elektroda.pl
Elektroda.pl
X
Computer ControlsComputer Controls
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

NodeMCU zasilanie przez piny

21 Lut 2019 17:16 714 8
  • Poziom 9  
    Robię termometr - układ wybudza się co 3 minuty, odczytuje temperaturę z czujnika i dane wysyła po WiFi do bazy danych po czym wykonuje deep sleep na 3 minuty. Całość ma być energooszczędna, bo będzie zasilana z baterii.
    Pomijam fakt, że wszędzie, gdzie czytałem specyfikację NodeMCU widniało, że zasilamy układ przez piny napięciem 3,3V co jest nieprawdą - termometr wariował do czasu kiedy to podpiąłem całość pod zasilanie 5V i problemy zniknęły.
    Pytanie zasadnicze: zasilam to z akumulatorka 18650 3,7 V. Więc muszę podnieść napięcie do 5 V. Czy przetwornica napięcia będzie dużo prądu zabierać gdy NodeMCU jest w stanie deep sleep? A może to jakoś zrobić przy pomocy diody Zenera? Układ jak wysyła dane przez WiFi to pobiera ok. 250mA. Jakie rozwiązanie będzie najlepsze? Wolę pozostać przy jednym akumulatorku z racji rozmiarów - brak miejsca na drugi akumulator.
  • Computer ControlsComputer Controls
  • Poziom 31  
    To co przeczytałeś było prawdą, ESP8266 zasilasz napięciem 3.3V, ale chodzi o chip, a nie płytkę NodeMCU. Ta ma stabilizatory zamieniające 5V z USB (czy Vin) na 3.3V i jak do niej podłaczysz 3.3V to oczywiście uzyskasz 2,5V i wszystko będzie wariować. Jak chcesz to usypiać i używać baterii to NodeMCU nie jest dobrym pomysłem, nawet jak go uśpisz w tryb powerdown i tak prąd będą pobierać wszystkie podzespoły na płytce, nawet 50mA. Do tego jeszcze ta przetwornica 3>5V i akumulator 18650 2000mA zajeździsz po 20h. Kup sobie sam chip ESP12E 12zł, do tego płytka za 2zł (Allegro adapter ESP8266), dodaj kondensator, zasil to z 4.2V z jakimś stabilizatorem LDO (na swoją odpowiedzialność możesz bezpośrednio, płytka ma miejsce na stabilizator LDO, ale ja wolę bez i wszystkie chipy ciągle żyją), jak napięcie mierzone wewnątrz ESP spadnie poniżej 3V uśpij układ na zawsze, może być z jakimś mailem by wymienić aku. Takie układy z używanym ogniwem 18650 po laptopie wybudzane co 15minut potrafią działać kilka miesięcy.
  • Poziom 9  
    No nie do końca mogę się zgodzić. Tzn. jak robię deep sleep to faktycznie całe NodeMCU idzie spać poza zegarem czasu rzeczywistego. Termometr odpaliłem zasilając go powerbankiem. Działało przez 3 dni, a mierząc, wprawdzie made in China, przyrządem ilość prądu potrzebnego do naładowania powerbanka na full wyszło, że zeżarło przez te 3 dni jakieś niecałe 70mAh. Tak więc na dobrym akumulatorku 18650 ma szanse podziałać kilka miesięcy. Tym bardziej, że usypianie NdeMCU było tylko na 25 sekund, bo po pół minucie powerbank sam się wyłączał :)
    Tak więc zaryzykuję konstrukcję na NodeMCU - zresztą mam akurat 3 takie egzemplarze to chcę wykorzystać. Stawiam więc pytanie raz jeszcze: jak zrobić z 3,7V napięcie 5V w tym przypadku? Czy przetwornica dużo zjada? Ma podobno sprawność na poziomie 96%. Może jednak prostsze jest lepsze? Może dioda Zenera wystarczy?
  • Computer ControlsComputer Controls
  • Specjalista - ESP32, ESP8266
    swedzik napisał:
    Stawiam więc pytanie raz jeszcze: jak zrobić z 3,7V napięcie 5V w tym przypadku? Czy przetwornica dużo zjada? Ma podobno sprawność na poziomie 96%. Może jednak prostsze jest lepsze? Może dioda Zenera wystarczy?

    Dioda Zenera na pewno nie wystarczy, bo jeszcze nie wynaleziono takiej, która podwyższa napięcie ;) Jeżeli jestem w błędzie, to niech mnie ktoś poprawi.
    Tak, przetwornice mają w tej chwili taką sprawność, powiedzmy w praktyce 90-95%, ale trzeba wybrać taką, która "zjada" najmniej prądu na jałowym biegu, jeżeli aż tak bardzo chcesz wydłużyć działanie układu. Ważna jest również maksymalna obciążalność dla takiej przetwornicy. U Chińczyka są dość popularne (ilość sprzedanych) przetwornice step-up SX1308, jak na poniższym obrazku. Można je dokładnie doregulować, aby dawały 5V na wyjściu. Maksymalna jej obciążalność to 2A (deklarowana). Jest tania, jak barszcz, więc można nabyć kilka na zapas ;)

    NodeMCU zasilanie przez piny

    swedzik napisał:
    No nie do końca mogę się zgodzić. Tzn. jak robię deep sleep to faktycznie całe NodeMCU idzie spać poza zegarem czasu rzeczywistego.

    Tu masz częściowo rację, ale pamiętaj że jest tam jeszcze układ CH340G, który jest cały czas zasilany i nawet kiedy nie pracuje, to pewnie jakiś prąd pobiera przy podłączonym 5V.
  • Poziom 31  
    DeepSleep nie usypia konwertera USB, stabilizatorów i led (chyba że nie masz power led). To bardzo prosto możesz sprawdzić, bierzesz rezystor 1%, 1R;10R;100R (żeby łatwo przeliczać na ampery) i przez nie po kolei zasilasz NODEMCU podczas normalnej pracy i w trybie power down (deep sleep). Spadek napięcia na rezystorach możesz mierzyć nawet miernikiem, ale lepszy byłby oscyloskop. Podziel się wrażeniami. To czy on podziała 8h czy 72h to zależy od faktycznej pojemności, jakie są kondensatory i ledy na płytce NodeMCU, podałem dane z pamięci. Pamiętam, że czystą Atmegę328P można uśpić z poborem do 100nA i po wybudzeniu działa od miejsca zatrzymania programu, ESP8266 jest w tym zakresie żałosny, czysty chip ESP12E w deepsleep wymagającym resetu do wznowienia pracy i tak pobiera 20uA i to zależy również od napięcia zasilania, przy 4.2V testowanym przeze mnie było to znacznie więcej i spadało do 30uA poniżej 3V. Tu możesz popatrzeć jak to wygląda https://www.youtube.com/watch?v=IYuYTfO6iOs , w innym filmie Andreas pokazuje też przebieg na oscyloskopie. Na Androida jest fajny programik Elektrodroid (można to wyliczyć w excelu oczywiście), podajesz np. 80mA/5s+60uA przez 175s, aku 2000mA i wyjdzie czas działania 876h, zamienisz na co 15minut i czas zmienia się na 4000h. Ale zostaw 1 głupią led na NodeMCU pobierającą 3mA i czas spada do 583h, dodaj konwerter UART-USB i robi się 60h. Gdybym musiał to zrobić na NodeMCU to chyba bym dodał Attiny13 z WDT do wybudzania (z 500nA) i odłączał całkowicie całe NODEMCU razem z tą przetwornicą na czas uśpienia. Mi realnie działa do 4 miesięcy na odzyskanych ogniwach, 1szt. kiedyś tam 2x2000mA.
  • Poziom 32  
    Jak kolega @kaczakat i @khoam napisali, jeżeli tego nie zrobisz na czystym esp to nic z tego nie wyjdzie, Nodemcu (board z esp na pokładzie) do deepsleep sie nie nadaje z uwagi na dodatkowe peryferia tj. Ch340, stabilizator 5->3.3V i inne jak choćby led. Po prostu ńie uzyskasz efektu zadowalającego w postaci długiego czasy pracy z uwagi na mimo wszystko spory pobór prądu przez te peryferia.

    Pozdr
  • Poziom 31  
    Wypowiedź
    swedzik napisał:
    Może dioda Zenera wystarczy?

    świadczy o tym, ze kompletnie się na tym nie znasz, potwierdza to
    swedzik napisał:
    Czy przetwornica dużo zjada? Ma podobno sprawność na poziomie 96%

    Co z tego, że 96% skoro na biegu jałowym będzie to np 500uA? Policz ile podziała akumulator, proponuje taki od Jelcza.

    Nie kombinuj jak się nie znasz tylko zrób jak napisano, sam ESP, zasilany bezpośrednio z akumulatora/baterii. Tylko takie rozwiązanie zapewni długa prace. Jak chcesz jeszcze bardziej zmniejszyć pobór prądu w uśpieniu, to nie usypiaj ESP tylko odłączaj mu zasilanie, jakimś dodatkowym uC. Taki AVR czy ARM, w uśpieniu, pobiera max kilka uA a nie 20 jak ESP.
  • Specjalista - ESP32, ESP8266
    LChucki napisał:
    Jak chcesz jeszcze bardziej zmniejszyć pobór prądu w uśpieniu, to nie usypiaj ESP tylko odłączaj mu zasilanie, jakimś dodatkowym uC.

    Są w necie takie patenty na TPL5111 - pobiera 35nA.
  • Poziom 31  
    Tak, TPL5111 to fajne chipy, znalazłem je np. w Adafruit czy Botland, ale raz że cena płytki z nim to 3xESP, dwa że pobór prądu tyle co gołego ESP - 20uA. Sam goły chip to 1,4$ u Friendów.
    Sprawdziłem swoje NodeMCU w trybie uśpienia, V2 z chipem CP2102 pobiera ponad 10mA, niezależnie czy zasilanie jest podane na pin 3.3V czy 4-6V na Vin, różnica jest niezauważalna dla chińskiego zasilacza. W V3 i WEMOS z CH340 jest lepiej, już musiałem mierzyć spadek napięcia na R100, ale to i tak jakieś 2.4mA - około 1000x więcej niż samego chipa ESP12E ze stabilizatorem LDO HT7333 zasilanego z aku 4.2V. Pewnie masz coś takiego, skoro mój zasilacz nic nie wykrywał to pewnie i power bank się wyłączał. Oczywiście na płytkach nie było żadnych led sygnalizujących podłączenie do zasilania. No i przy okazji sprawdziłem, że bez stabilizatora pobór z ogniwa 3,9V gołego ESP8266 jest 300uA i spada wraz z napięciem, a że większość pojemności jest powyżej 3.3V bardziej więc się opłaca dodać ten LDO lub użyć ogniwa FEPO4. Jeśli wystarczy ze 100h działania na aku 2000mA i masz V3 to OK, ale raczej 70mA nie wystarczyłoby na dłużej niż dzień, może chodziło Ci o 700mA, 7000mA? A dokładniej pracując w cyklu 5s/80mA+25s 2.5mA zużyłby w ciągu 72h ponad 1111mAh+przetwornica.