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] 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.