Forum: Mikrocontroller und Digitale Elektronik AVR Stromsparmodi und Linearregler 7805


von kalle p. (Gast)


Lesenswert?

Hallo,

bringen eigentlich die AVR Stromspar-Modi irgendwas, wenn man den Atmega 
mit einem 7805 Versorgt? Der verbrennt doch Energie auch wenn der Atmega 
sich im Idle befindet oder nicht?

Was wären effiziente Alternativen, wenn es aufs Stromsparen ankommt? Der 
µC soll die meiste Zeit schlafen und nur per Interrupt durch eine RTC 
oder Knopfdruck aufwachen.

Beste Grüße

k

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

kalle p. schrieb:
> Der verbrennt doch Energie auch wenn der Atmega
> sich im Idle befindet oder nicht?

Allerdings. Da wir aber nichts von deinen möglichen 
Stromversorgungskonzepten wissen, können wir da auch nichts besseres 
vorschlagen. Ist das Batterie/Akkubetrieb? Solarzelle/Windrad? 
Hamsterrad/Gezeitenkraftwerk?

von Spess53 (Gast)


Lesenswert?

Hi

>bringen eigentlich die AVR Stromspar-Modi irgendwas, wenn man den Atmega
>mit einem 7805 Versorgt?

Und wo kommt der Strom für den 7805 her?

MfG Spess

von Frank K. (fchk)


Lesenswert?

kalle p. schrieb:

> bringen eigentlich die AVR Stromspar-Modi irgendwas, wenn man den Atmega
> mit einem 7805 Versorgt? Der verbrennt doch Energie auch wenn der Atmega
> sich im Idle befindet oder nicht?

Ja.

> Was wären effiziente Alternativen, wenn es aufs Stromsparen ankommt? Der
> µC soll die meiste Zeit schlafen und nur per Interrupt durch eine RTC
> oder Knopfdruck aufwachen.

1. LDO einsetzen anstelle eines normalen Linearreglers
2. passende Eingangsspannung für den LDO wählen
3. Betriebsspannung des Controllers runter, d.h. keine 5V-Komponenten, 
alles auf 3.3V maximal, besser 2.7 oder 1.8V. Die Verlustleistung steigt 
quadratisch mit der Spannung.
4. modernen AVR einsetzen. Also keinen Uralt Mega32, sondern einen 
324PA.

fchk

von Frank M. (frank_m35)


Lesenswert?

Falls er Batteriebetrieben ist und du extrem Stromsparen willst da er 
bspw. nur von einer 3V Lithium Knopfzelle betrieben wird:
http://www.ti.com/general/docs/lit/getliterature.tsp?baseLiteratureNumber=slvsac3

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Nehme besser anstatt den 7805 einen MCP1702 (Microchip). Allerdings kann 
der nur 13,2V am Eingang maximal. Dafür verbrät der ultrawenig Strom im 
Standby von deinem AVR.

von kalle p. (Gast)


Lesenswert?

Matthias Sch. schrieb:
> kalle p. schrieb:
>> Der verbrennt doch Energie auch wenn der Atmega
>> sich im Idle befindet oder nicht?
>
> Allerdings. Da wir aber nichts von deinen möglichen
> Stromversorgungskonzepten wissen, können wir da auch nichts besseres
> vorschlagen. Ist das Batterie/Akkubetrieb? Solarzelle/Windrad?
> Hamsterrad/Gezeitenkraftwerk?

Sorry, hab wohl etwas zu allgemein und ungenau formuliert.

Also es soll eine Uhr/Wecker sein, batteriebetrieben (welche genau, noch 
unklar, womöglich 5 x AAA oder 9V Block).

Die RTC ist eine PCF2129AT von NXP (mit Knopfzelle als Fallback), dazu 
ein 2x8 Zeilen-Display ohne Hintergrundbeleuchtung (C0802 von Pollin), 
aber mit Leds, mit denen ich das LCD per Knopfdruck anstrahlen kann.

Hatte schon überlegt, den µC auf 3,3V zu fahren, mit 3xAAA und einem 
Lowdrop-Regler, den ich noch hier hätte TS1117. Aber leider braucht das 
LCD 5V und ich weiß auch nicht, ob ich mit 3,3V und PWM einen Summer 
halbwegs laut getrieben bekomme.

