Dynamisch die natures eines Geräts ermitteln

Hallo Forum,

In meinem Controller zur max/min-Soc Begrenzung nutze ich einen Zähler für die geladene Energie seit einem Zeitpunkt X. Dazu wird die ActivePower für ein SymmetricEss saldiert. Soweit so bekannt.
Bei einem hybriden System müsste ich aber die DC-Power (zu kalkuliert Energie) oder die DC_CHARGED_ENERGY direkt abfragen.
Der Controller referenziert bisher halt nur auf das ManagedSymmetricEss. Wie könnte ich feststellen welches Nature die Ess noch bereitstellt?

Also wie: hier ist mein symmetric ESS: ist es ein hybrides System, wenn ja, suche in den Channels für DC Energie, wenn nicht, nimm ActivePower/Energy.

Der DetailedLog-Controller fragt alle Implements zu einem Gerät ab. Das wäre vielleicht eine Möglichkeit - erscheint mir aber aufwändig.
Vielleicht geht das auch einfacher und sicherer.

Kann mir jemand ein Stichwort nennen?

Gruß,
Klinki

Hi @klinki,

meinst du evtl. sowas hier:

In deinem konkreten Fall kannst du auch das ManagedSymmetricEss ess fragen ob es noch von anderen Interfaces ableitet:

ManagedSymmetricEss ess = <yourunknown ess component>;
..
if (ess instance of HybridEss hss) {
   var  power = hss.get...();
   ..
}

VG Christian

1 Like

Moin Christian,

Genau sowas suche ich. Danke Dir!

Gruß, Klinki

Kurze Rückmeldung: Funktioniert prima!

Nochmals Danke :hugs: