NEWS
Leistungssteuerung PV-Wechselrichter "0-Einspeisung"
Leistungssteuerung PV-Wechselrichter "0-Einspeisung"
-
Hallo zusammen,
mit einem ESP8266 inkl. Tasmota Steuere ich einen Wechselrichter über den PWM Ausgang und einer kleinen Schaltung einen Wechselrichter in seiner Ausgangsleistung.
Ich benötige eine Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
Den aktuellen Bezug (und auch die Einspeisung) erhalte ich über einen eingebundenen discovergy SmartMeter.
Der Wechselrichter hängt an eine Sonoff POWR2 ink. Tasmota.Durch einen kleinen Versuch sind folgende Werte bekannt.

Die Tabelle ist noch nicht vollständig, sollte aber erstmal reichen.
Kurze Erklärung: z.B. 40% (PWM Ausgang ESP) entspricht 126W Ausgangsleistung am Wechselrichter.Aktuell habe ich einfaches Blockly erstellt. Es funktioniert so naja, da der Wechselrichter dem Bezugzähler immer hinterherrennt. Warum ist mir klar, aber wie ich dies beseitigen kann, ist mir nicht klar.


usw. bis aktuell 80%Kleines Diagramm dazu: (Es geht um die "Leistung Garage")

Ich bitte um Unterstützung.

Viele Grüße
-
@e-i-k-e sagte in: Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
Nimm einen PI-Regler. Etwa so:

Da ich mich im Moment auch sehr für PV (insbesondere Mini-PV aka "Balkonanlagen") interessiere, auch für das Thema "Zero Export".
Statt den Wechselrichter runter zu regeln könnte man doch auch den Verbrauch anpassen?
Ganz Krass: Heizlüfter an.
Besser: Im Warmwasserspeicher ein elektrisches Heizelement
Theoretisch etwas mit Dimmer ... da könnte man die Leistung die Zuviel ist entsprechend Regeln. Etwas Sinnvolles damit zu tun wäre natürlich am besten.Ich tüftle gerade an einer - preisgünstigen - Lösung rum wie ich das machen könnte.
Meine IT Zuhause hat 24h am Tag so fast 300 Watt Dauerverbrauch und da wollte ich Tagsüber etwas gegensteuern.
Am liebsten wären mir so eine 1.200W PV Anlage, die sollte auch bei schlechten Sonnenverhältnissen mindestens die 300 Watt bringen. Anlagen mit Speicher/Akku sind mir zur Zeit zu teuer. -
Da ich mich im Moment auch sehr für PV (insbesondere Mini-PV aka "Balkonanlagen") interessiere, auch für das Thema "Zero Export".
Statt den Wechselrichter runter zu regeln könnte man doch auch den Verbrauch anpassen?
Ganz Krass: Heizlüfter an.
Besser: Im Warmwasserspeicher ein elektrisches Heizelement
Theoretisch etwas mit Dimmer ... da könnte man die Leistung die Zuviel ist entsprechend Regeln. Etwas Sinnvolles damit zu tun wäre natürlich am besten.Ich tüftle gerade an einer - preisgünstigen - Lösung rum wie ich das machen könnte.
Meine IT Zuhause hat 24h am Tag so fast 300 Watt Dauerverbrauch und da wollte ich Tagsüber etwas gegensteuern.
Am liebsten wären mir so eine 1.200W PV Anlage, die sollte auch bei schlechten Sonnenverhältnissen mindestens die 300 Watt bringen. Anlagen mit Speicher/Akku sind mir zur Zeit zu teuer.@bananajoe sagte in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
Ich tüftle gerade an einer - preisgünstigen - Lösung rum wie ich das machen könnte.
Meine IT Zuhause hat 24h am Tag so fast 300 Watt Dauerverbrauch und da wollte ich Tagsüber etwas gegensteuern.Bei diesem Eigenverbrauch in Kombination mit der Sparsamkeit nimmst Du ein Einzellen "Balkonkraftwerk" um 320W bis 370W, machst regelungstechnisch gar nichts und meldest Deinem Netzbetreiber, daß eine Einspeisung ins Stromnetz aus technischen Gründen ausgeschlossen ist und Du auch keinen Zweirichtungszähler brauchst.
Dann hast Du das nach ca. 5 Jahren amortisiert. -
@e-i-k-e sagte in: Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
Nimm einen PI-Regler. Etwa so:

