[bacnet]

Einstellungen für den BACnet Treiber

[bacnet] alarmExternAckFirst

Typ
bool
Default
0
Wertebereich
0|1
Bei der Kombination von Quittierart "KAM oder GING ist quittierpflichtig" mit der BACnet Notification Klasse "AckRequired: TO_OFFNORMAL=1, TO_NORMAL=0" kann folgendes Verhalten auftreten: Alarme werden in der falschen Reihenfolge quittiert (GING vor KAM), wodurch dann Alarme am Gerät nicht quittiert werden. Das wird durch diesen Eintrag verhindert, jedoch sollte dieser nur gesetzt werden, wenn die oben genannte Kombination auch wirklich im Projekt benötigt wird. Durch das Setzen dieses Eintrags auf 1 wird zuerst der Übergang quittiert, der eine externe Quittierung benötigt. Dadurch wird vermieden, dass Alarme in der falschen Reihenfolge quittiert werden (siehe Intrinsic und Algorithmic Alarming).

[bacnet] APDURetries

Typ
int
Default
1
Wertebereich
0..5
Definiert die Anzahl der Wiederholungen, die der Treiber bei fehlender Bestätigung ausführen soll.

[bacnet] APDUSegmentTimeout

Typ
int
Default
2000
Wertebereich
100..5000
Definiert die Zeit in Millisek., die auf eine Telegrammsegmentantwort gewartet werden soll. Dieser Wert muss kleiner sein als der APDUTimeout.

[bacnet] APDUTimeout

Typ
int
Default
4000
Wertebereich
500..10000
Definiert die Zeit in Millisek., die auf eine Telegrammantwort gewartet werden soll.

[bacnet] autoGQ

Typ
uint
Default
0
Wertebereich
0-3
Definiert, ob der Treiber eine automatische Generalabfrage (GQ) durchführt.
  • 0 -> keine automatische GQ
  • 1 -> automatische GQ beim Verbindungsaufbau
  • 2 -> automatische GQ bei Redundanzumschaltung
  • 3 -> automatische GQ beim Verbindungsaufbau und bei Redundanzumschaltung

[bacnet] bacnetBdtLocation

Typ
string
Default
data
Definiert den Ordner in dem die bdt-Datei abgelegt werden soll. Per Default wird die Datei im /data-Ordner des Projektverzeichnisses angelegt. Siehe auch Treiber - BACnet - Konfigurationsdatei BACnet Treiber - BBMD für nähere Informationen.

[bacnet] bbmdUdpPort

Typ
uint
Default
47808
Wertebereich
>0
Bestimmt den UDP port des BBMD, wenn sich der Treiber als "foreign device" bei einem BBMD registrieren soll.

[bacnet] connUserBitPrio

Typ
integer
Default
8
Wertebereich
0-16
Definiert das Benutzerbit, den der Treiber für die Kommandopriorisierung benutzt (siehe Kapitel "Treiber->BACnet->Kommando-Priorität"). 0 -> kein Userbit wird verwendet und der Wert wird normal geschrieben.

[bacnet] COVLifeTime

Typ
uinteger
Default
7200
Wertebereich
>=0
Dieser Config-Eintrag erlaubt es das Zeitlimit der COV Anmeldungen einzustellen. D.h. COVs werden mit einer Ablaufzeit in Sekunden registriert. Nach der halben Zeit wird die Anmeldung vom Treiber erneuert (beim Default alle 60 Minuten) Beim Wert 0 wird ohne Ablaufzeit angemeldet.

[bacnet] deviceStatusPollProperty

Typ
integer
Default
112
Wertebereich
>0
BACnet Property, die bei der Lebenszeichenüberwachung vom Device Objekt abgefragt wird. Die PropertyId 112 bedeutet System_Status. werden.

[bacnet] deviceStatusPollTimeout

Typ
integer
Default
30
Wertebereich
>0
Zeit in Sekunden, nach der alle parametrierten Geräte im Netzwerk gepollt werden.

[bacnet] eventGQMode

Typ
integer
Default
0
Wertebereich
0|1
Wenn der eventGQMode aktiviert wird (=1) werden zusätzlich zu GetEventInformation auch die Begleitwerte übertragen. Hinweis Voraussetzung dafür ist, dass das ReadPropertyMultiple Service verwendet wird.

[bacnet] foreignRegistrationAddress

Typ
string
Dieser Eintrag ermöglicht die Eingabe eines BBMDs wo sich der Treiber als "Foreign Device" registrieren soll. Dieser Eintrag kann mehrfach vorkommen, wenn sich der Treiber bei mehreren BBMDs als "Foreign Device" registrieren soll. Die Syntax ist <IP Addresse>:<Portnummer>. Zum Beispiel: foreignRegistrationAddress = "192.168.2.100:47808"

[bacnet] localDeviceId

