Segozerskaya_Weintek/nodered/flows_149_154_66_246.json

541 lines
24 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[
{
"id": "80472c6f5ab0ceb1",
"type": "tab",
"label": "СОП",
"disabled": false,
"info": "",
"env": []
},
{
"id": "82fa300ca05c4568",
"type": "function",
"z": "80472c6f5ab0ceb1",
"name": "increment register",
"func": "// Получаем текущее значение из хранилища или задаём начальное значение 10\nlet v = flow.get('WS_T_TANK') || 50;\n\n// Увеличиваем значение на единицу и применяем циклическое изменение в диапазоне от 10 до 30\nv = ((v + 1) > 50 ? 40 : v + 1);\n\n// Сохраняем обновленное значение в поток\nflow.set('WS_T_TANK', v);\n\n// Формируем сообщение для передачи данных\nmsg.payload = {\n value: v,\n register: 0\n};\n\n// Устанавливаем дополнительные параметры сообщения\nmsg.fc = 6; // Тип операции Modbus (запись одиночного регистра)\nmsg.unitid = 1; // Идентификатор устройства\nmsg.address = 1100; // Адрес регистра\nmsg.quantity = 1; // Количество регистров\nmsg.payload = [v];// Значение, которое будет записано\n\n// Возвращаем сформированное сообщение\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 410,
"y": 340,
"wires": [
[
"791aea74bb391beb",
"782ffc62b6685ef5"
]
]
},
{
"id": "72ede930ebd8e9ae",
"type": "inject",
"z": "80472c6f5ab0ceb1",
"name": "tick",
"props": [],
"repeat": "1",
"crontab": "",
"once": true,
"onceDelay": 1,
"topic": "",
"x": 210,
"y": 340,
"wires": [
[
"82fa300ca05c4568",
"0ea8a7cec8595723",
"18284d5de921917f",
"503edbe326920db4",
"a00a9797429ad64e",
"8656df9f506874b5",
"0600f89cbbef760f",
"233784632d9af852",
"3368d6dd4d245c14",
"b70f9de01e3737a7"
]
]
},
{
"id": "782ffc62b6685ef5",
"type": "debug",
"z": "80472c6f5ab0ceb1",
"name": "debug 3",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"statusVal": "",
"statusType": "auto",
"x": 860,
"y": 260,
"wires": []
},
{
"id": "0ea8a7cec8595723",
"type": "function",
"z": "80472c6f5ab0ceb1",
"name": "increment register",
"func": "// Получаем текущее значение из хранилища или задаём начальное значение 10\nlet v = flow.get('WS_T_OUT') || 50;\n\n// Увеличиваем значение на единицу и применяем циклическое изменение в диапазоне от 10 до 30\nv = ((v + 1) > 50 ? 40 : v + 1);\n\n// Сохраняем обновленное значение в поток\nflow.set('WS_T_OUT', v);\n\n// Формируем сообщение для передачи данных\nmsg.payload = {\n value: v,\n register: 0\n};\n\n// Устанавливаем дополнительные параметры сообщения\nmsg.fc = 6; // Тип операции Modbus (запись одиночного регистра)\nmsg.unitid = 1; // Идентификатор устройства\nmsg.address = 1111; // Адрес регистра\nmsg.quantity = 1; // Количество регистров\nmsg.payload = [v];// Значение, которое будет записано\n\n// Возвращаем сформированное сообщение\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 410,
"y": 400,
"wires": [
[
"3e733d4f4f7c7eca"
]
]
},
{
"id": "18284d5de921917f",
"type": "function",
"z": "80472c6f5ab0ceb1",
"name": "increment register",
"func": "// Получаем текущее значение из хранилища или задаём начальное значение 10\nlet v = flow.get('WS_T_REC') || 50;\n\n// Увеличиваем значение на единицу и применяем циклическое изменение в диапазоне от 10 до 30\nv = ((v + 1) > 50 ? 40 : v + 1);\n\n// Сохраняем обновленное значение в поток\nflow.set('WS_T_REC', v);\n\n// Формируем сообщение для передачи данных\nmsg.payload = {\n value: v,\n register: 0\n};\n\n// Устанавливаем дополнительные параметры сообщения\nmsg.fc = 6; // Тип операции Modbus (запись одиночного регистра)\nmsg.unitid = 1; // Идентификатор устройства\nmsg.address = 1112; // Адрес регистра\nmsg.quantity = 1; // Количество регистров\nmsg.payload = [v];// Значение, которое будет записано\n\n// Возвращаем сформированное сообщение\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 410,
"y": 460,
"wires": [
[
"66749e276ed8f774"
]
]
},
{
"id": "503edbe326920db4",
"type": "function",
"z": "80472c6f5ab0ceb1",
"name": "increment register",
"func": "// Получаем текущее значение из хранилища или задаём начальное значение 10\nlet v = flow.get('WS_P_PUMP') || 50;\n\n// Увеличиваем значение на единицу и применяем циклическое изменение в диапазоне от 10 до 30\nv = ((v + 1) > 50 ? 40 : v + 1);\n\n// Сохраняем обновленное значение в поток\nflow.set('WS_P_PUMP', v);\n\n// Формируем сообщение для передачи данных\nmsg.payload = {\n value: v,\n register: 0\n};\n\n// Устанавливаем дополнительные параметры сообщения\nmsg.fc = 6; // Тип операции Modbus (запись одиночного регистра)\nmsg.unitid = 1; // Идентификатор устройства\nmsg.address = 1113; // Адрес регистра\nmsg.quantity = 1; // Количество регистров\nmsg.payload = [v];// Значение, которое будет записано\n\n// Возвращаем сформированное сообщение\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 430,
"y": 520,
"wires": [
[
"0ae0d2efc3157ffb"
]
]
},
{
"id": "a00a9797429ad64e",
"type": "function",
"z": "80472c6f5ab0ceb1",
"name": "increment register",
"func": "// Получаем текущее значение из хранилища или задаём начальное значение 10\nlet v = flow.get('WS_P_OUT') || 50;\n\n// Увеличиваем значение на единицу и применяем циклическое изменение в диапазоне от 10 до 30\nv = ((v + 1) > 50 ? 40 : v + 1);\n\n// Сохраняем обновленное значение в поток\nflow.set('WS_P_OUT', v);\n\n// Формируем сообщение для передачи данных\nmsg.payload = {\n value: v,\n register: 0\n};\n\n// Устанавливаем дополнительные параметры сообщения\nmsg.fc = 6; // Тип операции Modbus (запись одиночного регистра)\nmsg.unitid = 1; // Идентификатор устройства\nmsg.address = 1114; // Адрес регистра\nmsg.quantity = 1; // Количество регистров\nmsg.payload = [v];// Значение, которое будет записано\n\n// Возвращаем сформированное сообщение\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 430,
"y": 580,
"wires": [
[
"16fefaf576d59dad"
]
]
},
{
"id": "8656df9f506874b5",
"type": "function",
"z": "80472c6f5ab0ceb1",
"name": "increment register",
"func": "// Получаем текущее значение из хранилища или задаём начальное значение 10\nlet v = flow.get('WS_L') || 50;\n\n// Увеличиваем значение на единицу и применяем циклическое изменение в диапазоне от 10 до 30\nv = ((v + 1) > 50 ? 40 : v + 1);\n\n// Сохраняем обновленное значение в поток\nflow.set('WS_L', v);\n\n// Формируем сообщение для передачи данных\nmsg.payload = {\n value: v,\n register: 0\n};\n\n// Устанавливаем дополнительные параметры сообщения\nmsg.fc = 6; // Тип операции Modbus (запись одиночного регистра)\nmsg.unitid = 1; // Идентификатор устройства\nmsg.address = 1115; // Адрес регистра\nmsg.quantity = 1; // Количество регистров\nmsg.payload = [v];// Значение, которое будет записано\n\n// Возвращаем сформированное сообщение\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 430,
"y": 640,
"wires": [
[
"45f23a96185e8194"
]
]
},
{
"id": "0600f89cbbef760f",
"type": "function",
"z": "80472c6f5ab0ceb1",
"name": "increment register",
"func": "// Получаем текущее значение из хранилища или задаём начальное значение 10\nlet v = flow.get('WS_RESERVE1') || 50;\n\n// Увеличиваем значение на единицу и применяем циклическое изменение в диапазоне от 10 до 30\nv = ((v + 1) > 50 ? 40 : v + 1);\n\n// Сохраняем обновленное значение в поток\nflow.set('WS_RESERVE1', v);\n\n// Формируем сообщение для передачи данных\nmsg.payload = {\n value: v,\n register: 0\n};\n\n// Устанавливаем дополнительные параметры сообщения\nmsg.fc = 5; // Тип операции Modbus (запись одиночного регистра)\nmsg.unitid = 1; // Идентификатор устройства\nmsg.address = 1116; // Адрес регистра\nmsg.quantity = 1; // Количество регистров\nmsg.payload = [v];// Значение, которое будет записано\n\n// Возвращаем сформированное сообщение\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 430,
"y": 700,
"wires": [
[
"f0817ef1fe6a7c7b"
]
]
},
{
"id": "233784632d9af852",
"type": "function",
"z": "80472c6f5ab0ceb1",
"name": "increment register",
"func": "// Получаем текущее значение из хранилища или задаём начальное значение 10\nlet v = flow.get('WS_RESERVE2') || 50;\n\n// Увеличиваем значение на единицу и применяем циклическое изменение в диапазоне от 10 до 30\nv = ((v + 1) > 50 ? 40 : v + 1);\n\n// Сохраняем обновленное значение в поток\nflow.set('WS_RESERVE2', v);\n\n// Формируем сообщение для передачи данных\nmsg.payload = {\n value: v,\n register: 0\n};\n\n// Устанавливаем дополнительные параметры сообщения\nmsg.fc = 5; // Тип операции Modbus (запись одиночного регистра)\nmsg.unitid = 1; // Идентификатор устройства\nmsg.address = 1117; // Адрес регистра\nmsg.quantity = 1; // Количество регистров\nmsg.payload = [v];// Значение, которое будет записано\n\n// Возвращаем сформированное сообщение\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 430,
"y": 760,
"wires": [
[
"f8997f5372daf09b"
]
]
},
{
"id": "3368d6dd4d245c14",
"type": "function",
"z": "80472c6f5ab0ceb1",
"name": "increment register",
"func": "// Получаем текущее значение из хранилища или задаём начальное значение 10\nlet v = flow.get('WS_DSC1') || 50;\n\n// Увеличиваем значение на единицу и применяем циклическое изменение в диапазоне от 10 до 30\nv = ((v + 1) > 50 ? 40 : v + 1);\n\n// Сохраняем обновленное значение в поток\nflow.set('WS_DSC1', v);\n\n// Формируем сообщение для передачи данных\nmsg.payload = {\n value: v,\n register: 0\n};\n\n// Устанавливаем дополнительные параметры сообщения\nmsg.fc = 5; // Тип операции Modbus (запись одиночного регистра)\nmsg.unitid = 1; // Идентификатор устройства\nmsg.address = 1118; // Адрес регистра\nmsg.quantity = 1; // Количество регистров\nmsg.payload = [v];// Значение, которое будет записано\n\n// Возвращаем сформированное сообщение\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 430,
"y": 820,
"wires": [
[
"c1298450172d3598"
]
]
},
{
"id": "791aea74bb391beb",
"type": "modbus-write",
"z": "80472c6f5ab0ceb1",
"name": "СОП. Температура в баке",
"showStatusActivities": false,
"showErrors": false,
"showWarnings": true,
"unitid": "1",
"dataType": "HoldingRegister",
"adr": "1110",
"quantity": "1",
"server": "aa6c3b71da0ea2b8",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"delayOnStart": false,
"startDelayTime": "",
"x": 660,
"y": 340,
"wires": [
[],
[]
]
},
{
"id": "3e733d4f4f7c7eca",
"type": "modbus-write",
"z": "80472c6f5ab0ceb1",
"name": "СОП. Температура после т/об",
"showStatusActivities": false,
"showErrors": false,
"showWarnings": true,
"unitid": "1",
"dataType": "HoldingRegister",
"adr": "1111",
"quantity": "1",
"server": "",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"delayOnStart": false,
"startDelayTime": "",
"x": 670,
"y": 400,
"wires": [
[],
[]
]
},
{
"id": "66749e276ed8f774",
"type": "modbus-write",
"z": "80472c6f5ab0ceb1",
"name": "СОП. Температура внешнего контура",
"showStatusActivities": false,
"showErrors": false,
"showWarnings": true,
"unitid": "1",
"dataType": "HoldingRegister",
"adr": "1112",
"quantity": "1",
"server": "",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"delayOnStart": false,
"startDelayTime": "",
"x": 700,
"y": 460,
"wires": [
[],
[]
]
},
{
"id": "0ae0d2efc3157ffb",
"type": "modbus-write",
"z": "80472c6f5ab0ceb1",
"name": "СОП. Давление после насоса",
"showStatusActivities": false,
"showErrors": false,
"showWarnings": true,
"unitid": "1",
"dataType": "HoldingRegister",
"adr": "1113",
"quantity": "1",
"server": "",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"delayOnStart": false,
"startDelayTime": "",
"x": 670,
"y": 520,
"wires": [
[],
[]
]
},
{
"id": "16fefaf576d59dad",
"type": "modbus-write",
"z": "80472c6f5ab0ceb1",
"name": "СОП. Давление в контуре",
"showStatusActivities": false,
"showErrors": false,
"showWarnings": true,
"unitid": "1",
"dataType": "HoldingRegister",
"adr": "1114",
"quantity": "1",
"server": "",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"delayOnStart": false,
"startDelayTime": "",
"x": 660,
"y": 580,
"wires": [
[],
[]
]
},
{
"id": "45f23a96185e8194",
"type": "modbus-write",
"z": "80472c6f5ab0ceb1",
"name": "СОП. Уровень в баке",
"showStatusActivities": false,
"showErrors": false,
"showWarnings": true,
"unitid": "1",
"dataType": "HoldingRegister",
"adr": "1115",
"quantity": "1",
"server": "",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"delayOnStart": false,
"startDelayTime": "",
"x": 640,
"y": 640,
"wires": [
[],
[]
]
},
{
"id": "f0817ef1fe6a7c7b",
"type": "modbus-write",
"z": "80472c6f5ab0ceb1",
"name": "СОП. WS_RESERVE1",
"showStatusActivities": false,
"showErrors": false,
"showWarnings": true,
"unitid": "1",
"dataType": "Coil",
"adr": "1116",
"quantity": "1",
"server": "",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"delayOnStart": false,
"startDelayTime": "",
"x": 640,
"y": 700,
"wires": [
[],
[]
]
},
{
"id": "f8997f5372daf09b",
"type": "modbus-write",
"z": "80472c6f5ab0ceb1",
"name": "СОП. WS_RESERVE2",
"showStatusActivities": false,
"showErrors": false,
"showWarnings": true,
"unitid": "1",
"dataType": "Coil",
"adr": "1117",
"quantity": "1",
"server": "",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"delayOnStart": false,
"startDelayTime": "",
"x": 640,
"y": 760,
"wires": [
[],
[]
]
},
{
"id": "c1298450172d3598",
"type": "modbus-write",
"z": "80472c6f5ab0ceb1",
"name": "СОП. Дискретные сигналы водяной станции",
"showStatusActivities": false,
"showErrors": false,
"showWarnings": true,
"unitid": "1",
"dataType": "Coil",
"adr": "1118",
"quantity": "1",
"server": "",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"delayOnStart": false,
"startDelayTime": "",
"x": 720,
"y": 820,
"wires": [
[],
[]
]
},
{
"id": "95b003fc392fcadd",
"type": "modbus-server",
"z": "80472c6f5ab0ceb1",
"name": "",
"logEnabled": true,
"hostname": "0.0.0.0",
"serverPort": 10502,
"responseDelay": 100,
"delayUnit": "ms",
"coilsBufferSize": 10000,
"holdingBufferSize": 10000,
"inputBufferSize": 10000,
"discreteBufferSize": 10000,
"showErrors": true,
"showStatusActivities": true,
"x": 200,
"y": 120,
"wires": [
[],
[],
[],
[],
[]
]
},
{
"id": "5c728bfa2fcb05c1",
"type": "modbus-write",
"z": "80472c6f5ab0ceb1",
"name": "xxx. LIION_U",
"showStatusActivities": false,
"showErrors": false,
"showWarnings": true,
"unitid": "1",
"dataType": "HoldingRegister",
"adr": "91",
"quantity": "1",
"server": "aa6c3b71da0ea2b8",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"delayOnStart": false,
"startDelayTime": "",
"x": 630,
"y": 180,
"wires": [
[],
[]
]
},
{
"id": "b70f9de01e3737a7",
"type": "function",
"z": "80472c6f5ab0ceb1",
"name": "increment register",
"func": "// Получаем текущее значение из хранилища или задаём начальное значение 10\nlet v = flow.get('LIION_U') || 60;\n\n// Увеличиваем значение на единицу и применяем циклическое изменение в диапазоне от 10 до 30\nv = ((v + 1) > 60 ? 40 : v + 2);\n\n// Сохраняем обновленное значение в поток\nflow.set('LIION_U', v);\n\n// Формируем сообщение для передачи данных\nmsg.payload = {\n value: v,\n register: 0\n};\n\n// Устанавливаем дополнительные параметры сообщения\nmsg.fc = 6; // Тип операции Modbus (запись одиночного регистра)\nmsg.unitid = 1; // Идентификатор устройства\nmsg.address = 1100; // Адрес регистра\nmsg.quantity = 1; // Количество регистров\nmsg.payload = [v*10];// Значение, которое будет записано\n\n// Возвращаем сформированное сообщение\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 410,
"y": 240,
"wires": [
[
"5c728bfa2fcb05c1"
]
]
},
{
"id": "aa6c3b71da0ea2b8",
"type": "modbus-client",
"name": "",
"clienttype": "tcp",
"bufferCommands": true,
"stateLogEnabled": false,
"queueLogEnabled": false,
"failureLogEnabled": true,
"tcpHost": "0.0.0.0",
"tcpPort": "10502",
"tcpType": "DEFAULT",
"serialPort": "/dev/ttyUSB",
"serialType": "RTU-BUFFERD",
"serialBaudrate": "9600",
"serialDatabits": "8",
"serialStopbits": "1",
"serialParity": "none",
"serialConnectionDelay": "100",
"serialAsciiResponseStartDelimiter": "0x3A",
"unit_id": "1",
"commandDelay": "1",
"clientTimeout": "1000",
"reconnectOnTimeout": true,
"reconnectTimeout": "2000",
"parallelUnitIdsAllowed": true,
"showErrors": false,
"showWarnings": true,
"showLogs": true
}
]