@paul53 sagte in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte in: Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
Nimm einen PI-Regler. Etwa so:

Moin Paul.
Ich versuche immer deine Scripte zu verstehen und zu lernen.
Kannst du, wenn du Lust hast ein paar Worte zur Funktion des Scripts schreiben ?
Was ist "Tn" ?
Was ist "Xp" ?
Warum wird bei Output 50 dazu addiert ?
Vielen Dank. -
@paul53 sagte in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte in: Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
Nimm einen PI-Regler. Etwa so:

Moin Paul.
Ich versuche immer deine Scripte zu verstehen und zu lernen.
Kannst du, wenn du Lust hast ein paar Worte zur Funktion des Scripts schreiben ?
Was ist "Tn" ?
Was ist "Xp" ?
Warum wird bei Output 50 dazu addiert ?
Vielen Dank.@blechsoldat schau mal in PI-Regler Wiki TN ist die Zeitkonstante "Nachstellzeit". Kp ist der Proportionalbeiwert, der zusammen mit TN in die Verstärkung eingeht. Und Xp ist der "Proportionalbereich" xp = 100% / Kp
Einen praxisnahen Überblick findest Du z.B. in Regelungstechnik (Fa. Samson) . -
@blechsoldat schau mal in PI-Regler Wiki TN ist die Zeitkonstante "Nachstellzeit". Kp ist der Proportionalbeiwert, der zusammen mit TN in die Verstärkung eingeht. Und Xp ist der "Proportionalbereich" xp = 100% / Kp
Einen praxisnahen Überblick findest Du z.B. in Regelungstechnik (Fa. Samson) .@klassisch
Danke, ich raff zwar nix aber das ist ja am Anfang immer so ^^ -
@blechsoldat sagte:
Was ist "Xp" ?Das ist der Bereich, um den sich die Regelabweichung (Einspeisung - Bezug in W) ändern muss, damit sich das Stellsignal des P-Reglers über den gesamten Bereich (0 bis 100%) ändert.
@blechsoldat sagte: Was ist "Tn" ?
In der angegebenen Zeit Tn (in sec.) wird die Stellgrößenänderung, die der P-Anteil bewirkt, noch einmal aufaddiert.
@blechsoldat sagte: Warum wird bei Output 50 dazu addiert ?
Der Stellbereich beträgt 0 bis 100% .
-
@blechsoldat sagte:
Was ist "Xp" ?Das ist der Bereich, um den sich die Regelabweichung (Einspeisung - Bezug in W) ändern muss, damit sich das Stellsignal des P-Reglers über den gesamten Bereich (0 bis 100%) ändert.
@blechsoldat sagte: Was ist "Tn" ?
In der angegebenen Zeit Tn (in sec.) wird die Stellgrößenänderung, die der P-Anteil bewirkt, noch einmal aufaddiert.
@blechsoldat sagte: Warum wird bei Output 50 dazu addiert ?
Der Stellbereich beträgt 0 bis 100% .
@paul53
Danke schön -
@e-i-k-e sagte in: Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
Nimm einen PI-Regler. Etwa so:

@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte in: Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
Nimm einen PI-Regler. Etwa so:

Ermstal eine großes Danke @paul53 !
Ich habe versucht das Skript mit Daten zu füllen.

Muss die Variable "Wert" mit "Einspeisung-Bezug" gefüllt werden?
Mit "Zeitstempel" sowie "vorheriger Zeitstempel" habe ich ein Problem, was muss hier ergänzt werden? -
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte in: Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
Nimm einen PI-Regler. Etwa so:

Ermstal eine großes Danke @paul53 !
Ich habe versucht das Skript mit Daten zu füllen.

