Forum: Fahrzeugelektronik Hilfe für Strompufferlösung bei ESP32 gesucht


von Christian (creekree)


Lesenswert?

Hallo,

Dies ist mein erster Post hier. Ich wende mich an euch da ich das Gefühl 
habe das hier eine Menge Leute unterwegs sind die sich mit Elektronik 
auskennen und Wissen jenseits von Instructables und Co haben. Eventuell 
ist meine Frage auch ziemlich einfach.

Also, ich brauche Hilfe um für meine spezifische Anwendung eine 
Strompufferlösung zu finden, ich denke in Richtung Supercap.

Zu Erklärung: Ich habe für mein Motorrad ein digitales Anzeigeinstrument 
gebaut. Dieses basiert auf einem ESP32, welcher über Multiplexer 
LED-Anzeigen bespielt (Bargraph) und ein weiteres 4-stelliges 7-Segment 
Display. Am ESP32 hängen auch zwei Unterdrucksensoren sowie ein 
RS232-Modul.
Aus der schwankenden Bordspannung des Motorrades wird mit einem 
Spannungswandlermodul eine stabile Versorgungsspannung von 5V generiert 
- nicht 3V3, da die LED-anzeigen eben 5V brauchen. Der ESP32 macht seine 
3V3 halt über seinen eigenen Spannungswandler.
 Das 7-Segment und die Unterdrucksensoren stammen von Adafruit, die 
Bargraph-anzeige von mir. Das Spannungswandlermodul ist, glaube ich, von 
Polulu, das RS232-Modul von Waveshare. Das System läuft seit ca 
20.000km, ich behaupte mal das wird es weiterhin tun.

Aber:
Wenn ich die Zündung des Motorrades einschalte fährt das System hoch und 
ist betriebsbereit. Im setup() des ESP32 werden die Unterdrucksensoren 
auf den Umgebungsdruck kalibriert, dies ist wichtig um einen 
Referenzwert zu generieren gegen den bei laufendem Motor verglichen 
wird.
Das Instrument hat in diesem Stadium eine Stromaufnahme von maximal 
100mA, wenn ich der Anzeige meines Labornetzteiles trauen kann. Dies 
bezieht sich auf eine Spannungsversorgung von 12V VOR dem verbauten 
Spannungswandler. Drehe ich am Labornetzteil die Spannung auf 5V2 runter 
sind es 180mA.

Drücke ich den Anlasserknopf springt der Anlasser an (was sonst…) und 
der Motor startet. Wenn dieser allerdings kalt ist, es draussen kalt 
ist, die Karre ein paar Tage nicht gelaufen ist, das Öl zähflüssig ist… 
ja dann orgelt der Anlasser erstmal ordentlich und zwingt die Batterie 
kurz in die Knie. Dabei kann die Batteriespannung kurzfristig für 
weniger als eine Sekunde (bei Aufwärtsbewegung der Kolben, also 
maximaler Wiederstand im mechanischen System) bis auf ca 5V einbrechen. 
Dem Motorrad ist das egal, es startet.
Tja, und der ESP32? Der resettet, da der Spannungswandler nun nicht 
genug Eingangsspannung bekommt um daraus 5V zu basteln.
Das Resultat ist, das die Startroutine ein weiters Mal durchlaufen wird, 
aber die Unterdrucksensoren bei laufendem Motor einen Referenzwert 
generieren. Der hat dann aber nix mehr mit dem Umgebungsdruck zu tun und 
meine Anzeigen beginnen zu lügen.

Ich möchte also gerne einen Strompuffer integrieren, der den kurzen 
Wegfall der 5V überbrücken kann. Es geht mir nicht darum mein Instrument 
für 2 Wochen im Ultra-Low-Power-Megastromsparmodus zu betreiben, sondern 
nur darum für sagen wir mal 2 Sekunden weiterhin mit 5V versorgen zu 
können während der Anlasser orgelt.

Ich kann löten und Schaltpläne lesen sowie fertige Module 
aneinanderklöppeln, selber Schaltungen entwickeln liegt außerhalb meiner 
Fähigkeiten.Ich kann zwar im Internet recherchieren, habe aber nicht 
brauchbares gefunden, da ich oftmals Lösungsansätze für solarbetriebene 
Projekte oder aber „guck mal, mein uC läuft 2 Wochen wenn ich nur 3x am 
Tag nen Messwert sende“ gefunden habe.

