660 lines
26 KiB
JSON
660 lines
26 KiB
JSON
{
|
|
"elements": [
|
|
{
|
|
"type": "ExpansionPanel",
|
|
"caption": "Lizenzierung",
|
|
"expanded": true,
|
|
"items": [
|
|
{
|
|
"type": "ValidationTextBox",
|
|
"name": "Lizenzcode",
|
|
"caption": "Lizenzcode",
|
|
"placeholder": "ENX-XXXX-XXXX-XXXX-XXXX"
|
|
},
|
|
{
|
|
"type": "Label",
|
|
"name": "LizenzInstallationID",
|
|
"caption": "Installations-ID wird erzeugt"
|
|
},
|
|
{
|
|
"type": "Label",
|
|
"name": "LizenzInformation",
|
|
"caption": "Lizenzcode fehlt."
|
|
},
|
|
{
|
|
"type": "Button",
|
|
"name": "LizenzPruefen",
|
|
"caption": "Lizenz pruefen und binden",
|
|
"onClick": "IPS_RequestAction($id, 'FormLizenzPruefen', $Lizenzcode);"
|
|
},
|
|
{
|
|
"type": "Button",
|
|
"name": "LizenzVerwalten",
|
|
"caption": "Lizenz verwalten",
|
|
"link": true,
|
|
"onClick": "echo 'https://license.enelix.ch';"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpansionPanel",
|
|
"caption": "Grundeinstellungen",
|
|
"expanded": true,
|
|
"items": [
|
|
{
|
|
"type": "Select",
|
|
"name": "Rolle",
|
|
"caption": "Rolle",
|
|
"options": [
|
|
{"caption": "Alleine", "value": 0},
|
|
{"caption": "Hauptmanager", "value": 1},
|
|
{"caption": "Untermanager", "value": 2}
|
|
]
|
|
},
|
|
{
|
|
"type": "SelectVariable",
|
|
"name": "NetzleistungVariableID",
|
|
"caption": "Netzleistung"
|
|
},
|
|
{
|
|
"type": "NumberSpinner",
|
|
"name": "SollwertSolarladen",
|
|
"caption": "Sollwert Solarladen",
|
|
"suffix": " W",
|
|
"digits": 1
|
|
},
|
|
{
|
|
"type": "Select",
|
|
"name": "Lastspitzenmodus",
|
|
"caption": "Lastspitzenmodus",
|
|
"onChange": "IPS_RequestAction($id, 'FormLastspitzenmodus', $Lastspitzenmodus);",
|
|
"options": [
|
|
{"caption": "Aus", "value": 0},
|
|
{"caption": "Konstant", "value": 1},
|
|
{"caption": "Monatlich", "value": 2}
|
|
]
|
|
},
|
|
{
|
|
"type": "NumberSpinner",
|
|
"name": "Lastspitzengrenze",
|
|
"caption": "Lastspitzengrenze",
|
|
"suffix": " W",
|
|
"digits": 1,
|
|
"visible": false
|
|
},
|
|
{
|
|
"type": "Button",
|
|
"name": "MonatsgrenzenUmschalten",
|
|
"caption": "Monatsgrenzen anzeigen",
|
|
"visible": false,
|
|
"onClick": "IPS_RequestAction($id, 'FormMonatsgrenzenUmschalten', true);"
|
|
},
|
|
{
|
|
"type": "List",
|
|
"name": "Monatsgrenzen",
|
|
"caption": "Monatliche Lastspitzengrenzen",
|
|
"rowCount": 12,
|
|
"add": false,
|
|
"delete": false,
|
|
"sortable": false,
|
|
"loadValuesFromConfiguration": false,
|
|
"visible": false,
|
|
"columns": [
|
|
{
|
|
"caption": "Monat",
|
|
"name": "Monat",
|
|
"width": "auto",
|
|
"save": true
|
|
},
|
|
{
|
|
"caption": "Grenze",
|
|
"name": "Grenze_W",
|
|
"width": "180px",
|
|
"save": true,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " W",
|
|
"digits": 1
|
|
}
|
|
},
|
|
{
|
|
"caption": "Monatsnummer",
|
|
"name": "MonatIndex",
|
|
"width": "0px",
|
|
"visible": false,
|
|
"save": true
|
|
}
|
|
],
|
|
"values": []
|
|
},
|
|
{
|
|
"type": "Label",
|
|
"caption": "Peak Shaving am Netzanschlusspunkt"
|
|
},
|
|
{
|
|
"type": "CheckBox",
|
|
"name": "EinspeisebegrenzungAktiv",
|
|
"caption": "Anlagenweite Einspeisebegrenzung aktivieren"
|
|
},
|
|
{
|
|
"type": "NumberSpinner",
|
|
"name": "Einspeisegrenze",
|
|
"caption": "Maximale Einspeisung der Gesamtanlage",
|
|
"suffix": " W",
|
|
"minimum": 0.0,
|
|
"digits": 1
|
|
},
|
|
{
|
|
"type": "NumberSpinner",
|
|
"name": "Einspeisetoleranz",
|
|
"caption": "Regeltoleranz",
|
|
"suffix": " W",
|
|
"minimum": 0.0,
|
|
"digits": 1
|
|
},
|
|
{
|
|
"type": "CheckBox",
|
|
"name": "NetzfahrplanAktiv",
|
|
"caption": "Intelligenten Netzfahrplan zur Vermeidung von Abregelung verwenden"
|
|
},
|
|
{
|
|
"type": "CheckBox",
|
|
"name": "AutomatischeSuche",
|
|
"caption": "Verbraucher automatisch suchen",
|
|
"onChange": "IPS_RequestAction($id, 'FormAutomatischeSuche', $AutomatischeSuche);"
|
|
},
|
|
{
|
|
"type": "SelectObject",
|
|
"name": "SuchbereichID",
|
|
"caption": "Suchbereich",
|
|
"visible": true
|
|
},
|
|
{
|
|
"type": "Button",
|
|
"name": "VerbraucherAktualisieren",
|
|
"caption": "Verbraucher aktualisieren",
|
|
"visible": true,
|
|
"onClick": "IPS_RequestAction($id, 'FormVerbraucherAktualisieren', json_encode(['SuchbereichID' => $SuchbereichID, 'Zuordnung' => $AutomatischeVerbraucherZuordnung]));"
|
|
},
|
|
{
|
|
"type": "List",
|
|
"name": "VerbraucherZuordnung",
|
|
"caption": "Verbraucher manuell auswaehlen",
|
|
"rowCount": 6,
|
|
"add": true,
|
|
"delete": true,
|
|
"sortable": true,
|
|
"visible": false,
|
|
"columns": [
|
|
{
|
|
"caption": "Instanz",
|
|
"name": "InstanzID",
|
|
"width": "auto",
|
|
"add": 0,
|
|
"edit": {"type": "SelectInstance"}
|
|
},
|
|
{
|
|
"caption": "Aktiv",
|
|
"name": "Aktiv",
|
|
"width": "100px",
|
|
"add": false,
|
|
"edit": {"type": "CheckBox"}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "List",
|
|
"name": "AutomatischeVerbraucherZuordnung",
|
|
"caption": "Gefundene Verbraucher",
|
|
"rowCount": 8,
|
|
"add": false,
|
|
"delete": false,
|
|
"loadValuesFromConfiguration": false,
|
|
"visible": true,
|
|
"columns": [
|
|
{
|
|
"caption": "Verbraucher",
|
|
"name": "Name",
|
|
"width": "auto",
|
|
"save": true
|
|
},
|
|
{
|
|
"caption": "Instanz-ID",
|
|
"name": "InstanzID",
|
|
"width": "100px",
|
|
"save": true
|
|
},
|
|
{
|
|
"caption": "Verwenden",
|
|
"name": "Aktiv",
|
|
"width": "100px",
|
|
"save": true,
|
|
"edit": {"type": "CheckBox"}
|
|
}
|
|
],
|
|
"values": []
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpansionPanel",
|
|
"caption": "Anlagentopologie",
|
|
"expanded": true,
|
|
"items": [
|
|
{
|
|
"type": "List",
|
|
"name": "AnlagenWechselrichter",
|
|
"caption": "Wechselrichter",
|
|
"rowCount": 4,
|
|
"add": true,
|
|
"delete": true,
|
|
"sortable": true,
|
|
"columns": [
|
|
{
|
|
"caption": "ID",
|
|
"name": "ID",
|
|
"width": "130px",
|
|
"add": "wr-1",
|
|
"edit": {"type": "ValidationTextBox"}
|
|
},
|
|
{
|
|
"caption": "Name",
|
|
"name": "Name",
|
|
"width": "auto",
|
|
"add": "Wechselrichter",
|
|
"edit": {"type": "ValidationTextBox"}
|
|
},
|
|
{
|
|
"caption": "Typ",
|
|
"name": "Typ",
|
|
"width": "130px",
|
|
"add": "pv",
|
|
"edit": {
|
|
"type": "Select",
|
|
"options": [
|
|
{"caption": "PV", "value": "pv"},
|
|
{"caption": "Batterie", "value": "battery"},
|
|
{"caption": "Hybrid", "value": "hybrid"}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"caption": "AC Nennleistung",
|
|
"name": "ACNennleistung_kW",
|
|
"width": "150px",
|
|
"add": 0.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " kW",
|
|
"minimum": 0.0,
|
|
"digits": 3
|
|
}
|
|
},
|
|
{
|
|
"caption": "Einspeisegrenze",
|
|
"name": "ACEinspeisegrenze_kW",
|
|
"width": "150px",
|
|
"add": 0.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " kW",
|
|
"minimum": 0.0,
|
|
"digits": 3
|
|
}
|
|
},
|
|
{
|
|
"caption": "Bezugsgrenze",
|
|
"name": "ACBezugsgrenze_kW",
|
|
"width": "140px",
|
|
"add": 0.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " kW",
|
|
"minimum": 0.0,
|
|
"digits": 3
|
|
}
|
|
},
|
|
{
|
|
"caption": "Istleistung",
|
|
"name": "IstleistungVariableID",
|
|
"width": "140px",
|
|
"add": 0,
|
|
"edit": {"type": "SelectVariable"}
|
|
},
|
|
{
|
|
"caption": "PV-Begrenzung",
|
|
"name": "BegrenzungVariableID",
|
|
"width": "150px",
|
|
"add": 0,
|
|
"edit": {"type": "SelectVariable"}
|
|
},
|
|
{
|
|
"caption": "Stellwert",
|
|
"name": "Begrenzungsart",
|
|
"width": "120px",
|
|
"add": "percent",
|
|
"edit": {
|
|
"type": "Select",
|
|
"options": [
|
|
{"caption": "Prozent", "value": "percent"},
|
|
{"caption": "Watt", "value": "watt"}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "List",
|
|
"name": "AnlagenPVFlaechen",
|
|
"caption": "PV-Flaechen",
|
|
"rowCount": 6,
|
|
"add": true,
|
|
"delete": true,
|
|
"sortable": true,
|
|
"columns": [
|
|
{
|
|
"caption": "ID",
|
|
"name": "ID",
|
|
"width": "120px",
|
|
"add": "pv-1",
|
|
"edit": {"type": "ValidationTextBox"}
|
|
},
|
|
{
|
|
"caption": "Name",
|
|
"name": "Name",
|
|
"width": "auto",
|
|
"add": "PV-Flaeche",
|
|
"edit": {"type": "ValidationTextBox"}
|
|
},
|
|
{
|
|
"caption": "DC-Leistung",
|
|
"name": "DCLeistung_kWp",
|
|
"width": "130px",
|
|
"add": 0.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " kWp",
|
|
"minimum": 0.0,
|
|
"digits": 3
|
|
}
|
|
},
|
|
{
|
|
"caption": "Neigung",
|
|
"name": "Neigung_Grad",
|
|
"width": "110px",
|
|
"add": 30.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " Grad",
|
|
"minimum": 0.0,
|
|
"maximum": 90.0,
|
|
"digits": 1
|
|
}
|
|
},
|
|
{
|
|
"caption": "Azimut",
|
|
"name": "Azimut_Grad",
|
|
"width": "110px",
|
|
"add": 0.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " Grad",
|
|
"minimum": -180.0,
|
|
"maximum": 180.0,
|
|
"digits": 1
|
|
}
|
|
},
|
|
{
|
|
"caption": "Wechselrichter-ID",
|
|
"name": "WechselrichterID",
|
|
"width": "150px",
|
|
"add": "wr-1",
|
|
"edit": {"type": "ValidationTextBox"}
|
|
},
|
|
{
|
|
"caption": "MPPT",
|
|
"name": "MPPT",
|
|
"width": "90px",
|
|
"add": "",
|
|
"edit": {"type": "ValidationTextBox"}
|
|
},
|
|
{
|
|
"caption": "Module",
|
|
"name": "Modulanzahl",
|
|
"width": "90px",
|
|
"add": 0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"minimum": 0,
|
|
"digits": 0
|
|
}
|
|
},
|
|
{
|
|
"caption": "Modulleistung",
|
|
"name": "Modulleistung_Wp",
|
|
"width": "130px",
|
|
"add": 0.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " Wp",
|
|
"minimum": 0.0,
|
|
"digits": 1
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "List",
|
|
"name": "AnlagenBatterien",
|
|
"caption": "Batteriespeicher",
|
|
"rowCount": 4,
|
|
"add": true,
|
|
"delete": true,
|
|
"sortable": true,
|
|
"columns": [
|
|
{
|
|
"caption": "ID",
|
|
"name": "ID",
|
|
"width": "120px",
|
|
"add": "bat-1",
|
|
"edit": {"type": "ValidationTextBox"}
|
|
},
|
|
{
|
|
"caption": "Name",
|
|
"name": "Name",
|
|
"width": "auto",
|
|
"add": "Batteriespeicher",
|
|
"edit": {"type": "ValidationTextBox"}
|
|
},
|
|
{
|
|
"caption": "Nennkapazitaet",
|
|
"name": "Nennkapazitaet_kWh",
|
|
"width": "150px",
|
|
"add": 0.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " kWh",
|
|
"minimum": 0.0,
|
|
"digits": 3
|
|
}
|
|
},
|
|
{
|
|
"caption": "Nutzkapazitaet",
|
|
"name": "Nutzkapazitaet_kWh",
|
|
"width": "150px",
|
|
"add": 0.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " kWh",
|
|
"minimum": 0.0,
|
|
"digits": 3
|
|
}
|
|
},
|
|
{
|
|
"caption": "Max. Laden",
|
|
"name": "MaxLadeleistung_kW",
|
|
"width": "130px",
|
|
"add": 0.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " kW",
|
|
"minimum": 0.0,
|
|
"digits": 3
|
|
}
|
|
},
|
|
{
|
|
"caption": "Max. Entladen",
|
|
"name": "MaxEntladeleistung_kW",
|
|
"width": "140px",
|
|
"add": 0.0,
|
|
"edit": {
|
|
"type": "NumberSpinner",
|
|
"suffix": " kW",
|
|
"minimum": 0.0,
|
|
"digits": 3
|
|
}
|
|
},
|
|
{
|
|
"caption": "Wechselrichter-ID",
|
|
"name": "WechselrichterID",
|
|
"width": "150px",
|
|
"add": "wr-1",
|
|
"edit": {"type": "ValidationTextBox"}
|
|
},
|
|
{
|
|
"caption": "Kopplung",
|
|
"name": "Kopplung",
|
|
"width": "130px",
|
|
"add": "ac",
|
|
"edit": {
|
|
"type": "Select",
|
|
"options": [
|
|
{"caption": "AC", "value": "ac"},
|
|
{"caption": "DC", "value": "dc"},
|
|
{"caption": "Hybrid", "value": "hybrid"}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpansionPanel",
|
|
"caption": "Erweiterte Einstellungen",
|
|
"items": [
|
|
{
|
|
"type": "NumberSpinner",
|
|
"name": "KeepAlive",
|
|
"caption": "Keep alive",
|
|
"suffix": " s",
|
|
"minimum": 1
|
|
},
|
|
{
|
|
"type": "NumberSpinner",
|
|
"name": "VerbraucherTimeout",
|
|
"caption": "Verbraucher-Timeout",
|
|
"suffix": " s",
|
|
"minimum": 1
|
|
},
|
|
{
|
|
"type": "NumberSpinner",
|
|
"name": "MesswertMaxAlter",
|
|
"caption": "Maximales Messwertalter",
|
|
"suffix": " s",
|
|
"minimum": 1
|
|
},
|
|
{
|
|
"type": "NumberSpinner",
|
|
"name": "Umschaltdifferenz",
|
|
"caption": "Mindestdifferenz vor Umschaltung",
|
|
"suffix": " %",
|
|
"minimum": 0,
|
|
"maximum": 100,
|
|
"digits": 1
|
|
},
|
|
{
|
|
"type": "NumberSpinner",
|
|
"name": "Netzleistungsfaktor",
|
|
"caption": "Netzleistungsfaktor",
|
|
"digits": 4
|
|
},
|
|
{
|
|
"type": "CheckBox",
|
|
"name": "DiagnosevariablenAnzeigen",
|
|
"caption": "Diagnosevariablen anlegen"
|
|
},
|
|
{
|
|
"type": "CheckBox",
|
|
"name": "LoggingEin",
|
|
"caption": "Laufendes Debug-Logging aktivieren"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpansionPanel",
|
|
"caption": "Prognose / Forecast",
|
|
"items": [
|
|
{
|
|
"type": "SelectVariable",
|
|
"name": "PrognosePVVariableID",
|
|
"caption": "PV-Leistung"
|
|
},
|
|
{
|
|
"type": "SelectVariable",
|
|
"name": "PrognoseHausverbrauchVariableID",
|
|
"caption": "Hausverbrauch"
|
|
},
|
|
{
|
|
"type": "SelectVariable",
|
|
"name": "PrognoseSOCVariableID",
|
|
"caption": "Batterie-Ladezustand"
|
|
},
|
|
{
|
|
"type": "NumberSpinner",
|
|
"name": "PrognoseSendeintervall",
|
|
"caption": "Sendeintervall",
|
|
"minimum": 60,
|
|
"maximum": 3600,
|
|
"suffix": " Sekunden"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpansionPanel",
|
|
"caption": "SDL / VGT",
|
|
"items": [
|
|
{
|
|
"type": "ValidationTextBox",
|
|
"name": "SDLAnschluss",
|
|
"caption": "Konfiguration als JSON"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpansionPanel",
|
|
"caption": "Stoerueberwachung",
|
|
"items": [
|
|
{
|
|
"type": "ValidationTextBox",
|
|
"name": "StoermeldeAnschluss",
|
|
"caption": "Konfiguration als JSON"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"actions": [
|
|
{
|
|
"type": "Button",
|
|
"caption": "Regelung jetzt ausfuehren",
|
|
"onClick": "IPS_RequestAction($id, 'Regeln', true);"
|
|
}
|
|
],
|
|
"status": [
|
|
{"code": 102, "icon": "active", "caption": "Aktiv"},
|
|
{"code": 201, "icon": "inactive", "caption": "Netzleistungsmessung fehlt oder ist veraltet"},
|
|
{"code": 202, "icon": "error", "caption": "Konfiguration ungueltig"},
|
|
{"code": 203, "icon": "error", "caption": "Lizenz nicht freigegeben oder Verbraucherkontingent ueberschritten"}
|
|
]
|
|
}
|