Muss die Variable "Wert" mit "Einspeisung-Bezug" gefüllt werden?
Mit "Zeitstempel" sowie "vorheriger Zeitstempel" habe ich ein Problem, was muss hier ergänzt werden?@e-i-k-e sagte: Muss die Variable "Wert" mit "Einspeisung-Bezug" gefüllt werden?
Mit "Zeitstempel" sowie "vorheriger Zeitstempel" habe ich ein Problem, was muss hier ergänzt werden?Wert, Zeitstempel, vorheriger Zeitstempel unter "Trigger":

Der Trigger-Datenpunkt muss "Einspeisung abzüglich Bezug" enthalten, also auch negativ werden können (Bezug > Einspeisung).
Nicht "erhöhe output um", sondern "setze output auf" 50 + p + i.
-
@e-i-k-e sagte: Muss die Variable "Wert" mit "Einspeisung-Bezug" gefüllt werden?
Mit "Zeitstempel" sowie "vorheriger Zeitstempel" habe ich ein Problem, was muss hier ergänzt werden?Wert, Zeitstempel, vorheriger Zeitstempel unter "Trigger":

Der Trigger-Datenpunkt muss "Einspeisung abzüglich Bezug" enthalten, also auch negativ werden können (Bezug > Einspeisung).
Nicht "erhöhe output um", sondern "setze output auf" 50 + p + i.
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte: Muss die Variable "Wert" mit "Einspeisung-Bezug" gefüllt werden?
Mit "Zeitstempel" sowie "vorheriger Zeitstempel" habe ich ein Problem, was muss hier ergänzt werden?Wert, Zeitstempel, vorheriger Zeitstempel unter "Trigger":

Der Trigger-Datenpunkt muss "Einspeisung abzüglich Bezug" enthalten, also auch negativ werden können (Bezug > Einspeisung).
Nicht "erhöhe output um", sondern "setze output auf" 50 + p + i.
Ah jetzt wird ein Schuh draus!
Kenn ich Berechnung direkt im Trigger durchführen?
Edit: Das Skript spukt jetzt bei output keinen Wert mehr aus.
-
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte: Muss die Variable "Wert" mit "Einspeisung-Bezug" gefüllt werden?
Mit "Zeitstempel" sowie "vorheriger Zeitstempel" habe ich ein Problem, was muss hier ergänzt werden?Wert, Zeitstempel, vorheriger Zeitstempel unter "Trigger":

Der Trigger-Datenpunkt muss "Einspeisung abzüglich Bezug" enthalten, also auch negativ werden können (Bezug > Einspeisung).
Nicht "erhöhe output um", sondern "setze output auf" 50 + p + i.
Ah jetzt wird ein Schuh draus!
Kenn ich Berechnung direkt im Trigger durchführen?
Edit: Das Skript spukt jetzt bei output keinen Wert mehr aus.
@e-i-k-e sagte in: Das Skript spukt jetzt bei output keinen Wert mehr aus.
Weil es nicht triggert. Man kann nur Datenpunkt-IDs an den Trigger-Block übergeben, keine Werte (Differenz). Hast Du nicht schon einen Datenpunkt aus dem Zähler, der die Differenz enthält? Falls nicht, dann bilde die Differenz im Blockly.

Und triggere auf "wurde aktualisiert".
Bedeutet Consumption nicht Verbrauch? Es geht um den Bezug aus dem Netz.
-
@e-i-k-e sagte in: Das Skript spukt jetzt bei output keinen Wert mehr aus.
Weil es nicht triggert. Man kann nur Datenpunkt-IDs an den Trigger-Block übergeben, keine Werte (Differenz). Hast Du nicht schon einen Datenpunkt aus dem Zähler, der die Differenz enthält? Falls nicht, dann bilde die Differenz im Blockly.

Und triggere auf "wurde aktualisiert".
Bedeutet Consumption nicht Verbrauch? Es geht um den Bezug aus dem Netz.
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte in: Das Skript spukt jetzt bei output keinen Wert mehr aus.
Weil es nicht triggert. Man kann nur Datenpunkt-IDs an den Trigger-Block übergeben, keine Werte (Differenz). Hast Du nicht schon einen Datenpunkt aus dem Zähler, der die Differenz enthält? Falls nicht, dann bilde die Differenz im Blockly.