Typ
unsigned integer
Default
10
Wertebereich
>0
Die lokale ID für das WinCC OA Treibergerät. Diese ID wird allen anderen Geräten im Netzwerk angezeigt und muss deshalb einzigartig sein.

[bacnet] localDeviceName

Typ
string
Default
WinCCOA_OWS_<localDeviceId>
Der lokale Name für das WinCC OA Treibergerät. Dieser Name wird allen anderen Geräten im Netzwerk angezeigt.

[bacnet] mapEventValuesToComment

Typ
bool
Default
0
Wertebereich
0|1
Obsolete seit Version 3.10. Definiert, ob der String mit den Notification-Parametern eines Ereignistypes (CHANGE_OF_STATE, COMMAND_FAILURE oder OUT_OF_RANGE) auf den Alarmkommentar des Properties Event_State des entsprechenden BACnet Datenpunktes geschrieben werden soll (TRUE (=1) = ja, FALSE (=0) = nein). Für weitere Informationen zu Ereignistypen siehe Intrinsic und Algorithmic Reporting.

[bacnet] mapOutOfServiceToInvalid

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob der Treiber bei gesetztem OUT_OF_SERVICE Statusbit das WinCC OA Invalid Bit beim Present_Value DPE setzt.

[bacnet] maxNumForReadMultiple

Typ
integer
Default
8
Wertebereich
>0
Definiert die maximale Anzahl von Properties, welche in einer Read Multiple Abfrage gelesen werden. Leseabfragen (Read Requests) werden in mehrere Leseabfragen (Read Multiple Requests) gruppiert, um die Performance bei den Abfragen in großen Projekten zu verbessern.

[bacnet] maxReadRangeCount

Typ
integer
Default
32767
Wertebereich
>0
Definiert die maximale Anzahl von Rekords, welche in einer ReadRange Abfrage gelesen werden.

[bacnet] net

Typ
integer, string, string, string, integer, string, integer, integer
Dieser Eintrag ist verpflichtend, um die Verbindung zum BACnet Gerät zu konfigurieren. Syntax:

net = <Netzwerk> "IP" <IP-Adresse> <Subnetzmaske> <UDPPort> <BBMDAdresse> <BBMDMaxFremdgeräte> <FremdgerätWartezeit>
  • Netzwerk - Die eindeutig zugewiesene Netzwerknummer. Der BACnet Treiber kann zurzeit mit einem Netzwerk kommunizieren.
  • IP - Art des Protokolls. In der aktuellen Version wird nur IP (BACnet/IP) unterstützt.
  • IP-Adresse - IP-Adresse der Netzwerkkarte, über die das BACnet/IP Netz erreichbar ist. Wenn der Eintrag leer ist, dann wird die IP-Adresse über den eigenen Hostnamen bestimmt. Letzteres funktioniert nur dann zuverlässig, wenn im Rechner nur eine Netzwerkkarte eingebaut ist, welche verwendet wird.
  • Subnetzmaske - Die Subnetzmaske bestimmt die Broadcastadressen, mit der Broadcasts in das BACnet-Netz geschickt werden. Ist der Eintrag der Subnetzmaske leer (""), so wird die Subnetzmaske der eingestellten Netzwerkverbindung verwendet.
  • UDPPort - UDPPort welcher für die BACnet/IP-Kommunikation verwendet wird. In den meisten Fällen ist hier der Port 47808 (0xBAC0) einzustellen.
  • BBMDAdresse - IP-Adresse eines "BACnet/IP Broadcast Management Devices". Dieser Wert ist in der aktuellen Treiberversion auf 0 zu setzen, da Fremdgeräte nicht unterstützt werden.
  • BBMDMaxFremdgeräte - Anzahl der maximalen Fremdgeräte (Default = 0). Dieser Eintrag ist in der aktuellen Treiberversion nicht relevant.
  • FremdgerätWartezeit - Wartezeit auf Fremdgeräte (Default = 120 Sekunden).
Beispiel:

[bacnet]
net = 1 "IP" "" "" 47808 "" 0 120

[bacnet] processIdentifier

Typ
uint
Default
1
Wertebereich
>0
Dieser Eintrag definiert den Prozessidentifier, den der BACnet Treiber bei COV Registrierung und bei Alarmquittierung verwendet.

[bacnet] reportHomelessAlarms

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob der Treiber Alarme/Ereignisse, die nicht auf Adressen abgebildet werden können, auf das DPE _Bacnet.State.HomelessAlarm in Stringform abbildet.

[bacnet] requestQueueMaxSize

Typ
integer
Default
1000
Wertebereich
>0
Der BACnet Treiber regelt die Reihenfolge der verschiedenen Anforderungen am Ausgang. Dieser Config-Eintrag bestimmt die Maximalgröße der wartenden Anforderungen. Wenn diese Größe überschritten wird, werden neue Anforderungen verworfen und eine Fehlermeldung wird im WinCC OA Log ausgegeben.

[bacnet] requestsPerCycle

