Forum: Mikrocontroller und Digitale Elektronik Stromverbrauch Projekt


von youth (Gast)


Lesenswert?

Hallo,

ich habe eine kleine Wetterstation mit ATMEGA 8, einen 2*16 LCD, einen 
Temp.sensor und einen Feuchtesensor. Ich habe jetzt mal gemessen und das 
gesamte System zieht dauerhaft 26mA, was für meine Betrachtungen 
zunächst nicht viel sind. Jetzt hab ich mir allerdings mal Gedanken über 
die Stromversorgung gemacht, die über Batterien erfolgen sollte. 
Irgendwie hab ich das Gefühl, dass ich jedne Tag die Batterie wechseln 
kann. In Frage kommt wohl entweder eine 9V Block oder 4* Mignon, wobei 
ich die 9V Block bevorzugen würde von der Bauform.

Wie gestaltet ihr die Stromversorgung und was meint ihr zu dem 
Stromverbrauch? Wenn ich den Quellcode vom µC lösche, zieht der 
immernoch den selben Strom.

von Karl (Gast)


Lesenswert?

vl lässt sich die Hintergrundbeleuchtung des LCDs einspahren.

von MaWin (Gast)


Lesenswert?

> Wie gestaltet ihr die Stromversorgung

Das LCD ist dein Problem.

Diese alphanumerischen DotMatrix Displays brauchen einen Haufen Strom.

Der Rest (uC, TempSensor, Hygro) lassen sich abschalten (sleep, an einen 
dann abgeschalteten PortPin als Stromversorgung hängen) und brauchen 
dann extrem wenig Strom. Bei Wetterdaten reicht es ja, wenn die Bauteile 
alle paar Sekunden für den Bruchteil einer Sekunde aktiviert werden, 
dazu dient der Timer der den uC aus dem sleep aufwachen lässt, ud schon 
braucht das nur noch Mikroampere.

Falls die Teile eine stabile Stromversorgung haben wollen und nicht 
direkt an eine Batterie dürfen, sind LP2950 (3/5V) geeignete 
Spannungsregler.

Aber das Display bleibt dein Problem, vor allem wenn du es 
hintergrundbeleuchten willst.

Daher haben Wetterstationen andere Displays, grosse Gläser die direkt 
vom uC bedient werden, und laufen dann 1 Jahr aus einer normalen 
Batterie.

von Olaf (Gast)


Lesenswert?

> In Frage kommt wohl entweder eine 9V Block oder 4* Mignon, wobei
> ich die 9V Block bevorzugen würde von der Bauform.

Aber die Physik deines Universum bevorzugt die andere Bauform wenn es um 
den Wirkungsgrad geht.

> Wie gestaltet ihr die Stromversorgung und was meint ihr zu dem
> Stromverbrauch?

Er ist ein guter Beweis dafuer das du noch keine Ahnung von 
Microcontrollern hast und keine Lust hast Datenblaetter zu lesen.

Vermutlich wuerde es reichen wenn dein Controller die meiste Zeit 
schlaeft und nur so alle 10s mal aufwacht, seine Sensoren einschaltet 
und kurz eine Messung vornimmt.

Olaf

von youth (Gast)


Lesenswert?

Die Beleuchtung des Displays ist aus. Wenn die an ist, zieht er ca 200mA 
mehr. Laut Datenblatt für das LCD TC1602E-01 ist der der Power Supply 
Current max. 3 mA und mit Belecuhtung max. 150 mA.

MaWin schrieb:
> Der Rest (uC, TempSensor, Hygro) lassen sich abschalten (sleep, an einen
> dann abgeschalteten PortPin als Stromversorgung hängen) und brauchen
> dann extrem wenig Strom.

Wie meinst du das? Die Sensoren lassen sich abschalten? Du meinst jeder 
Sensor sollte einen Schlafmodus haben?

von Jonathan S. (joni-st) Benutzerseite


Lesenswert?

Der µC verbraucht, (fast) egal welcher Quellcode drauf ist, (fast) immer 
gleich viel. Folgendes kannst Du machen, um den Stromverbrauch zu 
minimieren:

1. Keinen 7805 einsetzen. Die Dinger verbrauchen unglaublich viel Strom. 
Nimm lieber einen sparsameren Step-Down-Regler.

2. Den µC in einen Schlafmodus versetzen. Am besten weckst Du ihn 
zyklisch mit einem Timer auf, und schickst ihn gleich nach dem Auslesen 
der Sensoren wieder in den Schlafmodus (z.B. Idle).

3. Hintergrundbeleuchtung (falls vorhanden) deines LCDs ausschalten.

4. Sensoren abschalten, wenn Du gerade nicht misst. Am besten so alle 5 
Sekunden einschalten, messen, ausschalten.

