Forum: Analoge Elektronik und Schaltungstechnik Netzteil und Akku - 3.3V Ladeschaltung für LicheeRV Nano mit Lith.-Akku


von Andreas (sandreas)


Lesenswert?

Hallo zusammen,

also zunächst mal muss ich bemerken, dass es dazu bestimmt schon 
Beiträge hier gibt, habe aber trotz längerer Suche keine (brauchbaren / 
modernen) gefunden. Der hier 
(Beitrag "Akku_bei_MP3-Player") wäre im Prinzip etwa was 
ich machen möchte, aber der ist von 2009 und scheint von einem Anfänger 
erdacht zu sein - da würde ich vermuten, gibts vielleicht inzwischen 
Entwicklungen.

Worum geht es?
- Ich möchte einen LicheeRV Nano 
(https://wiki.sipeed.com/hardware/en/lichee/RV_Nano/1_intro.html#Specifications) 
inkl. 2,5" Touch-Display mit einem Lithium Polymer Akku betreiben (ob 
1000mah ausreichen muss ich noch testen - gehen wir mal von diesem aus: 
https://www.amazon.de/exec/obidos/ASIN/B08FD39Y5R/wwwgeschenke-inspiration-21)
- Dieser Akku soll über USB-C geladen werden können, währenddessen soll 
das Gerät benutzbar sein
- Die zugehörige Schaltung soll vor Überladung und Tiefenentladung des 
Akkus schützen
- Um möglichst effizient zu sein und Wandlerverluste zu vermeiden, wäre 
eine 3,3V Spannungsversorgung gewünscht
- Wenns geht, ein möglichst kleines fertiges Modul, wo man nur noch 2 
pole anlöten und den Akku mit fertigem Stecker einstecken muss (z.B. 
sowas 
https://www.amazon.de/exec/obidos/ASIN/B00PY2YTVU/wwwgeschenke-inspiration-21)
- Im BESTEN Fall möchte ich die Spannung des Akkus (bzw. die 
verbleibenden %) grob berechnen und am Display anzeigen können (z.B. 
sobald er unter 20% geht eine Warnung einblenden, unter 5% abschalten) - 
das muss nicht extrem genau sein, sollte aber als Richtwert dienen 
können (4 "Balken" würden mir ausreichen - je genauer desto besser)

Aktuell offene Punkte:
- Die 3,3V klappen mit klassischen Fertig-Ladeschaltungen eher nicht, 
die laufen alle mit 5V (z.B. dem obigen Powerboost 500 von Adafruit), 
weil der Akku bei über 3,3V eben nicht mehr geboosted werden muss
- Für 3,3V habe ich auch keine "Fertig-Lösungen" gefunden

Fragen:
- Wie würdet ihr sowas generell umsetzen, wenn es nicht zu komplex aber 
trotzdem halbwegs effizient werden soll (Kosten erstmal egal, solange <= 
30 Euro)?
- Wie könnte ich den Ladestand des Akkus (z.B. an einem analogen GPIO 
Pin) messen?
- Würde der LicheeRV Nano selbst in der Lage sein, das Akku-Management 
zu übernehmen, oder würdet ihr eher davon abraten?


Vielen Dank,

sandreas

: Verschoben durch Moderator
von Michael B. (laberkopp)


Lesenswert?

Dein Board braucht mindestens 3.6V (und höchstens 5V) als 
Versorgungsspannung, und wandelt alle intern benötigten Spanningen 
daraus per effizienten Schsltregler, es ist also egal welche 
Versorgungsspannung du anlegst, nur 3.3V sind zu wenig und die LiPoly 
Akkuspannung geht auch nicht weil die unter 3.6V sinkt, zumindest bis 
3.3V, vielleicht bis 3V.

Du brauchst also sowieso einen Schaltwandler nach dem Akku der wenn die 
Spannung zu niedrig ist hochwandelt, und ob der nur 3.3 (wie du wolltest 
aber dem board nicht reicht) oder 3.6 (wie es das board will) oder 5V 
beträgt, ist ziemlich egal, aber bei 5V muss er nur hochwandeln (boost), 
bei 3.6V müsste er auch runterwandeln (buck boost) können.

Wenn über USB geladen werden soll, hast du an USB eh 5V, da muss keine 
3.3V Tauflichkeit vorgesehen werden, da reicht immer runterwandeln auf 
die Akkuspannung von 2.5 bis 4.2V.

Dein Problem ist also keins, nimm eine handelsübliche 5V Lösung, sogar 
eine fertige Powerbank tut es

von Andreas (sandreas)


Lesenswert?

@laberkopp

Erstmal danke für die schnelle Antwort :-)

> Dein Board braucht mindestens 3.6V (und höchstens 5V) als
Versorgungsspannung, und wandelt alle intern benötigten Spanningen
daraus per effizienten Schsltregler, es ist also egal welche
Versorgungsspannung du anlegst, nur 3.3V sind zu wenig und die LiPoly
Akkuspannung geht auch nicht weil die unter 3.6V sinkt, zumindest bis
3.3V, vielleicht bis 3V.

Aus welchem Dokument hast du das entnommen? Ich hab diese Specs 
nirgendwo so genau gefunden...


> Dein Problem ist also keins, nimm eine handelsübliche 5V Lösung, sogar
eine fertige Powerbank tut es

Nun, ganz so einfach wird es wohl nicht. Mein Plan war, das Gerät in 
einem 3D-Druck-Gehäuse mit dem Display zu verbauen (inkl. Akku) und es 
mitnehmen zu können. Folglich soll natürlich auch der Akku geladen 
werden, wenn ich das Gerät an USB-C anschließe und auf den 3.3 / 5V pins 
Spannung anliegt (quasi so wie ein MP3-Player funktionieren würde). 
Grundsätzlich würde ich gerne nur den USB-C-Port aus dem Gehäuse führen.

In dem Schaltbild was ich habe, sehe ich nicht mal, welche der PINs 
3.3/5V EIN- und welche AUSGÄNGE sind.

Fragen:
- Wie wäre denn die Verdrahtung der PINs, dem Akku und dem Laderegler 
und welchen Laderegler-Chip würdest du empfehlen, wenn ich das 
bewerkstelligen wollen würde (inkl. dem Auslesen des Akkustands)?

von Andreas (sandreas)


Lesenswert?

Für alle, die nach etwas derartigem oder ähnlichem suchen:

Es gibt anscheinend signifikante Schwierigkeiten mit den fertigen 
Bauteilen von Aliexpress und Konsorten (TP4054, etc.), wenn man 
folgendes möchte:

- Abgreifen der Spannung für das Laden am Board selbst (z.B. über einen 
existierenden USB-Port)
- Umschalten zwischen "Laden" und "Batteriebetrieb" on the fly
- Messen des Ladezustands der Battery (Prozentanzeige) ohne integriertes 
Batteriemanagement (wie beim LicheeRV Nano)


Zu den Schwierigkeiten gehören Überspannung beim Abstecken, zu hoher 
Ladestrom, und vieles mehr. Folgende Referenzen werde ich nun mal 
durcharbeiten und vermutlich ein eigenes PCB auf Basis des BQ24092 
erstellen:

- https://www.youtube.com/watch?v=XBKOkvwgwNw (Custom BQ24092 Lademodul)
- https://www.youtube.com/watch?v=6LxRnf6sQNQ (GreatScott 
"Supercharger")
- https://www.youtube.com/watch?v=Fj0XuYiE7HU (GreatScott 
Kaufmodule-Vergleich)