Ganz ohne Regler hatte ich auch schon überlegt (4 x AAA). Schätze aber 
mal, dass das blöd ist, wenn die Batterien schwächer werden.

von kalle p. (Gast)


Lesenswert?

Markus Müller schrieb:
> Nehme besser anstatt den 7805 einen MCP1702 (Microchip). Allerdings kann
> der nur 13,2V am Eingang maximal. Dafür verbrät der ultrawenig Strom im
> Standby von deinem AVR.

Danke für den Tipp! Bei 250 mA bin ich mir aber nicht so sicher, dass 
der nicht unterdimensioniert ist: µC + LCD + Leds + Summer ?

von kalle p. (Gast)


Lesenswert?

Frank K. schrieb:
> kalle p. schrieb:
>
>> bringen eigentlich die AVR Stromspar-Modi irgendwas, wenn man den Atmega
>> mit einem 7805 Versorgt? Der verbrennt doch Energie auch wenn der Atmega
>> sich im Idle befindet oder nicht?
>
> Ja.
>
>> Was wären effiziente Alternativen, wenn es aufs Stromsparen ankommt? Der
>> µC soll die meiste Zeit schlafen und nur per Interrupt durch eine RTC
>> oder Knopfdruck aufwachen.
>
> 1. LDO einsetzen anstelle eines normalen Linearreglers
> 2. passende Eingangsspannung für den LDO wählen
4 x AAA ausreichend bei einem TS1117 (5V), vor allem auch dann noch wenn 
die schon was nachlassen?

> 3. Betriebsspannung des Controllers runter, d.h. keine 5V-Komponenten,
> alles auf 3.3V maximal, besser 2.7 oder 1.8V. Die Verlustleistung steigt
> quadratisch mit der Spannung.
wie schon oben gesagt, nicht drin - wegen dem LCD

> 4. modernen AVR einsetzen. Also keinen Uralt Mega32, sondern einen
> 324PA.
habe einen ATMEGA328PU hier rumliegen

von MaWin (Gast)


Lesenswert?

> bringen eigentlich die AVR Stromspar-Modi irgendwas, wenn man den Atmega
> mit einem 7805 Versorgt?

Nein, die 5mA Eigenstrombedarf des 7805 sind deutlich mehr als der AVR 
bräuchte.
Nimm einen LP2950-5 (oder den schon genannten MCP1702) für deine 9V 
Blockbatterie, dann kann die auch richtig bis 5.4V entladen werden und 
nicht nur bis 7V.

von Frank K. (fchk)


Lesenswert?

kalle p. schrieb:

>> 3. Betriebsspannung des Controllers runter, d.h. keine 5V-Komponenten,
>> alles auf 3.3V maximal, besser 2.7 oder 1.8V. Die Verlustleistung steigt
>> quadratisch mit der Spannung.
> wie schon oben gesagt, nicht drin - wegen dem LCD

Dann überdenke nochmal Deine Wahl! Wenn Du WIRKLICH Strom sparen willst, 
nimm ein segmentiertes LCD-Glas, d.h. keines mit extra Controller, 
sondern eines, was nur einzelne Segmente und 7- oder 
14/16-Segment-Anzeigen hat. Das ist um Zehnerpotenzen sparsamer. Da 
diese LCD-Gläser (es sind ja wirklich nur Gläser, ohne Controller) 
unbedingt mit Wechselspannung betrieben werden müssen, brauchst Du einen 
Prozessor mit eingebautem LCD-Controller, insbesondere wenn das Glas 
mehrere Backplanes hat. Da gibts auch passende AVRs für (9 in der 
Typenkennung), aber bei PIC und MSP430 ist die Auswahl größer, und 
insbesondere die MSP430-Architektur wird sehr gerne für 
batteriebetriebene Sachen wie zB Messgeräte eingesetzt.