Typ
integer
Default
1
Wertebereich
>0
Definiert wie viele BACnet Anforderungen in einem Treiberzyklus pro Gerät durchgeführt werden. Wird ein niedriger Wert eingestellt, wird die Auslastung, verursacht durch häufige Abfragen, reduziert, was wiederum bedeutet, dass der Datendurchsatz eingeschränkt wird. Ein zu hoher Wert kann Verbindungsprobleme verursachen.

[bacnet] sendUnicastIam

Typ
bool
Default
0
Wertebereich
0|1
Definiert ob vom Treiber ein Unicast I-Am als Antwort auf ein Who-Is gesendet werden soll. Der Defaultwert ist 0, die I-Am Nachricht wird also standardmäßig als Broadcast gesendet. In manchen Fällen ist allerdings keine BBMD-Funktionalität gegeben, d.h.  Broadcast-Nachrichten werden verworfen.   Durch Setzen dieses Config-Eintrags kann dieses Problem  umgangen werden.

[bacnet] statCheckInterval

Typ
unsigned
Default
20
Wertebereich
>2
Zeitintervall (in Sekunden) in dem statistische DPE aktualisiert werden. wird.

[bacnet] staticRouterBinding

Typ
string
Dieser Eintrag ermöglicht die Eingabe eines statischen Routers in ein spezielles BACnet Netzwerk. Die Angabe eines statischen Routers ist dann notwendig, wenn die Bestimmung über Broadcast Telegramme aufgrund der Netzwerkkonfiguration nicht möglich ist. Die Syntax ist <Netzwerknummer>:<IP Addresse>:<Portnummer>. Zum Beispiel: staticRouterBinding = "100:192.168.2.100:47808" Damit wird definiert, dass der Weg ins Netzwerk 100 über den Router mit der IP Adresse 192.168.2.100 (Port 47808) führt. Der Eintrag kann mehrfach in der BACnet Treiber Sektion vorkommen, falls es mehrere Router gibt.

[bacnet] userBitStatusFlagx

Typ
integer
Default
0
Wertebereich
0-31
Definiert wie die BACnet Status-Flags auf die WinCC OA Benutzerbits gemappt werden. Der Wert "0" bedeutet, dass das entsprechende Status-Flag nicht gemappt wird. Das "x" steht für die Bitnummer im Status-Flag Ausdruck:
  • 0 -> im Alarm
  • 1 -> Störung
  • 2 -> überschrieben
  • 3 -> außer Betrieb
  • 4 -> nicht spezifiziert
  • 5 -> nicht spezifiziert
  • ...
  • 31 -> nicht spezifiziert

[bacnet] userBitTrendLog

Typ
uint
Default
0
Wertebereich
0-32
Bestimmt das Userbit, auf welches die an das TrendLog-Objekt eingehenden Werte zusätzlich zu dem dafür vorgesehenen Property Log_Buffer gespeichert werden. Wenn dieser Config-Eintrag auf 0 gesetzt ist bzw. nicht in die Config-Datei eingetragen wurde, werden die Werte lediglich im Log_Buffer Property gespeichert und sind nur von dort aus abrufbar. Dieser Config-Eintrag bietet einen zusätzlichen Schutz vor Datenverlust, z.B. wenn ein TrendLog-Objekt nicht mehr gebraucht wird und dadurch gelöscht wird (somit gehen auch die Daten aus seinem Log_Buffer Property verloren), können die im Userbit archivierten Daten weiterhin abgerufen werden. Wenn die TrendLog-Werte als Korrekturwerte geschrieben werden sollen (dies ist dann erforderlich, wenn die Originalwerte für das TrendLog-Objekt zusätzlich von einer anderen Quelle kommen) muss zusätzlich der Config-Eintrag histDataBits in der Sektion [bacnet] gesetzt werden.

[bacnet] userByteAlarmPrio

Typ
uint
Default
0
Wertebereich
0-4
Obsolete seit Version 3.10. Durch diesen Config-Eintrag wird die gemappte BACnet Priorität (siehe Config.AlarmPrioMapping) auch der BACnet Applikation zur Verfügung gestellt. Über diesen Config-Eintrag wird definiert, auf welche Userbytenummer (1 - 4) die BACnet Priorität abgebildet wird. Default ist 0 (= keine Abbildung).

[bacnet] userByteLogStatus

Typ
uint
Default
0
Wertebereich
0-4
Bestimmt ob Logstatus Records abgebildet werden und auf welches Userbyte die Logstatusinformation geschrieben wird. Ist der Wert 0 so werden LogStatus Records ausgefiltert.

[bacnet] useWriteMultiple

Typ
bool
Default
0
Wertebereich
0|1
Definiert ob das WriteMultiple Service zum gruppieren von Schreibanforderungen verwendet wird. Wenn der Erfolg der Schreibanforderungen in der Anwendung angezeigt werden soll, dann muss der Wert auf false stehen.