Lange Rede, nun meine Frage: wenn ich NACH dem Spannungswandler einen 
Supercap als Puffer einsetzen will, welche Kapazität müsste der ca. 
haben (es gibt ja welche mit 5V5, der dürfte dann ja in meinem System 
auch nur bis 5V geladen werden?), und kann ich den einfach an Vout und 
GND anschließen, oder muss da noch mehr dran? Dioden, Widerstände? Zu 
bedenken ist in diesem Zusammenhang wahrscheinlich das der 
Spannungswandler des ESP32 auch einen gewissen „Overhang“ braucht um 
weiterhin 3V3 generieren zu können.

Danke das Ihr bis hier gelesen habt, ist ja auch viel Text. Vielen Dank 
für die Hilfe!

Christian

: Verschoben durch Moderator
von Xanthippos (xanthippos)


Lesenswert?

Wenn du bei 1 Farad 1 Sekunde 1 Ampere entnimmst, sinkt die Spannung um 
1 Volt.

Ganz grob überschlagen...

Nehmen wir an, der 3,3V Regler braucht 4 Volt, also die Spannung darf 
von 5V auf 4V sinken.

Und nehmen wir 10 Sekunden an.

100mA? Wahrscheinlich sind die 12V auf 5V ein Schaltregler. Die 
ESP-Platine braucht 180mA, aber bei 12V kommt der Schaltregler mit 100mA 
aus. Nehmen wir 200mA.

1 Volt Spannungsabfall bei 10 Sekunden 200mA ergeben 2 Farad.

von Christian (creekree)


Lesenswert?

Hallo,

Danke für die Antwort!
Diese Überschlagung kann sogar ich nachvollziehen.
Ich habe bei Reichelt diese SuperCaps gefunden: 
https://www.reichelt.de/superkondensator-coin-type-1-0-f-5-5-v-1000-h-ko-dcl5r5105cf-p244440.html?&trstct=pos_7&nbc=1
Für Leute, die sich das Link-klicken sparen wollen: das ist ein 5V5 
SuperCap mit einer Kapazität von 1F.
Zwei von denen parallel sollten dann ja meinen Anforderungen genügen. Da 
Xanthippos von 10 Sekunden ausging tuts eventuell sogar auch einer... 
bei 1,99/Stk tendiere ich dazu gleich drei zu kaufen und zu 
experimentieren.

Damit wäre Frage 1 schonmal geklärt. Wie muss ich den nun anschließen?
Ist es wirklich so einfach wie + an Vout, - an GND meines 
Spannungsreglers?

Christian

von Franko P. (sgssn)


Lesenswert?

Wenn ich ide texte darüber einbeziehe, kommt der Suprcap an den Ausgang 
des 5V-Reglers. Nur der Supercap stellt fü den 5V-Regler zunächst sowas 
wie nen Kurzschluss dar. Die 2 Fahrräder wollen erst mal geladen werden.

von Michael B. (laberkopp)


Lesenswert?

Christian schrieb:
> einschalte fährt das System hoch und ist betriebsbereit. Im setup() des
> ESP32 werden die Unterdrucksensoren auf den Umgebungsdruck kalibriert,
> dies ist wichtig um einen Referenzwert zu generieren gegen den bei
> laufendem Motor verglichen wird.
> Das Instrument hat in diesem Stadium eine Stromaufnahme von maximal
> 100mA, wenn ich der Anzeige meines Labornetzteiles trauen kann

Wie wäre es, bei noch nicht laufendem Motor die ganzen LED noch aus zu 
lassen und den ESP nach setup in den sleep zu schicken ?

Dann sinkt die Stromaufnahme auf Mikroampere.

Dann noch dessen 3.3V nicht aus 5V von einem Schaltregler der selbst 7V 
am Eingang braucht zu beziehen, sondern direkt aus der Bordnetzspannung 
runterzuwandeln (https://www.ebay.de/itm/112598110833 hält genug 
Spannung aus ind liefert dem ESP Strom auch beim Senden) da kann dann 
ein durch eine Diode gehen Entladung geschützter kleiner Kondensator von 
12V bis auf 4V entladen werden, bevor der ESP resettet.

Spart Goldcap und Akku.

von Christian (creekree)


Lesenswert?

Hallo Franko,

danke für den Hinweis. Wie würde man so etwas realisieren?

Michael,
Dein Lösungsansatz ist sicherlich denkbar, ich möchte aber gerne die 
Pufferlösung bevorzugen. Warum? Ohne zu sehr ins Detail gehen zu wollen 
soll der ESP auch bei eingeschalteter Zündung, aber abgeschaltetem Licht 
laufen. Dann wird das Motorrad gestartet. Um jetzt das Licht 
einzuschalten (muss man bei der Fahrt ja ganztägig) muss der 
Zündschlüssel eine Position weiter gedreht werden. Dabei wird die 
Stromzufuhr kurz unterbrochen. Dem Motorrad macht das nix, da der Motor 
durch seine Massenträgheit weiterdreht und dann sofort wieder 
eigenständig startet. Der ESP resettet sich dann allerdings. Zwar nicht 
immer, kommt aber vor. Das will ich komplett ausschließen.

Christian

von Wolf17 (wolf17)


Lesenswert?

Christian schrieb:
> Ich habe bei Reichelt diese SuperCaps gefunden:
> 
https://www.reichelt.de/superkondensator-coin-type-1-0-f-5-5-v-1000-h-ko-dcl5r5105cf-p244440.html?&trstct=pos_7&nbc=1
Der ist aufgrund seines Innenwiderstands für die 100mA ungeeignet!
https://www.reichelt.de/index.html?ACTION=7&LA=3&OPEN=0&INDEX=0&FILENAME=B300%2FDCL.pdf

Die hier sind besser, wegen der beschränkten Lebensdauer sollte man aber 
überdimensionieren.
https://www.farnell.com/datasheets/2900818.pdf

von B. (overdrive)


Lesenswert?

Christian schrieb:
> …
> ja dann orgelt der Anlasser erstmal ordentlich und zwingt die Batterie
> kurz in die Knie.

Ein anderer Ansatz wäre, das Problem ursächlich anzugehen.
Ich vermute einen (schon lange) gebrauchten Pb-Akku als derzeitigen 
Stromlieferanten.

Je nach Motorgröße (kannst ja posten) wäre ein 12V-LiFe-Akku (4S2...3P) 
die Lösung. Dank geringerem Innenwiderstand bricht die Spannung viel 
weniger ein.

von Bauform B. (bauformb)


Lesenswert?

Christian schrieb:
> Der ESP resettet sich dann allerdings. Zwar nicht
> immer, kommt aber vor. Das will ich komplett ausschließen.

Das bekommst du mit Michaels Vorschlag auch, wenn nicht besser:

Michael B. schrieb:
> da kann dann ein durch eine Diode gehen Entladung geschützter
> kleiner Kondensator von 12V bis auf 4V entladen werden,
> bevor der ESP resettet.

Der Kondensator kann viel kleiner sein als einer an den 5V, weil die 
gespeicherte Energie mit dem Quadrat der Spannung wächst. Deshalb kann 
man einen normalen Elko nehmen -> mehr Auswahl und viel höhere 
Lebensdauer.

von Rubble C. (Gast)


Lesenswert?

Speichere den Druck doch einfach im NVM des ESP32 und lies' die Werte 
nach Reset wieder aus. Sind nur 2-3 Zeilen Code.

von Robert G. (robert_g311)


Lesenswert?

Servus,

nur als Idee:

Am Eingang einen Weitbereichs-Schaltregler z.B. von Traco:
https://www.tracopower.com/sites/default/files/products/datasheets/tsr0_5_datasheet.pdf

4.75 - 32 VDC rein, 12V oder 5V halbwegs stabil raus.

Gruß

Robert

von Xanthippos (xanthippos)


Lesenswert?

Michael B. schrieb:
> sondern direkt aus der Bordnetzspannung runterzuwandeln

Wenn du eine Schaltung zur Spannungsversorgung aus einem KFZ-Netz selbst 
zusammenstellen willst:

https://dse-faq.elektronik-kompendium.de/dse-faq.htm#F.23

von Wolf17 (wolf17)


Lesenswert?

Folgende Superkondensatoren von Reichelt sind niederohmig genug, ggf 
zwei parallel schalten: WEC6R0 155QG I.
Sollte der Ladestrom beim einschalten ein Problem sein, dann über >5R 
laden und über parallele Schottkydiode entladen.

von Christian (creekree)


Lesenswert?

Hallo,

ich danke allen für ihre Beiträge!
Ich versuche mal halbwegs alles zu beantworten...

Die Batterie im Moped ist ein LiFePo4 mit vergleichsweise mickrigen 
5.2Ah. Der reicht zum starten aus, es kann aber -wie gesagt- kurzzeitig 
knapp werden. Ich weiss, nicht ideal, aber wegen der Größe und der 
Bauform kommt kein anderer in Frage (der Akku ist im Oberrohr des 
Rahmens untergebracht, also als Stange gebaut). Der Motor ist ein 
2V-Boxer mit 860ccm und leeeicht (hüstel, hüstel) erhöhter Kompression. 
Damit es nicht klingelt ist eine frei programmierbare Ignitech Zündung 
verbaut, mit Kennfeld und allem drum und dran. Das nur am Rande.

Als Spannungswandler auf 5V benutze ich einen LM2596S DC Step Down 
Spannungsregler von ebay.

Lasst uns doch weiterhin davon ausgehen das der Gerät "an sich" fertig 
ist (sowohl Hardware als auch Programmierung) und lediglich eine 
Strompufferung der 5V nachgeflickschustert werden soll.

Wolf17 hat ja Kondensatoren vorgeschlagen, und geschrieben evtl 2 davon 
parallel zu schalten.
Fragen dazu: der zur Ladung vorgeschlagene Widerstand von 5 Ohm (oder 
größer) wird ja wahrscheinlich nicht so ein 1/4W-winzling sein dürfen, 
reicht ein 1W Widerstand?
Die Schottky-diode (sowas wie 1N5819?), die "parallel dazu" geschaltet 
werden soll ist mir auch nicht klar. Parallel wozu? Anders gefragt: kann 
mir jemand sagen wo Anode und Kathode der Diode angeschlossen werden 
müssten?
Bislang bin ich mit meinem Verständnis so weit: Vout--5R--(+C1-)--GND

Es tut mir leid, ich bin mir völlig im Klaren darüber das ich hier einen 
eklatanten Mangel an Grundlagenwissen zur Schau stelle und mein 
kläglicher Versuch ein Schaltbild mit einem Texteditor herzustellen für 
Naserümpfen sorgen könnte...

Christian

von Wolf17 (wolf17)


Lesenswert?

Der Supercap stellt beim einschalten ja erst mal einen Kurzschluss für 
den 5V Regler dar. Die >5R zur Strombegrenzung sind nur nötig, wenn der 
Regler damit nicht klar kommt, also probieren ob es ohne geht.
Anfangsleistung ist kurz 5V 1A =5W, ein 1W Drahtwiderstand könnte 
reichen. Oder auf 10R erhöhen.
Der C wird über den R strombegrenzt geladen, die parallele Diode liefert 
den Entladestrom direkt an den Verbraucher. Der Entladestrom fließt "in 
Diodenpfeilrichtung" vom C zur Last. Anode also an den C.

von Christian (creekree)


Lesenswert?

Wolf17,

Danke!

Also so?

Vout--5R--(+C1-)--------GND
          |
           -(aD1k)--VinESP

Sagt mal... gibt es da eigentlich spezielle Tools um so 
ASCII-Schaltbilder zu erzeugen? Oder wie macht man sowas?

Christian

: Bearbeitet durch User
von B. (overdrive)


Angehängte Dateien:

Lesenswert?

Christian schrieb:
> Die Batterie im Moped ist ein LiFePo4 mit vergleichsweise mickrigen
> 5.2Ah. Der reicht zum starten aus, es kann aber -wie gesagt- kurzzeitig
> knapp werden. Ich weiss, nicht ideal, aber wegen der Größe und der
> Bauform kommt kein anderer in Frage (der Akku ist im Oberrohr des
> Rahmens untergebracht, also als Stange gebaut). Der Motor ist ein
> 2V-Boxer mit 860ccm und leeeicht (hüstel, hüstel) erhöhter Kompression.

