Umstieg auf node-red raffe gar nichts - suche einfachen vergleich

Hallo liebes Forum,
nachdem ich mit meiner Rollladensteuerung mit Sonnen/Regenschutz usw. auf herkömmlichem Wege nicht weiterkomme, versuche ich es nun mit Node-RED. Die Installation hat geklappt. Ein einfacher Vergleich mit der aktuellen Helligkeit mit einem Zahlenwert klappt auch schon mal.
Jetzt möchte ich einen aktuellen Sensorwert Windgeschwindigkeit mit einem von mir gesetzten Variable vergleichen.
Im Grunde weiß ich gar nicht, was ich da mache, habe aber Teilerfolge. Mit der Debug-Funktion komme ich leider auch überhaupt nicht klar.
Anbei meine Abfrage:


Im Grunde soll die Switch oder strigger: state Funktion einfach prüfen, ob “wetterstation_pro_windgeschwindigkeit” > “variable_windgeschwindigkeit” ist.

Danke für Eure Hilfe

Du verwendest m.W. die falsche Node.
Nimm die ‘current_state’ Node. Dort deinen Sensor auswählen und einen Wert/Windgeschwindigkeit eingeben. Somit bekommt die Node zwei Ausgänge mit ‘true’ und ‘false’.

1 „Gefällt mir“

Das kannst du in einem Node mit JSONATA erledigen.
Exportiere und poste mal deinen Flow.

Danke für Deinen Hinweis. Ja, ich hatte den falsche Node.
Einen statischen Vergleich/Auswertung bekomme ich damit hin. Also ist Windstärke > 20 (kmh). Was ich nicht hinbekomme, ist zwei Entitäten vergleichen. Wie könnte das gehen?

Meinst Du so?

[
    {
        "id": "9173858b18b0786a",
        "type": "api-current-state",
        "z": "02a328b3c31bd516",
        "name": "sensor.wetterstation_pro_windgeschwindigkeit",
        "server": "9a63205d.785ca",
        "version": 3,
        "outputs": 2,
        "halt_if": "input_number.variable_windgeschwindigkeit",
        "halt_if_type": "entity",
        "halt_if_compare": "gt",
        "entity_id": "sensor.wetterstation_pro_windgeschwindigkeit",
        "state_type": "num",
        "blockInputOverrides": false,
        "outputProperties": [
            {
                "property": "payload",
                "propertyType": "msg",
                "value": "",
                "valueType": "entityState"
            },
            {
                "property": "data",
                "propertyType": "msg",
                "value": "",
                "valueType": "entity"
            }
        ],
        "for": "0",
        "forType": "num",
        "forUnits": "minutes",
        "override_topic": false,
        "state_location": "payload",
        "override_payload": "msg",
        "entity_location": "data",
        "override_data": "msg",
        "x": 520,
        "y": 300,
        "wires": [
            [
                "9ff633ed99102b35"
            ],
            [
                "9476ff09a7e0d96e"
            ]
        ]
    },
    {
        "id": "9ff633ed99102b35",
        "type": "debug",
        "z": "02a328b3c31bd516",
        "name": "debug 62",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": true,
        "complete": "true",
        "targetType": "full",
        "statusVal": "payload",
        "statusType": "auto",
        "x": 840,
        "y": 240,
        "wires": []
    },
    {
        "id": "9476ff09a7e0d96e",
        "type": "debug",
        "z": "02a328b3c31bd516",
        "name": "debug 63",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": true,
        "complete": "true",
        "targetType": "full",
        "statusVal": "payload",
        "statusType": "auto",
        "x": 840,
        "y": 360,
        "wires": []
    },
    {
        "id": "6cfbd607780acc8b",
        "type": "inject",
        "z": "02a328b3c31bd516",
        "name": "",
        "props": [
            {
                "p": "payload"
            },
            {
                "p": "topic",
                "vt": "str"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "",
        "payloadType": "date",
        "x": 160,
        "y": 300,
        "wires": [
            [
                "9173858b18b0786a"
            ]
        ]
    },
    {
        "id": "9a63205d.785ca",
        "type": "server",
        "name": "Home Assistant",
        "addon": true
    }
]

Versuche es mal so:

[{"id":"9173858b18b0786a","type":"api-current-state","z":"9d7cd8ae.f2fe48","name":"sensor.wetterstation_pro_windgeschwindigkeit","server":"","version":3,"outputs":2,"halt_if":"$number($entities('input_number.variable_windgeschwindigkeit').state)","halt_if_type":"jsonata","halt_if_compare":"gt","entity_id":"sensor.wetterstation_pro_windgeschwindigkeit","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":740,"y":660,"wires":[["9ff633ed99102b35"],["9476ff09a7e0d96e"]]},{"id":"9ff633ed99102b35","type":"debug","z":"9d7cd8ae.f2fe48","name":"debug 62","active":true,"tosidebar":true,"console":false,"tostatus":true,"complete":"true","targetType":"full","statusVal":"payload","statusType":"auto","x":1060,"y":600,"wires":[]},{"id":"9476ff09a7e0d96e","type":"debug","z":"9d7cd8ae.f2fe48","name":"debug 63","active":true,"tosidebar":true,"console":false,"tostatus":true,"complete":"true","targetType":"full","statusVal":"payload","statusType":"auto","x":1060,"y":720,"wires":[]},{"id":"6cfbd607780acc8b","type":"inject","z":"9d7cd8ae.f2fe48","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":380,"y":660,"wires":[["9173858b18b0786a"]]}]

Solltest es mit dem JSONATA aber auch direkt in einem Trigger-Node machen können.

@crypton
Genau so, vielen Dank!

Habe ich denn eine Möglichkeit irgendwie zu sehen, welche Werte miteinander verglichen werden? Den ersten Wert “sensor.wetterstation_pro_windgeschwindigkeit” sehe ich den state-Wert, bei dem zu vergleichenden Wert sehe ich den aktuellen Wert nicht…

Jupp :wink:

[{"id":"bd892b90523d3262","type":"api-current-state","z":"c47ba3dc95e7acf1","name":"sensor.wetterstation_pro_windgeschwindigkeit","server":"","version":3,"outputs":2,"halt_if":"$number($entities('input_number.variable_windgeschwindigkeit').state)","halt_if_type":"jsonata","halt_if_compare":"gt","entity_id":"sensor.wetterstation_pro_windgeschwindigkeit","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"a","propertyType":"msg","value":"","valueType":"entityState"},{"property":"b","propertyType":"msg","value":"$number($entities('input_number.variable_windgeschwindigkeit').state)","valueType":"jsonata"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":750,"y":840,"wires":[["95957d9ecf8c0086"],["44a9c695b6e125f6"]]},{"id":"95957d9ecf8c0086","type":"debug","z":"c47ba3dc95e7acf1","name":"debug 62","active":true,"tosidebar":true,"console":false,"tostatus":true,"complete":"true","targetType":"full","statusVal":"payload","statusType":"auto","x":1070,"y":780,"wires":[]},{"id":"44a9c695b6e125f6","type":"debug","z":"c47ba3dc95e7acf1","name":"debug 63","active":true,"tosidebar":true,"console":false,"tostatus":true,"complete":"true","targetType":"full","statusVal":"payload","statusType":"auto","x":1070,"y":900,"wires":[]},{"id":"7f0f64dfa5fcd755","type":"inject","z":"c47ba3dc95e7acf1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":390,"y":840,"wires":[["bd892b90523d3262"]]}]

Sehr gut, vielen Dank!