Zweitbeste Wahl sind die DOG-Displays von EA. Die laufen auch mit 3.3V 
sehr gut und sparsam, und es gibt sowohl reflektive (ohne 
Hintergrundbeleuchtung) als auch transflektive (gehen sowohl mit als 
auch ohne Hintergrundbeleuchtung) zu den üblichen transmissiven 
(brauchen zwingend eine Hintergrundbeleuchtung) Typen.

fchk

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

kalle p. schrieb:
> Markus Müller schrieb:
>> Nehme besser anstatt den 7805 einen MCP1702 (Microchip). Allerdings kann
>> der nur 13,2V am Eingang maximal. Dafür verbrät der ultrawenig Strom im
>> Standby von deinem AVR.
>
> Danke für den Tipp! Bei 250 mA bin ich mir aber nicht so sicher, dass
> der nicht unterdimensioniert ist: µC + LCD + Leds + Summer ?

LED's und Summer können auch einen separaten 7805 bekommen, der vom 
Prozessor deaktiviert wird wenn er in Sleep geht. Oder einen zweiten 
MCP1702 dafür nutzen.

Die EA-DOG wären auch meine Empfehlung.

von Werner (Gast)


Lesenswert?

Frank K. schrieb:
> 1. LDO einsetzen anstelle eines normalen Linearreglers

Was verändert LDO an der Stromaufnahme?

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Markus Müller schrieb:
> LED's und Summer können auch einen separaten 7805 bekommen, der vom
> Prozessor deaktiviert wird wenn er in Sleep geht.

Für den Summer würde ich dir sogar raten, den auf die ungeregelte 
Spannung zu legen, vllt. ebenso bei den LED. Ein kleine Transistorstufe 
im GND Anschluss kann dann von MC gesteuert werden.

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Matthias Sch. schrieb:
> Für den Summer würde ich dir sogar raten, den auf die ungeregelte
> Spannung zu legen, vllt. ebenso bei den LED. Ein kleine Transistorstufe
> im GND Anschluss kann dann von MC gesteuert werden.

Das wollte ich nicht vorschlagen. Bei Batteriebetrieb hat man einen 
großen Spannungsbereich und entsprechend wird der Summer sich anders 
anhören und die LED's werden dunkler.

von HildeK (Gast)


Lesenswert?

Werner schrieb:
> Was verändert LDO an der Stromaufnahme?

Zunächst nichts. Allerdings gibt es welche mit sehr geringer 
Eigenstromaufnahme und, wie schon geschrieben, man kann die Batterie 
besser ausnutzen.

kalle p. schrieb:
> Danke für den Tipp! Bei 250 mA bin ich mir aber nicht so sicher, dass
> der nicht unterdimensioniert ist: µC + LCD + Leds + Summer ?

Du könntest sowohl den Summer als auch die Leds von der ungeregelten 
Spannung betreiben.

von kalle p. (Gast)


Lesenswert?

Frank K. schrieb:
> kalle p. schrieb:
>
>>> 3. Betriebsspannung des Controllers runter, d.h. keine 5V-Komponenten,
>>> alles auf 3.3V maximal, besser 2.7 oder 1.8V. Die Verlustleistung steigt
>>> quadratisch mit der Spannung.
>> wie schon oben gesagt, nicht drin - wegen dem LCD
>
> Dann überdenke nochmal Deine Wahl! Wenn Du WIRKLICH Strom sparen willst,
> nimm ein segmentiertes LCD-Glas, d.h. keines mit extra Controller,
> sondern eines, was nur einzelne Segmente und 7- oder
> 14/16-Segment-Anzeigen hat. Das ist um Zehnerpotenzen sparsamer. Da
> diese LCD-Gläser (es sind ja wirklich nur Gläser, ohne Controller)
> unbedingt mit Wechselspannung betrieben werden müssen, brauchst Du einen
> Prozessor mit eingebautem LCD-Controller, insbesondere wenn das Glas
> mehrere Backplanes hat. Da gibts auch passende AVRs für (9 in der
> Typenkennung), aber bei PIC und MSP430 ist die Auswahl größer, und
> insbesondere die MSP430-Architektur wird sehr gerne für
> batteriebetriebene Sachen wie zB Messgeräte eingesetzt.

