Sadržaj:
- Korak 1: Smanjivanje napona napajanja pomoću LiPo baterije
- Korak 2: Smanjite CPU sat
- Korak 3: Uklonite ugrađenu LED diodu za napajanje i regulator snage
- Korak 4: Odspojite USB D-Pullup otpornik (označen 152) s 5 V (VCC) i spojite ga na USB V+
- Korak 5: Upotrijebite stanje mirovanja umjesto odgode ()
- Korak 6: Izmijenite osigurače
- Korak 7: Dodatne informacije
Video: Smanjenje potrošnje energije baterije za Digispark ATtiny85: 7 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:32
ili: Pokretanje Arduina s novčanicom od 2032 dvije godine.
Koristeći vašu Digispark Arduino ploču iz kutije s programom Arduino, ona crpi 20 mA na 5 volti.
S 5 voltnom baterijom od 2000 mAh radit će samo 4 dana.
Korak 1: Smanjivanje napona napajanja pomoću LiPo baterije
Korištenje LiPo baterije s 3,7 V za napajanje vaša Digispark ploča troši samo 13 mA.
Uz bateriju od 2000 mAh radit će 6 dana.
Korak 2: Smanjite CPU sat
Ako ne koristite USB vezu, tešku matematiku ili brzo prozivanje u svom programu, smanjite brzinu takta. Npr. infracrvena biblioteka za prijem podataka IRMP radi dobro na 8 MHz.
Na 1 MHz vaš Digispark crpi 6 mA. S baterijom od 2000 mAh radit će 14 dana.
Korak 3: Uklonite ugrađenu LED diodu za napajanje i regulator snage
Onemogućite LED za napajanje tako što ćete nožem prekinuti bakrenu žicu koja LED diodu za napajanje povezuje s diodom ili ukloniti / onemogućiti otpornik 102.
Budući da sada koristite LiPo bateriju, možete ukloniti i ugrađeni IC regulator regulatora snage. Najprije podignite vanjske igle uz pomoć lemilice i igle. Zatim zalemite veliki priključak i uklonite regulator. Za male regulatore upotrijebite mnogo lema i zagrijte sve 3 igle zajedno, a zatim ih uklonite.
Na 1 MHz i 3,8 volta vaš Digispark sada crpi 4,3 mA. S baterijom od 2000 mAh radit će 19 dana.
Korak 4: Odspojite USB D-Pullup otpornik (označen 152) s 5 V (VCC) i spojite ga na USB V+
Ova je izmjena kompatibilna sa svim1.x verzijama mikronuklearnog pokretača. Ako već imate novi 2.x bootloader na ploči, morate nadograditi na jednu verziju 2.5 s "activePullup" u imenu. Najlakši način za to je instaliranje novog paketa digispark ploče i snimanje pokretačkog programa s preporučenom (!!! ne zadanom ili agresivnom !!!) verzijom.
Prekinite bakrenu žicu na strani otpornika koja pokazuje na ATtiny. To onemogućuje USB sučelje i zauzvrat mogućnost programiranja ploče Digispark putem USB -a. Da biste ga ponovno omogućili, ali ipak uštedjeli energiju, priključite otpornik (označen 152) izravno na USB V+ koji je lako dostupan na vanjskoj strani šokirane diode. Dioda i njene ispravne strane mogu se pronaći pomoću ispitivača kontinuiteta. Jedna strana ove diode spojena je na pin 8 ATtiny (VCC) i Digispark 5V. Druga strana je spojena na USB V+. Sada se USB pullup otpornik aktivira samo ako je ploča Digispark spojena na USB, npr. tijekom programiranja.
Posljednja 2 koraka također su ovdje dokumentirana.
Na 1 MHz i 3,8 volta vaš Digispark sada troši 3 mA. Uz bateriju od 2000 mAh radit će 28 dana.
Korak 5: Upotrijebite stanje mirovanja umjesto odgode ()
Umjesto dugih odgoda možete koristiti spavanje CPU -a za uštedu energije. Spavanje može trajati od 15 milisekundi do 8 sekundi u koracima od 15, 30, 60, 120, 250, 500 milisekundi i 1, 2, 4, 8 sekundi.
Budući da je vrijeme pokretanja iz stanja mirovanja 65 milisekundi s tvorničkim postavkama osigurača digispark, samo se kašnjenja veća od 80 ms mogu nadomjestiti.
Tijekom spavanja vaš Digispark troši 27 µA. S ćelijom s gumbom od 200 mAh 2032 spavat će 10 mjeseci.
Da budemo točni, Digispark se mora probuditi barem svakih 8 sekundi, raditi najmanje 65 milisekundi i vući struju od 2 mA. To dovodi do prosječne struje od 42 µA i 6 mjeseci. U ovom scenariju nema gotovo nikakve razlike ako vaš program radi 10 milisekundi (svakih 8 sekundi).
Kôd za korištenje sna je:
#include #include volatile uint16_t sNumberOfSleeps = 0; vanjski hlapivi nepotpisani dugi millis_timer_millis; void setup () {sleep_enable (); set_sleep_mode (SLEEP_MODE_PWR_DOWN); // najdublji način mirovanja…} void loop () {… sleepWithWatchdog (WDTO_250MS, istina); // spavanje 250 ms… sleepWithWatchdog (WDTO_2S, istina); // spavanje 2 s…}/ * * aWatchdogPrescaler može biti 0 (15 ms) do 3 (120 ms), 4 (250 ms) do 9 (8000 ms) */ uint16_t computeSleepMillis (uint8_t aWatchdogPrescaler) {uint16_t tResultMillis = 8000; for (uint8_t i = 0; i sprema 200 uA // koristi wdt_enable () budući da obrađuje da je bit WDP3 u bitu 5 registra WDTCR wdt_enable (aWatchdogPrescaler); WDTCR | = _BV (WDIE) | _BV (WDIF); // Stražarski prekid omogućavanje + poništavanje zastavice prekida -> treba ISR (WDT_vect) sei (); // Omogućivanje prekida sleep_cpu (); // Prekid stražara probudit će nas iz sna wdt_disable (); // Budući da će sljedeći prekid u protivnom dovesti do resetiranja, budući da wdt_enable () postavlja WDE / Watchdog Reset sustava Omogući ADCSRA | = ADEN; / * * Budući da sat vremena može biti onemogućen, podesite milise samo ako nije u stanju mirovanja (SM2 … 0 bita su 000) * / ako (aAdjustMillis && (MCUCR & ((_BV (SM1) | _BV (SM0))))! = 0) {millis_timer_millis += computeSleepMillis (aWatchdogPrescaler);}} / * * Ovaj prekid budi CPU iz stanja spavanja * / ISR (WDT_vect) {sNumberOfSleeps ++;}
Korak 6: Izmijenite osigurače
22 mA od 27 mA dobiva BOD (BrownOutDetection/detekcija podnapona). BPK se može onemogućiti samo ponovnim programiranjem osigurača, što se može učiniti samo s ISP programatorom. Pomoću ove skripte možete smanjiti struju na 5,5 µA i također smanjiti vrijeme pokretanja iz stanja mirovanja na 4 milisekunde.
5 od preostalih 5,5 µA izvlači aktivni brojač nadzornika. Ako za buđenje možete koristiti vanjska resetiranja, trenutni potrošač može se spustiti na 0,3 µA kako je navedeno u podatkovnoj tablici.
Ako ne možete doseći tu vrijednost, razlog može biti taj što je obrnuta struja schottky diode između VCC -a i pullapa previsoka. Imajte na umu da otpornik od 12 MOhm također troši 0,3 µA na 3,7 volti.
To rezultira prosječnom potrošnjom struje od 9 µA (2,5 godine s ćelijom s gumbom od 200 mAh 2032) ako npr. obrađujte podatke svakih 8 sekundi tijekom 3 milisekunde kao ovdje.
Korak 7: Dodatne informacije
Trenutni crtež Digispark ploče.
Projektirajte prema ovim uputama.
Preporučeni:
Uradi sam Arduino solarni tracker (za smanjenje globalnog zatopljenja): 3 koraka
Uradi sam Arduino solarni tragač (za smanjenje globalnog zatopljenja): Pozdrav svima, u ovom tutorialu pokazat ću vam kako napraviti solarni tracker pomoću arduino mikrokontrolera. U današnjem svijetu patimo od brojnih zabrinjavajućih pitanja. Jedan od njih su klimatske promjene i globalno zatopljenje. Potreba za
Smanjenje potrošnje energije releja - Zadržavanje u odnosu na skupnu struju: 3 koraka
Smanjenje potrošnje energije releja - Zadržavanje u odnosu na skupnu struju: Većini releja za početak je potrebna veća struja nego što je potrebno za držanje releja nakon zatvaranja kontakata. Struja potrebna za držanje releja (struja zadržavanja) može biti znatno manja od početne struje potrebne za aktiviranje
Kako ispravno mjeriti potrošnju energije bežičnih komunikacijskih modula u doba niske potrošnje energije?: 6 koraka
Kako ispravno mjeriti potrošnju energije bežičnih komunikacijskih modula u doba niske potrošnje energije ?: Mala potrošnja energije iznimno je važan koncept u Internetu stvari. Većina IoT čvorova moraju se napajati baterijama. Samo ispravnim mjerenjem potrošnje energije bežičnog modula možemo točno procijeniti koliko sam baterije napunila
EarBud slušalice za smanjenje buke: 7 koraka
EarBud slušalice za smanjenje buke: ušni jastučići za smanjenje buke. Mnoge prednosti u odnosu na (200 do 300 USD) Bose: jeftinije (novčići na dolar) i manje, omogućuju mobilnost, nisu potrebne baterije. Koristeći postojeće (JVC) slušalice za uklanjanje buke, upotrijebite Flents (ili druge proizvođače) spužvaste
Izgradite analogni mjerač potrošnje električne energije: 8 koraka (sa slikama)
Izgradite analogni mjerač potrošnje električne energije: Koristio sam Kill A Watt (http://www.p3international.com/products/special/P4400/P4400-CE.html) električno brojilo neko vrijeme i ja sam odlučio izgraditi analogni. Ovaj je projekt postao jednostavan, s jednim panelnim ampermetrom