einwandfrei das funktioniert so wie es soll, THX
Ich habe mal versucht die Berechnung mit einzubauen, ich hoffe das geht so oder ist das zu dilettantisch?
Was mir dabei aufgefallen ist, das die SysVar`s offensichtlich nicht für die direkte Berechnung verwendet werden können.
Ist das so vorgegeben?
Ansonsten genau das was ich mir vorgestellt habe und bei der super Doku. kann ich bei Bedarf auch alle anderen Werte rausziehen Top!
Code: Alles auswählen
! ***Solarlog 200 Ertrags- u. Verbrauchsdaten in Variablen schreiben***
! Vor Aufrufen des Scriptes folgende Systemvariablen anlegen:
! Name: SV_Pdc Variablentyp: Zahl Maßeinheit: W
! Name: SV_consPac Variablentyp: Zahl Maßeinheit: W
! JSON-Daten mittels gekürzter 'solarlog2.sh' abrufen
dom.GetObject("CUxD.CUX2801011:1.CMD_SETS").State("/usr/local/addons/solarlog2a.sh");
dom.GetObject("CUxD.CUX2801011:1.CMD_QUERY_RET").State(1);
string response = dom.GetObject("CUxD.CUX2801011:1.CMD_RETS").State();
! Variablen mit Werten füllen
! Im Klartext heisst das: ',"',2 Rufe den 2. Datensatz auf, der mit Komma und Anfuehrungszeichen beginnt
! Danach: ':',1 Also den Ersten Eintrag nach dem Doppelpunkt
! Zum Schluss in eine Integerzahl umwandeln
! Konkret ist der 2. Datensatz der mit Index 101 - der 10. der Index 110; alle anderen Indizes lassen sich auf gleiche Weise verarbeiten
var value_Pdc = (response.StrValueByIndex(',"',1)).StrValueByIndex(':',1).ToInteger();
var value_consPac = (response.StrValueByIndex(',"',10)).StrValueByIndex(':',1).ToInteger();
!Werte in Systemvariablen eintragen
dom.GetObject("SV_Pdc").State(value_Pdc);
dom.GetObject("SV_consPac").State(value_consPac);
! Berechnung des PV-Anlagen Überschuss und schreiben in SysVar SV_PV_Ueberschuss
var u = value_Pdc-value_consPac;
dom.GetObject("SV_PV_Ueberschuss").State(u);
!WriteLine(value_Pdc);
!WriteLine(value_consPac);
!WriteLine(u);