Comments (10)
Hallo Nico,
bezugnehmend auf Punkt Nr. 4 hätte ich noch eine Ergänzung.
Aktuell ist es so (für mich nicht nachvollziehbar, bin hier mit E3DC in Kontakt), dass der S10 E Pro oftmals Abends gegen 20.45h oder morgens gegen 6.30h plötzlich umschaltet auf Netzbezug, obwohl der SoC in den Batterien noch genügend Leistung hat.
Momentan habe ich vereinbart, dass ich tagsüber die manuelle Steuerung einstelle und nach Sonnenuntergang bis direkt nach Sonnenaufgang den automatischen Lademodus aktivieren. Ist natürlich etwas lästig. Ich hoffe mal, der Grund findet sich bald, warum das so ist.
Aber nun zum Thema. Es wäre prima, wenn auch die Umstellung von automatischem und manuellem Lademodus mit dem o.g. Szenario möglich ist.
Habe mal die Portalseite debuggt und bin auf folgendes gestoßen:
function switchManLoadActiv(x) {
dataProxy.rscp.request(
dataProxy.rscp.containerFactory("EMS_REQ_SET_POWER_SETTINGS",
dataProxy.rscp.dataFactory("EMS_POWER_LIMITS_USED", "Bool", (x) ? "true" : "false")
))
.then(function (data) {
(controlvalues.cb_manload()) ?
}, function (data) {
console.error("Fail send powersave");
});
}
Bei der Umstellung von automatisch auf manuell wird der Wert "untere Lade-/Entladeschwelle" standardmäßig auf 65W gesetzt. Meist setze ich in auf 5W runter.
Folgende Stelle habe ich im Debugging gefunden:
if (typeof objs.EMS_MAX_CHARGE_POWER === 'object') {
controlvalues.ip_maxla(objs.EMS_MAX_CHARGE_POWER.value);
$('#maxChargePowerValue').text(objs.EMS_MAX_CHARGE_POWER.value);
} else {
console.error("missing: EMS_MAX_CHARGE_POWER");
}
if (typeof objs.EMS_MAX_DISCHARGE_POWER === 'object') {
controlvalues.ip_maxent(objs.EMS_MAX_DISCHARGE_POWER.value);
$('#maxDischargePowerValue').text(objs.EMS_MAX_DISCHARGE_POWER.value);
} else {
console.error("missing: EMS_MAX_DISCHARGE_POWER");
}
if (typeof objs.EMS_DISCHARGE_START_POWER === 'object') {
controlvalues.ip_unent(objs.**EMS_DISCHARGE_START_POWER**.value); // gibt es nicht mehr
$('#lowerDischargeLimitValue').text(objs.EMS_DISCHARGE_START_POWER.value);
} else {
console.error("missing: EMS_DISCHARGE_START_POWER ");
}
Warum der Hinweis "// gibt es nicht mehr" da steht, weiß ich nicht. Vielleicht wird dieser Regler in naher Zukunft aus dem Portal rausgenommen. Durch das, dass ich ja mit dem ersten in der Abfrage genannten TAG (EMS_MAX_CHARGE_POWER) arbeite, um die maximale Ladeleistung zu setzen, sollte das kein so großes Problem sein, auch den Wert der EMS_DISCHARGE_START_POWER mitzugeben.
Ich muss mal schauen, wie ich dazu komme. Vielleicht gehe ich auch schon mal ran und versuche es zu integrieren, damit Du es übernehmen kannst.
Viele Grüße
Bernd
from e3dcgui.
Hallo Bernd,
das ist ja interessant, dass man die TAGs auch im Portal auslesen kann. Deine Info stimmt mit meiner Vermutung über ein, nur scheint der Schalter (bool) true und false zu sein, was ja irgendwie bei bool auch logisch ist.
Wie schon erwähnt habe ich aktuell wenig Zeit mich um das Thema zu kümmern. Ich werde aber mal schauen ob ich in der nächsten Zeit wenigstens die TAGs mal testen kann. Irgendwie muss das doch gehen und klappen. Oder du bekommst es schon hin, dann wird das einbauen wohl nicht so ein Problem sein. Zumindest wenn ich erstmal nur auf die "Action" Datei setzte.
VG Nico
from e3dcgui.
Hallo Nico,
ich habe es hinbekommen, dass man zwischen manuell und automatisch umschalten kann, die StartPower vergibt, Wetterprognose und Energiesparen ein- und ausschalten kann sowie die Werte, die man auch im Portal direkt einstellen kann nun aus dem S10 in die HM schreibt.
Ich muss nur noch alles zusammenschreiben und etwas Code aufräumen, dann stelle ich es hier rein.
Du kannst anschließend ja bei Gelegenheit mal schauen (eilt ja nicht), dass das Coding an den richtigen Ort platziert wird. Am aktuellen Ort gefällt es mir nicht so gut, aber als Interimslösung passt es.
Viele Grüße
Bernd
from e3dcgui.
Hallo Nico,
wie angekündigt hier die aktuelle Version mit folgenden Updates zu den bisher benannten Punkten:
1. actionCheckHM.c
In der RscpMain_20210920_0852.txt habe ich ab Zeile 171 einige Punkte beschrieben.
Ich denke zukünftig sollten diese Zeilen in die actionCheckHM.c und RscpSet.cpp überführt werden, so dass nur noch die elementaren Punkte in der RscpMain.cpp enthalten sind.
Wäre gut, wenn Du das bei Gelegenheit überführen könntest. Eilt aber nicht, da ich erst mal uneingeschränkt mit dieser Lösung arbeiten kann.
Es würde aber die Updatefähigkeit verbessern, wenn ein Großteil meiner Punkte in die zukünftige Lösung überführt werden.
Anbei die Datei.
actionCheckHM_20210824_1754.txt
2. RscpMain.cpp
Sowohl das Setzen der Werte (Zeile 171-247) als auch das Schreiben der Werte in die Homematic (Zeile 120, Zeile 805-892, insbesondere mit den printsendHM-Befehlen) funktioniert nun.
Ich habe gleich alle möglichen Variablen noch mitgenommen, welche unter den SmartFunktionen im E3DC-Portal enthalten sind.
Also auch Wetterprognosen, Werte aus Manuelle Speicher-Ladeleistung und Speicher-Entladeleistung incl. Einschaltung manuelle oder automatische Ladung sowie die PowerSave-Funktion.
Konnte alles im S10 beschreiben als auch auslesen und in die Homematic schreiben.
Ich musste etwas ausprobieren, um herauszufinden, wann der S10 gewillt ist meine Werte anzunehmen. Beispiele mit fixen Werten (auskommentiert) findest Du in Zeile 234-240. In den Zeilen obendrüber werden meine festgelegten Werte korrekt übermittelt.
Die "parameter_20210920_0852.txt" habe ich ebenfalls mit angehängt, falls interessant.
Habe versucht (ich denke es müsste auch überall passen) meine Anpassungen mit BS im Coding gekennzeichnet, damit Du siehst, was ich so verändert habe.
Für das Wegschreiben der Wallbox-Einstellungen in die Homematic habe ich noch die Zeilen 424 und 432 aufgenommen.
RscpMain_20210920_0852.txt
parameter_20210920_0852.txt
3. Anpassung RWData.h
Mein Workaround mit der RWData.h mit readHM könntest Du ggf. auch ändern, damit Redundanzen an Funktionen vermieden werden.
RWData_20210826_1414.txt
4. Ladeleistungsoptimierung
Habe in der Homematic noch weitere Einstellmöglichkeiten und Anpassungen vorgenommen. Vom Funktionsprinzip ist aber alles gleich geblieben. Letztendlich steuere ich die maximale Ladeleistung des Akkus.
Ich hatte allerdings mehrfach schon festgestellt, dass der S10 bei der manuellen Einstellung Abends oder früh morgens (jeweils, wenn keine PV-Leistung vorhanden war) einfach umgestellt hat und Strom aus dem Netz bezogen hat statt aus dem Akku, obwohl noch genügen Batterieleistung vorhanden gewesen wäre. Hierzu läuft nach wie vor ein Ticket bei E3DC, da ich gerne wüsste, was zu diesem Verhalten führt.
E3DC sagte, ich soll bis zur endgültigen Analyse auf automatische Ladung umstellen, was ich wiederrum nicht möchte, da sonst die Ladeleistungsoptimierung ja nicht funktioniert. Bin so mit ihnen verblieben, dass ich tagsüber mit der manuellen Einstellung und abends bis früh morgens mit der automatischen Einstellung arbeitet. Das war ja auch der Grund, dass ich diese Einstellung gerne automatisch setzen würde.
Das klappt nun. Mittels zweier Homematic Programme wird der automatische Modus zum Sonnenuntergang gesetzt und zum Sonnenaufgang die Parameter für den manuellen Lademodus.
5. Batterieentladung
Ich denke mal, dafür gibt's derzeit keine Funktion (TAG). Als Verbesserungsvorschlag habe ich das bei E3DC bereits eingereicht.
Bei Fragen melde Dich gerne. Ansonsten wie gesagt, wäre es toll, wenn meine Punkte in Deinem Projekt ein Plätzchen finden würden.
Viele Grüße
Bernd
from e3dcgui.
Hallo Bernd,
wie schon erwähnt, super Vorarbeit! Aber wie auch bei mir, wenn Eigeninteresse besteht ist man einfach mit Hochdruck dabei.
Ich werde deine Ansätze auf jeden Fall mal einbauen, eventuell auch mit Einstellmöglichkeiten auf meinem Display.
Gut das du schreibst, dass es nicht eilt, denn ich bin ja ehrlich, aktuell fehlt die Lust mich um das Projekt zu kümmern. Aber es wird gemacht, wobei ich wohl erst sortieren muss was alles umgesetzt werden soll/muss. Ich habe aber Hoffnung für das Projekt, denn die Terrassensaison ist vorbei und die Sofazeit beginnt 😉!
Danke soweit und viele Grüße
Nico
from e3dcgui.
Hallo Bernd,
ich bin bis jetzt ganz zufrieden. Ich bekomme die Limits alle ausgelesen und Teilweise gesetzt.
Hast du das setzen vom Powersave oder der Wetterprognose hinbekommen?
Die Variable muss wohl als uchar8 übergeben werden, aber da weiß ich nicht wie ich die deklarieren oder füllen soll.
Ansonsten lasse ich die Punkte aus, denn so wichtig sind die ja auch nicht. Powersave würde ich immer anlassen, denn warum soll wenn keine Sonne da ist und die Batterien leer sind der WR weiter Strom verbrauchen. Die Wetterprognose kann schon mal geändert werden aber laufend macht man das auch nicht.
VG Nico
from e3dcgui.
Hallo Nico,
habs gerade mal geprüft. Derzeit lese ich Powersave und Wetterprognose nur aus. Ich dachte, ich hätte die Werte auch schon mal gesetzt, konnte aber nichts dazu finden. Ich versuche die nächsten Tage den Wert mal zu setzen. Heute komme ich wahrscheinlich nicht dazu.
Viele Grüße
Bernd
from e3dcgui.
Hallo Bernd,
danke für die schnelle Rückmeldung. Somit verschiebe ich die Funktion für Powersave und Wetterprognose.
Denn der Rest ist erstmal fertig.
Ich habe mich bemüht soviel wie möglich von deinen, Ideen und Wünschen aufzunehmen.
Nur den Punkt mit der HM-Variable mit der Funktion und nicht je Funktion eine Variable habe ich erstmal nicht übernommen.
Ich denke immer noch das es für viele nicht so einfach sein wird es selber einzubauen. Auf Tastendruck eine Variable auf "true" setzen geht einfach aber mit einen definierten Text ist schon nicht so einfach. Klar im Script geht das genauso einfach.
Aber bis auf Powersave und Wetterprognose fällt mir auch nicht viel mehr ein was noch möglich wäre zu steuern.
Wie angekündigt habe ich alles auf dem Display auch eingebaut. Die Steuerung läuft dann über die Datei "Rscp/RscpSet". Für die Parameter will ich den Wiki Beitrag noch Verbesser, mal sehen ao ich das gleich noch mache.
Da jetzt wieder andere Projekte auf mich warten, kannst du dir mit der Integration und der Rückmeldung Zeit lassen, ich komme für weitere Idee nicht sofort dazu. Natürlich wenn es einen Fehler gibt schiebe ich es dazwischen.
Viele Grüße Nico
PS: Diesen Issue schleiße ich erst einmal, wenn es nicht läuft kannst du ihn ja wieder öffnen.
from e3dcgui.
Hier noch der Link zur Erklärung der actionCheckHM: HM abfragen und S10 steuern
Oder die Funktion der RscpSet: Aufruf der RscpSet
from e3dcgui.
from e3dcgui.
Related Issues (20)
- [Installations Abbruch] Skriptfehler laut Ausgabe HOT 4
- Einstellung der Notstromreserve klappt nicht richtig HOT 1
- Seit V2.00 wird nur fix Schriftgröße 8 angezeigt und nicht 16 wie geplant HOT 1
- E3DCGui läuft aber keine Anzeige am PI Touchscreen HOT 1
- Ladepriosisierung für Wallbax HOT 5
- Eingabe von Werte als Popup HOT 1
- Ladesperrzeit und Entladesperrzeit setzen HOT 2
- E-Mail vom Watchdog werden nicht gesendet HOT 1
- Aktor wird nicht deaktiviert, wenn Zeitfenster gesetzt ist HOT 9
- Batterie-Limits am E3DC einstellen HOT 3
- Steuerung der Notstromfunktion via HM reagiert nicht richtig HOT 5
- Wallbox Stop-Button ohne Funktion
- Unknown tag 03840000 HOT 2
- Auslesen Hausverbrauch und Gesamtverbrauch Wallbox HOT 2
- Fehlende aktuelle Werte HOT 12
- [Question/Frage] Anzeige des Displays per interne Netzwerk IP HOT 2
- Daten werden nicht zur Homematic gesendet HOT 1
- E3dcGui auf Synology NAS HOT 2
- Bildschirmschoner HOT 2
- Installationsanleitung / Troubleshooting Guide
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from e3dcgui.