Kategorien
Allgemein

OpenDTU – WEB-Schnittstelle

OpenDTU WEB-Schnittstelle (Update)

Manchmal ist es einfacher, Daten direkt über eine Schnittstelle abzufragen und auf den Einsatz eines MQTT-Brokers zu verzichten.
Die WEB-Schnittstelle erlaubt sowohl Abfragen und Änderungen der Parameter.
Wenn ein User/Passwort erforderlich ist, dann bitte die Daten verwenden, welche auch für die Änderungen über die WEB-Oberfläche definiert sind (Default: admin/openDTU42).

Die gesamte Beschreibung gibt es auf GitHub:
https://github.com/tbnobody/OpenDTU/blob/master/docs/Web-API.md

Da ich nur einen Wechselrichter (HM-700) besitze, werden Ergebnisse bei Abfragen mit mehreren Wechselrichtern dementsprechend mehr Daten liefern.

Liste aller konfigurierten Wechselrichter/Inverter:

  • Request-Type: GET
  • User/Passwort erforderlich: Ja
  • URL: /api/inverter/list
  • Beispiel: http://192.168.35.129/api/inverter/list
Ergebnis (JSON) ist ein Array aller Inverter:
{
    „inverter“: [
        {
            „id“: 0,
            „name“: „Meine PV“,
            „serial“: „11xxxxxxxx80“,
            „type“: „HM-600, HM-700, HM-800“,
            „channel“: [
                {
                    „name“: „“,
                    „max_power“: 0
                },
                {
                    „name“: „“,
                    „max_power“: 0
                }
            ]
        }
    ]
}
 

Live Daten aller konfigurierten Wechselrichter/Inverter:

  • Request-Type: GET
  • User/Passwort erforderlich: Nein
  • URL: /api/livedata/status
  • Beispiel: http://192.168.35.129/api/livedata/status
Ergebnis (JSON) ist ein Array aller Inverter mit den aktuellen Werten:

{
    „inverters“: [
        {
            „serial“: „11xxxxxxxx80“,
            „name“: „Meine PV“,
            „data_age“: 6,
            „reachable“: true,
            „producing“: true,
            „limit_relative“: 100,
            „limit_absolute“: 700,
            „0“: {
                „Power“: {
                    „v“: 34.90000153,
                    „u“: „W“,
                    „d“: 1
                },
                „Voltage“: {
                    „v“: 230.6999969,
                    „u“: „V“,
                    „d“: 1
                },
                „Current“: {
                    „v“: 0.150000006,
                    „u“: „A“,
                    „d“: 2
                },
                „Power DC“: {
                    „v“: 36.5,
                    „u“: „W“,
                    „d“: 2
                },
                „YieldDay“: {
                    „v“: 288,
                    „u“: „Wh“,
                    „d“: 2
                },
                „YieldTotal“: {
                    „v“: 133.0859985,
                    „u“: „kWh“,
                    „d“: 2
                },
                „Frequency“: {
                    „v“: 50.00999832,
                    „u“: „Hz“,
                    „d“: 2
                },
                „Temperature“: {
                    „v“: 12.5,
                    „u“: „°C“,
                    „d“: 1
                },
                „PowerFactor“: {
                    „v“: 1,
                    „u“: „“,
                    „d“: 3
                },
                „ReactivePower“: {
                    „v“: 0,
                    „u“: „var“,
                    „d“: 1
                },
                „Efficiency“: {
                    „v“: 95.61643982,
                    „u“: „%“,
                    „d“: 2
                }
            },
            „1“: {
                „name“: {
                    „u“: „“
                },
                „Power“: {
                    „v“: 18.29999924,
                    „u“: „W“,
                    „d“: 1
                },
                „Voltage“: {
                    „v“: 29.79999924,
                    „u“: „V“,
                    „d“: 1
                },
                „Current“: {
                    „v“: 0.610000014,
                    „u“: „A“,
                    „d“: 2
                },
                „YieldDay“: {
                    „v“: 142,
                    „u“: „Wh“,
                    „d“: 0
                },
                „YieldTotal“: {
                    „v“: 66.07700348,
                    „u“: „kWh“,
                    „d“: 3
                }
            },
            „2“: {
                „name“: {
                    „u“: „“
                },
                „Power“: {
                    „v“: 18.20000076,
                    „u“: „W“,
                    „d“: 1
                },
                „Voltage“: {
                    „v“: 30.29999924,
                    „u“: „V“,
                    „d“: 1
                },
                „Current“: {
                    „v“: 0.600000024,
                    „u“: „A“,
                    „d“: 2
                },
                „YieldDay“: {
                    „v“: 146,
                    „u“: „Wh“,
                    „d“: 0
                },
                „YieldTotal“: {
                    „v“: 67.00900269,
                    „u“: „kWh“,
                    „d“: 3
                }
            },
            „events“: 1
        }
    ],
    „total“: {
        „Power“: {
            „v“: 34.90000153,
            „u“: „W“,
            „d“: 1
        },
        „YieldDay“: {
            „v“: 288,
            „u“: „Wh“,
            „d“: 0
        },
        „YieldTotal“: {
            „v“: 133.0859985,
            „u“: „kWh“,
            „d“: 2
        }
    },
    „hints“: {
        „time_sync“: false,
        „radio_problem“: false,
        „default_password“: true
    }
}

Aktuelles Wechselrichter Limit abfragen:

  • Request-Type: GET
  • User/Passwort erforderlich: Nein
  • URL: /api/limit/status
  • Beispiel: http://192.168.35.129/api/limit/status
Ergebnis (JSON) mit dem aktuellen Limits:

{
    „11xxxxxxxx80“: {
        „limit_relative“: 100,
        „max_power“: 700,
        „limit_set_status“: „Ok“
    }
}

Aktuelle DTU-Einstellungen abfragen:

  • Request-Type: GET
  • User/Passwort erforderlich: Ja
  • URL: /api/dtu/config
  • Beispiel: http://192.168.35.129/api/dtu/config
Ergebnis (JSON) mit dem aktuellen Einstellungen:

{
    „dtu_serial“: „11xxxxxxxx80“,
    „dtu_pollinterval“: 10,
    „dtu_palevel“: 1
}

DTU-Einstellungen setzen:

  • Request-Type: POST
  • User/Passwort erforderlich: Ja
  • URL: /api/dtu/config
  • Beispiel: http://192.168.35.129/api/dtu/config
Request-Body:

data={„dtu_serial“: „19998026187“,“dtu_pollinterval“: 15,“dtu_palevel“: 2}

 
Ergebnis:

{
    „type“„success“,
    „message“„Settings saved!“
}

Happy testing,
WiB

PS: Ich habe keine Verbindung zur Entwicklung der OpenDTU Software, sondern bin nur ein großer Fan 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert