382/395
Gebäudeautomatisierung
Implementierung des Datenlesens
für Logging-Objekte
Zusätzliche Hinweise
Bosch Rexroth AG R911393282_Ausgabe 05
Mit Hilfe der Funktion RegisterCallback des BACnetServer-FBs können
bis zu zwei CallbackFB Funktionsbausteine eingetragen werden, welche
die Schnittstelle IBACnetEventConsumer implementieren:
BACnetServer.RegisterCallback(CmpBACnet.IEC_BACNET_CALL-
BACK_TYPE.BACNET_CALLBACK_WRITE, CallbackFB, 0);
Um die Aufzeichnungen zu sichern, die mit den EVT_BACNET_WRITEPRO-
PERTYCALLBACK Callback-Daten bei jedem Aufruf geliefert werden, kann die
Funktion BACnetEventCallback im CallbackFB Funktionsbaustein im‐
plementiert werden.
Stellen Sie bei der Implementierung sicher, dass nach der korrekten Objekt-
ID und der korrekten Property-ID für die Callback-Daten gefiltert wird und
dass ausschließlich Aufzeichnungsdaten in das Log_Buffer eines Logging-
Objekts geschrieben werden.
Die Log_Buffer-Property eines Logging-Objekts kann nur unter Verwen‐
dung des ReadRange Service Hook ausgelesen werden.
Daher ist die Implementierung des ReadRange Service Hook ausreichend,
um die Funktion des Datenlesens für die Logging-Objekte zu implementieren.
Der ReadRange Service Hook kann durch Eintragen eines CallbackFB
zum entsprechenden Register Hook implementiert werden, wie in folgendem
Beispiel dargestellt:
Kap. "Implementierungsbeispiel CreateObject Service
Hook" auf Seite 378
Innerhalb der BACnetEventCallback-Funktion des CallbackFB kann
nach der korrekten Objekt-ID und Property-ID gefiltert werden und die korrek‐
ten Service-Daten ausgelesen werden (EVT_BACNET_READRANGE).
Innerhalb des ReadRange-Hook müssen exakt die Daten zurückgegeben
werden (abhängig von der angegebenen Objekt-ID), die zuvor im Write-
Callback aufgezeichnet wurden (siehe oben).
Dabei ist der ReadRange Service Hook für das Aussortieren von Daten zu‐
ständig, abhängig von den angeforderten Aufzeichnungsnummern und Auf‐
zeichnungszeitstempeln.
Die oben beschriebene Prozedur gilt für alle verfügbaren Logging-Objekte:
●
Event-Log Objekt
●
Trend-Log Objekt
●
Trend-Log-Multiple Objekt
Voraussetzung für das Speichern der Daten ist die Implementie‐
rung des Write-Callback Service Hook.
Voraussetzung für das Wiederauslesen der Daten ist die Imple‐
mentierung des ReadRange Service Hook.
Ansonsten sind keine Objekt-Aktionen bezüglich Propertys erfor‐
derlich.
IndraWorks 15VRS Feldbusse