Spezifisch für den LicheeRV Nano habe ich folgende Referenz gefunden 
(übersetzte chinesische Seite enthält mehr Informationen, als die 
englische Version):

https://wiki.sipeed.com/hardware/zh/lichee/RV_Nano/2_unbox.html

> 5. Battery Application
> LicheeRV Nano does not include a lithium battery charging circuit. If the user 
> needs to embed a battery and wants to use the USB TypeC that comes with RV
> Nano for charging, it is necessary to disconnect the resistors between VBUS
> and VSYS (see the figure below). The VBUS interface is used as the external
> power input of the PMU, and the VSYS interface is connected to the VSYS of the > 
PMU. If you have any questions, please contact us for support.

Man muss also einen Resistor entfernen, wenn man sowas damit plant.

von Michael B. (laberkopp)


Lesenswert?

Andreas schrieb:
> Es gibt anscheinend signifikante Schwierigkeiten mit den fertigen
> Bauteilen von Aliexpress und Konsorten (TP4054, etc.), wenn man
> folgendes möchte:

Eigentlich nicht, Millionen so aufgebauter Produkte funktionieren 
einwandfrei.

Kann es sein, dass es dir noch an know how fehlt ?

Andreas schrieb:
> eigenes PCB auf Basis des BQ24092

Mach das.

von Andreas (sandreas)


Lesenswert?

> Kann es sein, dass es dir noch an know how fehlt ?

