Beiträge von wend

    Bist Du sicher, dass der Raspberry Pi für das Auswerten und Visualisieren zu langsam ist?

    Eigentlich brauchst Du doch nur mosquitto auf dem Raspberry Pi zum Empfangen der MQTT-Daten vom Zähler (das sollte keine meßbare Belastung für den Pi sein). Für das Visualisieren gibt es tausend Möglichkeiten, auch relativ schnelle und Schlanke. Einige gehen sogar auf einem Android-Handy. Es muss kein WEB-basiertes Interface sein. Man muss nicht unbedingt einen Browser auf dem Raspberry Pi starten.

    Das ganze gibt es eigentlich schon. Die interne Logik kann man mit sogenannten Regelmaschinen lösen. Eine Regelmaschine ist ein kleines Programm, welches z.B. auf einem Raspberry Pi im Hintergund läuft, keine direkte Benutzerschnittstelle hat, also auch keine Grafik, Maus oder Tastatursteuerung. Es bedient ausschliesslich MQTT-Topics. Also etwa: Wenn sich einer von verschiendenen Parametern in MQTT-Topics ändert, dann triggere eine Routine, die mit den geänderten Werten etwas rechnet, und lege die Ergebnisse wiederum in MQTT-Topics ab, die dann ihrerseits wieder andere Regelmaschinen anwerfen oder auch nur von anderen externen GUI-Programmen angezeigt werden. Die Solaranlage stellt also ihre Parameter per MQTT zur Verfügung, so wie sie das halt macht. Daraus kann eine Regelmaschine dann andere, ggf. passendere Werte berechnen, die dann letzlich irgendwo angezeigt werden. Die Regelmaschine kann natürlich auch Steuerbefehle für die Solaranlage absetzen, ggf. getriggert von einem anderen Topic-Parameter, welcher in einem GUI von einem (entfernten) Benutzer ausgelöst wird. Das GUI ist hier aber getrennt von der übrigen Logik, deshalb kann man auch mehrere verschiedene GUIs gleichzeitig einsetzen.


    Hier wird das Regelmaschinen-Konzept beschrieben: https://github.com/kollokollo/…MQTT-rule-engine-howto.md


    Mit minimalem Programmiergeschick kann man im MQTT-Hyperdash Framework diese Regelmaschinen aufsetzen. Im einfachsten Fall braucht man nur eine Zeile mit seiner Formel zu schreiben und die Namen der Input/Output-Parameter festlegen. Ein einfaches "make" macht dann daraus ein Programm, welches automatisch im Hintergrund des Raspberry Pis laufen kann.

    Man kann auch MQTT ohne Node-Red verwenden. MQTT auf dem Raspberry Pi ist recht einfach installiert. Node-Red finde ich persönlich ziemlich unhandlich, es kann halt sehr viel und kann grafisch programmiert werden. Muss man mögen. Wenn es aber was einfaches sein darf (nur lauffähig lokal auf dem Raspberry Pi), dann ist dieses Tutorial vielleicht nützlich: https://forum-raspberrypi.de/f…-und-in-einem-cockpit-an/


    Die erwähnte Node-Red-Alternative erreicht man hier: https://github.com/kollokollo/MQTT-Hyperdash

    Für den, der nicht gerne aus github und den Quellen kompiliert gibt es ein fertiges -deb Paket zum installieren und ausprobieren: https://sourceforge.net/projects/mqtt-hyperdash/files/


    Eine Datenanzeige für den Stromzähler (+Wasser und Gaszähler) könnte dann so aussehen:

    https://github.com/kollokollo/…enshots/Haussteuerung.png


    Das ist ein Fenster mit den Anzeigen, die auf einem Bildschirm angezeigt werden, der am Raspberry Pi angeschlossen ist. Es ist also kein WEB-Interface. Die reinen MQTT-Daten der Stromerfassung können zusätzlich auch z.B. auf einem Android Smartphone angezeigt werden. (Die app heisst MQTT-Dash, ist auch ziemlich einfach zu bedienen, da sieht es dann aber wieder etwas anders aus).

    Ist vielleicht nicht so fancy wie Node-Red, tut es aber auch.

    Ja, dann rechne mal zusammen, was Du an einem Tag an Energie verbrauchst. Teil das dann noch auf in tagsüber und nachts, wobei das natürlich von der Jahreszeit abhängt. Alles was Du nachts verbrauchst, muss ja über die Batterie gehen. Diese muss dann tagsüber weider aufgeladen werden plus der Tagesverbrauch macht dann die PV-Energie, welche Du einsammeln musst. Berücksichtige die Batterieverluste (raus/rein ca 70 % bei Blei-Akku) und die Kapazitätsverluste über 3 Jahre (etwa die haelfte), um dann die Batterie zu dimensionieren. Berücksichtige die genaue Lage der PV-Module, Ausrichtung, Abschattung, Sonnenstunden, um die PV-Modulleistung zu dimensionieren.


    Jetzt hast Du eine Anlage, die 24h rund um die Uhr laufen kann (in der Jahreszeit wofuer diese konzeptioniert wurde, und natuerlich im Sommer). Aber die kann noch nicht mit Schlechtwettertagen umgehen. Hier musst Du für dich entscheiden, wieviele Schlechtwettertage am Stück die Anlage durchlaufen können muss. Ich habe mit 3 Tagen dimensioniert. Darüberhinaus wird es super teuer.

    Wenn also 3 Schlechtwettertage, dann musst Du die Akkukapazitaet etwa verdoppeln (für Sommer) bis verdreifachen (für Hebst/Frühling), die PV-Modulleistung muss in einem Tag den gesamten Akku wiederaufladen können, meist reicht hier eine Verdoppelung der Peak-Leistung.

    Ich bin immer mehr angetan von der Relais-Lösung. Vor allem, weil mit nur einem weiteren relais auch noch ein Balancing realisiert werden kann. Anstelle von auf den Mess-Kondensator, wird dann die Zelle mit der höchsten Spannung bei Bedarf für ein paar Sekunden auf eine Last (kleine 5V Glühlampe) geschaltet. Also Last könnte sogar noch was sinnvolles betrieben werden, z.B. ein DC-DC-Wandler, der dann 5V USB Ladefunktion zur Verfügung stellt.


    Das Balancing kann dann also nicht nur beim Laden des Akkupacks geschehen, sondern auch zwischendurch, z.B. immer dann, wenn die Zellspannung der Zelle mit der größten Spannung um mehr als 0.1V vom Mittelwert abweicht. Noch besser wäre es natürlich, wenn die Ladung von der höchsten Zelle zur niedrigsten übertragen würde. Das ginge, wenn man anstelle der Last einfach eine einzelne 18650 Zelle (oder ein 1s-Pack) dranhängt, die die Ladung aufnimmt und wieder abgibt. So ginge kaum was verloren.


    Ich möchte behaupten, selbst bei einem grossen Akku z.B. 14s100p, waere das noch eine gute Lösung.

    Man baucht dann 15 Relais, einen Arduino, und ein 1s-Akkupack. Der Rest ist software. Stromverbrauch: zwischen 40mA@6V (nur Arduino) und 120mA@6V (Arduino + Relais beim messen oder balancen). Das ganze bleibt also bi <1W für das gesamte system. Ich denke, so ein Batrium-BMS bracuht in der Summe mehr.

    Bin dabei, das Problem mit Cell 1 zu finden. Hab erstmal die Zellen 1 und 2 vertauscht, um zu verifizieren, dass es nicht an der Meeselektronik liegt. Liegt es nicht, nun ist Cell 2 die auffaellige. Hier zeigt sich wieder ein schönes Feature der Flying-Capacitor Methode: Man hat keine Probleme mit genauer Kalibration, denn die Messung aller Zellen relativ zueinander ist immer supergenau, hat denselben Kalibrationfaktor. Beim Spannungsteiler wäre das schon anders (Toleranz der Widerstände).


    Nun zu den Kurven: Man sieht zunächst, dass die Spannungsdifferenzen um so größer werden, je höher der Strom aus oder in die Zelle ist. Das deutet auf einen Innenwiderstand oder schlechte Kontakte hin. An der unterschiedlichen Kapazität sollte es eigentlich nicht liegen. Trotzedem muss ich dieses Akkupack mal auseinandernehmen und genau untersuchen.


    Weiterhin beobachte ich, was mein Balancer-Platinchen so macht:


    Es läßt einzelne Zellenspannungen von > 4.2V zu, wenn Strom fliesst, bringt nach einer Weile aber die Spannungen zusammen, und zwar auf der Abfallenden Ladestromkurve, wenn der Ladezustand sich also "voll" nähert. Das ganze dauert aber mehrere Stunden und wenn dann ein Entladestrom fliesst, ist die Spannungsdifferenz (nun in die andere Richtung) wieder da. Hm.


    Ich vermute also, dass das BMS/Balancer-Platinchen durchaus den Strom berücksichtigt, denn sonst muesste es doch den Akku bei > 4.2V schon trennen. Vielleicht macht es also eine Innenwiderstandsmessung. Interessant.


    Weitere Beobachtungen folgen. (Oder gibt es etwa eine genaue Funktionsbeschreibung zu dem 25A 3s BMS (aus China), was ich da verwende?)


    Mir fällt noch ein, dass natuerlich die Kalibration der Spannung nicht 100% stimmen muss, also ist vielleicht angezeigte 4.3V in Wahrheit nur 4.2V. das muesste ich nochmal abgeleichen....

    So, hier das Ergebnis, für diejenigen, die das interessiert. Messung der Zellenspannungen im Verlauf eines Solartages mit der Schaltung mit dem fliegenden Kondensator und 3 Relais. Gesteuert vom Arduino. Man erkennt, dass das Akkupack "Cell 1" irgendwie auffällig ist. (Höherer Innenwiderstand? Kleinere Kapazität? Probleme mit Kabeln?) Jedenfalls konnte ich das Problem bisher nicht richtig zuordnen, nun, mit der Schaltung, geht das. Also bin ich erstmal zufrieden.

    @petzibaer: Die Masse der Verbraucher ist nicht(!) am Minuspol des unteren Batteriepacks angeschlossen. Die Masse geht in das Balancer-Board (P-) und wenn man auf der Platine genau guckt, dann sieht man, dass P- nicht mit dem Minus des ersten Packs verbunden ist, sondern über einen Messhunt und einen MOSFET (zum Trennen). P+ hingegen ist auf der Platine direkt mit dem Pluspol des obersten Akkupacks verbunden.

    Warum, weiss ich nicht, aber das ist halt so bei dem Board. Irgendwo muss das Balancer-Board ja den Strom messen und bei Bedarf (Überstrom, Übertempertur etc.) Unterbrechen.


    Es ist so eines:

    https://www.ebay.de/itm/3S-12V…ction-Board-/192048209292