Wert in Variable schreiben.. Bitte Hilfe

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

markro
Beiträge: 20
Registriert: 30.01.2019, 09:38

Re: Wert in Variable schreiben.. Bitte Hilfe

Beitrag von markro » 22.08.2021, 09:24

Hier nochmal ein richtiger Screeshot. Gestern die waren mit meinem Handy gemacht. Hatte da keine andere Möglichkeit
Unbenannt2.JPG

markro
Beiträge: 20
Registriert: 30.01.2019, 09:38

Re: Wert in Variable schreiben.. Bitte Hilfe

Beitrag von markro » 22.08.2021, 10:12

Irgendwie scheint es jetzt zu funktionieren. Warum kann ich nicht sagen. Allen Danke für die Hilfe

Xel66
Beiträge: 14165
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 585 Mal
Danksagung erhalten: 1500 Mal

Re: Wert in Variable schreiben.. Bitte Hilfe

Beitrag von Xel66 » 22.08.2021, 10:27

Es hätte auch schon vorher funktionieren müssen. Ich gehe daher davon aus, dass mit Deinem Programmtrigger irgendwas nicht gestimmt hat (daher die Nachfrage nach dem manuellen Programmstart). Für die Anwendung ist es auch eher zielführend, den Vorgang durch die Übermittlung der Daten des Energiesensors triggern zu lassen. Somit stehen Dir die gewünschten Daten kurzfristig zur Verfügung. In Deinem Falle mit der negativen Leistung durch die Solaranlage würde ich den Trigger auf den negativen Maximalleistungswert der Anlage setzen. Wenn die Anlage z.B. 10kWp bringt, dann den Trigger auf "IEC-Leistung größer -10000W bei Aktualisierung" setzen und das Umkopieren der Werte um eine Sekunde verzögern.

Allerdings ist mir bei allem nicht klar, warum Du nicht direkt mit dem Leistungswert des Sensors rechnen kannst. In beiden Fällen benötigst Du für die Berechnungen ein Script. Und ob dieses jetzt seine Daten aus einer Systemvariable oder einen direkten Sensorwert erhält, macht nicht wirklich einen Unterschied. Kann natürlich sein, dass Du irgenwelche externen Lösungen benutzt, die nicht mit Sensorwerten zurechtkommen. Allerdings finde ich sowas dann trotzdem befremdlich, denn einen großen Unterschied macht das nicht wirklich, ob diese Lösungen die Werte in Form eines Sensorwertes oder eine Systemvariable aus der CCU auslesen.

Insofern... Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

markro
Beiträge: 20
Registriert: 30.01.2019, 09:38

Re: Wert in Variable schreiben.. Bitte Hilfe

Beitrag von markro » 22.08.2021, 10:59

Um deine Frage zu beantworten
Ich habe die Sensorwerte leider nicht direkt bekommen. Daher der Umweg über die Variable. Den Trigger habe ich schon geändert, da es jetzt ja funktioniert..
Hier mal mein Script um die Aktuelle Hausleistung zu ermitteln, da der Zähler bei Einspeisung einen Negativen Wert rausgibt.

Code: Alles auswählen

integer curPower = dom.GetObject("Strom Leistung").Value();
integer curSolarPower = dom.GetObject("Solaredge_SolarleistungM").Value();

integer Hausverbrauch = curSolarPower + curPower;

var dstobj1 = dom.GetObject("Hausleistung Aktuell");
dstobj1.State(Hausverbrauch);
curPower ist die ausgelesene Anzeige am Zähler
curSolarPower ist die Momentanleistung der Solaranlage

Das funktioniert auch schon sehr gut.
Jetzt möchte ich aber noch die aktuelle Einspeisung in einer Variable haben. Wenn der curPower Wert negativ ist stimmt ja der Wert. Aber wenn die Solaranage weniger liefert als ich Verbrauche stimmt der Wert nicht mehr da curPower Positiv ist. Somit müsste ich wenn der Wert in der curPower negativ ist den Wert der Hausleistung Aktuell von der curSolarPower abziehen. Aber auch nur wenn der Wert curPower Negativ ist.
Das bekomme ich im Moment noch nicht hin. Vielleicht hat ja noch einer eine Idee

Xel66
Beiträge: 14165
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 585 Mal
Danksagung erhalten: 1500 Mal

Re: Wert in Variable schreiben.. Bitte Hilfe

Beitrag von Xel66 » 22.08.2021, 11:47

Wenn Du den reinen Leistungsbezug des Hauses haben willst sagt meine Logik, dass Du in jedem Fall die erzeugte PV-Leistung von der am Hausanschluss gemessenen Leistung abziehen musst.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

markro
Beiträge: 20
Registriert: 30.01.2019, 09:38

Re: Wert in Variable schreiben.. Bitte Hilfe

Beitrag von markro » 22.08.2021, 14:47

Da der Wert bei Einspeisung aber negativ ist am Zähler muss Addiert werden denke ich . Mal angenommen die Solaranlage leistet gerade 500 W und das Haus benötigt 700W . Dann steht auf dem Zähler 200 W . Wenn aber die Solaranlage 1000W leistet und das Haus nur 700 W benötigt , dann steht auf dem Zähler -300 W . ( 300 W Einspeisung ) Auch hier kommt bei der Addition 700W für den Hausverbrauch raus .

Aber ich hab jetzt alles hinbekommen . Danke

Antworten

Zurück zu „HomeMatic allgemein“