Absolut, sogar an recht elementaren Sachen. Bin kein E-Techniker, 
sondern Software-Entwickler. Das Know-How versuche ich grade Schritt für 
Schritt aufzubauen, allerdings gestaltet sich das Umsetzen der 
theoretischen Grundlagen in die Praxis häufig als schwierig, weil hier 
Erfahrung eine recht große Rolle spielt.

Das genannte Board (LicheeRV Nano) ist zudem nicht direkt für den 
Akkubetrieb vorbereitet, was das ganze zusätzlich erschwert. Daher war 
meine Idee auch, was fertiges zu nehmen, richtig anzuschließen und damit 
für den Anfang zu arbeiten.

> Eigentlich nicht, Millionen so aufgebauter Produkte funktionieren
einwandfrei.

Also sagst du damit mehr oder minder, dass so ein fertiges TP4056 
einfach nehmen könnte, statt jetzt da Wochenweise Zeit in ein eigenes 
PCB zu stecken?

Also meine Idee war folgende:
1
Lichee:VSYS => TP4056:+
2
Lichee:GND => TP4056:-
3
4
TP4056:OUT+ => Lichee:VBUS
5
TP4056:OUT- => Lichee:GND
6
7
Dann noch den Lipo an TP4056 anschließen und vielleicht noch über einen Widerstand am TP4056 den Ladestrom auf 1C einschränken.

Mein Problem:
Wenn der USB-C Stecker drin und er Lipo angeklemmt ist, gibt das dann 
keine Probleme am VSYS mit "doppelter" Spannungsversorgung (weil da ja 
auch der Lipo noch am VBUS dran hängt)?
Oder muss ich die Verbindung von Lipo zu VSYS dann z.B. über extra einen 
Mosfet sperren (wäre machbar aber kommt mir vor als wäre das sinnlos, 
wenn das TP4056 nicht ohne funktionieren würde)?

Und die Fragen:
Wie lese ich am Lichee mit so einem Modul den aktuellen Ladezustand der 
Batterie aus (für eine Batterieanzeige)?

: Bearbeitet durch User
von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Andreas schrieb:
> Wie lese ich am Lichee mit so einem Modul den aktuellen Ladezustand der
> Batterie aus (für eine Batterieanzeige)?

Ich kenne keinen Lichee, aber den Ladezustand kannst du beim TP4056 
nicht auslesen, weil er nicht erfasst wird. Dazu bräuchtest du ein 
"Battery gauge" IC.

: Bearbeitet durch User
von Michael B. (laberkopp)


Lesenswert?

Andreas schrieb:
> Also meine Idee war folgende:
> Lichee:VSYS => TP4056:+
> Lichee:GND => TP4056:-
> TP4056:OUT+ => Lichee:VBUS
> TP4056:OUT- => Lichee:GND
> Dann noch den Lipo an TP4056 anschließen und vielleicht noch über einen
> Widerstand am TP4056 den Ladestrom auf 1C einschränken.

R65 müsste man wohl entfernen, verbindet VSYS und VBUS.

Und ob die absinkende Akkuspannung noch reicht (offizielle läuft der 
Lichee nur bis 3.6V) oder man einen step up auf 5V vorschalten müsste um 
den Akku ganz zu nutzen, sei dahingestellt. So ein step up kostet 
natürlich Strom, wenn man also vor ihm nicht abschalten kann dauerhaft.

Die Akkuspannung kann man als Ladezustand per Analogeingang messen, da 
der aber den Akku auch entlädt muss man die positve Leistung zum 
Spannungsteiler abschalten, z.B. per Analogschalter oder P-MOSFET.

von Andreas (sandreas)


Lesenswert?

> Ich kenne keinen Lichee, aber den Ladezustand kannst du beim TP4056
> nicht auslesen, weil er nicht erfasst wird. Dazu bräuchtest du ein
> "Battery gauge" IC.

> Die Akkuspannung kann man als Ladezustand per Analogeingang messen, da
> der aber den Akku auch entlädt muss man die positve Leistung zum
> Spannungsteiler abschalten, z.B. per Analogschalter oder P-MOSFET.

Super Hinweise danke an euch beide, dann ist der TP4056 raus - es geht 
hier um eine möglichst lange Akkulaufzeit.

> R65 müsste man wohl entfernen, verbindet VSYS und VBUS.

Ja genau, das steht im Manual, hatte ich oben schon geschrieben.

> Und ob die absinkende Akkuspannung noch reicht (offizielle läuft der
> Lichee nur bis 3.6V) oder man einen step up auf 5V vorschalten müsste um
> den Akku ganz zu nutzen, sei dahingestellt. So ein step up kostet
> natürlich Strom, wenn man also vor ihm nicht abschalten kann dauerhaft.

