GithubHelp home page GithubHelp logo

Comments (10)

bs0001 avatar bs0001 commented on June 18, 2024

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()) ? $('#powerEConfig').show() : $('#powerEConfig').hide();
}, 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.

nischram avatar nischram commented on June 18, 2024

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.

bs0001 avatar bs0001 commented on June 18, 2024

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.

bs0001 avatar bs0001 commented on June 18, 2024

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.

nischram avatar nischram commented on June 18, 2024

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.

nischram avatar nischram commented on June 18, 2024

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.

bs0001 avatar bs0001 commented on June 18, 2024

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.

nischram avatar nischram commented on June 18, 2024

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.

nischram avatar nischram commented on June 18, 2024

Hier noch der Link zur Erklärung der actionCheckHM: HM abfragen und S10 steuern
Oder die Funktion der RscpSet: Aufruf der RscpSet

from e3dcgui.

bs0001 avatar bs0001 commented on June 18, 2024

from e3dcgui.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.