NEWS
Function Node welche zwei Werte vergleicht
-
@1984chris ja das liegt an diesem Dockerteil.
Schau mal ob Du folgenden Befehl eingeben kannst:
journalctl -r --since=today -u nodered
Das erzeugt bei mir die Ausgabe des Service NodeRed vom heutigen Tag in umgekehrter Reihenfolge:
Jul 27 16:09:31 mwnodered node-red[127]: 27 Jul 16:09:31 - [info] [debug:SYSLOG Ausgabe] Hallo dies ist eine Debug-Ausgabe Jul 27 16:09:29 mwnodered node-red[127]: 27 Jul 16:09:29 - [info] [mqtt-broker:4a893eed27fc813c] Verbindung zum Broker NodeRed_108@mqtt://MWMqtt2-lxc101:1883 aufgebaut Jul 27 16:09:29 mwnodered node-red[127]: 27 Jul 16:09:29 - [info] [mqtt-broker:590d74b3653ad3c6] Verbindung zum Broker mqttClientMWNodeRed@mqtt://192.168.178.104:1883 aufgebaut Jul 27 16:09:29 mwnodered node-red[127]: 27 Jul 16:09:29 - [info] Flows sind gestartet Jul 27 16:09:29 mwnodered node-red[127]: 27 Jul 16:09:29 - [info] Flows werden gestartet Jul 27 16:09:29 mwnodered node-red[127]: 27 Jul 16:09:29 - [info] Flows aktualisiert Jul 27 16:09:29 mwnodered node-red[127]: 27 Jul 16:09:29 - [info] Flows sind gestoppt Jul 27 16:09:29 mwnodered node-red[127]: 27 Jul 16:09:29 - [info] [mqtt-broker:4a893eed27fc813c] Verbindung zum Broker NodeRed_108@mqtt://MWMqtt2-lxc101:1883 abgebaut Jul 27 16:09:29 mwnodered node-red[127]: 27 Jul 16:09:29 - [info] [mqtt-broker:590d74b3653ad3c6] Verbindung zum Broker mqttClientMWNodeRed@mqtt://192.168.178.104:1883 abgebaut Jul 27 16:09:29 mwnodered node-red[127]: 27 Jul 16:09:29 - [info] Flows werden gestoppt Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] [mqtt-broker:4a893eed27fc813c] Verbindung zum Broker NodeRed_108@mqtt://MWMqtt2-lxc101:1883 aufgebaut Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] [mqtt-broker:590d74b3653ad3c6] Verbindung zum Broker mqttClientMWNodeRed@mqtt://192.168.178.104:1883 aufgebaut Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] Flows sind gestartet Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] [ui-base:dashboard] Created socket.io server bound to Node-RED port at path /dashboard/socket.io Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] [ui-base:dashboard] Node-RED Dashboard 2.0 (v1.1.0) started at /dashboard Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] Flows werden gestartet Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] Server wird jetzt auf http://127.0.0.1:1880/ ausgeführt Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] Flow-Datei: /root/.node-red/flows.json Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [warn] Projekte deaktiviert: editorTheme.projects.enabled=false Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] Benutzerverzeichnis: /root/.node-red Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] Kontextspeicher: file [module=localfilesystem] Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] Kontextspeicher: memoryOnly [module=memory] Jul 27 16:03:38 mwnodered node-red[127]: 27 Jul 16:03:38 - [info] Einstellungsdatei: /root/.node-red/settings.js Jul 27 16:03:36 mwnodered node-red[127]: 27 Jul 16:03:36 - [info] Paletten-Nodes werden geladen Jul 27 16:03:36 mwnodered node-red[127]: 27 Jul 16:03:36 - [info] Linux 6.8.8-2-pve x64 LE Jul 27 16:03:36 mwnodered node-red[127]: 27 Jul 16:03:36 - [info] Node.js Version: v20.16.0 Jul 27 16:03:36 mwnodered node-red[127]: 27 Jul 16:03:36 - [info] Node-RED Version: v4.0.2 Jul 27 16:03:36 mwnodered node-red[127]: =================== Jul 27 16:03:36 mwnodered node-red[127]: Willkommen bei Node-RED Jul 27 16:03:36 mwnodered node-red[127]: 27 Jul 16:03:36 - [info] Jul 27 16:03:35 mwnodered systemd[1]: Started nodered.service - Node-RED.
-
@1984chris sagte in Function Node welche zwei Werte vergleicht:
@1984chris
in welchem Order ist normal das syslog abgelegt?Mit dem Docker kenn ich mich nicht aus -
Schau mal ob das geht:
docker service logs
-
Ich hab in der NOdered Doku was zu Docker gefunden.
https://nodered.org/docs/getting-started/docker
Da schaut es danach aus, als ob du mit
docker run -it -p 1880:1880 -v node_red_data:/data --name mynodered nodered/node-red
Zugriff auf die Systemkonsole erhälst - probier das mal
Eventuell musst Du mynodered durch irgendeinen Namen ersetzen, den Du bei starten oder was vergeben hast. Oder Du stopst innerhalb Deines Dockers NodeRed und startest es dann mit obigen Befehl unter einem dir bekannten Namen.
-
Also wie gesagt, schau halt, dass Du unter Docker irgendwie auf die Systemkonsole Zugriff erhälst.
Wenn Du dann in Deinen Flows - die 2. Option in Deiner Debug Node anhakst:
dann bekommst Du die Ausgaben auf die Konsole und gehen nicht verloren, wenn Du das Browserfenster schließt.
-
Wenn es halt gar nicht klappt, dann musst Du halt ein Browserfenster immer offen halten und dann halt über das Debugfenster schauen, ob richtig getriggert wird.
Im Moment verstehe ich es ja, dass der Flow funktioniert, wenn Du kürzere Zeiträume mit Inject Nodes oder andere Geräte nutzt.
Ich bin jetzt voraussichtlich erst mal für heute weg - oder erst spät abends wieder da. -
@mickym
aber die dubgs verschwinden ja naxh einiger zeit... -
@1984chris nö, solange es die gleiche Sitzung ist.
-
@mickym
z.b wenn pumpe ein 1 in der Debug steht ist das einige Zeit später weg,kann mann das wo einstellen? -
@1984chris nur wenn du ein Browser refresh machst. Da gibt’s nichts zum Einstellen. Schau halt mal ob du in docker zugriff auf deine NodeRed Instanz bekommst, das ist sicher zielführender. Oder du findest jemand der sich mit Docker auskennt
-
@mickym Ansonsten versuche halt mit Inject Nodes das nachzustellen
-
@mickym
habs geschafft,sehe den LOG in der Konsole aber nur ab jetzt.... -
@1984chris macht ja nichts und jetzt musst halt mit einzelnen Debug nodes in das syslog schreiben. Dann siehst was wann wo getriggert hat.
-
mir ist noch eingefallen, setzt du die Laufzeiten eigentlich jeden Tag wieder zurück?
-
@mickym
Die Mindestlaufzeit wird jeden Tag um 01:00 wieder auf 360 gesetzt. -
@1984chris Ok dann mach halt nochmal die Verbindung von dem unteren Flow zu dem oberen Flow weg und schalte das getrennt. Oben ist die Wärmepumpe und die hat mit der Umwälzpumpe erst mal nichts zu tun - ausser dass die Wärmepumpe nicht laufen darf, wenn die Umwälzpumpe Pause macht.
-
@mickym
weiß jetzt nicht genau was du meinst.
Wir haben heute bewölktes Wetter mal 5000 W paar minuten später wieder 1500 W Einspeisung da ist mir aufgefallen das die Wärmepumpe angeht und nach 15 min wieder aus weil zu wenig Überschuss.
hättest du eine Idee wie ich das lösen könnte? -
@1984chris sagte in Function Node welche zwei Werte vergleicht:
@mickym
weiß jetzt nicht genau was du meinst.Na ob Du nur ein Problem mit der Umwälzpumpe hast oder auch mit der Wärmepumpe
Wir haben heute bewölktes Wetter mal 5000 W paar minuten später wieder 1500 W Einspeisung da ist mir aufgefallen das die Wärmepumpe angeht und nach 15 min wieder aus weil zu wenig Überschuss.
hättest du eine Idee wie ich das lösen könnte?Na da muss Du halt eine Entscheidung treffen (ein Hysterese bring ja bei diesen Schwankungen nichts). Ansonsten kannst die Wärmepumpe entweder länger laufen lassen, in dem Du den Zeitraum in der Triggernode erhöhst .
Andere Möglichkeiten sind Mittelwerte oder Standardabweichungen. Generell kann man Ausreißer über den Median herausfiltern. Da Du ja fast sekündlich Werte bekommst, kann man da ja über ein Zeitraum den Median ermitteln, aber es geht halt zu Lasten der Sponanität, da sich der Überschuss erst langsam auf- und abbaut.
Irgendeinen Kompromiss musst Du Dir halt überlegen - oder einen Tod musst Du sterben, Du musst Dir nur überlegen welchen. Ich hab ja keine Ahnung ob 15 Minuten Wärmepume so schlecht ist oder was passiert ,wenn die Wärmepumpe 1 Std. ohne Überschuss läuft. Das musst Du alles entscheiden.
-
@mickym
wenn die Wärmepumpe+Poolpumpe ohne Überschuss laufen sinkt der SOC des Batteriespeichers -
@1984chris said in Function Node welche zwei Werte vergleicht:
@mickym
wenn die Wärmepumpe+Poolpumpe ohne Überschuss laufen sinkt der SOC des Batteriespeicherswenn im schlimmsten Fall der SOC unter 80% sinkt schaltet sie die Wärmepumpe+Poolpumpe auch aus.
Werde den Trigger mal auf 30 min stellen.
Ich hätte noch eine Frage zur Restlauzeit
wieso wird beim ersten setze msg.delay to the value payload*60000 gesetzt?
der Wert kommt ja minütlich haben wir ja beim Shelly Polling auf 60000 eingestellt. -
@1984chris Genau. Das heißt in die Change Node kommt eine Restlaufzeit als payload in Minuten. Die Nachrichteneigenschaft delay ist für die anschließende Triggernode.
Diese Triggernode ist ja auf eine Minute eingestellt, wird aber durch msg.delay überschrieben
Da die msg.delay aber, wie Du in der Hilfe zur Trigger Node nachlesen kannst, in Millisekunden angegeben wird, muss ich die Minuten Restzeit für die Triggernode in Millisekunden umrechnen. Also 1 Minute Restzeit = 60 Sekunden = 60000 Millisekunden.
Die Pollzeit aus der Shellynode sorgt ja nur dafür, dass die Restzeit in Minuten verringert wird und auch nur, wenn sie die Switch Node passiert, also der Shelly eingeschaltet ist, da alle Minuten die Shelly Node triggert.