NEWS
Test Adapter sun2000 v0.1.x - Huawei Wechselrichter
-
Neue Testversion sun2000 Adapter Version v2.5.0 released.
Die Installation erfolgt über npm oder morgen über das Beta Repository.
Es gibt einige Neuerungen im Statistik-Modul, die ich kurz vorstellen möchte.
Live-Chart
Neu ist ein Live-Chart (
statistics.jsonLive), der alle 1-15 Minuten aktualisiert wird. (in der Adapter-Konfiguration unter dem Reiter Statistik eingestellbar)
Im Gegensatz zu den anderen Charts zeigt er keine kWh-Werte, sondern die durchschnittliche Leistung in kW pro Intervall — also ähnlich wie ein Echtzeit-Zähler. Die Daten werden für 48 Stunden aufbewahrt und
danach automatisch gelöscht.Der Live-Chart ist direkt über FlexCharts nutzbar:
http://[ioBroker-ip]:8082/flexcharts/echarts.html?source=state&id=sun2000.0.statistics.flexCharts.jsonOutput.live
Consumption Breakdown — Hausverbrauch runterbrechen
Mit dem Consumption Breakdown lässt sich der gemessene Hausverbrauch in beliebig viele Unterkategorien aufteilen — zum Beispiel Wärmepumpe, Wallbox, Waschmaschine oder sonstige Verbraucher.
Die Breakdown-Werte werden als zusätzliche gestapelte Balken/Linien im unteren Panel jedes Charts angezeigt.Wie funktioniert es?
Der Adapter liest die konfigurierten Quell-States (Verbrauchszähler) aus ioBroker (auch aus anderen Adaptern, mqtt, Tibberlink usw.) und zieht deren Werte vom Gesamtverbrauch ab. Im Chart erscheinen dann:
- die einzelnen Breakdown-Kategorien (z.B. Wärmepumpe, Wallbox)
- ein Restverbrauch (
Consumption) — das ist der Hausverbrauch minus alle Breakdown-Werte
Die Summe aller Verbräuche im unteren Panel entspricht dem gemessenen Gesamtverbrauch.
Konfiguration
Die Konfiguration erfolgt über den State
statistics.dataDef.consumptionBreakdown(beschreibbar,
Typstring, Rollejson). Dort wird ein JSON-Array eingetragen, das die Unterkategorien beschreibt.Ein Beispiel mit zwei Einträgen:
[ { "sourceId": "hm-rpc.0.OEQ1234567.1.ENERGY_COUNTER", "targetPath": "washingMachine", "name": "Waschmaschine", "gain": 1000, "color": "#e91e63", "type": "delta" }, { "sourceId": "0_userdata.0.heatpump.energyToday", "targetPath": "heatPump", "name": "Wärmepumpe", "color": "#3f51b5", "type": "deltaReset" } ]Was bedeuten die Felder?
Feld Pflicht Standard Beschreibung sourceIdX — State-ID des Quell-States in ioBroker (auch aus anderen Adaptern) targetPathX — Interner Name (darf nicht mit eingebauten Namen wie consumption,solarYieldusw. kollidieren!)nameX — Anzeigename in der Chart-Legende gain— 1Teiler für den Rohwert — z.B. 1000wenn der State in Wh geliefert wird, der Chart aber kWh erwartetcolor— automatisch Farbe der Serie als Hex-Code type— deltadeltaReset(laufende Differenz mit automatischer Erkennung einer Zählerrückstellung/Reset),delta(laufende Differenz) oderlevel(Momentanwert)
Kleinere Verbesserungen
- Die Tooltip-Anzeige wurde vereinheitlicht — alle Serien zeigen Werte mit korrekter
Einheit (kWh oder kW je nach Chart-Typ). - Falls keine Batterie vorhanden ist, werden die Charts ohne Batterie-Information (SOC, charge, discharge) aufgebaut.
Alle Details, Placeholder-Übersichten und Template-Beispiele gibt es im Wiki:
https://github.com/bolliy/ioBroker.sun2000/wiki/Statistk-(statistics)Feedback und Fragen gerne hier im Thread! 🙂
-
-
Wenn ihr an die flexChart-Url ein
&sseanhängt wird die automatische Diagrammaktualisierungen aktiviert.
Der Browser hält eine dauerhafte Verbindung zum Server aufrecht und aktualisiert das Diagramm sobald sich die Quelldaten ändern – ohne Neuladen der Seite.Z.B. für das Live-Chart würde die url folgendermaßen aussehen:
http://[ioBroker-ip]:8082/flexcharts/echarts.html?source=state&id=sun2000.0.statistics.flexCharts.jsonOutput.live&sseSiehe:
https://github.com/MyHomeMyData/ioBroker.flexcharts#event-triggered-chart-refresh-sse -
@Samson71 sollte nun auch ohne Speicher funktionieren. Bitte testen!
2.5.0 problemlos installiert. Instanz grün. Ich werde berichten.
Danke für Deine unermüdlichen Verbesserungen! Das ist echt bemerkenswert. Vom Engagement her fast schade, dass ich mich schlussendlich doch gegen ein allumfassendes Huawei-System entschieden habe.
-
danke, dass dir der Adapter gefällt :)
Hier meine Anwort mit freundlicher Unterstützung durch die ai ;)Du hast folgende Möglichkeit, um die Beschriftungen selbst anzupassen:
1. Eigenes Chart-Template verwenden
Für jeden Chart-Typ existiert ein eigener, schreibbarer State:
statistics.flexCharts.template.live statistics.flexCharts.template.hourly statistics.flexCharts.template.daily statistics.flexCharts.template.weekly statistics.flexCharts.template.monthly statistics.flexCharts.template.annualWenn du dort
{"command": "createTemplateFromBuiltin"}als Wert setzt, erzeugt der Adapter automatisch eine Kopie des eingebauten Templates (inklusive aller Platzhalter wie%%solarYield%%,%%xAxisData%%etc.) und schreibt sie in den State zurück. Diese Kopie kannst du dann bearbeiten und z.B. die Werte unterlegend.data,title.text,yAxis[].nameoder die Serien-Namen (series[].name) auf Deutsch übersetzen.2. Wichtige Punkte beim Anpassen
- Die Platzhalter (
%%...%%) müssen als Strings mit den umgebenden Anführungszeichen erhalten bleiben, da sie zur Laufzeit durch die berechneten Daten/Funktionen ersetzt werden. - Achte darauf, dass die Reihenfolge bzw. Zuordnung der Serien (
name) zu den Datenplatzhaltern (data: '%%...%%') nicht verändert wird – nur denname-Text übersetzen, nicht den Platzhalter. - Funktionen wie
valueFormatter,formatteretc. werden als String gespeichert und beim Laden wieder in Funktionen umgewandelt – hier kannst du z.B. die Einheit ("kWh" → ggf. andere Bezeichnung) im Formatter-Code anpassen.
3. Nach dem Bearbeiten
Sobald du den Template-State (mit
ack: false) speicherst, wird das Chart automatisch neu aufgebaut und der Output-Statestatistics.flexCharts.jsonOutput.<typ>aktualisiert – die Visualisierung (z.B. Flexcharts-Widget) übernimmt dann deine übersetzten Bezeichnungen.Weitere Informationen zum Statistik-Modul des sun2000 Adapters: https://github.com/bolliy/ioBroker.sun2000/wiki/Statistk-(statistics)
- Die Platzhalter (
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden