NEWS
Test Adapter e3dc-rscp v0.0.x GitHub
-
@arnod ok, immer von der Batterie aus gesehen. Dann wäre grid_charge um die Batterie aus dem Grid zu laden, wenn der Strom günstig ist. Gibt es eine Möglichkeit, das Entladen der Batterie zu unterbinden?
Wäre das idle ? Dann ist aber auch Laden gesperrt?
Lade und Entladesperrzeiten habe ich nicht in den Objekten gefunden. Gibt es da eine Möglichkeit? -
@gargano sagte in Test Adapter e3dc-rscp v0.0.x GitHub:
Wäre das idle ? Dann ist aber auch Laden gesperrt?
Richtig, wenn du extern regeln willst, muss du in beide Richtungen regeln, also Laden und Entladen.
Wenn du zu festen Zeiten entladen und Laden sperren willst, ist das über EMS.IDLE_PERIODS_CHARGE und EMS.IDLE_PERIODS_DISCHARGE möglich.
Wenn du das ausnahmsweise zu unterschiedlichen Zeiten machen willst, kannst du EMS.MAX_CHARGE_POWER oder EMS.MAX_DISCHARGE_POWER auf 0 setzen. Aber sparsam damit umgehe, den diese beiden werden immer auf der internen SSD gespeichert, was bei häufiger Verwendung auf Dauer deiner SSD schadet.
-
Hallo in die Runde,
gibt es eine Möglichkeit mittels diesem Adapter die Netzfrequenz "41024 Phasen Frequenz in Hz L1" auszulesen? Ich suche schon verwzeifelt nach dieser Möglichkeit.
Vielen Dank Eure Bemühungen
Stephan
Hat sich erledigt! Der Fehler war das Register, es muss eins höher sein 41025.
-
@arnod said in Test Adapter e3dc-rscp v0.0.x GitHub:
Eigentlich genau das, was der Name bereits aussagt:
Normal = E3DC regelt, keine externe Steuerung
Idle = Leerlauf
Discharge = Entladen
Charge = Laden
Grid_Charge = aus Netz ladenDas allein bewirkt aber natürlich noch nichts und muss immer zusammen mit "EMS.SET_POWER_VALUE" gesetzt werden.
Hallo in die Runde.
Ich bin auf der Suche nach einer Lösung den SOC bei z.B. 80% zu begrenzen.
Den aktuellen SOC bekomme ich über die Datenpunkte.
Dann kann ich den SOC per "Limits" und max. "Ladeleistung" begrenzen. Leider geht das nach dem POST von @ArnoD auf die SSD Lebensdauer.Frage: Welche "smarten" Möglichkeiten habe ich, den SOC zu begrenzen? Über Tipps wäre ich sehr dankbar.
Vielen Dank.
Vg Paulkerl. -
@paulkerl
Eine Möglichkeit ist, mein Script Charge-Control zu verwenden.
Da kannst du einstellen, bis zu welchen SOC die Batterie geladen werden soll.
Informationen findest du hier:
e3dc-hauskraftwerk-steuernund das Script mit Anleitung kannst du hier herunterladen:
github.com/ArnoD15/iobroker_E3DC -
Hallo @arnod,
das Skript kenne ich und verfolge auch den dazugehörigen Thread. Da steckt viel Arbeit drin und deckt mE jeden Usecase ab. Das Gesamtwerk ist mir allerdings "zu groß" für meine Anwendung. Ich möchte alles so schlank als möglich halten.
Mich würde interessieren, wie Du technisch die SOC-Begrenzung umgestezt hast. Den Teil würde ich gerne in Node-Red bei mir nachbilden.
Ich bin leider nicht all zu tief im JS-Coding drin und tue mir schwer Deinen Code auseinander zu nehmen um nachzuvollziehen wie Du das technisch umgesetzt hast. Eine schnelle Erklärung würde mir helfen.
Vielen lieben Dank.
LG Paulkerl -
@paulkerl
Ich verwende dafür den e3dc-rscp Adapter und unterbinde das Laden, indem ich das Objekte3dc-rscp.0.EMS.SET_POWER_VALUE
mit meinem Script mit 0 beschreibe. Das muss aber mindestens alle 5 sek. wiederholt werden, da sonst E3DC wieder die Steuerung übernimmt.
Wen beie3dc-rscp.0.EMS.SET_POWER_VALUE
0 eingetragen wird, bedeutet das, dass weder geladen noch entladen wird und es muss geprüft werden, ob entladen werden muss, da sonst auch das unterbunden wird.Somit musst du dir mit Node-Red eine Logik basteln, die das alles berücksichtigt.
-
-
Hardwaresystem: Pi3
Arbeitsspeicher: 1GB
Festplattenart: SD-Karte
Betriebssystem: Linux
Node-Version: 18.18.0
Nodejs-Version: 18.18.0
NPM-Version: 9.8.1
JS: 5.0.12Servus,
hab den Adapter in der aktuellen Version v1.2.3 installiert und am laufen (grün)
Ich bekomme auch alle Daten rein.
Allerdings bekomme ich auch folgende Warungen angezeigt:e3dc-rscp.0 2023-11-02 08:35:47.206 warn Received data type ERROR: RSCP_ERR_NOT_HANDLED (1) - tag TAG_WB_CONNECTED_DEVICES (0xe84101c) e3dc-rscp.0 2023-11-02 08:35:47.159 warn Received data type ERROR: RSCP_ERR_OUT_OF_BOUNDS (5) - tag TAG_BAT_DCB_INFO (0x3800042) e3dc-rscp.0 2023-11-02 08:35:47.159 warn Received data type ERROR: RSCP_ERR_OUT_OF_BOUNDS (5) - tag TAG_BAT_DCB_ALL_CELL_VOLTAGES (0x380001a) e3dc-rscp.0 2023-11-02 08:35:47.159 warn Received data type ERROR: RSCP_ERR_OUT_OF_BOUNDS (5) - tag TAG_BAT_DCB_ALL_CELL_TEMPERATURES (0x3800018) e3dc-rscp.0 2023-11-02 08:35:47.158 warn Received data type ERROR: RSCP_ERR_OUT_OF_BOUNDS (5) - tag TAG_BAT_DCB_INFO (0x3800042) e3dc-rscp.0 2023-11-02 08:35:47.158 warn Received data type ERROR: RSCP_ERR_OUT_OF_BOUNDS (5) - tag TAG_BAT_DCB_ALL_CELL_VOLTAGES (0x380001a) e3dc-rscp.0 2023-11-02 08:35:47.158 warn Received data type ERROR: RSCP_ERR_OUT_OF_BOUNDS (5) - tag TAG_BAT_DCB_ALL_CELL_TEMPERATURES (0x3800018) e3dc-rscp.0 2023-11-02 08:35:47.157 warn Received data type ERROR: RSCP_ERR_OUT_OF_BOUNDS (5) - tag TAG_BAT_DCB_ALL_CELL_VOLTAGES (0x380001a) e3dc-rscp.0 2023-11-02 08:35:47.156 warn Received data type ERROR: RSCP_ERR_OUT_OF_BOUNDS (5) - tag TAG_BAT_DCB_ALL_CELL_TEMPERATURES (0x3800018)
Was muss ich tun damit die Warnungen verschwinden?
-
@chinaboy , die erste Meldung sieht so aus, als hättest du keine Wallbox direkt an der E3/DC angeschlossen. Falls das so ist, nimm in der Instanz-Konfig "WB" heraus, dann sollte das erledigt sein.
Rätselhaft sind die BAT_ Medlungen, denn hier antwortet die E3/DC auf einige Anfragen zum internen Speicher nicht - was für eine Batteriekonfiguration hat deine E3/DC?
Falls du die Werte (CELL_VOLTAGES, CELL_TEMPERATURES, etc.) nicht benötigst, kannst du versuchen, die entsprechenden Einträge im Tab "Polling Intervals" auf "N" zu setzen, dann sendet der Adapter die Abfragen nicht mehr - allerdings heißen die Abfrage-Tags nicht immer so wie die Objekte im Baum und es gibt auch keine 1:1 Abbildung. Hier ist also "Intuition" gefragt (weil es keine erschöpfende Dokumentation gibt).
Grundsätzlich sind aber die "warn"-Meldungen kein Beinbruch. Der Adapter läuft weiter und liefert auch die restlichen Werte.
-
@git-kick hallo! Ich nutze schon seit einiger Zeit den E3DC-Adapter wie auch das Script von ArnoD und bin bisher sehr zufrieden und kann mit dem Adapter auch darüber hinaus alles auslesen was ich benötige.
Allerdings fiel mir auf, dass trotz Updates des Adapters (aktuelle Version 1.2.4) einige der neuen Datenpunkte bei mir nicht erscheinen. Auch ein Löschen der Instanz mit anschließender Neuerstellung wie auch ein Löschen des Adapters mit Neuinstallation des Adapters ändert daran nichts; Backups über .json wurden nicht benutzt. Ein DP ist z.B. im EMS der : MANUAL_CHARGE_ENERGYDarüber hinaus wollte ich fragen, ob es eine Möglichkeit über den Adapter gibt, die Lade-/Entladesperre nicht nur für einen Tag sondern auch für alle Tage (wie seit einem kürzlichen Software Update ja auch im Portal möglich) über einen Datenpunkt anzusteuern?
Herzlichen Dank!
Josef -
Hallo,
ich habe das Problem, wenn ich e3dc-rscp.0.EMS.SET_POWER_MODE auf 4/GRID-CHARGE stelle, fährt der S10 Pro hoch und lädt für 2-3 Sekunden und bricht direkt den Ladevorgang wieder ab und fährt weiter wie gehabt. Kann mir jemand sagen, ob ich da Einstellungen oder sonstiges vornehmen muss damit es geht ?
e3dc-rscp.0.EMS.SET_POWER_VALUE hab ich auf 9000 stehen.
UPDATE:
Nach Wochen den Fehler bzw. das Problem gefunden. Ich hatte zwar immer die Aktuelle Version installiert, doch nachdem ich sie jetzt nach Monaten das erste mal gelöscht und neu installiert habe funktioniert es. -
@matis Hast du das lösen können? Bei mir steht auch die 462 drin und in 128 bekomme ich keinen Wert. Wenn ich die 462 durch 406 ersetze, erscheint auch ein anderer Wert, aber in iobroker wird weder für 128 noch für 406 oder 462 irgendetwas anderes als 0 angezeigt!
-
Hallo Zusammen,
ich muss mal eine blöde Frage zu dem Adapter stellen:Es können ja mit dem RSCP Adapter auch Werte an E3DC geschrieben werden.
Was passiert wenn ich den Adapter installiere? Werden zunächst alle Werte aus dem S10 übernommen oder
werden evtl. irgendwelche "Standardwerte" die im Adapter eingetragen sind an mein E3DC System geschrieben und damit
ggf. schon bei der Installation Werte im Gerät überschrieben??Gruß,
Karsten -
@simulant
Es gibt keine blöde Frage
Bei der Installation werden keine Werte im E3DC überschrieben. -
Guten Morgen zusammen,
ich nutze den E3DC Adapter um Daten der Produktion abzugreifen.
Ich habe ein Problem mit der Aktualisierung der Datenbank.
Mit ist bekannt, dass ich das Datum jeweils für Tag, Woche, Monat und Jahr im Objekt "Time_start" neu setzen muss, damit sich die Werte aktualisieren.
Aber wie mache ich das über Blockly, dass das jeweils hinterlegte Datum einfach "aktiviert" wird und sich die Datenbank für Tag, Woche, Monat, Jahr aktusliert?
Vielleicht hat jemand ein Screenshot für mich?Danke für die Unterstützung.
Gruß, Jörg
-
@git-kick Hi, super Adapter und vielen Dank dafür.
Gibt es eine Idee, wie ich auch für die Wallbox eine Historie bekommen kann, analog zur bestehenden Auswertung?
Wäre echt super, danke. -
@alf4711
Monat:<block xmlns="https://developers.google.com/blockly/xml" type="procedures_defcustomnoreturn" id="%#tUT(}GBUjdh)-UQ!*X" x="238" y="188"> <mutation statements="false"></mutation> <field name="NAME">etwas tun</field> <field name="SCRIPT">Y29uc3QgaGV1dGUgPSBuZXcgRGF0ZSgpOw0KLy8gNyBUYWdlIHp1csO8Y2sNCi8vY29uc3QgaGV1dGUgPSBuZXcgRGF0ZShEYXRlLm5vdygpIC0gNyAqIDI0ICogNjAgKiA2MCAqIDEwMDApOw0KY29uc3QgdGFnID0gU3RyaW5nKGhldXRlLmdldERhdGUoKSkucGFkU3RhcnQoMiwgJzAnKTsNCmNvbnN0IG1vbmF0ID0gU3RyaW5nKGhldXRlLmdldE1vbnRoKCkgKyAxKS5wYWRTdGFydCgyLCAnMCcpOyAvLyBKYW51YXIgaXN0IDAhDQpjb25zdCBqYWhyID0gaGV1dGUuZ2V0RnVsbFllYXIoKTsNCi8vMjAyNC0wMi0yMiAwMDowMDowMC4wMDANCmNvbnN0IGZvcm1hdGllcnRlc0RhdHVtID0gYCR7amFocn0tJHttb25hdH0tJHt0YWd9IDAwOjAwOjAwLjAwMGA7DQovL3NldFN0YXRlKCJlM2RjLXJzY3AuMC5EQi5ISVNUT1JZX0RBVEFfREFZLlRJTUVfU1RBUlQiLGZvcm1hdGllcnRlc0RhdHVtKTsNCnNldFN0YXRlKCJlM2RjLXJzY3AuMC5EQi5ISVNUT1JZX0RBVEFfTU9OVEguVElNRV9TVEFSVCIsYCR7amFocn0tJHttb25hdH0tMDEgMDA6MDA6MDAuMDAwYCk7IA0KLy9zZXRTdGF0ZSgiZTNkYy1yc2NwLjAuREIuSElTVE9SWV9EQVRBX1dFRUsuVElNRV9TVEFSVCIsYCR7amFocn0tJHttb25hdH0tJHt0YWd9IDAwOjAwOjAwLjAwMGApOw0KLy8gc2V0U3RhdGUoImUzZGMtcnNjcC4wLkRCLkhJU1RPUllfREFUQV9ZRUFSLlRJTUVfU1RBUlQiLGAke2phaHJ9LTAxLTAxIDAwOjAwOjAwLjAwMGApOw0KLy8gY29uc29sZS5sb2coZm9ybWF0aWVydGVzRGF0dW0pOw==</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block>
Jahr
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="schedule" id="c/UFAhN}fN-kQy3NE5rk" x="113" y="37"> <field name="SCHEDULE">*/60 * * * *</field> <statement name="STATEMENT"> <block type="procedures_callcustomnoreturn" id="4N*g)ftax/0G!p44$%0O"> <mutation name="etwas tun"></mutation> </block> </statement> </block> <block type="procedures_defcustomnoreturn" id="%#tUT(}GBUjdh)-UQ!*X" x="238" y="188"> <mutation statements="false"></mutation> <field name="NAME">etwas tun</field> <field name="SCRIPT">Y29uc3QgaGV1dGUgPSBuZXcgRGF0ZSgpOw0KLy8gNyBUYWdlIHp1csO8Y2sNCi8vY29uc3QgaGV1dGUgPSBuZXcgRGF0ZShEYXRlLm5vdygpIC0gNyAqIDI0ICogNjAgKiA2MCAqIDEwMDApOw0KY29uc3QgdGFnID0gU3RyaW5nKGhldXRlLmdldERhdGUoKSkucGFkU3RhcnQoMiwgJzAnKTsNCmNvbnN0IG1vbmF0ID0gU3RyaW5nKGhldXRlLmdldE1vbnRoKCkgKyAxKS5wYWRTdGFydCgyLCAnMCcpOyAvLyBKYW51YXIgaXN0IDAhDQpjb25zdCBqYWhyID0gaGV1dGUuZ2V0RnVsbFllYXIoKTsNCi8vMjAyNC0wMi0yMiAwMDowMDowMC4wMDANCmNvbnN0IGZvcm1hdGllcnRlc0RhdHVtID0gYCR7amFocn0tJHttb25hdH0tJHt0YWd9IDAwOjAwOjAwLjAwMGA7DQovL3NldFN0YXRlKCJlM2RjLXJzY3AuMC5EQi5ISVNUT1JZX0RBVEFfREFZLlRJTUVfU1RBUlQiLGZvcm1hdGllcnRlc0RhdHVtKTsNCi8vc2V0U3RhdGUoImUzZGMtcnNjcC4wLkRCLkhJU1RPUllfREFUQV9NT05USC5USU1FX1NUQVJUIixgJHtqYWhyfS0ke21vbmF0fS0wMSAwMDowMDowMC4wMDBgKTsgDQovL3NldFN0YXRlKCJlM2RjLXJzY3AuMC5EQi5ISVNUT1JZX0RBVEFfV0VFSy5USU1FX1NUQVJUIixgJHtqYWhyfS0ke21vbmF0fS0ke3RhZ30gMDA6MDA6MDAuMDAwYCk7DQogc2V0U3RhdGUoImUzZGMtcnNjcC4wLkRCLkhJU1RPUllfREFUQV9ZRUFSLlRJTUVfU1RBUlQiLGAke2phaHJ9LTAxLTAxIDAwOjAwOjAwLjAwMGApOw0KLy8gY29uc29sZS5sb2coZm9ybWF0aWVydGVzRGF0dW0pOw==</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> </xml>
letzten 7 Tage
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="schedule" id="c/UFAhN}fN-kQy3NE5rk" x="113" y="37"> <field name="SCHEDULE">*/60 * * * *</field> <statement name="STATEMENT"> <block type="procedures_callcustomnoreturn" id="4N*g)ftax/0G!p44$%0O"> <mutation name="etwas tun"></mutation> </block> </statement> </block> <block type="procedures_defcustomnoreturn" id="%#tUT(}GBUjdh)-UQ!*X" x="238" y="188"> <mutation statements="false"></mutation> <field name="NAME">etwas tun</field> <field name="SCRIPT">Ly9jb25zdCBoZXV0ZSA9IG5ldyBEYXRlKCk7DQovLyA3IFRhZ2UgenVyw7xjaw0KY29uc3QgaGV1dGUgPSBuZXcgRGF0ZShEYXRlLm5vdygpIC0gNyAqIDI0ICogNjAgKiA2MCAqIDEwMDApOw0KY29uc3QgdGFnID0gU3RyaW5nKGhldXRlLmdldERhdGUoKSkucGFkU3RhcnQoMiwgJzAnKTsNCmNvbnN0IG1vbmF0ID0gU3RyaW5nKGhldXRlLmdldE1vbnRoKCkgKyAxKS5wYWRTdGFydCgyLCAnMCcpOyAvLyBKYW51YXIgaXN0IDAhDQpjb25zdCBqYWhyID0gaGV1dGUuZ2V0RnVsbFllYXIoKTsNCi8vMjAyNC0wMi0yMiAwMDowMDowMC4wMDANCmNvbnN0IGZvcm1hdGllcnRlc0RhdHVtID0gYCR7amFocn0tJHttb25hdH0tJHt0YWd9IDAwOjAwOjAwLjAwMGA7DQovL3NldFN0YXRlKCJlM2RjLXJzY3AuMC5EQi5ISVNUT1JZX0RBVEFfREFZLlRJTUVfU1RBUlQiLGZvcm1hdGllcnRlc0RhdHVtKTsNCi8vc2V0U3RhdGUoImUzZGMtcnNjcC4wLkRCLkhJU1RPUllfREFUQV9NT05USC5USU1FX1NUQVJUIixgJHtqYWhyfS0ke21vbmF0fS0ke3RhZ30gMDA6MDA6MDAuMDAwYCk7IA0Kc2V0U3RhdGUoImUzZGMtcnNjcC4wLkRCLkhJU1RPUllfREFUQV9XRUVLLlRJTUVfU1RBUlQiLGAke2phaHJ9LSR7bW9uYXR9LSR7dGFnfSAwMDowMDowMC4wMDBgKTsNCi8vIHNldFN0YXRlKCJlM2RjLXJzY3AuMC5EQi5ISVNUT1JZX0RBVEFfWUVBUi5USU1FX1NUQVJUIixgJHtqYWhyfS0wMS0wMSAwMDowMDowMC4wMDBgKTsNCi8vIGNvbnNvbGUubG9nKGZvcm1hdGllcnRlc0RhdHVtKTs=</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> </xml>
Aktueller Tag
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="schedule" id="c/UFAhN}fN-kQy3NE5rk" x="113" y="37"> <field name="SCHEDULE">*/15 * * * *</field> <statement name="STATEMENT"> <block type="procedures_callcustomnoreturn" id="4N*g)ftax/0G!p44$%0O"> <mutation name="etwas tun"></mutation> </block> </statement> </block> <block type="procedures_defcustomnoreturn" id="%#tUT(}GBUjdh)-UQ!*X" x="238" y="188"> <mutation statements="false"></mutation> <field name="NAME">etwas tun</field> <field name="SCRIPT">Y29uc3QgaGV1dGUgPSBuZXcgRGF0ZSgpOw0KY29uc3QgdGFnID0gU3RyaW5nKGhldXRlLmdldERhdGUoKSkucGFkU3RhcnQoMiwgJzAnKTsNCmNvbnN0IG1vbmF0ID0gU3RyaW5nKGhldXRlLmdldE1vbnRoKCkgKyAxKS5wYWRTdGFydCgyLCAnMCcpOyAvLyBKYW51YXIgaXN0IDAhDQpjb25zdCBqYWhyID0gaGV1dGUuZ2V0RnVsbFllYXIoKTsNCi8vMjAyNC0wMi0yMiAwMDowMDowMC4wMDANCmNvbnN0IGZvcm1hdGllcnRlc0RhdHVtID0gYCR7amFocn0tJHttb25hdH0tJHt0YWd9IDAwOjAwOjAwLjAwMGA7DQpzZXRTdGF0ZSgiZTNkYy1yc2NwLjAuREIuSElTVE9SWV9EQVRBX0RBWS5USU1FX1NUQVJUIixmb3JtYXRpZXJ0ZXNEYXR1bSk7DQovLyBzZXRTdGF0ZSgiZTNkYy1yc2NwLjAuREIuSElTVE9SWV9EQVRBX01PTlRILlRJTUVfU1RBUlQiLGAke2phaHJ9LSR7bW9uYXR9LSR7dGFnfSAwMDowMDowMC4wMDBgKTsgDQovLyBzZXRTdGF0ZSgiZTNkYy1yc2NwLjAuREIuSElTVE9SWV9EQVRBX1dFRUsuVElNRV9TVEFSVCIsYCR7amFocn0tMDEtMDEgMDA6MDA6MDAuMDAwYCk7DQovLyBzZXRTdGF0ZSgiZTNkYy1yc2NwLjAuREIuSElTVE9SWV9EQVRBX1lFQVIuVElNRV9TVEFSVCIsYCR7amFocn0tMDEtMDEgMDA6MDA6MDAuMDAwYCk7DQovLyBjb25zb2xlLmxvZyhmb3JtYXRpZXJ0ZXNEYXR1bSk7</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> </xml>
Du musst die Datenpunkte anpassen...unter Umständen
-
@tomtom24
Danke !
Aber wie kann ich das für mich nutzen?
Kopiere ich das Script 1:1 in iobroker erscheint eine Fehlermeldung:javascript.0 (31999) script.js.PV_(E3DC).PV_Wallbox_Tag_-Scipt_TEST compile failed: at script.js.PV_(E3DC).PV_Wallbox_Tag_-Scipt_TEST:1
Sorry, ich bin wirklich blutiger Anfänger....
Gruß; jörg -
@alf4711
Du musst die Datenpunkte anpassen.
Ne eigentlich musst du gar nichts machen.
es sollte alles so mit dem e3dc adapter funktionieren, ich brauche dann mal die ganze Fehlermeldung.
Danke.