Die 5.2Ah LiFe entsprechen etwa 14...15Ah Pb-Akku (~ OEM-BMW).
Dann könnte der Spannungsverlauf (gelb) in etwa so (Bild) aussehen.

von Wolf17 (wolf17)


Lesenswert?

Christian schrieb:
> Also so?
>
> Vout--5R--(+C1-)--------GND
>           |
>            -(aD1k)--VinESP

Nein, 5R und Diode parallel.

Vout-----------VinESP
     |     |
     5R    K
           A
     |     |
     -------
       C
      GND

Eventuell braucht man noch eine weitere Schottkydiode nach der 5V 
Quelle, damit der Kondensatorstrom beim Spannungseinbruch nicht 
rückwärts in die Quelle abfließt.
Vout-A>K--------------
           |     |

: Bearbeitet durch User
von Christian (creekree)


Lesenswert?

Vielen Dank!

Ich werde nächste Woche mal bei Reichelt bestellen, ich melde mich 
zurück wenn ich beim Testaufbau bin!

Christian

von Christian M. (christian_m280)


Lesenswert?

Christian schrieb:
> gibt es da eigentlich spezielle Tools um so ASCII-Schaltbilder zu
> erzeugen?

AACircuit:
https://josoansi.de/download.php

Gruss Chregu

von Christian (creekree)


Lesenswert?

Hallo,

ich habe jetzt Zeit gefunden mich der Sache anzunehmen.

Ganz herzlichen Dank an Wolf17 für den wertvollen Input!

Ich habe die vorgeschlagenen Kondensatoren genommen und 2 davon parallel 
geschaltet, komme also auf eine Kapazität von 3 Farad. Den bislang 
diskutierten Widerstand von 5 Ohm habe ich mit 2 parallel geschalteten 
12 Ohm 1W Widerständen umgesetzt. Dazu eine Schottky parallel, und wie 
angemerkt eine weitere Schottky direkt nach Vout meines 
Spannungsreglers. Den durch diese Diode bedingten Spannungsabfall konnte 
ich mit einem Trimmpoti am Spannungsregler kompensieren, jetzt habe ich 
auch nach der Diode 5V anliegen.
Was soll ich sagen? Et läuft.
zwar war ich etwas überrascht festzustellen das die Kondensatoren 
weitaus länger brauchen geladen zu werden (einen konkreten Wert habe ich 
nicht zur Hand), aber das eventuell auftretenden Probelm, das ein 
motorradseitiger Spannungswegfall "zu früh" erfolgt löse ich halt über 
Wetware: Zündung ein, Helm aufsetzten, Handschuhe an, Kondensator voll.

Der ESP läuft jetzt ca. satte 7 Sekunden weiter bevor er resettet. Das 
gibt mir alle Zeit der Welt die Karre anzuorgeln bzw. den Zündschlüssel 
von "kein Licht" auf "mit Licht" zu drehen. Das ist -mal ganz unter uns- 
zwar noch alles nicht in der Realität erprobt, aber heute Abend 
ausgiebig mit Manipulation am Labornetzteil getestet. Da die 
Unterdrucksensoren am Krad und nicht am Schreibtisch montiert sind 
lauert da vielleicht noch eine Überraschung - wenn der ESP jetzt nur 5s 
statt 7s weiterläuft ist das aber auch völlig schnuppe.
Lustig ist in dem Zusammenhang übrigens wie lange die LEDs der 
7Segment-Anzeige noch nachleuchten... das sind mehrerere Minuten.

Also, Danke an Alle für den Input, Wolf17 habe ich oben ja bereits 
gewürdigt, tue es an dieser Stelle aber nochmals: Danke Dir!


Christian

von Michael D. (nospam2000)


Lesenswert?

falls du das WLAN des ESP32 nicht benötigst, dann kannst du das noch 
deaktivieren bzw. garnicht erst aktivieren oder erst später aktivieren 
um Strom zu sparen:
1
esp_err_t results = esp_wifi_start();
2
esp_err_t results = esp_wifi_stop();

 Michael

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.