{
    "Addresses": [
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 5,
            "Factor": 0.01,
            "Ident": "",
            "Length": 0,
            "Name": "Strom",
            "Profile": "~Ampere",
            "ReadAddress": 0,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.01,
            "Ident": "",
            "Length": 0,
            "Name": "Batteriespannung",
            "Profile": "BMS.Volt_2",
            "ReadAddress": 1,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 12,
            "Factor": 0,
            "Ident": "",
            "Length": 0,
            "Name": "Soc",
            "Profile": "Prozent_INT",
            "ReadAddress": 2,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 12,
            "Factor": 0,
            "Ident": "",
            "Length": 0,
            "Name": "Soh",
            "Profile": "Prozent_INT",
            "ReadAddress": 3,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.01,
            "Ident": "",
            "Length": 0,
            "Name": "Restkapazität",
            "Profile": "BMS.AH",
            "ReadAddress": 4,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.01,
            "Ident": "",
            "Length": 0,
            "Name": "Herstellerkapazität",
            "Profile": "BMS.AH",
            "ReadAddress": 6,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.01,
            "Ident": "",
            "Length": 0,
            "Name": "Gesamtkapazität",
            "Profile": "BMS.AH",
            "ReadAddress": 5,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0,
            "Ident": "",
            "Length": 0,
            "Name": "Ladezyklen",
            "Profile": "",
            "ReadAddress": 7,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 1",
            "Profile": "BMS.Volt",
            "ReadAddress": 15,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 2",
            "Profile": "BMS.Volt",
            "ReadAddress": 16,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 3",
            "Profile": "BMS.Volt",
            "ReadAddress": 17,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 4",
            "Profile": "BMS.Volt",
            "ReadAddress": 18,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 5",
            "Profile": "BMS.Volt",
            "ReadAddress": 19,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 6",
            "Profile": "BMS.Volt",
            "ReadAddress": 20,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 7",
            "Profile": "BMS.Volt",
            "ReadAddress": 21,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 8",
            "Profile": "BMS.Volt",
            "ReadAddress": 22,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 9",
            "Profile": "BMS.Volt",
            "ReadAddress": 23,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 10",
            "Profile": "BMS.Volt",
            "ReadAddress": 24,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 11",
            "Profile": "BMS.Volt",
            "ReadAddress": 25,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 12",
            "Profile": "BMS.Volt",
            "ReadAddress": 26,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 13",
            "Profile": "BMS.Volt",
            "ReadAddress": 27,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 14",
            "Profile": "BMS.Volt",
            "ReadAddress": 28,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 15",
            "Profile": "BMS.Volt",
            "ReadAddress": 29,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 2,
            "Factor": 0.001,
            "Ident": "",
            "Length": 0,
            "Name": "Zellspannung 16",
            "Profile": "BMS.Volt",
            "ReadAddress": 30,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 5,
            "Factor": 0.1,
            "Ident": "",
            "Length": 0,
            "Name": "Batterie Temperatur 1",
            "Profile": "~Temperature",
            "ReadAddress": 31,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 5,
            "Factor": 0.1,
            "Ident": "",
            "Length": 0,
            "Name": "Batterie Temperatur 2",
            "Profile": "~Temperature",
            "ReadAddress": 32,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 5,
            "Factor": 0.1,
            "Ident": "",
            "Length": 0,
            "Name": "Batterie Temperatur 3",
            "Profile": "~Temperature",
            "ReadAddress": 33,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 5,
            "Factor": 0.1,
            "Ident": "",
            "Length": 0,
            "Name": "Batterie Temperatur 4",
            "Profile": "~Temperature",
            "ReadAddress": 34,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 5,
            "Factor": 0.1,
            "Ident": "",
            "Length": 0,
            "Name": "MOSFET Temperatur",
            "Profile": "~Temperature",
            "ReadAddress": 35,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        },
        {
            "Active": true,
            "ByteOrder": -1,
            "DataType": 5,
            "Factor": 0.1,
            "Ident": "",
            "Length": 0,
            "Name": "Umgebungstemperatur",
            "Profile": "~Temperature",
            "ReadAddress": 36,
            "ReadFunctionCode": 4,
            "Translation": [],
            "WriteAddress": 0,
            "WriteFunctionCode": 16
        }
    ],
    "ByteOrder": 0,
    "Profiles": {
        "BMS.AH": {
            "Associations": [],
            "Digits": 1,
            "Icon": "",
            "MaxValue": 1000.0,
            "MinValue": 0.0,
            "Prefix": "",
            "StepSize": 1.0,
            "Suffix": "Ah",
            "Type": 2
        },
        "BMS.Ladestatus": {
            "Associations": [
                {
                    "Color": -1,
                    "Icon": "",
                    "Name": "Standby",
                    "Value": 0.0
                },
                {
                    "Color": -1,
                    "Icon": "",
                    "Name": "Entladen",
                    "Value": 1.0
                },
                {
                    "Color": -1,
                    "Icon": "",
                    "Name": "Laden",
                    "Value": 2.0
                }
            ],
            "Digits": 0,
            "Icon": "",
            "MaxValue": 100.0,
            "MinValue": 0.0,
            "Prefix": "",
            "StepSize": 1.0,
            "Suffix": "",
            "Type": 1
        },
        "BMS.Volt": {
            "Associations": [],
            "Digits": 3,
            "Icon": "Electricity",
            "MaxValue": 0.0,
            "MinValue": 0.0,
            "Prefix": "",
            "StepSize": 0.0,
            "Suffix": " V",
            "Type": 2
        },
        "BMS.Volt_2": {
            "Associations": [],
            "Digits": 3,
            "Icon": "Electricity",
            "MaxValue": 0.0,
            "MinValue": 0.0,
            "Prefix": "",
            "StepSize": 0.0,
            "Suffix": " V",
            "Type": 2
        },
        "BMS.mV": {
            "Associations": [],
            "Digits": 0,
            "Icon": "Electricity",
            "MaxValue": 0.0,
            "MinValue": 0.0,
            "Prefix": "",
            "StepSize": 0.0,
            "Suffix": " mV",
            "Type": 2
        },
        "Prozent_INT": {
            "Associations": [],
            "Digits": 0,
            "Icon": "",
            "MaxValue": 0.0,
            "MinValue": 0.0,
            "Prefix": "",
            "StepSize": 0.0,
            "Suffix": "%",
            "Type": 1
        },
        "Watt.I": {
            "Associations": [],
            "Digits": 0,
            "Icon": "Electricity",
            "MaxValue": 0.0,
            "MinValue": 0.0,
            "Prefix": "",
            "StepSize": 0.0,
            "Suffix": " W",
            "Type": 1
        }
    },
    "Requests": {
        "Interval": 10000
    },
    "VirtualAddresses": [
        {
            "Active": true,
            "Ident": "",
            "Name": "Batteriestatus",
            "Profile": "BMS.Ladestatus",
            "ReadAction": "$strom = $VALUES[\"A_5_4_0\"];\r\n\r\nif ($strom < 0)\r\n\r\n{\r\n    return (1);\r\n}\r\n\r\nif ($strom > 0)\r\n\r\n{\r\n    return (2);\r\n}\r\n\r\nif ($strom == 0)\r\n\r\n{\r\n    return (0);\r\n}\r\n",
            "Translation": [],
            "VariableType": 1,
            "WriteAction": ""
        },
        {
            "Active": true,
            "Ident": "",
            "Name": "Leistung",
            "Profile": "Watt.I",
            "ReadAction": "return ($VALUES[\"A_5_4_0\"] * $VALUES[\"A_2_4_1\"]);",
            "Translation": [],
            "VariableType": 1,
            "WriteAction": ""
        },
        {
            "Active": true,
            "Ident": "",
            "Name": "Max. Zellspannung",
            "Profile": "BMS.Volt",
            "ReadAction": "$Spannung1\t=\t$VALUES[\"A_2_4_15\"];\r\n$Spannung2\t=\t$VALUES[\"A_2_4_16\"];\r\n$Spannung3\t=\t$VALUES[\"A_2_4_17\"];\r\n$Spannung4\t=\t$VALUES[\"A_2_4_18\"];\r\n$Spannung5\t=\t$VALUES[\"A_2_4_19\"];\r\n$Spannung6\t=\t$VALUES[\"A_2_4_20\"];\r\n$Spannung7\t=\t$VALUES[\"A_2_4_21\"];\r\n$Spannung8\t=\t$VALUES[\"A_2_4_22\"];\r\n$Spannung9\t=\t$VALUES[\"A_2_4_23\"];\r\n$Spannung10\t=\t$VALUES[\"A_2_4_24\"];\r\n$Spannung11\t=\t$VALUES[\"A_2_4_25\"];\r\n$Spannung12\t=\t$VALUES[\"A_2_4_26\"];\r\n$Spannung13\t=\t$VALUES[\"A_2_4_27\"];\r\n$Spannung14\t=\t$VALUES[\"A_2_4_28\"];\r\n$Spannung15\t=\t$VALUES[\"A_2_4_29\"];\r\n$Spannung16\t=\t$VALUES[\"A_2_4_30\"];\r\n\t\t\t\r\n\t\t\t\r\n$alleSpannungen = array($Spannung1, $Spannung2, $Spannung3, $Spannung4, $Spannung5, $Spannung6, $Spannung7, $Spannung8, $Spannung9, $Spannung10, $Spannung11, $Spannung12, $Spannung13, $Spannung14, $Spannung15, $Spannung16);\t\r\n$max = max($alleSpannungen);\r\nreturn $max;",
            "Translation": [],
            "VariableType": 2,
            "WriteAction": ""
        },
        {
            "Active": true,
            "Ident": "",
            "Name": "Min. Zellspannung",
            "Profile": "BMS.Volt",
            "ReadAction": "$Spannung1\t=\t$VALUES[\"A_2_4_15\"];\r\n$Spannung2\t=\t$VALUES[\"A_2_4_16\"];\r\n$Spannung3\t=\t$VALUES[\"A_2_4_17\"];\r\n$Spannung4\t=\t$VALUES[\"A_2_4_18\"];\r\n$Spannung5\t=\t$VALUES[\"A_2_4_19\"];\r\n$Spannung6\t=\t$VALUES[\"A_2_4_20\"];\r\n$Spannung7\t=\t$VALUES[\"A_2_4_21\"];\r\n$Spannung8\t=\t$VALUES[\"A_2_4_22\"];\r\n$Spannung9\t=\t$VALUES[\"A_2_4_23\"];\r\n$Spannung10\t=\t$VALUES[\"A_2_4_24\"];\r\n$Spannung11\t=\t$VALUES[\"A_2_4_25\"];\r\n$Spannung12\t=\t$VALUES[\"A_2_4_26\"];\r\n$Spannung13\t=\t$VALUES[\"A_2_4_27\"];\r\n$Spannung14\t=\t$VALUES[\"A_2_4_28\"];\r\n$Spannung15\t=\t$VALUES[\"A_2_4_29\"];\r\n$Spannung16\t=\t$VALUES[\"A_2_4_30\"];\r\n\t\t\t\r\n\t\t\t\r\n$alleSpannungen = array($Spannung1, $Spannung2, $Spannung3, $Spannung4, $Spannung5, $Spannung6, $Spannung7, $Spannung8, $Spannung9, $Spannung10, $Spannung11, $Spannung12, $Spannung13, $Spannung14, $Spannung15, $Spannung16);\t\r\n$min = min($alleSpannungen);\r\nreturn $min;",
            "Translation": [],
            "VariableType": 2,
            "WriteAction": ""
        },
        {
            "Active": true,
            "Ident": "",
            "Name": "Durchschnittliche Spannung",
            "Profile": "BMS.Volt",
            "ReadAction": "$Spannung1\t=\t$VALUES[\"A_2_4_15\"];\r\n$Spannung2\t=\t$VALUES[\"A_2_4_16\"];\r\n$Spannung3\t=\t$VALUES[\"A_2_4_17\"];\r\n$Spannung4\t=\t$VALUES[\"A_2_4_18\"];\r\n$Spannung5\t=\t$VALUES[\"A_2_4_19\"];\r\n$Spannung6\t=\t$VALUES[\"A_2_4_20\"];\r\n$Spannung7\t=\t$VALUES[\"A_2_4_21\"];\r\n$Spannung8\t=\t$VALUES[\"A_2_4_22\"];\r\n$Spannung9\t=\t$VALUES[\"A_2_4_23\"];\r\n$Spannung10\t=\t$VALUES[\"A_2_4_24\"];\r\n$Spannung11\t=\t$VALUES[\"A_2_4_25\"];\r\n$Spannung12\t=\t$VALUES[\"A_2_4_26\"];\r\n$Spannung13\t=\t$VALUES[\"A_2_4_27\"];\r\n$Spannung14\t=\t$VALUES[\"A_2_4_28\"];\r\n$Spannung15\t=\t$VALUES[\"A_2_4_29\"];\r\n$Spannung16\t=\t$VALUES[\"A_2_4_30\"];\r\n\t\t\t\r\n\t\t\t\r\n$alleSpannungen = array($Spannung1, $Spannung2, $Spannung3, $Spannung4, $Spannung5, $Spannung6, $Spannung7, $Spannung8, $Spannung9, $Spannung10, $Spannung11, $Spannung12, $Spannung13, $Spannung14, $Spannung15, $Spannung16);\t\r\n$durchschnitt = array_sum($alleSpannungen) / count($alleSpannungen);\r\nreturn $durchschnitt;",
            "Translation": [],
            "VariableType": 2,
            "WriteAction": ""
        },
        {
            "Active": true,
            "Ident": "",
            "Name": "Diff Min-Max Zellspannung",
            "Profile": "BMS.mV",
            "ReadAction": "$Spannung1\t=\t$VALUES[\"A_2_4_15\"];\r\n$Spannung2\t=\t$VALUES[\"A_2_4_16\"];\r\n$Spannung3\t=\t$VALUES[\"A_2_4_17\"];\r\n$Spannung4\t=\t$VALUES[\"A_2_4_18\"];\r\n$Spannung5\t=\t$VALUES[\"A_2_4_19\"];\r\n$Spannung6\t=\t$VALUES[\"A_2_4_20\"];\r\n$Spannung7\t=\t$VALUES[\"A_2_4_21\"];\r\n$Spannung8\t=\t$VALUES[\"A_2_4_22\"];\r\n$Spannung9\t=\t$VALUES[\"A_2_4_23\"];\r\n$Spannung10\t=\t$VALUES[\"A_2_4_24\"];\r\n$Spannung11\t=\t$VALUES[\"A_2_4_25\"];\r\n$Spannung12\t=\t$VALUES[\"A_2_4_26\"];\r\n$Spannung13\t=\t$VALUES[\"A_2_4_27\"];\r\n$Spannung14\t=\t$VALUES[\"A_2_4_28\"];\r\n$Spannung15\t=\t$VALUES[\"A_2_4_29\"];\r\n$Spannung16\t=\t$VALUES[\"A_2_4_30\"];\r\n\t\t\t\r\n\t\t\t\r\n$alleSpannungen = array($Spannung1, $Spannung2, $Spannung3, $Spannung4, $Spannung5, $Spannung6, $Spannung7, $Spannung8, $Spannung9, $Spannung10, $Spannung11, $Spannung12, $Spannung13, $Spannung14, $Spannung15, $Spannung16);\t\r\n$max = max($alleSpannungen);\r\n$min = min($alleSpannungen);\r\n$diff = ($max-$min);\r\n\r\nreturn ($diff*1000);",
            "Translation": [],
            "VariableType": 2,
            "WriteAction": ""
        }
    ]
}