Ciao a tutti
dal momento che abbiamo finalmente il Pro Mini nella nostra gamma della nostra gamma, vorrei mostrare brevemente modi per ridurre il consumo attuale del Pro Mini al fine di consentire, ad esempio, un funzionamento lungo della batteria.
Al fine di risparmiare quanta più energia possibile, non ci sono solo una libreria creata per questo scopo, ma anche cambiamenti lato hardware che possono ridurre ulteriormente il consumo. Quanto lontano si desidera ridurre il consumo di energia è a voi.
Il modo più semplice e veloce per ridurre il consumo di energia è Libreria disponibile Git, anche nell'amministratore della bacheca, ma non è aggiornato. Dal momento che il post di oggi è rivolto più agli utenti avanzati, salterò la parte dell'installazione della biblioteca oggi. L'esempio "powerDownWakePeriodic.ino" contenuto nella libreria è abbastanza auto-esplicativo:
#include "LowPower.h" Vuoto Installazione() { Non è necessaria alcuna configurazione per questa libreria } Vuoto Ciclo() { Immettere lo stato di spegnimenti per 8 s con ADC e modulo BOD disabilitato Bassa potenza.Powerdown(SLEEP_8S, ADC_OFF, BOD_OFF); Fai qualcosa qui Esempio: sensore di lettura, registrazione dei dati, trasmissione dei dati. }
La durata massima di LowPower.powerDown è di 8 secondi. È possibile utilizzare un interrupt al posto del timer per la riattivazione. Inoltre, la libreria offre diverse opzioni della modalità operativa, ad esempio anche una modalità IDLE o STANDBY, uno sguardo al LowPower.cpp aiuta qui.
Con un semplice ciclo for, questo intervallo di tempo può essere ripetuto come desiderato:
#include "LowPower.h" Const Unsigned Intervallo = 600; Vuoto Installazione() { } Vuoto Ciclo() { Int sleepcycles = Intervallo / 8; Per (Int Ho.=0; Ho.<sleepcycles; Ho.++) { Bassa potenza.Powerdown(SLEEP_8S, ADC_OFF, BOD_OFF); } }
Il consumo di energia in modalità operativa normale è di circa 20 mA, in sonno profondo questo è ridotto a circa 4 mA quando viene utilizzato per fornire il perno RAW.
Per evitare che i sensori collegati consumino energia aggiuntiva, possono anche essere forniti tramite un GPIO digitale invece del solito pin 5V. Così, l'alimentazione del sensore può essere controllata tramite un semplice HIGH/LOW. Affinché questo funzioni in modo affidabile, è necessario installare un delay() corrispondente a seconda del sensore.
Se vogliamo ridurre ulteriormente il consumo di energia, sono necessari cambiamenti sul lato hardware, ma attenzione: In caso di modifiche lato hardware, la garanzia scade.
Al fine di ridurre i restanti consumatori (rosso), possiamo rimuovere sia il LED operativo (giallo) che il regolatore di tensione fissa (verde) dalla scheda. Il consumatore più grande rappresenta il LED operativo.
Questo non è necessario per il funzionamento e può essere saldato con una certa abilità.
Nella foto qui sopra: Led saldato
Questo è esattamente il caso con il regolatore a tensione fissa sulla scheda. Se 5V è disponibile, questo è superfluo e possiamo tranquillamente rimuoverlo, proprio come il LED.
Nella foto sopra: Led saldato e regolatore a tensione fissa saldato
Poiché il perno RAW è collegato direttamente al regolatore di tensione fissa, non può più essere utilizzato dopo la saldatura del componente.
Se il consumo di energia è ancora troppo elevato, si consiglia di passare alla variante 3.3V.
Molto successo nella ri-creazione e fino al prossimo contributo :)
3 commenti
Ulrich Engel
Hallo, im Rahmen eines LoRa Wetterprojektes messe ich Wetterdaten eines BME280 und übertrage diese per LoRa vom Sender zum Receiver.
Aktuell messe ich alle 8 Sekunden und zwischen zwei Messzeiten wird der ESP32 LoRa “schlafen” gelegt:
LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF);
Meine Frage:
Kann man den “Schlafzyklus” auf 30 Sekunden verlängern, um den Stromverbrauch des Senders (Akku) zu senken?
Viele Grüße und Danke für eine Antwort.
DD1UZ
Wie hoch ist der Stromverbrauch ohne LED bei 3V / 5V?
Hat jemand Erfahrungen?
Andreas Engelmann
Um den Spannungsregler zu entfernen einfach die Beinchen mit einem schlanken Seitenschneider durchkneifen. Oft ist es auch leichter den Vorwiderstand der LED zu entfernen als die LED selbst. Wer die Platine noch sauber haben möchte kann ja anschließend mit dem Lötkolben die Reste vorsichtig entfernen.