Проект NODE-RED для ESP32 (http://127.0.0.1:1880/)(http://127.0.0.1:1880/ui)
This commit is contained in:
512
node-red/flows.json
Normal file
512
node-red/flows.json
Normal file
@@ -0,0 +1,512 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"id": "b6a554cb58b20b89",
|
||||||
|
"type": "tab",
|
||||||
|
"label": "Поток 1",
|
||||||
|
"disabled": false,
|
||||||
|
"info": "",
|
||||||
|
"env": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "e2dbb550ecc754bb",
|
||||||
|
"type": "mqtt in",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "",
|
||||||
|
"topic": "Bird",
|
||||||
|
"qos": "2",
|
||||||
|
"datatype": "auto-detect",
|
||||||
|
"broker": "77647757300a0f3b",
|
||||||
|
"nl": false,
|
||||||
|
"rap": true,
|
||||||
|
"rh": 0,
|
||||||
|
"inputs": 0,
|
||||||
|
"x": 230,
|
||||||
|
"y": 300,
|
||||||
|
"wires": [
|
||||||
|
[
|
||||||
|
"2362125992f2f15a",
|
||||||
|
"853c51250983534e"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "2362125992f2f15a",
|
||||||
|
"type": "debug",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "debug 1",
|
||||||
|
"active": true,
|
||||||
|
"tosidebar": false,
|
||||||
|
"console": false,
|
||||||
|
"tostatus": false,
|
||||||
|
"complete": "payload",
|
||||||
|
"targetType": "msg",
|
||||||
|
"statusVal": "",
|
||||||
|
"statusType": "auto",
|
||||||
|
"x": 440,
|
||||||
|
"y": 240,
|
||||||
|
"wires": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "853c51250983534e",
|
||||||
|
"type": "ui_template",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"group": "de858d4f14ceb677",
|
||||||
|
"name": "",
|
||||||
|
"order": 0,
|
||||||
|
"width": 0,
|
||||||
|
"height": 0,
|
||||||
|
"format": "<div id=\"camera-container\">\n <img id=\"camera-stream\" src=\"http://192.168.31.235/stream\"\n onerror=\"this.onerror=null; this.src='data:image/svg+xml,%3Csvg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"100%25\\\" height=\\\"400\\\"%3E%3Crect width=\\\"100%25\\\" height=\\\"100%25\\\" fill=\\\"%23333\\\"%3E%3C/rect%3E%3Ctext x=\\\"50%25\\\" y=\\\"50%25\\\" text-anchor=\\\"middle\\\" fill=\\\"%23fff\\\"%3ECamera offline - check connection%3C/text%3E%3C/svg%3E';\"\n style=\"width:100%; max-width:320px; height:240px;\">\n</div>\n\n<script>\n setInterval(function() {\n var img = document.getElementById('camera-stream');\n if (img) {\n var timestamp = new Date().getTime();\n img.src = 'http://192.168.31.235/stream?' + timestamp;\n }\n}, 5000);\n</script>",
|
||||||
|
"storeOutMessages": true,
|
||||||
|
"fwdInMessages": true,
|
||||||
|
"resendOnRefresh": true,
|
||||||
|
"templateScope": "local",
|
||||||
|
"className": "",
|
||||||
|
"x": 440,
|
||||||
|
"y": 300,
|
||||||
|
"wires": [
|
||||||
|
[]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "f43e5b2d6e86f54d",
|
||||||
|
"type": "mqtt in",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "light",
|
||||||
|
"topic": "esp32/sensors/light",
|
||||||
|
"qos": "2",
|
||||||
|
"datatype": "auto-detect",
|
||||||
|
"broker": "77647757300a0f3b",
|
||||||
|
"nl": false,
|
||||||
|
"rap": true,
|
||||||
|
"rh": 0,
|
||||||
|
"inputs": 0,
|
||||||
|
"x": 230,
|
||||||
|
"y": 400,
|
||||||
|
"wires": [
|
||||||
|
[
|
||||||
|
"5f6b7a790ede5d26",
|
||||||
|
"744d0ca72a8e8df6"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "347db67a62c25780",
|
||||||
|
"type": "mqtt in",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "temp",
|
||||||
|
"topic": "esp32/sensors/temp",
|
||||||
|
"qos": "2",
|
||||||
|
"datatype": "auto-detect",
|
||||||
|
"broker": "77647757300a0f3b",
|
||||||
|
"nl": false,
|
||||||
|
"rap": true,
|
||||||
|
"rh": 0,
|
||||||
|
"inputs": 0,
|
||||||
|
"x": 230,
|
||||||
|
"y": 520,
|
||||||
|
"wires": [
|
||||||
|
[
|
||||||
|
"1abf7819982867cb",
|
||||||
|
"bade5e5c2073894d"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "edacc7ae819555c1",
|
||||||
|
"type": "mqtt in",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "humidity",
|
||||||
|
"topic": "esp32/sensors/humidity",
|
||||||
|
"qos": "2",
|
||||||
|
"datatype": "auto-detect",
|
||||||
|
"broker": "77647757300a0f3b",
|
||||||
|
"nl": false,
|
||||||
|
"rap": true,
|
||||||
|
"rh": 0,
|
||||||
|
"inputs": 0,
|
||||||
|
"x": 240,
|
||||||
|
"y": 660,
|
||||||
|
"wires": [
|
||||||
|
[
|
||||||
|
"56ccdbc50d6e0d65",
|
||||||
|
"dc38d7ae67c9b0fa"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "5f6b7a790ede5d26",
|
||||||
|
"type": "debug",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "debug 2",
|
||||||
|
"active": true,
|
||||||
|
"tosidebar": true,
|
||||||
|
"console": false,
|
||||||
|
"tostatus": false,
|
||||||
|
"complete": "payload",
|
||||||
|
"targetType": "msg",
|
||||||
|
"statusVal": "",
|
||||||
|
"statusType": "auto",
|
||||||
|
"x": 440,
|
||||||
|
"y": 400,
|
||||||
|
"wires": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "1abf7819982867cb",
|
||||||
|
"type": "debug",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "debug 3",
|
||||||
|
"active": true,
|
||||||
|
"tosidebar": true,
|
||||||
|
"console": false,
|
||||||
|
"tostatus": false,
|
||||||
|
"complete": "false",
|
||||||
|
"statusVal": "",
|
||||||
|
"statusType": "auto",
|
||||||
|
"x": 440,
|
||||||
|
"y": 520,
|
||||||
|
"wires": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "56ccdbc50d6e0d65",
|
||||||
|
"type": "debug",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "debug 4",
|
||||||
|
"active": true,
|
||||||
|
"tosidebar": true,
|
||||||
|
"console": false,
|
||||||
|
"tostatus": false,
|
||||||
|
"complete": "false",
|
||||||
|
"statusVal": "",
|
||||||
|
"statusType": "auto",
|
||||||
|
"x": 440,
|
||||||
|
"y": 660,
|
||||||
|
"wires": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "744d0ca72a8e8df6",
|
||||||
|
"type": "ui_text",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"group": "de858d4f14ceb677",
|
||||||
|
"order": 1,
|
||||||
|
"width": 0,
|
||||||
|
"height": 0,
|
||||||
|
"name": "",
|
||||||
|
"label": "Освещённость",
|
||||||
|
"format": "{{msg.payload}}",
|
||||||
|
"layout": "row-left",
|
||||||
|
"className": "",
|
||||||
|
"style": false,
|
||||||
|
"font": "",
|
||||||
|
"fontSize": 16,
|
||||||
|
"color": "#000000",
|
||||||
|
"x": 460,
|
||||||
|
"y": 360,
|
||||||
|
"wires": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "bade5e5c2073894d",
|
||||||
|
"type": "ui_text",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"group": "de858d4f14ceb677",
|
||||||
|
"order": 2,
|
||||||
|
"width": 0,
|
||||||
|
"height": 0,
|
||||||
|
"name": "",
|
||||||
|
"label": "Температура",
|
||||||
|
"format": "{{msg.payload}}",
|
||||||
|
"layout": "row-left",
|
||||||
|
"className": "",
|
||||||
|
"style": false,
|
||||||
|
"font": "",
|
||||||
|
"fontSize": 16,
|
||||||
|
"color": "#000000",
|
||||||
|
"x": 460,
|
||||||
|
"y": 480,
|
||||||
|
"wires": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc38d7ae67c9b0fa",
|
||||||
|
"type": "ui_text",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"group": "de858d4f14ceb677",
|
||||||
|
"order": 3,
|
||||||
|
"width": 0,
|
||||||
|
"height": 0,
|
||||||
|
"name": "",
|
||||||
|
"label": "Влажность",
|
||||||
|
"format": "{{msg.payload}}",
|
||||||
|
"layout": "row-left",
|
||||||
|
"className": "",
|
||||||
|
"style": false,
|
||||||
|
"font": "",
|
||||||
|
"fontSize": 16,
|
||||||
|
"color": "#000000",
|
||||||
|
"x": 450,
|
||||||
|
"y": 620,
|
||||||
|
"wires": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "0eacb49f1c0dd21a",
|
||||||
|
"type": "mqtt out",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "",
|
||||||
|
"topic": "esp32/led",
|
||||||
|
"qos": "",
|
||||||
|
"retain": "",
|
||||||
|
"respTopic": "",
|
||||||
|
"contentType": "",
|
||||||
|
"userProps": "",
|
||||||
|
"correl": "",
|
||||||
|
"expiry": "",
|
||||||
|
"broker": "77647757300a0f3b",
|
||||||
|
"x": 620,
|
||||||
|
"y": 780,
|
||||||
|
"wires": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dff600700ba8712a",
|
||||||
|
"type": "ui_colour_picker",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "color_led",
|
||||||
|
"label": "Настроить освещение",
|
||||||
|
"group": "de858d4f14ceb677",
|
||||||
|
"format": "hex",
|
||||||
|
"outformat": "string",
|
||||||
|
"showSwatch": true,
|
||||||
|
"showPicker": false,
|
||||||
|
"showValue": false,
|
||||||
|
"showHue": false,
|
||||||
|
"showAlpha": false,
|
||||||
|
"showLightness": true,
|
||||||
|
"square": "false",
|
||||||
|
"dynOutput": "false",
|
||||||
|
"order": 5,
|
||||||
|
"width": 0,
|
||||||
|
"height": 0,
|
||||||
|
"passthru": true,
|
||||||
|
"topic": "topic",
|
||||||
|
"topicType": "msg",
|
||||||
|
"className": "",
|
||||||
|
"x": 200,
|
||||||
|
"y": 840,
|
||||||
|
"wires": [
|
||||||
|
[
|
||||||
|
"2095de04955e307f"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "2095de04955e307f",
|
||||||
|
"type": "function",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "function 1",
|
||||||
|
"func": "let hex = msg.payload;\n\nhex = hex.replace(\"#\", \"\");\n\nlet r = parseInt(hex.substring(0, 2), 16);\nlet g = parseInt(hex.substring(2, 4), 16);\nlet b = parseInt(hex.substring(4, 6), 16);\n\nmsg.payload = `${r},${g},${b}`;\n\nreturn msg;",
|
||||||
|
"outputs": 1,
|
||||||
|
"timeout": 0,
|
||||||
|
"noerr": 0,
|
||||||
|
"initialize": "",
|
||||||
|
"finalize": "",
|
||||||
|
"libs": [],
|
||||||
|
"x": 400,
|
||||||
|
"y": 840,
|
||||||
|
"wires": [
|
||||||
|
[
|
||||||
|
"0eacb49f1c0dd21a"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "38796c6012673ea3",
|
||||||
|
"type": "ui_switch",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "led",
|
||||||
|
"label": "Выкл./Вкл. освещение",
|
||||||
|
"tooltip": "",
|
||||||
|
"group": "de858d4f14ceb677",
|
||||||
|
"order": 5,
|
||||||
|
"width": 0,
|
||||||
|
"height": 0,
|
||||||
|
"passthru": true,
|
||||||
|
"decouple": "false",
|
||||||
|
"topic": "esp32/led",
|
||||||
|
"topicType": "msg",
|
||||||
|
"style": "",
|
||||||
|
"onvalue": "255,255,255",
|
||||||
|
"onvalueType": "str",
|
||||||
|
"onicon": "",
|
||||||
|
"oncolor": "",
|
||||||
|
"offvalue": "OFF",
|
||||||
|
"offvalueType": "str",
|
||||||
|
"officon": "",
|
||||||
|
"offcolor": "",
|
||||||
|
"animate": false,
|
||||||
|
"className": "",
|
||||||
|
"x": 390,
|
||||||
|
"y": 780,
|
||||||
|
"wires": [
|
||||||
|
[
|
||||||
|
"0eacb49f1c0dd21a"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "56c329c92a8daa3a",
|
||||||
|
"type": "ui_button",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "day",
|
||||||
|
"group": "de858d4f14ceb677",
|
||||||
|
"order": 6,
|
||||||
|
"width": 0,
|
||||||
|
"height": 0,
|
||||||
|
"passthru": false,
|
||||||
|
"label": "День",
|
||||||
|
"tooltip": "",
|
||||||
|
"color": "",
|
||||||
|
"bgcolor": "",
|
||||||
|
"className": "",
|
||||||
|
"icon": "",
|
||||||
|
"payload": "DAY",
|
||||||
|
"payloadType": "str",
|
||||||
|
"topic": "esp32/servo",
|
||||||
|
"topicType": "msg",
|
||||||
|
"x": 390,
|
||||||
|
"y": 920,
|
||||||
|
"wires": [
|
||||||
|
[
|
||||||
|
"cb039d5711277422"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "136ce072862c41f7",
|
||||||
|
"type": "ui_button",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "night",
|
||||||
|
"group": "de858d4f14ceb677",
|
||||||
|
"order": 8,
|
||||||
|
"width": 0,
|
||||||
|
"height": 0,
|
||||||
|
"passthru": false,
|
||||||
|
"label": "Ночь",
|
||||||
|
"tooltip": "",
|
||||||
|
"color": "",
|
||||||
|
"bgcolor": "",
|
||||||
|
"className": "",
|
||||||
|
"icon": "",
|
||||||
|
"payload": "NIGHT",
|
||||||
|
"payloadType": "str",
|
||||||
|
"topic": "esp32/servo",
|
||||||
|
"topicType": "msg",
|
||||||
|
"x": 390,
|
||||||
|
"y": 1000,
|
||||||
|
"wires": [
|
||||||
|
[
|
||||||
|
"cb039d5711277422"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "39d131b72bf61cc5",
|
||||||
|
"type": "ui_button",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "mid",
|
||||||
|
"group": "de858d4f14ceb677",
|
||||||
|
"order": 7,
|
||||||
|
"width": 0,
|
||||||
|
"height": 0,
|
||||||
|
"passthru": false,
|
||||||
|
"label": "Полдень",
|
||||||
|
"tooltip": "",
|
||||||
|
"color": "",
|
||||||
|
"bgcolor": "",
|
||||||
|
"className": "",
|
||||||
|
"icon": "",
|
||||||
|
"payload": "MID",
|
||||||
|
"payloadType": "str",
|
||||||
|
"topic": "esp32/servo",
|
||||||
|
"topicType": "msg",
|
||||||
|
"x": 390,
|
||||||
|
"y": 960,
|
||||||
|
"wires": [
|
||||||
|
[
|
||||||
|
"cb039d5711277422"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "cb039d5711277422",
|
||||||
|
"type": "mqtt out",
|
||||||
|
"z": "b6a554cb58b20b89",
|
||||||
|
"name": "",
|
||||||
|
"topic": "esp32/servo",
|
||||||
|
"qos": "",
|
||||||
|
"retain": "",
|
||||||
|
"respTopic": "",
|
||||||
|
"contentType": "",
|
||||||
|
"userProps": "",
|
||||||
|
"correl": "",
|
||||||
|
"expiry": "",
|
||||||
|
"broker": "77647757300a0f3b",
|
||||||
|
"x": 610,
|
||||||
|
"y": 980,
|
||||||
|
"wires": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "77647757300a0f3b",
|
||||||
|
"type": "mqtt-broker",
|
||||||
|
"name": "Mosquitto",
|
||||||
|
"broker": "192.168.31.78",
|
||||||
|
"port": 1883,
|
||||||
|
"clientid": "",
|
||||||
|
"autoConnect": true,
|
||||||
|
"usetls": false,
|
||||||
|
"protocolVersion": 4,
|
||||||
|
"keepalive": 60,
|
||||||
|
"cleansession": true,
|
||||||
|
"autoUnsubscribe": true,
|
||||||
|
"birthTopic": "",
|
||||||
|
"birthQos": "0",
|
||||||
|
"birthRetain": "false",
|
||||||
|
"birthPayload": "",
|
||||||
|
"birthMsg": {},
|
||||||
|
"closeTopic": "",
|
||||||
|
"closeQos": "0",
|
||||||
|
"closeRetain": "false",
|
||||||
|
"closePayload": "",
|
||||||
|
"closeMsg": {},
|
||||||
|
"willTopic": "",
|
||||||
|
"willQos": "0",
|
||||||
|
"willRetain": "false",
|
||||||
|
"willPayload": "",
|
||||||
|
"willMsg": {},
|
||||||
|
"userProps": "",
|
||||||
|
"sessionExpiry": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "de858d4f14ceb677",
|
||||||
|
"type": "ui_group",
|
||||||
|
"name": "Default",
|
||||||
|
"tab": "8e35d7697e7af77c",
|
||||||
|
"order": 1,
|
||||||
|
"disp": true,
|
||||||
|
"width": "24",
|
||||||
|
"collapse": false,
|
||||||
|
"className": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "8e35d7697e7af77c",
|
||||||
|
"type": "ui_tab",
|
||||||
|
"name": "Home",
|
||||||
|
"icon": "dashboard",
|
||||||
|
"disabled": false,
|
||||||
|
"hidden": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "cfd15ff24e6ffc58",
|
||||||
|
"type": "global-config",
|
||||||
|
"env": [],
|
||||||
|
"modules": {
|
||||||
|
"node-red-dashboard": "3.6.6"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
Reference in New Issue
Block a user