5. LCD ausschalten bringt nicht viel, die verbrauchen fast gar nix.*

6. Alle Widerstände so hochohmig wie möglich auslegen.

7. Keinen ATMega8 einsetzen. Die sind veraltet. Nimm einen ATMega88P.


Danach dürfte dein Stromverbrauch vllt. noch bei 0,2mA liegen...


Gruß
Jonathan



*Bei dem, was ich oben gelesen habe: Nimm ein anderes. Deins verbraucht 
viiieeel zu viel Strom. Es gibt viel sparsamere.

von Achim M. (minifloat)


Lesenswert?

Mit einem PMOS-Transistor die Anzeige nur bei Bedarf anzuschalten, wäre 
doch auch ganz nett.

Dann kann man den Prozessor auch noch schlafen legen und erst bei einem 
Tastendruck oder Timerinterrupt(Sensorabfrage -> Werte speichern, 
Uhrzeit inkrementieren etc) eines aus externen 32kHz betriebenen Timers 
aufwecken(kann das der mega8? evtl. auf den 88er umsteigen).

Den Prozessor dauernd über einen ganz kleinen Linearregler versorgen(ist 
effizienter), erst bei "großem Aufwecken mit Display oder Sensorabfrage" 
wird zusätzlich ein etwas dickerer Schaltregler in Betrieb gesetzt. 
Dieser spuckt 3,3V aus.

mfg mf

von Jonathan S. (joni-st) Benutzerseite


Lesenswert?

youth schrieb:
> Du meinst jeder
> Sensor sollte einen Schlafmodus haben?

Nö. Du musst ihnen einfach nur den Saft abdrehen, wenn Du sie nicht 
brauchst.

von youth (Gast)


Lesenswert?

Olaf schrieb:
> Er ist ein guter Beweis dafuer das du noch keine Ahnung von
> Microcontrollern hast und keine Lust hast Datenblaetter zu lesen.

Lieber Olaf, ich habe ein Problem und suche Hilfe. Wenn man keinen 
Ansatz hat wonach man suchen muss, dann holt man sich Hilfe. Und zwar in 
einem Forum für µC. Und wenn es beruhigt, oute ich mich gerne als 
Anfänger. Dazu steh ich auch.

Olaf schrieb:
> Vermutlich wuerde es reichen wenn dein Controller die meiste Zeit
> schlaeft und nur so alle 10s mal aufwacht, seine Sensoren einschaltet
> und kurz eine Messung vornimmt.

Wenn nun aber nicht der µC den erhöhten Stromverbrauch verursacht, 
sondern das Display? Dann nützt es auch nichts die Sensoren schlafen zu 
legen.

von Achim M. (minifloat)


Lesenswert?

youth schrieb:
> nicht der µC den erhöhten Stromverbrauch verursacht

Sag ich doch: PMOS und bei Nichtgebrauch Ansteuerports auf Masse legen 
und Saft aus. :) mf

von Jonathan S. (joni-st) Benutzerseite


Lesenswert?

Miss doch einfach mal nach, wie viel was verbraucht. Dann weißt Du, wass 
Du abschalten musst.

von youth (Gast)


Lesenswert?

Jonathan Strobl schrieb:
> *Bei dem, was ich oben gelesen habe: Nimm ein anderes. Deins verbraucht
> viiieeel zu viel Strom. Es gibt viel sparsamere.

Danke für die ausführlichen Tipps. Kannst du mir ein sparsameres 
empfehlen? Und ja ich habe einen 7805 drin, weil ich bislang nur mit 
solchen gearbeitet habe. Kannst du mir die Bauteilbezeichnung für einen 
Stepdownregler für 5V Output nennen?

von youth (Gast)


Lesenswert?

Jonathan Strobl schrieb:
> Nö. Du musst ihnen einfach nur den Saft abdrehen, wenn Du sie nicht
> brauchst.

Versteh ich immernoch nicht. Die Sensoren hängen doch meist an Vcc und 
nicht an einen Pin der Vcc ausgibt. Du meinst, ich soll die 
Stromversorgung der Sensoren über die Pins des µC steuern. Dann kann ich 
die auch ab und an schalten. Aber welchen Strom kann ein Ausgang des µC 
denn treiben?

von Joachim (Gast)


Lesenswert?

Habe hier ein 2x16 Zeichen LCD und einen ATMega328.
Habe als Linearregler LM33CV => 3.3V. Eingangsseitig verbraucht das 
ganze ca. 1.8 mA wenn der uC schläft (da ist auch das Display mit drin).
Ohne Display sind es sowas wie 0.7mA, die primär durch den Linearregler 
kommen.

Vielleicht mal LP2950 auspropieren? Wenn du die Hintergrundbeleuchtung 
nicht nutzt sollte das ausreichen. Der hat <100µA, das sollte wohl 
reichen.

