Solarlader
Hintergrund und Ziel
Solarzellen sind eine nützliche Energiequelle, auch für unterwegs. Leider haben sie einen verhältnismäßig hohen und vor allem variablen Innenwiderstand (je nach Beleuchtung). Daher benötigt man einen “Maximum Power Point“-Tracker, um jederzeit die maximale Leistung aus der Zelle zu holen.
Ein solcher soll hier gebaut werden, mit folgenden Features in v1.0:
- „12V“-System, d.h. Laden von 12V-Bleiakkus soll möglich sein
- Leistung der Solarzelle bis 50W
- Überlade- und Tiefentladeschutz für angeschlossenen Akku (Spannungen evtl. per UART einstellbar)
- Überladeschutz: Abtrennen der Solarzelle bei zu hoher Akkuspannung
- Tiefentladeschutz: Abtrennen der Last bei zu niedriger Akkuspannung
- Optional: Konstantspannungsregelung für Akku, wenn eine Schwellspannung überschritten ist
- „MPP/U“-Ladeverfahren
- Folgende Akkutypen können theoretisch damit sicher geladen werden: Blei, Li-Ion, LiPo, LiFePO4 und alle anderen, die normalerweise per I/U-Verfahren geladen werden.
- Text-LC-Display zur Funktionsüberwachung
- Eingangsfilter, um Abstrahlung der Schaltimpulse über die Solarzellen-Kabel zu vermeiden.
Verantwortlich
Historie
- 2016-07
- Platinen (v1.0) wurden bestellt und sind angekommen
- 2016-08
- Eine Platine wurde bestückt - keine größeren Designbugs vorhanden \o/
- Software wurde geschrieben
- Erste Erfolge stellen sich ein - erfolgreicher Durchsatz von 0,15 kWh :-)
- 2016-09
- Ausfall von v1.0 durch Hardwaredefekt (FET-Treiber durchgebrannt)
- Entwicklung von v1.1
- Platine v1.1 wurde bestellt und ist angekommen
- 2016-10
- Platine v1.1 bestückt und in Betrieb genommen - einige Bauteile haben das Recycling von v1.0 nicht überstanden :-( , Ersatz war zum Glück noch vorhanden
- v1.1 funktioniert sehr viel zuverlässiger als v1.0. Auch die Funkstörungen halten sich in Grenzen :-)
- Platine in Gehäuse eingebaut für weniger zukünftige ESD-Schäden
- Probleme bei der Strommessung (nicht ganz linear?!)
- 2017-01
- v1.1 hat mittlerweile 3 Monate Dauerbetrieb überstanden (setzt ca. 1kWh/Monat durch, soweit ich dieses verbrauchen kann)
- Über den UART und ein angeschlossenes Raspberry Pi werden nette Statistiken gesammelt: http://temp.tkolb.de/solarlader/
- 2017-10
- Es gibt die Statistiken jetzt in einem Grafana-Dashboard
Aktueller Stand
- Software ist soweit lauffähig. Alle Spannungs- und Strommessungen funktionieren (Strommessung zumindest fast)
- Folgende Regler wurden bereits erfolgreich implementiert:
- CV = Konstantspannung
- MPPT = Maximum Power Point Tracking = Regelung auf maximale Ausgangsleistung
- CC = Konstantstrom (Eigenschutz des Laders gegen zu hohen Strom)
- Derzeit können Bleiakkus geladen werden: MPP-Tracking bis 14,4V Akkuspannung, danach Konstantspannung auf 13,8V
- Deep-Sleep ist implementiert. Damit verbraucht die gesamte Schaltung inkl. Display ca. 20 mW im Idle (das ist weniger als die Selbstentladung meines 45Ah-Akkus :D ).
- Lastabschaltung ist integriert
- Bei 11,2V wird die Last abgeschaltet
- Bei Erholung des Akkus auf 13,0V wieder angeschaltet
- Check im Deep-Sleep wird normalerweise alle 60 min. ausgeführt, unter 11,6V alle 5 Min.
Designparameter
- v1.0
- max. Eingangsstrom (von Solarzelle): 4A (begrenzt durch Filterspule)
- max. Ausgangsstrom (zum Akku): 5A (begrenzt durch Schaltdiode)
- max. Laststrom: 30A (begrenzt durch FET zur Lastabschaltung)
- max. Eigenverbrauch im Standby: <3 mA
Probleme
- v1.0
- Hardwarefehler beim FET-Treiber, vermutlich durch Überspannungsimpuls (>16V)
- sollte in v1.1 hoffentlich nicht mehr auftreten (Maßnahmen: Z-Diode + größerer Kondensator an der Spannungsversorgung des Treibers)
- Funkstörung
- In v1.0 treten erhebliche Funkstörungen bei ca. 100 - 160 MHz auf
- Messung zeigt: kurze Pulse mit ca. 100 MHz, vor allem am Kabel zur Solarzelle, aber auch am Akkuanschluss
- Verbesserung durch Kondensatoren zwischen den Anschlusspins (100 nF || 10 nF) -> Dämpfung der Störung ca. 30 dB \o/
- -> Kondensatoren fest integriert in v1.1 + Gate-Vorwiderstand am FET für flachere Flanken
- v1.1
- Strommessung ist nichtlinear und stark vom OPV abhängig
- Negative Offsetspannung ist nötig, da sonst kleine Ströme nicht gemessen werden können
- Skalierung ändert sich abhängig von der Energiequelle (Labornetzteil vs. Solarzelle)???
- Beim Laden des Akkus von der Solarzelle werden höhere Ströme gemessen als mit einem Labornetzteil
- Lösungsversuch durch lineare Näherung aus Einzelmessungen