Und triggere auf "wurde aktualisiert".
Bedeutet Consumption nicht Verbrauch? Es geht um den Bezug aus dem Netz.
Kurz zum Verständnis.
Von welcher Einspeisung sprechen wir hier.- Die "Einspeisung" direkt am SmartMeter ins öffentliche Netz?
oder - Die Einspeisung vom WR ins Hausnetz?
Ja "Consumption" ist ein Datenpunkt von meinem Zähler und ist der aktuelle verbrauch (in W). Dort gibt es auch den Datenpunkt "Delivery" (in W).

Ich berechne mir den "Gesamtverbrauch" = Verbrauch + Einspeisung der WR, dieser Wert kann auch ins negative gehen. - Die "Einspeisung" direkt am SmartMeter ins öffentliche Netz?
-
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte in: Das Skript spukt jetzt bei output keinen Wert mehr aus.
Weil es nicht triggert. Man kann nur Datenpunkt-IDs an den Trigger-Block übergeben, keine Werte (Differenz). Hast Du nicht schon einen Datenpunkt aus dem Zähler, der die Differenz enthält? Falls nicht, dann bilde die Differenz im Blockly.

Und triggere auf "wurde aktualisiert".
Bedeutet Consumption nicht Verbrauch? Es geht um den Bezug aus dem Netz.
Kurz zum Verständnis.
Von welcher Einspeisung sprechen wir hier.- Die "Einspeisung" direkt am SmartMeter ins öffentliche Netz?
oder - Die Einspeisung vom WR ins Hausnetz?
Ja "Consumption" ist ein Datenpunkt von meinem Zähler und ist der aktuelle verbrauch (in W). Dort gibt es auch den Datenpunkt "Delivery" (in W).

Ich berechne mir den "Gesamtverbrauch" = Verbrauch + Einspeisung der WR, dieser Wert kann auch ins negative gehen.@e-i-k-e sagte: Die "Einspeisung" direkt am SmartMeter ins öffentliche Netz?
Ja, das verstehe ich unter Einspeisung. Hat das Smartmeter zwei Datenpunkte, die nur positive Werte liefern und einer der beiden Werte 0 ist? Dann muss von beiden Werten die Differenz gebildet werden. Ich hoffe, Du meinst mit
@e-i-k-e sagte in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
die Einspeisung in das öffentliche Netz?
- Die "Einspeisung" direkt am SmartMeter ins öffentliche Netz?
-
@e-i-k-e sagte: Die "Einspeisung" direkt am SmartMeter ins öffentliche Netz?
Ja, das verstehe ich unter Einspeisung. Hat das Smartmeter zwei Datenpunkte, die nur positive Werte liefern und einer der beiden Werte 0 ist? Dann muss von beiden Werten die Differenz gebildet werden. Ich hoffe, Du meinst mit
@e-i-k-e sagte in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
die Einspeisung in das öffentliche Netz?
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte: Die "Einspeisung" direkt am SmartMeter ins öffentliche Netz?
Ja, das verstehe ich unter Einspeisung. Hat das Smartmeter zwei Datenpunkte, die nur positive Werte liefern und einer der beiden Werte 0 ist? Dann muss von beiden Werten die Differenz gebildet werden.
Korrekt. Hier gibt es keine negativen Werte. Solange keine Einspeisung erfolgt, ist z.B. der Datenpunkt Delivery bei 0W.
Muss ich noch eine weitere Differenz bilden?@e-i-k-e sagte in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
die Einspeisung in das öffentliche Netz?
Ja die meine ich.

output ist nun bei "0" und aktualisiert sich alle 10sek.Edit: Müsste es nicht so sein?

