Liebe Community,
aktuell hänge ich an einem Problem, was für die meisten von Euch wahrscheinlich keins sein wird.
Ich möchte im NodeRed einen Flow erstellen, der zwei Zahlenwerte miteinander vergleicht und wenn die Differenz größer als 10 ist, ein Datenpunkt auf true gesetzt wird.
Ziel ist es, dass mein Roborock S50 mit öffnen der Eingangstür zum Mülleimer (Goto) fährt, aber nur wenn er mehr als 10 m ² gereinigt hat. Als Vergleichswerte sollen die insgesamt gereinigte Fläche(mihome-vacuum.0.history.total_area) vor und nach der Reinigung herhalten. Der Vorherwert wird vor dem Saugen in einen selbst erstellten Datenpunkt geschrieben.
Ich würde mich riesig freuen wenn mir hierbei jemand helfen könnte.
Grüße
[
{
"id": "ab2ae8fb.e68e58",
"type": "tab",
"label": "Flow 1",
"disabled": false,
"info": ""
},
{
"id": "d7c17ae3.1f7e58",
"type": "alexa-local",
"z": "ab2ae8fb.e68e58",
"devicename": "Küche",
"inputtrigger": true,
"x": 310,
"y": 240,
"wires": [
[
"33d45720.bc45d8",
"708d1619.5ce768"
]
]
},
{
"id": "708d1619.5ce768",
"type": "switch",
"z": "ab2ae8fb.e68e58",
"name": "true or false",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "on",
"vt": "str"
},
{
"t": "eq",
"v": "off",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 2,
"x": 830,
"y": 240,
"wires": [
[
"b10ba82c.de2328"
],
[
"111f80ec.17b5af"
]
]
},
{
"id": "b10ba82c.de2328",
"type": "function",
"z": "ab2ae8fb.e68e58",
"name": "Zonen",
"func": "// User eingabe!\n// Koordinaten des Gebiets eintragen.\n// Letzte Zahl und das Komma entfernen\n// Schema siehe unten\nvar zone = '25000,22500,28700,25000';\n\n// anzahl der Saugvorgänge\nvar time = 1;\n\nmsg.payload = '[' + zone + ',' + time + ']';\nreturn msg;",
"outputs": 1,
"noerr": 0,
"x": 990,
"y": 220,
"wires": [
[
"d5807028.37dd7"
]
]
},
{
"id": "d5807028.37dd7",
"type": "ioBroker out",
"z": "ab2ae8fb.e68e58",
"name": "Clean a zone",
"topic": "mihome-vacuum.0.control.zoneClean",
"ack": "false",
"autoCreate": "false",
"x": 1150,
"y": 220,
"wires": []
},
{
"id": "111f80ec.17b5af",
"type": "function",
"z": "ab2ae8fb.e68e58",
"name": "false",
"func": "msg.payload = false;\nreturn msg;",
"outputs": 1,
"noerr": 0,
"x": 990,
"y": 260,
"wires": [
[
"ad3384d3.aaf928"
]
]
},
{
"id": "ad3384d3.aaf928",
"type": "ioBroker out",
"z": "ab2ae8fb.e68e58",
"name": "Start/Home",
"topic": "mihome-vacuum.0.control.clean_home",
"ack": "false",
"autoCreate": "false",
"x": 1150,
"y": 260,
"wires": []
},
{
"id": "33d45720.bc45d8",
"type": "ioBroker get",
"z": "ab2ae8fb.e68e58",
"name": "Total area ",
"topic": "mihome-vacuum.0.history.total_area",
"attrname": "payload",
"payloadType": "value",
"x": 520,
"y": 140,
"wires": [
[
"643761f6.3dc32"
]
]
},
{
"id": "643761f6.3dc32",
"type": "ioBroker out",
"z": "ab2ae8fb.e68e58",
"name": "Gesaugte_Flaeche",
"topic": "Datenpunkte.0.Saugroboter.Gesaugte_Flaeche",
"ack": "true",
"autoCreate": "false",
"x": 730,
"y": 140,
"wires": []
}
]