mh, klingt in der Tat sehr sinnvoll. Für mich spricht nur dagegen, dass 
ich alle genannten Teile soweit da habe und auch schon mal erfolgreich 
eingesetzt. Ich fürchte auch, dass bei den vorgeschlagenen Lösungen der 
Schaltungsaufwand erheblich steigt. Und auf andere Architekturen als 
AVR/Atmel würde ich ungerne setzen, da ich das alles amateurmäßig mache 
und mich in meiner wenigen Freizeit nicht verzetteln möchte.

>
> Zweitbeste Wahl sind die DOG-Displays von EA. Die laufen auch mit 3.3V
> sehr gut und sparsam, und es gibt sowohl reflektive (ohne
> Hintergrundbeleuchtung) als auch transflektive (gehen sowohl mit als
> auch ohne Hintergrundbeleuchtung) zu den üblichen transmissiven
> (brauchen zwingend eine Hintergrundbeleuchtung) Typen.

Nicht schlecht, aber auch nicht billig. Das Diplay von Pollin kostet 
dagegen nur schlappe 95ct ;-)

Aber werd's mir trotzdem mal durch den Kopf gehen lassen. Danke!

von kalle p. (Gast)


Lesenswert?

Markus Müller schrieb:
> Matthias Sch. schrieb:
>> Für den Summer würde ich dir sogar raten, den auf die ungeregelte
>> Spannung zu legen, vllt. ebenso bei den LED. Ein kleine Transistorstufe
>> im GND Anschluss kann dann von MC gesteuert werden.
>
> Das wollte ich nicht vorschlagen. Bei Batteriebetrieb hat man einen
> großen Spannungsbereich und entsprechend wird der Summer sich anders
> anhören und die LED's werden dunkler.

Damit könnte ich evtl. leben

von kalle p. (Gast)


Lesenswert?

kalle p. schrieb:
> Markus Müller schrieb:
>> Matthias Sch. schrieb:
>>> Für den Summer würde ich dir sogar raten, den auf die ungeregelte
>>> Spannung zu legen, vllt. ebenso bei den LED. Ein kleine Transistorstufe
>>> im GND Anschluss kann dann von MC gesteuert werden.
>>
>> Das wollte ich nicht vorschlagen. Bei Batteriebetrieb hat man einen
>> großen Spannungsbereich und entsprechend wird der Summer sich anders
>> anhören und die LED's werden dunkler.
>
> Damit könnte ich evtl. leben

Also den Summer, meinte ich, die LEDs würde ich eher ungern auf die 
ungeregelte Spannung legen.

von M. K. (sylaina)


Lesenswert?

kalle p. schrieb:
> Hallo,
>
> bringen eigentlich die AVR Stromspar-Modi irgendwas, wenn man den Atmega
> mit einem 7805 Versorgt? Der verbrennt doch Energie auch wenn der Atmega
> sich im Idle befindet oder nicht?

Wenn man den 7805 gemäß Datenblatt betreiben will (min. 5mA Strom) dann 
kann man auf die Stromsparmodi des Atmegas verzichten. Einen Atmega kann 
man aber auch noch aus anderen Stromquellen als einen 7805 versorgen, 
z.B. aus einer 3V Knopfzelle und dann kanns schon sein, dass man jedes 
µW sparen will, das man sparen kann ;)

von Frank K. (fchk)


Lesenswert?

kalle p. schrieb:

>> Dann überdenke nochmal Deine Wahl! Wenn Du WIRKLICH Strom sparen willst,
>> nimm ein segmentiertes LCD-Glas, d.h. keines mit extra Controller,
>> sondern eines, was nur einzelne Segmente und 7- oder
>> 14/16-Segment-Anzeigen hat. Das ist um Zehnerpotenzen sparsamer. Da
>> diese LCD-Gläser (es sind ja wirklich nur Gläser, ohne Controller)
>> unbedingt mit Wechselspannung betrieben werden müssen, brauchst Du einen
>> Prozessor mit eingebautem LCD-Controller, insbesondere wenn das Glas
>> mehrere Backplanes hat. Da gibts auch passende AVRs für (9 in der
>> Typenkennung), aber bei PIC und MSP430 ist die Auswahl größer, und
>> insbesondere die MSP430-Architektur wird sehr gerne für
>> batteriebetriebene Sachen wie zB Messgeräte eingesetzt.
>
> mh, klingt in der Tat sehr sinnvoll. Für mich spricht nur dagegen, dass
> ich alle genannten Teile soweit da habe und auch schon mal erfolgreich
> eingesetzt. Ich fürchte auch, dass bei den vorgeschlagenen Lösungen der
> Schaltungsaufwand erheblich steigt. Und auf andere Architekturen als
> AVR/Atmel würde ich ungerne setzen, da ich das alles amateurmäßig mache
> und mich in meiner wenigen Freizeit nicht verzetteln möchte.

Ja was willst Du? Eine gute Lösung oder eine, die wie gewollt und nicht 
gekonnt aussieht? Immerhin reden wir bei den segmentierten LCD-Gläsern 
nicht mehr über µA, sondern über nA. Die Flüssigkristalle werden nur 
über elektrische Felder gesteuert, da fließt also so gut wie kein Strom.

Schau Dir mal das hier an:
https://www.olimex.com/Products/Components/LCD/LCD449STK/
Da gibts auch ein Datenblatt zu. Du kannst auch irgendein anderes Glas 
nehmen. Diese Teile sind in der Herstellung eigentlich furchtbar billig

Dann nimmst Du einen AtMega3290p, mit p wie PicoPower. Das LCD hat 4 
Backplanes, die mit COM1-COM4 bezeichnet sind. Die gehen an PA0-PA3. Die 
Segmentleitungen des LCD gehen an die mit SEG bezeichneten Portpins des 
AVR. Fertig. Rest wie gehabt. Initialisierung steht im Datenblatt. Dann 
kannst Du die einzelnen Segmente bitweise an- und ausschalten.

Deine Bauteile kannst Du ja später für was anderes verwenden. Das wird 
ja nicht schlecht.

fchk

von kalle p. (Gast)


Lesenswert?

Frank K. schrieb:
> kalle p. schrieb:
>
>>> Dann überdenke nochmal Deine Wahl! Wenn Du WIRKLICH Strom sparen willst,
>>> nimm ein segmentiertes LCD-Glas, d.h. keines mit extra Controller,
>>> sondern eines, was nur einzelne Segmente und 7- oder
>>> 14/16-Segment-Anzeigen hat. Das ist um Zehnerpotenzen sparsamer. Da
>>> diese LCD-Gläser (es sind ja wirklich nur Gläser, ohne Controller)
>>> unbedingt mit Wechselspannung betrieben werden müssen, brauchst Du einen
>>> Prozessor mit eingebautem LCD-Controller, insbesondere wenn das Glas
>>> mehrere Backplanes hat. Da gibts auch passende AVRs für (9 in der
>>> Typenkennung), aber bei PIC und MSP430 ist die Auswahl größer, und
>>> insbesondere die MSP430-Architektur wird sehr gerne für
>>> batteriebetriebene Sachen wie zB Messgeräte eingesetzt.
>>
>> mh, klingt in der Tat sehr sinnvoll. Für mich spricht nur dagegen, dass
>> ich alle genannten Teile soweit da habe und auch schon mal erfolgreich
>> eingesetzt. Ich fürchte auch, dass bei den vorgeschlagenen Lösungen der
>> Schaltungsaufwand erheblich steigt. Und auf andere Architekturen als
>> AVR/Atmel würde ich ungerne setzen, da ich das alles amateurmäßig mache
>> und mich in meiner wenigen Freizeit nicht verzetteln möchte.
>
> Ja was willst Du? Eine gute Lösung oder eine, die wie gewollt und nicht
> gekonnt aussieht?

eine pragmatische Lösung. Mit dem 'gewollt und nicht gekonnt' werd ich 
mich in gewissen Grenzen abfinden müssen. Bin halt alles andere als 
Profi sondern nur ein interessierter Hobbybastler. Aber deine 
Argumentation ist schon richtig und deine Tipps sehr wertvoll.

