[ { "id": "21b4ab22db722269", "type": "function", "z": "db4a831c569c3d1d", "name": "Unterspannung", "func": "if (msg.Umin>40) {\n// msg.payload={ \"value\" : msg.Umin };\n msg.payload=msg.Umin*1;\n} else {\n msg.payload=48;\n// msg.payload={ \"value\" : 48 };\n}\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 140, "y": 180, "wires": [ [ "ed629c260eb215e8" ] ] }, { "id": "01a94bcff07f300c", "type": "function", "z": "db4a831c569c3d1d", "name": "max ladestrom", "func": "if (msg.I>=0) {\n msg.payload=msg.I*1;\n// msg.payload={ \"value\" : msg.I };\n} else {\n return;\n// msg.payload=50;\n// msg.payload={ \"value\" : 50 };\n}\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 140, "y": 220, "wires": [ [ "57d69623a45495ff", "61d7abf67b5b9aa8" ] ] }, { "id": "d937a80e1bd22712", "type": "function", "z": "db4a831c569c3d1d", "name": "Spannung", "func": "if (msg.U>40) {\n msg.payload=msg.U*1;\n// msg.payload={ \"value\" : msg.U };\n} else {\n msg.payload=52;\n// msg.payload={ \"value\" : 52 };\n}\nreturn msg;return msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 130, "y": 260, "wires": [ [ "57d69623a45495ff", "a22be542fe6c6340" ] ] }, { "id": "5db42e81365b8dd2", "type": "function", "z": "db4a831c569c3d1d", "name": "max entladestrom", "func": "if (msg.Imax>0) {\n msg.payload=msg.Imax*1;\n// msg.payload={ \"value\" : msg.Imax };\n} else {\n msg.payload=50;\n// msg.payload={ \"value\" : 50 };\n}\nreturn msg;return msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 150, "y": 300, "wires": [ [ "8575e1a26f0e6360" ] ] }, { "id": "bff506e279a4b8dc", "type": "function", "z": "db4a831c569c3d1d", "name": "Akku Parameter", "func": "var debug=false;\nvar I,Imax,U,Umin;\nif ((I=global.get(\"BAT_I\"))==null) I=0;\nif ((Imax = global.get(\"BAT_Imax\"))==null) Imax=50;\nif ((U = global.get(\"BAT_U\"))==null) U=53;\nif ((Umin = global.get(\"BAT_Umin\"))==null) Umin=48;\nI1=I;\n//node.warn(\"I: \"+I);\nif (msg.payload>100000) {\n var IA,UA,IMP,SOC,LIMIT,SOC_MIN;\n if ((IA = global.get(\"AKKU_STROM\"))==null) IA=0;\n if (IA<0.2 && IA>-0.2) return;\n if ((UA = global.get(\"AKKU_SPANNUNG\"))==null) UA=53;\n if ((IMP = global.get(\"MP2_STROM\"))==null) IMP=0;\n if ((SOC = global.get(\"SOC\"))==null) SOC=50;\n if ((LIMIT = global.get(\"SOC_LIMIT\"))==null) LIMIT=50;\n if ((SOC_MIN = global.get(\"SOC_MIN\"))==null) LIMIT=60;\n//node.warn(\"I: \"+I+\" U: \"+U+\" Imax: \"+Imax+\" Umin: \"+Umin+\" I1: \"+I1+\" IA: \"+IA+\" IMP: \"+IMP);\n// LIMIT=LIMIT+5;\n if (SOC<=SOC_MIN) {\n// US=context.U;\n var US\n if ((US=global.get(\"ULADE\"))==null) ULADE=55;\n// if (US<=UA || IA<0) US=UA+0.05;\n// if (US>UA+0.5) US=UA+0.5;\n I=I-IA/10;\n if (debug) node.warn(\"I: \"+I);\n if (I>IMP*3 && IMP>=1) I =IMP*3;\n if (SOCIMAX) I=IMAX;\n U=US;\n if (debug) node.warn(\"I: \"+I+\" I1: \"+I);\n if (I1==I && context.U==US) return;\n context.U=US;\n } else {\n if (SOC>SOC_MIN && (I>0 || IA>0)) {\n I=0;\n } else return;\n }\n} else {\n if (msg.payload<48) {\n I=msg.payload;\n } else {\n U=msg.payload;\n }\n if (IA<0.2 && IA>-0.2) I=IMP2;\n}\nif (I<0) I=0;\nvar D = I-I1;\nif (D==0) return;\nnode.warn(\"I: \"+I+\" U: \"+U+\" Imax: \"+Imax+\" Umin: \"+Umin+\" D: \"+D+\" I1: \"+I1+\" IA: \"+IA);\nmsg.I=I;\nmsg.Imax=Imax;\nmsg.U=U;\nmsg.Umin=Umin;\nglobal.set(\"BAT_I\",I);\nglobal.set(\"BAT_U\",U);\nglobal.set(\"BAT_Imax\",Imax);\nglobal.set(\"BAT_Umin\",Umin);\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "// Der Code hier wird ausgeführt,\n// wenn der Node gestartet wird\ncontext.U=52;\nglobal.set(\"BAT_I\",0);\nglobal.set(\"BAT_U\",55);\nglobal.set(\"BAT_Imax\",50);\nglobal.set(\"BAT_Umin\",48);\n", "finalize": "", "libs": [], "x": 260, "y": 100, "wires": [ [ "21b4ab22db722269", "01a94bcff07f300c", "d937a80e1bd22712", "5db42e81365b8dd2" ] ] }, { "id": "5d159036e5a6f83b", "type": "ui_slider", "z": "db4a831c569c3d1d", "name": "I", "label": "I", "tooltip": "", "group": "02441cc9d4e52e5c", "order": 13, "width": "6", "height": "2", "passthru": false, "outs": "end", "topic": "topic", "topicType": "msg", "min": 0, "max": "35", "step": 1, "className": "", "x": 70, "y": 80, "wires": [ [ "bff506e279a4b8dc" ] ] }, { "id": "21d2b11b1f2a9b5f", "type": "ui_slider", "z": "db4a831c569c3d1d", "name": "U", "label": "U", "tooltip": "", "group": "02441cc9d4e52e5c", "order": 13, "width": "6", "height": "2", "passthru": false, "outs": "end", "topic": "topic", "topicType": "msg", "min": "48", "max": "57", "step": "0.1", "className": "", "x": 70, "y": 120, "wires": [ [ "bff506e279a4b8dc" ] ] }, { "id": "57d69623a45495ff", "type": "debug", "z": "db4a831c569c3d1d", "name": "debug 7", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 380, "y": 340, "wires": [] }, { "id": "ed629c260eb215e8", "type": "msg-resend", "z": "db4a831c569c3d1d", "interval": "30", "intervalUnit": "secs", "maximum": "0", "bytopic": false, "clone": false, "firstDelayed": false, "addCounters": false, "waitForResend": false, "highRate": true, "outputCountField": "", "outputMaxField": "", "name": "", "x": 370, "y": 180, "wires": [ [ "701a12de1c42435a" ] ] }, { "id": "61d7abf67b5b9aa8", "type": "msg-resend", "z": "db4a831c569c3d1d", "interval": "30", "intervalUnit": "secs", "maximum": "0", "bytopic": false, "clone": false, "firstDelayed": false, "addCounters": false, "waitForResend": false, "highRate": true, "outputCountField": "", "outputMaxField": "", "name": "", "x": 370, "y": 220, "wires": [ [ "2a80bec58eebfb3f" ] ] }, { "id": "a22be542fe6c6340", "type": "msg-resend", "z": "db4a831c569c3d1d", "interval": "30", "intervalUnit": "secs", "maximum": "0", "bytopic": false, "clone": false, "firstDelayed": false, "addCounters": false, "waitForResend": false, "highRate": true, "outputCountField": "", "outputMaxField": "", "name": "", "x": 370, "y": 260, "wires": [ [ "839101dcd9b8901c" ] ] }, { "id": "8575e1a26f0e6360", "type": "msg-resend", "z": "db4a831c569c3d1d", "interval": "30", "intervalUnit": "secs", "maximum": "0", "bytopic": false, "clone": false, "firstDelayed": false, "addCounters": false, "waitForResend": false, "highRate": true, "outputCountField": "", "outputMaxField": "", "name": "", "x": 370, "y": 300, "wires": [ [ "fc5ac31dbdcc4f4f" ] ] }, { "id": "d3c9d61b78a1733d", "type": "interval-multiples-timer", "z": "db4a831c569c3d1d", "interval": "5000", "payload": "", "topic": "", "name": "timer regelung", "x": 90, "y": 40, "wires": [ [ "c7a94acd966381f2", "bff506e279a4b8dc" ] ] }, { "id": "c7a94acd966381f2", "type": "ui_digital_clock", "z": "db4a831c569c3d1d", "name": "", "group": "02441cc9d4e52e5c", "order": 8, "width": 0, "height": 0, "x": 290, "y": 40, "wires": [] }, { "id": "2a80bec58eebfb3f", "type": "victron-output-custom", "z": "db4a831c569c3d1d", "service": "com.victronenergy.vebus/276", "path": "/BatteryOperationalLimits/MaxChargeCurrent", "serviceObj": { "service": "com.victronenergy.vebus/276", "name": "MP2 3000 (276)" }, "pathObj": { "path": "/BatteryOperationalLimits/MaxChargeCurrent", "name": "/BatteryOperationalLimits/MaxChargeCurrent", "type": "number" }, "name": "", "onlyChanges": false, "x": 790, "y": 220, "wires": [] }, { "id": "701a12de1c42435a", "type": "victron-output-custom", "z": "db4a831c569c3d1d", "service": "com.victronenergy.vebus/276", "path": "/BatteryOperationalLimits/BatteryLowVoltage", "serviceObj": { "service": "com.victronenergy.vebus/276", "name": "MP2 3000 (276)" }, "pathObj": { "path": "/BatteryOperationalLimits/BatteryLowVoltage", "name": "/BatteryOperationalLimits/BatteryLowVoltage", "type": "number" }, "name": "", "onlyChanges": false, "x": 790, "y": 180, "wires": [] }, { "id": "839101dcd9b8901c", "type": "victron-output-custom", "z": "db4a831c569c3d1d", "service": "com.victronenergy.vebus/276", "path": "/BatteryOperationalLimits/MaxChargeVoltage", "serviceObj": { "service": "com.victronenergy.vebus/276", "name": "MP2 3000 (276)" }, "pathObj": { "path": "/BatteryOperationalLimits/MaxChargeVoltage", "name": "/BatteryOperationalLimits/MaxChargeVoltage", "type": "number" }, "name": "", "onlyChanges": false, "x": 790, "y": 260, "wires": [] }, { "id": "fc5ac31dbdcc4f4f", "type": "victron-output-custom", "z": "db4a831c569c3d1d", "service": "com.victronenergy.vebus/276", "path": "/BatteryOperationalLimits/MaxDischargeCurrent", "serviceObj": { "service": "com.victronenergy.vebus/276", "name": "MP2 3000 (276)" }, "pathObj": { "path": "/BatteryOperationalLimits/MaxDischargeCurrent", "name": "/BatteryOperationalLimits/MaxDischargeCurrent", "type": "number" }, "name": "", "onlyChanges": false, "x": 800, "y": 300, "wires": [] }, { "id": "02441cc9d4e52e5c", "type": "ui_group", "name": "Einstellungen", "tab": "56ae65eda1025ded", "order": 2, "disp": false, "width": "6", "collapse": false, "className": "" }, { "id": "56ae65eda1025ded", "type": "ui_tab", "name": "Home", "icon": "dashboard", "disabled": false, "hidden": false } ]