von youth (Gast)


Lesenswert?

Operating Voltage:
– 1.8 - 5.5V for ATmega48PA/88PA/168PA/328P

Seh ich das Richtig, dass ich die µC damit auch mit mind. 1,8V betreiben 
kann? Wählst du deswegen die Versorgungspannung von 3,3V?
Nach dem LP2950 hab ich jetzt schonmal gegoogelt, aber noch nicht 
herausgefunden wie der beschaltet wird.

von Volker S. (volkerschulz)


Lesenswert?

youth schrieb:
> Jonathan Strobl schrieb:
>> Nö. Du musst ihnen einfach nur den Saft abdrehen, wenn Du sie nicht
>> brauchst.
>
> Versteh ich immernoch nicht. Die Sensoren hängen doch meist an Vcc und
> nicht an einen Pin der Vcc ausgibt. Du meinst, ich soll die
> Stromversorgung der Sensoren über die Pins des µC steuern. Dann kann ich
> die auch ab und an schalten. Aber welchen Strom kann ein Ausgang des µC
> denn treiben?

Auch das steht im Datenblatt. Da gibt es eine Begrenzung pro Port-Pin, 
pro Port und Gesamt (VCC zu GND). Sollte aber auf jeden Fall ausreichend 
sein (20mA kannst Du mal annehmen). Ansonsten gibt es fuer sowas ja 
Transistoren.

Volker

von Volker S. (volkerschulz)


Lesenswert?

youth schrieb:
> Operating Voltage:
> – 1.8 - 5.5V for ATmega48PA/88PA/168PA/328P
>
> Seh ich das Richtig, dass ich die µC damit auch mit mind. 1,8V betreiben
> kann? Wählst du deswegen die Versorgungspannung von 3,3V?
> Nach dem LP2950 hab ich jetzt schonmal gegoogelt, aber noch nicht
> herausgefunden wie der beschaltet wird.

Das kommt natuerlich auch auf Deine Sensoren an. Wenn die z.B. 0-5V am 
ADC liefern, hilft Dir ein µC mit 3,3V VCC wenig...

Schaltregler gibt's (z.B. bei Conrad) auch fertig aufgebaut und 
pinkompatibel zum 7805. Ist preislich aber auch 'ne Ansage...

http://www.conrad.de/ce/de/product/167805/SCHALTREGLER-W78-5V0-5-V/SHOP_AREA_17336&promotionareaSearchDetail=005


Volker

von holger (Gast)


Lesenswert?

>Nach dem LP2950 hab ich jetzt schonmal gegoogelt, aber noch nicht
>herausgefunden wie der beschaltet wird.

ROFL;) Guter Witz.

von Anon Y. (anonymous)


Lesenswert?

youth schrieb:
> Wenn ich den Quellcode vom µC lösche, zieht der
> immernoch den selben Strom.

Dann läuft er mit maximale Geschwindigkeit die 0xffs im Flash durch und 
verbraucht auch fast den maximalen Strom. Power down mode gegoogelt?

von Olaf (Gast)


Lesenswert?

> Danke für die ausführlichen Tipps. Kannst du mir ein sparsameres
> empfehlen? Und ja ich habe einen 7805 drin, weil ich bislang nur mit
> solchen gearbeitet habe.

Lass die Finger von Schaltreglern. Die haben hier einen zu schlechten 
Wirkungsgrad. :)

Bring erstmal den Rest deiner Schaltung etwas bessere Trinksitten bei. 
Wenn du dann erstmal bei den Mikroamperes angelangt bist dann nimmst du 
einen LowDropregler mit moeglichst geringem Ruhestrom und eben keinen 9V 
Block. Vielleicht kannst du ja sogar ganz auf einen Spannungsregler 
verzichten wenn du deinen Controller nur mit drei Batterien betreibst.

Olaf

von youth (Gast)


Lesenswert?

Olaf aber ist das nicht dein Beispiel hier aus folgender Quelle:
Beitrag "Spannungsversorgung 7805"


Ein Beispiel:

9V-Block an 78L05, Schaltung braucht 100µA -> ca. 3mA Batterietrom
(Datenblatt: 78L05 typ. 3mA Ruhestrom), d.h. 9V-Block (400mAh) hält ca.
5 Tage Dauerbetrieb.

9V-Block an LP2950-5, Schaltung braucht 100µA -> ca. 175µA
Batteriestrom (Datenblatt: 75µA GND-Current bei 100µA), 9V-Block hält
ca. 3 Monate Dauerbetrieb.

Ein Schaltregler wäre natürlich noch um einiges besser, aber mehr als 8
Monate dürfte er auch nicht schaffen.

