veröffentlicht:
21.3.2024
Last updated:
November 6, 2024

Die DER API – Einfach digital Energieprodukte entwickeln

Wir öffnen unsere XENON Plattform für Dritte. Damit kann jede und jeder in kürzester Zeit digitale Energiemanagement Anwendungen entwickeln. Durch die DER API entfällt jeglicher Aufwand für die Entwicklung und Wartung von Integrationen für die Geräte einzelner Hersteller. Es braucht nur noch eine einzige REST API.

Definition Bevor wir in die Details eintauchen: Was meinen wir überhaupt mit DER? DER steht für Distributed Energy Resource. Wir verwenden diesen Begriff für alle Geräte, die Energie verbrauchen, speichern oder produzieren und eine Schnittstelle für Dritte bieten.

Without the DER API a custom integration is needed for every device

Mehr Hersteller. Mehr Geräte. Mehr Protokolle.

In den letzten Jahren sind immer mehr Hersteller auf den Markt gedrungen. Und obwohl die meisten modernen Geräte eine Schnittstellen für Anwendungen von Drittanbietern bieten, hat sich bisher kein standardisiertes Protokoll durchgesetzt. Folglich erfordern die meisten Geräte ihre eigene Integration. Jedes weitere Gerät bedeutet somit weiteren Entwicklungs- und Wartungsaufwand. Daher blockiert jede Integration Ressourcen für die Entwicklung der eigentlichen Applikation.

The DER API provides an interface to all DERs

Eine API für alle DERs

Aus diesem Grund haben wir die DER API entwickelt. So können all EntwicklerInnen ihre Anwendungen mit XENON entwickeln. Die DER API ist eine REST API, die eine Datenstruktur pro Gerätetyp bereitstellt – unabhängig vom dem Hersteller und dem Protokoll des Geräts. Diese Abstraktion ermöglicht es EntwicklerInnen, sich auf die Entwicklung ihrer eigentlichen Anwendungen zu konzentrieren. Bis heute unterstützt XENON bereits 27 der gängigsten OEMs und jeden Monat kommen weitere hinzu.

Eine API wie jede andere – nur für Energie

Hast du schon einmal mit einer API gearbeitet? Sehr gut, denn unsere DER API funktioniert genauso wie die meisten anderen modernen APIs.

Datenstrukturen

Beginnen wir mit den Datenstrukturen:

  • Account - Diese Struktur bildet ein Konto ab, das für die Nutzung der DER API registriert ist. Jeder Account kann mit einer beliebigen Anzahl von Clustern verknüpft sein und kontrolliert alle verknüpften Cluster.
  • Cluster - Cluster bilden Gateways ab. Jedes Cluster ist verfügt über eine Gruppe von Geräten, hat eine eindeutige Cluster ID und ist mit einem Account verbunden.
  • Geräte – Jedes Gerät ist mit einem Cluster verknüpft. Darüber hinaus verfügt jedes Gerät über eine Reihe an Eigenschaften, einschließlich des Gerätetyps (Wechselrichter, Zähler, Batterie usw.), des Geräteherstellers, des Modellnamens, der Seriennummer und der Firmware-Version.
  • Flexibilitäten – Jedes Gerät verfügt über Flexibilitäten. Diese geben den aktuellen Zustand der Flexibilitäten des Geräts an, d. h. die Last auf jeder Phase, die Gesamtlast auf allen Phasen und – im Falle einer Batterie – den Ladezustand.
  • Constraints – Constaints schränken das Verhalten von einem Gerät ein. Constraints bestimmen das Laden/Entladen eines Geräts. Sie besitzen einen Zeitstempel, ab dem sie gültig sind und einen Zeitstempel, zu dem sie ungültig werden. Um Konflikte zwischen Constraints zu vermeiden, werden sie mit einer Priorität versehen und nur der Constraint mit der höchsten Priorität wird angewendet.
Endpunkte

Die API bietet drei Arten von Endpunkten, die alle einem unterschiedlichen Zweck dienen:

  • Inventar – Mit dem Inventarendpunkt können alle Cluster abrufen werden, die mit einem Account verbunden sind. Setz das Cluster-ID-Parameter, gibt der Endpunkt alle DERs, die mit dem jeweiligen Cluster verbunden sind, zurück.
  • Flexibilität – Wenn eine Cluster und eine Geräte ID angegeben werden, gibt dieser Endpunkt den aktuellen Zustand eines Geräts einschließlich Leistungsmessungen, Ladezustand sowie den aktuellen Status (bspw. bereit, Fehler) zurück.
  • Constraints – Dieser Endpunkt erfordert eine Cluster und Geräte ID und unterstützt drei Requests. Ein GET-Request gibt eine Liste aller Constraints von einem Gerät zurück. Ein POST-Request fügt der Liste einen neuen Constraint hinzu. Ein DEL-Request erfordert eine Constraint ID als zusätzlichen Parameter und löscht den angegebenen Constraint aus der Liste.

Einfach. Flexibel. Leistungsstark.

Die beschriebenen Datenstrukturen und Endpunkte ermöglichen einen einfachen und flexiblen Zugriff auf jede DER in ihrem Account. Mit der jeweiligen Cluster- und Geräte-ID kann jedes Gerät gesteuert werden. So lässt sich bspw. mit nur 40 Zeilen Code ein einfaches Solarladesystem realisieren:

Dieses Snippet hebt die beiden Hauptvorteile der DER API hervor:

  • Sie ist unglaublich simpel. Die Abstraktionsschicht kümmert sich um all die Eigenheiten der eigentlichen Implementierung. Man kann sich auf die Logik Ihres Codes konzentrieren, anstatt sich Gedanken über die Kompabilität mit dem jeweiligen Gerät zu machen.
  • Sie ist herstellerunabhängig. Theoretisch kann man diesen Code in jedem anderen Cluster verwenden, der über einen Zähler, eine PV-Anlage und eine EV-Ladestation verfügt.

Sichere dir deinen Platz

Wir entwickeln XENON schon seit Jahren, aber fangen gerade erst an, Dritten Zugang zu der Plattform zu geben. Um sicherzustellen, dass wir jede Anfrage zeitnah beantworten können, arbeiten wir derzeit mit einer Warteliste. Daher wird es einige Zeit dauern, bis wir dir Zugang geben können. Aber wenn du dann an der Reihe bist, kannst du sicher sein, dass du unsere volle Aufmerksamkeit haben werden.

Sieh dir unser DER API-Webinar an, um mehr zu erfahren.

Report herunterladen!
HEMS-Report 2024
Genau wie die Autarkie und die Kostenvorteile durch ein HEMS zunehmen, steigt auch die Nachfrage danach. Energieversorger müssen jetzt in diese Software investieren, um die Nase vorn zu haben und ihre Angebote zukunftssicher zu gestalten. Lies unseren neuesten Report, um mehr zu erfahren.
Bleib auf dem Laufenden!
Melde dich für unseren Newsletter an. Kein Spam. Nur ein Update pro Monat. Melde dich jederzeit ab.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.