Bachelorarbeit mehrzielorientiertes EMS, Probleme mit JSCalendar Scheduler

Hallo zusammen,

ich schreibe momentan meine Bachelorarbeit über die Modellierung und Implementierung eines mehrzielorientierten Energiemanagements für industrielle Verbraucher.

Die Situation ist: PV + BESS + Last + (opt. Ladesäulen)

Hier möchte ich folgende Prios abdecken:

  1. Peak-Shaving in den HLZF
  2. Eigenverbrauchsoptimierung
  3. Preisorientiertes Laden des BESS

Für einen reibungslosen Ablauf in der realen Umgebung simuliere ich vorab mit der Simulator App.

Leider treten ungewünschte Wechselwirkungen zwischen dem ESS Balancing und dem Timeslot Peak-Shaving Controller auf, weshalb ich diese mithilfe des JSCalendar Scheduler zeitlich trennen möchte. Leider funktioniert die “until” Funktion aus dem JSCalendar bei mir nicht. Hier beispielhaft mein Code für die rpc Anfrage für die Simulator App:

Ohne “until” funktioniert es super, hat aber kein Enddatum, weshalb sich die zwei Controller erneut überlappen.

Ziel wäre im Frühling/Sommer nur den ESS Balancing Controller und im Winter/Herbst den Timeslot Peakshaving unter der Woche, und den ESS Balancing am Wochenende laufen zu lassen.

Hat hier jemand eine Lösung bzw. habe ich ein Fehler bei mir oder funktioniert die “until” Funktion noch nicht? Ich habe schon alle möglichen Syntax durchprobiert.

Vielen Dank im Voraus und viele Grüße!

Das liegt ganz einfach daran:

Datei: io.openems.common/src/io/openems/common/jscalendar/JSCalendar.java:684-687

public record RecurrenceRule(RecurrenceFrequency frequency, LocalDate until, …) {
// TODO “until” is defined as LocalDateTime in the RFC
// NOTE: “until” is ‘inclusive’

  • Die RFC 8984 definiert until als LocalDateTime (mit Uhrzeit)
  • Die aktuelle OpenEMS-Implementierung nutzt nur LocalDate (ohne Uhrzeit)

Weitere Einschränkungen:

1 Like