glaubt Ihr, daß man den Stromverbrauch noch irgendwie weiter senken kann (Batteriebetrieb)?
Die Schaltung besteht aus einem ATmega328P-PU und einem DEM 16101 TGH Display. Er läuft mit dem internen Oszillator bei 2 MHz. VDD=4.5V
Zwischen den Messungen schicke ich den Mega328 in den PWR_DOWN sleep-mode - aufwecken über Watchdog (8s), dann kommt man auf ca. 1mA für das Display und 266µA für den MCU in den Ruhephasen.
Wohlgemerkt es geht hier nur noch um die Optimierung per Software, denn die Schaltung ist bereits fertig und die Platinen produziert.
Da dein Display den Hauptteil des Verbrauchs ausmacht und scheinbar an bleiben soll solltest du ein anderes nehmen, EA DOG braucht z.B. nur 0.25mA, gibt es scheinbar aber nur 1x8 oder 2x16.
Unter 50uA für den ATmegs328 der noch ein passives LCD dabei bedient sind aber scheinbar möglich
Zwischen den Messungen schicke ich den Mega328 in den PWR_DOWN
sleep-mode - aufwecken über Watchdog (8s), dann kommt man auf ca. 1mA
für das Display und 266µA für den MCU in den Ruhephasen.
Ich habe hier ein Gerät gebaut, das mit diesem µP im Power-down-Modus bei 3 V, 8 MHz und abgeschaltetem Display weniger als 2 µA braucht.
Im Atmel-Handbuch scheint das nicht so zu stehen, ich sehe dort leider kein Inhaltsverzeichnis. :-(
Für minimalen Verbrauch muss man den Brown-out-Detektor im Power-down abschalten, ebenso den ADU und den Analog-Converter (beide aber VORHER, siehe Handbuch). Je nach Beschaltung können auch die Port-Pins unnötig Strom ziehen.
Ach so, ich vergaß: Bei mir war sogar noch der Watchdog-Timer aktiv, um den Controller alle 8 s aufzuwecken. Ohne den Watchdog-Timer wäre der Stromverbrauch deutlich unter den 6 µA gewesen.
Ich möchte wetten, du hast noch irgendwo einen Portpin, durch den was verschwindet. Vielleicht einen Eingang, bei dem der interne Pull-Up aktiviert ist, und der auf GND gezogen wird?
Alle Pins sollen eindeutig auf High oder Low liegen. Du kannst das z.B durch Aktivieren der Pull-up Widerstände erreichen, außer bei den Pins, die extern auf Low gezogen werden.
Die Versorgungsspannung reduzieren bringt auch einiges.
Zufällig habe ich das gestern auch gemessen. 6,2 µA bei 5V VCC.
266 µA ist zu viel. Ich meine, da wäre noch einiges an Einsparpotential
drin, aber ohne Schaltung kann man da nichts sagen.
Hier überwacht ein Arduino Pro-Mini 5V einen Akkusatz, Spannungsregler und LED habe ich entfernt. Gespeist wird er aus 12V über Diode, dicken Elko und MCP1702-5002. Der wacht alle 8s auf, inkrementiert einen Zähler, fragt einen Schalter ab, prüft den Zählerstand und geht wieder 8s schlafen, bis der Zähler 111 erreicht.
Programmiert mit Arduino, liegt das Gesamtgebilde um 25µA.
Ich habe eine nackte Platine, d.h. im Augenblick ist dort nichts
angeschlossen. Keine Sensoren, kein Display.
Trotzdem komme ich nicht unter die 0,266mA.
Finde den Fehler, ohne irgendwelche Verrenkungen geht erheblich weniger. Schaue mal die Arduino LowPower.h an, ob dort etwas gemacht wird, was Du übersehen hast.
Den Status Deiner Ports zu kontrollieren wurde schon gesagt!
Nun, es könnte ja sein, daß einer der Cs fehlerhaft ist. Aber daran liegt es nicht.
Mit Deinem Script komme ich auf 0,22 µA, was wohl ziemlich dicht an der Genauigkeitsgrenze meines Multimeters liegen dürfte.
Schreibe ich das in mein Script und füge den WDT hinzu, dann lande ich bei den 263 µA. Allerdings funktioniert es, daß er dann alle 8s aufgeweckt wird.
Damit löst der Watchdog beim Aufwachen Interrupts aus. Passiert da was in der ISR?
Und wie stellst du fest, dass das Aufwachen funktioniert? Hoffentlich nicht mit einer LED, die "nur ganz kurz" aufleuchtet?
Ich habe schnell mal einen ATmega328PB im Steckbrett ausprobiert. Damit komme ich auf 18 µA. Die 263 µA habe ich nicht einmal, wenn ich vergesse, den Programmer (AVRISP-MKII-Clone) abzustecken. Dann wären es nämlich 80 µA.
Die Bibliothek compiliert bei mir nicht: multiple definiton of vector_6.
Woher kommt die zweite Definition von ISR(WDT_vect)?
Schreibe ich das in mein Script und füge den WDT hinzu
Umgekehrt: füge ich Ihr 'watchdogSetup' in meinem Minimalprogramm ein und rufe es mit '9' auf, dann blinkt die LED an B0 im 8 s-Rhythmus, und in der Ruhephase fließen 6.6 uA.
Sie werden wohl oder übel Ihr 'Script' zeigen müssen (incl. der Fuses) ...
Für solche Messungen steht in meinem Souterrain ein DT-3800 für 69.90 DM, und das reicht für den vorliegenden Fall - wir reden schließlich über einen Unterschied von 2 bis 3 Größenordnungen.
Und wie stellst du fest, dass das Aufwachen funktioniert? Hoffentlich
nicht mit einer LED, die "nur ganz kurz" aufleuchtet?
Für eine LED reichen 1 mA und ein Aufblitzen von 10 ms völlig aus. Bei 8 s Pulsabstand ergibt sich ein eff. Strom von 1,3 µA.
Wie S. L. (sldt) schrieb, ist die Pause im übrigen lang genug, um den Ruhestrom ablesen zu können.
Für mich ist ein typischer Ruhestromwert mit WDT und int. Oszillator 7 µA.
Aber das ist doch nebensächlich, wenn das Display allein schon 1 mA braucht.
Und wie stellst du fest, dass das Aufwachen funktioniert? Hoffentlich
nicht mit einer LED, die "nur ganz kurz" aufleuchtet?
Für eine LED reichen 1 mA und ein Aufblitzen von 10 ms völlig aus. Bei 8
s Pulsabstand ergibt sich ein eff. Strom von 1,3 µA.
Da hast du allerdings recht.
Wie S. L. (sldt) schrieb, ist die Pause im übrigen lang genug, um den
Ruhestrom ablesen zu können.
Stimmt auch. 8 Sekunden müssten da üppig reichen.
Aber das ist doch nebensächlich, wenn das Display allein schon 1 mA
braucht.
Um ein paar Mikroampere zu feilschen, bringt sicher nichts. Aber 262 µA sind dann schon 20% des Gesamtverbrauchs. Da lohnt es sich, ein wenig zu drehen. Das Display mit seinem Strombedarf müssen wir ja vermutlich als gegeben hinnehmen.
Damit löst der Watchdog beim Aufwachen Interrupts aus. Passiert da was in der ISR?
Ja, es wird eine Boolean gesetzt. (Benutze ich im Moment eigentlich gar nicht mehr - wird evtl. vom Compiler entfernt.)
1
ISR(WDT_vect){waitForWDT:=0;}
Und wie stellst du fest, dass das Aufwachen funktioniert?
Bei der Testplatine sehe ich, daß der Stromverbrauch von 0,266 auf 4,0 mA steigt. Das ist der Meßvorgang, der alle 8s stattfindet (Pins auf High usw.).
Bei der richtigen Platine sehe ich, daß sich die Anzeige auf dem Display alle 10s verändert. Da ändert sich der Stromverbrauch von 1,3mA auf ca. 5mA.
Das Display mit seinem Strombedarf müssen wir ja vermutlich als gegeben hinnehmen.
Für die aktuellen Exemplare schon, jedoch ist nicht ausgeschlossen, daß da noch mal welche nachkommen. Das ist schon die stromsparendste Variante, die ich finden konnte. (Alle anderen Schaltungen, die ich bisher gebaut habe, hatten Netzteile, da spielt der Stromverbrauch keine Rolle. Normalerweise benutze ich gerne die blau/weissen mit 4x20 Zeichen, die schon mal 40mA verbrauchen können - das geht hier natürlich nicht.)
Natürlich bin ich immer auf der Suche; ich muß eigentlich nur 2 fünfstellige Zahlen anzeigen können, daher habe ich hier 1x16 gewählt. Vielleicht könnte ich mal die e-Ink-Displays probieren, die sollen angeblich kaum Verbrauch haben, wenn die Anzeige sich nicht ändert, was bei dem hier liegenden Fall ja ca. 10s der Fall wäre.
Wenn du mir nun noch erklärst, was ich da sehen soll, was ich nicht schon wusste ...
an Edi R.: nun ja, das Aufwachen per Watchdog ist ja Sinn der Übung.
Das geht auch ohne den Watchdog. Man kann eine RTC nehmen, die fast nichts verbraucht (z. B. die DS3231) und den µP regelmäßig z. B. per INT 0 weckt. So habe ich es gemacht. Gut, kostet einen Chip mehr, aber ich brauchte ohnehin eine Uhr.
Moin,
das mit den Kerkos bitte nicht falsch verstehen. Das war lediglich eine Testplatine, auf der sich dann nur der MC und sein ISP-Header befanden. Auf den "normalen" Platinen befinden sich zwei Kerkos und auch ein Elko. Es lag aber nicht an den Kondensatoren (hätte mich auch gewundert).
Bekommt der die gleichen 4.5V wie das Display?
Ja. Alles läuft mit der selben Spannung aus 3x 1,5V Primärzellen.
MCU und Sensoren würden auch mit 3V laufen, aber das Display hat dann keinen Kontrast mehr. Und wenn man eine zusätzliche negative Spannung erzeugen würde, dann macht das die Stromsparbemühungen wahrscheinlich zunichte.
Aussichtsreicher erscheint der Umstieg (bei der nächsten Variante) auf EA DOGM081L oder so etwas wie DE133-R.
das mit den Kerkos bitte nicht falsch verstehen. Das war lediglich eine
Testplatine, auf der sich dann nur der MC und sein ISP-Header befanden.
Dann erwarte nicht, dass der µC auf der Testplatine normal arbeitet.
Und wenn man eine zusätzliche negative Spannung
erzeugen würde, dann macht das die Stromsparbemühungen wahrscheinlich
zunichte.
Du könntest in die Masseleitung eine Diode schalten - die würde 2ct kosten.
Dann hättest du deine negative Hilfsspannung. Die Stromsparbemühungen würde das nicht tangieren.
Doch, der arbeitet normal. Das mag jedoch in einer Feldumgebung anders aussehen. Hier ging es aber um Laborbedingungen.
Du könntest in die Masseleitung eine Diode schalten - die würde 2ct kosten.
Nette Idee, aber wenn ich das DB richtig verstehe, dann ist die Spannung für den Kontrast die Summe von VDD und V0. Und das Display braucht ~ 4,5V für den Kontrast. Da ist es egal, wie ich die 3V aufteile, das ist einfach zu wenig.
Aber nur, weil du mehr Glück als Verstand hast. Wer einen Mikrocontroller ohne Entkoppelkondensator an der Versorgungsspannung betreibt, betreibt ein Glücksspiel.
Alles läuft mit der selben Spannung aus 3x 1,5V Primärzellen.
MCU und Sensoren würden auch mit 3V laufen, aber das Display hat dann
keinen Kontrast mehr.
Was machst du denn, wenn die Batterien nicht mehr ganz voll sind? Die Spannung sinkt doch kontinuierlich bis auf 3x 0,9V ab. Erst dann sind sie verbraucht.
Aussichtsreicher erscheint der Umstieg (bei der nächsten Variante) auf
EA DOGM081L oder so etwas wie DE133-R.
Wenn DU richtig Strom sparen willst, nimmst Du sowas hier
https://www.orientdisplay.com/standard_lcd/od-502.pdf
und einen AVR oder PIC, der einen passenden LCD Controller drin hat. Bei solchen statischen Displays könnte man das auch in Software machen, aber die LCD-Controllerhardware braucht weniger Strom.
Ja. Alles läuft mit der selben Spannung aus 3x 1,5V Primärzellen.
MCU und Sensoren würden auch mit 3V laufen, aber das Display hat dann
keinen Kontrast mehr.
Dann überlege, ob nicht Dein Gesamtkonzept grob unsinnig ist. Ein 328 kann klaglos mit einem LiIon-Akku laufen, der auch mit einem 3V3-LDO wie MCP1702 noch weit genug entladbar ist.
Gibt es eigentlich keine LCDs mit 44780 und 3,3 Volt? Ich habe einen Aufbau 0,96"-OLED an einem LiIon-Akku, bin aber weder mit dessen Helligkeit noch Ressourcenbedarf glücklich.
Das ziehe ich bei der nächsten Entwicklung in Betracht. Allerdings brauche ich dann wieder irgendwelche Schieberegister (o.ä.), denn dafür hat der MCU einfach nicht genug Ports. Da befürchte ich aber, daß die erweiterte Elektronik dann mehr Strom verbraucht als ein sparsames Display.
LiIon-Akku
Kommt aus Sicherheitsgründen nicht in Frage. Dann eher noch eine Primärzelle mehr.
Vermutlich reicht die Laufzeit auch so. Es handelt sich um Meßgeräte für den Kurzzeiteinsatz.
Das ziehe ich bei der nächsten Entwicklung in Betracht. Allerdings
brauche ich dann wieder irgendwelche Schieberegister (o.ä.), denn dafür
hat der MCU einfach nicht genug Ports. Da befürchte ich aber, daß die
erweiterte Elektronik dann mehr Strom verbraucht als ein sparsames
Display.
Man muss halt bei Batterieschaltungen mehr können, als Svensson bisher kann. Man muss damit rechnen dass die Batteriespannung sinkt und passende Bauteile aussuchen, genau so wie energiesparende.
Bei einen nicht-gemultiplexten LCD wie im Link tut es ein normaler
CMOS-Ausgang wie jeder AVR Port.
Sicher, kann man so machen. Ist dann aber Mist, weil die dedizierte Hardware stromsparender ist. Da kann der Prozessor dauerhaft im Sleep verweilen, und nur der LCD Controller ist aktiv. Das sind deutlich weniger Gatter.
Du kannst den 44700 mit 3.3V betreiben, brauchst aber VEE von -1.7V
damit das Display 5V sieht. Nichts gewonnen.
Was soll sein, die negative Spannung kann man mit einer Ladungspumpe erzeugen - auch als 'Abfallprodukt' aus einem Schaltregler.
7-Segment LC-Anzeigen kommen mit 3 - 5 V problemlos klar, was aber im aktuellen Fall nicht hilft. Vielleicht wäre eine Versorgungsspannungswandlung mit Aufwärts- oder Abwärtswandler sinnvoll, die mit passenden Bauteilen effizient arbeiten können.
Erfahrungsgemäß ist es am einfachsten einmal irgendwo 5V für das LCD zu erzeugen, Ansteuerung über 5V Seriell zu Parallel Bausteine (PCF8574 z.B.) und die serielle Schnittstelle dann 3V kompatibel zu machen, was bei I2C kein Thema ist.
Ich hab mir mal Spannungs Controller rausgeschrieben, um stromsparend arbeiten zu koennen :
TPS62056 von 10..2.7V in auf 3.3V, mit 12uA Eigenverbrauch, und 1.5uA im Standby. Arbeitet mit bis 1.2MHz.
Dann würde ich beim nächsten Mal folgenden Weg probieren:
2 Zellen mit nominal 3V. Dann einen Schaltregler Step-Up auf ca. 4,5V. Als Display ein 7-Segment LCD mit ein paar 74HC595 zur Ansteuerung.
Damit müßte sich die Betriebsdauer deutlich verlängern lassen.
Dann würde ich beim nächsten Mal folgenden Weg probieren:
2 Zellen mit nominal 3V. Dann einen Schaltregler Step-Up auf ca. 4,5V.
Als Display ein 7-Segment LCD mit ein paar 74HC595 zur Ansteuerung.
7-Segment LCD-Gläser müssen mit Wechselspannung betrieben werden, damit sie nicht durch Elektrolyse beschädigt werden. Schieberegister sind hier nicht die ideale Lösung. Ja, kann man zur Not machen, aber dann muss der Prozessor diese selber erzeugen, was wieder extra Strom verbraucht. Besser einen Prozessor, der einen passenden Controller bereits enthält, oder einen extra LCD-Treiber für segmentierte Gläser verwenden. Such Dir hier einen passenden aus:
https://www.nxp.com/docs/en/brochure/LCDDISDRSOLBR.pdf
Schieberegister sind hier nicht die ideale Lösung.
Möchte ich so pauschal nicht bestätigen - 8-stellige Anzeige (LCD-Glas 'DE 125') per 8* HC595 mit einem AVR16DD28 angesteuert benötigt hier unter 10 uA (bei 3.0 V).
Schieberegister sind hier nicht die ideale Lösung.
Möchte ich so pauschal nicht bestätigen - 8-stellige Anzeige (LCD-Glas
'DE 125') per 8* HC595 mit einem AVR16DD28 angesteuert benötigt hier
unter 10 uA (bei 3.0 V).
So sieht es aus! Auch ein ATmega oder STM32G0xx/L0xx sollte hinreichend wenig Strom verbrauchen. Die statischen LC-Anzeigen laufen in einem weiten Versorgungsspannungsbereich. 3 V oder 5 V sind egal.
Der Vorteil bei der Geschichte: man kann alle Anzeigen mit passender Anzahl an SR ansteuern - hier werden ja 10 Stellen gebraucht.
Solange es irgendwie geht, würde ich bei den AVR bleiben. Sonst müßte ich viel zu viel umstellen und evtl. auch noch neue Werkzeuge besorgen, usw.
7-Segment LCD-Gläser müssen mit Wechselspannung betrieben werden, damit sie nicht durch Elektrolyse beschädigt werden.
Gilt das allgemein? Muß das eine Wechselspannung sein oder reicht auch eine "gepulste" Gleichspannung?
oben genannte Anordnung läuft auch (gerade noch) mit 2.0 V.
Das wäre ideal, weil ich dann einfach bei den 3 Zellen bleiben könnte. Wenn die entladen sind, dann wäre das System bei 0,9V pro Zelle immer noch funktionsfähig.
Der Vorteil bei der Geschichte: man kann alle Anzeigen mit passender Anzahl an SR ansteuern - hier werden ja 10 Stellen gebraucht.
Ich käme - ohne großen Funktionsverlust - auch mit 8 Stellen aus, da würde ein einziges Display DE 125 ausreichen.
Gilt das allgemein? Muß das eine Wechselspannung sein oder reicht auch
eine "gepulste" Gleichspannung?
Die Wechselspannung wird durch die Schieberegister so erzeugt, daß ein Pin die BP und die restlichen die Segmente ansteuern: http://mino-elektronik.de/7-Segment-Variationen/LCD.htm#lcd1
Man kann die 4-stelligen Anzeigen einfach kaskadieren.
Wenn die angezeigten Werte sich nicht schnell ändern, kann mit sehr niedriger Frequenz gearbeitet werden, was die Stromaufnamhe weiter senkt.
Muß das eine Wechselspannung sein oder reicht auch
eine "gepulste" Gleichspannung?
siehe Anhang
PS:
Backplane und Segmente werden im Wechsel komplementär angesteuert mit hinreichend hoher Frequenz, 50 Hz sollten reichen, in meiner Studie nehme ich 32 Hz.
Der Vorteil bei der Geschichte: man kann alle Anzeigen mit passender Anzahl an
SR ansteuern - hier werden ja 10 Stellen gebraucht.
Ich käme - ohne großen Funktionsverlust - auch mit 8 Stellen aus, da
würde ein einziges Display DE 125 ausreichen.
Der Nachteil an diesen quasi-statisch betriebenen LCD ist halt, daß sie so viele Pins brauchen. Einen pro Segment plus einen für die Backplane. Deswegen findet man LCD mit vielen Segmenten nur selten für diese Art der Ansteuerung.
Man kann auch gemuxte LCD mit GPIO ansteuern (siehe obigen Link) aber das wird schnell aufwendig. Und stromsparend ist es dann auch nicht mehr. Dann verwendet man besser einen separaten LCD Driver wie z.B. HT1621.
Der Nachteil an diesen quasi-statisch betriebenen LCD ist halt, daß sie
so viele Pins brauchen. Einen pro Segment plus einen für die Backplane.
Deswegen findet man LCD mit vielen Segmenten nur selten für diese Art
der Ansteuerung.
Der Vorteil bei 13 mm Anzeigen ist, daß man die SRs passend darunter bestücken kann (siehe obiger Link) und ohne Multiplexen der Kontrast sehr hoch ist.
Das ist sehr nett. Vielleicht komme ich darauf zurück, denn das würde mir viel Lötarbeit (für das Muster) ersparen.
Wahrscheinlich ist es auch besser, als Grundelement eine 4stellige Anzeige zu nehmen, die flexibler eingesetzt werden kann, als eine 8stellige Anzeige.
Backplane und Segmente werden im Wechsel komplementär angesteuert
Danke für die guten Erklärungen. Ich glaube, daß ich es verstanden habe. Irrtümlich hatte ich gedacht, daß die LCD-7-Segment so funktionieren wie die LED-7-Segment. Letztere habe ich schon verbaut (wegen Sichtbarkeit auf größere Entfernungen und unter schlechten Lichtverhältnissen, aber mit Netzstromversorgung), erstere hingegen noch nie.
Ich vermute stark, daß die Displaymodule mit dem HD44780 (bzw. Klone) dann wahrscheinlich intern auch so arbeiten?
Ich vermute stark, daß die Displaymodule mit dem HD44780 (bzw. Klone)
dann wahrscheinlich intern auch so arbeiten?
Die haben sehr viel mehr Segmente - jedes Pixel ist eins. Und davon hat man 5×8 (gelegentlich auch 5×10) × Anzahl Zeilen × Anzahl Spalten. Also für ein hundsgewöhnliches 2x16 LCD schon mindestens 1280 Segmente.
Der HD44780 arbeitet mit 5 Spannungsleveln. Entsprechend kompliziert sind die Signalformen.
Möchte ich so pauschal nicht bestätigen - 8-stellige Anzeige (LCD-Glas
'DE 125') per 8* HC595 mit einem AVR16DD28 angesteuert benötigt hier
unter 10 uA (bei 3.0 V).
Heute habe ich meine Schaltung mit ATtiny44 und 4-stell. LCD bei 3 V mit statischer Anzeige "1234" gemessen: 35 µA. Davon werden für die Anzeige selbt ca. 10 µA benötigt (Differenz bei abgeschaltetem Display).
Interner 8 MHz Takt, herausschieben der Daten per C-Routine, WDT als Timer mit 16 ms Zyklus und die CPU schläft in den Pausen.
Dies zur Einschätzung, was auch ein ATmega328 schaffen sollte.
Zur Differenz zu meiner "Studie": nur halber LCD-Takt mit 32 Hz, erzeugt vom RTC-PIT des AVR16DD28, welcher nur 1.0 uA benötigt. Des weiteren sind die Schieberegister in zwei SPI-Stränge a vier 74HC595 aufgeteilt, SPI-Takt 8 MHz. Alles in Assembler.
was auch ein ATmega328 schaffen sollte
Bei diesem sollte der asynchrone Timer2 mit 32 KiHz-Quarz auch nur bei etwa 1 uA liegen.
Bei mir sind auf der Platine HEF4094 bestückt, die bei 3 V und Assemblerprogrammierung bzw. Hardware-SPI nicht mehr mitkämen.
Zudem ist es auch sinnvoll, die Batterien durch moderate Stromentnahme zu leeren, bevor sie noch halb geladen auslaufen ;-)
Willst du damit sagen, dass entladene Batterien harmloser auslaufen?
Ich habe mir lediglich erlaubt, einen kleinen Scherz zu machen.
Angenommen, der TO bekommt seine Anwendung mit insgesamt 50 µA mittlerer Stromaufnhame hin und verwendet eine zeitgemäße LiIon-Zelle mit 3 Ah. Diese würde rechnerisch für etwa acht Jahre die Schaltung versorgen.
Wenn er nur 5 µA braucht, kommt er auf 80 Jahre. Ist das denn notwenig?
Hach, schon wieder ein kleiner Scherz zum Freitag Abend.
Nö, wohl kaum. Eine Betriebszeit von 500h wäre super, aber selbst 180h wohl noch akzeptabel. Bei einer Nutzung von täglich 1/2 Stunde würde das dann für mehr als 1 Jahr ausreichen. Nach einem Jahr darf man dann auch die Schrauben lösen und die Zellen aus dem Batteriehalter entnehmen und neue einsetzen.
Eine Betriebszeit von 500h wäre super, aber selbst 180h
wohl noch akzeptabel. Bei einer Nutzung von täglich 1/2 Stunde würde das
dann für mehr als 1 Jahr ausreichen.
Dafür reicht doch aber Deine jetzige Schaltung schon? Einen LiIon-Akku + Aufwärtswandler für 5 V, dazu eine kleine TP4056 Ladeplatine mit USB-Stecker und man ist mobil und kann überall nachladen.
Oder noch einfacher, man nimmt eine Powerbank mit Wachhalteschaltung, was der ATmega328 mit erledigen kann.
Dafür reicht doch aber Deine jetzige Schaltung schon?
Ich weiß nicht genau, wie lange die 3 AAA-Zellen den Stromverbrauch von 2,1mA aushalten bevor man das Display nicht mehr ablesen kann. Ich hoffe, daß es zumindest die 200h sind.
Ein LiIon-Akku kommt - wie bereits oben gesagt - aus Sicherheitsgründen für mich nicht in Betracht, dann lieber Batterien wechseln. :)
Außerdem möchte ich gern auch dazulernen, um beim nächsten batteriebetriebenem Gerät besser vorbereitet zu sein.
7-Segment LCD-Gläser müssen mit Wechselspannung betrieben werden, damit sie
nicht durch Elektrolyse beschädigt werden.
Gilt das allgemein? Muß das eine Wechselspannung sein oder reicht auch
eine "gepulste" Gleichspannung?
Reicht, wenn man es richtig steuert.
Es muss reine Wechselspannung über dem Segment anliegen (Gleichspannungsanteil = 0), also zur Ansteuerung je eine Halbbrücke pro Elektrode, angesteuert mit dem passenden Timing.
ich muß eigentlich nur 2 fünfstellige Zahlen anzeigen können
Ein Denkanstoß, wenn vielleicht auch etwas weit hergeholt: "Multiplex-Betrieb" im weitesten Sinne.
Ich habe ein kleines Kästchen, das auf 2-stelligem LCD-Glas die drei Werte Temperatur, relative Feuchte und Luftdruck anzeigt; nacheinander im Sekundenrhythmus. Den Luftdruck modulo 100, und um bei niedrigem eine Verwechslung mit der Feuchte auszuschließen, wird einer der Dezimalpunkte als Kennung verwendet. Messung jede Minute (Luftdruck alle 10'). Strom im zeitlichen Mittel unter 3 uA, Versorgung aus 3 V-Knopfzelle.
Wenn man sich einschränkt und auf Komfort verzichtet, ist vieles möglich (und man spart an Aufwand bei der Hardware).
Und Mi N. wird nun sicher auch hierzu ein Spaß einfallen ...
Ich weiß nicht genau, wie lange die 3 AAA-Zellen den Stromverbrauch von
2,1mA aushalten bevor man das Display nicht mehr ablesen kann. Ich
hoffe, daß es zumindest die 200h sind.
Ich weiß nicht genau, wie lange die 3 AAA-Zellen den Stromverbrauch von
2,1mA aushalten bevor man das Display nicht mehr ablesen kann.
Rechnerisch sind es ca. 500 Stunden, was Dir ja reichen sollte. Bei diesen Display ist aber eine konstante Versorgungsspannung Pflicht. Weiter oben wurden doch Aufwärtswandler mit sehr gutem Wirkungsgrad vorgeschlagen, die ich auf jeden Fall einsetzen würde. Damit stehen dann 5 V bis zur völligen Entleerung der Zellen zur Verfügung. Vielleicht gibt es bei Ali irgendwelche kleinen Platinen in Fingernagelgröße zu 50 ct im 10er-Pack.
Ein suboptimales Beispiel mit niederiger Schaltfrequenz:
https://de.aliexpress.com/item/32809095271.html
Diese Platine könntest Du vermutlich noch irgendwo 'anpappen' und hättest Deine jetzige Schaltung bezüglich der schwanken Vbatt gerettet.
Dann bist du schätzungsweise schon auf 1,2 Volt (pro Zelle) runter.
Gilt dieser (schlechte) Wert auch bei dem doch sehr niedrigen Strom von 2.1 mA? Gibt es entsprechende Entladekurven - ich habe auf die Schnelle nur das im Anhang gefunden.
Angeblich haben die Microzellen so zwischen 1100mAh bis 1450mAh. Rechnerisch wären das dann 523 bis 690h.
Die Primärzellen sind vom Discounter mit vier Buchstaben, beginnend mit A..., da gibt es kein Datenblatt und wahrscheinlich schwank die Qualität auch stark.
Natürlich hatte ich ausprobiert (Labornetzteil), wann der MCU und das Display nicht mehr funktionieren. Leider habe ich die Grenze wieder vergessen. Das Display lief auf alle Fälle nicht mehr mit 3V, der MCU aber schon.
Die Idee von Mi N. mit dem kleinen Step-Up ist nicht schlecht. Den könnte ich garantiert noch unterbringen, denn die Platine ist nicht voll.
Bei einer Neuauflage könnte ich dann auch auf 2 AA statt 3 AAA gehen und müßte etwa den gleichen Energiegehalt haben:
2 x 1,3V x 2800mAh x 0,80 (eta) = 5824 mWh
3 x 1,3V x 1400mAh x 1 = 5460mWh
Reicht, wenn man es richtig steuert.
Es muss reine Wechselspannung über dem Segment anliegen
Das habe ich jetzt verstanden. Und die Idee mit dem Zweierkomplement und der Verwendung von 2 IO finde ich genial.
Mir war halt nicht klar, daß die LCD - die in meiner Erinnerung aus irgendwelchen Polymeren in einer Flüssigkeit bestehen - Schaden nehmen können, wenn sie mit Gleichspannung verdreht werden.
Wieder was gelernt, aber deshalb bin ich ja auch hier!
Übrigens ist mein Plan, alle Vorschläge einmal auszuprobieren, also EA DOG-Display (0,25mA), LCD mit Schieberegister und Step-Up.
Angeblich haben die Microzellen so zwischen 1100mAh bis 1450mAh
Klingt plausibel. Bei meinen Tests vor ca. 10 Jahren mit Zellen von Aldi, Rossmann und Ikea kam ich auf ca. 1000 mAh. Seit dem haben sie sich vermutlich nicht merklich verbessert. Die Physik und Chemie ist ja noch die gleiche.
Inzwischen habe ich eine Variante gebaut, die einen Schaltregler als Spannungswandler nutzt. Sind nur 5 Bauteile auf einer ca. 1cm^2 kleinen Platine. Natürlich kann ich den auch direkt in die Schaltung einbauen bei einem Redesign. Ich würde dann ca. 2-3cm^2 benötigen, weil ich möglichst viele Bauteile in THT einsetzen würde.
Nach meinen Messungen macht der selbst aus 0,7V noch 5V, so daß das Display gut ablesbar ist. Damit wäre dann sogar der Betrieb mit einer Zelle möglich.
Trotzdem verwende ich ihn mit zwei Microzellen (weil ich die Halter schon gekauft hatte). Bei einer Änderung könnte ich dann auf 2x Mignon gehen, wodurch sich die Betriebsdauer glatt verdoppeln sollte.
Es ist der ME2108A50PG von Nanjing Micro One Electronics aus China. Der kommt mit einer Spule, einer Schottky-Diode und einem Kondensator aus.
Ich habe ihm noch einen weiteren Elko spendiert.
Da ist nichts einstellbar. Einfach auf der einen Seite 0,9-6,5V rein und auf der anderen 5,0V raus. Die 400mA gelten aber nur bei Spannungen über 3V, aber mir reichen auch die 100mA locker.
Der ist aber Bauform SOT89-3. Schaltfrequenz sind nur 180kHz, aber das finde ich gut, weil ich hoffe, so keine EMV-Störungen zu produzieren.
Spule habe ich 220µH gewählt (weil schon vorhanden).
Das ist nur eine Überschlagsrechnung. Ich habe einfach die Kapazitätsangaben der Hersteller völlig ungeprüft übernommen.
Da ich im Mittel ja nur ca 2mA entnehme, denke ich, daß man das einfach so machen kann.
Bei der Variante mit dem Schaltregler werde ich mal zwei Batterien opfern und einen Dauertest machen. 200h sind ja nur 8,5d, das kann man ausprobieren.
Die 200h sind aber auch nur ein selbstgestecktes Ziel, wenn es doch nur 180 sind, wäre das auch okay.
Es ist der ME2108A50PG von Nanjing Micro One Electronics aus China. Der
kommt mit einer Spule, einer Schottky-Diode und einem Kondensator aus.
Ich habe ihm noch einen weiteren Elko spendiert.
Da ist nichts einstellbar. Einfach auf der einen Seite 0,9-6,5V rein und
auf der anderen 5,0V raus.
Gut, der Schaltregler arbeitet mit 180 kHz und braucht noch eine Diode. Aber achte bitte darauf, keine 6,5 V an den Eingang zu legen, da wegen der Diode Vout nur minimal kleiner sein kann als Vin.
Der HE9118 arbeitet mit typ. 360 kHz und braucht keine Diode zusätzlich.
Nun habe ich auch einmal einen fliegenden Aufbau zusammengelötet und grob den Wirkungsgrad bei Vin = 1,1 V (@ 5,9 mA), Vout 5 V und 4,7 kOhm Lastwiderstand überschlagen: knapp über 80 %, was lt. Datenblatt auch zu erwarten ist. Der Ruhestrom ohne Last liegt bei 50 µA etwas über dem Nennwert, was vermutlich an der billigen Spule liegt. Aber das ist nicht mein Problem.
Was ich mit dem Oszilloskope sehe: Der Kondensator am Eingang sollte gerade bei kleinen Vin nicht zu klein sein und einen niedrigen ESR aufweisen.
Heute habe ich meine Schaltung mit ATtiny44 und 4-stell. LCD bei 3 V mit
statischer Anzeige "1234" gemessen: 35 µA. Davon werden für die Anzeige
selbt ca. 10 µA benötigt (Differenz bei abgeschaltetem Display).
Interner 8 MHz Takt, herausschieben der Daten per C-Routine, WDT als
Timer mit 16 ms Zyklus und die CPU schläft in den Pausen.
Dies zur Einschätzung, was auch ein ATmega328 schaffen sollte.
Gut, der Schaltregler arbeitet mit 180 kHz und braucht noch eine Diode.
Aber achte bitte darauf, keine 6,5 V an den Eingang zu legen, da wegen
der Diode Vout nur minimal kleiner sein kann als Vin.
Stimmt. Habe ich einfach aus dem Datenblatt unreflektiert abgeschrieben. In meiner Schaltung kann selbst mit drei (wenn die erste Schaltungsvariante "nachgerüstet" wird) Primärzellen a 1,65V = 4,95V noch nichts passieren.
Was ich mit dem Oszilloskope sehe: Der Kondensator am Eingang sollte
gerade bei kleinen Vin nicht zu klein sein und einen niedrigen ESR
aufweisen.
Lt. Datenblatt kommt die Schaltung sogar ohne Kondensator am Eingang aus. Auf einen niedrigen ESR habe ich natürlich geachtet
Die Informationen waren schon da, nur eben nicht in dem Schaltplan. Weiter oben im Text stand schon, daß es sich um Primärzellen mit 1,5V handelt.
Außerdem ist der gezeigte Schaltplan (bisher) nur ein Gedankenspiel. Es ging mir hauptsächlich darum, ob da noch etwas beachtet werden müsse, also z.B. ob sich die Schaltregler gegenseitig stören können und deshalb noch Filter an den Eingängen brauchen.
Man sieht auch, daß die Induktivitäten nicht angegeben sind, weil ich da unsicher bin, wie die genau zu berechnen sind.
Wenn ich die Formeln anwende, dann müßte L größer werden, wenn I kleiner wird. Bei einem Ausgangsstrom von 4mA bin ich da bei 220µH gelandet. Gefühlt finde ich das "riesig".
Ein Gerät wurde mit einem Spannungswandler ausgestattet und einem Dauertest unterzogen. Es hat mit zwei Micro Alkaline Primärzellen tatsächlich die 200 Stunden Dauerbetrieb durchgehalten. Das Display ist nach 200h immer noch so gut ablesbar wie beim Start des Versuchs mit frischen Zellen. Also genau das, was ich wollte!
Wenn man annimmt, daß eine AAA-Primärzelle 1000mAh bei 1,3V liefert, dann wären das insgesamt 2600mWh. Also liegt die Schaltung durchschnittlich unter 13mW Leistungsaufnahme.
Und da auf meiner Platine Halterungen für 3 AAA-Zellen vorgesehen sind, müßte sich die Laufzeit mit drei Zellen dann auf 300h ausdehnen lassen, wenn das denn jemals notwendig werden sollte.