Hab es gerade mal mit einer Testvariable "Einspeisung" durchgespielt, scheint zu funktionieren.
-
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte: Die "Einspeisung" direkt am SmartMeter ins öffentliche Netz?
Ja, das verstehe ich unter Einspeisung. Hat das Smartmeter zwei Datenpunkte, die nur positive Werte liefern und einer der beiden Werte 0 ist? Dann muss von beiden Werten die Differenz gebildet werden.
Korrekt. Hier gibt es keine negativen Werte. Solange keine Einspeisung erfolgt, ist z.B. der Datenpunkt Delivery bei 0W.
Muss ich noch eine weitere Differenz bilden?@e-i-k-e sagte in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
die Einspeisung in das öffentliche Netz?
Ja die meine ich.

output ist nun bei "0" und aktualisiert sich alle 10sek.Edit: Müsste es nicht so sein?

Hab es gerade mal mit einer Testvariable "Einspeisung" durchgespielt, scheint zu funktionieren.
-
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte: Die "Einspeisung" direkt am SmartMeter ins öffentliche Netz?
Ja, das verstehe ich unter Einspeisung. Hat das Smartmeter zwei Datenpunkte, die nur positive Werte liefern und einer der beiden Werte 0 ist? Dann muss von beiden Werten die Differenz gebildet werden.
Korrekt. Hier gibt es keine negativen Werte. Solange keine Einspeisung erfolgt, ist z.B. der Datenpunkt Delivery bei 0W.
Muss ich noch eine weitere Differenz bilden?@e-i-k-e sagte in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
Skript, welches den Wechselrichter zu Steuert, dass ich nahe an eine 0 W Einspeisung lande.
die Einspeisung in das öffentliche Netz?
Ja die meine ich.

output ist nun bei "0" und aktualisiert sich alle 10sek.Edit: Müsste es nicht so sein?

Hab es gerade mal mit einer Testvariable "Einspeisung" durchgespielt, scheint zu funktionieren.
@e-i-k-e
Welcher Datenpunkt triggert eigentlich zuerst im 10-s-Zyklus? Einspeisung oder Bezug?
Als Regler-Trigger sollte der Datenpunkt verwendet werden, der im Zyklus zuletzt triggert, damit die Werte bei der Differenzbildung zeitlich zusammen passen.
-
@e-i-k-e sagte: Edit: Müsste es nicht so sein?
Was steuert das Stellsignal für den WR? Die Leistung einer Energiequelle (PV) oder eine Verbraucherleistung?
Wenn Energiequelle, hast Du recht und die Regelabweichung muss Bezug - Einspeisung sein.
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e sagte: Edit: Müsste es nicht so sein?
Was steuert das Stellsignal für den WR? Die Leistung einer Energiequelle (PV) oder eine Verbraucherleistung?
Wenn Energiequelle, hast Du recht und die Regelabweichung muss Bezug - Einspeisung sein.
Richtig eine Energiequelle. Hier ist es heute vom Wetter wieder PV ungünstig, aber ich konnte gerade das erste Regelverhalten beobachten. Spannend

"Leistung Garage" ist der WR, welcher gesteuert wird.

-
@e-i-k-e
Welcher Datenpunkt triggert eigentlich zuerst im 10-s-Zyklus? Einspeisung oder Bezug?
Als Regler-Trigger sollte der Datenpunkt verwendet werden, der im Zyklus zuletzt triggert, damit die Werte bei der Differenzbildung zeitlich zusammen passen.
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e
Welcher Datenpunkt triggert eigentlich zuerst im 10-s-Zyklus? Einspeisung oder Bezug?
Als Regler-Trigger sollte der Datenpunkt verwendet werden, der im Zyklus zuletzt triggert, damit die Werte bei der Differenzbildung zeitlich zusammen passen.
Demnach Bezug


-
@paul53 said in Leistungssteuerung PV-Wechselrichter "0-Einspeisung":
@e-i-k-e
Welcher Datenpunkt triggert eigentlich zuerst im 10-s-Zyklus? Einspeisung oder Bezug?
Als Regler-Trigger sollte der Datenpunkt verwendet werden, der im Zyklus zuletzt triggert, damit die Werte bei der Differenzbildung zeitlich zusammen passen.
Demnach Bezug

