Skip to content

Instantly share code, notes, and snippets.

@Markus2801A
Created August 30, 2019 06:57
Show Gist options
  • Save Markus2801A/571042511cd7b44c6062e0b26f6296d0 to your computer and use it in GitHub Desktop.
Save Markus2801A/571042511cd7b44c6062e0b26f6296d0 to your computer and use it in GitHub Desktop.
Eastron SDM630 & InfluxDB Node-RED Flow
[
{
"id": "9294bd5e.68055",
"type": "tab",
"label": "Flow 1",
"disabled": false,
"info": ""
},
{
"id": "255ae989.c501ee",
"type": "exec",
"z": "9294bd5e.68055",
"command": "vcgencmd measure_temp | tr -d \"temp=\" | tr -d \"'C\"",
"addpay": false,
"append": "",
"useSpawn": "false",
"timer": "",
"oldrc": false,
"name": "Abfrage CPU Temperatur",
"x": 450,
"y": 60,
"wires": [
[
"a32dfe5d.2092b",
"9e5a2459.a7cee8"
],
[],
[]
]
},
{
"id": "a32dfe5d.2092b",
"type": "ui_gauge",
"z": "9294bd5e.68055",
"name": "",
"group": "fc31a0cf.3eb19",
"order": 1,
"width": 11,
"height": 4,
"gtype": "gage",
"title": "CPU Temperature",
"label": "°C",
"format": "{{value}}",
"min": 0,
"max": "100",
"colors": [
"#00b500",
"#e6e600",
"#ca3838"
],
"seg1": "",
"seg2": "",
"x": 710,
"y": 80,
"wires": []
},
{
"id": "9e5a2459.a7cee8",
"type": "ui_chart",
"z": "9294bd5e.68055",
"name": "",
"group": "fc31a0cf.3eb19",
"order": 11,
"width": 11,
"height": 5,
"label": "CPU TempVerlauf",
"chartType": "line",
"legend": "true",
"xformat": "HH:mm:ss",
"interpolate": "linear",
"nodata": "",
"dot": false,
"ymin": "40",
"ymax": "55",
"removeOlder": "7",
"removeOlderPoints": "",
"removeOlderUnit": "86400",
"cutout": 0,
"useOneColor": false,
"colors": [
"#1f77b4",
"#aec7e8",
"#ff7f0e",
"#2ca02c",
"#98df8a",
"#d62728",
"#ff9896",
"#9467bd",
"#c5b0d5"
],
"useOldStyle": false,
"outputs": 1,
"x": 710,
"y": 40,
"wires": [
[]
]
},
{
"id": "b434d33b.e0221",
"type": "exec",
"z": "9294bd5e.68055",
"command": "wget -qO- http://127.0.0.1:8080/api/last/SDM1.1",
"addpay": false,
"append": "",
"useSpawn": "false",
"timer": "",
"oldrc": false,
"name": "Eastron SDM630 SmartMeter",
"x": 470,
"y": 260,
"wires": [
[
"582e82bb.f131f4"
],
[],
[]
]
},
{
"id": "f487c17e.965818",
"type": "exec",
"z": "9294bd5e.68055",
"command": "vcgencmd measure_clock arm | tr -d \"frequency(45)=\"",
"addpay": false,
"append": "",
"useSpawn": "false",
"timer": "",
"oldrc": false,
"name": "Abfrage CPU Frequenz",
"x": 450,
"y": 140,
"wires": [
[
"43d495a0.ad8094"
],
[],
[]
],
"info": "/opt/vc/bin/"
},
{
"id": "582e82bb.f131f4",
"type": "json",
"z": "9294bd5e.68055",
"name": "",
"property": "payload",
"action": "",
"pretty": false,
"x": 530,
"y": 520,
"wires": [
[
"e609b528.cbd24",
"61cfb2f9.34cc14",
"6ec4870f.09a72",
"ef372af0.dcf3b",
"e9781d25.f0693",
"625ef0d.da8671",
"bb48401c.faeeb",
"587a6399.9d7e7c",
"5a54dda4.6e2744",
"71095ce2.aa6324",
"d65f3e97.6fe92",
"fa4eb7b4.8c7198",
"eff50023.0d39a",
"592884bf.cf3e4c",
"4500409b.1651c8",
"9f891f26.cad19"
]
]
},
{
"id": "e609b528.cbd24",
"type": "debug",
"z": "9294bd5e.68055",
"name": "jsonDEBUG",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"x": 710,
"y": 280,
"wires": []
},
{
"id": "61cfb2f9.34cc14",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 10,
"width": 3,
"height": 1,
"name": "",
"label": "CosphiL1",
"format": "{{msg.payload.CosphiL1}}",
"layout": "col-center",
"x": 720,
"y": 340,
"wires": []
},
{
"id": "6ec4870f.09a72",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 13,
"width": 3,
"height": 1,
"name": "",
"label": "CosphiL2",
"format": "{{msg.payload.CosphiL2}}",
"layout": "col-center",
"x": 720,
"y": 380,
"wires": []
},
{
"id": "ef372af0.dcf3b",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 15,
"width": 3,
"height": 1,
"name": "",
"label": "CosphiL3",
"format": "{{msg.payload.CosphiL3}}",
"layout": "col-center",
"x": 720,
"y": 420,
"wires": []
},
{
"id": "e9781d25.f0693",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 4,
"width": 3,
"height": 1,
"name": "",
"label": "CurrentL1",
"format": "{{msg.payload.CurrentL1}}",
"layout": "col-center",
"x": 720,
"y": 480,
"wires": [],
"inputLabels": [
"Eingang"
]
},
{
"id": "587a6399.9d7e7c",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 5,
"width": 3,
"height": 1,
"name": "",
"label": "PowerL1",
"format": "{{msg.payload.PowerL1}}",
"layout": "col-center",
"x": 720,
"y": 620,
"wires": []
},
{
"id": "625ef0d.da8671",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 6,
"width": 3,
"height": 1,
"name": "",
"label": "CurrentL2",
"format": "{{msg.payload.CurrentL2}}",
"layout": "col-center",
"x": 720,
"y": 520,
"wires": []
},
{
"id": "bb48401c.faeeb",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 8,
"width": 3,
"height": 1,
"name": "",
"label": "CurrentL3",
"format": "{{msg.payload.CurrentL3}}",
"layout": "col-center",
"x": 720,
"y": 560,
"wires": []
},
{
"id": "5a54dda4.6e2744",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 3,
"width": 3,
"height": 1,
"name": "",
"label": "PowerL2",
"format": "{{msg.payload.PowerL2}}",
"layout": "col-center",
"x": 720,
"y": 660,
"wires": []
},
{
"id": "71095ce2.aa6324",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 7,
"width": 3,
"height": 1,
"name": "",
"label": "PowerL3",
"format": "{{msg.payload.PowerL3}}",
"layout": "col-center",
"x": 720,
"y": 700,
"wires": []
},
{
"id": "d65f3e97.6fe92",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 9,
"width": 3,
"height": 1,
"name": "",
"label": "VoltageL1",
"format": "{{msg.payload.VoltageL1}}",
"layout": "col-center",
"x": 880,
"y": 480,
"wires": []
},
{
"id": "fa4eb7b4.8c7198",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 12,
"width": 3,
"height": 1,
"name": "",
"label": "VoltageL2",
"format": "{{msg.payload.VoltageL2}}",
"layout": "col-center",
"x": 880,
"y": 520,
"wires": []
},
{
"id": "eff50023.0d39a",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 14,
"width": 3,
"height": 1,
"name": "",
"label": "VoltageL3",
"format": "{{msg.payload.VoltageL3}}",
"layout": "col-center",
"x": 880,
"y": 560,
"wires": []
},
{
"id": "592884bf.cf3e4c",
"type": "function",
"z": "9294bd5e.68055",
"name": "Leistungen für Graph splitten",
"func": "var PL1 = {};\nvar PL2 = {};\nvar PL3 = {};\n\nPL1.payload = msg.payload.PowerL1;\nPL1.topic = 'Leistung1';\n\nPL2.payload = msg.payload.PowerL2;\nPL2.topic = 'Leistung2';\n\nPL3.payload = msg.payload.PowerL3;\nPL3.topic = 'Leistung3';\n\nreturn [PL1, PL2, PL3];",
"outputs": 3,
"noerr": 0,
"x": 780,
"y": 780,
"wires": [
[
"c1732f3e.89dd1"
],
[
"c1732f3e.89dd1"
],
[
"c1732f3e.89dd1"
]
]
},
{
"id": "c1732f3e.89dd1",
"type": "ui_chart",
"z": "9294bd5e.68055",
"name": "",
"group": "fc31a0cf.3eb19",
"order": 2,
"width": 13,
"height": 6,
"label": "Phasenleistungen L1-L3",
"chartType": "line",
"legend": "true",
"xformat": "HH:mm:ss",
"interpolate": "step",
"nodata": "",
"dot": false,
"ymin": "",
"ymax": "",
"removeOlder": "1",
"removeOlderPoints": "",
"removeOlderUnit": "604800",
"cutout": 0,
"useOneColor": false,
"colors": [
"#1f77b4",
"#aec7e8",
"#ff7f0e",
"#2ca02c",
"#98df8a",
"#d62728",
"#ff9896",
"#9467bd",
"#c5b0d5"
],
"useOldStyle": false,
"outputs": 1,
"x": 1070,
"y": 780,
"wires": [
[]
]
},
{
"id": "4500409b.1651c8",
"type": "function",
"z": "9294bd5e.68055",
"name": "Ströme für Graph splitten",
"func": "var I1 = {};\nvar I2 = {};\nvar I3 = {};\n\nI1.payload = msg.payload.CurrentL1;\nI1.topic = 'Strom I1';\n\nI2.payload = msg.payload.CurrentL2;\nI2.topic = 'Strom I2';\n\nI3.payload = msg.payload.CurrentL3;\nI3.topic = 'Strom I3';\n\nreturn [I1, I2, I3];",
"outputs": 3,
"noerr": 0,
"x": 770,
"y": 860,
"wires": [
[
"e8d3a764.c7634"
],
[
"e8d3a764.c7634"
],
[
"e8d3a764.c7634"
]
]
},
{
"id": "e8d3a764.c7634",
"type": "ui_chart",
"z": "9294bd5e.68055",
"name": "",
"group": "fc31a0cf.3eb19",
"order": 16,
"width": 13,
"height": 6,
"label": "Leiterströme IL1-IL3",
"chartType": "line",
"legend": "true",
"xformat": "HH:mm:ss",
"interpolate": "step",
"nodata": "",
"dot": false,
"ymin": "",
"ymax": "",
"removeOlder": "1",
"removeOlderPoints": "",
"removeOlderUnit": "604800",
"cutout": 0,
"useOneColor": false,
"colors": [
"#1f77b4",
"#aec7e8",
"#ff7f0e",
"#2ca02c",
"#98df8a",
"#d62728",
"#ff9896",
"#9467bd",
"#c5b0d5"
],
"useOldStyle": false,
"outputs": 1,
"x": 1060,
"y": 860,
"wires": [
[]
]
},
{
"id": "2ce1bd2.acaf342",
"type": "ui_button",
"z": "9294bd5e.68055",
"name": "",
"group": "fc31a0cf.3eb19",
"order": 26,
"width": 6,
"height": 1,
"passthru": false,
"label": "Werte abfragen (manuell)",
"tooltip": "",
"color": "",
"bgcolor": "",
"icon": "",
"payload": "true",
"payloadType": "bool",
"topic": "",
"x": 150,
"y": 140,
"wires": [
[
"255ae989.c501ee",
"f487c17e.965818",
"b434d33b.e0221"
]
]
},
{
"id": "43d495a0.ad8094",
"type": "ui_text",
"z": "9294bd5e.68055",
"group": "fc31a0cf.3eb19",
"order": 22,
"width": 8,
"height": 1,
"name": "",
"label": "CPU Frequenz",
"format": "{{msg.payload}}",
"layout": "row-spread",
"x": 700,
"y": 140,
"wires": []
},
{
"id": "9f891f26.cad19",
"type": "influxdb out",
"z": "9294bd5e.68055",
"influxdb": "c53675d6.f97c78",
"name": "",
"measurement": "JSON-Node_Values",
"precision": "",
"retentionPolicy": "",
"x": 1020,
"y": 620,
"wires": []
},
{
"id": "786f0f65.85c358",
"type": "inject",
"z": "9294bd5e.68055",
"name": "Abfrageintervall (autom)",
"topic": "",
"payload": "",
"payloadType": "date",
"repeat": "60",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"x": 150,
"y": 80,
"wires": [
[
"b434d33b.e0221",
"f487c17e.965818",
"255ae989.c501ee"
]
]
},
{
"id": "fc31a0cf.3eb19",
"type": "ui_group",
"z": "",
"name": "RaspberryPi 4B & Eastron SDM630 InfoScreen",
"tab": "6995f4b2.e90b34",
"disp": true,
"width": 30,
"collapse": false
},
{
"id": "c53675d6.f97c78",
"type": "influxdb",
"z": "",
"hostname": "127.0.0.1",
"port": "8086",
"protocol": "http",
"database": "sdm630",
"name": "SDM630-Influx_Datenbank",
"usetls": false,
"tls": ""
},
{
"id": "6995f4b2.e90b34",
"type": "ui_tab",
"z": "",
"name": "Home",
"icon": "dashboard",
"disabled": false,
"hidden": false
}
]
@Markus2801A
Copy link
Author

Reads meters values from Eastern SDM630 via mbmd and fetches data via json node to influxDB. Also collects some metrics about CPU Temperature of Raspberry Pi 4. Tested & working 08.2019
Node-RED SDM630
Dashboard

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment