Pumpensteuerung Solar

Node-RED als CCU3/RaspberryMatic Addon, WebApp, HomeKit, ...

Moderator: Co-Administratoren

Stephan22
Beiträge: 38
Registriert: 02.12.2020, 21:34
System: CCU
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Pumpensteuerung Solar

Beitrag von Stephan22 » 03.06.2021, 13:23

ptweety hat geschrieben:
03.06.2021, 09:09
Letzteres geht mit einfachen Bordmitteln z.B. wie folgt:

Code: Alles auswählen

[{"id":"3dbba324.c710fc","type":"inject","z":"f48abf30.643098","name":"Reset","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"00 17 * * *","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":430,"y":1800,"wires":[["f0a419f6.36e768"]]},{"id":"8b07a956.32d94","type":"inject","z":"f48abf30.643098","name":"Start","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":430,"y":1860,"wires":[["f5ff59b8.b49ef8"]]},{"id":"c4acc0fe.483ba","type":"inject","z":"f48abf30.643098","name":"Stop","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":430,"y":1900,"wires":[["6b5d5e48.0279d8"]]},{"id":"96a878b6.8755b8","type":"inject","z":"f48abf30.643098","name":"Count","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"*/1 7-16 * * *","once":true,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":430,"y":1960,"wires":[["67b603ef.7926dc"]]},{"id":"f0a419f6.36e768","type":"change","z":"f48abf30.643098","name":"","rules":[{"t":"set","p":"counter","pt":"flow","to":"{\"count\":false,\"value\":0}","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":610,"y":1800,"wires":[[]]},{"id":"f5ff59b8.b49ef8","type":"change","z":"f48abf30.643098","name":"","rules":[{"t":"set","p":"counter.count","pt":"flow","to":"true","tot":"bool"}],"action":"","property":"","from":"","to":"","reg":false,"x":630,"y":1860,"wires":[[]]},{"id":"6b5d5e48.0279d8","type":"change","z":"f48abf30.643098","name":"","rules":[{"t":"set","p":"counter.count","pt":"flow","to":"false","tot":"bool"}],"action":"","property":"","from":"","to":"","reg":false,"x":630,"y":1900,"wires":[[]]},{"id":"67b603ef.7926dc","type":"switch","z":"f48abf30.643098","name":"","property":"counter.count","propertyType":"flow","rules":[{"t":"true"}],"checkall":"true","repair":false,"outputs":1,"x":570,"y":1960,"wires":[["556f3733.1561d8"]]},{"id":"556f3733.1561d8","type":"change","z":"f48abf30.643098","name":"","rules":[{"t":"set","p":"counter.value","pt":"flow","to":"$flowContext('counter').value + 1","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":770,"y":1960,"wires":[[]]},{"id":"a2c304e7.d9a7b8","type":"inject","z":"f48abf30.643098","name":"Check","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"$flowContext('counter')","payloadType":"jsonata","x":430,"y":2020,"wires":[["5ad3f985.bd3f98"]]},{"id":"5ad3f985.bd3f98","type":"debug","z":"f48abf30.643098","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":590,"y":2020,"wires":[]}]
Bildschirmfoto 2021-06-03 um 09.08.34.png
Hallo,

Vielen dank. Das klappt soweit ganz gut. Jetzt wollte ich nur gerne ausrechnen, wie viel Zeit noch fehlt.

Ich habe also in meinem Flow eine funktion eingebaut:

Code: Alles auswählen

msg.payload = 7200 - flow.counter.value
return msg;
dort kommt aber immer:

Code: Alles auswählen

"TypeError: Cannot read property 'value' of undefined"
Wie kann ich denn in einer anderen function auf den counter zugreifen?

Danke!


Edit:
Für alle die dasselbe versuchen sollten, der richtige Aufruf dafür wäre in meinem Fall:

Code: Alles auswählen

msg.payload=flow.get("counter").value

Stephan22
Beiträge: 38
Registriert: 02.12.2020, 21:34
System: CCU
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Pumpensteuerung Solar

Beitrag von Stephan22 » 05.06.2021, 16:12

ptweety hat geschrieben:
03.06.2021, 09:09
Letzteres geht mit einfachen Bordmitteln z.B. wie folgt:

Code: Alles auswählen

[{"id":"3dbba324.c710fc","type":"inject","z":"f48abf30.643098","name":"Reset","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"00 17 * * *","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":430,"y":1800,"wires":[["f0a419f6.36e768"]]},{"id":"8b07a956.32d94","type":"inject","z":"f48abf30.643098","name":"Start","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":430,"y":1860,"wires":[["f5ff59b8.b49ef8"]]},{"id":"c4acc0fe.483ba","type":"inject","z":"f48abf30.643098","name":"Stop","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":430,"y":1900,"wires":[["6b5d5e48.0279d8"]]},{"id":"96a878b6.8755b8","type":"inject","z":"f48abf30.643098","name":"Count","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"*/1 7-16 * * *","once":true,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":430,"y":1960,"wires":[["67b603ef.7926dc"]]},{"id":"f0a419f6.36e768","type":"change","z":"f48abf30.643098","name":"","rules":[{"t":"set","p":"counter","pt":"flow","to":"{\"count\":false,\"value\":0}","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":610,"y":1800,"wires":[[]]},{"id":"f5ff59b8.b49ef8","type":"change","z":"f48abf30.643098","name":"","rules":[{"t":"set","p":"counter.count","pt":"flow","to":"true","tot":"bool"}],"action":"","property":"","from":"","to":"","reg":false,"x":630,"y":1860,"wires":[[]]},{"id":"6b5d5e48.0279d8","type":"change","z":"f48abf30.643098","name":"","rules":[{"t":"set","p":"counter.count","pt":"flow","to":"false","tot":"bool"}],"action":"","property":"","from":"","to":"","reg":false,"x":630,"y":1900,"wires":[[]]},{"id":"67b603ef.7926dc","type":"switch","z":"f48abf30.643098","name":"","property":"counter.count","propertyType":"flow","rules":[{"t":"true"}],"checkall":"true","repair":false,"outputs":1,"x":570,"y":1960,"wires":[["556f3733.1561d8"]]},{"id":"556f3733.1561d8","type":"change","z":"f48abf30.643098","name":"","rules":[{"t":"set","p":"counter.value","pt":"flow","to":"$flowContext('counter').value + 1","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":770,"y":1960,"wires":[[]]},{"id":"a2c304e7.d9a7b8","type":"inject","z":"f48abf30.643098","name":"Check","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"$flowContext('counter')","payloadType":"jsonata","x":430,"y":2020,"wires":[["5ad3f985.bd3f98"]]},{"id":"5ad3f985.bd3f98","type":"debug","z":"f48abf30.643098","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":590,"y":2020,"wires":[]}]
Bildschirmfoto 2021-06-03 um 09.08.34.png
Das Beispiel hat mir echt gut geholfen. Hat mir gezeigt, was man alles so machen kann...

Habe es auch geändert, sodass ich die count Variable nicht mehr benötige. Ich frage quasi den Aktor direkt ab, ob er an oder aus ist.

Wenn an => Zählen im Sekundentakt

Klappt super soweit.

Antworten

Zurück zu „RedMatic“