Updated:October 6, 2020 By steve Node-Red Buffers- Integers and Floats Version Download 675 File Size 6.01 KB File Count 1 Create Date July 9, 2019 Last Updated October 6, 2020 Download Description Join out Email list and stay up to date Please leave this field empty. Make a Contribution if you find this useful and would like to make a contribution, then you can do so by clicking here. Please rate? And use Comments to let me know more
Hello Steve, I am new to Node Red & trying to get the data from a gas flow meter. The data type is Float. I have tried few methods by searching the Web, Youtube. Here is the json file of the Flow. The problem is I am not getting the correct value of as in the register of the Modbus contrib read. The 8 bit buffer from the read data matches the value of the flowmeter register. But when I convert the value is not matching. Please help. The correct value is 1242298282-32Bit UInt, 2293227 – Float. Please Weld gas Total [ { “id”: “cc95679c3902ed7a”, “type”: “tab”, “label”: “Paneling”, “disabled”: false, “info”: “” }, { “id”: “11b428f717ac8283”, “type”: “modbus-read”, “z”: “cc95679c3902ed7a”, “name”: “WeldGasFlRt”, “topic”: “”, “showStatusActivities”: false, “logIOActivities”: false, “showErrors”: false, “unitid”: “1”, “dataType”: “HoldingRegister”, “adr”: “3”, “quantity”: “2”, “rate”: “1”, “rateUnit”: “m”, “delayOnStart”: false, “startDelayTime”: “”, “server”: “0fe5f962b71582e1”, “useIOFile”: false, “ioFile”: “”, “useIOForPayload”: false, “emptyMsgOnFail”: false, “x”: 130, “y”: 60, “wires”: [ [ “0157462b9f7cf4f8”, “e517639961f7ea91” ], [] ] }, { “id”: “0157462b9f7cf4f8”, “type”: “modbus-response”, “z”: “cc95679c3902ed7a”, “name”: “”, “registerShowMax”: 20, “x”: 330, “y”: 20, “wires”: [] }, { “id”: “e517639961f7ea91”, “type”: “function”, “z”: “cc95679c3902ed7a”, “name”: “Convert”, “func”: “msg.payload = (msg.payload[0]<<16 + msg.payload[1]);\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 300, "y": 80, "wires": [ [ "68b2a54d6d2251df" ] ] }, { "id": "2be7479ff0f1d399", "type": "modbus-response", "z": "cc95679c3902ed7a", "name": "", "registerShowMax": 20, "x": 330, "y": 120, "wires": [] }, { "id": "3791f2a088c36ccc", "type": "modbus-read", "z": "cc95679c3902ed7a", "name": "WeldGasFlw", "topic": "", "showStatusActivities": false, "logIOActivities": false, "showErrors": false, "unitid": "1", "dataType": "HoldingRegister", "adr": "32", "quantity": "2", "rate": "10", "rateUnit": "s", "delayOnStart": false, "startDelayTime": "", "server": "0fe5f962b71582e1", "useIOFile": false, "ioFile": "", "useIOForPayload": false, "emptyMsgOnFail": false, "x": 130, "y": 160, "wires": [ [ "2be7479ff0f1d399" ], [ "46410512aaf01603", "14f1d0cde6873538", "8c52ba9e407e1941" ] ] }, { "id": "bfddfaae38d576b1", "type": "modbus-response", "z": "cc95679c3902ed7a", "name": "", "registerShowMax": 20, "x": 330, "y": 340, "wires": [] }, { "id": "75e596045590cdfe", "type": "modbus-read", "z": "cc95679c3902ed7a", "name": "PnlAirFlRt", "topic": "", "showStatusActivities": false, "logIOActivities": false, "showErrors": false, "unitid": "7", "dataType": "HoldingRegister", "adr": "33", "quantity": "2", "rate": "1", "rateUnit": "m", "delayOnStart": false, "startDelayTime": "", "server": "5416182ed1fd1208", "useIOFile": false, "ioFile": "", "useIOForPayload": false, "emptyMsgOnFail": false, "x": 120, "y": 380, "wires": [ [ "bfddfaae38d576b1", "03d62c18b4e27c4f" ], [] ] }, { "id": "03d62c18b4e27c4f", "type": "function", "z": "cc95679c3902ed7a", "name": "Convert", "func": "msg.payload = (msg.payload[0]/10);\nreturn msg;\n", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 300, "y": 400, "wires": [ [ "56bd67b6eb946b7f", "d7c6c271fd2f5d4d" ] ] }, { "id": "a49f976292e55ad4", "type": "modbus-response", "z": "cc95679c3902ed7a", "name": "", "registerShowMax": 20, "x": 330, "y": 440, "wires": [] }, { "id": "f3894060ba13ae0d", "type": "modbus-read", "z": "cc95679c3902ed7a", "name": "PnlAirFlw", "topic": "", "showStatusActivities": false, "logIOActivities": false, "showErrors": false, "unitid": "7", "dataType": "HoldingRegister", "adr": "7", "quantity": "2", "rate": "5", "rateUnit": "m", "delayOnStart": false, "startDelayTime": "", "server": "5416182ed1fd1208", "useIOFile": false, "ioFile": "", "useIOForPayload": false, "emptyMsgOnFail": false, "x": 120, "y": 480, "wires": [ [ "a49f976292e55ad4" ], [ "6d26a8cf5807e20f" ] ] }, { "id": "6d26a8cf5807e20f", "type": "function", "z": "cc95679c3902ed7a", "name": "Convert", "func": "const buf = Buffer.from(msg.payload.buffer);\nconst value = buf.readUInt32BE();\nmsg.payload = value;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 300, "y": 500, "wires": [ [ "c1f68a78ccb4b58d", "282120aedb513057" ] ] }, { "id": "68b2a54d6d2251df", "type": "toFloat", "z": "cc95679c3902ed7a", "name": "", "toFixed": "2", "x": 490, "y": 80, "wires": [ [ "e31f2ab61cab6c2c", "190ccafc55fc1da8" ] ] }, { "id": "6689235833f6b38c", "type": "influxdb out", "z": "cc95679c3902ed7a", "influxdb": "fa6f8066b6ecbcbe", "name": "FlowRate", "measurement": "WeldGas", "precision": "", "retentionPolicy": "", "database": "database", "precisionV18FluxV20": "ms", "retentionPolicyV18Flux": "", "org": "organisation", "bucket": "bucket", "x": 840, "y": 80, "wires": [] }, { "id": "e31f2ab61cab6c2c", "type": "debug", "z": "cc95679c3902ed7a", "name": "GasFlRt", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 820, "y": 40, "wires": [] }, { "id": "e8022ff8d3348d8a", "type": "influxdb out", "z": "cc95679c3902ed7a", "influxdb": "fa6f8066b6ecbcbe", "name": "FlowRate", "measurement": "Panel", "precision": "", "retentionPolicy": "", "database": "database", "precisionV18FluxV20": "ms", "retentionPolicyV18Flux": "", "org": "organisation", "bucket": "bucket", "x": 840, "y": 400, "wires": [] }, { "id": "281b70e454a3cae4", "type": "influxdb out", "z": "cc95679c3902ed7a", "influxdb": "01269350df8fd048", "name": "FlowTotal", "measurement": "Panel", "precision": "", "retentionPolicy": "", "database": "database", "precisionV18FluxV20": "ms", "retentionPolicyV18Flux": "", "org": "organisation", "bucket": "bucket", "x": 840, "y": 500, "wires": [] }, { "id": "56b9b1f3f661b365", "type": "influxdb out", "z": "cc95679c3902ed7a", "influxdb": "01269350df8fd048", "name": "FlowTotal", "measurement": "WeldGas", "precision": "", "retentionPolicy": "", "database": "database", "precisionV18FluxV20": "ms", "retentionPolicyV18Flux": "", "org": "organisation", "bucket": "bucket", "x": 840, "y": 140, "wires": [] }, { "id": "e61c2b3844e3776b", "type": "debug", "z": "cc95679c3902ed7a", "name": "GasFlow-Float", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 840, "y": 240, "wires": [] }, { "id": "56bd67b6eb946b7f", "type": "debug", "z": "cc95679c3902ed7a", "name": "PnlAirFlRt", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 820, "y": 360, "wires": [] }, { "id": "282120aedb513057", "type": "debug", "z": "cc95679c3902ed7a", "name": "PnlAirFlw", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 820, "y": 460, "wires": [] }, { "id": "190ccafc55fc1da8", "type": "function", "z": "cc95679c3902ed7a", "name": "Store", "func": "msg.payload = {\n data: \"WeldGas\",\n dataval:msg.payload\n };\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 670, "y": 80, "wires": [ [ "6689235833f6b38c" ] ] }, { "id": "bb08745cbb0625b7", "type": "function", "z": "cc95679c3902ed7a", "name": "Store", "func": "msg.payload = {\n data: \"WeldGas\",\n dataval:msg.payload\n };\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 670, "y": 140, "wires": [ [ "56b9b1f3f661b365" ] ] }, { "id": "c1f68a78ccb4b58d", "type": "function", "z": "cc95679c3902ed7a", "name": "Store", "func": "msg.payload = {\n data: \"Panel\",\n dataval:msg.payload\n };\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 670, "y": 500, "wires": [ [ "281b70e454a3cae4" ] ] }, { "id": "d7c6c271fd2f5d4d", "type": "function", "z": "cc95679c3902ed7a", "name": "Store", "func": "msg.payload = {\n data: \"Panel\",\n dataval:msg.payload\n };\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 670, "y": 400, "wires": [ [ "e8022ff8d3348d8a" ] ] }, { "id": "79c6e520d8431c40", "type": "debug", "z": "cc95679c3902ed7a", "name": "Convert1", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 820, "y": 200, "wires": [] }, { "id": "46410512aaf01603", "type": "function", "z": "cc95679c3902ed7a", "name": "Conv1", "func": "const buf = Buffer.from(msg.payload.buffer);\nvar val1 = buf.readUInt8(0);\nvar val2 = buf.readUInt8(1);\nvar val3 = buf.readUInt8(2);\nvar val4 = buf.readUInt8(3);\nvar Arrayval = [val1,val2,val3,val4];\nmsg.payload = Arrayval;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 330, "y": 200, "wires": [ [ "79c6e520d8431c40" ] ] }, { "id": "8c52ba9e407e1941", "type": "function", "z": "cc95679c3902ed7a", "name": "Conv2", "func": "const buf = Buffer.from(msg.payload.buffer);\nconst value = buf.readFloatBE();\nmsg.payload = value;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 330, "y": 240, "wires": [ [ "e61c2b3844e3776b" ] ] }, { "id": "14f1d0cde6873538", "type": "function", "z": "cc95679c3902ed7a", "name": "Conv3", "func": "const buf = Buffer.from(msg.payload.buffer);\nconst val1 = buf.readUInt8(0);\nconst val2 = buf.readUInt8(1);\nconst val3 = buf.readUInt8(2);\nconst val4 = buf.readUInt8(3);\nconst array1 = [val1<<8+val2];\nconst array2 = [val3<<8+val4];\nconst array = array2<<16 + array1;\n//const buf1 = array;\n//const value= buf.readFloatBE();\n//msg.payload = value;\nmsg.payload = array;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 330, "y": 280, "wires": [ [ "7273c1f3a5752358" ] ] }, { "id": "7273c1f3a5752358", "type": "debug", "z": "cc95679c3902ed7a", "name": "conv3", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 810, "y": 280, "wires": [] }, { "id": "0fe5f962b71582e1", "type": "modbus-client", "name": "Gas", "clienttype": "tcp", "bufferCommands": true, "stateLogEnabled": false, "queueLogEnabled": false, "tcpHost": "172.25.124.5", "tcpPort": "503", "tcpType": "DEFAULT", "serialPort": "/dev/ttyUSB", "serialType": "RTU-BUFFERD", "serialBaudrate": "9600", "serialDatabits": "8", "serialStopbits": "1", "serialParity": "none", "serialConnectionDelay": "100", "unit_id": "1", "commandDelay": "1", "clientTimeout": "1000", "reconnectOnTimeout": true, "reconnectTimeout": "2000", "parallelUnitIdsAllowed": true }, { "id": "5416182ed1fd1208", "type": "modbus-client", "name": "Panl", "clienttype": "tcp", "bufferCommands": true, "stateLogEnabled": false, "queueLogEnabled": false, "tcpHost": "172.25.124.5", "tcpPort": "503", "tcpType": "DEFAULT", "serialPort": "/dev/ttyUSB", "serialType": "RTU-BUFFERD", "serialBaudrate": "9600", "serialDatabits": "8", "serialStopbits": "1", "serialParity": "none", "serialConnectionDelay": "100", "unit_id": "7", "commandDelay": "1", "clientTimeout": "1000", "reconnectOnTimeout": true, "reconnectTimeout": "2000", "parallelUnitIdsAllowed": true }, { "id": "fa6f8066b6ecbcbe", "type": "influxdb", "hostname": "localhost", "port": "8086", "protocol": "http", "database": "FlowRate", "name": "FlowRate", "usetls": false, "tls": "", "influxdbVersion": "1.x", "url": "http://localhost:8086", "rejectUnauthorized": true }, { "id": "01269350df8fd048", "type": "influxdb", "hostname": "localhost", "port": "8086", "protocol": "http", "database": "FlowCum", "name": "FlowTotal", "usetls": false, "tls": "", "influxdbVersion": "1.x", "url": "http://localhost:8086", "rejectUnauthorized": true } ] Reply
Hi Can you just send me the part with the register values. The Json file seems to have Javascript code jumbled with it. Just copy the buffer values from the debug node. Rgds Steve Reply
Hello Steve,
I am new to Node Red & trying to get the data from a gas flow meter. The data type is Float. I have tried few methods by searching the Web, Youtube. Here is the json file of the Flow.
The problem is I am not getting the correct value of as in the register of the Modbus contrib read.
The 8 bit buffer from the read data matches the value of the flowmeter register. But when I convert the value is not matching. Please help.
The correct value is 1242298282-32Bit UInt, 2293227 – Float.
Please Weld gas Total
[
{
“id”: “cc95679c3902ed7a”,
“type”: “tab”,
“label”: “Paneling”,
“disabled”: false,
“info”: “”
},
{
“id”: “11b428f717ac8283”,
“type”: “modbus-read”,
“z”: “cc95679c3902ed7a”,
“name”: “WeldGasFlRt”,
“topic”: “”,
“showStatusActivities”: false,
“logIOActivities”: false,
“showErrors”: false,
“unitid”: “1”,
“dataType”: “HoldingRegister”,
“adr”: “3”,
“quantity”: “2”,
“rate”: “1”,
“rateUnit”: “m”,
“delayOnStart”: false,
“startDelayTime”: “”,
“server”: “0fe5f962b71582e1”,
“useIOFile”: false,
“ioFile”: “”,
“useIOForPayload”: false,
“emptyMsgOnFail”: false,
“x”: 130,
“y”: 60,
“wires”: [
[
“0157462b9f7cf4f8”,
“e517639961f7ea91”
],
[]
]
},
{
“id”: “0157462b9f7cf4f8”,
“type”: “modbus-response”,
“z”: “cc95679c3902ed7a”,
“name”: “”,
“registerShowMax”: 20,
“x”: 330,
“y”: 20,
“wires”: []
},
{
“id”: “e517639961f7ea91”,
“type”: “function”,
“z”: “cc95679c3902ed7a”,
“name”: “Convert”,
“func”: “msg.payload = (msg.payload[0]<<16 + msg.payload[1]);\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 300,
"y": 80,
"wires": [
[
"68b2a54d6d2251df"
]
]
},
{
"id": "2be7479ff0f1d399",
"type": "modbus-response",
"z": "cc95679c3902ed7a",
"name": "",
"registerShowMax": 20,
"x": 330,
"y": 120,
"wires": []
},
{
"id": "3791f2a088c36ccc",
"type": "modbus-read",
"z": "cc95679c3902ed7a",
"name": "WeldGasFlw",
"topic": "",
"showStatusActivities": false,
"logIOActivities": false,
"showErrors": false,
"unitid": "1",
"dataType": "HoldingRegister",
"adr": "32",
"quantity": "2",
"rate": "10",
"rateUnit": "s",
"delayOnStart": false,
"startDelayTime": "",
"server": "0fe5f962b71582e1",
"useIOFile": false,
"ioFile": "",
"useIOForPayload": false,
"emptyMsgOnFail": false,
"x": 130,
"y": 160,
"wires": [
[
"2be7479ff0f1d399"
],
[
"46410512aaf01603",
"14f1d0cde6873538",
"8c52ba9e407e1941"
]
]
},
{
"id": "bfddfaae38d576b1",
"type": "modbus-response",
"z": "cc95679c3902ed7a",
"name": "",
"registerShowMax": 20,
"x": 330,
"y": 340,
"wires": []
},
{
"id": "75e596045590cdfe",
"type": "modbus-read",
"z": "cc95679c3902ed7a",
"name": "PnlAirFlRt",
"topic": "",
"showStatusActivities": false,
"logIOActivities": false,
"showErrors": false,
"unitid": "7",
"dataType": "HoldingRegister",
"adr": "33",
"quantity": "2",
"rate": "1",
"rateUnit": "m",
"delayOnStart": false,
"startDelayTime": "",
"server": "5416182ed1fd1208",
"useIOFile": false,
"ioFile": "",
"useIOForPayload": false,
"emptyMsgOnFail": false,
"x": 120,
"y": 380,
"wires": [
[
"bfddfaae38d576b1",
"03d62c18b4e27c4f"
],
[]
]
},
{
"id": "03d62c18b4e27c4f",
"type": "function",
"z": "cc95679c3902ed7a",
"name": "Convert",
"func": "msg.payload = (msg.payload[0]/10);\nreturn msg;\n",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 300,
"y": 400,
"wires": [
[
"56bd67b6eb946b7f",
"d7c6c271fd2f5d4d"
]
]
},
{
"id": "a49f976292e55ad4",
"type": "modbus-response",
"z": "cc95679c3902ed7a",
"name": "",
"registerShowMax": 20,
"x": 330,
"y": 440,
"wires": []
},
{
"id": "f3894060ba13ae0d",
"type": "modbus-read",
"z": "cc95679c3902ed7a",
"name": "PnlAirFlw",
"topic": "",
"showStatusActivities": false,
"logIOActivities": false,
"showErrors": false,
"unitid": "7",
"dataType": "HoldingRegister",
"adr": "7",
"quantity": "2",
"rate": "5",
"rateUnit": "m",
"delayOnStart": false,
"startDelayTime": "",
"server": "5416182ed1fd1208",
"useIOFile": false,
"ioFile": "",
"useIOForPayload": false,
"emptyMsgOnFail": false,
"x": 120,
"y": 480,
"wires": [
[
"a49f976292e55ad4"
],
[
"6d26a8cf5807e20f"
]
]
},
{
"id": "6d26a8cf5807e20f",
"type": "function",
"z": "cc95679c3902ed7a",
"name": "Convert",
"func": "const buf = Buffer.from(msg.payload.buffer);\nconst value = buf.readUInt32BE();\nmsg.payload = value;\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 300,
"y": 500,
"wires": [
[
"c1f68a78ccb4b58d",
"282120aedb513057"
]
]
},
{
"id": "68b2a54d6d2251df",
"type": "toFloat",
"z": "cc95679c3902ed7a",
"name": "",
"toFixed": "2",
"x": 490,
"y": 80,
"wires": [
[
"e31f2ab61cab6c2c",
"190ccafc55fc1da8"
]
]
},
{
"id": "6689235833f6b38c",
"type": "influxdb out",
"z": "cc95679c3902ed7a",
"influxdb": "fa6f8066b6ecbcbe",
"name": "FlowRate",
"measurement": "WeldGas",
"precision": "",
"retentionPolicy": "",
"database": "database",
"precisionV18FluxV20": "ms",
"retentionPolicyV18Flux": "",
"org": "organisation",
"bucket": "bucket",
"x": 840,
"y": 80,
"wires": []
},
{
"id": "e31f2ab61cab6c2c",
"type": "debug",
"z": "cc95679c3902ed7a",
"name": "GasFlRt",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 820,
"y": 40,
"wires": []
},
{
"id": "e8022ff8d3348d8a",
"type": "influxdb out",
"z": "cc95679c3902ed7a",
"influxdb": "fa6f8066b6ecbcbe",
"name": "FlowRate",
"measurement": "Panel",
"precision": "",
"retentionPolicy": "",
"database": "database",
"precisionV18FluxV20": "ms",
"retentionPolicyV18Flux": "",
"org": "organisation",
"bucket": "bucket",
"x": 840,
"y": 400,
"wires": []
},
{
"id": "281b70e454a3cae4",
"type": "influxdb out",
"z": "cc95679c3902ed7a",
"influxdb": "01269350df8fd048",
"name": "FlowTotal",
"measurement": "Panel",
"precision": "",
"retentionPolicy": "",
"database": "database",
"precisionV18FluxV20": "ms",
"retentionPolicyV18Flux": "",
"org": "organisation",
"bucket": "bucket",
"x": 840,
"y": 500,
"wires": []
},
{
"id": "56b9b1f3f661b365",
"type": "influxdb out",
"z": "cc95679c3902ed7a",
"influxdb": "01269350df8fd048",
"name": "FlowTotal",
"measurement": "WeldGas",
"precision": "",
"retentionPolicy": "",
"database": "database",
"precisionV18FluxV20": "ms",
"retentionPolicyV18Flux": "",
"org": "organisation",
"bucket": "bucket",
"x": 840,
"y": 140,
"wires": []
},
{
"id": "e61c2b3844e3776b",
"type": "debug",
"z": "cc95679c3902ed7a",
"name": "GasFlow-Float",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 840,
"y": 240,
"wires": []
},
{
"id": "56bd67b6eb946b7f",
"type": "debug",
"z": "cc95679c3902ed7a",
"name": "PnlAirFlRt",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 820,
"y": 360,
"wires": []
},
{
"id": "282120aedb513057",
"type": "debug",
"z": "cc95679c3902ed7a",
"name": "PnlAirFlw",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 820,
"y": 460,
"wires": []
},
{
"id": "190ccafc55fc1da8",
"type": "function",
"z": "cc95679c3902ed7a",
"name": "Store",
"func": "msg.payload = {\n data: \"WeldGas\",\n dataval:msg.payload\n };\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 670,
"y": 80,
"wires": [
[
"6689235833f6b38c"
]
]
},
{
"id": "bb08745cbb0625b7",
"type": "function",
"z": "cc95679c3902ed7a",
"name": "Store",
"func": "msg.payload = {\n data: \"WeldGas\",\n dataval:msg.payload\n };\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 670,
"y": 140,
"wires": [
[
"56b9b1f3f661b365"
]
]
},
{
"id": "c1f68a78ccb4b58d",
"type": "function",
"z": "cc95679c3902ed7a",
"name": "Store",
"func": "msg.payload = {\n data: \"Panel\",\n dataval:msg.payload\n };\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 670,
"y": 500,
"wires": [
[
"281b70e454a3cae4"
]
]
},
{
"id": "d7c6c271fd2f5d4d",
"type": "function",
"z": "cc95679c3902ed7a",
"name": "Store",
"func": "msg.payload = {\n data: \"Panel\",\n dataval:msg.payload\n };\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 670,
"y": 400,
"wires": [
[
"e8022ff8d3348d8a"
]
]
},
{
"id": "79c6e520d8431c40",
"type": "debug",
"z": "cc95679c3902ed7a",
"name": "Convert1",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 820,
"y": 200,
"wires": []
},
{
"id": "46410512aaf01603",
"type": "function",
"z": "cc95679c3902ed7a",
"name": "Conv1",
"func": "const buf = Buffer.from(msg.payload.buffer);\nvar val1 = buf.readUInt8(0);\nvar val2 = buf.readUInt8(1);\nvar val3 = buf.readUInt8(2);\nvar val4 = buf.readUInt8(3);\nvar Arrayval = [val1,val2,val3,val4];\nmsg.payload = Arrayval;\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 330,
"y": 200,
"wires": [
[
"79c6e520d8431c40"
]
]
},
{
"id": "8c52ba9e407e1941",
"type": "function",
"z": "cc95679c3902ed7a",
"name": "Conv2",
"func": "const buf = Buffer.from(msg.payload.buffer);\nconst value = buf.readFloatBE();\nmsg.payload = value;\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 330,
"y": 240,
"wires": [
[
"e61c2b3844e3776b"
]
]
},
{
"id": "14f1d0cde6873538",
"type": "function",
"z": "cc95679c3902ed7a",
"name": "Conv3",
"func": "const buf = Buffer.from(msg.payload.buffer);\nconst val1 = buf.readUInt8(0);\nconst val2 = buf.readUInt8(1);\nconst val3 = buf.readUInt8(2);\nconst val4 = buf.readUInt8(3);\nconst array1 = [val1<<8+val2];\nconst array2 = [val3<<8+val4];\nconst array = array2<<16 + array1;\n//const buf1 = array;\n//const value= buf.readFloatBE();\n//msg.payload = value;\nmsg.payload = array;\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 330,
"y": 280,
"wires": [
[
"7273c1f3a5752358"
]
]
},
{
"id": "7273c1f3a5752358",
"type": "debug",
"z": "cc95679c3902ed7a",
"name": "conv3",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 810,
"y": 280,
"wires": []
},
{
"id": "0fe5f962b71582e1",
"type": "modbus-client",
"name": "Gas",
"clienttype": "tcp",
"bufferCommands": true,
"stateLogEnabled": false,
"queueLogEnabled": false,
"tcpHost": "172.25.124.5",
"tcpPort": "503",
"tcpType": "DEFAULT",
"serialPort": "/dev/ttyUSB",
"serialType": "RTU-BUFFERD",
"serialBaudrate": "9600",
"serialDatabits": "8",
"serialStopbits": "1",
"serialParity": "none",
"serialConnectionDelay": "100",
"unit_id": "1",
"commandDelay": "1",
"clientTimeout": "1000",
"reconnectOnTimeout": true,
"reconnectTimeout": "2000",
"parallelUnitIdsAllowed": true
},
{
"id": "5416182ed1fd1208",
"type": "modbus-client",
"name": "Panl",
"clienttype": "tcp",
"bufferCommands": true,
"stateLogEnabled": false,
"queueLogEnabled": false,
"tcpHost": "172.25.124.5",
"tcpPort": "503",
"tcpType": "DEFAULT",
"serialPort": "/dev/ttyUSB",
"serialType": "RTU-BUFFERD",
"serialBaudrate": "9600",
"serialDatabits": "8",
"serialStopbits": "1",
"serialParity": "none",
"serialConnectionDelay": "100",
"unit_id": "7",
"commandDelay": "1",
"clientTimeout": "1000",
"reconnectOnTimeout": true,
"reconnectTimeout": "2000",
"parallelUnitIdsAllowed": true
},
{
"id": "fa6f8066b6ecbcbe",
"type": "influxdb",
"hostname": "localhost",
"port": "8086",
"protocol": "http",
"database": "FlowRate",
"name": "FlowRate",
"usetls": false,
"tls": "",
"influxdbVersion": "1.x",
"url": "http://localhost:8086",
"rejectUnauthorized": true
},
{
"id": "01269350df8fd048",
"type": "influxdb",
"hostname": "localhost",
"port": "8086",
"protocol": "http",
"database": "FlowCum",
"name": "FlowTotal",
"usetls": false,
"tls": "",
"influxdbVersion": "1.x",
"url": "http://localhost:8086",
"rejectUnauthorized": true
}
]
Hi
Can you just send me the part with the register values. The Json file seems to have Javascript code jumbled with it.
Just copy the buffer values from the debug node.
Rgds
Steve