NEWS
Shelly 3PM Pro Emulator
-
Hallo @gismoh,
ich habe auch einen neuen Marstek Speicher und freu mich über Deine Lösungsidee.
Ich hab Deine Skripte gelesen und würde mit Dir gerne über die oszillierende Regelung diskutieren.
:-) Nur wenn Du willst natürlich.
Meiner Meinung nach darfst Du keine "ANTI-OSZILLATIONS-GLÄTTUNG (des Tibber-Werts)" machen, denn das erzeugt schnell einen instabilen (=oszillierenden) Regelkreis.Wenn der B2500 auch ohne Glättung des Tibber-Werts noch viel oszilliert, kann es helfen, wenn der 'currentValue' mit einem konstanten Faktor x (0< x< 1) multipliziert wird, bevor er an den B2500 gemeldet wird.
Kurze Erklärung:
Im Haus wird der Strom verbraucht, den der Stromspeicher und der Netzanschluss liefert.
Die Aufgabe des Stromspeichers ist soviel Strom zu liefern, dass der Netzanschluss 0kW liefert.(Vereinfachte) Funktion der Regelschleife mit Glättung:
t0: Stromspeicher bekommt gemeldet, dass der Netzanschluss 100W liefert --> Leistungsabgabe des Stromspeichers steigt um 100W
t1: Netzanschluss liefert 0W, wegen der Glättungsfunktion wird dem Stromspeicher nicht 0W, sondern 70W gemeldet. --> Leistungsabgabe des Stromzählers wird weiter erhöht. (Es entsteht eine Oszillation...)(Vereinfachte) Funktion der Regelschleife mit Dämpfung:
Beispiel mit Dämpfungsfaktor x = 0.8
t0: Netzanschluss liefert 100W --> Stromspeicher bekommt gemeldet, dass 80W an Leistung fehlen --> Leistungsabgabe des Stromspeichers steigt um 80W
t1: Netzanschluss liefert 20W --> Stromspeicher bekommt gemeldet, dass 16W an Leistung fehlen --> Leistungsabgabe des Stromspeichers steigt um 16W
t2: Netzanschluss liefert 4W --> Stromspeicher bekommt gemeldet, dass 3.2W an Leistung fehlen --> Leistungsabgabe des Stromspeichers steigt um 3,2W
(Nach ein paar Zyklen stimmt die Leistungsabgabe des Stromspeichers perfekt)Viele Grüße,
Steffen -
Hallo @gismoh,
ich habe auch einen neuen Marstek Speicher und freu mich über Deine Lösungsidee.
Ich hab Deine Skripte gelesen und würde mit Dir gerne über die oszillierende Regelung diskutieren.
:-) Nur wenn Du willst natürlich.
Meiner Meinung nach darfst Du keine "ANTI-OSZILLATIONS-GLÄTTUNG (des Tibber-Werts)" machen, denn das erzeugt schnell einen instabilen (=oszillierenden) Regelkreis.Wenn der B2500 auch ohne Glättung des Tibber-Werts noch viel oszilliert, kann es helfen, wenn der 'currentValue' mit einem konstanten Faktor x (0< x< 1) multipliziert wird, bevor er an den B2500 gemeldet wird.
Kurze Erklärung:
Im Haus wird der Strom verbraucht, den der Stromspeicher und der Netzanschluss liefert.
Die Aufgabe des Stromspeichers ist soviel Strom zu liefern, dass der Netzanschluss 0kW liefert.(Vereinfachte) Funktion der Regelschleife mit Glättung:
t0: Stromspeicher bekommt gemeldet, dass der Netzanschluss 100W liefert --> Leistungsabgabe des Stromspeichers steigt um 100W
t1: Netzanschluss liefert 0W, wegen der Glättungsfunktion wird dem Stromspeicher nicht 0W, sondern 70W gemeldet. --> Leistungsabgabe des Stromzählers wird weiter erhöht. (Es entsteht eine Oszillation...)(Vereinfachte) Funktion der Regelschleife mit Dämpfung:
Beispiel mit Dämpfungsfaktor x = 0.8
t0: Netzanschluss liefert 100W --> Stromspeicher bekommt gemeldet, dass 80W an Leistung fehlen --> Leistungsabgabe des Stromspeichers steigt um 80W
t1: Netzanschluss liefert 20W --> Stromspeicher bekommt gemeldet, dass 16W an Leistung fehlen --> Leistungsabgabe des Stromspeichers steigt um 16W
t2: Netzanschluss liefert 4W --> Stromspeicher bekommt gemeldet, dass 3.2W an Leistung fehlen --> Leistungsabgabe des Stromspeichers steigt um 3,2W
(Nach ein paar Zyklen stimmt die Leistungsabgabe des Stromspeichers perfekt)Viele Grüße,
SteffenMoin @steffen-5
, besten Dank und sehr gerne.
Bin gerade leider etwas im Streß, und sehe mir später deinen Kommentar noch mal an.
Aktuell sind meine Scripte eh bereits etwas anders - hatte noch einen "Blöden" Fehler bei mir gehabt. -
Hi zusammen. Ich komme aus dem Tasmota Bereich und habe ein Blog bzgl. Stromzähler auslesen mit Wifi Lesekopf und Tasmota. Zusammen mit ein paar anderen Usern und einem Entwickler von Tasmota (Script) haben wir es geschafft, den Shelly 3EM mit Tasmota zu emulieren, damit man keine extra Hardware benötigt. Also gleicher Ansatz wie hier beschrieben, aber mit eine Standalone Lösung, die nur einen WiFi Tasmota Lesekopf für den Stromzähler und den Marstek Akku (Jupiter, Venus, B2500) benötigt.
Bzgl. Oszillation hatten wir auch so unsere Probleme, die wir aber nun gemeinsam lösen konnten. Bei Interesse gerne mal hier vorbeischauen oder auf meinem Blog. Ein Austausch untereinander ist für die Community immer sinnvoll. Gruß :)
-
Hi zusammen. Ich komme aus dem Tasmota Bereich und habe ein Blog bzgl. Stromzähler auslesen mit Wifi Lesekopf und Tasmota. Zusammen mit ein paar anderen Usern und einem Entwickler von Tasmota (Script) haben wir es geschafft, den Shelly 3EM mit Tasmota zu emulieren, damit man keine extra Hardware benötigt. Also gleicher Ansatz wie hier beschrieben, aber mit eine Standalone Lösung, die nur einen WiFi Tasmota Lesekopf für den Stromzähler und den Marstek Akku (Jupiter, Venus, B2500) benötigt.
Bzgl. Oszillation hatten wir auch so unsere Probleme, die wir aber nun gemeinsam lösen konnten. Bei Interesse gerne mal hier vorbeischauen oder auf meinem Blog. Ein Austausch untereinander ist für die Community immer sinnvoll. Gruß :)
danke für eure Rückmeldungen.
Ich bin da aktuell noch mitten in der Umsetzung.
Grundsätzlich funktioniert die reine Skriptlösung – man braucht also keinen zusätzlichen Docker oder andere externe Tools. JS-Skripte im ioBroker reichen völlig aus.Derzeit arbeite ich eher an der Steuerung und Logik. Ziel ist u.a. eine SoC-Berücksichtigung, die Marstek selbst nicht vorsieht. Also z.B.: Akku nur bis XX % laden oder nur bis XX % entladen – frei im Skript einstellbar.
Außerdem möchte ich eine regelbare Lade-/Entladeleistung integrieren.
In der App kann man zwar Grenzen setzen (z.B. max. 800 W oder 2.500 W), aber:Bei der Entladung halten sich die Speicher an die eingestellte Begrenzung (u.a. wegen Leitungs-/Brandschutz).
Beim Laden leider nicht – selbst wenn man 800 W vorgibt, ziehen die Speicher problemlos 2.500 W. Für die Leitungen macht es aber keinen Unterschied, ob der Strom „+“ oder „–“ ist (Laden/Entladen) – belastet werden sie gleich stark.
Da ich selbst nicht programmieren kann, nutze ich KI zur Unterstützung. Allerdings stoße ich dabei immer wieder (trotz bezahlter Tarife) auf Sperren und Timeouts, was das Ganze ziemlich ausbremst.
Als Nächstes möchte ich eine Mehr-Speicher-Lösung sauber umsetzen. Erste Ansätze habe ich bereits bei mir integriert. Auch der API-Abruf läuft momentan noch in einem separaten Skript – den würde ich dann einarbeiten, sobald die Basis stabil läuft.
-
Hallo, ich möchte mich hier mit einklinken.
Seit einer Woche besitze ich einen Marstek venus E V3.0. Im Haus läuft ein SMA Home Manager 2 an der PV Anlage inkl. Speicher.
Nun würde ich gerne die Venus über iobroker steuern, also nur die PV-Überproduktion speichern und nach Bedarf bzw. nachts wieder abgeben.Mein Problem: Wie installiere ich unimeter in Docker auf meiner Synology 7.2?
Könnt ihr mir da weiterhelfen? Den Container habe ich soweit am Laufen, aber die Venus findet nix. Vermutlich habe ich das ganze falsch konfiguriert. Kennt jemand ein how2 für unimeter unter Docker?Vielen Dank vorab
Gruß Luky