Interne Datenpunkte des BACnet Treibers

Der BACnet Treiber verfügt über zwei interne Datenpunkttypen: _Bacnet und _BacnetDevice.

Im internen Datenpunkttyp _Bacnet wird eine Instanz mit Datenpunktelementen für jeden WinCC OA BACnet Treiber erzeugt. Der Name jedes Datenpunktes wird folgendermaßen gebildet: "_Bacnet_<driver number>".

Im internen Datenpunkttyp _BacnetDevice wird für jedes parametrierte BACnet Gerät eine Instanz mit Datenpunktelementen erzeugt.

In den folgenden Tabellen werden die Strukturen beider Datenpunkttypen beschrieben.

_Bacnet

Datenpunktelement Typ Beschreibung
Browse.Devices.Range string

Mit diesem Datenpunktelement kann die Suche (Browse) des BACnet Netzwerks nach angeschlossenen Geräten gestartet werden. Dabei kann man einen Bereich für die Geräte-ID angeben. Wird der String leer gelassen, wird der komplette ID Bereich durchsucht. Ein Bereich der Geräte IDs, nach welchen gesucht wird, kann im folgenden Format angegeben werden:

"<niedrigste Grenze des Geräts>-<höchste Grenze des Gerätes>"

z.B.: "100-200"

Browse.Devices.Timeout uint Setzt das Timeout in Sekunden, wie lange im Netzwerk nach einem Gerät gesucht werden soll. Wird dieser Wert auf 0 gesetzt, wird ein Defaultwert von 10 Sekunden verwendet.
Browse.Devices.DeviceId dyn_uint Enthält alle Geräte IDs der Geräte, welche im BACnet Netz gefunden wurden.
Browse.Devices.VendorId dyn_uint Enthält alle Vendor IDs der Geräte, welche im BACnet Netz gefunden wurden.
Browse.Devices.NetworkType dyn_uint Aktuell nicht verwendet. Enthält die Netzwerk IDs der Geräte, welche im BACnet Netz gefunden wurden.
Browse.Devices.Segmentation dyn_uint Enthält den unterstützten Segmentierungsmodus der Geräte, welche im BACnet Netz gefunden wurden.
Browse.Objects.DeviceId uint Mit diesem Datenpunktelement kann ein Gerät nach BACnet Objekten durchsucht werden. Dazu muss die Geräte ID auf dieses Datenpunktelement geschrieben werden.
Browse.Objects.DeviceIdReturn uint Auf dieses Datenpunktelement wird die DeviceId des Ergebnisses zurückgeschrieben. Damit kann das Ergebnis einfach bei der Verarbeitung des Hotlinks zugeordnet werden.
Browse.Objects.ObjectType dyn_uint Enthält die Objekttypen der Objekte, welche im BACnet Gerät gefunden wurden.
Browse.Objects.Instance dyn_uint Enthält die Objektinstanzen der Objekte, welche im BACnet Gerät gefunden wurden.
Browse.Objects.PropertyId dyn_string

Enthält die unterstützen Properties der Objekte, welche im BACnet Gerät gefunden wurden.

Wird nur zuverlässig befüllt, wenn das gebrowste Gerät

Segmentierung und ReadPropertyMultiple unterstützt.

Browse.Objects.Name dyn_string Enthält die Objektnamen der Objekte, welche im BACnet Gerät gefunden wurden.
Config.AlarmPrioMapping dyn_string

Definiert das Mapping von BACnet-Alarmprioritäten auf WinCC OA-Alarmklassen.

Ein Mapping hat den folgenden Aufbau:

<BACnet Startprio1> < WinCC OA Alarmklasse1>

<BACnet Startprio2> < WinCC OA Alarmklasse2>

...

Ein Beispiel für ein solches Mapping ist:

0 BACnet_danger
50 BACnet_alarm
100 BACnet_warning
200 BACnet_info

D.h.: Die BACnet-Prioritäten 0-49 gehören zur Alarmklasse "BACnet_danger", 50-99 zu "BACnet_alarm", 100-199 zu "BACnet_warning" und 200-255 (höchste BACnet Priorität) zu "BACnet_info".

Für weitere Informationen siehe Intrinsic und Algorithmic Alarming.

Config.Devices dyn_string Hier können die Geräte eingetragen werden, die beim Treiberstart angemeldet werden sollen, obwohl noch keine Peripherieadresse für das Gerät parametriert sind. Wenn es Peripherieadressen für ein Gerät gibt, erfolgt diese Anmeldung automatisch. Somit ist dieses DPE nur in Spezialfällen notwendig.
Command.SyncTime time Über dieses Datenpunktelement kann eine Zeitsynchronisation als Broadcast ausgelöst werden. Bei der Nullzeit wird vom Treiber die aktuelle Zeit genommen, sonst wird die explizite angegebene Zeit zur Synchronisation verwendet.
Command.AddDevice string Mittels dieses Eintrages kann ein BACnet Gerät dem Treiber hinzugefügt werden. Hierfür muss der Name des DPs (vom Typ _BacnetDevice) an das DPE Command.AddDevice geschrieben werden.
State.HomelessAlarm string

Auf dieses Datenpunktelement werden Alarme/Ereignisse abgebildet, die keiner Adresse zugewiesen werden können. Dies erfolgt nur, wenn der entsprechende Config-Eintrag reportHomelessAlarms gesetzt ist.

Die Informationen des Alarms/Ereignisses werden in einem String im folgenden Format kodiert:

<Gerätename>.<GeräteId>.<Objekttyp>.<Instanz>.<Ereignistyp>.

<Ereigniszustand>.<Meldetyp>.<Priorität>

_BacnetDevice