Ausgangspunkt der Diskussion war aber, dass das LCD mich daran hindert, 
auf 3,3V runterzugehen. Das heißt, wenn ich mich von der 
3,3V-Anforderung generell entferne, ist die Wahl des Panels doch eh 
keine so große Frage mehr, oder? Ich will ja nur im Schlafmodus Strom 
sparen. Wenn das Ding aktiv ist, kann es meinetwegen ruhig 'viel' 
verbrauchen. Es soll sich ja kurze Zeit später wieder schlafen legen.

von Spess53 (Gast)


Lesenswert?

Hi

>Ausgangspunkt der Diskussion war aber, dass das LCD mich daran hindert,
>auf 3,3V runterzugehen. Das heißt, wenn ich mich von der
>3,3V-Anforderung generell entferne, ist die Wahl des Panels doch eh
>keine so große Frage mehr, oder?

Übliche LCD-Controller laufen auch mit 3,3V. Lediglich die 
LCD-Versorgungsspannung (umgangssprachlich Kontrastspannung) liegt meist 
im Bereich von 5..4,5V gegen VCC gemessen. Bei 3,3V ergibt sich dadurch 
eine negative Spannung. Die kannst du mit einer zusätzlichen Batterie, 
einem 7660 oder mit dem Controller so wie beispielsweise hier

Beitrag "LCD funktioniert an 3,3V nicht"

erzeugen. Oder du nimmst ein DOG-Display. Die laufen mit 3,3V.

MfG Spess

von Frank K. (fchk)


Lesenswert?

kalle p. schrieb:

> eine pragmatische Lösung. Mit dem 'gewollt und nicht gekonnt' werd ich
> mich in gewissen Grenzen abfinden müssen. Bin halt alles andere als
> Profi sondern nur ein interessierter Hobbybastler. Aber deine
> Argumentation ist schon richtig und deine Tipps sehr wertvoll.

Vor allem: Was ich schreibe, ist kein Zauberwerk. 44 Pins des 
Controllers mit 44 Pins des Displays verbinden, dann kannst Du auch. Und 
dabei kommt es noch nicht mal auf die richtige Reihenfolge an, solange 
COM an COM und SEG an SEG kommt - damit vertauscht Du nur Bits, die Du 
nachher in Deine Software wieder geradebiegen kannst.

> Ausgangspunkt der Diskussion war aber, dass das LCD mich daran hindert,
> auf 3,3V runterzugehen. Das heißt, wenn ich mich von der
> 3,3V-Anforderung generell entferne, ist die Wahl des Panels doch eh
> keine so große Frage mehr, oder? Ich will ja nur im Schlafmodus Strom
> sparen. Wenn das Ding aktiv ist, kann es meinetwegen ruhig 'viel'
> verbrauchen. Es soll sich ja kurze Zeit später wieder schlafen legen.

Inklusive des Displays? Gut, das kannst Du mit einem PNP-Transistor in 
seiner Versorgungsspannung abschalten. Beim Wiederanschalten musst Du es 
nur wieder neu initialisieren.

Dann lies noch das hier:
http://elm-chan.org/docs/lcd/lcd3v.html

und dann hast Du getan, was Du tun konntest.

fchk

von kalle p. (Gast)


Lesenswert?

Frank K. schrieb:
> kalle p. schrieb:
>> ...
>> Ich will ja nur im Schlafmodus Strom
>> sparen. Wenn das Ding aktiv ist, kann es meinetwegen ruhig 'viel'
>> verbrauchen. Es soll sich ja kurze Zeit später wieder schlafen legen.
>
> Inklusive des Displays? Gut, das kannst Du mit einem PNP-Transistor in
> seiner Versorgungsspannung abschalten. Beim Wiederanschalten musst Du es
> nur wieder neu initialisieren.

so war der Plan. Habe mal gemessen: das Display braucht so etwa 0,7mA. 
Könnte ich notfalls mit leben, das anzulassen.


> Dann lies noch das hier:
> http://elm-chan.org/docs/lcd/lcd3v.html

Ja, über die Lösung mit der Ladungspumpe bin ich mittlerweile auch schon 
gestolpert. Werde ich drüber nachdenken. Klingt nach ner brauchbaren 
Lösung.

> und dann hast Du getan, was Du tun konntest.

man kann immer noch was mehr tun ;-). Danke für die guten Tipps!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.