von Volker S. (volkerschulz)


Lesenswert?

youth schrieb:
> Ein Schaltregler wäre natürlich noch um einiges besser, aber mehr als 8
> Monate dürfte er auch nicht schaffen.

Der faengt wahrscheinlich in den Bereichen noch gar nicht an zu 
arbeiten... Der macht erst Sinn, wenn Du Lasten wie (zuschaltbare) 
Displaybeleuchtung hast. Sagen wir (ueber den Daumen) so ab 10-15mA 
aufwaerts.

Volker

von MaWin (Gast)


Lesenswert?

> Wie meinst du das? Die Sensoren lassen sich abschalten?
> Du meinst jeder Sensor sollte einen Schlafmodus haben?

Entweder er hat (wie SHT-11 als Hygro/Tempsensor)
oder er hat nicht, dann braucht er aber i.A. weniger als 20mA,
lässt sich also an einem Port-Pin als Spannungsversorgung
anschliessen den man abschaltet wenn man den Sensor nicht braucht,
und wenn er doch mehr braucht, hilft der "PMOS" von dem hier
geredet wird (oder 2 PortPins parallel).

Die Unbrauchbarkeit eines 7805 hast du schon selbst erkannt.

von Achim M. (minifloat)


Lesenswert?

Deswegen hätte ich die HiPower-Stromversorgung auch nur dann 
eingeschaltet, wenn ich die Peripherie mit dem hohen Stromverbrauch auch 
benötige. Dann ist ein Schaltregler natürlich effizienter als der 
Linearregler.

Der µC kann ja dauernd über LowPower-Linearregler + Shottky-Diode 
versorgt werden.

Der HiPower Schaltregler kommt dann mit einer Shottky-Diode an den µC 
sowie direkt an die "Stromfresser". Die Diode zum Linearregler sperrt 
dann idealerweise, wenn der Wandler an ist.

So kann man es auch schaffen, dass der µC mit 2V/100µA oder so aus dem 
Linearregler permanent läuft und sich bei Bedarf 5V/50mA aus dem 
Schaltregler zuschalten kann.
Wann die Peripherie zuverlässig laufen sollte, kann man ja über eine 
Spannungsmessung oder einen eventuell vorhandenen PowerGood Ausgang des 
Schaltreglers erkennen.

mfg mf

PS: Und beides mit heutigen technischen Mitteln in Effizientester 
Bauweise.
Die Mikroprozessoren schlucken schlafend meist bei kleineren Spannungen 
auch weniger Strom. Der muss dann auch nicht erst durch den Linearregler 
hindurch.

von Purzel H. (hacky)


Lesenswert?

>Die Beleuchtung des Displays ist aus. Wenn die an ist, zieht er ca 200mA
mehr.

Total durchgeknallt ... ein 128x64 laeuft auch sehr gut mit 10mA. Wenn 
man's denn mal im Dunkeln ablesen soll.

von youth (Gast)


Lesenswert?

Jonathan Strobl schrieb:
> 7. Keinen ATMega8 einsetzen. Die sind veraltet. Nimm einen ATMega88P

Welcher wär das bei Reichelt? Da gibts immer unterschiedlichste 
Bezeichnungen.
ATMEGA 88-20 PU, ATMEGA 88V-10 PU,

von Achim M. (minifloat)


Angehängte Dateien:

Lesenswert?

Unterschiede Rot markiert, gleiches Grün markiert.
mfg mf

PS: beide kommen im PDIP-Gehäuse.

von Gästle (Gast)


Lesenswert?

Schaltregler würde ich einem Anfänger als letztes empfehlen. Am 
effizientesten ist gar kein Spannungsregler. Schaltregler haben einen 
relativ hohen Eigenverbrauch, der die Ersparnis bei so kleinen 
Leistungen wieder zunichte macht. (Hat überhaupt jemand einmal das 
Datenblatt von diesem Conrad-Schaltregler gelesen? Da steht Quiescent 
Current 3,3 mA, der verpulvert bei geringer Last in etwa genau so viel 
wie ein 78xx!)

 Als Prozessor wie oben empfohlen einen Atmega 88, dann läuft die 
Geschichte mit 2 Mignonzellen oder eine Litiumbatterie eine halbe 
Ewigkeit, allerdigs ohne hinterleuchtetem Display.

9V-Batterien sind so ziemlich das ineffizientestes was es an 
Energiequellen gibt, vor allem noch wenn daran noch ein 7805 hängt. Ich 
habe keine Ahnung weshalb das ständig wieder auftaucht. Da macht es 
überhaupt keinen Sinn über stromsparende Programmiertechniken 
nachzudenken. Dieser Uralt-Regler ist alleine schon für mind. 3mA gut.

von Falk B. (falk)


Lesenswert?


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.