Ganz genau. Ich denke, ich brauche hier echt einen voll integrierten IC, 
der Buck/Boost relativ effizient hinkriegt, eine halbwegs konstante 
Spannung liefert und dazu noch den Ladezustand per I2C melden kann.


Kann der PowerBoost 500 (https://www.adafruit.com/product/1944) das 
vielleicht alles?

Ansonsten werde mir wohl dann doch das hier antun müssen:
- https://www.youtube.com/watch?v=XBKOkvwgwNw (Custom BQ24092 Lademodul)
- Alternativ dann vielleicht was komplett anderes mit dem AXP192

Wundert mich, dass es sowas noch nicht fertig zu kaufen gibt... für 
embedded Geräte mit Wunsch nach Ladeanzeige ist das doch fast ein MUSS. 
Spannend.

: Bearbeitet durch User
von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Andreas schrieb:
> Wundert mich, dass es sowas noch nicht fertig zu kaufen gibt

Gibt's bestimmt, aber nicht billig genug für Aliexpress.

von Michael B. (laberkopp)


Lesenswert?

Andreas schrieb:
> Ich denke, ich brauche hier echt einen voll integrierten IC

Ich denke, du begreifst nicht, dass die handelsublichen Billigboards und 
Powerbanks genau das können was du suchst.

NATÜRLICH kann ein TP4056 einen LiAkku aus 5V UDB laden, NATÜRLICH kann 
ein uC aus der Akkuspannung den Ladezustand ermitteln und woauchimmer 
anzeigen, Natürlich kann ein kleiner step up aus der Akkuspannung 5V 
machen.

Ebenso natürlich braucht nicht jeder alles. Viele nutzen uC die direkt 
mit 2.7V bis 4.3V laufen und brauchen keinen step up.

Niemand will die Ladezustandsanzeige am Board, da bleiben ja nur LED die 
Strom fressen, jeder will dass der uC sie messen kann und auf seinem 
Display anzeigt und dazu reicht doe Spannung.

Aber mach nur.

Bei step up ist interessant, ob sie abschalten und wie sie abschalten so 
dass man das Gerät trotzdem wieder einschalten kann.

von Andreas (sandreas)


Angehängte Dateien:

Lesenswert?

Hier ist ein Aufbau mit MAX17043 (fertiges Gauge) und TP4056 zusammen 
erklärt:

https://youtu.be/rSpxGlZQFTU?t=317

Schaltskizze siehe Anhang. Das könnte ich mal probieren, bevor ich mich 
müde mache mit dem eigenen PCB. Braucht leider ziemlich viel Platz... 
das geht sicher auch noch kleiner.

Den Bluetooth-Speaker in ner Walnuss 
(https://www.youtube.com/watch?v=e-igWXH8ZDk) muss ich zwar nicht 
nachbauen, aber unendlich Platz habe ich auch nicht :-)

: Bearbeitet durch User
von Andreas (sandreas)


Lesenswert?

So, noch etwas recherchiert und ich glaube ich habe jetzt ne brauchbare 
Lösung ohne Custom-PCB gefunden - ne Kombi aus TP4057 + SparkFun 
MAX17043. Der Drain sollte < 10mW liegen, damit komme ich klar.

- Das Display (42.72mm * 60.26mm) ist erstmal gesetzt
- Der Lichee (22.86 * 35.56mm) auch
- Der TP4057 (10mm * 15mm) ist DEUTLICH kleiner als der TP4056 und 
bietet eine sehr ähnliche Funktion.
- Der SparkFun LiPo Fuel Gauge MAX17043 (24mm * 10mm) kommt als I2C 
"Akku-Messgerät" dazu
- Ein 2000mah Akku (60mm  25mm  11mm) könnte knapp reinpassen

Gesamtabmessungen des 3D-Druck-Gehäuses wären somit ca:
50mm  64mm  13mm

Das ist zwar etwas optimistisch, aber die Drucke muss ich erstmal als 
Prototyp entwerfen. Minimalbreite von Akku (25mm) + Lichee (23mm) ist 
utopisch, vielleicht wirds auch deutlich breiter. Mal gucken.

Bin auch gespannt, wie viel Standbyzeit ich mit dem 2000mah Akku 
bekomme, wenn ich es gut optimiere. Klingt jedenfalls nicht mehr völlig 
irrsinnig, was ich da vorhabe.

Vielen Dank noch mal an die Beitragenden!

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.