Mögliche Config-Einträge in WinCC OA

SektionBeschreibung
[all drivers] Einstellungen die für alle Treiber gelten. Die Einträge sind in der spezifischen Sektion des Treibers vorzunehmen (z.B. [apc], [opc], ...).
[all sections] Einstellungen die in jeder Sektion verwendet werden können
[all sections except general] Einstellungen für alle Sektionen außer [general]
[ascii] Einstellungen für den ASCII Manager
[asx] Einstellungen für den ASX Treiber
[asx_<k_komReceiver>]
[attentionEffectEWO] Einstellungen für das AttentionEffectEWO.
[auth] Mit diesem Schlüsselwort beginnen die Eigenschaften für die Sektion auth.
[bacnet] Einstellungen für den BACnet Treiber
[bacnetdefault] Einstellungen für die BACnet Applikation.
[calcstate] Einstellungen für das calculateState.ctl CTRL Skript.
[commandChannel] Einstellungen für den Command Channel
[ctrl] Einstellungen für den Control Manager
[data] Einstellungen für den Data Manager
[different sections] Einstellungen für verschiedene Sektionen
[DisRec] Einstellungen für das Disaster Recovery System
[dist] Einstellungen für den Distribution Manager
[distsync] Einstellungen für Dist-Management.
[dnp3] Einstellungen für den DNP3 Treiber
[driver] Config-Einträge für Treiber.
[eip] Einstellungen für den EIP-Treiber
[event] Einstellungen für den Event-Manager
[general] Globale Einstellungen gültig für alle Manager
[httpServer] Definiert Optionen für den httpServer, der innerhalb eines CTRL Managers läuft
[iec] Einstellungen für den IEC Treiber
[iec61850] Einstellungen für den IEC 61850 Client.
[mod] Einstellungen für den Modbus Treiber
[modsrv] Einstellungen für den Modbus/TCP-Server
[mqtt] Einstellungen für den MQTT-Treiber.
[mqttpub] Einstellungen für den MQTT-Publisher.
[NextGenArch] Einstellungen für das NextGenArchive (NGA)
[oaTest] Einstellungen für die CTRL OA Unit Dynamic Link Library.
[oledb] Einstellungen für den OLE DB-Provider.
[onlineBackup] Einstellungen für das Online Backup
[opc] Einstellungen für den OPC Client
[opcae] Einstellungen für den OPC A&E Client
[opcaesrv] Einstellungen für den WinCC OA OPC A&E Server.
[opcae_<servername>]
[opchda] Einstellungen für den OPC HDA Client
[opchdasrv] Einstellungen für den OPC HDA Server
[OPCSERVER] Einstellungen für den OPC Server
[opcsrv] Allgemeine Einstellungen für den OPC DA Server.
[opcua] Einstellungen für den OPC UA Client
[opcuasrv] Einstellungen für den OPC UA Server
[opc_<symbolic_servername>] Serverspezifische Einstellungen für den OPC Client.
[PMAgent] Einstellungen für das PM-Add-On.
[pmon] Einstellungen für den Prozess Monitor (Pmon)
[pmonWatchdog] Mit diesem Schlüsselwort beginnen die Eigenschaften für die Sektion pmonWatchdog.
[profisafe] Einstellungen für den PROFIsafe-Treiber.
[proxy] Einstellungen für den WCCILproxy
[redu] Einstellungen für den Redundanz-Manager
[reporting] Einstellungen für den Reporting-Manager.
[rk512] Einstellungen für den RK512 Treiber
[s7] Einstellungen für den S7 Treiber
[s7plus] Einstellungen für den S7Plus-Treiber
[sbus] Einstellungen für den S-Bus Treiber
[sinaut] Einstellungen für den SINAUT Treiber
[snmpa] Einstellungen für den SNMP Live Agent
[snmpdrv] Einstellungen für den SNMP-Manager
[split] Einstellungen für den Splitbetrieb-Manager
[ssi] Einstellungen für den SSI Treiber
[stdlib] Einstellungen für die Standard Object Library (Stdlib).
[TLSGateway] Einstellungen für das TLS-Gateway
[ui] Einstellungen für das User Interface
[ulcUX] Einstellungen für den ULC UX Client.
[valarch] Einstellungen für das Value Archive
[ValueArchiveRDB] Einstellungen für die RDB Archivierung
[webClient] Einstellungen für die WinCC OA mobile UI Applikation und das WinCC OA Desktop UI.
[wssServer] Einstellungen für spezialisierte WebSocket-Server (wie sie für z. B. Dashboard oder Node-RED verwendet werden).

[all drivers]

Einstellungen die für alle Treiber gelten. Die Einträge sind in der spezifischen Sektion des Treibers vorzunehmen (z.B. [apc], [opc], ...).

[all drivers] commitCount

Typ
unsigned integer
Default
100
Eine gewisse Anzahl der Nachrichten kann der Treiber im voraus an den Event-Manager schicken ohne eine Quittierung abzuwarten. Diese Anzahl kann durch diesen Config-Eintrag eingestellt werden. Der Config-Eintrag hat eine besondere Bedeutung für das Überlastverhalten des Treibers.

[all drivers] connectForAlerts

Typ
bool
Default
n
Wertebereich
y|n
Aktiviert/deaktiviert die Anmeldung auf Alarmattribute beim Hochlauf des Treibers. Bei Treibern, die Alarme unterstützen, wird dieser Eintrag intern auf "y" gesetzt. Für alle anderen Treiber wird per Default "n" gesetzt. Diese Funktionalität kann bedenkenlos deaktiviert werden, wenn keine Alarme benötigt werden.

[all drivers] drvDpName

Typ
string
Default
_Driver<num>
Gibt den Datenpunktnamen für den allgemeinen internen Treiber-Datenpunkt an.

[all drivers] histDataBits

Typ
string
Dieser Eintrag gibt an, welche Userbits gleichzeitig gesetzt sein müssen, um historische Daten zu kennzeichnen. Historische Daten werden nicht als Originalwerte, sondern als Korrekturwerte geschrieben, um sie zeitlich korrekt in die Datenbank einsortieren zu können. Das bedeutet aber auch, dass lediglich Wert und Zeit von der Peripherie verwendet werden, jedoch keine Statusbits wie weitere Userbits oder das Invalidbit. Die Peripherie muss natürlich für diese Werte eine Zeit liefern. Der Eintrag hat die Form "Userbit x, Userbit y, ...". Beispiel: histDataBits = "Userbit 1, Userbit 3" Der Treiber wird veranlasst, alle Werte der Peripherie, bei denen die Userbits 1 und 3 gesetzt werden, als historische Daten zu interpretieren. Nur der zuletzt gefundene Eintrag ist gültig, es ist nicht möglich, verschiedene Alternativen anzugeben. Die Userbits können durch vorangestelltes "-" ausgeschaltet werden, z.B.: histDataBits = "+Userbit 1,+Userbit 2,-Userbit 3,+Userbit 4,+Userbit 5,-Userbit 6,-Userbit 7,-Userbit 8,+Userbit 9,+Userbit 10,-Userbit 11,+Userbit 12,+Userbit 13,-Userbit 14,-Userbit 15,-Userbit 16,+Userbit 17,+Userbit 18,-Userbit 19,+Userbit 20,+Userbit 21,-Userbit 22,-Userbit 23,-Userbit 24,+Userbit 25,+Userbit 26,-Userbit 27,+Userbit 28,+Userbit 29,-Userbit 30,-Userbit 31,-Userbit 32" ACHTUNG: Es dürfen bei den "-" KEINE LEERZEICHEN nach dem Komma verwendet werden. Bei "+" ist es nicht relevant.

[all drivers] IOTransitionTimeout

Typ
int
Default
10
Um den Übergang eines DPEs anzuzeigen, wenn ein neuer Ausgangswert geschickt wurde, gibt es ein Attribut im Originalwertkonfig - das _transition Attribut. Es zeigt an, wenn ein Wert geschickt, aber noch keine Rückmeldung erhalten wurde. Wird z.B. in WinCC OA ein Wert gesetzt, so wird auch automatisch das Transition-Bit auf 1 gesetzt und auf eine Rückmeldung von der Peripherie gewartet. Mit dem Config-Eintrag IOTransitionTimeout in der spezifischen Sektion des Treibers (siehe auch Referenztabellen, Kapitel "Treiber") kann die Wartezeit festgelegt werden (Default 10 Sekunden). Läuft das Timeout ab und ist bis dahin noch keine Rückmeldung von der Peripherie eingetroffen, wird der Originalwert auf den Wert, den die Peripherie zu diesem Zeitpunkt aufweist, zurückgesetzt und auch das Transition-Bit wechselt automatisch wieder auf 0. Trifft eine Rückmeldung vor dem Ablauf des Timeouts ein, wird auch das Transition-Bit wieder zurückgesetzt. Hinweis: Der Wert für den Config-Eintrag IOTransitionTimeout sollte 2 mal größer als das größte parametrierte Pollintervall sein um so einen ständigen Timeout des Polling-Prozesses zu verhindern. Wenn der Config-Eintrag IOTransitionTimeout auf 0 in der entsprechenden Treibersektion der Config-Datei gesetzt wird, wird der Originalwert nicht zurückgesetzt und das Transition-Bit nicht verwendet.

[all drivers] loopTime

Typ
unsigned long
Default
10
Wertebereich
>0
Dieser Eintrag gibt die Zeit in Millisekunden an, die der Treiber in der dispatch-Routine verbringen darf und legt damit die maximale Zykluszeit des Treibers fest.

[all drivers] maxConnectMachineSend

Typ
int
Default
100
Anzahl der Anmeldungen auf ausgehende Datenpunkte beim Start eines Treibers, nach welchen ein Senden der Nachrichten-Warteschlange an den Event-Manager ausgelöst wird. Dadurch werden auf der Treiberseite weniger Nachrichten angesammelt (Überlauf wird verhindert), der Event-Manager kann in der Zwischenzeit diese bearbeiten und der Hochlauf des Treibers wird beschleunigt.

[all drivers] maxOutputQueueSize

Typ
unsigned integer
Default
1000*
Dient zur Beschränkung der Ausgangsqueue zum Event-Manager. Bei Überlastverhalten des Treibers würde die Queue schnell anwachsen. Dieser Eintrag begrenzt die Queue. Relation zwischen der Anzahl der Werte und der verbrauchten Anzahl von Bytes im Speicher: Die Objekte, die in der Queue enthalten sind, sind "DpIdVarFlgObj" Objekte. So ein Objekt hat eine Größe von 68 Bytes, wobei darin auch eine Referenz auf ein "Variable" Objekt enthalten ist. Die Größe des "Variable" Objektes hängt sehr vom Typ der Variablen ab. Ein grober Wert für einfache Variablentypen (z.B. Integer) ist 100 Bytes/Wertänderung. *.. Der Default entspricht der Anzahl der HWObjects aber mindestens dem Wert 1000.

[all drivers] maxVcMessageSize

Typ
unsigned integer
Default
200
Wertebereich
>= 0
Definiert wie viele Wertänderungen eine VC (Value Change) Message, die zum Event gesendet wird, maximal enthalten darf.

[all drivers] passiveDriverWrites

Typ
bool
Default
0
Wertebereich
0|1
Dieser Eintrag legt fest ob ein Treiber im passiven Modus Ausgangswerte an die Peripherie schicken soll.

[all drivers] pollCount

Typ
unsigned integer
Default
32
Wertebereich
>0
Gibt die Anzahl der Datenpunkte an, die auf einmal gepollt werden können. Stehen mehr Pollingaufträge an, so werden diese erst im nächsten Treiberzyklus abgearbeitet.

[all drivers] pollEpsilon

Typ
float
Default
200.0
Wertebereich
> 0.0
Dieser Eintrag stellt ein, wie weit ein Pollzeitpunkt (in Prozent) des Pollintervalls in der Vergangenheit liegen darf und er noch gepollt wird. Ein Wert von 200 bedeutet, dass das Doppelte des Pollintervalls verstreichen darf, bevor dieser Wert erst beim nächsten Pollzeitpunkt wieder gepollt wird. Der Wert kann über den Datenpunkt drvPollEpsilon verändert werden.

[all drivers] pollMode

Typ
bool
Default
1 (Simulator: 0)
Wertebereich
0|1
Schaltet den Pollmodus ein (=1) bzw. aus (=0). Dieser Config-Eintrag gilt für alle Treiber, die die Pollingfunktion des allgemeinen Treibers verwenden (ComDrv).

[all drivers] pollTime

Typ
float
Default
1.0
Wertebereich
>0.0
Gibt die Zeit in Sekunden an, die maximal für Polling aufgewendet wird. Läuft die Zeit ab, werden die weiteren Pollingaufträge erst im nächsten Treiberzyklus abgearbeitet. Damit und mit dem Eintrag 'loopTime' kann die Zeit beschränkt werden, die ein Treiber außerhalb der workProc verbringt.

[all drivers] reconnectToEvent

Typ
string
Default
no
Wertebereich
yes|no
Wird der Eintrag auf "no" gesetzt, so beendet sich der Treiber, sobald er die Verbindung zum Event-Manager verliert. Ansonsten versucht er beliebig lange die Verbindung wiederherzustellen. Das bisherige Verhalten war, die Verbindung zum Event wiederherzustellen.

[all drivers] smoothBit

Typ
string
Wertebereich
Userbit 1..Userbit 32
Dieser Eintrag gibt an, welche Userbits in einer Glättung (Low-Level Alt/Neu- Vergleich oder parametrierter Alt/Neu-Vergleich) berücksichtigt werden sollen. Ändert sich eines der Userbits (oder das Invalidbit), passiert der Wert den Alt/Neu-Vergleich, auch wenn sich der Originalwert nicht geändert hat. Dieser Eintrag muss für jedes Userbit, das berücksichtigt werden soll, einmal vorhanden sein. Mögliche Werte für die Userbits sind z.B.: smoothBit = "Userbit 1" smoothBit = "Userbit 2" ... smoothBit = "Userbit 32"

[all drivers] srcTimeCheckMode

Typ
int
Default
0
Wertebereich
0,1,2
Es können Daten, die mit einem Zeitstempel gesendet werden, der außerhalb eines bestimmten Zeitfensters liegt, im Logfile protokolliert oder verworfen werden. Dafür gibt es drei Config-Einträge: srcTimeCheckMode srcTimeMaxBefore srcTimeMaxBehind srcTimeCheckMode ist der Modus für die Kontrolle der Zeit: 0 = keine Kontrolle 1 = nur Fehlermeldung 2 = Fehlermeldung und Daten werden verworfen

[all drivers] srcTimeMaxBefore

Typ
float
Default
120 [s]
Die maximale erlaubte Zeitdifferenz (in Sekunden), wenn die Zeit vor der WinCC OA Zeit liegt.

[all drivers] srcTimeMaxBehind

Typ
float
Default
3600 [s]
Die maximale erlaubte Zeitdifferenz (in Sekunden), wenn die Zeit nach der WinCC OA Zeit liegt.

[all drivers] useCRC

Typ
bool
Default
0
Wertebereich
0|1
useCRC ist ein Sicherheitsfeature des WinCC OA-Nachrichtensystems. Es bietet erweiterte Fehlererkennungsmöglichkeiten im Vergleich zum Standard-Nachrichtensystem. Um die Datenintegrität der WinCC OA-Nachrichten sicherzustellen, werden die Nachrichten in CRC-Telegramme mit geeigneter Länge eingeteilt. Jedes Telegram enthält eine 32 Bit CRC. Beim Empfang der Nachrichten werden die Werte überprüft und wenn die Werte nicht übereinstimmen, wurde ein Fehler gefunden. Der Fehler wird im LogViewer angezeigt und die Verbindung zwischen den Managern wird geschlossen. Der Eintrag "useCRC" kann in der [event]- oder einer spezifischen Treiber-Sektion der config-Datei verwendet werden. Der Eintrag kann in einer oder in beiden Sektionen verwendet werden. Der Eintag ist immer Managerspezifisch. Der "stärkere" Manager gewinnt und selektiert den Typ der Verbindung. BEISPIEL Die Verbindung zwischen Treiber und Event verwendet die erweiterte Integritätsprüfung sowie auch andere Manager, die eine Verbindung zum Event-Manager aufbauen. [event] useCRC = 1 [mod] useCRC = 0 BEISPIEL Die Verbindung zwischen Treiber und Event verwendet die erweiterte Integritätsprüfung. Alle andere Manager, die eine Verbindung zum Event-Manager aufbauen verwenden keine erweiterte Integritätsprüfung (außer diese wurde in den Managersektionen angegeben). [event] useCRC = 0 [mod] useCRC = 1 Die Information ob die erweiterte Integritätsprüfung für eine Verbindung verwendet wird oder nicht, wird auf den Connection-Datenpunkt des Managers geschrieben. Zudem wird beim Start eines Managers ein Log-Eintrag geschrieben. Der Eintrag enthält die Kommunikationsform des Managers. In einem redundanten System kann der Eintrag in einem oder in beiden System(en) des redundanten Systems verwendet werden. In einem DRS-System kann der Eintrag in einem oder in beiden DRS-System(en) verwendet werden. Wenn verteilte Systeme verwendet werden und eines der Systeme ein Safety-System ist und das andere nicht, muss der Eintrag nur für das Safety-System verwendet werden. Der Dist-Manager des Safety-Systems verwendet CRC-Checks in der Kommunikation mit dem Event-Manager des Safety-Systems. Es werden keine CRC-Checks in der Kommunikation mit dem Event-Manager des nicht Safety-Systems verwendet. HINWEIS Das Defaultverhalten ist die Nachrichtenübermittlung ohne erweiterte CRC-Checks. Wenn Sie einen falschen Wert für das Keyword "useCRC" in der Config-Datei angeben, wird eine Warnung im LogViewer ausgegeben und der Manager verwendet die Defaultkommunikation. Log-Meldungen werden ausgegeben, wenn CRC verwendet wird bzw. wenn CRC parametriert wurde aber wegen einer localhost-Verbindung nicht verwendet wird. Eine Meldung wird auch ausgegeben wenn CRC parametriert ist und verwendet werden müsste aber nicht verwendet wird (WARNING). Für Safety-Projekte siehe auch das Dokument "Basic and operating Conditions" im ETM-Portal.

[all drivers] waitSecondsForIdps

Typ
unsigned int
Default
60s
Wertebereich
> 0
Ein Treiber benötigt beim Start meist verschiedene Informationen bis er fertig initialisiert ist (meist sind dies Werte von internen DPs). Mit diesem Config-Eintrag kann man angeben, wie lange der Treiber maximal auf diese Informationen warten soll. Die Angabe erfolgt in Sekunden. Wird ein zu kleiner Wert eingestellt, kann es sein, dass der Treiber noch nicht alle Daten empfangen hat und sich dadurch mit einer Fehlermeldung nach Ablauf des Timeouts beendet.

[all sections]

Einstellungen die in jeder Sektion verwendet werden können

[all sections] aliveTimeout

Typ
integer
Default
-10
Wertebereich
MIN_INT..MAX_INT
Dieser Eintrag gibt an, in welchen Zeitabständen (in Sekunden) Alivetelegramme dieses Managers eintreffen müssen, wenn der Zielmanager einen Aliveport zur Verfügung stellt. Der Manager selbst schickt in diesem Zeitraum etwa 10 Alivetelegramme. Treffen beim Zielmanager in der Zeit keine Alivetelegramme ein, wird dieser die Verbindung schliessen. Ein Wert von 0 schaltet das Versenden von Alivetelegrammen und die Überwachung beim Zielmanager für diesen Manager ab. Negative Werte gelten nur für Verbindungen zwischen Managern, die auf unterschiedlichen Rechnern laufen, positive Werte für alle Managerverbindungen. Ziel von Alivemanagern kann jeder Manager sein, zu dem dieser eine Verbindung aufbaut und der einen Aliveport zur Verfügung stellt. Im allgemeinen sind dies lediglich Event- und evtl. Data-Manager. Für Dist-Manager auch die Dist-Manager der angekoppelten Systeme. Der Empfangsmodus des bestimmten Managers kann mit dem Config-Eintrag "alivePort = 0" deaktiviert werden.

[all sections] allowLocalMessageCompression

Typ
bool
Default
0
Wertebereich
0|1
Der Config-Eintrag allowLocalMessageCompression = 1 erlaubt die Verwendung der Nachrichtenkomprimierung am lokalen Rechner. Der Config-Eintrag kann z.B. bei der Verwendung des Web Clients gesetzt werden.

[all sections] chainPrefix

Typ
string
Eine Zertifikat "chain" ist die Verkettung der Subject Strings von verketteten Zertifikaten. Wenn die "chain of trust" wie folgt aussieht: e.g. root-CA ^ sub-CA1 signed by | ^ sub-CA2 signed by | ^ HOST_CERT signed by | Ist die Zertifikats chain "rootCA;sub-CA1;sub-CA2;HOST_CERT". Wenn der Konfigfile Eintrag chainPrefix konfiguriert ist, muss der Start der Zertifikats chain des Peers mit dem gegebenen String beginnen.

[all sections] cipherSuiteList

Typ
string
Default
TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-RSA-AES128-GCM-SHA256
Eine Cipher-Suite ist eine standardisierte Sammlung kryptographischer Verfahren. Eine durch Kommas getrennte Liste aller, für die Kommunikation verwendbaren, Cipher-Suiten. Der Server wählt die erste Cipher-Suite seiner Liste, die auch in der Liste des Clients zu finden ist. TLSv1.3 ist standardmäßig aktiviert und verwendet eine Liste von Default-Ciphers (siehe Default oberhalb). Standardmäßig sind folgende Cipher-Suiten aktiviert: TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES128-GCM-SHA256 Beim Auflisten der Cipher-Suiten werden die Werte durch Komma getrennt. Daher ist der Standardwert des Config-Eintrags: cipherSuiteList = "TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-RSA-AES128-GCM-SHA256" Die Syntax ist: cipherSuiteList = "<cipherSuite0>, <cipherSuite1>,...,<cipherSuiteN>" Um entweder TLSv1.2 oder TLSv1.3 zu deaktivieren, ändern Sie diesen cipherSuiteList-Config-Eintrag, sodass dieser nur die spezifischen Ciphers enthält, z.B. wenn keine TLSv1.3-Cipher in der Liste ist, wird v1.3 deaktiviert und umgekehrt. Verwenden Sie das Debug-Flag "-dbg BCM", um anzuzeigen welche Ciphers verwendet werden. Die zulässigen v1.3-Ciphers sind auf der openSSL-Webseite beschrieben. Beispiel cipherSuiteList = "TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-RSA-AES128-GCM-SHA256" Die unterstützten Cipher-Suiten finden Sie in den Security Guidelines auf winccoa.com.

[all sections] connectDelay

Typ
int
Default
20
Wertebereich
>0
Länge der Verzögerung in Sekunden zwischen den Verbindungsversuchen zum anderen Programm (siehe connectRetries).

[all sections] connectRetries

Typ
int
Default
30
Wertebereich
>0
Anzahl der Verbindungsversuche zu einem anderen Programm. Die Verzögerung zwischen zwei Versuchen wird in connectDelay definiert.

[all sections] coverageReportFile

Typ
string
Definiert das File, in das Ausgaben von "-report CTRL_COVERAGE" geschrieben werden. Das File wird im log-Verzeichnis des Projektes angelegt. Die Platzhalter $MAN$, $DATE$ und $TIME$ werden durch Managername und -nummer, aktuelles Datum im Format YYYYMMDD bzw. aktuelle Zeit im Format HHMMSS ersetzt. Spezielle Namen sind "stderr" für Ausgaben auf stderr und "stdout" für Ausgaben auf stdout. Default ist eine Ausgabe auf das gleiche File wie alle anderen Ausgaben von "-report ...".

[all sections] ctrlBreakFunctionCall

Typ
bool
Default
0
Wertebereich
0|1
Gibt an, ob verschachtelte Funktionsaufrufe in einem Zug ausgeführt werden sollen (bzw. bis zu einem wartenden Funktionsaufruf) (= 0) oder ob das Script auch innerhalb dieser Funktionen unterbrochen werden kann (= 1).

[all sections] data

Typ
string
Default
local host name, port 4897
Der Eintrag gibt den Hostnamen des Data-Managers optional zusammen mit der Portnummer an. Soll ein Hostname zusammen mit der Portnummer angegeben werden, verwenden Sie den "data"-Eintrag. Hostname und Portnummer werden durch ein Doppelpunkt getrennt. Für redundante Systeme werden beide Data Hosts getrennt mit einem Dollarzeichen angegeben. Die vollständige Syntax lautet: data = "host1[:port1]" Oder (bei Redundanz): data = "host1[:port1]$host2[:port2]" Weitere Informationen zur Redundanz in WinCC OA finden Sie im Kapitel Grundlagen Redundanz. Oder (bei redundanten Netzwerkverbindungen): data = "host1-1[:port1],host1-2[:port1]" Weitere Informationen zu redundanten Netzwerkverbindungen in WinCC OA finden Sie im Kapitel Redundante Netzwerkverbindungen. Oder allgemein: data = "host1-1[:port1],host1-2[:port1]$host2-1[:port2],host2-2[:port2]" Statt Angabe des Hostnamens können auch IP-Adressen verwendet werden, z.B. data = "192.168.154.26". Die Verwendung von IP-Adressen kann möglicherweise unerwünschte Effekte nach sich ziehen (Auflösung IP - Hostname bei Verwendung in Skripts). Sollte es bei Verwendung von IP-Adressen Schwierigkeiten geben, müssen die Hostnamen herangezogen werden! Hinweis: Dieser Eintrag ersetzt die aus früheren Versionen bekannten Config-Einträge "dataHost" bzw. "dataPort", die aus Kompatibilitätsgründen erhalten bleiben.

[all sections] dataHost

Typ
string
Default
local host name
Obsoleter Eintrag. Rechnername, auf dem der Data-Manager (WCCILdata) gestartet wurde, d.h. alle Programme, die sich mit dem Data-Manager verbinden wollen, suchen diesen auf dem angegebenen Rechner. Redundanz: Primär und Sekundär-Host sind durch '$' getrennt. Dieses Format von dataHost/eventHost schaltet die Redundanz ein. Achtung: Dieser Eintrag sollte nicht mehr verwendet werden. Für die Definition von Hostnamen verwenden Sie den Eintrag "data".

[all sections] dataPort

Typ
integer
Default
4897
Wertebereich
1024 .. 65535 (see RFC 1340 | /etc/services)
Portnummer des Data-Managers. Achtung: Dieser Eintrag sollte nicht mehr verwendet werden. Für die Definition von Portnummern verwenden Sie den Eintrag "data".

[all sections] dbg

Typ
string
Mit dem Eintrag können Debug-Flags für Manager gesetzt werden. Dies ist speziell beim PMON sinnvoll, wenn er als Windows-Service betrieben wird, da dort keine Kommandozeilen-Argumente möglich sind. Beispiel: dbg = "2,16,SOME_FLAG"

[all sections] dbgOffset

Typ
integer
Default
1
Wertebereich
>0
Stellt einen Offset für dbgCount ein. dbgCount = 100 und dbgOffset = 2 bedeutet somit, dass nach 2, 102, 202, ... Meldungen die Debugmeldung ausgegeben wird. Der Manager muss dafür mit der Kommandozeilenoption '-dbg 17' gestartet werden. Die Option wurde bislang für Event- und Datamanager sowie alle Treiber implementiert.

[all sections] DHParamFile

Typ
string
Default
2048-bit MODP group 14
Der Pfad, relativ zum Root Directory des Projekts und der Name des PEM Files das die DHparameter Struktur enthält. Das Format der Struktur wird durch den PKCS#3 Standard beschrieben. Dieser Parameter hat nur Bedeutung für Cipher Suites die das Diffie-Hellman (DHE) Key Exchange Protocol verwenden.

[all sections] discreteImpulseAlertWithoutWent

Typ
bool
Default
0
Wertebereich
0|1
Ist dieser Config Eintrag gesetzt wird bei diskreten Impuls-Alarmen kein GING Ereignis erzeugt. Dadurch kann man Status-Meldungen erzeugen wie z.B.: 1 Offen, 2 Geschlossen, 3 Zwischenlage 4 Fehler und im Alarmlog ist dann je nach Wertefolge zu lesen: Offen KAM; Zwischenlage KAM; Geschlossen KAM; Fehler KAM .... - Ohne diesen Eintrag werden im Alarmlog auch die GING Ereignisse protokolliert (Offen KAN; Offen GING; ...)

[all sections] distributed

Typ
bool
Default
0
Wertebereich
0|1
Definiert ein verteiltes System. Ein verteiltes System benötigt den "distributed = 1" -Eintrag. Zusätzlich kann dieser Wert für einzelne Manager überschrieben werden. [ctrl_1] distributed = 0 In diesem Fall kann der Control-Manager mit der Nummer 1 nicht auf die DPs anderer Systeme zugreifen (DP Identification wird nicht an diesen Manager übermittelt).

[all sections] ECDHCurve

Typ
string
Default
prime256v1
Für Cipher Suites die das Ecliptic curve Diffie-Hellman (ECDHE) Key Exchange Protocol verwenden kann die zu verwendende Elliptic curve konfiguriert werden. Führen Sie "openssl.exe ecparam -list_curves" aus um die Liste aller verfügbaren curves Ihrer installierten OpenSSL Version zu erhalten.

[all sections] event

Typ
string
Default
lokaler Hostname, Port 4998
Definiert die Hostnamen und optionale Portnummern des Event-Managers. Die Syntax dieses Eintrages ist gleich der Syntax beim Config-Eintrag "data" (siehe oben). Achtung: Dieser Eintrag ersetzt die aus früheren Versionen bekannten Config-Einträge "eventHost" bzw. "eventPort", die aus Kompatibilitätsgründen erhalten bleiben.

[all sections] eventHost

Typ
string
Default
lokaler Hostname
Obsoleter Eintrag. Rechnername auf dem der Event-Manager (WCCILevent) gestartet wurde, d.h. alle Programme, die sich mit dem Event-Manager verbinden wollen, suchen diesen auf dem angegebenen Rechner. Redundanz: Primär und Sekundär-Host sind durch '$' getrennt. Dieses Format von dataHost/eventHost schaltet die Redundanz ein. Achtung: Dieser Eintrag sollte nicht mehr verwendet werden. Für die Definition von Hostnamen verwenden Sie den Eintrag "event".

[all sections] eventPort

Typ
int
Default
4998
Wertebereich
1024 .. 65535 (siehe RFC 1340 | /etc/services)
Portnummer des Event-Managers. Achtung: Dieser Eintrag sollte nicht mehr verwendet werden. Für die Definition von Portnummern verwenden Sie den Eintrag "event".

[all sections] exitDelay

Typ
uint
Default
0
Wertebereich
>=0
Definiert wie viele Sekunden ein Manager vor dem endgültigen Beenden (Exit) noch wartet (in dem Fall wird eine Logmeldung ausgegeben). Wird ein Manager mit einem Signal beendet, sollte diese Verzögerung nicht verwendet werden (z.B. Stop durch Console/Pmon), ansonsten wird sie immer verwendet.

[all sections] ignoreManager

Typ
string int
Ein Treiber ignoriert Hotlinks, die auf Wertänderungen bestimmter Manager beruhen. Der Manager wird über einen Namen und seine Managernummer identifiziert. Der Name entspricht den entsprechenden Abschnitt ohne die eckigen Klammern, z.B. für Control 'ctrl'. Ausnahmen: Alle Treiber werden als 'driver', alle Api als 'api' und alle Gerätemanager (SCA-RS) als 'device' identifiziert. Beispiel: [ssi] ignoreManager = "ascii" 1

[all sections] ip_allow, ip_deny

Typ
string
Mit ip_allow bzw. ip_deny kann eine Access Control Liste mit IP-Bereichen von Clients, welche diverse WinCC OA Server Sockets (Event, Data, HTTP, etc.) verwenden wollen, definiert werden. Wildcards * und ? werden unterstützt. (z.B. "*.etm.at"). Der spezielle Wert "-empty list-" löscht die bis dahin definierte Liste komplett (z.B. ip_deny = "-empty list-") Mehrfaches Vorkommen dieser Config-Einträge addiert diese zur Liste. Für weitere Details und Beispiele siehe IP Accesslisten für TCP-Server Sockets in der Online Hilfe.

[all sections] kerberosSecurity

Typ
string
Default
none
Wertebereich
none,auth,int,enc
Überwacht das Verhalten der Client-Server-Verbindung. "none" ist der Defaultwert und gibt an, dass Kerberos nicht verwendet wird. "authenticate" gibt an, dass die Clients und Server sich authentifizieren müssen. Nachrichten werden weder signiert noch verschlüsselt. "integrity" gibt an, dass sich die Clients und Server authentifizieren müssen und danach alle Nachrichten signieren müssen. Wenn einer von den Partnern bei der Bestätigung der Signatur einer Nachricht von dem anderen Partner scheitert, wird die Verbindung abgebrochen. "encryption"> gibt an, dass sich die Clients und Server authentifizieren müssen und danach alle Nachrichten verschlüsseln müssen. Wenn einer von den Partnern bei der Bestätigung der Signatur einer Nachricht von dem anderen Partner scheitert, wird die Verbindung abgebrochen. Wenn ein Client und ein Server verschiedene Einstellungen enthalten, gewinnt der stärkere (in der Reihenfolge: auth/int/enc) und definiert das Nachrichtenverhalten. Die (initial) INIT_SYS- und KEEP_ALIVE-Nachrichten werden weder signiert noch verschlüsselt. Diese Nachrichten enthalten nicht sensible Daten und das Senden im Klartext stellt kein Problem dar. Der Grund für das Senden der Nachrichten im Klartext ist, dass ein Peer bereit für das Signieren/ Verschlüsseln der Nachricht wäre aber die andere Seite mehr Daten für das Überprüfen/Entschlüsseln der Nachricht benötigt.

[all sections] localAddress

Typ
string
localAddress erlaubt es, die lokale Netzwerkadresse eines Servers festzulegen. Per default ist ein Server über alle lokalen IP-Adressen erreichbar. Ausgenommem hiervon ist der Pmon, der per default nur über lokal, also "localhost" erreichbar ist und nicht von anderen Rechnern aus. Mit localAddress kann man festlegen, dass ein Server nur über eine bestimmte IP-Adresse erreichbar ist, z.B. nur über die loopback-Adresse (localhost oder 127.0.0.1) oder die einer bestimmten Netzwerkkarte. Gültige Einträge sind "" für alle Adressen, "0.0.0.0" für alle IPv4-Adressen, "::" für alle IPv6-Adressen, "127.0.0.1" oder "localhost" für IPv4 loopback, "::1" für IPv6 loopback oder jede andere lokale IP-Adresse.

[all sections] logFile

Typ
bool
Default
1
Wertebereich
0|1
Steuert die Ausgabe der Fehlermeldungen zu einer Datei. Im Projektverzeichnis befindet sich im Verzeichnis log für jeden Manager eine solche Datei. 1...ein, 0...aus.

[all sections] logStdErr

Typ
bool
Default
0
Wertebereich
0|1
Legt fest, ob Meldungen des Standard WinCC OA Error Handlers auf stderr (Standard Error Ausgabe) geschrieben werden sollen oder nicht. stderr wird je nach Manager in eine Datei {Manager}{Nummer}.log umgeleitet.

[all sections] maxDpNamesCount

Typ
unsigned integer
Default
1.000.000
Wertebereich
>=0
Gibt an, wie viele Datenpunktelemente ein dpNames() bzw. die entsprechenden Funktionen im API (getIdSet und Verwandte) liefern darf. Bei einer Überschreitung liefern die entsprechenden Funktionen nichts (dpNames) bzw. einen Fehler. Der Wert 0 erlaubt beliebig viele Werte. Beachten Sie, dass es zu einer Überschreitung auch kommen kann, wenn für einen Datenpunkt das abgefragte Suchobjekt (DPE, Alias, Kommentar, etc.) nicht existiert, aber der DP dennoch dem gesetzten Filter entspricht. Zum Beispiel wird in der Funktion dpGetAllAliases() die Anzahl der Datenpunktelemente, die dem Filter entsprechen, mit der festgelegten Anzahl in maxDpNamesCount verglichen, auch wenn nicht alle Datenpunktelemente einen Alias besitzen. HINWEIS: Wenn die Ergebnisliste einer Funktion größer als der Wert des Config-Eintrags "maxDpNamesCount" ist, wird die Abfrage abgebrochen. Dies gilt z.B. für die folgenden Funktionen: - dpGetAllAliases() - dpTypes() - dpAliases() - dpNames() - Alle Abfrage(Query)-Funktionen, die im FROM-Teil der Abfrage nach Patterns (Muster) wie z.B. FROM '*.**' filtern.

[all sections] messageCompression

Typ
string
Default
none
Wertebereich
none, zlib, bzip2, zlib-bzip2
Mit dem Config-Eintrag "messageCompression" wird das Komprimierungsschema für die Nachrichten-Komprimierung festgelegt. Der Config-Eintrag kann die folgenden Schemen enthalten: "none" - keine Kompression "zlib" - komprimiert unter Verwendung von der zlib (gzip, zip); siehe http://www.zlib.org "bzip2" - komprimiert unter Verwendung des bzip2-Algorithmus (bzip2 ist ein frei verfügbarer, hoch qualitativer Komprimierungs Algorithmus; siehe http://www.bzip.org). "bzip2" komprimiert besser als "zlib", jedoch mit höherer CPU-Auslastung. "zlib-bzip2" - komprimiert kurze Messages mit zlib, große Messages, wie z.B. die Identifikation, mit bzip2. Der Eintrag kann in allen Sektionen der Config-Datei verwendet werden. Es können mehrere Schemen zur Auswahl angegeben werden, z.B. messageCompression = "zlib-bzip2,zlib". Client und Server einigen sich dann auf das erste gemeinsame Verfahren. Ist also beim Client "zlib" und beim Server "bzip,zlib" parametriert, wird das "zlib" -Verfahren verwendet. Der Default-Wert ist "none" und falls sie komprimierte Messages verwenden wollen empfehlen wir "zlib-bzip2" zu verwenden.

[all sections] messageCompressionThreshold

Typ
int
Default
0
Wertebereich
0 - MAX_INT
Der Eintrag gibt an, ab welcher Größe in Bytes messages komprimmiert werden sollen. "0" bedeutet dabei "alles komprimmieren". Komprimierung ist immer mit einer gewissen CPU Belastung verbunden. Unter Umständen kann es günstiger sein, kleine Messages nicht zu komprimmieren, da der Durchsatz im Netzwerk sich kaum ändert. Ein guter Wert für diesen Eintrag ist die MTU, das heisst die maximale Anzahl an Bytes, die in einem TCP-Paket übertragen werden kann. Die MTU hängt von der Netzwerkkonfiguration ab und schwankt zwischen wenigen 100 Bytes (PPP) bis ca. 1200 Bytes (Ethernet).

[all sections] mxProxy

Typ
string
Default
derived from various settings
Wertebereich
n.a.
Syntax: mxProxy = "<serverHost> <proxyHost[:proxyPort]> <securityMode>" | "none" z.B. mxProxy = "system36 etmFW:5678 cert" mxProxy = "system314 system314 cert" mxProxy = "system310 system310 none" mxProxy = "none" Dieser Eintrag kann mehrmals auftreten, einmal für jede Connection. serverHost - Name des Hosts auf dem der Server (z.B. WCCILdata) läuft mit dem kommuniziert werden soll. proxyHost - Name des Hosts auf dem der WCCILproxy läuft proxyPort - Port der vom WCCILproxy verwendet wird (Defaultport: 5678) securityMode - Detailierte Informationen siehe securityMode Wenn keine Proxy-Konfiguration verfügbar ist, verbindet sich der Client direkt mit dem Host, der durch den Data-Config-Eintrag angegeben ist, unter der Annahme, dass die Data- und Event-Manager sowie der Proxy-Manager auf diesem Host laufen. Wenn eine IPv6-Adresse für den "server"- und "mxProxy"-Einträge verwendet wird, müssen [ ] (Eckige Klammern) verwendet werden. [general] mxProxy = "[::1] [::1]:5678 cert" [proxy] server = "[fe80::2c5c:5415:98f1:82f3]:1234" Der Eintrag mxProxy="none" deaktiviert den Multiplexing Proxy.

[all sections] noReverseLookup

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob bei einer Managerverbindung die IP-Adresse zu einem Namen aufgelöst werden soll. Für Android und iOS ist der default 1, für alle anderen Plattformen ist er 0.

[all sections] optimisedRefresh

Typ
Bool
Default
1
Wertebereich
0|1
Bei einer Redundanzumschaltung sendet der Client eine DISCONNECT_ALL Message an das umschaltende System. Da die Verarbeitung der Message relativ aufwändig ist geschieht das per default nur, wenn auch Anmeldungen (dpConnect) in diesem System betroffen sind. Mit diesem Config-Eintrag kann erreicht werden, dass der Client diese Message auch dann schickt, wenn es keine Anmeldungen gibt. Frühe Systeme, z.B. 3.11, brauchen diese Message, da sie sonst nicht erkennen, ob ein Manager neu gestartet wurde.

[all sections] osErrorMode

Typ
int
Default
1
Wertebereich
0,1,4,2,32768
Der Config-Eintrag schaltet die Windows Fehlermeldungsdialoge aus. Es können mehrere Optionen für den Eintrag gleichzeitig verwendet werden. Die Optionen können als Maske verwendet werden. Um mehrere Optionen zu verwenden, verwenden Sie den binären Operatoren (or)|). Die Option 0 zeigt alle Windows Fehlermeldungsdialogfenster an. Option 1 (SEM_FAILCRITICALERRORS)- das System zeigt die kritischen Fehlermeldungsdialogfenster nicht an. Stattdessen wird die Fehlermeldung an den aufrufenden Prozess gesendet. Option 4 (SEM_NOALIGNMENTFAULTEXCEPT) - das System korrigiert automatisch Speicherausrichtungsfehler und blendet diese aus. Option 2 (SEM_NOGPFAULTERRORBOX) - das System zeigt das Windows Fehlermeldungsdialogfenster nicht an. Option 32768 (SEM_NOOPENFILEERRORBOX) - das System zeigt kein Hinweisfenster, wenn eine Datei nicht gefunden wurde. Stattdessen wird ein Fehler and den aufrufenden Prozess gesendet. z.B. [general] osErrorMode=4|2

[all sections] outstandingMsgTimeout

Typ
int
Default
-1
Jeder Manager überprüft regelmäßig, ob alle ausstehenden Nachrichten (Anfragen) ihre Antworten in einem durch outstandingMsgTimeout definierten Zeitraum (in Sekunden) erhalten. Falls die Zeitüberwachung abläuft, wird eine Warnung ausgegeben. Danach wird die Warnung auch alle outstandingMsgTimeout Sekunden ausgegeben, bis die Antwort eintrifft. Um diese Funktion zu aktivieren, setzen Sie den Eintrag auf einen Wert >= 0. Der Wert -1 (default) deaktiviert die Funktion

[all sections] refreshDelay

Typ
int
Default
0
Wertebereich
>=0
Länge der Verzögerung in Sekunden für ein refresh der connects nach einer Redundanz Umschaltung. Die angegebene Zeit wird pro Manager für eine bessere Lastverteilung noch zufällig variiert und die Berechnung basiert auf diesem Wert.

[all sections] reportFile

Typ
string
Definiert das File, in das Ausgaben von "-report ..." geschrieben werden. Das File wird im log-Verzeichnis des Projektes angelegt. Die Platzhalter $MAN$, $DATE$ und $TIME$ werden durch Managername und -nummer, aktuelles Datum im Format YYYYMMDD bzw. aktuelle Zeit im Format HHMMSS ersetzt. Spezielle Namen sind "stderr" für Ausgaben auf stderr und "stdout" für Ausgaben auf stdout. Default ist eine Ausgabe auf stderr.

[all sections] securityMode

Typ
string
Default
cert
Wertebereich
plain | cert | winCert | none
cert SSL/TLS mit PEM Format Zertifikat-Dateien werden für Multiplexing Proxy und SSL Kommunikation zwischen Managern sowie für den HTTP Server zwischen Client und Server verwendet . winCert SSL/TLS mit Zertifikat aus dem Windows Certificate Store werden für Multiplexing Proxy und SSL Kommunikation zwischen Managern sowie für den HTTP Server zwischen Client und Server verwendet. none Die Kommunikation erfolgt nicht via WCCILproxy, sondern unverschlüsselt direkt mit den Servern. Mit dieser Option können Verteilte Systeme Hosts mit älteren WinCC OA Versionen, die noch keinen SSL/TLS Support bieten, aufnehmen.

[all sections] singleSourceConnect

Typ
integer
Default
0
Wertebereich
0|1
In redundanten Netzwerkverbindungen müssen die Source IP-Adresssen unterschiedlich sein. Eine zweite Verbindung wird beendet, wenn sie die gleiche Source IP-Adresse hat wie die bestehende Verbindung. Wenn ein Rechner sich jedoch über eine Netzwerkkarte zu einem redundantem Netzwerk verbindet, haben beide Verbindungen die gleiche Source IP-Adresse. In diesem Fall muss singleSourceConnect auf 1 gesetzt werden.

[all sections] ssaCertCheck

Typ
String
Wertebereich
chainPrefix=%chainPrefix%
Mit dem Config-Eintrag kann ein ChainPräfix gesetzt werden. Dieses wird für Windows Cert Store-Zertifikate benötigt. ssaChertCheck = "chainPrefix=rootCA;sub-CA1;sub-CA2;HOST_CERT" Wenn der Konfigfile Eintrag ssaChertCheck konfiguriert ist, muss der Start der Zertifikatschain mit dem gegebenen String beginnen.

[all sections] ssaCertificate

Typ
string
"[Typ]:[Wert]" Typ: kann "file" oder "store" sein und beschreibt wo das Zertifikat gespeichert wurde. Wert: Abhängig vom "Typ", ist "Wert" entweder der relative Pfad des Zertifikats (Typ == "file") oder wird aufgeteilt in "loc:store:subject" -loc: Speicherort vom Store. "USER" ist der aktuelle Windows Certificate Store-Benutzer: CERT_SYSTEM_STORE_CURRENT_USER, "MACHINE" ist der Windows Certificate Store Account der lokalen Maschine: CERT_SYSTEM_STORE_LOCAL_MACHINE -store: Name des Zertifikat-Stores der verwendet wird. -subject: Suchkriterien, um das Zertifikat über Betreff/SHA1-Eigenschaft zu finden.

[all sections] ssaChainFile

Typ
string
ssaChainFile = "[wert]" Wert ist der Pfad der Certificate Chain-Datei(kann entweder relativ oder absolut sein).

[all sections] ssaCRL

Typ
string
ssaCRL = "[wert]" Wert ist der Pfad der CRL-Datei (Zertifikatsperrliste). Der Pfad kann entweder relativ oder absolut sein.

[all sections] ssaPrivateKey

Typ
String
"[Typ]:[Wert]" Typ: kann "file" oder "store" sein und beschreibt wo der Privatschlüssel gespeichert wurde. Wert: Abhängig vom "Typ", ist "Wert" entweder der relative Pfad des Schlüssels (Typ == "file") oder wird aufgeteilt in "loc:store:subject" - loc: Speicherort vom Store. "USER" ist der aktuelle Windows Certificate Store-Benutzer: CERT_SYSTEM_STORE_CURRENT_USER, "MACHINE" ist der Windows Certificate Store Account der lokalen Maschine: CERT_SYSTEM_STORE_LOCAL_MACHINE, - store: Name des Zertifikat-Stores der verwendet wird. - subject: Suchkriterien, um den Schlüssel über Betreff/SHA1-Eigenschaft zu finden.

[all sections] sslCertificate

Typ
string
Default
[path]/host-cert.pem [path]/host-key.pem [path]/root-cert.pem
syntax: sslCertificate = "<[path]/cert-file> <[path]/private-key> <[path]/CAFile>" e.g. D:/certificates/host-cert.pem Dieser Eintrag wird nur berücksichtigt, wenn der Securitymodus cert konfiguriert ist. Der sslCertificate-Eintrag gibt den absoluten Pfad der 3 PEM-Dateien an, die für SSL/TLS verschlüsselte Kommunikation gebraucht werden. Alle Dateien müssen PEM-encoded sein. <cert-file> X509 Zertifikat des Hosts <private-key>Private Key des Hosts <CAFile> X509 Zertifikat der "trusted CA" (Certificate Authority) von der die Zertifikat alle Hosts signiert wurden

[all sections] sslCRLfile

Typ
string
Der Pfad, relativ zum Root Directory des Projekts und der Name des PEM Files das die CRL enthält. Siehe die OpenSSL Dokumentation ( openssl ca ) für Details zu CRL Files.

[all sections] sslVerifyTime

Typ
Bool
Default
1
Wertebereich
0 | 1
Wenn sslVerifyTime = 1 konfiguriert ist, wird die zeitliche Gültigkeit von Zertifikaten geprüft.

[all sections] valueChangeTimeDiff

Typ
unsigned integer
Default
30 (sec)
Wertebereich
>=0
Der Event-Manager prüft bei einer Änderung des Originalwertes, ob die mitgelieferte Quellzeit mehr als valueChangeTimeDiff-Sekunden in der Zukunft liegt. Wenn dies der Fall ist, wird die Quellzeit auf die aktuelle Zeit korrigiert und außerdem das Statusbit ungültige Quellzeit original..qzeit_inv gesetzt. Dadurch ist auch das Invalid-Bit gesetzt. Redundanz: Wenn ein Manager startet, ermittelt er die Zeitdifferenz zwischen seinem Rechner und dem Rechner des Servers. Wenn die Systemzeiten um mehr als "valueChangeTimeDiff/2" Sekunden unterschiedlich sind, wird eine Fehlermeldung ausgegeben. Wenn die Systemzeiten um mehr als "valueChangeTimeDiff" Sekunden unterschiedlich sind, beendet er die Verbindung mit einer Fehlermeldung. Wenn bei älteren Projekten der Eintrag valueChangeTimeDiff im [event]-Sektion gesetzt ist, wird eine Fehlermeldung angezeigt. Der erlaubte Zeitunterschied sind per Default 30 Sekunden. Achtung: Wenn sich zwischen den Systemzeiten während des Betriebes ein Unterschied ergibt, wird dies nicht überprüft.

[all sections] winCert

Typ
string
syntax: winCert = "<location>:<store>:<cert-id>" e.g. winCert = "USER:MY:IOWASystem34" winCert = "MACHINE:MY:3E 27 B3 87 52 25 70 E6 64 6B C8 FC 06 78 AD 62 CC 89 46 A2" Wenn der Security Mode winCert configuriert ist gibt der Config Eintrag winCert an, welches Zertifikat aus dem Windows Certificate Store für SSL/TLS Kommunikation verwendet werden soll. <location> Mögliche Werte sind USER | MACHINE. Wenn der Wert USER angegeben ist wird das Zertifikat im CERT_SYSTEM_STORE_CURRENT_USER gesucht. Wenn der Wert MACHINE angegeben ist wird das Zertifikat im CERT_SYSTEM_STORE_LOCAL_MACHINE gesucht. <store>Der Name des Stores in location. <cert-id> ID mit der das Zertifikat gesucht wird. Die angegebene ID ist entweder das Subject oder der SHA1 Fingerprint des Zertifikates wenn winCertSearchBy SHA1 konfiguriert ist (Siehe auch die Beschreibung des winCertSearchBy-Eintrages). Wenn es mehrere Zertifikate mit gleichem Subject im Store gibt wird das erste zeitlich gültige Zertifikat verwendet. Wenn sslVerifyTime = 0 konfiguriert ist sind alle Zertifikat zeitlich gültig. NOTE! Das Zertifikatsformat des Windows Certificate Store erlaubt es den private key im Zertifikat zu speichern.

[all sections] winCertSearchBy

Typ
string
Default
SubjectName
Wertebereich
SubjectName | SHA1
Definiert ob die <cert-id> welche im winCert oder winRootCA Config Eintrag angegeben ist der Subject String oder der SHA1 Fingerprint (angegeben als Hex-Digit String) des Zertifikates ist. z.B. SHA1 fingerprint als Hex-Digit String "3E 27 B3 87 52 25 70 E6 64 6B C8 FC 06 78 AD 62 CC 89 46 A2"

[all sections] winRootCA

Typ
string
syntax: winRootCA = "<location>:<store>:<cert-id>" e.g. winRootCA = "MACHINE:ROOT:IOWARootCA" winRootCA = "MACHINE:ROOT:58 BA 02 2F 3A 6F 0F 42 27 3E 87 F8 43 3B EB 53 FE B9 E0 AD" Wenn der Security Mode winCert konfiguriert ist gibt der Config Eintrag winRootCA an, welches Zertifikat aus dem Windows Certificate Store zur Zertifikatsüberprüfung beim SSL/TLS Sessionaufbau verwendet werden soll. Siehe auch die Beschreibung des SecurityMode-Eintrages. <location> Mögliche Werte sind USER | MACHINE. Wenn USER angegeben ist wird das Zertifikat im CERT_SYSTEM_STORE_CURRENT_USER gesucht. Wenn MACHINE angegeben ist wird das Zertifikat im CERT_SYSTEM_STORE_CURRENT_USER gesucht. <store>Der Name des Stores in location. <cert-id> ID mit der das Zertifikat gesucht wird. Die angegebene ID ist entweder das Subject oder der SHA1 Fingerprint des Zertifikates wenn winCertSearchBy SHA1 konfiguriert ist. Siehe auch die Beschreibung des winCertSearchBy-Eintrages. Wenn es mehrere Zertifikate mit gleichem Subject im Store gibt wird das erste zeitlich gültige Zertifikat verwendet. Wenn sslVerifyTime = 0 konfiguriert ist, sind alle Zertifikat zeitlich gültig.

[all sections except general]

Einstellungen für alle Sektionen außer [general]

[all sections except general] alivePort

Typ
unsigned integer
Default
0
Wertebereich
0..64k
Dieser Eintrag gibt an, auf welchem Port ein Manager Alivetelegramme empfangen soll. Eine Aliveüberwachung findet nur zwischen Managern statt, die einen Aliveport zur Verfügung stellen, also einen Eintrag 'alivePort = ' haben, und die auch ein aliveTimeout != 0 haben. Die Überwachung findet nur beim Ziel von Alivetelegrammen statt, also bei dem Manager, der auch einen Aliveport zur Verfügung stellt. Siehe auch aliveTimeout.

[all sections except general] alivePriorityClass

Typ
bool
Default
1
Wertebereich
0|1
Erhöht die Priorität des Alive-Threads unter Windows auf TIME_CRITICAL und unter Linux auf maximale 'scheduling priority'.

[all sections except general] as_activeAlarmBackCol, as_activeAlarmForeCol, as_activeCurrAlarmBackCol, as_activeCurrAlarmForeCol, as_alarmBackCol, as_alarmForeColI

Typ
string
Wertebereich
WinCC OA-Color
as_activeAlarmBackCol/as_activeAlarmForeCol setzt die Vorder-und Hintergrundfarbe des letzten aktiven Alarmeintrags im offenen und geschlossenem Modus des Melde- und Ereignisschirms. as_activeCurrAlarmBackCol/as_activeCurrAlarmForeCol bedient in gleicher Weise den aktuellen Modus. Zum Beispiel: Text: Rot, Hintergrund: Weiss (blinkend) Als aktiver Alarm wird hier immer die letzte "KAM unquittiert" bzw. "KAM quittiert Meldung" verstanden. Beispiele: as_activeAlarmBackCol = "<{255,0,255},4,{255,255,255},>" as_activeAlarmForeCol = "<{255,255,255},4,{255,0,255},4>" as_alarmBackCol/as_alarmForeCol setzt die Vorder-und Hintergrundfarbe des letzten nicht-aktiven Alarmeintrags im offenen und geschlossenem Modus des Melde- und Ereignisschirms. Ein nicht-aktiver Alarm entsteht wenn die Melderichtung/der Wert auf GING/False wechselt. Beispiele: as_alarmBackCol = "_3DFace" as_alarmForeCol = "blue"

[all sections except general] as_descriptionMode

Typ
bool
Default
0
Wertebereich
0|1
Mit as_descriptionMode = 1 wird eingestellt, dass im Alarmschirm der Alias angezeigt wird, wenn keine Datenpunktbeschreibung gegeben ist. Ist der Alias ebenso nicht gegeben, so wird der Datenpunktname angezeigt.

[all sections except general] as_ShowMilliseconds

Typ
integer
Default
0
Wertebereich
0|1|2
Anzeige von Millisekunden auf dem Meldeschirm. 0: Millisekunden mit '.' getrennt 1: Millisekunden in () 2: wie 0

[all sections except general] as_SpecialWentText

Typ
bool
Default
0
Wertebereich
0|1
Auf dem Meldeschirm wird bei gehender Meldung der Text der Meldung in Klammern angezeigt (=1).

[all sections except general] connectDp

Typ
string
Definiert den Datenpunkt, welcher vom Manager zur Bekanntgabe seiner Managerverbindungen verwendet wird.

[all sections except general] connectToRedundantHosts

Typ
unsigned
Default
0
Wertebereich
0,1
Dieser Eintrag gibt an, ob sich in einem redundanten System ein Manager, der sich normalerweise nur zu einem Event verbindet (z.B. Ctrl) sich zu beiden Event verbinden soll. Der Eintrag kann in allen Sektionen, außer [general], verwendet werden, d.h. für alle Manager kann eine Verbindung zu beiden Event-Managern aufgebaut werden. Beispiel: [ctrl] connectToRedundantHosts = 1

[all sections except general] distSystemIds

Typ
string
Mit diesem Config-Eintrag kann pro Manager gesteuert werden, von welchem verteilten System er die DP Identification akzeptiert/hält. Beispiel: [ctrl_3] distSystemIds = "1-28, 46, 280-290, 320" Es können entweder Bereiche oder einzelne Nummern eingegeben werden. Leerzeichen werden ignoriert. Wird dieser Config-Eintrag nicht definiert, so werden alle DP Identifications akzeptiert. Ist der Wert des Config-Eintrages distributed (siehe Konfigurationsdatei für verteilte Systeme in der Online Hilfe) für einen Manager gleich 0, wird die DP Identification an diesen Manager nicht übermittelt. Mit dem Debug-Level -dbg 31 kann überprüft werden, welche Identifications akzeptiert oder ignoriert werden.

[all sections except general] requestDejaVu

Typ
bool
Default
0
Wertebereich
0|1
In einem redundanten System verarbeitet der passive Event nur Wertänderungen, die er vom aktiven Eventmanager erhält. Messages, die er von einem Manager erhält, der zu beiden Eventmanagern verbunden ist, z.B. einem UI, hält er in einem Buffer, bis er die gleiche Message (mit gleicher ID) vom aktiven Eventmanager bekommt. Messages dagegen, die er von einem Manager erhält, der nur zu jeweils einem Eventmanager verbunden ist, z.B. einem Treiber, verwirft er, weil er die gleiche Message nicht vom aktiven Eventmanager bekommen kann. Stattdessen wird erwartet, dass eine entsprechende Message den aktiven Eventmanager erreicht und dieser die Message dann zum passiven Eventmanager weiterleitet. Im Fall einer Störung, z.B. Ausfall des aktiven Treibers oder sogar Ausfall des aktiven Eventmanagers, kann es einige Sekunden dauern, bis dieses erkannt wurde. Wertänderungen, die in dieser Zeit angefallen sind, wären damit verloren gegangen, da der passive Eventmanager sie nicht mehr vom aktiven Eventmanager erhalten kann und Werte, die er direkt bekommen hätte, bereits verworfen hat. Um diesen Datenverlust vorzubeugen können Manager so parametriert werden, dass ein passiver Eventmanager dessen Wertänderungen nicht sofort verwirft sondern zunächst für eine begrenzte Zeit in einem Puffer hält. Nach einer Umschaltung beginnt der nun aktive Eventmanager zunächst, diese Messages abzuarbeiten. Dabei verwirft er alle Wertänderungen, die älter als die letzte Wertänderung im Prozessabbild sind, für die er also bereits eine entsprechende Message vom vormals aktiven Event erhalten hat. Per default ist dieses für Treiber aktiviert. Für andere Manager kann dieses Verhalten mit dem Config-Eintrag "requestDejaVu" explizit eingeschalten werden.

[all sections except general] requestedCNSViews

Typ
string
Wertebereich
CNS view names
Gibt an welche CNS-Ansicht ein Manager im Speicher behalt. Verwenden Sie den Eintrag, um Speicher in Prozessen zu sparen, indem Sie nur die CNS-Ansichten angeben, die benötigt werden. Syntax: Durch Beistriche getrennte Liste der Pfade zu den entsprechenden CNS-Ansichten. Beispiel: requestedCNSViews = "System1.View1, .View2, System2.View3:" Ansichten, die im lokalen System verwendet werden, können entweder über z.B. System1.View1, oder über .View2. angegeben werden. Wenn ein Ansichtsname, der nicht im CNS existiert, angegeben wird, werden alle Ansichten ausgefiltert. Wenn der Eintrag für Data- oder Dist-Manager angegeben wurde, wird der Eintrag nicht berücksichtigt.

[ascii]

Einstellungen für den ASCII Manager

[ascii] alwaysSendCommon

Typ
bool
Default
false
Wertebereich
0|1
Der ASCII Manager schickt fortlaufend den aktuellen Status zur "Beschreibung" und "Alias" an den Event-Manager, auch wenn dieser sich nicht geändert hat. Diese Option dient zur Aktualisierung der Einträge in der Datenbank, falls diese nicht erfasst werden konnten (z.B. RDB Absturz), jedoch in der Zwischenzeit geändert wurden.

[ascii] commit

Typ
uint
Default
10
Gibt an, nach wie vielen verschickten Messages der ASCII-Manager auf eine Antwort des Event-Managers wartet. Der Standardwert ist 10. Der ASCII-Manager wartet nach 10 Messages auf die Antwort des Event-Managers. Die Daten werden dabei mit der größten Geschwindigkeit eingespielt und der Event-Manager wird dabei am meisten belastet. 1 bedeutet, dass nach jeder Message auf eine Antwort gewartet wird. Die Belastung des Event-Managers ist dabei am geringsten. Werte >1 bieten einen guten Kompromiss zwischen Einspiel-Geschwindigkeit und Belastung des Event-Managers.

[ascii] forceScan

Typ
bool
Default
0
Wertebereich
0|1
Bestimmt die Strategie beim Verwenden von Datenpunkt-Filtern (-filterDp). Wenn 0, dann wird vor dem Lesen der DB eine Liste der betroffenen DP-Identifier erstellt, und diese Liste zum Filtern herangezogen. Wenn 1, dann wird die ganze Datenbank gelesen, und mit jedem DP-Element ein Wildcard-Match durchgeführt (ist im Normalfall deutlich langsamer).

[ascii] multiUserMode

Typ
bool
Default
0
Wertebereich
0|1
Wenn 1, dann wird die Datenbank in Multiuser-Betrieb geöffnet. Wenn 0, dann in Singleuser-Betrieb. Unter Windows wird der Eintrag ignoriert und die Datenbank immer im Multiuser-Betrie geöffnet.

[ascii] noAlertConfigHist

Typ
bool
Default
0
Wertebereich
0|1
Wenn dieser Config-Eintrag auf 1 gesetzt wird, werden Meldekonfigs importiert ohne dabei die RAIMA Parametrierhistorie zu vergrößern. Die Meldekonfigs werden mit dem Zeitstempel 0 gesendet, sodass der vorherige Eintrag dieses Konfigs in der Parametrierhistorie überschrieben wird. Für den gleichen Zweck kann auch die Managerkommandozeilenoption -noAlertConfigHist verwendet werden. Diese hat Vorrang gegenüber dem Config-Eintrag. Wenn noAlertConfgiHist = 0 oder die Option -noAlertConfigHist nicht verwendet wird, wird das bisherige Verhalten des ASCII-Managers beibehalten, d.h. es werden neue Meldekonfigs in der Parametrierhistorie erstellt.

[asx]

Einstellungen für den ASX Treiber

[asx] autoGA

Typ
string
Default
yes
Wertebereich
yes/ no
Legt fest, ob beim Treiberstart eine Generalabfrage durchgeführt wird oder nicht.

[asx] k_komReceiver

Typ
string
Default
keiner
Datenpunktname des internen DPs der SPS, die der Treiber versorgt. Für jede SPS muss dieser Eintrag existieren (z.B. k_komReceiver = '_Asx_AG45' Diese Datenpunkte werden automatisch angelegt, wenn die Parameter der SPS in das Parametrierpanel des ASX-Treibers eingeben werden. Ausserdem bezeichnet dieser Datenpunkt (ohne '_Asx_') den Kommunikationsnamen der SOFTBUS-Anwendung, an welche die Nachricht gesendet wird. D.h. in unserem Fall würde der Kommunikationsname für die SOFTBUS-Anwendung 'AG45' lauten. In der Section asx kann es mehrere k_komReceiver-Einträge geben.

[asx] k_komSender

Typ
string
Default
keiner
Bezeichnet den Kommunikationsnamen des K_KOM-Senders. Bei ausgehenden Nachrichten trägt SOFTBUS den Namen ein, mit dem sich die Anwendung im kom_open angemeldet hat. Bei eingehenden Nachrichten ist dies der Kommunikationsname des Absenders.

[asx] net

Typ
Ganzzahl
Default
0
Wertebereich
>=0
Bezeichnet das Netz des Treibers.

[asx] pvssAddress

Typ
string
Default
keiner
Legt die Addresse des WinCC OA-Systems für die ASX-Telegramme fest (Syntax: 'Region.System.Objekt'). Das Netz wird durch den config-Eintrag 'net' bestimmt.

[asx] reduPostfix

Typ
string
Für Redundanzbetrieb müssen sich die Datenpunkte der beiden redundanten ASX-Treiber unterscheiden. Für den redundanten Rechner soll dieser auf "_2 " gesetzt werden.

[asx] statCheckInterval

Typ
Ganzzahl
Default
10
Wertebereich
1-200
Legt das Zeitintervall (in s) fest, in dem die Statusanzeigen im ASX-Panel aktualisiert werden (Error, SentTelegrams, RcvTelegrams, RejTelegrams, TimeDiff).

[asx] UserBitAD

Typ
Ganzzahl
Default
0
Wertebereich
0-8
Gibt an, auf welches Userbit folgende Information aus dem ASX-Telegramm abgebildet wird: Uhr wurde vom AG aus per Steueranweisung gestellt (time automation device).

[asx] UserBitDS

Typ
Ganzzahl
Default
0
Wertebereich
0-8
Gibt an, auf welches Userbit folgende Information aus dem ASX-Telegramm abgebildet wird: Sommerzeit (daylight saving).

[asx] UserBitNK

Typ
Ganzzahl
Default
0
Wertebereich
0-8
Gibt an, auf welches Userbit folgende Information aus dem ASX-Telegramm abgebildet wird: Uhr unklar. Sie wurde nach dem Anlauf noch nicht gestellt (time not known).

[asx] UserBitST

Typ
Ganzzahl
Default
0
Wertebereich
0-8
Gibt an, auf welches Userbit folgende Information aus dem ASX-Telegramm abgebildet wird: STEL-Bit, wechselt Zustand bei jedem Stellvorgang.

[asx] UserBitSY

Typ
Ganzzahl
Default
0
Wertebereich
0-8
Gibt an, auf welches Userbit folgende Information aus dem ASX-Telegramm abgebildet wird: SYN-Bit, welchselt Zustand bei jeder Synchronisation.

[asx] UserBitTC

Typ
Ganzzahl
Default
0
Wertebereich
0-8
Gibt an, auf welches Userbit folgende Information aus dem ASX-Telegramm abgebildet wird: Uhr wurde per org. Telegramm von der Zentrale gestellt (time central).

[asx] UserBitTO

Typ
Ganzzahl
Default
0
Wertebereich
0-8
Gibt an, auf welches Userbit folgende Information aus dem ASX-Telegramm abgebildet wird: Uhr wurde innerhalb der letzen 24 Stunden nicht gestellt/ synchronisiert (time old).

[asx] UserBitTS

Typ
Ganzzahl
Default
0
Wertebereich
0-8
Gibt an, auf welches Userbit folgende Information aus dem ASX-Telegramm abgebildet wird: Vorwarnbit für Sommerzeit/Winterzeit (1 Stunde vorher gesetzt) (time switch).

[asx_<k_komReceiver>]

[asx_<k_komReceiver>] k_komReserve1

Typ
string
Name für die erste Ersatzverbindung. Eine Ersatzverbindung besteht dann, wenn die Ziel-SPS nicht nur direkt, sondern auch über eine andere SPS (=Ersatzverbindung) erreichbar ist. Fällt die Hauptverbindung aus, wird automatisch auf die erste Ersatzverbindung umgescahaltet. " " bedeutet, es gibt keine erste (und auch keine weitere) Ersatzverbindung.

[asx_<k_komReceiver>] k_komReserve2

Typ
string
Name für die zweite Ersatzverbindung. Fällt die zweite Ersatzverbindung aus, wird automatisch auf die dritte Ersatzverbindung umgeschaltet. " " bedeutet, es gibt keine zweite (und auch keine weitere) Ersatzverbindung.

[asx_<k_komReceiver>] k_komReserve3

Typ
string
Name für die dritte Ersatzverbindung. Fällt die dritte Ersatzverbindung aus, wird automatisch versucht, auf die Hauptverbindung zurückzuschalten. " " bedeutet, es gibt keine dritte Ersatzverbindung.

[attentionEffectEWO]

Einstellungen für das AttentionEffectEWO.

[attentionEffectEWO] updateIntervalFlashLight

Typ
int
Default
40
Wertebereich
40-1000
Definiert das Updateintervall (in Millisekunden) des EWO-Typs FlashLight.

[attentionEffectEWO] updateIntervalRotatingRect

Typ
int
Default
40
Wertebereich
40-1000
Definiert das Updateintervall (in Millisekunden) des EWO-Typs RotatingRect.

[attentionEffectEWO] updateIntervalSphere

Typ
int
Default
40
Wertebereich
40-1000
Definiert das Updateintervall (in Millisekunden) des EWO-Typs Sphere.

[attentionEffectEWO] updateIntervalWaterDrop

Typ
int
Default
40
Wertebereich
40-1000
Definiert das Updateintervall (in Millisekunden) des EWO-Typs WaterDrop.

[auth]

Mit diesem Schlüsselwort beginnen die Eigenschaften für die Sektion auth.

[auth] lowestUserId

Typ
unsigned int
Default
0
Wertebereich
0-unsigned
Der Config-Eintrag "lowestUserId" definiert die niedrigste Benutzer-ID, die beim Anlegen eines Benutzers vergeben wird. Verwenden Sie den Eintrag, um zu verhindern, dass beim Einsatz der Distverwaltung mit Active Directory, die Benutzer-ID für den gleichen Benutzer auf unterschiedlichen Systemen unterschiedlich ist. Verwenden Sie diesen Config-Eintrag für das Master-System in Verbindung mit dem Config-Eintrag "firstLoginEnabled" auf den Slave-Systemen im verteilten System mit AD-Szenario. Siehe auch Kapitel: Dist-Verwaltung in Kombination mit Active Directory - Neusortierung/Synchronisation von Benutzern ohne Verlust der Historie. ACHTUNG! Wenn der Config-Eintrag gesetzt wird, muss danach das CommandChannel-Skript neu gestartet werden. Siehe auch Kapitel Command Channel.

[auth] passwordPolicy

Typ
bool
Default
1
Wertebereich
0|1
Die "Password Policy" definiert, dass ein Password mindestens acht Zeichen lang sein muss. Davon muss ein Zeichen ein Großbuchstabe und ein Zeichen ein Sonderzeichen sein. Dies gilt nur für in WinCC OA erstellte Benutzer. Der Config-Eintrag passwordPolicy kann verwendet werden, um die "Password Policy" zu deaktivieren. Setzen Sie die "Password Policy" auf 0: [auth] passwordPolicy = 0 Die Policy gilt nicht für die Benutzer der OS Auth-Benutzerverwaltung.

[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] certPath

Typ
string
Default
cert
Relativer Pfad des Certificate Stores unter <project>/data/bacnet/.

[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
Dieser Eintrag ist verpflichtend, um die Verbindung zu einem BACnet Netzwerk zu konfigurieren. Syntax für BACnet IP: net = <Netzwerk> "IP" <IP-Adresse> <Subnetzmaske> <UDPPort> <BBMDAdresse> <BBMDMaxFremdgeräte> <FremdgerätWartezeit> oder für BACnet Secure Connect: net = <Netzwerk> "SC" <IP-Adresse> <PrimaryHub> <SecondaryHub> Netzwerk - Die eindeutig zugewiesene Netzwerknummer. Der BACnet Treiber kann zurzeit mit einem Netzwerk kommunizieren. IP/SC - Art des Protokolls. In der aktuellen Version wird IP (BACnet/IP) und SC (BACnet Secure Connect) 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). PrimaryHub - URL des primären BAcnet Secure Hub (verpflichtend). SecondaryHub - URL des sekundären BACnet Secure Hub. Wenn es keinen gibt muss ein Leerstring gesetzt werden Beispiele: [bacnet_1] net = 1 "IP" "" "" 47808 "" 0 120 [bacnet_2] net = 1 "SC" "" "wss://192.168.10.11:4443" "wss://192.168.10.12:4443"

[bacnet] onlyActivePolls

Typ
bool
Default
0
Wertebereich
0|1
Nur der aktive Treiber pollt innerhalb eines redundanten Systems.

[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] secureCACertificate

Typ
string
Diese Datei enthält die Zertifikate der Root Certificate Authority, mit welcher die Zertifikate des BACnet Secure Hub signiert sind. Diese Datei kann mehrere Zertifikate enthalten. Diese Datei muss in dem Verzeichnis liegen, das durch den Eintrag certPath angegeben wird.

[bacnet] secureCertificate

Typ
string
Name der Datei, welche das Zertifikat des BACnet Treibers für die BACnet Secure Connect Kommunikation enthält. Diese Datei muss in dem Verzeichnis liegen, das durch den Eintrag certPath angegeben wird.

[bacnet] secureCertificateKey

Typ
string
Name der Datei, welche den privaten Schlüssel zum Zertifikat des BACnet Treibers für die BACnet Secure Connect Kommunikation enthält. Diese Datei muss in dem Verzeichnis liegen, das durch den Eintrag certPath angegeben wird.

[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] useJsonFormat

Typ
bool
Default
1
Wertebereich
0|1
Dieser Eintrag definiert ob das JSON Format für die Abbildung komplexer Properties (Strukturen) verwendet wird.

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

[bacnetdefault]

Einstellungen für die BACnet Applikation.

[bacnetdefault] defaultAddressDirection

Typ
int
Default
11
Wertebereich
1..13
Definiert den Defaultwert für das Attribute _address.._direction für Adressen, die vom BACnet Addon angelegt werden.

[bacnetdefault] TimeOutObjectBrowsing

Typ
int
Default
180
Definiert die maximale Zeit, die für das Browsen des Gerätes nach Objekten benötigt wird, bevor der Prozess abgebrochen wird.

[calcstate]

Einstellungen für das calculateState.ctl CTRL Skript.

[calcstate] useOfflineErrorstateInfo

Typ
bool
Default
0
Wertebereich
0|1
Wenn redundante Knoten die Verbindung in einem redundanten Projekt verlieren und die Verbindung wiederherstellen, wird der Knoten mit dem niedrigeren Fehlerstatus aktiv. Der Fehlerstatus wird mit der Hilfe der Fehlergewichtung definiert - siehe Beschreibung der Fehlergewichtung. Die Fehlergewichtung ist eine Nummer zwischen 0 und 999. Das Datenpunktelement ReduHost(_2).offlineErrorStatus wird verwendet, um den Fehlerstatus zu definieren, wenn der Config-Eintrag useOfflineErrorstateInfo auf 1 gesetzt wurde. [calcstate] useOfflineErrorstateInfo = 1 Das Datenpunktelement ReduHost(_2).offlineErrorStatus enthält die Differenz zwischen dem aktuellen Fehlerstatus-Wert und dem maximalen Fehlerstatus-Wert als die redundanten Server keine Verbindung hatten.

[commandChannel]

Einstellungen für den Command Channel

[commandChannel] rsaKeyRotationInterval

Typ
uint
Default
1 day/24 hrs
Wertebereich
1..max uint
Der Command Channel verwendet ein Schlüsselpaar (key pair) für die verschlüsselte Kommunikation. Ein Privatschlüssel wird im Speicher des Command Channels gespeichert. Ein Public-Schlüssel wird auf ein internes Datenpunktelement geschrieben, sodass alle anderen Manager den Schlüssel verwenden können, um ihre Kommandos zu verschlüsseln. Das Schlüsselpaar(Public- und Privat-Schlüssel) wird im Abstand vom Intervall geändert. Das wird als Key Rotation (Schlüsselrotation) bezeichnet. Das Intervall für die "Schlüsselrotation" kann in der Config-Datei konfiguriert werden: [commandChannel] rsaKeyRotationInterval = uint Minuten 1 bis zu max uint HINWEIS: Das Defaultintervall ist 1 Tag/24h. Das empfohlene Mindestintervall ist 10 Minuten. Wenn Sie ein kürzeres Intervall eingeben, wird eine Warnung im Log Viewer angezeigt.

[ctrl]

Einstellungen für den Control Manager

[ctrl] ctrlDLL

Typ
string
Mit diesem Config-Eintrag kann eine CtrlExtension DLL geladen werden. Die DLL wird zunächst im <proj_path>/bin gesucht. Wenn sie dort nicht existiert, wird sie in <wincc_oa_path>/bin gesucht. Dieser Eintrag kann nur in der [ui] oder der [ctrl] Sektion gesetzt werden. Soll eine DLL vom UI und CTRL verwendet werden, muss sie in beiden Sektionen geladen werden. Es können beliebig viele DLLs geladen werden. Anmerkung: Es wird empfohlen eine CtrlExtention DLL direkt aus dem Ctrl-Script mit der #uses Anweisung zu laden.

[ctrl] minWorkInterval

Typ
int
Default
1
Wertebereich
>= 0
Minimale Zeit in Sekunden, die der CTRL Manager zwischen zwei work() Aufrufen wartet.

[ctrl] queryRDBdirect

Typ
bool
Default
0
Wertebereich
0|1
Gibt an, über welchen Weg die lesenden Datenbankabfragen erfolgen: 0 = Standard- CTRL- Lesefunktionen (dpGet...()) über den WinCC OA Event-Manager und den WinCC OA Data-Manager. 1 = Die Standard CTRL-Lesefunktionen (dpGet...()) werden umgeleitet um den Datenbanserver direkt abzufragen Kann im Abschnitt [ui] oder [ctrl] verwendet werden. Beachten Sie, dass auch die beiden notwendigen CTRL Erweiterungen geladen werden müssen, um die direkten RDB-Lesefunktionen zu verwenden CtrlDLL = "CtrlRDBArchive" CtrlDLL = "CtrlRDBCompr" Achtung: Wenn Sie queryRDBdirect = 1 verwenden, wählen Sie für Abfragen im Ereignisschirm DPEs oder *.*. Andernfalls werden DPEs nicht angezeigt.

[data]

Einstellungen für den Data Manager

[data] alertDpList

Typ
bool
Default
1
Wertebereich
0|1
Dient der schnelleren Abfrage von historischen Alarmen bei Verwendung der RAIMA-Alarmdatenbank. Es wird eine interne Liste der in einem Alarmdateisatz vorhandenen DP-Elementen erstellt womit rasch erkannt werden kann, ob ein abgefragtes DP-Element überhaupt in diesem Alarmdateisatz vorkommt.

[data] archiveReqTimeout

Typ
unsigned short
Default
0
Wertebereich
>= 0
Die Einstellung dient dazu, falls ein Archiv abgestellt wird, laufende Abfragen trotzdem "irgendwann" (d.h. nach max. xxx Sekunden) zu beantworten. Durch den Config-Eintrag definieren Sie, wieviele Sekunden der Data-Manager (=HDB) auf diese Antworten von Archiven (bei dpPeriodRequest(), dpGetAsynch() und dpQuery()) maximal warten soll. Trifft innerhalb diese Periode nicht von allen betroffenen Archiven eine Antwort ein, wird die Anfrage mit Fehler beendet. Es sollte auf dem Defaultwert 0 bleiben (unbeschränkte Wartezeit!). Anderenfalls sind Werte ab 120 [sek] sinnvoll, da Abfragen mitunter länger dauern. z.B. [data] archiveReqTimeout = 120

[data] bgOpenRetryCount

Typ
int
Default
5
Wertebereich
0 - 25
Gibt die Anzahl der Wiederholungen, die der DataBG-Manager probiert die Datenbank zu öffnen bevor er stoppt, an.

[data] checkDiskSpace

Typ
bool
Default
1
Wertebereich
0|1
Mit diesem Eintrag wird die Festplattenüberwachung ein- und ausgeschaltet. Ein Ausschalten ist dann nötig, wenn im DiskSpaceCheck-Datenpunkt ein zu hoher Wert für das EmergencyKBLimit angegeben wurde und der Data-Manager schon gleich beim Start in den Emergency-Modus wechselt.

[data] checkMemory

Typ
bool
Default
1
Wertebereich
0|1
Mit diesem Eintrag wird die Speicherüberwachung ein- und ausgeschaltet. Ein Ausschalten ist dann nötig, wenn im MemoryCheck-Datenpunkt ein zu hoher Wert für das EmergencyKBLimit angegeben wurde und der Data-Manager schon gleich beim Start in den Emergency-Modus wechselt.

[data] checkNetworkBackupPath

Typ
bool
Default
1
Wertebereich
0|1
Aktiveren (=1) des Eintrags erlaubt es dem Data-Manager, mittels icmp Ping, zu prüfen ob der konfigurierte Backup-Pfad verfügbar ist. Dies verhindert einen blockierenden Data-Manager wenn die Netzerk-Ressource nicht verfügbar ist. Der Config-Eintrag ist nur unter einem Windows Betriebssystem erforderlich. Der Config Eintrag wird empfohlen, wenn sich der Backup-Pfad für den Data-Manager auf einem Windows-Netzlaufwerk oder freigegebenen Verzeichnis befindet und die Netzwerk-Verbindung zu diesem Netzwerk-Pfad instabil ist.

[data] dataBgName

Typ
string
Default
WCCILdatabg
Gibt den Namen des Data-Background-Managers an. Der angegebene Data-Background-Manager wird automatisch von dem Data-Manager gestartet. Wenn "" angegeben ist, dann wird kein Data-Background-Manager gestartet. Bei der Verwendung einer reinen Oracle Archivierung ist der DataBG-Manager nicht erforderlich und kann mittels "" deaktivert werden. In diesem Fall kann direkt nach dem Start das Recovery der Datenbank ausgeführt werden, da der Data-Manager bereits im Multi-User-Mode läuft. In Projekten mit Standardarchivierung muss der Start des DataBg-Managers abgewartet werden, bevor das Recovery möglich ist.

[data] dbTmpDir

Typ
string
Default
OS specific tmp directory
Definiert das temporäre Verzeichnis für Lock-Manager-Dateien der RAIMA-Datenbank. Ein Leerstring "" heisst, dass der Lock-Manager das Defaultverzeichnis verwendet.

[data] DP_AlertDataSet

Typ
string
Default
_AlertDataSet
Legt den Namen des Datenpunktes vom Typ _DataSet fest, der zur Verwaltung der Datensätze von Alarmhistorie verwendet ist.

[data] DP_AlertSaveRestore

Typ
string
Default
_AlertSaveRestore
Legt den Namen des Datenpunktes vom Typ _AlertSaveRestore fest, der zur Verwaltung und beim Einspielen ausgelagerter Daten von Alarmhistorie verwendet ist.

[data] DP_DataBgManager

Typ
string
Default
_DataBgManager
Wertebereich
-
Interner Datenpunktname des DataBg Managers.

[data] DP_DataManager

Typ
string
Default
_DataManager
Interner Datenpunktname des Data Managers.

[data] DP_DataSaveRestore

Typ
string
Default
_DataSaveRestore
Legt den Namen des Datenpunktes vom Typ _DataSaveRestore fest, der zur Verwaltung und beim Einspielen ausgelagerter Daten von Wertehistorie verwendet ist.

[data] DP_DataSet

Typ
string
Default
_DataSet
Legt den Namen des Datenpunktes vom Typ _DataSet fest, der zur Verwaltung der Datensätze von Wertehistorie verwendet ist.

[data] DP_DiskCheck

Typ
string
Default
All DP from type _DiskSpaceCheck
Wertebereich
-
Legt fest, für welche Datenpunkte vom Typ _DiskSpaceCheck eine Festplattenüberwachung erfolgt. Der Eintrag gibt jeweils einen Datenpunktnamen an und kann mehrmals aufgeführt werden. Die Festplattenüberwachung kann mit DP_DiskCheck = "" oder checkDiskSpace = 0 ausgeschaltet werden.

[data] DP_MemoryCheck

Typ
string
Default
_MemoryCheck
Wertebereich
-
Legt den Namen des Datenpunktes vom Typ _MemoryCheck fest, über den die Überwachung des virtuellen Speichers erfolgt. Die Speicherüberwachung kann mit checkMemory = 0 ausgeschalten werden.

[data] DP_RaimaErr

Typ
string
Default
_RaimaErr
Wertebereich
-
Wenn hier ein Datenpunktelement vom Datentyp Integer eingetragen wird, wird der Code des aufgetretenen RAIMA-Fehlers auf dieses Datenpunktelement geschrieben. Wenn ein Problem während der Datenbankreparatur beim Start des Data-Managers auftritt, wird der Wert -1000 auf das DPE geschrieben. Der Wert wird auf dem DPE nicht automatisch gelöscht, ausgenommen bei einem erfolgreichen Start des Data-Managers indem er auf 0 (= kein Fehler) zurückgesetzt wird. Beachtet werden sollte, dass alle wichtigen Fehlercodes negativ sind (z.B. -27). Bei poositiven Fehlercodes handelt es sich um Warnungen. In einem redundanten System wird dem DPE auf dem zweiten System ein "_2" angehängt (d.h. "RaimaErr_2.value" wenn auf dem Config-Eintrag "RaimaErr.value" gesetzt wurde). Das DPE muss in der config.redu mit fwdDP weitergeleitet werden.

[data] DP_RDBArchive

Typ
string
Default
_RDBArchive
Legt den Namen des Datenpunktes vom Typ _RDBArchive fest, der die Einstellungen für die Archivierung unter Verwendung der relationalen Datenbank hält. Siehe auch RDB-Archivierung.

[data] DP_RDBArchiveGroup

Typ
string
Default
_RDBArchiveGroups
Legt den Namen des Datenpunktes vom Typ _RDBArchiveGroups fest, der die Einstellungen zu RDB Archivgruppen hält. Siehe auch Parametrierung der Archivgruppen.

[data] DP_ValueArchiveMedia

Typ
string
Default
_ValueArchiveMedia
Legt den Namen des Datenpunktes vom Typ _ValueArchivMedia fest, der die Einstellungen für den Datentransfer bei Archivsatzwechsel und Auslagerung der Archive hält. Siehe auch History DB.

[data] fileSwitchRoundOff

Typ
unsigned integer
Default
360
Wertebereich
Seconds
Der Config-Eintrag "fileSwitchRoundOff" kann verwendet werden, um die Zeit aufzurunden, damit die Verzeichnisnamen der Alarmarchive in redundanten Systemen identisch sind. Der Name der Alarmarchive entspricht den Sekunden seit 01.01.1970.

[data] flushTimeForAliasCache

Typ
ushort
Default
2
Wertebereich
0..maxshort
Zeit in Sekunden, die zwischen zwei Flush-Vorgängen des Alias-Caches gewartet wird. Höherer Wert = bessere Performance / grösserer Datenverlust bei Systemabsturz.

[data] flushTimeForDpConfigCache

Typ
ushort
Default
2
Wertebereich
0..maxshort
Zeit in Sekunden, die zwischen zwei Flush-Vorgängen des Config-Caches gewartet wird. Höherer Wert = bessere Performance / größerer Datenverlust bei Systemabsturz.

[data] ignoreCorruptDB

Typ
bool
Default
0
Wertebereich
0|1
Dieser Config-Eintrag legt fest ob der Data-Manager gestartet wird, wenn die Datenbank defekt ist. Wird die Data-Manager Option "-repair" angegeben, wird ein Reparaturversuch der angegebenen Datenbank durchgeführt. Wenn der Reparaturversuch misslingt, startet der Data-Manager nicht. Dieses Verhalten kann durch den Config-Eintrag "ignoreCorruptDB = 1" in der [data]-Sektion übersteuert werden. Wenn dieser Config-Eintrag verwendet wird, startet der Data-Manager auch bei fehlgeschlagener Reparatur. Wird der Eintrag "ignoreCorruptDB = 0" bzw. kein Eintrag verwendet, startet der DM nicht bei defekter DB.

[data] keepLastTimeSmoothedValue

Typ
bool
Default
0
Wertebereich
0|1
Mit dem Config-Eintrag keepLastTimeSmoothedValue = 1 kann definiert werden, dass der aktuelle Wert am Ende einer Glättungsperiode archiviert wird wenn der unterschiedlich als der zuletzt archivierte Wert, der die Glättungsperiode gestartet hat, ist. Der Wert wird archiviert erst wenn es eine Wertänderung nach der Glättungsperiode gibt und nicht am Ende der Periode. Diese Funktionalität gilt nur für die zeitabhängige Glättung und Glättungsperioden, die mit dem Archiv-Config konfiguriert wurden, siehe _archive (Archivierung). Defaultmäßig ist diese Funktionalität deaktiviert und es wird kein zusätzlicher Wert archiviert.

[data] lastValBgUpdateCycle

Typ
unsigned integer
Default
600
Wertebereich
>= 0
Der DataBGManager sendet bei Wertänderungen in der Vergangenheit Messages an den Data-Manager zum Aktualisieren der Letztwerte. Da dies pro DPE geschieht, kann eine erhebliche Belastung des Data-Managers daraus resultieren. Mit diesem Eintrag werden die Anfragen des DataBGManagers gesammelt und nur alle "lastValBgUpdateCycle"-Sekunden blockweise ausgeführt.

[data] lmcType

Typ
string
Default
LMC_IP (UNIX) / LMC_INTERNAL (Windows)
Wertebereich
LMC_INTERNAL, LMC_IP
Bestimmt den Typ des Lock-Managers, der verwendet wird. ACHTUNG: Unter Linux funktioniert der interne Lockmanager nicht prozessübergreifend. Er darf daher nur verwendet werden, wenn sichergestellt ist, dass zu einer bestimmten Zeit immer nur EIN Prozess auf die Datenbank zugreift (also nur der Data-Manager, nur der Ascii-Manager oder nur der DataBG-Manager). Wird beispielsweise die Archivierung von Alarmung mittels RAIMA durchgeführt, darf der interne Lockmanager unter Linux nicht verwendet werden, weil in diesem Fall der DataBG Manager und der Data Manager gleichzeitig auf die RAIMA-DB zugreifen können. Genauso kann dies auch beim Export von Daten über den Ascii-Manager der Fall sein.

[data] lockVATimeout

Typ
int
Default
600
Wertebereich
1..7200
Zeit in Sekunden, die der Data-Manager beim Redundanz-Abgleich wartet, bis die Value Archive rückmelden, dass die Archivsätze geschlossen sind. ACHTUNG!Ändert man den [data] passiveRecoveryTimeout auf einen Wert kleiner als lockVATimeout, kann es dazu führen, dass ein Redu-Projekt nicht startet.

[data] maxAlertRequestCount

Typ
int
Default
1000000
Wertebereich
>= 0
Definiert die Anzahl der Elemente (= Anzahl Zeilen x Anzahl Spalten), die in einer Query mit Alarmen abgefragt werden. Wird die eingestellte Anzahl überschritten, wird die Query sobald als möglich abgebrochen und ein Fehler zurückgemeldet. Dieser Config-Eintrag gilt für dpQuery() bzw. dpGetPeriod(). Wird der Eintrag auf 0 gesetzt, so gibt es keine Einschränkung. HINWEIS: Wenn Sie für diesen Config-Eintrag höhere Werte als die Standardwerte setzen, kann dies zu einem deutlichen Anstieg des Speicherverbrauchs (RAM) durch die WinCC OA-Laufzeit führen.

[data] maxLinesInQuery

Typ
unsigned long
Default
80000
Wertebereich
<number of dpe>.. MAX_UINT
Gibt die maximale Anzahl der Zeilen in einer Tabelle an. HINWEIS: Wenn Sie für diesen Config-Eintrag höhere Werte als die Standardwerte setzen, kann dies zu einem deutlichen Anstieg des Speicherverbrauchs (RAM) durch die WinCC OA-Laufzeit führen.

[data] maxRequestLineCount

Typ
int
Default
0
Wertebereich
>= 0
Mit "maxRequestLineCount" kann eingestellt werden, wie viele Rückgabezeilen eine Abfrage (dpQuery, dpGetPeriod) liefern darf. Das Überschreiten des Limits führt zu einem Fehler, der im CTRL über getLastError() abgefragt werden kann. Bei Queries werden keine Daten zurückgegeben, bei dpGetPeriod so viele Daten, die bis zum Abbruch gelesen wurden (+ etwas mehr). Zurzeit nur für Wertehistorie und RAIMA einsetzbar. Dieser Eintrag dient als Ergänzung zu mexRequestMemSize, d.h. es muss nur eines der beiden Kriterien erfüllt sein, um abzubrechen. Bei Datenabfragen (keine Alarmdaten) wird dieser Config-Eintrag nur bei Verwendung der RDB-Archivierung berücksichtigt. Default 0: kein Limit.

[data] maxRequestMemSize

Typ
int
Default
0
Wertebereich
>= 0
Mit dem Config-Eintrag maxRequestMemSize wird angeben , wie viel Hauptspeicher eine Abfrage (dpQuery, dpGetPeriod) verwenden darf. Wird dieser Wert überschritten, bricht die Abfrage mit einem Fehler ab. Zurzeit nur für Wertehistorie und RAIMA einsetzbar. Default 0: kein Limit.

[data] maxUpdateMsgCount

Typ
unsigned
Default
1000
Wertebereich
>=0
Der Eintrag gibt an, wieviele Identification-ändernde Messages (DP_MSG_MANIP_xxx) der Data puffert. Werden mehr Messages als angegeben gepuffert entfernt der Data Messages aus dem Liste. Wenn sich ein Client zum Data verbindet, versucht der Data, nur Updates aus dieser Liste zu senden. Reicht die Liste nicht aus schickt der Data die gesamte Identification.

[data] maxValueRequestCount

Typ
int
Default
1000000
Wertebereich
>= 0
Definiert die Anzahl der Elemente (= Anzahl Zeilen x Anzahl Spalten), die in einer Query abgefragt werden. Wird die eingestellte Anzahl überschritten, wird die Query sobald wie möglich abgebrochen und ein Fehler wird ausgegeben. Dieser Config-Eintrag gilt für dpQuery() bzw. dpGetPeriod(). Auch Abfragen an die History DB werden mit diesem Config-Eintrag beschränkt. Wird der Eintrag auf 0 gesetzt, so gibt es keine Einschränkung. HINWEIS: Wenn Sie für diesen Config-Eintrag höhere Werte als die Standardwerte setzen, kann dies zu einem deutlichen Anstieg des Speicherverbrauchs (RAM) durch die WinCC OA-Laufzeit führen.

[data] multiUserMode

Typ
bool
Default
1
Wertebereich
0|1
Wenn 1, dann wird die Datenbank in Multi User Betrieb geöffnet. Wenn 0, dann in Single User Mode.

[data] numberOfAlertsToBuffer

Typ
short
Default
500
Wertebereich
10..500
Maximale Anzahl der Meldungen, die aus der Eingangs-Message-Queue gelesen werden, bis die Meldungen geflusht werden. Die Meldungen werden NICHT nur nach diesem Counter geflusht, sondern es kann zu einem 'impliziten' Flush kommen, wenn z.B. der Puffer voll ist oder wenn der Data-Manager im Moment keine Nachrichten empfängt. Realistische Werte liegen zwischen 10 - 500. Der Wert ist projektabhängig!

[data] numberOfDatapointsToCache

Typ
int
Default
10
Wertebereich
>= 1
Anzahl der Blöcke, die im Speicher als Cache angelegt werden. Jeder Block reserviert 1 KByte Speicher. Sollte an die Anzahl der archivierenden Werte angepasst sein. Der Wert ist projektabhängig.

[data] numberOfValuesInOneInitMessage

Typ
int
Default
10
Wertebereich
1..100
Anzahl der Items, die in einer Initialiserungsnachricht geschickt werden. Größere Werte bedeuten schneller Hochlauf, aber andere Prozesse werden dadurch verlangsamt.

[data] numberOfValuesToBuffer

Typ
short
Default
500
Wertebereich
10..500
Maximale Anzahl der Werte, die aus der Eingangs-Message-Queue gelesen werden, bis die Blöcke geflusht werden. Die Blöcke werden NICHT nur nach diesem Counter geflusht, sondern es kann zu einem 'impliziten' Flush kommen, wenn z.B. ein Block voll ist. Realistische Werte liegen zwischen 10 - 500 (je größer numberOfDatapointsToCache, desto größer darf die Resource sein, bis zu 10*numberOfDatapointsToCache). Der Wert ist projektabhängig.

[data] passiveRecoveryTimeout

Typ
unsigned integer
Default
1800
Die maximale Zeit, die verwendet werden darf, um den Kopiervorgang der Datenbank Dateien abzuschließen. ACHTUNG! Ändert man das passiveRecoveryTimeout auf einen Wert kleiner als [data] lockVATimeout, kann es dazu führen, dass ein Redu-Projekt nicht startet.

[data] quickStart

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt, ob der DataBG Manager am Ende des Projektstarts (0) oder gleich mit dem Data-Manager gestartet wird (1). Erste Methode ist schneller, zweite kompatibler mit dem Originalverhalten. Bei der Verwendung von Quickstart kann kein anderen Manager (ASCII, DataBG) auf die Datenbank zugreifen bevor alle Prozesse vor dem DataBG gestartet wurden. Unter Linux kann der Quickstart Modus deaktivert werden, da hier der Unterschied der RAIMA Performance geringer ist. Ebenfalls kann es, abhängig vom jeweiligen Anwendungsfall, von Vorteil sein auf den Quickstart zu verzichten.

[data] repair

Typ
string
Default
on
Wertebereich
on, off, ignore, last, lastonly, only:dbname
Wird die Data-Manager Option "-repair" angegeben, wird ein Reparaturversuch der angegebenen Datenbank durchgeführt. Wenn der Reparaturversuch mißlingt, startet der Data-Manager nicht. Dieses Verhalten kann durch den Config-Eintrag "ignoreCorruptDB = 1" in der [data]-Sektion übersteuert werden. Wenn dieser Config-Eintrag verwendet wird, startet der Data-Manager auch bei fehlgeschlagener Reparatur. Wurde keine "-repair" Option angegeben, ermittelt der Data-Manager selbstständig (Erkennung, ob er zuvor ordnungsgemäß heruntergefahren wurde), ob Reparaturen duchgeführt werden sollten. Dabei wird die Alert-Datenbank nicht automatisch mitrepariert. Mode der Datenbankreparatur: on = prüfe und repariere die DB, wenn die Datei 'dbase.status' existiert off = wenn die Datei 'dbase.stat' existiert, dann beende DM ignore = ignoriere die Datei 'dbase.status' und starte DM last = repariere nur zuletzt geänderte Datensätze, wenn 'dbase.status' existiert lastonly = repariere nur zuletzt geänderte Datensätze und beende only:dbname = repariere nur den angegebenen Datensatz und beende

[data] repairDchain

Typ
bool
Default
1
Wertebereich
0|1
Legt fest ob das RAIMA Utility "dchain" für defekte Datenbanken gestartet werden soll. Datensätze die in der RAIMA gelöscht werden sollen sind zu Beginn nur als gelöscht markiert. Diese als gelöscht markierten Einträge werden in die dchain (delete chain) aufgenommen. Wird der Data-Manager unerwartet beendet, kann es sein, dass die tatsächlich gelöschten bzw. als gelöscht markierten Einträge nicht mit der dchain übereinstimmen. Durch diesen Config-Eintrag wird das durch das "dchain" Utility repariert.

[data] sendAlertsToRAIMA

Typ
bool
Default
0
Wertebereich
0|1
Setzt useRDBArchive = 1 voraus. Bei einem Wert von 1 werden Alarme sowohl in die RAIMA als auch in die RDB geschrieben. Es erfolgt jedoch kein Abgleich, darum kann es unter Umständen zu Lücken in der Archivierung kommen. Ein Wert von 0 gibt an, dass die Werte nur in die RDB geschrieben werden.

[data] sendUDAGNullValues

Typ
bool
Default
1
Wertebereich
0|1
Mit diesem Config-Eintrag geben Sie an ob der Data-Manager eine Null (sendUDAGNullValues =1) oder den letzten Wert (sendUDAGNullValues =0) an die RDB-Datenbank bei einer Änderung von einem einzelnen Wert senden soll. Das bedeutet, dass wenn es mehrere Datenpunkt-Elemente gibt und der Wert von nur einem Element geändert wird, wird der Wert der anderen Elemente auf den Letztwert oder auf 0 gesetzt.

[data] smoothBit

Typ
string
Wertebereich
Userbit 1.. Userbit 32, _active, _exp_default, _aut_default, _out_prange, _out_range, _exp_inv, _aut_inv, _online_bad, _default_bad, _from_GI, _from_SI, _per_active, _stime_inv, _uncertain
Dieser Eintrag gibt an, welche Statusbits in einer Glättung (Low-Level Alt/Neu-Vergleich vor dem Archivieren) berücksichtigt werden sollen. Ändert sich eines dieser Userbits, wird der Wert nicht geglättet, auch wenn sich der Originalwert nicht geändert hat. Dieser Eintrag muss für jedes Userbit, das berücksichtigt werden soll, einmal vorhanden sein. Mögliche Werte für die Userbits sind: smoothBit = "_active" smoothBit = "_exp_default" smoothBit = "_aut_default" smoothBit = "_out_prange" smoothBit = "_out_range" smoothBit = "_exp_inv" smoothBit = "_aut_inv" smoothBit = "_online_bad" smoothBit = "_default_bad" smoothBit = "_from_GI" smoothBit = "_from_SI" smoothBit = "_per_active" smoothBit = "_stime_inv" smoothBit = "_uncertain" smoothBit = "Userbit 1" smoothBit = "Userbit 2" smoothBit = "Userbit 3" smoothBit = "Userbit 4" smoothBit = "Userbit 5" ... smoothBit = "Userbit 30" smoothBit = "Userbit 31" smoothBit = "Userbit 32"

[data] startTimeVACorrection

Typ
bool
Default
1
Wertebereich
0|1
Mit dem Config-Eintrag startTimeVACorrection = 1 ändert Data-Manager Letztwertzeit bei Startmessage an Valarch-Manager auf Startzeit des aktuellen Archivsatzes, wenn erstere Zeit davor liegt. Mit startTimeVACorrection = 0 ist diese Funktionalität deaktiviert. Anmerkung: Es ist nicht empfohlen diese Funktionalität deaktivieren.

[data] statFctInitInterval

Typ
unsigned integer
Default
7200
Wertebereich
0..7200
Definiert (wenn RDB verwendet wird) wie lange nachdem ein Archiv abgeschlossen wurde, zurückliegende Wertänderungen von statischen Datenpunktelementen (erkennbar an: Zeitstempel msec = 0) noch an das Archiv gesendet werden, wenn das Archiv erneut gestartet wurde. Wenn z.B. ein Archiv um 14:30, sendet normalerweise der Data-Manager alle Letzwerte mit einem Zeitstempel nach 14:30 an ein neu startendes Archiv. Für statistische Datenpunkte werden aber alle Letzwerte mit Zeitstempel nach 12:30 (7200) gesendet und dadurch an das alte Archiv gesendet (da statistische Funktionen zeitversetzt berechnet werden und ansonsten der zuletzt errechnete Wert verloren gehen könnte). Maximalwert: Es werden höchstens 2 Stunden zurückliegende Werte an das abgeschlossene Archiv gesendet.

[data] transactionLogging

Typ
bool
Default
0
Wertebereich
0|1
Da Daten nur blockweise in die Raima-Datenbank geschrieben werden, kann bei Systemabstürzen ein noch nicht gespeicherter Block verloren gehen und der Datenbestand dadurch beschädigt werden. Durch transactionLogging lässt sich eine dauerhafte Beeinträchtigung der Datenbank jedoch verhindern, da eine (Data-interne) Transaktion erst beendet wird, wenn die Daten auch auf die Disk geschrieben wurden. Wenn transactionLogging aktiviert wurde (= 1), ist keine Datenbankreparatur erforderlich. Die Angabe von transactionLogging hat Vorrang vor den Werten in dem internen DataManager-DPs. Eingeschaltetes transactionLogging hat zur Folge, dass der Data-Manager langsamer arbeitet als ohne. Um Transaction-Logging zu deaktivieren, muss der Config-Eintrag explizit auf 0 gesetzt werden. Transaction-Logging kann nicht durch das Löschen des Eintrags deaktiviert werden.

[data] useAlertDpListCache

Typ
bool
Default
1
Wertebereich
0|1
Erhöht Leseperformance für historische Alarme (RAIMA DB) indem eine Index-Datenbank (adplist.db,adplist.key) in jedem alertset-Verzeichnis erstellt wird, um zu erfassen welche Alarme für den angegebenen DP in diesem Alarm-Datensatz gespeichert werden. Der Eintrag wird von den Data- und DataBG-Managern verwendet.

[data] useCurrentTimeForStartValue

Typ
bool
Default
0
Wertebereich
0|1
Mithilfe dieses Config-Eintrages kann erzwungen werden, dass ein Datenpunktelementwert mit dem aktuellen Zeitstempel beim Setzen des _archive.._archive Konfigs zu einem bestimmten Zeitpunkt (jedoch nicht beim Hochlauf) in die Datenbank geschrieben wird (useCurrentTimeForStartValue = 1).

[data] waitForRecoveryFlag

Typ
int
Default
1800 sec
Wertebereich
0-MAXINT, negative values are not allowed
Der Eintrag definiet die Wartezeit auf die Verbindung zum anderen Redu-Partner beim Hochlauf beim passiven Recovery. Das ist die Zeit, in der sich der Redu-Partner verbinden muss. Wenn sich der Partner nicht verbindet und die Zeit abläuft, startet der Rechner neu (aktiv).

[data] waitTimeForBGStart

Typ
unsigned integer
Default
60
Wertebereich
>= 0
Beschleunigt den Projektstart, indem der DataBG nicht gleich gestartet wird. Der Config-Eintrag definiert wie lange nach der Initialisierung der Manager gewartet wird bis der DataBGManager gestartet wird. Der DataBG unterstützt den Data-Manager bei nicht zeitkritischen Operationen. Die Zeit wird in Sekunden angegeben. Der Defaultwert ist 60. Bei fehlerhafter Eingabe wird der Defaultwert verwendet.

[different sections]

Einstellungen für verschiedene Sektionen

[different sections] dbgCount

Typ
integer
Default
100
Wertebereich
>1
Definiert wie oft eine Debugmeldung ausgegeben wird, wenn ein Manager VC (Value Change) Messages sendet. Der Manager muss dafür mit der Kommandozeilenoption '-dbg 17' gestartet werden. Die Option wurde bislang für den Event- und Data-Manager sowie alle Treiber implementiert.

[different sections] debugFormat

Typ
string
Dieser Eintrag ist in der Sektion [ctrl] oder [ui] möglich. Er definiert das Ausgabeformat für alle Debug(), DebugN() etc. Funktionsaufrufe in CTRL Scripts. Der angegebene String kann folgende Platzhalter beinhalten, die zur Laufzeit ersetzt werden. Alle anderen Zeichen werden literal übernommen. %{time} aktuelle Uhrzeit im std. WinCC_OA Format %{time format} aktuelle Uhrzeit im definierten Format Der Format-String kann aus den % Platzhaltern bestehen, die bei der CTRL Funktion formatTime() erlaubt sind %{time delta} Differenzzeit zum letzten Debug() Funktionsaufruf in diesem Thread %{message} Die Summe aller formatierten Argumente, d.h. die eigentliche Debug Ausgabe %{line} Die aktuelle Zeilennummer im Script %{file} Dateipfad des aktuellen Scripts oder Angabe von Module/Panel/Script %{location} Aktuelle Positionsangabe wie z.B. Script Dateipfad oder Module/Panel/Script inkl. Zeilennummer %{function} Name der aktuellen Funktion, in der Debug() ausgeführt wird %{stack} aktueller Stack Trace (Siehe auch getStackTrace()) \n Zeilenumbruch. Muss mittels \\n angegeben werden \t Tabulator. Muss mittels \\t angegeben werden

[different sections] ignoreDebug

Typ
bool
Default
0
Wertebereich
0|1
Wenn der Wert auf 1 gesetzt wird, so werden alle Formen von Debug-Statements (DebugN, DebugTN, ..) ignoriert. Dieser Eintrag kann in der Sektion aller Manager stehen, die Ctrl Scripte ausführen können ([general], [ctrl], [ui] oder [event]).

[different sections] independentAlertAck

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob Alarme unabhängig voneinander quittiert werden dürfen (Default = nein). Wenn dieser Config-Eintrag auf 1 gesetzt wird, können Alarme im AESchirm quittiert werden, ohne eine Reihenfolge beachten zu müssen (jüngere vor älteren Alarmen, GING vor KAM).

[different sections] loadAllCtrlLibs

Typ
bool
Default
0
Wertebereich
0|1
Kann in allen Treibersektionen in den Sektionen [event], [ctrl] und [ui] vewendet werden. 0: Lade nur explizit angeführte Ctrl-Libraries (siehe loadCtrlLibs). 1: Lade alle Dateien aus dem script/libs Verzeichnis als Ctrl-Libs. Übersteuert die Einträge 'loadCtrlLibs' und 'unLoadCtrlLibs'. Scripts, die leer sind oder mit "." beginnen, werden nicht geladen!

[different sections] loadCtrlLibs

Typ
string
Kann in allen Treibersektionen in den Sektionen [event], [ctrl] und [ui] vewendet werden. Lädt alle Dateien (Libraries), die hier angegeben sind (Dateinamen werden mit Komma getrennt). Dieser Eintrag kann beliebig oft vorkommen. Beispiel: loadCtrlLibs = "std.ctl, libCTRL.ctl, hosts.ctl, va.ctl, archiv.ctl" Eine Library, die mit diesem Eintrag geladen wurde, kann im Nachhinein mit dem Eintrag UnloadCtrlLibs wieder entfernt werden.

[different sections] priorityClass

Typ
integer
Default
0
Wertebereich
Linux: -20-19 Windows:-1-2
Erhöht oder senkt die Priorität des Managers. Windows: -1: Priorität kleiner als normal 0: normal (Default) 1: höher als normal 2: höchste Priorität Linux: 1..19: Priorität erhöhen (der Manager muss ein Root-Prozess sein) 0: normal (Default) -20..-1: Priorität verkleinern

[different sections] queryFunction

Typ
bool
Default
0
Wertebereich
0|1
Mit dem Config-Eintrag queryFunction = 1 wird eine Datenbank-Funktion anstatt einer Abfrage für dpGetPeriod() verwendet. Damit fallen Einschränkungen wie die Anzahl der Tabellen und Länge des SQL-Statements weg. Mit queryFunction = 0 wird wie bisher eine Abfrage verwendet. Der Eintrag kann in der ValueArchiveRDB- und UI-Sektion verwendet werden. Hinweis: Bitte beachten Sie, dass dieser Eintrag nicht für den Einsatz in regulären Projekten vorgesehen ist, sondern nur für spezifische, propritäre Datenbankschemata verwendet werden kann. Ein Einsatz in abweichenden Projekten führt dazu, dass eine korrekte Funktionsweise nicht mehr garantiert werden kann.

[different sections] queryHLBlockedTime

Typ
long (milliseconds)
Default
0
Wertebereich
0..32767
Dieser Eintrag kann in der [event], [ui] oder [ctrl] Sektion stehen. Zeit in Millisekunden, in der der Aufruf der Work-Funktion von offenen Queries geblockt wird. Nach Ablauf dieser Blockzeit wird ein HotLink mit allen Werten innerhalb der Blockzeit zurückgegeben. ACHTUNG: queryHLBlockedTime muss <= 32767[ms] sein, sonst wird dieser Config-Eintrag ignoriert.

[different sections] unLoadCtrlLibs

Typ
string
Kann in allen Treibersektionen in den Sektionen [event], [ctrl] und [ui] vewendet werden. Lädt alle Dateien (Libraries) die hier angegeben werden nicht (Dateinamen werden mit Komma getrennt). Dieser Eintrag kann beliebig oft vorkommen. Beispiel: unloadCtrlLibs = "std.ctl, libCTRL.ctl, hosts.ctl, va.ctl, archiv.ctl"

[DisRec]

Einstellungen für das Disaster Recovery System

[DisRec] switchingDriverActiveTimeout

Typ
int
Default
0
Zeit in Sekunden, die bei einer DRS-Umschaltung (manuell oder automatisch) gewartet werden soll bis die Treiberverbindungen am aktiven DRS aktiviert werden.

[DisRec] syncStatusBits

Typ
bool
Default
0
Wertebereich
0|1
Legt fest, ob die online.._status Bits übertragen werden sollen. 0 => Statusbits werden nicht übertragen 1 => Statusbits werden übertragen

[DisRec] syncUserBits

Typ
bool
Default
0
Wertebereich
0|1
Legt fest ob die _online.._userbits übertragen werden sollen. 0 => Userbits werden nicht übertragen 1 => Userbits werden übertragen

[DisRec] useOfflineErrorstateInfo

Typ
bool
Default
0
Wertebereich
0|1
Wenn dieser Eintrag auf 1 gesetzt ist, merkt sich das DRS System den maximal anstehenden Fehlerstatus während einer Netzwerkunterbrechung zwischen den Systemen. Jenes System, welches während des Ausfalls den höheren Fehlerstatus hatte, wird passiv geschalten. Bei gleichem MaxOffline Fehlerstatus wird wieder der aktuelle Fehlerstatus herangezogen und bei gleichem aktuellen Fehlerstatus bleibt jenes System aktiv, welcher schon vor der Unterbrechung der aktive war.

[dist]

Einstellungen für den Distribution Manager

[dist] connectDp

Typ
string
Default
_DistConnections
Definiert den Defaultnamen für den internen Connections-Datenpunkt vom Typ _Connections, welcher eine Liste aller Manager enthält, zu denen der Dist-Manager eine Verbindung aufgebaut hat.

[dist] distDpName

Typ
string
Default
_DistManager
Legt den Namen des internen DP fest. Der DP muss vom Typ _DistManager sein.

[dist] distPeer

Typ
string
distPeer = "host1[:port1][$host2[:port2]]" Systemnummer Definiert die Hosts und die Systemnummer zu denen der Dist-Manager die Verbindung als "Client" aufbaut (das andere System ist der "Server"). Wenn das andere System redundant ist, werden beide Hostnamen durch ein Dollar-Zeichen $ getrennt. Achtung: Die Reihenfolge, in der die Hosts in der Config-Datei eingetragen werden, muss immer die gleiche sein. Das bedeutet, dass wenn z.B. im Config-Eintrag data die Hosts folgendermaßen eingetragen wurden: data = "host1-1,host1-2$host2-1,host2-2" im distPeer Config-Eintrag diese in der gleichen Reihenfolge eingetragen werden müssen: distPeer = "host1[:port1][$host2[:port2]]" Systemnummer Eine andere Reihenfolge (distPeer = "host2[:port1][$host1[:port2]]" Systemnummer) verursacht Verbindungsfehler. Als optionaler dritte Parameter kann der literale UTF8-Parameter verwendet werden. Das bedeutet, dass der Server UTF-8-Enkodierung verwendet. Wenn dieser Parameter fehlt, wird ISO-Enkodierung verwendet. Dieser Parameter ist ab der Version 3.16 verfügbar und wird benötigt, wenn der Server zu dem eine Verbindung aufgebaut werden soll eine Vorversion der 3.16 ist und UTF-8-Enkodierung verwendet. Da Versionen >=3.16 weniger einschränkend in Bezug auf die Sprachkonfiguration sind, erlaubt dieser Eintrag die Verwendung von gleichen Sprachen aber unterschiedlicher Zeichenkodierung für die Systeme in einem verteilten System. Für die Versionen vor der Version 3.16 muss der Eintrag manchmal explizit gesetzt werden, wenn z.B. der Client >=3.16 aber der Server <3.16 ist.

[dist] distPort

Typ
int
Default
4777
Wertebereich
> 0
Definiert die Portnummern, die der Dist-Manager verwendet um Verbindungen von anderen Systemen zu akzeptieren. Der Defaultwert ist 4777. Beachten Sie, dass Sie die Portnummern nicht definieren müssen wenn Ihre Projekte auf verschiedenen Rechnern laufen. Wenn Ihre Projekte jedoch auf dem gleichen Rechner laufen, müssen Sie die Portnummern definieren.

[dist] enforceAccessControl

Typ
boolean
Default
1
Wertebereich
0|1
Ermöglicht die Kommunikation zwischen SSA-Projekten und älteren Projekten ohne SSA (<=3.15). Für die serverseitige Authentifizierung siehe Serverseitige Authentifizierung für UI-Manager Konfiguration) verwenden Sie den Eintrag "enforceAccessControl=0" wo ein SSA-Projekt mit einem älteren nicht SSA-Projekt kommunizieren soll. Hinweis: Projekte >3.15 benötigen immer dasselbe Plugin geladen.

[dist] maxSystemsToInitialize

Typ
int
Default
0
Wertebereich
>= 0
Die maximale Anzahl von fremden Systemen, die gleichzeitig initialisiert (= Austauch der DP-Identifikationen) werden können. Wird die Anzahl überschritten, so wird jede Initialisierungsanfrage abgelehnt und erst dann wieder akzeptiert, wenn durch den Abschluß von Initialisierungen die Anzahl der laufenden Initialisierungen unter "maxSystemsToInitialize" sinkt. Hinweis: maxSystemsToInitialize = 0 bedeutet, dass eine unbegrenzte Anzahl gleichzeitiger Initialisierungen zulässig ist.

[dist] maxUpdateMsgCount

Typ
unsigned
Default
1000
Wertebereich
>=0
Der Eintrag gibt an, wieviele Identification-ändernde Messages (DP_MSG_MANIP_xxx) der Dist puffert. Werden mehr Messages als angegeben gepuffert entfernt der Dist Messages aus dem Liste. Wenn sich ein fremdes System zum Dist verbindet, versucht der Dist, nur Updates aus dieser Liste zu senden. Reicht die Liste nicht aus schickt der Dist die gesamte Identification.

[dist] requestIdDelay

Typ
int
Default
0
Wertebereich
>= 0
Zeit, die zwischen dem Erhalt einer Identification und dem Anfordern der nächsten verstreichen muss. Damit kann man das Verteilen der Identification im Event staffeln, das heisst, dem Event Zeit geben, eine Identification an alle Clients zu verteilen, bevor die vom nächsten System angefordert wird.

[dist] updateStatusForHiddenSystems

Typ
bool
Default
0
Wertebereich
0|1
Wenn One-Way-Dist verwendet wird, verbindet sich der Dist-Manager zwar zu allen gewünschten Systemen, kann die Identification aber nur von ausgewählten Systemen abfragen. Somit ist den Systemen bzw. deren Managern immer noch bekannt, ob die Verbindung zum Partnersystem besteht, das betreffende System wird aber nicht im Systemübersichtspanel angezeigt bzw. kann auf dessen Datenpunkte nicht zugegriffen werden. Der Config-Eintrag updateStatusForHiddenSystems kann für Systeme, welche nicht in der distSystemIds-Liste enthalten sind, verwendet werden. Mit dem Eintrag aktivieren Sie die Status-Updates der Identificationen für diese Systeme (Siehe auch One Way Dist).

[distsync]

Einstellungen für Dist-Management.

[distsync] distSyncPopup

Typ
int
Default
1
Wertebereich
0|1
Das Dist-Management wird in einem verteilten System für die Verteilung von Benutzeraccounts, DP-Gruppen usw. verwendet. Auf dem UI wird nach einem Abgleich ein Pop-up-Fenster, das über den Abgleich informiert, angezeigt. Um das Pop-up-Fenster zu deaktivieren, wenn die Benutzer z.B. keine Berechtigungen besitzen, um das Pop-up-Fenster zu bestätigen, setzen Sie den Config-Eintrag distSyncPopup auf 0.

[distsync] firstLoginEnabled

Typ
boolean
Default
1
Wertebereich
0|1
Mit dem Config-Eintrag "firstLoginEnabled" mit Wert 0 auf allen Slave-Systemen kann verhindert werden, dass ein Benutzer die Erstanmeldung beim Slave-System durchführt. Zuerst muss der Benutzer sich einmalig am Master-System anmelden. Verwenden Sie den Eintrag beim Einsatz der Distverwaltung mit Active Directory um zu verhindern, dass die Benutzer-ID für den gleichen Benutzer auf unterschiedlichen Systemen unterschiedlich wird. Siehe auch Kapitel: Dist-Verwaltung in Kombination mit Active Directory - Neusortierung/Synchronisation von Benutzern ohne inkonsistente Historie. Setzen Sie den Config-Eintrag auf den Slave-Systemen auf 0 damit die Erstanmeldung eines Benutzers an Slave-Systemen verhindert wird.

[dnp3]

Einstellungen für den DNP3 Treiber

[dnp3] authKeyChangeInterval

Typ
uint
Default
600000
Wertebereich
>10000
Definiert die Zeit in Millisekunden nach der ein Schlüsselwechsel erfolgen soll.

[dnp3] authMACAlgorithm

Typ
uint
Default
4
Wertebereich
1-6
Definiert die Anzahl der DNP3 Telegramme nach denen ein Schlüsselwechsel erfolgen soll. 1 -> SHA1 4-OCTET 2 -> SHA1 10-OCTET 3 -> SHA256 8-OCTET 4 -> SHA256 16-OCTET 5 -> SHA1 8-OCTET 6 -> AESGMAC 12-OCTET

[dnp3] authMaxKeyChangeCount

Typ
uint
Default
1000
Wertebereich
>0
Definiert die Anzahl der DNP3 Telegramme nach denen ein Schlüsselwechsel erfolgen soll.

[dnp3] authReplyTimeout

Typ
uint
Default
2000
Wertebereich
>1000
Timeout in Millisekunden für das Warten auf eine Authentication-Antwort.

[dnp3] autoClearRestart

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt, ob der Treiber automatisch das Restartbit löscht, nachdem es von der Außenstation gemeldet wurde. 0 -> setzt das Restartbit nicht automatisch zurück 1 -> setzt das Restartbit automatisch zurück

[dnp3] autoCmdMode

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt das Verhalten der Befehlsausführung. 0 -> kein automatischer Vorgang für Auswahl und Ausführung 1 -> automatischer Vorgang für Auswahl und Ausführung

[dnp3] autoConfirm

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt, ob eine Bestätigung automatisch von der Anwendungsschicht gesendet wird (Default = wird automatisch gesendet).

[dnp3] autoDisableUnsol

Typ
bool
Default
0
Wertebereich
0|1
Bestimmt, ob die Funktion der spontanen Datensendung beim Treiberstart deaktiviert wird (Default = deaktiviert).

[dnp3] autoEventPoll

Typ
bool
Default
0
Wertebereich
0|1
Bestimmt, ob eine automatische Integritätsabfrage durchgeführt wird, wenn das DNP3 Gerät die Bits "Class Data 1", "Class Data 2" und "Class Data 3" in IIN setzt (Default = automatische Abfrage wird nicht durchgeführt).

[dnp3] autoIntegrityLocal

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt, ob eine Integritätsabfrage automatisch durchgeführt werden soll, wenn das Gerät das "lokale" IIN Bit setzt oder löscht (Default = Abfrage wird automatisch durchgeführt).

[dnp3] autoIntegrityOverflow

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt, ob eine Integritätsabfrage automatisch durchgeführt werden soll, wenn das Gerät das IIN Bit "Puffer Überlauf" ("buffer overflow") setzt (Default = Abfrage wird automatisch durchgeführt).

[dnp3] autoIntegrityRestart

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt, ob eine Integritätsabfrage automatisch durchgeführt werden soll, wenn das Gerät das Restartbit in IIN setzt (Default = Abfrage wird automatisch durchgeführt).

[dnp3] autoTimeSync

Typ
bool
Default
0
Wertebereich
0|1
Bestimmt, ob eine automatische Zeitsynchronisierung ausgeführt werden soll, wenn das DNP3 Gerät das "Need Time" ("brauche Zeit") Bit in IIN setzt (Default = automatische Zeitsynchronisierung deaktiviert).

[dnp3] channelWatchdogTimeout

Typ
uint
Default
180
Wertebereich
>0
Legt die Dauer zwischen zwei Watchdog Überprüfungen fest. Diese werden benötigt um festzustellen ob ein Channel noch aktiv ist. Dauer in Sekunden.

[dnp3] deviceSerial

Typ
string, string, string
Mit diesem Eintrag kann eine serielle Verbindung zum Gerät parametriert werden. Syntax: deviceSerial = <Name des Gerätes> <serieller Port> <serieller Parameter> Name des Gerätes - Frei wählbarer Name, der als Referenz im DPN3 Panel verwendet wird (z.B. "dev1"). serieller Port - Definiert die Schnittstelle (z.B. "COM1"). serielle Parameter - Abhängig vom Port werden in einem String die gerätespezifischen Parameter erfasst (z.B. Baudrate, Parität, Bitnummer, Stopbits = "9600,e,8,1").

[dnp3] dnp3DummyRead

Typ
uint
Default
1
Wertebereich
0-2
Erlaubt es festzulegen, welches Verhalten für die Überprüfung der Verbindung mittels "Dummy" Anfragen verwendet wird. 0 => Keine "Dummy" Anfrage 1 => Gruppe 0 Variante 252 wird für die "Dummy" Anfragen verwendet (default) 2 => Gruppe 60 Variante 44 wird für die "Dummy" Anfragen verwendet.

[dnp3] integrityPollAtStartup

Typ
bool
Default
1
Wertebereich
0|1
Definiert, ob beim Verbindungsaufbau eine Generalabfrage durchgeführt wird (Default = TRUE).

[dnp3] linkAddress

Typ
unsigned integer
Default
3
Wertebereich
>=0
Definiert die Linkadresse des DNP3 Treibers. Diese Adresse entspricht der "Destination"-Adresse in den Außenstationen.

[dnp3] linkStatusPeriod

Typ
unsigned integer
Default
10
Wertebereich
>=0
Bestimmt das Intervall für die Verbindungsstatusperiode in Sekunden. Wenn der Wert 0 ist und es werden keine Datentelegramme übertragen, dann werden auch keine Verbindungsstatustelegramme verschickt.

[dnp3] readStationTime

Typ
unsigned integer
Default
0
Wertebereich
>=0
Liest die Zeit von der Außenstation periodisch alle x Sekunden aus. x steht für den hier eingetragen Wert in Sekunden. Die ausgelesene Zeit wird auf den internen Datenpunkt _Dnp3Station.State.StationTime geschrieben.

[dnp3] sesDefaultResponseTimeout

Typ
uint
Default
5
Wertebereich
>=0
Setzt den Timeout für den Empfang von Session Level Responses. Wenn der Timeout abgelaufen ist wird die Session offline gesetzt. Der Wert wird in Sekunden angegeben.

[dnp3] timeStampMode

Typ
unsigned integer
Default
0
Wertebereich
0 | 1 | 2
Dieser Config-Eintrag definiert aus welcher Quelle die Zeit für den WinCC OA Zeitstempel übernommen wird. Die folgenden Möglichkeiten stehen zur Auswahl: 0 -> übernimmt die Zeitangabe vom Rechner 1 -> übernimmt die Zeitangabe von der Außenstation bei örtlicher Zeit (keine Zeitumstellung) 2 -> übernimmt die Zeitangabe von dem Außenstation bei UTC Zeit

[dnp3] userBitEvent

Typ
integer
Default
0
Wertebereich
0-32
Da die Event-Daten dieselben Punktindizes betreffen, wie normale Daten aus Telegrammen, werden diese auf einer gemeinsamen Periphiereadresse spezifiziert. Dabei wird jeweils die "nicht-event" (normale) Gruppe verwendet. D.h. Gruppe 1 für Binary Inputs. Der DNP3 Treiber bildet dann sowohl Daten der Gruppe 1 und Daten der Gruppe 2 auf 1 ab. Bei Event-Daten setzt der Treiber das hier angegebene User Bit. Default = 0 = kein Setzen des Userbits.

[dnp3] userBitXX

Typ
integer
Default
0
Wertebereich
0-32
Definiert wie die DNP3 Statusbits auf die WinCC OA Benutzerbits gemappt werden. Der Wert 0 bedeutet, dass das korresondierende Statusbit nicht gemappt wird. XX steht für: OL -> online (automatisches Mapping) RS -> restart CL -> communication lost RF -> remote forced LF -> local forced CF -> chatter filter RO -> rollover OR -> over range DC -> discontinuity RE -> reference error

[driver]

Config-Einträge für Treiber.

[driver] driverAckClassPrefix

Typ
string
Alarme mit diesem Präfix in der Alarmklasse werden vom Treiber auch am Gerät quittiert. D.h. alle Alarme, deren Alarmklassen dieses Präfix beinhalten, werden nicht nur im User Interface quittiert, sondern auch vom Treiber am Gerät (die Quittierung wird vom Gerät empfangen). Dieser Config-Eintrag muss in der Config-Datei des WinCC OA Systems gesetzt werden, auf dem das User Interface gestartet ist. Per Default wird dieser Mechanismus nicht verwendet und die Alarme werden vom UI quittiert. Dieser Config-Eintrag kann für alle Treiber verwendet werden, die den Quittierungsmechanismus über den Datenpunkt _DriverCommon unterstützen.

[eip]

Einstellungen für den EIP-Treiber

[eip] aliveInterval

Typ
ulong
Default
10
Wertebereich
2-100
Dauer der Inaktivität in Sekunden bevor ein Keep-Alive Poll durchgeführt wird.

[eip] autoGQ

Typ
bool
Default
1
Wertebereich
0|1
Gibt an ob Generalabfragen automatisch durchgeführt werden. 0 = keine automatische GQ 1 = automatische GQ bei Verbindungsaufbau

[eip] connectTimeout

Typ
ulong
Default
3000
Maximale Zeit in Millisekunden für den Aufbau einer Verbindung

[eip] gqSingles

Typ
ushort
Default
2
Wertebereich
0..2
0 = Einzelabfrage-Adressen werden in einer GQ nicht berücksichtigt 1 = Einzelabfrage-Adressen werden in einer GQ einzeln abgefragt 2 = Einzelabfrage-Adressen werden in einer GQ als Gruppe abgefragt

[eip] idleCloseTimeout

Typ
uint
Default
0
Zeitintervall (in Sekunden) nach dem eine inaktive Verbindung vom Master beendet wird.

[eip] implicitPort

Typ
ushort
Default
2222
Wertebereich
0-65535
Standardmäßig werden alle Impliziten Verbindungen in einer Instanz des EIP Treibers verarbeitet, weil die SPSen typischerweise den Port 2222 verwenden, um implizite Daten zu senden, und nur ein Prozess auf einen gegebenen Port hören kann. Dieser Eintrag bewirkt, dass der Treiber anstatt des Standard Ports den definierten Port zur impliziten Kommunikation verwendet. Für jede Treiberinstanz muss daher ein eindeutiger Port angegeben werden. Der Wert 0 bewirkt, dass kein Port für die implizite Kommunikation geöffnet wird.

[eip] MaxGap

Typ
uint
Default
5
Wenn Array-Elemente desselben Arrays in separate nicht-dynamische Datenpunkte gelesen werden, so werden benachbarte Elemente für effizienteren Transfer in Blöcke zusammengefasst. Dieser konfigurierte Wert gibt an, bis zu welchem maximalen Abstand Elemente als benachbart gelten. Der Wert kann erhöht werden, wenn spärliche Elemente eines Arrays gelesen werden, um die Performance zu optimieren.

[eip] maxQueueSize

Typ
ulong
Default
100
Maximale Anzahl an anstehenden Anfragen pro SPS

[eip] onlyActivePolls

Typ
bool
Default
0
Wertebereich
0|1
Nur der aktive Treiber pollt innerhalb eines redundanten Systems

[eip] serverPort

Typ
ushort
Default
44818
Wertebereich
0..65535
IP-Port der Treiber-Instanz des Hostsystems. Die Ethernet/IP-Spezifikation definiert, dass der TCP/IP-Port für alle Geräte 44818 sein muss. Der Standardwert des Ports wird im Normalfall nicht geändert. Da jedoch der Treiber keine eingehende Verbindungen unterstützt, ist das Ändern des Ports erlaubt (z.B. wenn mehrere Instanzen des Treibers erforderlich sind). Der Wert 0 bedeutet, dass kein Port für eingehende Verbindungen geöffnet wird. Die Verwendung anderer Ethernet/IP-Software (z.B. RSLinux) auf dem gleichen System führt zu Port-Konflikten, sofern der Standardport nicht angepasst wurde. Dadurch ist der Treiber nicht in der Lage zu starten. Von allen Ethernet/IP-SPSen wird erwartet, den Port 44818 zu verwenden. Dies kann nicht verändert werden.

[eip] StatCheckInterval

Typ
uint
Default
10
Wertebereich
max 200
Zeitintervall (in Sekunden) in dem statistische DPE aktualisiert werden

[event]

Einstellungen für den Event-Manager

[event] activeRecoveryTimeout

Typ
unsigned int (seconds)
Default
1800
Wertebereich
>= 0
Maximaler Zeitraum in Sekunden_, die der aktive Event zur Initialisierung des passiven Events benötigen darf. Ist nach Ablauf dieser Zeit die Initialisierung noch immer nicht abgeschlossen, bricht er die Initialisierung ab. Dadurch wird verhindert, dass bei Problemen am passiven Host die Initialisierung beliebig lange dauert. Achtung: Die Zeit muss ausreichend sein, sodass beide Event-Manager die Verbindung miteinander aufnehmen können. Das heißt, dass in dieser Zeit Redu-Manager und CTRL-Manager für das redu_ctrl gestartet werden und die beiden Redu-Manager der redundanten Systeme miteinander verbunden werden.

[event] alertConditionBit

Typ
string
Default
no check of a status bit
Wertebereich
identifier of a status bit
Originalwerte werden nur dann meldebehandelt, wenn gleichzeitig das hier spezifizierte Statusbit (des selben DP-Elements) gesetzt/nicht gesetzt ist (je nach Einstellung von alertConditionLogic, siehe Eintrag unten). Alle anderen Werte werden von der Meldebehandlung ignoriert. Wird das Statusbit auf den Wert von alertConditionLogic gesetzt, so erfolgt in dem Moment eine Meldebehandlung des aktuellen Wertes. Mit alertConditionBit = "_invalid" und alertConditionLogic = 0 wird z.B. erreicht, dass invalide Werte niemals meldebehandelt werden! Das alertConditionBit kann folgende Status-Attribute enthalten: _userbit1, _userbit2 usw. (bis _userbit32) bzw. invalid oder bad bit.

[event] alertConditionLogic

Typ
bool
Default
1
Wertebereich
0|1
Gibt an, welchen Wert das mit alertConditionBit eingestellte Statusbit haben muss, damit der zugehörige Original-/Onlinewert meldebehandelt wird. Mit alertConditionLogic = 1 werden die Werte meldebehandelt. Mit alertConditionLogic = 0 werden die Werte nicht meldebehandelt. Mit alertConditionBit = "_invalid" und alertConditionLogic = 0 wird wiederum erreicht, dass invalide Werte niemals meldebehandelt werden.

[event] alertSignOrder

Typ
string
Default
vVwWaA
Bei Summenmeldungen muss der Event-Manager Meldungen nach ihrem Kurzzeichen sortieren können. Zur Sortierung wird dabei dieser String verwendet. Das erste Zeichen hat dabei die niedrigste Priorität. Zeichen, die im String nicht vorhanden sind, haben alle die gleiche Priorität und werden vor dem ersten Zeichen im String platziert.

[event] attributesFromAddValues

Typ
int
Default
1
Wertebereich
0-3
Definiert, ob Begleitwerte auf Alarmattribute geschrieben und in den entsprechenden Spalten des AESchirms angezeigt werden. 0 -> keine Übernahme der Begleitwerte (_alert_hdl_add_values) auf Alarmattribute. 1 -> Begleitwert mit dem Index 2 (_alert_hdl.._add_value_2) wird auf den Alarmtext (_alert_hdl.._text) geschrieben, wenn definiert und im Alarmschirm angezeigt. Das Attribut _alert_hdl.._mapped_text kann verwendet werden, um den Begleitwert zusätzlich abzufragen. Hinweis: Gilt nur für Multiinstanzalarme. Wenn _alert_hdl.._add_value_2 auf das Attribut _alert_hdl.._text gemappt ist, darf er nur beim Kommen oder Gehen des Alarms (_event : DPATTR_ALERTEVENT_CAME/WENT) im gleichen Kommando (dpSet() oder Message) gesetzt werden und ist für spätere Änderung gesperrt. Wenn _alert_hdl.._add_value_2 frei verfügbar sein soll, muss "attributesFromAddValues = 0" gesetzt werden. 2 -> Begleitwert mit dem Index 1 (_alert_hdl.._add_value_1) wird auf den Alarmwert (_alert_hdl.._value) geschrieben, wenn definiert. 3 -> Begleitwerte werden auf Alarmtext und Alarmwert geschrieben (Kombination aus 1+2). Hinweis: Die Verwendung dieses Eintrages macht nur dann Sinn, wenn auf die ersten beiden Begleitwerte der Alarmwert und -text vom Treiber/Manager geschrieben werden. Wenn der Configeintrag "attributesFromAddValue" gesetzt wird, ist dies als fixes Mapping auf Text und Value zu betrachten. Nach Anlegen eines Alarms dürfen der Alarmwert und -text nicht mehr verändert werden (Begründung: Alarmwert und -text beschreiben den Value und dazugehörigen Text, der den Alarm ausgelöst hat. Daher darf das für die Instanz nicht mehr verändert werden), weswegen ein nachträgliches Ändern der gemappten add_values nicht mehr erlaubt ist. Die gemappten values dürfen nur beim Kommen (ALERTEVENT_CAME, ALERTEVENT_CAME_IMPULSE) oder Gehen (ALERTEVENT_GONE, ALERTEVENT_GONE_IMPULSE) eines Alarms in der selben Message nach dem Event mitgegeben werden. Beim Event ALERTEVENT_GONE_INACTIVE kann Wert und Text nicht gesetzt werden, da es im Normalfall mehrere Alarminstanzen modifiziert. In diesem Fall werden die Werte für Value und Text wie bei normalen Alarmen aus der Parametrierung bzw. dem aktuellen Wert entnommen. Werden keine Begleitwerte mitgegeben wird genauso verfahren. Der Configeintrag gilt nur für Multiinstanzalarme und wird bei normalen Alarmen ignoriert.

[event] copyDp

Typ
string string
Wertebereich
<Name of source DP element> <Name of target DP element>
config.redu Änderungen der Originalattribute am Quelldatenpunktelement werden vom Event-Manager automatisch auch am gleichen Element des Zieldatenpunktes durchgeführt. Der Zieldatenpunkt muss vom selben Datenpunkttyp sein wie der Quelldatenpunkt. Bezeichnet das Quelldatenpunktelement einen Knoten, so wird diese Funktionalität für alle darunterliegenden Blätter durchgeführt. Um verschiedene Elemente zu duplizieren, kann dieser Eintrag auch mehrfach angegeben werden. Bestimmte Datenpunktelemente (Meldungen von WinCC OA, wie z.B. Platte voll) können in redundaten Systemen jeweils unterschiedliche Werte haben. Deswegen werden für solche Elemente systemspezifische Datenpunkte angelegt. Leider enthalten diese Datenpunkte aber auch Elemente (Befehle an WinCC OA, wie z.B. Dateiwechsel), welche eigentlich nicht verdoppelt werden sollten. Da dies aber nur über eine Datenpunkttyp-Änderung möglich wäre, wurde der hier beschriebene Mechanismus zur Verfügung gestellt. Dieser Config-Eintrag ist für die Redundanz bestimmt, kann aber auch in nicht redundanten Systemen verwendet werden.

[event] copyDpType

Typ
string
Wertebereich
name of the source DP element
config.redu Mit dem Eintrag copyDpTypes werden vom Event-Manager analog zu copyDp alle Änderungen der Originalattribute am angegebenen Quelldatenpunktelement automatisch auch an den Elementen aller Datenpunkte des angegebenen Zieldatenpunkttyps durchgeführt. Syntax: [event] copyDpTypes = "<Datenpunkttyp>.<Datenpunktelement>" Wenn zwei Datenpunkte dieses Typs die Namen <DP-Name> und <DP-Name>_2 haben, wird das <DP-Name>.<Element> automatisch auf <DP-Name>_2.<Element> kopiert. Einschränkung: <DP-Name> darf nicht mit "_2" enden. Zum Beispiel: Die Datenpunkte Iec_2 und Iec_2_2 werden nicht mit copyDpTypes kopiert.

[event] createUsersAllowed

Typ
bool
Default
1
Wertebereich
0|1
Config-Eintrag für die Kerberos-Authentifizierung. Gibt an ob der Event-Manager neue Benutzer zu dem _Users-DP hinzufügen darf. Der neue Benutzer erhält als Benutzer-ID die höchste Benutzer-ID + 1. Das System setzt auch die Gruppenzugehörigkeit und Benutzerrechte usw.

[event] discardOldValues

Typ
bool
Default
0
Wertebereich
0|1
discardOldValues = 1 verwirft alte Werte, die vom Treiber empfangen wurden und mittels negativeSourceTimeDiff normalerweise auf ungültig gesetzt worden wären. Dieser Eintrag sollte nur in Kombination mit negativeSourceTimeDiff auftreten und nur dann verwendet werden, wenn sichergestellt werden kann, dass immer nur ein aktives WinCC OA System mit der Peripherie verbunden ist.

[event] dpFctActivate

Typ
bool
Default
1
Wertebereich
0|1
Dieser Eintrag deaktiviert gegebenenfalls die Ausführung der Datenpunktfunktionen im Event-Manager.

[event] dpFuncOldNewCompare

Typ
bool
Default
0
Wertebereich
0|1
Wert 0 = unveränderte Event-Manager Funktionalität. Wert 1 = Für alle Datenpunktfunktionen wird ein Alt-/Neu-Vergleich eingeschaltet, unabhängig davon, was in _dp_fct.._old_new_compare eingestellt ist. Das bedeutet, das Ergebnis der Berechnung wird nur dann geschrieben, wenn es sich vom aktuellen Wert im Prozessabbild unterscheidet.

[event] driverNegativeSourceTimeDiff

Typ
double
Default
actual value of negativeSourceTimeDiff
Wertebereich
>= 0
Normalerweise verwirft der aktive Event-Manager die Werte vom Treiber mit alten Zeitstempeln im redundanten Betrieb, wenn er bereits einen aktuelleren Wert vom anderen Event-Manager empfangen hat. Der Eintrag driverNegativeSourceTimeDiff bewirkt, dass der Event -Manager die Werte, welche zeitnaher als negativeSourceTimeDiff in der Vergangenheit liegen, noch weiterverarbeitet. Das gilt nur für Wertänderungen vom Treiber, welche keinen Peripheriezeitstempel besitzen. Auf Werte mit Peripheriezeitstempel hat dieser Config-Eintrag keine Auswirkung. Default: der Defaultwert ist der aktuelle Wert von dem Config-Eintrag negativeSourceTimeDiff. Das bedeutet, dass wenn driverNegativeSourceTimeDiff nicht angegeben wird, dann wird der eingestellte Wert von negativeSourceTimeDiff genommen (nicht der Defaultwert, sondern der aktuelle Wert).

[event] enableAlertPreview

Typ
bool
Default
0
Wertebereich
0|1
Standardmäßig verarbeitet der EVENT-Manager deaktivierte "_alert_hdl"-Konfigurationen nicht, und im Gegensatz zu früheren Versionen werden keine Alert Previews erzeugt. Um das alte Verhalten wieder zu aktivieren, muss dieser Konfigurationseintrag aktiviert werden.

[event] eventsFileStateBit

Typ
unsigned integer
Default
1
Wertebereich
0..32
Definiert welches Benutzerbit zum Einschalten der Ausgabe der Event-Datei (-dbg 19 in der Kommandozeile) verwendet wird. Es werden nur die Datenpunkte gezeigt, die dieses Bit gesetzt haben. Die Ausgabe erfolgt im Logverzeichnis Ihres Projektes (events.YYMMDD). Die Ausgabe enthält ein Bitmuster, das den Statusbits des Originalwertes entspricht. Die letzten 32 Werte beziehen sich auf die Userbits, die anderen auf die Statusbits, und der erste Wert auf den Datentyp des Originalwertes. Hinweis: Ein Wert von 0 entspricht allen Benutzerbits. Der Wert 1 entspricht dem 1 Userbit, usw.

[event] evStatusDP

Typ
string
Wertebereich
a bool element of an arbitrary datapoint
Über dieses Datenpunktelement meldet der Event-Manager seinen Aktiv-/Passiv-Zustand bei der Redundanz.

[event] forceActiveDP

Typ
string
Default
_ReduManager[_2].ForceActive
Wertebereich
-
Über dieses Datenpunktelement kann der Event-Manager veranlasst werden, die Verbindung zum aktiven Event-Manager zu trennen und damit aktiv zu werden, selbst wenn der aktive Event-Manager nicht mehr ordnungsgemäß arbeitet. Darf nicht mittels PARA gesetzt werden!

[event] fwdDp

Typ
string
Wertebereich
name of the datapoint element
config.redu Änderungen der Original-Attribute dieses Datenpunktelements werden vom Event-Manager automatisch an den redundanten Event-Manager weitergeleitet (betrifft Redundanz). Handelt es sich beim Datenpunktelement um einen Knoten, so gilt dies für alle darunter liegenden Blätter. Um verschiedene Elemente weiterzuleiten, kann dieser Eintrag auch mehrfach angegeben werden. Das Weiterleiten dient dazu Änderungen, welche nur in einem der beiden Systeme auftreten können (z.B. DM Platte voll), auch dem jeweils anderen redundanten System mitzuteilen.

[event] fwdDpType

Typ
string
Wertebereich
name of the datapoint element
config.redu Analog zu fwdDp werden alle Änderungen an diesem Datenpunktelement vom Event-Manager automatisch an den redundanten Event-Manager weitergeleitet. Im Unterschied zu fwdDp wird nicht ein Name des Datenpunktelementes eines existierenden Datenpunktes angegeben, sondern das Element eines Datenpunkttyps in der Form 'Typ.Element' (z.B. 'ExampleDP_Bit.' für das Root-Element des Datenpunkttyps ExampleDP_Bit). Es werden also die entsprechenden Elemente aller Datenpunkte von diesem Typ, unabhängig ob sie beim Start des Event-Managers schon existieren oder nicht, weitergeleitet. Handelt es sich beim Datenpunktelement um einen Knoten, so gilt dies für alle darunter liegenden Blätter. Um verschiedene Elemente weiterzuleiten, kann dieser Eintrag auch mehrfach angegeben werden.

[event] heartbeatTime

Typ
uint
Default
1
Definiert das Intervall, in dem das Datenpunkteelement _Event[_2].Heartbeat inkrementiert wird.

[event] link0DP

Typ
string
Der Event-Manager versucht die Verbindung zum Peer nur dann aufzubauen, wenn ihm der Redu-Manager bestätigt, das die primäre Netzwerkverbindung lebt. Wenn die Alive-Überwachung diesen Datenpunkt auf FALSE setzt, wird die Verbindung sofort abgebaut und es wird mit der Pufferung begonnen. Hinweis: Normalerweise: _RedManager*.PeerAlive.Link0 element des eigenen Redu-Managers.

[event] maxAlertConnectCount

Typ
uint
Default
1000000
Definiert die Anzahl der Elemente (= Anzahl Zeilen x Anzahl Spalten), die in einer Query mit Alarmen abgefragt werden. Wird die eingestellte Anzahl überschritten, wird die Query sobald als möglich abgebrochen und ein Fehler zurückgemeldet. Dieser Config-Eintrag gilt für dpQueryConnect(). Wird der Eintrag auf 0 gesetzt, so gibt es keine Beschränkung.

[event] maxAlertRequestCount

Typ
uint
Default
1000000
Definiert die Anzahl der Elemente (= Anzahl Zeilen x Anzahl Spalten), die in einer Query mit Alarmen abgefragt werden. Wird die eingestellte Anzahl überschritten, wird die Query sobald als möglich abgebrochen und ein Fehler zurückgemeldet. Dieser Config-Eintrag gilt für dpQuery(). Wird der Eintrag auf 0 gesetzt, so gibt es keine Beschränkung.

[event] maxInputMsgCount

Typ
unsigned
Default
100000
Wertebereich
>= 1000
Grenze für die Anzahl von Messages, die der Event in seiner Eingangsqueue puffert. Wenn die Grenze 'msgQueueLimitTimeout' Sekunden überschritten wird, wird die Verbindung zu dem betroffenen Manager geschlossen.

[event] maxParseTime

Typ
unsigned integer
Default
20
Wertebereich
>= 0
Bestimmt die Dauer in Sekunden, die eine Query (abgesetzt an den Event-Manager) zur Parsezeit dauern darf. Dient zur Diagnose welche Queries das System zum blockieren bringen.

[event] maxValueConnectCount

Typ
uint
Default
1000000
Definiert die Anzahl der Elemente (= Anzahl Zeilen x Anzahl Spalten), die in einer Query abgefragt werden. Wird die eingestellte Anzahl überschritten, wird die Query sobald als möglich abgebrochen und ein Fehler zurückgemeldet. Dieser Config-Eintrag gilt für dpQueryConnect(). Wird der Eintrag auf 0 gesetzt, so gibt es keine Beschränkung.

[event] maxValueRequestCount

Typ
uint
Default
1000000
Definiert die Anzahl der Elemente (= Anzahl Zeilen x Anzahl Spalten), die in einer Query abgefragt werden. Wird die eingestellte Anzahl überschritten, wird die Query sobald als möglich abgebrochen und ein Fehler zurückgemeldet. Dieser Config-Eintrag gilt für dpQuery(). Wird der Eintrag auf 0 gesetzt, so gibt es keine Beschränkung.

[event] msgQueueHoldTime

Typ
int
Default
60
Die Zeit (in Sekunden), zwischen dem Erkennen, dass am aktiven Event eine Treiberkommunikation ausgefallen ist, bis zur Umschaltung zum passiven Event. Während dieser Zeit puffert das passive System Werte vom Treiber bis er vom aktiven Treiber sicher einen aktuellen Wert bekommt. Die Pufferzeit wird mit dem Config-Eintrag msgQueueHoldTime eingestellt.

[event] msgQueueLimitTimeout

Typ
unsigned
Default
60
Wertebereich
>= 20
Zeitdauer in Sekunden während der das Limit des Messagequeuecontainer im Event-Manager (in Empfangsrichtung) überschritten werden darf. Für das Rücksetzen des Timeouts ist ein Unterschreiten der Grenze um 10% notwendig. Wird der doppelte Wert der Grenze erreicht, tritt schon nach einem Zehntel der Zeit eine Notfallbehandlung in Kraft. Behandlung beim Auslaufen des Timeouts: Der Data-Manager gibt nur eine Fehlermeldung aus. Für alle anderen Manager erfolgt ein Abbrechen der Verbindung. Bei Managern in anderen Systemen wird die Queue des Event-Managers geleert.

[event] negativeSourceTimeDiff

Typ
unsigned integer
Default
0
Wertebereich
>= 0
Zeit in Sekunden, die eine Quellzeit vor der letzten Quellzeit liegen darf, ohne dass das Bit "Quellzeit ungültig" gesetzt wird. Die Quellzeit wird aber auf den Wert "letzte Quellzeit + 1 Millisekunde" korrigiert.

[event] passiveRecoveryTimeout

Typ
unsigned integer
Default
300
Wertebereich
>= 0
Maximaler Zeitraum in Sekunden_, die der passive Event auf das Ende seiner Initialisierung durch den aktiven Event wartet. Ist nach Ablauf dieser Zeit die Initialisierung noch immer nicht abgeschlossen, wird er selbst aktiv und puffert keine weiteren Messages mehr. Dadurch wird verhindert, dass der passive Event beliebig lange wartet, wenn während der Initialisierung die Verbindung zum aktiven Event ausfällt. Achtung: Die Zeit muss ausreichend sein, sodass beide Event-Manager die Verbindung miteinander aufnehmen können. Das heißt, dass in dieser Zeit Redu-Manager und CTRL-Manager für das redu_ctrl gestartet werden und die beiden Redu-Manager der redundanten Systeme miteinander verbunden werden.

[event] redConnTryInterval

Typ
unsigned integer
Default
60
Wertebereich
>= 0
Bestimmt in welchen Abständen (in Sekunden), bei nicht bestehender Verbindung zwischen den redundanten Event-Managern (Redundanz), versucht wird diese aufzubauen.

[event] redOldNewComp

Typ
bool
Default
1
Wertebereich
0|1
Diese Einstellung hat nur in redundanten Systemen eine Bedeutung. Nach einer Redundanzumschaltung wird i.a. eine GA durchgeführt bei der die Werte von der SPS nicht im Treiber geglättet werden und damit sichergestellt wird, dass die Werte, die eine Glättung im Treiber verwenden, mit dem Prozessabbild übereinstimmen. Stattdessen kann der Event-Manager die Werte einer GA mit dem Prozessabbild vergleichen und identische Werte verwerfen. Damit wird die Last im Event-Manager nach einer Redundanzumschaltung verringert. Wert 0 = der Event-Maanger macht keinen Alt-/Neu-Vergleich Wert 1 = der Event-Manager macht einen Alt-/Neu-Vergleich

[event] refuseCNS

Typ
bool
Default
1
Wertebereich
0|1
Gibt an, ob ein Manager CNS-Daten der Identification im Speicher halten soll. CNS-Daten werden zwar weiterhin mit der Identification zum Manager übertragen, der Manager verwirft sie allerdings beim Empfang.

[event] updateUsersAllowed

Typ
bool
Default
1
Wertebereich
0|1
Config-Eintrag für die Kerberos-Authentifizierung. Gibt an ob der Event-Manager den _Users DP aktualisieren darf, wenn sich ein Benutzer, der im _Users DP enthalten ist, einloggt. Unter Windows sucht das System nach der OSID, unter Linux nach dem Namen. Der WinCC OA Event-Manager aktualisiert den Namen (nur unter Windows), die Beschreibung, die Gruppenzugehörigkeit, die Authorizierungsbits und die primäre Gruppe. Wenn der Config-Eintrag createUsersAllowed auf 1 (Defaultwert) gesetzt wurde, (siehe Beschreibung oberhalb), ignoriert der Event Manager den updateUsersAllowed-Eintrag und Updates des _User-DPs sind grundsätzlich erlaubt.

[event] useCRC

Typ
bool
Default
0
Wertebereich
0|1
useCRC ist ein Sicherheitsfeature des WinCC OA-Nachrichtensystems. Es bietet erweiterte Fehlererkennungsmöglichkeiten im Vergleich zum Standard-Nachrichtensystem. Um die Datenintegrität der WinCC OA-Nachrichten sicherzustellen, werden die Nachrichten in CRC-Telegramme mit geeigneter Länge eingeteilt. Jedes Telegram enthält eine 32 Bit CRC. Beim Empfang der Nachrichten werden die Werte überprüft und wenn die Werte nicht übereinstimmen, wurde ein Fehler gefunden. Der Fehler wird im LogViewer angezeigt und die Verbindung zwischen den Managern wird geschlossen. Der Eintrag "useCRC" kann in der [event]- oder einer spezifischen Treiber-Sektion der config-Datei verwendet werden. Der Eintrag kann in einer oder in beiden Sektionen verwendet werden. Der Eintag ist immer Managerspezifisch. Der "stärkere" Manager gewinnt und selektiert den Typ der Verbindung. BEISPIEL Die Verbindung zwischen Treiber und Event verwendet die erweiterte Integritätsprüfung sowie auch andere Manager, die eine Verbindung zum Event-Manager aufbauen. [event] useCRC = 1 [mod] useCRC = 0 BEISPIEL Die Verbindung zwischen Treiber und Event verwendet die erweiterte Integritätsprüfung. Alle andere Manager, die eine Verbindung zum Event-Manager aufbauen verwenden keine erweiterte Integritätsprüfung (außer diese wurde in den Managersektionen angegeben). [event] useCRC = 0 [mod] useCRC = 1 Die Information ob die erweiterte Integritätsprüfung für eine Verbindung verwendet wird oder nicht, wird auf den Connection-Datenpunkt des Managers geschrieben. Zudem wird beim Start eines Managers ein Log-Eintrag geschrieben. Der Eintrag enthält die Kommunikationsform des Managers. In einem redundanten System kann der Eintrag in einem oder in beiden System(en) des redundanten Systems verwendet werden. In einem DRS-System kann der Eintrag in einem oder in beiden DRS-System(en) verwendet werden. Wenn verteilte Systeme verwendet werden und eines der Systeme ein Safety-System ist und das andere nicht, muss der Eintrag nur für das Safety-System verwendet werden. Der Dist-Manager des Safety-Systems verwendet CRC-Checks in der Kommunikation mit dem Event-Manager des Safety-Systems. Es werden keine CRC-Checks in der Kommunikation mit dem Event-Manager des nicht Safety-Systems verwendet. HINWEIS Das Defaultverhalten ist die Nachrichtenübermittlung ohne erweiterte CRC-Checks. Wenn Sie einen falschen Wert für das Keyword "useCRC" in der Config-Datei angeben, wird eine Warnung im LogViewer ausgegeben und der Manager verwendet die Defaultkommunikation. Log-Meldungen werden ausgegeben, wenn CRC verwendet wird bzw. wenn CRC parametriert wurde aber wegen einer localhost-Verbindung nicht verwendet wird. Eine Meldung wird auch ausgegeben wenn CRC parametriert ist und verwendet werden müsste aber nicht verwendet wird (WARNING). Für Safety-Projekte siehe auch das Dokument "Basic and operating Conditions" im ETM-Portal.

[event] useSourceTime

Typ
bool
Default
0
Wertebereich
0|1
Wenn Attribute von Konfigs (ausgenommen _default, _corr, _original) modifiziert werden, so wird als Quellzeit nicht die Zeit aus der Message, sondern die aktuelle Zeit genommen. So ist sichergestellt, dass Parametrierungen immer zeitlich aufsteigend erfolgen. Wenn useSourceTime = 1 gesetzt ist, so wird die Zeit nicht korrigiert, sondern für alle Konfigs die Zeit aus der Message genommen.

[event] validTimeDiff

Typ
unsigned int (minutes)
Default
10
Wertebereich
>= 0
Zeit in Minuten, welche die Quellzeit einer Wertänderung maximal in der Zukunft liegen darf. Liegt die Zeit weiter in der Zukunft, wird die entsprechende ValueChangeMsg verworfen und eine Fehlermeldung wird ausgegeben.

[general]

Globale Einstellungen gültig für alle Manager

[general] accessControlPlugin

Typ
string
Das AccessControlPlugin ist eine shared Library mit benutzerdefiniertem Namen. Um die Bibliothek innerhalb Ihres Projektes hinzuzufügen, ergänzen Sie den Eintrag "accessControlPlugin = AccessControlPluginDateiName innerhalb der [general] Sektion der Projekt Config- Datei. Wenn Sie die Dateierweiterung nicht angeben, erfolgt eine vom verwendeten Betriebssystem unabhängige Konfiguration. Beim Laden der Bibliothek wird unter Windows ".dll" bzw. unter Linux ".so" automatisch als Endung zum Namen ergänzt. Damit das Plug-in gefunden wird, muss die Plug-in-Datei in einem der Bin-Verzeichnisse (windows, windows-64) der Projekthierarchie liegen. Standardmäßig enthält der Eintrag keinen Wert und es wird kein Plug-in geladen. Der Wert ist der Dateiname der Shared Library mit oder ohne Erweiterung. z.B. [general] accessControlPlugin = "CommonConfigPlugin"

[general] activateAlertFiltering

Typ
bool
Default
1
Wertebereich
0|1
Setzen Sie diesen Config-Eintrag auf 0, um die automatische Filterung von Alarmen zu deaktivieren.

[general] alertPermissionsCompatibilityMode

Typ
bool
Default
1
Wertebereich
0|1
Vor Version 3.17 prüfte der Eventmanager ein alertSet gegen die Berechtigung von _auth._alert_hdl._write. Aber der 3.17 prüft er gegen _auth._alert._write und die Berechtigung von _auth._alert_hdl._write gilt nur mehr für dpSet, also Änderungen an der Konfiguration einer Meldebehandlung. Dieser Eintrag aktivert einen Kompatibilitätsmodus, so dass alertSet weiterhin gegen _auth._alert_hdl._write geprüft wird. Um auch beim Lesen konsistent zu sein wird auch alertGet gegen _auth._alert_hdl._read geprüft, wenn dieser Configeintrag gesetzt ist. Da auch andere Manager Berechtigungen prüfen müssen steht dieser Configeintrag in [general].

[general] atomicDpSet

Typ
bool
Default
0
Wertebereich
0|1
Das Setzen von mehreren Werten in einer dpSet-Operation könnte Inkonsistenzen verursachen, da einige Write-Operationen erfolgreich ausgeführt werden und andere fehlschlagen. Atomare dpSet-Operationen verifizieren, dass keine Schreiboperation scheitert bevor Werte geändert werden. Deshalb werden keine Inkonsistenzen verursacht. Durch das Setzen von "atomicDpSet = 1", sind alle dpSet-Operationen außer Schreiboperationen, die durch WinCC OA-Treiber initialisiert wurden, für Original-, Lock- und General-Configs atomar. Die durch WinCC OA-Treiber initialisierten Schreib-Operationen sind nie atomar. Wenn atomares Verhalten aktiviert wird aber eine dpSet-Operation andere Configs als Original, Lock, und General enthält, ist die Operation nicht atomar. Defaultmäßig ist das atomare Verhalten deaktiviert. Atomares Verhalten kann für alle dpSet-Operationen, die vom WinCC OA unterstützt werden ("dpSet", "dpSetWait", etc.) verwendet werden. Wenn diese Operationen auf Original-, Lock-, und General-Configs beschränkt sind, werden entweder alle dpSet-Operationen erfolgreich durchgeführt oder es werden keine Operationen durchgeführt. Bei Fehlern wird der Rückgabe-Code entsprechend gesetzt und weitere Fehlermeldungen können wie gewohnt abgerufen werden.

[general] authCheckPasswordExpired

Typ
bool
Default
1
Wenn dieser Konfigurationseintrag 1 (true) ist, wird die Linux-PAM-Accountprüfung Fehler als Fehler melden und daher den Aufruf von verifyOSUser() fehlschlagen lassen. Wenn dieser Konfigurationseintrag 0 (false) ist, wird die Account-Validierung jeden Fehler bei der Validierung, z.B. ein abgelaufenes Passwort, nur als Warnung im Log melden, aber der verifyOSUser()-Aufruf wird erfolgreich sein. Dieser Konfigurationseintrag wird nur für Linux-Konfigurationen verwendet. Windows-basierte Konfigurationen sind davon nicht betroffen.

[general] autoRemoveOrphanedData

Typ
bool
Default
1
Wertebereich
0|1
Entfernt verwaiste Daten während des Projektstarts automatisch von der SQLite-Datenbank.z.B. Löscht einen Datenpunkt, wenn der zugehörige Datenpunkttyp nicht vorhanden ist Löscht eine Konfiguration, wenn das zugehörige Datenpunktelement nicht vorhanden ist Löscht einen Letztwert, wenn das zugehörige Datenpunktelement nicht vorhanden ist HINWEIS:Wenn diese Funktion aktiv ist, werden die gefundenen verwaisten Daten mit dem Debug-Flag "WORK" gemeldet. Die Daten müssen nicht geändert werden. Wenn diese Funktion deaktiviert ist, werden alle gefundenen verwaisten Daten als WARNINGs gemeldet, und Sie müssen die verwaisten Daten manuell bereinigen.

[general] bcmBufferLimitTimeout

Typ
unsigned
Default
60
Wertebereich
>=20
Zeitdauer während der das Limit des Messagequeuecontainers eines Managers (in Senderichtung) überschritten werden darf. Für das Rücksetzen des Timeouts ist ein Unterschreiten der Grenze um 10% notwendig. Behandlung beim Auslaufen des Timeouts: Der Data-Manager gibt nur eine Fehlermeldung aus. Für alle anderen Manager erfolgt ein Abbrechen der Verbindung. Bei Managern in anderen Systemen wird die Queue des jeweiligen Manager geleert.

[general] cnsUseDoubleAsterisk

Typ
bool
Default
1
Dieser Konfigeintrag beeinflusst das Verhalten der CNS-Funktionen ( und ), welche eine Musterfilterung verwenden. Ist der Wert dieses Konfigeintrages "1", dann kann der Platzhalter '*' keine Zeichen und mehrere Zeichen in der CNS-Identifikation repräsentieren, außer '.' und ':'. Der Platzhaltzer '**' kann kein Zeichen und mehrere Zeichen inklusive '.' und ':' repräsentieren, und ist damit für Musterfilterung über mehrere CNS-Level geeignet. Ist der Konfigeintrag "0", dann verhalten sich '*' und '**' gleich. Beide können dann alle Zeichen inklusive '.' und ':' repräsentieren.

[general] CtrlAdoMSBoolFormat

Typ
bool
Default
1
Wertebereich
0|1
Mit dem Config-Eintrag "CtrlAdoMSBoolFormat = 1" wird TRUE als -1 und FALSE als 0 in der Datenbank gespeichert. Mit dem Config-Eintrag "CtrlAdoMSBoolFormat = 0" wird TRUE als 1 und FALSE als 0 gespeichert.

[general] CtrlAdoNumericalPrecision

Typ
string
Wertebereich
double|int32|int64
Definiert die reduzierte Genauigkeit, wenn von einer Datenbank numerische Werte gelesen werden sollen, die laut Datenbankdefinition nicht in einem Standard-CTRL-Datentyp (int, long, float) Platz finden. Wird dieser Config Eintrag nicht angegeben, so können in diesem Fall numerische Werte als string geliefert werden. Das Verhalten ist vom Datenbank-Treiber abhängig. Hinweis: Treiber, welche die reduzierte Genauigkeit nicht unterstützen, ignorieren diese Einstellung. Dieser Config Eintrag wird unter Windows nicht verwendet.

[general] ctrlAllowedFeatures

Typ
string
Dieser Eintrag hat derzeit keine Funktion. Er existiert nur zur Kompatibilität mit Versionen ab 3.16.13

[general] ctrlMaxBlockedPendings

Typ
integer
Default
3000
Wertebereich
>0
Gibt an, wie viele anstehende Ereignisse (nicht verarbeitete Hotlinks) bei einer geblockten Query anstehen dürfen. Dabei zählt jede Zeile in den Hotlinks und nicht nur die Anzahl der Hotlinks. Bei nicht geblockten Queries wird die Obergrenze mit ctrlMaxPendings festgelegt.

[general] ctrlMaxPendings

Typ
int
Default
200
Wertebereich
> 0
Ist bei z.B. einem dpConnect() eine Work-Funktion noch nicht komplett ausgeführt worden, wenn das Ereignis noch einmal eintritt, so wird gewartet, bis das erste Ereignis abgearbeitet ist. Ist nun die Frequenz der Ereignisse größer, als sie bearbeitet werden können, so wird die Schlange der noch zu bearbeitenden Ereignisse und damit der Speicherverbrauch des CTRL-Managers oder des UI-Managers immer größer. Um das zu verhindern, verwirft CTRL nach ctrlMaxPendings alle anstehenden Ereignisse und gibt eine Fehlermeldung aus. Dieser Eintrag kann auch in den einzelnen Managerabschnitten verwendetet werden: [ui_5] ctrlMaxPendings = 120

[general] ctrlMaxWeight

Typ
integer
Default
10000 (CTRL) bzw. 5000 (UI, Event, ASCII, etc.)
Der Control Interpreter bearbeitet zyklisch alle laufenden Skripte. Die Summe der Gewichtungen der Anweisungen, die in einem Zyklus ausgeführt werden, ist über diesen Eintrag definierbar. Siehe auch Kapitel Optimierung von WinCC OA.

[general] defaultArchive

Typ
uint
Default
97
Wertebereich
>=0
Gibt an, in welche Archive standardmäßig geschrieben werden soll. (97 = RDBManager)

[general] discreteImpulseAlertWithoutWent

Typ
bool
Default
0
Wertebereich
0|1
Ist dieser Config Eintrag gesetzt wird bei diskreten Impuls-Alarmen kein GING Ereignis erzeugt. Dadurch kann man Status-Meldungen erzeugen wie z.B.: 1 Offen, 2 Geschlossen, 3 Zwischenlage, 4 Fehler und im Alarmlog ist dann je nach Wertefolge zu lesen: Offen KAM; Zwischenlage KAM; Geschlossen KAM; Fehler KAM .... - Ohne diesen Eintrag werden im Alarmlog auch die GING Ereignisse protokolliert (Offen KAM; Offen GING; ...).

[general] displayName

Typ
string
Definiert den anzuzeigenden Namen des Projektes innerhalb der Projekt Auswahl innerhalb eines Desktop/Mobile UIs. Der konfigurierte displayName wird ebenfalls für den Namen des lokalen Caching Verzeichnises auf dem Client herangezogen.

[general] dnsLookupTimeout

Typ
32bit unsigned integer
Default
2500 milliseconds
Wertebereich
milliseconds
Verwenden Sie den Konfigurationseintrag dnsLookupTimeout, um das maximale DNS-Lookup-Time-out zu definieren. Die DNS-Auflösung wird jetzt in einer asynchronen zeitbegrenzten Lambda-Funktion durchgeführt, die kürzer als der standardmäßige DNS-Time-out-Wert (30 Sekunden) konfiguriert werden kann. Der Defaultwert für das DNS-Time-out beträgt 2500 Millisekunden und kann über ([general] dnsLookupTimeout) konfiguriert werden. Wird die Zeit überschritten, schlägt die DNS-Auflösung fehl. Wenn die DNS-Auflösung länger als 500ms dauert, wird eine Warnung ausgegeben. Diese Warnung kann durch Setzen des Config-Eintrags [general]suppressDnsLookupWarnings = 1 deaktiviert werden. HINWEIS: Verwenden Sie keine Werte unter 100 oder über 30000, wenn Sie nicht mit der DNS-Lookup-Funktionalität vertraut sind.

[general] DpCommentSeparator

Typ
char
Default
@
Trennszeichen für den Langtext (Langtext@Format@Einheit).

[general] dpFuncLoopCount

Typ
int
Default
20
Wertebereich
>=20
Definiert die Grenze für eine Endlosschleife (für Datenpunktfunktionen). Eine Endlosschleife wird diagnostiziert wenn eine Datenpunktfunktion mehr Hotlinks mit gleichem Zeitstempel erhält als die Anzahl die über den Eintrag dpFuncLoopCount definiert wurde. Bei Überlauf des Wertes wird die Schleife abgebrochen. Werden in einer Datenpunktfunktion SEHR viele Hotlinks verwendet (zb. viele Ctrl-Parameter), so kann die Defaulteinstellung zu wenig sein (definieren Sie einen größeren Wert).

[general] dpGetDescriptionMode

Typ
int
Default
1
Wertebereich
-2 ... 3
Steuert die Funktionsweise von dpGetDescription(). Nähere Informationen finden Sie auf der spezifischen Seite der CTRL-Funktion.

[general] DP_StatisticsPrefix

Typ
string
Default
_Stat
Wertebereich
-
Die Datenpunkte für die Message-Statistik haben folgende Namen: _Stat_<ManagerType>_<ManagerNr>_to_<ManagerType>_<ManagerNr>. Um bei Redundanz für jeden Knoten eindeutige Namen zu bekommen, kann der Prefix _Stat geändert werden. Z.B.: _Stat_2

[general] DP_UserForceSet

Typ
string
Default
_Users.ForceSet
Wertebereich
-
Datenpunktelement, welches alle vom Arbeitsplatz unabhängigen Berechtigungsbits für einen Benutzer enthält.

[general] DP_UserId

Typ
uint
Default
_Users.UserId
Wertebereich
-
Datenpunktelement, welches in einem dyn_uint alle in WinCC OA definierten Userids beinhaltet.

[general] DP_UserName

Typ
string
Default
_Users.UserName
Wertebereich
-
Datenpunktelement, welches in einem dyn_string alle in WinCC OA definierten Benutzernamen beinhaltet. Alle Benutzer-Arrays müssen immer gleich lang sein und alle gleichen Indizes definieren einen Benutzer. Beispiele dafür sind: User 0 = UserName[0], UserId[0], Password[0], ... User 1 = UserName[1], UserId[1], Password[1], ...

[general] DP_UserPassword

Typ
string
Default
_Users.Password
Wertebereich
-
Datenpunktelement, welches in einem dyn_string alle in WinCC OA definierten Benutzerpasswörter beinhaltet. Die Passwörter werden nicht verschlüsselt gespeichert (siehe crypt()).

[general] DP_UserPermissions

Typ
string
Default
_Users.Permissions
Wertebereich
-
Datenpunktelement, welches in einem dyn_string alle in WinCC OA definierten Benutzerberechtigungs-Strings beinhaltet. Die Interpretation dieser Strings obliegt dem Parametrierer.

[general] DP_UserPermSet

Typ
string
Default
_Users.PermissionSet
Wertebereich
-
Datenpunktelement, welches alle Berechtigungsbits für einen Benutzer enthält. Die Interpretation dieser Bits obliegt dem Parametrierer.

[general] externErrHdl

Typ
string
WinCC OA verwendet einen internen Error-Handler, der auch zum Schreiben von Logs für jeden Manager verwendet wird. Mit diesem Config-Eintrag kann ein externes Errorhandler-Plug-in definiert werden, welches zusätzlich zum internen WinCC OA Errorhandler geladen werden soll. Für diesen Config-Eintrag muss der Name der Plug-In-Bibliothek angegeben werden, die sich im Ordner bin/ des WinCC OA Installationsverzeichnisses befinden muss, z.B. "SE_Syslog" Wie man einen externen Errorhandler schreibt, ist im API Kapitel beschrieben.

[general] keepAckColorOnMultipleAck

Typ
bool
Default
0
Wertebereich
0|1
Die farbliche Unterlegung quittierter anstehender Alarme bleibt erhalten, auch wenn der Alarm nicht mehr ansteht (=1). Eine KAM Meldung wird immer in der definierten Farbe von "KAM quittiert" dargestellt. Die Unterlegung wird für alle 5 Quittierarten verwendet und unabhängig davon ob die KAM- oder GING-Meldungen oder auch beide quittiert werden. Der Eintrag funktioniert im geschlossenen und offenen Modus.

[general] kerberosRootGroup

Typ
string
Wertebereich
PVSSRoot or any valid domain group, Default: PVSSRoot
Config-Eintrag für die Kerberos-Authentifikation. Dieser Eintrag kontrolliert welche OS-Accounts (Benutzer und Computer) das Recht haben als root-Benutzer zu agieren. Der Benutzer "root" wird wie Unix-root-Benutzer behandelt, d.h. es wird alles erlaubt und nichts kontrolliert. Dies ist ein erwünschtes Verhalten für Treiber aber nicht für ein UI. Daher kann das Recht als root-Benutzer zu agieren auf bestimmte Benutzer eingeschränkt werden, nämlich auf die, die zu einer bestimmten Gruppe gehören.

[general] lang

Typ
string
Default
first 'langs' entry
Wertebereich
one of project languages
Verwenden Sie den Eintrag, um eine Projektsprache als aktive Sprache für das UI zu setzen. In dieser Sprache werden mehrsprachige Texte im UI angezeigt. Es kann auch die Option "auto" verwendet werden, um das WinCC OA User Interface automatisch auf die Benutzer-Anzeigesprache zu setzen. Benutzer-Anzeigesprache unter Windows: Systemsteuerung -> Region und Sprache -> Anzeigesprache Beachten Sie, dass die Sprache, die über den lang-Eintrag gesetzt wird, eine Projektsprache sein muss. Es kann eine Anzeigesprache für das UI nicht gesetzt werden, wenn die Sprache nicht beim Anlegen des Projektes als Projektsprache selektiert wurde.

[general] langs

Typ
string
Wertebereich
project languages
'locale'-String(s) der Sprachen, die im WinCC OA Projekt unterstützt werden sollen. Mehrfache Einträge von "langs" ergibt entsprechend mehrere verwendbare Sprachen. Die Spracheinträge müssen eindeutig sein. Die Einträge dürfen nach dem Generieren der Datenbank nicht mehr geändert werden. Beispiel: langs = "de_AT.utf8" langs = "en_US.utf8" langs = "hu_HU.utf8"

[general] limitCryptVersion

Typ
int
Default
0
Wertebereich
0|3|4
0 bedeutet, dass es keine Einschränkung gibt, alle Versionen, einschließlich v4, sind erlaubt. 3 begrenzt auf Version 3 (wie in 3.19 und älteren Versionen). 4 erlaubt auch Version 4. Die Funktion crypt() führt automatisch eine Herabstufung auf die maximal zulässige Version durch. Wenn also limitCryptVersion=3, dann erzeugt crypt("pwd", 4) das gleiche Hash-Format wie crypt("pwd", 3).

[general] lowestAutoManNum

Typ
unsigned integer
Default
1 | 7
Wertebereich
1-255
Dieser Wert gibt an, ab welcher Managernummer der Data-Manager die Nummern frei vergeben darf. Der Data-Manager vergibt die Managernummer selbst, wenn der Manager mit '-num 0' bzw. im Fall von UI und ASCII, wenn diese ohne -num Argument gestartet wurden. Der Eintrag wird nur vom Data-Manager ausgewertet. Der Defaultwert ist bei redundanten Projekten 7.

[general] lowestAutoManNumUI

Typ
unsigned
Default
1 | 7
Wertebereich
1-255
Der Eintrag "lowestAutoManNumUI" gibt die niedrigste Managernummer für UIs vor. Der Eintrag "lowestAutoManNum" in der Config-Datei setzt auch lowestAutoManNumUI. Will man also beide Werte getrennt setzen, muss lowestAutoManNum VOR "lowestAutoManNumUI" in der Config-Datei stehen. Der Default für "lowestAutoManNumUI" in redundanten Projekten ist 7, ansonsten 1.

[general] maxBcmBufferSize

Typ
unsigned integer
Default
10000
Wertebereich
>1000
Obere Grenze für den BCM Output Buffer zu einem Manager in KByte. Wird die Grenze für 'bcmBufferLimitTimeout'-Sekunden überschritten, wird die Verbindung zum betroffenen Manager geschlossen. Ein unendliches Limit bzw. Deaktivierung dieses Config-Eintrages ist nicht möglich.

[general] maxConnectMessageSize

Typ
unsigned integer
Default
100
Wertebereich
>=0
Gibt die maximale Anzahl an Datenpunkten pro dpConnect an. Ein Wert von 0 gibt an, dass keine Limitierung angewandt wird.

[general] maxLogFileSize

Typ
unsigned integer
Default
10
Wertebereich
>=0
Gibt die maximale Größe der Datei <proj_dir>/log/PVSS_II.log in MB an (0 = unbegrenzt). Der Eintrag wird von allen Managern und Treibern (für die jeweils eigenen Log-Dateien) ausgewertet. Wird diese Größe überschritten, so wird die Datei in PVSS_II.log.bak umbenannt und eine neue Datei erstellt. Ein bestehendes File PVSS_II.log.bak wird dabei überschrieben. Anschließend wird unter Windows das Skript postLogFileHandler.cmd bzw. unter Linux postLogFileHandler.sh aufgerufen. Die Größe der Log-Datei wird alle 30 Sekunden (bei Last auch länger) geprüft und kann daher beim Umbruch von der Einstellung deutlich nach oben abweichen (je nach Schreibgeschwindigkeit auf die Log-Datei).

[general] messageDiagSec

Typ
unsigned integer
Default
30
Wertebereich
0 - MAX_UINT
Ist der Eintrag 0 wird die Message-Statistik und die Config-Statistik abgeschaltet. Jeder andere positive Wert gibt an, nach wie vielen Sekunden die Statistik auf die _Stat Datenpunkte geschrieben wird. Ein Eintrag < 0 wird jedoch vom Wert des Datenpunktes _Stat_Message.SecsToRefresh:_original.._value überschrieben.

[general] parallelCtrlADO

Typ
bool
Default
0
Wertebereich
0|1
Aktiviert die parallele (multi-thread) Abarbeitung von Datenbankoperationen in der Control-Erweiterung 'CtrlADO'. Im Standardfall werden die Abfragen an die Datenbank einzeln verschickt, da eine parallele (thread-save) Unterstützung des Datenbanksystems nicht gewährleistet sein muss.

[general] paramLang

Typ
string
Default
first 'langs' entry
Wertebereich
one of project languages
'locale'-String der Sprache, in der sprachabhängige Texte parametriert werden. Diese Texte werden dann für eine automatisierte Übersetzung verwendet.

[general] password

Typ
string
Das Passwort für den im Config-Eintrag "userName" genannten Benutzer.

[general] pmonPort

Typ
integer
Default
4999
Wertebereich
1024-65535
Der Port auf dem der Pmon via TCP/IP kommuniziert.

[general] proj_path

Typ
string
Definiert den Pfad zu dem Verzeichnis, in dem sich die dynamischen Dateien (projektbezogene Dateien, z.B.: Datenbank) befinden.

[general] proj_version

Typ
string
Kennzeichnet die WinCC OA-Version, mit der das aktuelle Projekt erstellt oder zuletzt bearbeitet wurde.

[general] pvss_path

Typ
string
Definiert den Pfad zu dem Verzeichnis, in dem sich die statischen Dateien (Executables, Error-Texte, Icons, etc.) von WinCC OA befinden.

[general] refuseCNS

Typ
bool
Default
0
Wertebereich
0|1
Gibt an, ob ein Manager CNS-Daten der Identification im Speicher halten soll. CNS-Daten werden zwar weiterhin mit der Identification zum Manager übertragen, der Manager verwirft sie allerdings beim Empfang, wenn der Config-Eintrag aktiviert wurde. Bitte beachten Sie diese Einstellungen für die Sektionen [event] und [valarch] andere Default-Einstellungen aufweist.

[general] saveLastValueBit

Typ
unsigned
Default
0
Wertebereich
1-32, 0 = off
Mit einem Eintrag verhindern Sie die Letztwertspeicherung bei Datenpunktelementen, die ein Benutzerbit (1-32) gesetzt haben. Es wird keine Archivierung durchgeführt, auch wenn dieser Datenpunkt ein Archiv-Konfig gesetzt hat. Ist der Wert 0 (Default), werden die Letztwerte aller Datenpunkte gespeichert.

[general] serverSideAuthentication

Typ
bool
Default
0
Wertebereich
0|1
Session Binding wird durch das Aktivieren der serverseitigen Authentifizierung für UI-Manager aktiviert. Wenn ein Access Control Plugin von ETM geladen wird, dann ist Session Binding automatisch aktiv und kann auch nicht wieder deaktiviert werden. Standardmäßig (Standardprojekt) ist das Session Binding deaktiviert. Session Binding (siehe Grundlagen Serverseitige Authentifizierung für UI-Manager) kann unabhängig vom Access Control Plugin (siehe Access Control Plug-in Grundlagen) mit dem Config-Eintrag serverSideAuthentication=1 in der [general]-Sektion aktiviert werden.

[general] statFctActivate

Typ
bool
Default
1
Wertebereich
0|1
Dieser Eintrag deaktiviert gegebenenfalls die Ausführung der statistischen Funktionen im Event-Manager. Es wird beim ersten Zugriff auf die statistischen Funktionen eine (einzige) entsprechende Warnung ausgegeben. Das kann zu Testzwecken verwendet werden, wenn der Eventmanager zuviel Zeit beim Start verbringt und nicht klar ist, wo er diese verliert - die statistischen Funktionen (die je nach Parametrierung sehr viel Zeit in Anspruch nehmen können) lassen sich also wegschalten. Obwohl dieser Eintrag in der [general] Sektion eingetragen wird, wirkt er sich (aus historischen Gründen) nur auf den Event-Manager aus.

[general] statFctInheritCorrValues

Typ
bool
Default
1
Wertebereich
0|1
Das Verhalten der statistischen Funktionen ist in der Config-Datei einstellbar. Der Config Eintrag statFctInheritCorrValues entscheidet, ob Korrekurwerte in die Berechnung der statistischen Funktionen übernommen werden sollen. Standardmäßig werden die Änderungen der Korrekurwerte übernommen. Mit 0 werden die Änderungen nicht übernommen, d.h. die statistischen Funktionen arbeiten wie vor dieser Erweiterung.

[general] statFctLimitForMarkAsCorrected

Typ
integer
Default
0
Wertebereich
0 - 1000
Der Config-Eintrag statFctLimitForMarkAsCorrected (Voraussetzung: statFctInheritCorrValue = 1) legt die Schranke für die angenommenen Korrekturwerte fest. Mit dem Wert 0 werden alle Werte als korrigiert markiert. Werte größer Null markieren die Werte nur ab einer Änderung größer als x%.

[general] statFctMaxIntervalsInPast

Typ
unsigned integer
Default
3
Wertebereich
0 - MAX_UINT
Sind bei einer statistischen Funktion mehr als die mit diesem Config-Eintrag definierten Perioden in der Vergangenheit noch nicht gerechnet (für statistische Funktionen), so werden diese verworfen und es wird eine entsprechende Meldung ausgegeben. Defaultwert ist 3, d.h. auf 3 Intervalle wird gewartet (Intervall ab Intervallende bis zur aktuellen Zeit), ab einem Verzug von 3 Intervallen (ohne Rücksicht auf eine eventuelle Verzögerungszeit bei statistischen Funktionen) werden alle älteren Intervalle verworfen und eine Meldung wird ausgegeben.

[general] statFuncMinInitTimeRange

Typ
int
Default
0
Wertebereich
minimum 0
HINWEIS: Der Config-Eintrag statFuncMinInitTimeRange in der Sektion [general] wird nur für NGA-Projekte berücksichtigt. Zur historischen Initialisierung statistischer Funktionen wird eine dpGetPeriod mit Bonus 1 benötigt. Die dpGetPeriod mit Bonus 1 kann die Leistung in großen Projekten mit dem NGA beeinträchtigen. Wenn Sie diesen Config-Eintrag auf einen anderen Wert als 0 setzen, wird statt dem Ausführen einer Abfrage unter Verwendung von Bonus 1, der Zeitraum von dpGetPeriod in die Vergangenheit und in die Zukunft um den Zeitraum für die Berechnung der statistischen Funktion verlängert. Im Falle, dass mit dieser Vorgehensweise kein Bonus-Wert ermittelt werden kann, wird erneut eine Abfrage mit Bonus 1 ausgeführt um die korrekte Funktionalität sicherzustellen. Der Berechnungszeitrum für eine statistische Funktion wird im PARA-Modul konfiguriert: Config dp_fct -> Registerkarte Synchronisation -> Berechnungszeitraum [sec]. Wenn dieser Zeitraum kleiner als statFuncMinInitTimeRange ist, wird der Bereich stattdessen durch statFuncMinInitTimeRange vergrößert. Mit dem Defaultwert 0, wird das Standardverhalten mit Bonus 1 ausgeführt.

[general] suppressDnsLookupWarnings

Typ
bool
Default
0
Wertebereich
0|1
Wenn die DNS-Auflösung länger als 500ms dauert, wird eine Warnung ausgegeben. Für die die DNS-Auflösung, siehe den Config-Eintrag [general]dnsLookupTimeout. Diese Warnung kann durch Setzen des Config-Eintrags [general] suppressDnsLookupWarnings = 1 deaktiviert werden.

[general] tlsHandshakeTimeout

Typ
uint
Default
5000 msecs
Wertebereich
250-5000 msecs
Dieser Config-Eintrag definiert die Timeout-Dauer für die TLS-Handshake-Verhandlung auf einem sicheren Socket. Wir empfehlen ein Minimum von 250 ms, aber bedenken Sie, dass dies je nach Netzwerkleistung variieren kann. Höhere Werte (mehrere zehn Sekunden) deaktivieren grundsätzlich die DoS-Abwehr.

[general] translateConfig

Typ
string
Default
'' '|'
Spezifiziert den Dateinamen der Übersetzungstabelle und das verwendete Trennzeichen für automatische Übersetzungen. Die Übersetzungstabelle wird im Verzeichnis 'config' gesucht. Die Spalten der Tabelle werden durch das Trennzeichen definiert. Syntax: translateConfig = <Tabellendatei> <Trennzeichen>

[general] translationFile

Typ
string
Default
[automatic]
Definiert den Dateinamen (ohne Suffix) für die Übersetzungstexte pro Projekthierarchie in einer config.level Datei. Jede Projektebene muss einen eindeutigen Namen verwenden. Standardmäßig wird der Projektname verwendet. Wird dieser Eintrag in der Projekt config Datei definiert, dann muss er nach den proj_path Einträgen gesetzt werden.

[general] translationSourceLang

Typ
string
Default
[automatic]
Wertebereich
any known language
Definiert in einer config.level Datei welche Sprache als Referenzsprache für eine bestimmte Ebene der Projekthierarchie verwendet werden soll, falls diese Ebene mehrere Sprachen in existierenden Panels nutzt. Wird dieser Eintrag in der Projekt config Datei definiert, dann muss er nach den proj_path Einträgen gesetzt werden. Hinweis: Normalerweise ist es nicht nötig, diesen Eintrag zu definieren. Er ist hauptsächlich bei Verwendung schon vorhandener legacy Panel Dateien gedacht.

[general] useCMContainerSerialNumber

Typ
string
Default
0-0
Wertebereich
Serial number
Der Config-Eintrag "useCMContainerSerialNumber" definiert welcher Lizenz-Container für die Lizenzierung verwendet wird. Welcher Container verwendet wird, definiert der Config-Eintrag über die Seriennummer des Containers. Das Format der Seriennummer ist "Nummer-Nummer". Die Seriennummer kann direkt von der WIBU WebAdmin-Webseite kopiert werden. Der Defaultwert ist "0-0" und bedeutet, dass der erste Container, der eine EVENT-Manager Lizenz enthält, verwendet wird. Beispiel: [general] useCMContainerSerialNumber = "3-4736110"

[general] useCMLicense

Typ
bool
Default
1
Wertebereich
0|1
Der Config-Eintrag kann verwendet werden, um die WinCC OA-Lizenzierung zu deaktivieren. Standardmäßig ist die WinCC OA-Lizenzierung aktiviert (useCMLicense=1). Um die WinCC OA-Lizenzierung zu deaktivieren, setzen Sie den Eintrag auf 0.

[general] useDbAsIso

Typ
bool
Default
0
Wertebereich
0|1
Ab der WinCC OA-Version 3.16 wird die Erstellung von Projekten mit ISO-Zeichensätzen (z.B. en_US.iso88591) nicht mehr unterstützt. Bereits existierende Projekte werden weiterhin unterstützt und die Konvertierung der ISO-Einstellungen zu utf8-Einstellungen passiert intern. Diese neue Regelung beeinflusst den Update-Vorgang der existierenden Projekte. Folgende Projekte können automatisch konvertiert werden: - Einsprachige Projekte - Mehrsprachige Projekte sofern alle Projektsprachen aus dem gleichen ISO-Zeichensatz stammen (z.B.iso88591). Der Config-Eintrag useDbAsIso wird bei der Konvertierung eines ISO-Projektes in ein Utf8-Projekt, verwendet. Der Config-Eintrag useDbAsIso = 1 wird in der Config-Datei gesetzt.

[general] useNGA

Typ
bool
Default
0
Wertebereich
0|1
Um den NextGen Archiver zu verwenden, muss der Config-Eintrag "useNGA" verwendet werden. Dieser wird automatisch beim Anlegen eines Projektes gesetzt, wenn NGA gewählt wurde. Bei der Umstellung bestehender Projekte auf NGA muss dieser Eintrag manuell gesetzt werden. HINWEIS: Das Umstellen eines bestehenden Projektes auf NGA wird zum momentanen Zeitpunkt NICHT empfohlen!

[general] useNGADirectRead

Typ
bool
Default
0
Wertebereich
0|1
Mittels des Config-Eintrags "useNGADirectRead" (kann in den Sektionen [general], [ui] oder [ctrl] gesetzt werden) kann das Standardverhalten dahingehend angepasst werden, dass die herkömmlichen WinCC OA-Funktionen für das Lesen von historischen Werten die NGA-Funktionen verwenden. Das heißt z.B., dass beim Aufruf von dpGetPeriod() innerhalb des Clients automatisch die "Direct Read"-Variante dpGetPeriodNGA() aufgerufen wird.

[general] useRDBArchive

Typ
bool
Default
0
Wertebereich
0|1
0 = RDB Archiv-Manager ist nicht funktionsfähig. 1 = RDB Archiv-Manager wird aktiviert (Schreiben/Lesen zur RDB). Parallel zur RDB-Archivierung können keine Value Archive (History DB) laufen.

[general] useRDBGroups

Typ
bool
Default
1 if RDB is configured
Wertebereich
0|1
Definiert ob Archivgruppen verwendet werden können (= 1) oder nicht (= 0).

[general] userName

Typ
string
Der Benutzername, den alle Manager beim Starten verwenden. Wenn $USER verwendet wird, wird das durch den aktuellen OS-Benutzer ersetzt. D.h. dass der Manager mit dem aktuellen OS-Benutzer als WinCC OA-Benutzer gestartet wird. Sie können auch die Manageroption -user $user verwenden, z.B. WCCOActrl -user $user.

[general] useValueArchive

Typ
bool
Default
1
Wertebereich
0|1
Per Default ist dieser Eintrag auf 1 gesetzt, das heißt dass die History DB zur Speicherung der Wertehistorie verwendet wird. Die Verwendung der Datenarchivierung in der RAIMA-Datenbank wird offiziell nicht mehr unterstützt. Historische Alarminformationen können weiterhin in der RAIMA-Datenbank gespeichert werden. Dieser Config-Eintrag darf daher nicht auf 0 gesetzt werden.

[httpServer]

Definiert Optionen für den httpServer, der innerhalb eines CTRL Managers läuft

[httpServer] accessLog

Typ
bool
Default
0
Wertebereich
0|1
Definiert ob der HTTP Server die IP Adresse von jeder eingehenden Verbindung in das Log-File log/httpAccess.log schreiben soll

[httpServer] allowPanelParam

Typ
bool
Default
0
Wertebereich
0|1
Definiert ob der HTTP Server den "panel" Query Parameter in der URL für den Start vom ULC User Interface Manager erlaubt oder nicht.

[httpServer] autoEncryption

Typ
bool
Default
1
Wertebereich
0|1
Definiert ob der HTTP Server alle Dateien unter dem "panels" sowie unter dem "scripts" Ordner automatisch verschlüsselt, bevor diese zum Client übertragen werden. Hinweis: Dies wirkt sich negativ auf die Größe der zu übertragenden Dateien aus, da verschlüsselte Dateien durch gzip Kompression nicht mehr kleiner werden.

[httpServer] compatIgnoreForwardedFor

Typ
bool
Default
0
Wertebereich
0|1
NV Kompatibilitätsmodus. Definiert, welche IP-Adresse für ULC UX Clients verwendet wird, die über einen Reverse Proxy verbunden sind: 0: die ursprüngliche IP-Adresse des Browsers, auf dem der ULC UX Client läuft, wird aus dem HTTP-Header X-Forwarded-For gelesen und für myDisplayName() und UI-Einstellungen verwendet. 1: die IP-Adresse des Reverse Proxy wird für myDisplayName() und UI-Einstellungen verwendet (kompatibel zu Versionen vor 3.19 P009).

[httpServer] compressionCacheEnabled

Typ
bool
Default
1
Wertebereich
0|1
Definiert ob der HTTP Server einem dazu fähigen Client gzip komprimierte Dateien überträgt, welcher der HTTP Server dann automatisch erzeugt und unter dem <proj_path>/cache Verzeichnis ablegt. Der HTTP Server stellt sicher, daß eine Änderung des Dateizeitstempels der originalen Datei zur Aktualisierung der komprimierten Datei im cache erfolgt, wenn die Datei das nächste mal angefragt wird.

[httpServer] externalAuthHeader

Typ
string
Definiert den Namen eines speziellen HTTP Headers, welcher, wenn vorhanden, dazu verwendet wird den User der Anfrage zu definieren, welcher schon von einer externen Applikation authentifiziert wurde. Der HTTP Server wird in diesem Fall keine Authentifizierung dieser Anfrage mehr durchführen und verläßt sich auf die Vertrauenswürdigkeit der externen Applikation. Hinweis: Wenn dies falsch verwendet wird, ist dies ein Sicherheitsleck.

[httpServer] externalAuthParam

Typ
string
Definiert den Namen eines speziellen URL Query Parameters, welcher, wenn vorhanden, dazu verwendet wird den User der Anfrage zu definieren, welcher schon von einer externen Applikation authentifiziert wurde. Der HTTP Server wird in diesem Fall keine Authentifizierung dieser Anfrage mehr durchführen und verläßt sich auf die Vertrauenswürdigkeit der externen Applikation. Hinweis: Wenn dies falsch verwendet wird, ist dies ein Sicherheitsleck.

[httpServer] favIcon

Typ
string
Default
/pictures/StandardIcons/Console_20.png
Definiert den relativen Pfad zum Icon, welches bei Anfrage nach "/favicon.ico" geliefert wird.

[httpServer] httpHeader

Typ
string
Default
See Description
Der Eintrag erlaubt es Inhalte des HTTP Headers zu setzen. Hiermit können HTTP Header spezifische Einstellungen für die HTTP(S) Kommunikation konfiguriert werden. Der httpHeader kann mehrmals gesetzt werden um mehrfache Einstellungen vorzunehmen. Jeder Eintrag setzt einen zusätzlichen HTTP Header für die HTTP(S) Requests. Default: httpHeader = "X-XSS-Protection: 1; mode=block" httpHeader = "X-Content-Type-Options: nosniff" httpHeader = "Cache-Control: private" httpHeader = "Cache-Control: must-revalidate" Um alle HTTP Header Einträge (inklusive des Default Werte) zu entfernen kann folgender Eintrag gesetzt werden: httpHeader = "-empty list-" Hinweis: Mandatory Header Einträge werden dadurch nicht entfernt.

[httpServer] indexPage

Typ
string
Default
/data/index.html
Definiert die Startseite, die der HTTP Server liefern soll, wenn die root URL "/" angefragt wird. Dies wird nur verwendet, wenn die root URL "/" nicht schon mit httpConnect() registriert wurde.

[httpServer] loadBalance

Typ
string
Wertebereich
hostname [max=5]
Dient der Lastverteilung für gestartete ULC 2.0 User Interface Manager. Dieser Eintrag darf beliebig oft verwendet werden. Jeder Eintrag definiert einen weiteren Host, auf dem ein HTTP Server läuft, der ULC 2.0 User Interface Manager starten darf. Die maximale Anzahl der UIs auf diesem Rechner wird mit der Option max=x angegeben. Fehlt die max Option, wird 5 angenommen. Beispiel: loadBalance = "win10-140 max=10 exts=extern.etm.at:445 ext=extern.etm.at:82" loadBalance = "win10-141 max=10 exts=extern.etm.at:446 ext=extern.etm.at:83" exts= wird dann verwendet, wenn die Verbindung verschlüsselt ist, also wenn per https:// gearbeitet wird. ext= wird dem client (dem ULC JavaScript Teil) gesendet, wenn die Verbindung nicht verschlüsselt ist, also wenn per http:// gearbeitet wird. Hinweis: In einem redundanten System, wenn dieser config Eintrag nicht angegeben ist, werden beide Redu-Server zur Lastverteilung herangezogen (falls der HTTP Server auf einem der beiden Redu-Server läuft). In diesem Fall ist es nötig, den CTRL Manager mit der Option -connectToRedundantHosts zu starten, da ansonsten der andere Server nicht weiss, dass der CTRL Manager läuft, da der Event Manager nur auf seinen lokalen connections dp schreibt.

[httpServer] pngCompression

Typ
int
Default
100
Wertebereich
0..100
Definiert die Kompression der übertragenen png Daten. 0 = keine Kompression (schnell, aber nutzt mehr Bandbreite), 100 = max Kompression (langsamer, nutzt weniger Bandbreite)

[httpServer] strictTransportSecurityMaxAge

Typ
uint
Default
31536000 (= ~1 year)
Legt den Wert für den "max-age" Parameter fest der für die Strict-Transport-Security des HTTP Servers verwendet wird. Wenn der Wert 0 oder kein Wert gesetzt wurde wird die Strict-Transport-Security nicht verwendet. Hinweis: Sollten Probleme mit untrusted Zertifikaten auftreten, kann dieser Wert auf 0 gesetzt werden. Dies öffnet jedoch ein Sicherheitsleck.

[httpServer] uiArguments

Typ
string
Default
-p vision/login.pnl -centered -iconBar -menuBar
Startparameter für den Ultralight Client 2.0. Es wird ein UI Manager gestartet, daher sind die selben Kommandozeilen-Argumente wie beim UI Start aus der Console möglich. Der HTTP Server gibt jedoch folgende Argumente immer automatisch mit: -lang XXXX ... aktive Sprache für das UI, abhängig von der vom Web-Browser empfangenen gewünschten Sprache -server XXXXX ... Wenn der HTTP Server nicht auf dem selben Rechner wie der Event Manager läuft, so wird davon ausgegangen, dass der UI Manager die Projekt-Files (Panels, CTRL-Libs, etc.) nicht von der lokalen Platte lesen kann, sondern das UI wird sich hiermit die Files vom Hauptserver per HTTP Request laden. Dies benötigt einen laufenden HTTP Server auf dem Rechner auf dem der Event Manager läuft (im Falle eines redundanten Projektes müssen somit auf beiden Redu Rechnern jeweils ein HTTP Server laufen) Dieses Verhalten kann mit dem config Eintrag 'uiUsesMainServerAsFileServer = 0' deaktiviert werden

[httpServer] uiStartPermissionBit

Typ
int
Default
-1
Definiert das Benutzer-Berechtigungsbit welches gesetzt sein muss, damit der User einen ULC 2.0 Client verwenden kann. Damit der HTTP Server den User der Anfrage kennt, muss er mit Authentifizierung betrieben werden (z.B. "Basic", "Negotiate").

[httpServer] uiUsesMainServerAsFileServer

Typ
bool
Default
1
Wertebereich
0|1
Definiert, ob der HTTP Server, falls er auf einem anderen Host als der Event Manager läuft, die -server XXX Option dem ULC 2.0 User Interface übergibt, sodass sich dieses die Projekt-Files vom Hauptserver via HTTP Requests holt, anstatt diese von der lokalen Platte zu lesen. Es wird allerdings empfohlen, die Projekt-Files lokal auf dem HTTP Server zu halten und diese Option auf 0 zu setzen, wie in der Dokumentation zur ULC UX Architektur beschrieben.

[httpServer] ulcAliveTimeout

Typ
uint
Default
60
Der Timeout in Sekunden nachdem ein UI Manager eines nicht erreichbaren ULC UX Clients (z.B. durch einen Ausfall des Netzwerks) beendet wird. Bei einem Wert von 0 wird kein Timeout angewandt Bei einem Wert der innerhalb des Intervalls [1..10] liegt wird ein Timeout von 10 Sekunden angewendet Wenn der Wert nicht gesetzt wird erfolgt ein Timeout nach 60 Sekunden

[httpServer] ulcUseClientTimeZone

Typ
bool
Default
0 on Windows, 1 on all other platforms
Wertebereich
0|1
Definiert welche Zeitzone zur Anzeige von Zeitwerten in ULC UX Clients verwendet wird. Bei 1(true) wird die Zeitzone des ULC UX Clients angewendet, bei 0(false) die Zeitzone des Servers. Aufgrund der in Windows eingeschränkten Unterstützung für die Verwendung einer anderen Zeitzone für einen einzelnen Prozess ist das Defaultsetting hier 0. Sollte ulcUseClientTimeZone in Windows auf 1 gesetzt werden können folgende Probleme auftreten: unvollständige historische Informationen über die Zeitzonen ungenaue oder fehlende Zeitangaben für die Wechsel zwischen Sommer- und Winterzeit keine Unterstützung der Sommerzeit auf der Südhalbkugel

[httpServer] XFrameOptions

Typ
string
Default
SAMEORIGIN
Wertebereich
none
Eine Sicherheitsmaßnahme verbietet, Inhalte von einer anderen Webseite einzubetten. Man spricht auch von ?clickjacking? Protection. Um trotzdem Inhalte von einem fremden Server auf der eigenen verwalteten Webseite anzuzeigen, gibt es den HTML Header Parameter X-Frame-Options der dieses Verhalten konfigurierbar macht. Dieser Parameter muss am fremden Server gesetzt sein und die URL des eigenen Server beinhalten um fremde Inhalten auf den eignen Server darstellen zu können. Es gibt vier verschiedene Optionen für diesen Config-Eintrag: "none": deaktiviert den XFrameOptions-Eintrag. "DENY": Fremde Inhalte von einem fremden Server werden nicht geladen. "SAMEORIGIN": Es werden nur Inhalte vom eigenen Server geladen. "ALLOW-FROM": Es können nur Inhalte geladen werden für welche der X-Frame-Options HTML Header Parameter korrekt gesetzt wurde. Muss am fremden Server konfiguriert werden. Beispiel: Erster Server: www.myFirstServer.com Zweiter Server: www.mySecondServer.com Um den Inhalt des zweiten Servers innerhalb des ersten Servers anzuzeigen (z.B. mittels iframe) muss der zweite Server innerhalb des HTML Headers die der Parameter "XFrameOptions: ALLOW-FROM http://www.myFirstServer.com" mitliefern. Dies kann über folgenden Eintrag innerhalb der Config des zweiten Webservers konfiguriert werden. [httpServer] XFrameOptions = "ALLOW-FROM http://www.myFirstServer.com"

[iec]

Einstellungen für den IEC Treiber

[iec] asymmInit_101

Typ
unsigned
Default
0
Wertebereich
0-1
Nur für IEC 101. Wenn der Eintrag auf 1 gesetzt wird, wird der Link immer nach dem Peer aufgebaut.

[iec] autoAnswerReadComm

Typ
string
Default
No
Wertebereich
Yes|No
Für IEC 101 und 104. Gibt an, ob der Treiber automatisch auf Read Telegramme (Typ 102) antworten soll. Dieser Config-Eintrag ist nur sinnvoll, wenn der Treiber als 'Controlled Station' und nicht wie üblich als 'Controlling Station' arbeitet.

[iec] autoGQ

Typ
int
Default
3
Wertebereich
0-3
Für IEC 101 und 104. Generalabfrage (GQ) nach Verbindungsaufbau (autoGQ <mode>). <mode>: 0 ... keine automatische GQ 1 ... automatische GQ bei Verbindungsaufbau 2 ... automatische GQ bei Redundanzumschaltung 3 ... sowohl als auch Für eine GQ darf in der Common Address (ersten 2 Bytes von links) der Lokalen/Globalen Liste kein Wildcard ('*') vorkommen! Vorraussetzung für die automatische GQ sind korrekt ausgefüllte lokale bzw. globale Listen für alle Verbindungen.

[iec] autoNegativeConf

Typ
string
Default
No
Wertebereich
Yes|No
Für IEC 101 und 104. Automatische negative Befehlsbestätigung. Bestätigung der Befehle im IEC 60870 wird als Spiegel des Befehlstelegrams durchgeführt. Im überwachten Stationsmodus muss das über ein CTRL-Script passieren. Das Script setzt voraus, dass alle entsprechenden Adresse parametriert sind. Wenn eine positive Bestätigung gesendet werden soll, muss ein Script erstellt werden. Mit dem Config-Eintrag kann definiert werden, dass der IEC-Treiber automatisch eine negative Antwort auf einen Befehl sendet, wenn dieser nicht auf eine Input-Adresse gemappt werden kann. Der Defaultwert des Config-Eintrages ist "No". Der Config-Eintrag gilt nur für Befehlstelegramtypen im Bereich von C_SC_NA_1..C_BO_TA_1.

[iec] balanced_101

Typ
string
Default
No
Wertebereich
Yes, No
Nur für IEC 101. Modus des Treibers: "Yes" Balanced, "No" Unbalanced.

[iec] certPath

Typ
string
Relativer Pfad des Certificate Stores unter <project>/data/IEC61850/. Das Verzeichnis wird durch den Config-Eintrag festgelegt, z.B.: [iec]certPath="myCertificates" Erstellt das Verzeichnis <Projektpfad>\data\IEC61850\myCertificates.

[iec] checkDSR_101

Typ
string
Default
No
Wertebereich
Yes|No
Nur für IEC 101. Gibt an, ob die DSR Leitung vor dem Senden eines Telegramms geprüft werden soll. Wenn die Leitung aktiv ist, wird das Telegramm geschickt ansonsten wird eine Fehlermeldung ausgegeben und das Telegramm wird verworfen.

[iec] compareTransType

Typ
string
Default
Yes
Wertebereich
Yes|No
Nur für IEC 104. Ist compareTransType = "Yes" so wird bei einem Adressvergleich zusätzlich zur "Common-Object"-Adresse (IOA) und "Information-Object"-Adresse auch die Art der Daten verwendet. Das ist erforderlich wenn im gleichen Gerät verschiedene Typen die gleiche IOA haben. Typischerweise ist das nicht notwendig, da die IOA im Gerät eindeutig sein sollte. Arbeitet der Treiber als "Controlled Station" und ist der Config-Eintrag autoAnswerReadComm auf "Yes" gesetzt, muss compareTransType auf "No" gesetzt werden, damit die Leseanforderungen richtig beantwortet werden können.

[iec] connection

Typ
string string int int
Nur für IEC 104. Gibt an, welche Verbindungen der Treiber unterstützen soll: <name> <host> <port> <timeout> name - (logischer) Name dieser Verbindung. Für jede Verbindung muss es einen Datenpunkt "_<name>" vom Typ "_IecConnection" geben. Diese DPs werden automatisch im Panel für Verbindungen angelegt. Bei redundanten Treibern wird der zweite Verbindungsname automatisch angelegt ("*_2"), wodurch der Verbindungsname auf beiden Servern gleich ist und nicht für jeden Host einzeln angegeben werden muss (seit WinCC OA Version 3.9). host - Name (oder IP-Adresse) des Hosts, zu dem sich der Treiber verbinden soll bzw. von dem er eine Verbindung akzeptiert. port - Portnummer, wenn der Treiber ein TCP-Client ist und von sich aus eine Verbindung versucht, oder 0, wenn der Treiber ein TCP-Server ist. Im letzteren Fall muss der Eintrag "tcpServerPort" vorhanden sein. timeout - Timeout, Zeitintervall, in dem der Treiber eine Verbindung auf TCP-Ebene versucht, wenn er TCP-Client ist. Es kann auch optional der lokale Hostname/IP-Adresse und lokaler Port angegeben werden z.B. connection = "IEC_Server" "host1$localip:9999" 2404 10 . Das bedeutet, dass der lokale Socket den host localip und den lokalen Port 9999 verwendet. Wird nur "host1" angegeben, werden die Socketparameter vom Betriebssystem bestimmt.

[iec] connection_101

Typ
string string string
Nur für IEC 101. Definiert eine IEC 101 Verbindung auf einem oben definierten Device. <name> <devname> <101 Linkadresse> <name> - (logischer) Name dieser Verbindung analog zu einer Iec104 Verbindung (Datenpunktname aus Verbindungspanel) <devname> - Name eines device_101 <101 Linkadresse> - Logische Adresse des Iec 101 Partners im unbalanced Mode

[iec] connUserByteCOT

Typ
int
Default
0
Wertebereich
0-4
Für IEC 101 und 104. Dieser Eintrag bietet die Möglichkeit die Übertragungsursache, die ausgangsseitig in dem IEC Telegramm verschickt wird, in einem Userbyte anzugeben. Der Wert gibt die Userbytenummer an. Beim Wert 0 findet keine Abbildung statt.

[iec] connUserByteOrigin

Typ
int
Default
0
Wertebereich
0-4
Für IEC 101 und 104. Dieser Eintrag bietet die Möglichkeit die Herkunftsadresse, die ausgangsseitig in dem IEC Telegramm verschickt wird, in einem Userbyte anzugeben. Der Wert gibt die Userbytenummer an. Beim Wert 0 findet keine Abbildung statt.

[iec] connUserByteQ

Typ
int
Default
0
Wertebereich
0-4
Für IEC 101 und 104. Dieser Eintrag bietet die Möglichkeit die Qualitätsinformation, die ausgangsseitig in dem IEC Telegramm verschickt wird, in einem Userbyte anzugeben. Der Wert gibt die Userbytenummer an. Beim Wert 0 findet keine Abbildung statt.

[iec] defaultImpulseTime

Typ
int
Default
8
Wertebereich
0..255
Für IEC 101 und 104. Bei den Impulsbefehlen, die vom Treiber an die SAT-Komponenten geschickt werden, kann eine Zeitdauer parametriert werden (siehe Kapitel Qualitätskennung). Damit nicht zu jedem Befehlsdatenpunkt diese Zeitdauer parametriert werden muss, gibt es die Möglichkeit, mit diesem Eintrag einen Defaultwert anzugeben. Dieser ist als Byte so anzugeben, wie er im SAT-Format erwartet wird (siehe unten). Fehlt dieser Eintrag in der Konfigurationsdatei, dann wird als Defaulteinstellung 8 (= 00001000) angenommen, was einer Schaltzeit von 100 ms (= 2x50 ms - siehe unten) entspricht. Folgende Informationen sind in diesem Byte enthalten: Zeit (Bit 0 und 1) 0 für 50 ms, 1 für 500 ms, 10 für 1 sek, 11 für 10 sek. Faktor (Bit 2-6) 1..31 Schaltzeit = Zeit - Faktor OW (Bit 7) 1...Überschreibt bereits laufendes Kommando 0...Überschreiben nicht erlaubt Beispiel Setzt den Defaultwert für die Schaltzeit der Impulsbefehle auf 50 ms. defaultImpulseTime = 4 Setzt den Defaultwert für die Schaltzeit der Impulsbefehle auf eine Sekunde mit gesetztem Überschreibbit. defaultImpulseTime = 134

[iec] defaultLinkAddress_101

Typ
int
Default
0
Nur für IEC 101. Das ist ein Adressfeld in 101-er Telegrammen.

[iec] device_101

Typ
string string string
Nur für IEC 101. Definiert, welche Devices für ein IEC 101 Protokoll verwendet werden. <devname> <typ> <Gerätedaten> <devname> - Symbolischer Name des Gerätes um eine Verbindung zu einer Connection_101 zu erhalten. <typ> - "V24" oder "V24s" für eine serielle Verbindung. "V24s" bedeutet, dass im redundanten System das Device nur am aktiven System geöffnet wird. <Gerätedaten> - Je nach Type werden hier die gerätespezifischen Daten erfasst. Gerätedaten ist ein String der Form "port"baud,parity,datenbits,stopbits; Für "V24" z.B. "com1,9600,e,8,1". Beispiel für einen device Eintrag: "Device" "V24" "com1;9600,e,8,1" Damit die RTS Leitung beim Senden angesteuert wird, muss im "device_101" Eintrag der RTS Mode spezifiziert werden. Mögliche Modi sind: 0 = RTS Disabled 1 = RTS Enabled 2 = RTS Handshake 3 = RTS Toggle Beispiel für einen device Eintrag mit RTS Toggle Mode: "Device" "V24" "com1;9600,e,8,1:3" Die Vor- und Nachlaufzeiten im RTS Mode können mit den Config-Einträgen "preDelayRTS" und "postDelayRTS" eingestellt werden (eine Beschreibung dieser Einträge finden Sie auch in dieser Tabelle).

[iec] discardBlocked

Typ
string
Default
No
Wertebereich
Yes|No
Für IEC 101 und 104. Wenn der Config-Eintrag discardBlocked = "Yes" gesetzt wird, werden alle Daten zu "Blocked" Information Objects im Treiber verworfen. Weitere Informationen zur Quality Information "Blocked" finden Sie auf der Seite Qualitätskennung.

[iec] extendedCOT

Typ
string
Default
Yes
Wertebereich
Yes|No
Für IEC 101 und 104. Beim config Eintrag extendedCOT = "Yes" wird beim Abbilden der IEC "Cause of Transmission" auf den Datenpunkt in die Bits 16-31 (d.h. ins obere 16-Bitwort) der Verbindungsindex eingetragen. Dieser Index hat nur bei redundanten Verbindungen Sinn. Eingangsseitig kann man ihn dazu benutzen, die Verbindung festzustellen über die ein Telegramm gekommen ist, und ausgangsseitig kann man damit ein Telegramm über eine bestimme Verbindung schicken. Der Config Eintrag bedeutet aber auch, dass man eingangsseitig die oberen 16 Bits ausmaskieren muss, wenn man nur die IEC COT haben will.

[iec] ftInSubDir

Typ
string
Default
iecIn
Für IEC 101 und 104. Mit diesem Eintrag kann das Unterverzeichnis für eingehende Dateien der Dateiübertragung definiert werden. Dieses Unterverzeichnis wird nicht automatisch im "data"-Verzeichnis des aktuellen Projektes angelegt. Es muss manuell angelegt werden.

[iec] ftMaxQueuedReq

Typ
unsigned
Default
4
Wertebereich
1..100
Für IEC 101 und 104. Mit diesem Eintrag kann man angeben bis zu welcher Ausgangsqueuegröße Dateisegmente verschickt werden. Damit ist es möglich den Anteil des Dateitransfers am Gesamttelegrammverkehr zu begrenzen. Wird der Wert hoch gewählt, so wird eine Datei zwar schneller verschickt, aber andere Telegramme müssen dadurch eventuell länger in der Ausgangsqueue warten, was für Befehle meistens nicht erwünscht ist.

[iec] ftMaxSectionGap

Typ
int
Default
0
Wertebereich
0,1
Für IEC 101 und 104. Mit dem Config-Eintrag kann eingestellt werden, dass ein Filetransfer nicht unterbrochen wird, obwohl gewisse angefragte Sektionen nicht existieren. Defaultwert = 0 und bedeutet, dass der Treiber unterbricht wenn eine Sektion fehlt. Beim Wert = 1 überspringt der Treiber die fehlenden Sektionen.

[iec] ftOutSubDir

Typ
string
Default
iecOut
Für IEC 101 und 104. Mit diesem Eintrag kann das Unterverzeichnis für ausgehende Dateien der Dateiübertragung definiert werden. Dieses Unterverzeichnis wird nicht automatisch im "data"-Verzeichnis des aktuellen Projektes angelegt. Es muss manuelle angelegt werden.

[iec] ftRootDir

Typ
string
Default
'data' project directory
Für IEC 101 und 104. Definiert das Root-Verzeichnis für ein- und ausgehende Dateien.

[iec] ftSegmentsPerLoop

Typ
unsigned
Default
1
Wertebereich
1..10
Für IEC 101 und 104. Dieser Config-Eintrag definiert wie viele Dateisegmente in einem internen Treiberzyklus (Default 10ms) verschickt werden.

[iec] ftTimeout

Typ
unsigned
Default
10
Wertebereich
1..1000
Für IEC 101 und 104. Definiert das Zeitintervall in Sekunden, nachdem eine Antwort auf eine Dateiübertragungsanforderung erhalten werden muss.

[iec] GQResponseWithoutTimestamp

Typ
string
Default
No
Wertebereich
Yes|No
Für IEC 101 und 104. Um eine Generalabfrage beantworten zu können, muss ein CTRL-Skript die entsprechenden Output-Datenpunkte setzen. Um das Senden von Telegrammen ohne Zeit zu ermöglichen, muss der Config-Eintrag GQResponseWithoutTimestamp = "Yes" gesetzt werden. Der Defaultwert ist "No". Das bedeutet, dass ein dpSet auf eine Output-Adresse mit einem Typ, der einen Zeitstempel enthält ,(z.B. Typ 30) ein Telegramm ohne Zeitstempel (z.B. Typ 1)sendet, wenn COT im GA-Bereich 20....36 ist. Dies gilt nur für die Zeitstempel der Telegrammtypen M_SP_NA_1, M_DP_NA_1, M_ST_NA_1, M_BO_NA_1, M_ME_NA_1, M_ME_NB_1, M_ME_NC_1, M_IT_NA_1.

[iec] iecDpName

Typ
string
Default
_Iec_num
Für IEC 101 und 104. Obsolete seit Version 3.9. Name des internen Datenpunktes vom Typ "_Iec". Bei redundanten Treibern muss sich der Name wie folgt unterscheiden, z.B. "_Iec_1" und "_Iec_1_2".

[iec] iecTlsCert

Typ
string
Default
iec.crt
Nur für IEC 104. Name der Zertifikatdatei für TLS-Verschlüsselung. Die Datei muss sich im "certs" Verzeichnis des PKI Verzeichnisses befinden.

[iec] iecTlsCertCA

Typ
string
Default
iecRoot.crt
Nur für IEC 104. Diese Datei enthält die Zertifikate der Root Certificate Authority, mit welcher die Zertifikate der Gegenstelle signiert sein müssen. Diese Datei kann mehrere Zertifikate enthalten. Diese Datei muss im "certs" Unterverzeichnis des PKI Verzeichnisses liegen.

[iec] iecTlsCertKey

Typ
string
Default
iec.key
Nur für IEC 104. Name der Datei, die den privated Schlüssel zur Zertifikatdatei für TLS-Verschlüsselung enthält. Die Datei muss sich im "private" Verzeichnis des PKI Verzeichnisses befinden.

[iec] iecTlsCertStore

Typ
string
Default
<WinCC OA Project>/data/iec104
Nur für IEC 104. Pfad zum Verzeichnis, in dem sich das Public-Key-Infrastruktur-Verzeichnis (PKI) des IEC Treibers befindet.

[iec] iecTlsCipherSuite

Typ
string
Default
AES256-SHA256,AES256-SHA
Nur für IEC 104. Eine durch Kommas getrennte Liste alle für die Kommunikation verwendbaren Verschlüsselungen. Der Server wählt die erste Verschlüsselung seiner Liste, die auch in der Liste des Clients zu finden ist.

[iec] iecTlsCrl

Typ
string
Nur für IEC 104. Optionaler Name der Datei für die "Certificate Revocation List. Diese Datei muss im "crl" Unterverzeichnis des PKI Verzeichnisses liegen.

[iec] master_101

Typ
string
Default
Yes
Wertebereich
Yes|No
Nur für IEC 101. Master oder Slave im unbalanced Modus (in balanced Modus nicht verwendet): "Yes" Master (Default) , "No" Slave.

[iec] maxOSI7Len_101

Typ
unsigned
Default
247
Wertebereich
> 64
Nur für IEC 101. Dieser Eintrag bestimmt die maximale Größe in Bytes von gesendeten IEC Telegrammen. Der Config-Eintrag bestimmt die maximale Länge des OSI7 Datenbereichs. Es ist damit möglich die Telegrammlänge kleiner als in der Norm vorgesehen zu halten.

[iec] maxOutputQueue_101

Typ
unsigned
Default
128
Wertebereich
>= 0
Nur für IEC 101. Dieser Eintrag bestimmt die maximale Größe der Ausgangsqueue (max. Anzahl von Telegrammen). Ist die Ausgangsqueue voll, so werden die Telegramme verworfen und eine Fehlermeldung wird ausgegeben.

[iec] max_k

Typ
int
Default
12
Wertebereich
1-32767 (2^15-1)
Nur für IEC 104. Gibt an, wie viele Telegramme der Treiber ohne Quittierung ausstehend haben darf. Wird diese Zahl erreicht, schickt der Treiber keine weiteren Telegramme mehr an den Partner, bis dieser die ausstehenden Quittierungen verschickt hat.

[iec] max_w

Typ
int
Default
8
Wertebereich
1-32767 (2^15-1)
Nur für IEC 104. Gibt an, nach wie vielen Telegrammen der Treiber selbst Quittierungen an den Partner schicken muss. Es wird empfohlen, diesen Wert auf 2/3 von max_k zu setzen.

[iec] negativeBitToInvalid

Typ
string
Default
No
Wertebereich
Yes|No
Für IEC 101 und 104. "Yes" aktiviert die Abbildung des Negative-Bits der COT-Adresse auf das Invalid-Bit.

[iec] originatorAddress

Typ
unsigned
Default
0
Wertebereich
0..255
Für IEC 101 und 104. Der Eintrag gibt den Standardwert für die Herkunftsadresse an, den der Treiber in die gesendeten Telegramme im zweiten Byte der Übertragungsursache einfügt.

[iec] postDelayRTS

Typ
unsigned
Default
0
Wertebereich
0..1000
Nur für IEC 101. Gibt an, wieviele Millisekunden nach dem Schicken eines Telegrammes die RTS Leitung noch aktiv bleiben soll. Wird nur für Windows unterstützt und nur wenn der Modus der seriellen Schnittstelle nicht RTS_TOGGLE ist, d.h. wenn kein ":3" im Konfigurationsstring für die serielle Schnittstelle angegeben ist (siehe auch Eintrag "device_101" oben).

[iec] preDelayRTS

Typ
unsigned
Default
0
Wertebereich
0..1000
Nur für IEC 101. Gibt an, wieviele Millisekunden vor dem Schicken eines Telegrammes die RTS Leitung aktiviert werden soll. Wird nur für Windows unterstützt und nur wenn der Modus der seriellen Schnittstelle nicht RTS_TOGGLE ist, d.h. wenn kein ":3" im Konfigurationsstring für die serielle Schnittstelle angegeben ist (siehe auch Eintrag "device_101" oben).

[iec] priorityClass

Typ
int
Default
0
Wertebereich
Linux: -20-19; Windows:-1-2
Für IEC 101 und 104. Steuert die Priorität des IEC Treiber-Managers unter Windows und Linux (siehe Einträge für verschiedene Sektionen).

[iec] reduStartDTtimeout

Typ
uint
Default
0
Wertebereich
>=0
Nur für IEC 104. Gibt die Zeit in Sekundan an, die nacheiner Redundanzumschaltung gewartet wird bevor der Treiber die Verbindung neu aufbaut. Erfordert sendStartDTwhenPassive = 0

[iec] reqInactTime_101

Typ
unsigned
Default
0
Wertebereich
0-300
Nur für IEC 101. Mit diesem Config-Eintrag kann sicher gestellt werden, dass zwischen dem Versenden zweier IEC Telegramme eine erforderliche Mindestzeit in Millisekunden eingehalten wird.

[iec] retry_101

Typ
int
Default
0
Nur für IEC 101. Anzahl der Telegrammwiederholungen. Default: 0, d.h. der Treiber macht standardmäßig keine Wiederholung, wenn die Gegenstation auf eine Anfrage (innerhalb timeout_t1) nicht antwortet. Wenn nach "retry_101"-Versuchen das Telegramm nicht gesendet werden kann, fängt der Treiber erst wieder nach Ablauf des Timeouts t3 (timeout_t3) mit dem Aufbau der Verbindung an, d.h. verliert der Treiber eine Station, macht er den nächsten Verbindungsversuch nach 20s.

[iec] sendStartDTwhenPassive

Typ
int
Default
1
Wertebereich
0|1
Nur für IEC 104. Wenn 1, dann sendet der Treiber, auch wenn er am passiven System verbunden ist, ein StartDT Signal nach dem Verbindungsaufbau. Wenn 0, wird kein StartDT nach einem Verbindungsaufbau gesendet, wenn der Treiber auf dem passiven System verbunden ist.

[iec] singleAck_101

Typ
string
Default
No
Wertebereich
Yes, No
Nur für IEC 101. Gibt an, ob der Treiber im 101-Modus Quittierungen als single byte Telegramme schicken soll. "Yes" Single Ack wird verwendet, "No" Gesamtes Ack wird verwendet.

[iec] sizeof_COA

Typ
int
Default
2
Wertebereich
1-2
Für IEC 101 und 104. Gibt an, aus wievielen Bytes die 'Common Object Address' im IEC-Telegramm besteht. Für IEC 104-Verbindungen muss dieser Wert 2 sein.

[iec] sizeof_COT

Typ
int
Default
2
Wertebereich
1-2
Für IEC 101 und 104. Gitb an, aus wievielen Bytes das 'Cause of Transmission' Feld im IEC-Telegramm besteht. Für IEC 104-Verbindungen muss dieser Wert 2 sein.

[iec] sizeof_IOA

Typ
int
Default
3
Wertebereich
1-3
Für IEC 101 und 104. Gibt an, aus wie vielen Bytes die 'Information Object Address' im IEC-Telegramm besteht. Für IEC-104-Verbindungen muss dieser Wert 3 sein.

[iec] sizeof_LA_101

Typ
int
Default
0
Wertebereich
0-2
Nur für IEC 101. Anzahl Bytes für die Linkadresse. Im Unbalanced Mode muss dieser Config-Eintrag vorhanden und ungleich 0 sein!

[iec] station_101

Typ
int
Default
0
Wertebereich
0, 1
Nur für IEC 101. Nummer der Station im Balanced Mode.

[iec] swapModuleValue

Typ
string
Default
No
Wertebereich
No, Yes
Für IEC 101 und 104. Gibt an, ob in der IEC-Adresse die Bytereihenfolge von 'Modul' und 'Wert' (die beiden ersten Bytes der Information Object Address) vertauscht werden sollen. Das ist beispielsweise bei AK1703 notwendig, wo die Werte für HB und MB vertauscht geschickt werden.

[iec] tcpServerPort

Typ
int
Default
0
Wertebereich
gt;= 0
Nur für IEC 104. Gibt den Port an, auf dem der Treiber auf eingehende Verbindungen warten soll. Der Treiber kann entweder TCP-Client sein, in dem Fall darf dieser Eintrag nicht vorhanden sein, oder TCP-Server, dann muss dieser Eintrag vorhanden sein. Ein TCP-Server ist automatisch auch ein IEC-Slave, das heißt, die Gegenseite muss die Verbindung auch initialisieren.

[iec] tgFilterTimeout

Typ
unsigned
Default
0
Wertebereich
>= 0
Nur für IEC 104. Timeout in Millisekunden für Telegrammfilter redundanter Verbindungen. Wird dieser Config-Eintrag > 0 gesetzt, so werden Telegramme die über redundante Verbindungen empfangen werden verglichen um doppelte Telegramme auszufiltern. Das Timeout bestimmt wie lange ein Telegramm für einen Vergleich im Treiber aufgehoben wird. Der Eintrag funktioniert nur für IEC 104 Verbindungen (die Option "-dbg filter" kann für Debugging Zwecke verwendet werden).

[iec] timeoutAfterIsolation

Typ
uint
Wertebereich
gt;= 0
Nur für IEC 104. Zeit in Sekunden die der Treiber wartet bis er versucht seine Verbindungen herzustellen, nachdem er aus einem isolierten Zustand erneut an das Netzwerk angebunden wurde.

[iec] timeout_t1

Typ
int
Default
1 sec
Wertebereich
>0
Nur für IEC 101. Der Eintrag timeout_t1 bestimmt jene Zeit innerhalb der die Gegenstation auf eine Anfrage antworten muss. Antwortet die Station nicht innerhalb dieser Zeit wird die Anfrage wiederholt (retry_101).

[iec] timeout_t1(IEC 104)

Typ
int
Default
15
Wertebereich
1..255
Einheit
sec
Nur für IEC 104. Timeout für die Antwort auf Sende- oder Test-APDUs.

[iec] timeout_t2

Typ
int
Default
1500 msec
Wertebereich
>0
Nur für IEC 101. Der Eintrag timeout_t2 ist nur für den unbalanced Mode relevant und er definiert das Pollintervall, in dem Daten abgefragt werden. Ist die Zeit z.B. 1s, so fragt der Treiber jede Unterstation im 1s Intervall ab.

[iec] timeout_t2(IEC 104)

Typ
int
Default
10
Wertebereich
1..255
Einheit
sec
Nur für IEC 104. Timeout für Quittung, wenn keine Daten übertragen werden

[iec] timeout_t3

Typ
int
Default
20 sec
Wertebereich
>0
Nur für IEC 101. Nur für Der Eintrag gibt jenes Intervall an, in dem der Linkstatus geprüft werden soll. Wenn eine Station ausfällt, so wird nach "retry_101" erfolglosen Versuchen die Verbindung erst wieder nach Ablauf dieses hier eingestellten Timeouts aufgebaut.

[iec] timeout_t3(IEC 104)

Typ
int
Default
20
Wertebereich
1..255
Einheit
sec
Nur für IEC 104. Timeout für das Senden von Test-Frames, wenn kein Datenverkehr stattfindet.

[iec] timeSync

Typ
string
Default
N
Wertebereich
Y/N
Für IEC 101 und 104. Aktiviert die Verwendung eines Uhrzeitsynchronisationstelegrammes (Typ 103, C_CS_NA_1). In diesem Fall schickt die SPS immer ein Synchronisationstelegramm mit der absoluten Zeit CP56Time2a, dessen Stundenwert als Basis für die nachfolgenden CP24Time2a Zeitstempel (dieser Zeitstempel enthält nur die Zeit innerhalb einer Stunde mit Millisekundenauflösung) verwendet wird. Ändert sich die Stunde, so kommt ein neues Synchronisationstelegramm. Der Treiber merkt sich intern pro Common Object Address die Zeit des letzten Uhrzeitsynchronisationstelegrammes und nimmt diese als Basis für die nachfolgenden CP24Time2a Zeitstempel.

[iec] tlsServerPort

Typ
int
Default
0
Wertebereich
gt;= 0
Nur für IEC 104. Gibt den Port an, auf dem der Treiber auf eingehende Verbindungen für verschlüsselte Kommunikation warten soll. Auf diesen Port erwartet der Treiber, dass der Client Transport Layer Verschlüsselung verwendet.

[iec] useCOTGQ

Typ
string
Default
No
Wertebereich
Yes|No
Für IEC 101 und 104. Gibt an, ob bei Telegrammen aufgrund einer IGQ die COT 20 bzw. 37 verwendet werden soll. Mehr zur Übertragungsursache erfahren Sie im Kapitel Details zum IEC Treiber.

[iec] useIECFlatAddress

Typ
string
Default
No
Wertebereich
Yes|No
Für IEC 101 und 104. Bestimmt die Endianity der Adressfelder auf der Leitung. "Yes" = Big Endian (high byte als ersten übertragen) "No" = Little Endian (high byte als letzten übertragen) so wie es der Standard vorsieht. Ist useIECFlatAddress = "No", werden die Adressbytes vertauscht (gegenüber dem Panel) und folgendermaßen über die Leitung übertragen: Common Address (LB = low byte) Common Address (HB = high byte) Information Object Address (LB) Information Object Address (MB) Information Object Address (HB) Ist useIECFlatAddress = "Yes" dann werden die Adressbytes nicht vertauscht und so übertragen wie sie im Panel stehen: Common Address (HB = high byte) Common Address (LB = low byte) Information Object Address (HB) Information Object Address (MB) Information Object Address (LB)

[iec] UserBitDST

Typ
int
Default
0
Wertebereich
1-32
Für IEC 101 und 104. Bildet das Sommerzeitbit aus den Zeitstempeln ab, wenn der Config-Eintrag timeSync gesetzt ist.

[iec] UserBitEI

Typ
int
Default
0
Wertebereich
1-32
Für IEC 101 und 104. Bildet das Elapsed Time Invalid Bit der Telegrammtypen 17, 18 und 19 ab.

[iec] UserBitIVT

Typ
int
Default
0
Wertebereich
1-32
Für IEC 101 und 104. Wenn Meldungen kommen, ohne dass zuvor eine Uhrzeitsynchronisation stattgefunden hat, wird der Zeitstempel eines Eingangswertes aus dem CP24Time2a Zeitstempel und der WinCC OA Zeit zusammengesetzt. Der Zeitstempel wird als ungültig markiert. Die Ungültigkeit des Zeitstempels kann mit diesem Eintrag auf ein WinCC OA Userbit abgebildet werden. Das definierte Userbit wird in den nachfolgenden Meldungen bis zum nächsten Uhrzeitsynchronisationsbefehl (mit gültigem Zeitstempel) gesetzt. Die Ungültigkeit des Zeitstempels einer Meldung (CP24Time2a) wird ebenfalls auf das definierte Userbit abgebildet.

[iec] UserBitXX

Typ
int
Default
0
Wertebereich
1-32
Für IEC 101 und 104. Mappt die Qualitätsbits auf die WinCC OA Userbits (siehe auch Kapitel Qualitätskennung). Dieses Mapping gilt nur in Melderichtung. Die beiden letzten Buchstaben des Eintrages (hie "XX") geben die Art der Qualitätsinformation an: IV: Invalid Bit NT: Not topical SB: Substituted CA: Counter adjusted CY: Carry BL: Blocked OV: Overflow EI: Elapsed time invalid IVT: Invalid time stamp DST: daylight saving time bit set Default jeweils 0 (=kein Mapping).

[iec] userByteCOT

Typ
int
Default
0
Wertebereich
0-4
Für IEC 101 und 104. Eingangsseitige Abbildung der Übertragungsursache auf ein Userbyte. Der Wert gibt an auf welches Userbyte die Übertragungsursache abgebildet werden soll. Der Wert 0 bedeutet keine Abbildung.

[iec] userByteOrigin

Typ
int
Default
0
Wertebereich
0-4
Für IEC 101 und 104. Eingangsseitige Abbildung der Herkunftsadresse auf ein Userbyte. Der Wert gibt an auf welches Userbyte die Herkunftsadresse abgebildet werden soll. Der Wert 0 bedeutet keine Abbildung.

[iec] userByteQ

Typ
int
Default
0
Wertebereich
0-4
Für IEC 101 und 104. Eingangsseitige Abbildung des Befehlsspiegels der QU Bits. Bietet eingangsseitig die Möglichkeit die Qualität bzw. den Command Qualifier auf ein Userbyte abzubilden. Dadurch sind die userBitXX Config-Einträge nicht mehr erforderlich, sind jedoch weiterhin gültig. Eine Ausnahme von dieser Regel bilden die Configs userbitDST und userbitIVT, da diese Bits Informationen aus dem Zeitstempel abbilden. Beachten Sie, dass beim Verwenden dieses Config-Eintrages es zu keinen Überlappungen/Überschreibungen mit anderen Config-Einträgen geben darf, z.B. mit userbitDST oder userbitIVT.

[iec] utcTimestamps

Typ
bool
Default
0
Wertebereich
0|1
Für IEC 101 und 104. Erlaubt es festzulegen ob der IEC Treiber UTC Zeitstempel verwenden soll.

[iec61850]

Einstellungen für den IEC 61850 Client.

[iec61850] abortOnMismatch

Typ
bool
Default
0
Wertebereich
0|1
Definiert ob das Aktivieren eines RCB abgebrochen werden soll, wenn der RCB auf dem Server mit einem anderen Datensatz konfiguriert ist, als der RCB in WinCC OA.

[iec61850] aliveInterval

Typ
uint
Default
20
Wertebereich
0 - 600 (in sec)
Definiert das Intervall in dem Alive-Telegramme gesendet werden, um die Verbindung zum Peripheriegerät zu überprüfen. 0 bedeutet dass kein Alive-Check durchgeführt wird.

[iec61850] aliveTimeout61850

Typ
uint
Default
10
Wertebereich
1 - 600 (in sec)
Definiert die Zeit nach der ein Client einen Verbindungsverlust mit einem Peripheriegerät erkennt. Hinweis: Der Alive-Timeout wird nur ausgelöst wenn eine TCP-Verbindung zwar immer noch verfügbar ist, das Peripheriegerät aber nicht reagiert. Wenn die TCP-Verbindung auf Grund von Hardwareproblemen ausfällt (z.B. durch einen Stromausfall) wird der Timeout des darunterliegenden Stacks ausgelöst (ca. 10 Sekunden). Das Timeout ist abhängig vom Betriebssystem und kann nicht geändert werden. Unter Linux errechnet sich die maximale Zeit bis ein Verbindungsverlust erkannt wird folgendermaßen: aliveTimeout61850 + aliveInterval.

[iec61850] autoGQ

Typ
uint
Default
3
Wertebereich
0 - 3
Legt fest ob der Client nach Verbindungsaufbau mit einem Gerät automatisch eine Generalabfrage senden soll. 0 -> Keine automatische GA 1 -> Automatische GA bei Verbindungsaufbau nach Start 2 -> Automatische GA bei Verbindungsaufbau nach einer Redundanzumschaltung 3 -> Automatische GA bei Verbindungsaufbau nach Start oder Redundanzumschaltung Hinweis: Die Einstellung gilt für General Query und General Interrogation. Es wird daher auch eine Generalabfrage für alle aktivierten Report Control Blocks ausgelöst.

[iec61850] certPath

Typ
string
Relativer Pfad des Certificate Stores unter <project>/data/IEC61850/. Das Verzeichnis wird durch den Config-Eintrag festgelegt, z.B.: [iec61850]certPath="myCertificates" Erstellt das Verzeichnis <Projektpfad>\data\IEC61850\myCertificates.

[iec61850] clientIedName

Typ
string
Default
<WinCC OA Client Name>
Der Config Eintrag weist einer IEC 61850 Treiberinstanz in WinCC OA einen (Client) IED Namen zu. Der Eintrag muss in der instanzspezifischen Sektion [iec61850_<manager number>] gesetzt werden. Ist der Eintrag gesetzt, werden im RCB Management Panel neben den nicht explizit zugewiesenen RCBs nur jene Instanzen von zugewiesenen RCBs angezeigt, die für diesen Client bestimmt sind. Dazu muss der der Norm entprechende Eintrag in der SCL Konfigurationsdatei vorhanden sein: z.B. <ClientLN ... IedName="WinCC OA Client Name"> Der <ClientLN> muss innerhalb des Elements des <ReportControl> Knotens hinterlegt werden. Ein Beispiel kann innerhalb des Kapitels "Report Control Blocks" der IEC61850 Engineering Dokumentation.

[iec61850] connRetryInterval

Typ
uint
Default
30
Wertebereich
1 - 600 (in sec)
Definiert das Intervall in dem versucht wird, die Kommunikation mit einem Peripheriegerät nach Verbinungsverlust wiederherzustellen.

[iec61850] debugMsgQueueLimit

Typ
uint
Default
10000
Wertebereich
1 - 50000
Definiert die maximale Anzahl an Debug-Nachrichten die in der Nachrichten-Warteschlange Platz haben.

[iec61850] fileTransferTimeout61850

Typ
uint
Default
15
Wertebereich
1 - 60
Einheit
Seconds
Der Timeout legt fest, wie lange ein Dateiübertragungsvorgang, z. B. das Herunterladen einer Datei vom Server, dauern darf.

[iec61850] maxReadRequests

Typ
uint
Default
20
Wertebereich
1 - 1000
Maximale Anzahl an Read-Requests die der Client zum Server in einem einzelnen MMS_Paket schickt.

[iec61850] maxWriteRequests

Typ
uint
Default
40
Wertebereich
1 - 1000
Limitiert die Anzahl an Write-Requests die an den verbundenen Server geschickt werden. Jeder Write-Request beinhaltet ein oder mehrere Ausgangs DP Elemente - abhängig von der Anzahl an DP Elementen innerhalb des ausgeführten dpSet() Aufrufes.

[iec61850] originatorCategory

Typ
uint
Default
2
Wertebereich
1 - 3
Betrifft das IEC 61850 Command Model und ermöglicht das Modifizieren der Originator Category. Folgende Werte sind möglich: 1 - Bay 2 - Station 3 - Remote

[iec61850] originatorIdentifier

Typ
string
Default
<hostname>_<project name>_<driver number>
Wertebereich
30 (characters)
Betrifft das IEC 61850 Command Model und ermöglicht das Modifizieren des OriginatorIdentifiers.

[iec61850] rcbReleaseTimeout

Typ
uint
Default
10
Wertebereich
0 - 120
Einheit
seconds
In einem redundanten WinCC OA System trennt im Falle einer Redundanzumschaltung der passiv werdende Treiber alle Serververbindungen, für die "Passiver Host verbindet sich zum Gerät" aktiviert ist. Dieser Timeout definiert das Zeitintervall in Sekunden, nach dem der Treiber diese Verbindungen wieder aufbaut.

[iec61850] readRequestQueueLimit

Typ
uint
Default
50000
Wertebereich
1 - 1000000
Maximale Anzahl an Read-Requests die die Warteschlange fassen kann.

[iec61850] readResponseQueueLimit

Typ
uint
Default
50000
Wertebereich
1 - 1000000
Maximale Anzahl an Read-Responses die die Warteschlange fassen kann.

[iec61850] reportEnaMaxRetry

Typ
uint
Default
10
Wertebereich
0 - 50000
Maximale Anzahl an Versuchen um einen RCB zu aktivieren, nachdem die Verbindung mit dem Gerät aufgebaut bzw. eine Redundanzumschaltung durchgeführt wurde. 0 -> Unendliche Versuche Hinweis Wenn das Aktivieren fehlschlägt wird ein entsprechender Fehler auf das Element _IEC61850_RCB.State.RCBState geschrieben. Falls die maximale Anzahl an Versuchen erreicht ist wird zusätzlich eine Logmeldung ausgegeben.

[iec61850] reportEnaRetryInterval

Typ
uint
Default
6
Wertebereich
1 - 600 (in sec)
Definiert das Zeitintervall nach dem der Client versucht einen Report Control Block zu aktivieren, wenn der vorherige Versuch nicht erfolgreich war.

[iec61850] sequentialConnSetup

Typ
bool
Default
n
Wertebereich
y|n
Der Config Eintrag definiert ob das Initialisieren, Aktivieren und Verbinden von IEDs und RCBs seriell oder parallel durchgeführt werden soll. Das parallele Durchführen (= "n"; Default) der Schritte beschleunigt den Start-up des Treibers aber kann zu einem erzwungendem Herunterfahren des Treibers führen sollte das Projekt eine hohe Anzahl an IEDs mit vielen RCBs beinhalten. Darum wird empfohlen den seriellen Modus (= "y") zu aktivieren um die Last der Nachrichten zwischen Treiber und Event-/Data-Manager zu reduzieren.

[iec61850] setInvalidForConnLoss

Typ
uint
Default
2
Wertebereich
0 - 2
Definiert ob das Invalidbit gesetzt werden soll wenn der Treiber die Verbindung zum Peripheriegerät verliert. 0 - Invalidbit wird nicht gesetzt 1 - Invalidbit wird vom Treiber mit der Zeit des Verbindungsverlusts gesetzt 2 - Invalidbit wird vom Treiber mit der Zeit des letzten Datenupdates gesetzt. Hinweis Nach Verbindungswiederherstellung wird das Invalidbit zurückgesetzt sobald der erste gültige Wert erhalten wird. Kommt es zu keiner Wertänderung, wird es nicht zurückgesetzt. Das Invalidbit kann auch durch eine Generalabfrage (GI) zurückgesetzt werden. Hierzu muss das optionale Feld Reason for Inclusion aktiviert und der Config-Eintrag autoGQ auf 3 gesetzt sein.

[iec61850] userBitReduSourceDevice

Typ
uint
Default
6
Wertebereich
1 - 32
Legt fest auf welches User Bit die Information geschrieben wird ob eine Nachricht durch den primären oder sekundären Redundanzpartner gesendet wurde. Der Config Eintrag wird nur verwendet wenn "userByteQualityMode" nicht aktiviert wurde.

[iec61850] userByteCommandMode

Typ
uint
Default
1
Wertebereich
1 - 4
Definiert das Userbyte in Schreibrichtung, welches für Befehle des Control Models verwendet wird. 1 -> _userbyte1 2 -> _userbyte2 3 -> _userbyte3 4 -> _userbyte4

[iec61850] userByteQualityDetail

Typ
uint
Default
0
Wertebereich
0 - 4
Definiert die Benutzerbytenummer in Leserichtung, welche verwendet wird um die IEC61850 Qualitätsinformationen für die Attribute der Struktur Quality/detailQual abzubilden. 0 -> Kein Mapping 1 -> _userbyte1 2 -> _userbyte2 3 -> _userbyte3 4 -> _userbyte4 Hinweis: Die Config-Einträge userByteTimeQuality, userByteQualityDetail und userByteQualityMode beziehen sich auf detaillierte Qualitätsinformationen die vom IEC Standard bereitgestellt werden. Für den Fall dass keiner dieser Config-Einträge gesetzt wird, werden Qualität und Zeit bezogene Bits nicht auf die Benutzerbytes des _original Configs abgebildet. Die Datenqualität (gültig/ungültig) wird immer berücksichtigt unabhängig davon ob Config-Einträge gesetzt werden oder nicht.

[iec61850] userByteQualityMode

Typ
uint
Default
0
Wertebereich
0 - 4
Definiert die Benutzerbytenummer in Leserichtung, welche verwendet wird um die IEC61850 Qualitätsinformationen für die Attribute validity, source, test und operator blocked abzubilden. 0 -> Kein Mapping 1 -> _userbyte1 2 -> _userbyte2 3 -> _userbyte3 4 -> _userbyte4 Hinweis: Die Config-Einträge userByteTimeQuality, userByteQualityDetail und userByteQualityMode beziehen sich auf detaillierte Qualitätsinformationen die vom IEC Standard bereitgestellt werden. Für den Fall dass keiner dieser Config-Einträge gesetzt wird, werden Qualität und Zeit bezogene Bits nicht auf die Benutzerbytes des _original Configs abgebildet. Die Datenqualität (gültig/ungültig) wird immer berücksichtigt unabhängig davon ob Config-Einträge gesetzt werden oder nicht.

[iec61850] userByteTimeQuality

Typ
uint
Default
0
Wertebereich
0 - 4
Definiert die Benutzerbytenummer in Leserichtung, welche verwendet wird um die IEC61850 Time Quality Informationen abzubilden. 0 -> Kein Mapping 1 -> _userbyte1 2 -> _userbyte2 3 -> _userbyte3 4 -> _userbyte4 Hinweis: Die Config-Einträge userByteTimeQuality, userByteQualityDetail und userByteQualityMode beziehen sich auf detaillierte Qualitätsinformationen die vom IEC Standard bereitgestellt werden. Für den Fall dass keiner dieser Config-Einträge gesetzt wird, werden Qualität und Zeit bezogene Bits nicht auf die Benutzerbytes des _original Configs abgebildet. Die Datenqualität (gültig/ungültig) wird immer berücksichtigt unabhängig davon ob Config-Einträge gesetzt werden oder nicht.

[iec61850] writeIntDpQueueLimit

Typ
uint
Default
10000
Wertebereich
1 - 50000
Definiert die maximale Anzahl an Elementen die in der Warteschlange enthalten sein können, um auf interne Datenpunkte geschrieben zu werden.

[iec61850] writeRequestQueueLimit

Typ
uint
Default
50000
Wertebereich
1 - 1000000
Definiert die maximale Anzahl an Write-Requests die in der Warteschlange enthalten sein können.

[mod]

Einstellungen für den Modbus Treiber

[mod] addUnicosMarker

Typ
int
Default
-1
Wertebereich
-1..65535
Bestimmt die Referenznummer, die vom Treiber für die Entscheidung, ob es sich um einen Modbus oder UNICOS Frame handelt, herangezogen wird. Defaultmäßig ist dieser Eintrag deaktiviert.

[mod] aliveInterval

Typ
unsigned
Default
10 [s]
Wertebereich
>= 0
Angabe des Lebenszeichenintervalls für den Treiber in Sekunden. Der Wert 0 bedeutet, dass keine Lebenszeichennachrichten geschickt werden. Ist der Wert > 0, sendet der Treiber eine Leseabfrage alle aliveInterval Sekunden an alle verbundenen SPSen.

[mod] aliveTimeoutMsg

Typ
unsigned unsigned
Default
3 1
Der Config-Eintrag legt den Funktionscode und die Referenznummer für die Aliveanfrage fest.

[mod] autoGQ

Typ
bool
Default
1
Wertebereich
0|1
Gibt an ob Generalabfragen automatisch durchgeführt werden. 0 = keine automatische Generalabfrage 1 = automatische Generalabfrage bei Verbindungsaufbau

[mod] idleCloseTimeout

Typ
unsigned
Default
0 [s]
Wertebereich
>= 0
Der Treiber schließt die Verbindung zur SPS, wenn die Verbindung für die eingegebene Zeit in Sekunden unterbrochen wurde. Dies wird nur für Verbindungen im Master-Modus durchgeführt.

[mod] littleEndianRegister

Typ
int
Default
-1
Wertebereich
-1|0|1
Definiert die Reihenfolge der Register (16-Bit-Wörter) innerhalb von 32-Bit oder 64-Bit- Prozessdaten. Mögliche Werte sind: -1 - Keine bevorzugte Reihenfolge wurde gewählt. (Default) 0 - BigEndianRegister wird bevorzugt. 1 - littleEndianRegister wird bevorzugt

[mod] maxConnRetryNumber

Typ
unsigned
Default
0
Wertebereich
>= 0
Wenn der Treiber ein Telegramm verschicken will, versucht er nur einmal die Verbindung aufzubauen. Schlägt das fehl so wird das Telegramm verworden. Der Config-Eintrag gibt an wie oft der Verbindungsaufbau wiederholt wird.

[mod] maxGap

Typ
uint
Default
16
Wertebereich
0..100
Wenn die Differenz zwischen zwei aufeinaderfolgenden Referenznummer kleiner ist oder dem Wert in maxGap gleicht, dann werden diese Adressen zu einem Pollblock zusammengefasst. Wenn nicht, dann wird ein zweiter Polblock erstellt. Dieser Eintrag dient der Pollabfrageoptimierung.

[mod] maxPendingRequests

Typ
unsigned
Default
1
Wertebereich
1..8
Die maximale Anzahl anstehender Anfragen (Request) ohne Antwort (Respond). Der Eintrag kann dazu verwendet werden, um mehr Requests vorab zu schicken und um die Geschwindigkeit der Kommunikation zu erhöhen. Wenn der Eintrag auf einen höheren Wert als 1 gesetzt wird, müssen Sie sicherstellen, dass die SPS die der Treiber bedient, tatsächlich mehrere Anfragen behandeln kann.

[mod] maxQueueSize

Typ
int
Default
256
Bestimmt die Größe der Requestqueue für den Master Modus. Zum Beispiel maxQueueSize = 1000

[mod] maxRequestRetryNumber

Typ
unsigned
Default
0
Wertebereich
>= 0
Gibt die Anzahl der Wiederholungen einer Anforderung an, wenn innerhalb des Timeouts keine Antwort kommt.

[mod] onlyActivePolls

Typ
bool
Default
0
Wertebereich
0|1
Nur der aktive Treiber pollt innerhalb eines redundanten Systems

[mod] plc

Typ
string
Obsolete seit WinCC OA Version 3.9. Datenpunktname des internen DPs der SPS, die der Treiber versorgt. Für jede SPS muss dieser Eintrag existieren (z.B. plc = "_Mod_Plc_2"). Diese Datenpunkte werden automatisch angelegt, wenn die Parameter der SPS in das Parametrierpanel des Modbus/TCP Treibers eingeben werden (siehe Kapitel Parametrierpanel des Modbus/TCP Treibers).

[mod] pollOptForBlob

Typ
bool
Default
1
Wertebereich
0|1
Definiert, ob für blobs eine Pollabfrageoptimierung stattfindet (Default = ja).

[mod] requestDelay

Typ
uint
Default
0
Wertebereich
>= 0
Angabe der Zeit in Millisekunden, die mindestens zwischen zwei Anfragen (Requests) vergehen muss. Der Wert sollte nicht zu hoch eingestellt werden, da dies sonst den Datendurchsatz beeinträchtigt. Dieser Eintrag ist nur für die Kommunikation über Gateways relevant.

[mod] simUnicosEvents

Typ
unsigned
Default
24
Wertebereich
1..24
Dieser Parameter legt die Anzahl der Items für einen simulierten Event Report fest.

[mod] simUnicosPlc

Typ
bool
Default
0
Wertebereich
0|1
Legt fest, ob der Master UNICOS Frames für spezielle Funktionscodes, die normalerweise nicht verwendet werden, senden soll: Wenn der Funktionscode 120 in einer Peripherieadresse angegeben wird, dann wird ein Datenstatus Frame mit beliebigen Daten erzeugt. Wenn der Funktionscode 121 angeben wird, dann wird ein Event Report Frame mit beliebigen Daten erzeugt. Das ist nur für TESTZWECKE zu verwenden. Der Funktionscode informiert den Treiber, dass er einen UNICOS Frame erzeugen soll, er wird aber nicht nach außen verschickt.

[mod] statCheckInterval

Typ
uint
Default
20 [s]
Wertebereich
5-100
Zeitintervall in dem die Request-Statistik Datenpunktelemente vom Treiber geschrieben werden.

[mod] suspendTimeFactor

Typ
int
Default
10
Wertebereich
1-100
Wenn hinter einem Gateway mehrere Modbus RTU Slaves sind und einer oder mehrere davon nicht antworten, dann wird die Kommunikation zu diesen defekten Slaves für die Zeit suspendTimeFactor*transactionTimeout unterbrochen, damit der Kommunikationsdurchsatz zu den noch funktionierenden Slaves nicht massiv in Mitleidenschaft gezogen wird.

[mod] tcpConnectTimeout

Typ
unsigned
Default
2000 [ms]
Wertebereich
>=1000
Timeout der Verbindung. Beim Aufbau der Verbindung, wartet der Treiber asynchron bis die Verbindung fertig initialisiert ist und bis die Quittierung von der SPS gekommen ist. Kommt diese Quittierung nicht innerhalb eines Timeouts, baut der Treiber die Verbindung wieder neu auf. Dieses TimeOut wird durch den Config-Eintrag tcpConnectTimeout in der Modbus-Sektion festgelegt.

[mod] tcpReceiveBufferSize

Typ
unsigned
Default
0
Wertebereich
>=300
Mit diesem Eintrag kann die Größe des TCP Eingangspuffers gesetzt werden. Dies ist nur in Ausnahmefällen notwendig, wenn Modbusgeräte nicht mit den Standardeinstellungen des Betriebssystem für die "TCP Windows Size" zurecht kommen. Bei alten Modbusgeräten kann das der Fall sein. Der Standardwert 0 bedeutet, das die Einstellung vom Betriebssystem übernommen wird. Wenn zu einem alten Gerät eine Verbindung nicht aufgebaut werden kann, kann durch reduzieren des Eingangspuffers auf z.B. 512 versucht werden das Problem zu lösen.

[mod] tcpServerPort

Typ
unsigned
Default
0
Wertebereich
0..65535
Portnummer des TCP Servers. Der Treiber öffnet einen "Server-Socket" für Modbus Clients. Ist der Wert 0, so wird kein Server Socket geöffnet und der Modbus Treiber arbeitet nur im Client Modus.

[mod] unicosMarker

Typ
int
Default
65535(0xFFFF)
Wertebereich
-1..65535
Mit dieser Referenznummer entscheidet der Treiber, ob ein Modbus oder UNICOS Frame verwendet wird. Mit -1 wird dieser Eintrag deaktiviert. Um UNICOS gänzlich zu deaktivieren, setzen Sie diesen Eintrag auf -1 (für addUnicosMarker darf ebenfalls nichts gesetzt sein!).

[modsrv]

Einstellungen für den Modbus/TCP-Server

[modsrv] tcpServerHost

Typ
string
Definiert an welchen Hostnamen oder an welche IP-Adresse sich der Server binden soll, wenn 2 oder mehr Netzwerkkarten vorhanden sind.

[modsrv] tcpServerPort

Typ
int
Default
502
Wertebereich
>=0
Legt den TCP-Port ("listening port") des Modbus/TCP-Servers fest.

[modsrv] useUTC

Typ
bool
Wertebereich
0|1
Definiert ob bei Datenpunktelementen vom Typ time das UTC-Zeitformat verwendet werden soll.

[mqtt]

Einstellungen für den MQTT-Treiber.

[mqtt] certPath

Typ
string
Default
cert
Relativer Pfad des Certificate Stores unter <project>/data/mqtt/.

[mqtt] delta

Typ
ushort
Default
5
Einheit
milliseconds
Delta um Duplikate der redundanten Verbindung zu verhindern.

[mqtt] jsonProfileStatus

Typ
ushort
Default
0 (not used)
Wertebereich
0..1
Definiert, ob sich der Treiber auf alle 32 Userbits anmeldet. Wird benötigt, falls das JSON Profil inkl. Status verwendet wird. Per Default wird auf keine Userbits angemeldet.

[mqtt] jsonTimeFormat

Typ
ushort
Default
0
Wertebereich
0..1
Format des Zeitstempels des JSON-Profils. 0 = ISO 8601, 1 = Millisekunden seit 1970

[mqtt] onlyActiveSubscribes

Typ
bool
Default
0
Wertebereich
0|1
Nur der aktive Treiber meldet sich in einem redundanten System auf Topics an.

[mqtt] reduClientIdPostfix

Typ
string
Default
_2
Wird die MQTT Client-ID explizit definiert, dann wird am zweiten Server im redundanten System dieses Postfix zur explizit definierten ID hinzugefügt. Das ist notwendig weil sich in der Regel nicht zwei MQTT clients beim Broker mit derselben ID anmelden können.

[mqtt] statisticsRefreshTime

Typ
ushort
Default
60
Einheit
seconds
Refresh-Intervall der statistischen Daten auf den internen Datenpunkten in Sekunden.

[mqtt] userBitQoS1

Typ
ushort
Default
0 (not used)
Wertebereich
1..16
Userbit für das erste QoS Bit. Per Default wird kein Userbit verwendet.

[mqtt] userBitQoS2

Typ
ushort
Default
0 (not used)
Wertebereich
1..16
Userbit für das zweite QoS Bit. Per Default wird kein Userbit verwendet.

[mqtt] userBitRetain

Typ
ushort
Default
0 (not used)
Wertebereich
1..16
Userbit für das Retain-Flag. Per Default wird kein Userbit verwendet.

[mqttpub]

Einstellungen für den MQTT-Publisher.

[mqttpub] certPath

Typ
string
Default
cert
Relativer Pfad des Certificate Stores unter <project>/data/mqtt/.

[mqttpub] connDp

Typ
string
Default
MqttPublisher
Legt den Namen für den internen Datenpunkt (ohne führendes "_") des MQTT Publishers fest.

[mqttpub] mqttPubGroup

Typ
string
Default
MQTTPub
Legt anhand des Alias fest welche Datenpunkt Gruppe für die exportierten Daten verwendet werden soll. Hierbei kann für jeden MQTT Publisher eine eigene Gruppe definiert werden. Hinweis: Beim Anlegen einer neuen Datenpunktgruppe für den MQTT Publisher muss ein Alias vergeben werden.

[mqttpub] statisticsRefreshTime

Typ
ushort
Default
60
Einheit
seconds
Refresh-Intervall der statistischen Daten auf den internen Datenpunkten in Sekunden.

[mqttpub] useAlias

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob der MQTT Publisher den Datenpunkt-Namen oder -Alias als MQTT Topic verwendet: 0 -> DP-Namen 1 -> DP-Alias

[mqttpub] useCnsDisplayPath

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob der MQTT Publisher den CNS Identifier oder den "Display"-Namenspfad (aktive Sprache) als MQTT Topic verwendet: 0 -> CNS Identifier 1 -> "Display"-Namenspfad

[mqttpub] userBitQoS1

Typ
ushort
Default
0 (not used)
Wertebereich
1..16
Mit diesem Eintrag kann die QoS über Userbits am betreffenden DPE angegeben werden. Userbit für das erste QoS Bit. Per Default wird kein Userbit verwendet.

[mqttpub] userBitQoS2

Typ
ushort
Default
0 (not used)
Wertebereich
1..16
Mit diesem Eintrag kann die QoS über Userbits am betreffenden DPE angegeben werden. Userbit für das zweite QoS Bit. Per Default wird kein Userbit verwendet.

[mqttpub] userBitRetain

Typ
ushort
Default
0 (not used)
Wertebereich
1..16
Userbit für das Retain-Flag. Per Default wird kein Userbit verwendet. Ist ein Userbit != 0 konfiguriert und dieses Bit gesetzt so wird der Wert mit Retain-Flag geschickt.

[NextGenArch]

Einstellungen für das NextGenArchive (NGA)

[NextGenArch] backendRestartDelay

Typ
uint
Default
20
Erlaubt es die Verzögerung (in Sekunden) zwischen den Startversuchen des Datenbank Backends zu konfigurieren.

[NextGenArch] importSourceDbAsIso

Typ
boolean
Default
0
Wertebereich
0|1
Im Falle des Imports einer nicht projekteigenen, historischen WinCC OA-Datenbank, die ISO-kodiert ist, müssen Sie diesen Konfig-Eintrag manuell zur Konfig-Datei des neuen Projekts hinzufügen, indem Sie ihn auf [NextGenArch] importSourceDbAsIso = 1 setzen.

[NextGenArch] maxSecondsToWaitForInitialQueriesBeforeConnectingToEvent

Typ
uint
Default
60
Wertebereich
Seconds
Einheit
Seconds
Definiert wie lange die Fehlermeldungen (dass der EVENT-Manager noch nicht gestartet wurde) im NGA unterdrückt werden. Der Wert sollte so hoch sein wie die Zeit, die der EVENT-Manager zum Starten benötigt. Generell ist eine Änderung dieses Eintrags nur für größere Projekte erforderlich, in denen der Start des EVENT-Manager mehr Zeit in Anspruch nimmt. Direktes Verbinden mit dem Event Manager ohne dieser Verzögerung kann hier dazu führen, dass der Log mit "Verbindung zum Event Manager konnte nicht hergestellt werden"-Meldungen gefüllt wird. HINWEIS: Die Event-Manager-Verbindung kann wie bisher mit den Config-Einträgen connectDelay und connectRetries angepasst werden.

[NextGenArch] triggeredArchiving

Typ
int
Default
0
Erlaubt es das Verhalten bei angestoßener Archivierung zu definieren. Eine angestoßenene Archivierung findet statt, wenn die _archive Config aktiv geschalten wird. In diesem Fall werden alle DPE dieser Archivkonfiguration behandelt, als wäre ein Hotlink mit dem momentanen Wert erhalten worden. Hinweis: Kann nur für DPEs genutzt werden, welche eine _archive Config aufweisen. Mögliche Einstellungen sind: 0 - default; Die angestoßene Archivierung wird nicht durchgeführt. 1 - Der Zeitstempel des Datenpunktelementes wird benutzt, wenn der Wert an das Backend gesendet wird. 2 - Der Zeitstempel der dpSet()-Operation wird benutzt, wenn der Wert an das Backend gesendet wird.

[NextGenArch] useOriginalValue

Typ
int
Default
0
Wertebereich
0|1
0: NGA baut, wie zuvor, eine Verbindung zu den _online-Werten auf. Das Verhalten bleibt unverändert. 1: NGA baut eine Verbindung zu den _original-Werten anstatt zu den _online-Werten auf. Dies ändert die Bedeutung der Spalten in der Datenbank da jetzt _original-Werte anstelle von _online-Werten archiviert werden. Der Config-Eintrag kann bei großen Datenpunktstrukturen, die viele Unterelemente enthalten, verwendet werden da NGA sich auf allen _online-Configs anmeldet und der EVENT-Manager dadurch langsamer wird.

[oaTest]

Einstellungen für die CTRL OA Unit Dynamic Link Library.

[oaTest] testCaseIdPrefix

Typ
string
Mit den Config-Einträgen "testCaseIdPrefix" und "testCaseIdSuffix" fügen Sie für jede Testfall-ID ein Präfix bzw. Suffix hinzu. Dadurch können Testfälle mit einem Präfix/Suffix gestartet werden. Wenn ein Manager und ein Testfall bereits läuft und der Config-Eintrag geändert wird, muss der Manager neu gestartet werden. Beachten Sie zudem, dass Sie keine führenden oder abschließenden Leerzeichen für das Präfix bzw. Suffix verwenden dürfen. Geben Sie ein Präfix/Suffix in der Config-Datei an und starten Sie den Testfall in der Console. Der Testfall wird mit dem Präfix/Suffix gestartet. Beispiel: [oaTest] testCaseIdPrefix = "TST_String" testCaseIdSuffix = "TST_Kunde1"

[oaTest] testCaseIdSuffix

Typ
string
Mit den Config-Einträgen "testCaseIdPrefix" und "testCaseIdSuffix" fügen Sie für jede Testfall-ID ein Präfix bzw. Suffix hinzu. Dadurch können Testfälle mit einem Präfix/Suffix gestartet werden. Wenn ein Manager und ein Testfall bereits läuft und der Config-Eintrag geändert wird, muss der Manager neu gestartet werden. Beachten Sie zudem, dass Sie keine führenden oder abschließenden Leerzeichen für das Präfix bzw. Suffix verwenden dürfen. Geben Sie ein Präfix/Suffix in der Config-Datei and und starten Sie den Testfall in der Console. Der Testfall wird mit dem Präfix/Suffix gestartet. Beispiel: [oaTest] testCaseIdPrefix = "TST_String" testCaseIdSuffix = "TST_Kunde1"

[oledb]

Einstellungen für den OLE DB-Provider.

[oledb] maxOleDbArchiveConnectTime

Typ
int
Default
5
Wertebereich
>0
Zeit (in Sekunden), die der Provider maximal für den Verbindungsaufbau zu den ValueArchiven verwendet.

[oledb] maxOleDbIdleTime

Typ
int
Default
0
Wertebereich
>=0 (max. 2147483648)
Zeit (in Sekunden), die der Provider ohne aktive Abfragen läuft, bevor er sich beendet. Mit dem Default 0 beendet er sich gar nicht.

[oledb] maxOleDbWaitAnswerTime

Typ
int
Default
60
Wertebereich
>=0 (max. 2147483648)
Zeit (in Sekunden), die der Provider wartet, nachdem er alle Fragen an die ValueArchive geschickt hat, bis deren Antworten spätestens eintreffen dürfen. Durch Setzen des Wertes 0 wird gar nicht gewartet (nicht empfehlenswert). Bei Ablauf der Zeit, werden die Antworten weitergeleitet, die bisher eingetroffen sind und eine Fehlermeldung im Log ausgegeben.

[oledb] num

Typ
int
Default
1
Managernummer des OLE DB-Providers

[oledb] oleDbServerPort

Typ
int
Default
4444
Wertebereich
>0
Laufen Provider-DLL und Provider-EXE auf verschiedenen Rechnern, erfolgt die Kommunikation über TCP/IP. Mit diesem Eintrag wird der Port festgelegt, über den sich Porvider-DLLs anmelden können, z.B. wenn der Consumer von einem anderen Rechner aus Abfragen absetzt.

[oledb] usePvssWildCards

Typ
bool
Default
1
Wertebereich
0|1
Gibt an, ob beim SQL für Wildcards die SQL-Syntax (0) oder die WinCC OA-Syntax (1) verwendet werden soll. SQL: % = beliebige Zeichen _ = ein beliebiges Zeichen WinCC OA: * = beliebige Zeichen ? = ein beliebiges Zeichen

[onlineBackup]

Einstellungen für das Online Backup

[onlineBackup] autoOnlineBackup

Typ
bool
Default
1
Wertebereich
0|1
Mit diesem config-Eintrag kann die automatische Prüfung der Online-Backup Konfiguration beim Start des Projektes (Script archiv_client.ctl) aktiviert/deaktiviert werden. Der Defaultwert 1 ist so gesetzt, daß die Prüfung ausgeführt wird. Wenn als Backup-Verzeichnis ein Laufwerk gewählt wurde (HD/MO/JAZ), wird geprüft ob Schreibrechte gegeben sind. Ist dies nicht der Fall erfolgt die Archivierung im Projekt-Verzeichnis (data/OnlineBackup). Ist das Backup-Medium ein DAT-Device erfolgt nur eine Prüfung ob ein Pfad definiert wird ohne weitere Prüfung der Berechtigungen. Wenn erkannt wird, daß das Online-Backup nicht korrekt konfiguriert ist, wird eine automatische Konfiguration vorgenommen mit folgenden Einstellungen: Backup-Verzeichnis: PROJ_PATH/data/OnlineBackup bzw. bereits definierter gültiger Pfad Backup-Interval: täglich um 04:00 Uhr Backup-Range: 1 Tag - 1 Monat (je nachdem welche Einstellung vor der Prüfung gesetzt war) Löschung: automatische Löschung der alten Backup-Daten bevor das Backup ausgeführt wird

[opc]

Einstellungen für den OPC Client

[opc] enableGeneralQuery

Typ
string
Default
Yes
Wertebereich
Yes|No
Die automatische Generalabfrage während einer Redundanzumschaltung kann deaktiviert werden. Deaktivieren Sie die automatische Generalabfrage über den Config-Eintrag enableGeneralQuery = "No". Wenn der Config-Eintrag auf "No" gesetzt wird, wird auch die Generalabfrage über _DriverCommon.GQ DPE deaktiviert. Die Deaktivierung betrifft nicht Generalabfragen, die über die internen _OPCServer.ServerGA oder _OPCGroup.Refresh-Datenpunktelemente aktiviert wurden. Über diese DPEs können weiterhin Generalabfragen manuell ausgeführt werden, obwohl die automatische Generalabfrage deaktiviert ist.

[opc] ioReadBack

Typ
string
Default
Yes
Wertebereich
Yes|No
Readback ist ein Feature, welches das IOTransitionTimeout kompatibel mit dem OPC Update-Mechanismus macht. Wenn eine I/O-Adresse geschrieben wird, wartet der Treiber auf einen Wert für diese Adresse von der Peripherie IOTransitionTimeout Sekunden lang. Wenn es während der Zeit keinen neuen Wert gibt, geht der Treiber davon aus, dass das Schreiben nicht erfolgreich war. OPC Server wiederrum antworten nicht direkt, wenn es einen Wert gibt, sondern erst nach Update-Rate von Millisekunden. Wenn das IOTransitionTimeout kleiner als die Update-Rate ist, gibt es keinen Callback und der Treiber geht davon aus, dass IOTransaction nicht erfolgreich war (obwohl IOTransaction erfolgreich gewesen wäre). Um das zu verhindern, startet der OPC-Treiber die Lese-Operation gleich nach dem Schreiben, um den Wert von der Peripherie zurückzulesen (daher der Name "Readback"). Die Readback-Funktionalität kann deaktiviert werden, indem man den Config-Eintrag ioReadBack = "No" setzt.

[opc] mapInvalidAdressToDrvInvalidBit

Typ
string
Default
yes
Wertebereich
yes|no
Wenn dieser Config-Eintrag gesetzt wird, muss das Quality Mapping oder mindestens das Invalid Mapping im OPC Server-Panel (Panel OPC Server) aktiviert werden. Wenn in der Config-Datei [opc] mapInvalidAdressToDrvInvalidBit = "yes" parametriert ist, dann wird das Invalid-Bit des Treibers gesetzt, falls die Adresse (OPC Item) im Server nicht gefunden werden kann. Das Bit wird zurückgesetzt, sobald die Adresse im Server existiert und mit _OPCGRoup.retryCorruptItem erneut probiert wurde die Adresse zu verwenden. Falls das funktioniert, ist die Adresse im Server vorhanden und er sendet ein Update. Dadurch wird ein Wert vom Treiber an WinCC OA gesendet und das setzt das DRV_INVALID Bit zurück - demnach ist der Datenpunkt nicht mehr als ungültig markiert. Beachten Sie, dass die gleiche OPC-Gruppe nicht für zwei verschiedene OPC Treiber verwendet werden darf.

[opc] priorityClass

Typ
int
Default
0
Wertebereich
Linux: -20-19 Win:-1-2
Steuert die Priorität von Manager unter Windows und Linux (siehe auch Einträge für verschiedene Sektionen).

[opc] server

Typ
string string
Über diesen Eintrag wird dem in der Peripherieadresse verwendeten, symbolischen Namen des Servers die ProgID (Programm Identifikation aus der Registry), und eventuell ein Pfad zu einem Remote Server, zugeordnet. Beispiel: server = "server1" "www.foo.com/ETM.OPC.Simulation.1" Wenn sich ein OPC-Client zu mehreren Servern verbindet, muss es für jeden Server einen Datenpunkt vom Typ _OPCServer geben. Einen Server-Datenpunkt erstellen Sie über das Panel "OPC-Parametrierung" (siehe Kapitel Panel OPC Server). Ordnet dem symbolischen Namen server1 die ProgID ETM.OPC.Simulation.1 zu. Die Pfadangabe ist optional. Wird ein Pfad angegeben, muss er durch einen "/" von der ProgID getrennt werden. Ist ein Pfad angegeben, wird der Server automatisch als Remote Server auf dem angegebenen Rechner gestartet. Als Pfadnamen können alle UNC Namen ("//server" oder "server") und alle DNS Namen ("server.com", "www.foo.com", oder "135.5.33.19") angegeben werden. Es muss mindestens ein Server angegeben werden und es können maximal 20 Server gleichzeitig gestartet werden. Diese Server müssen sich in ihren symbolischen Namen unterscheiden. Das ist notwendig, weil es ja zu jedem Server einen Datenpunkt vom Typ _OPCServer geben muss, dessen Namen den symbolischen Namen enthalten (siehe Kapitel _OPCServer (OPC Client)).

[opc] timeStampFromServer

Typ
string
Default
Yes
Wertebereich
Yes|No
Per Default werden die Zeitstempel vom OPC Server generiert. Wird dieser Config-Eintrag auf "No" gesetzt, werden die Zeitstempel vom OPC Client generiert.

[opcae]

Einstellungen für den OPC A&E Client

[opcae] addTimeToComment

Typ
int
Default
1
Wertebereich
0 - 2
Bei der Verbesserung des Zeitstempels innerhalb des Clients kann der Original Server Zeitstempel an den Alarmkommentar angehängt werden. Der Config Eintrag legt den Modus des Anfügens fest: 0 => Die Zeit wird nicht an den Kommentar angehängt 1 => Die zeit wird nur angefügt wenn eine Korrektur des Zeitstempels durchgeführt wurde 2 => Die Zeit wird immer an den Kommentar angehängt.

[opcae] alertClassPrefix

Typ
char
Präfix der Meldeklassen. Wenn der Config-Eintrag twoStateConditionsOnly auf "yes" gesetzt ist, dann wird die automatische Anpassung der Alarmklassen vom Client aktiviert. Voraussetzung für die automatische Anpassung ist, dass die Alarmklassen folgendermaßen aufgebaut sind: alertClassPrefix_AE_<Priorität> Priorität ist eine Zahl von 1 bis 1000.

[opcae] alwaysWriteComment

Typ
bool
Default
0
Wertebereich
0|1
Legt fest, ob der OPC AE Client einen Zeitstempel an den Kommentar anfügt, auch wenn die Überprüfung des Zeitstempels innerhalb des Clients nicht erfolgreich durchgeführt werden konnte. Dies ist nötig wenn Zeitstempel nicht verlässlich sind und aus diesem Grund eine Korrektur durch den Event Manager durchgeführt wird. 0 => Kommentare werde nicht angefügt 1 => Kommentare werden angefügt

[opcae] browseOnStart

Typ
bool
Default
0
Wertebereich
0|1
Die Übertragung von allen aktuellen Serverdaten (Event Categories, Conditions, Server Items) beim Client-Start ist defaultmäßig deaktiviert. Dies verhindert, dass fehlerhafte Daten vom Server automatisch beim Verbindungsaufbau vom Client übernommen werden. Mit diesem Config-Eintrag kann die Übertragung beim Start aktiviert werden (browseOnStart = 1). Die Übertragung kann auch jederzeit manuell über die Schaltfläche "Update" im Client-Parametrierpanel gestartet werden.

[opcae] correctFutureTimes

Typ
bool
Default
0
Wertebereich
0|1
Legt fest ob die Zeit korrigiert werden soll oder nicht. 0 => Keine Korrektur der Zeit 1 => Korrektur der Zeit

[opcae] refreshDelay

Typ
int
Default
-1
Wertebereich
>=-1
Der OPC AE Client führt nach einem Statuswechsel eine Aktualisierung durch. Für diese Aktualisierung kann eine Verzögerung in Sekunden festgelegt werden. Der Default Wert ist -1, welcher angiebt, dass keine automatische Aktualisierung nach einem Statuswechsel durchgeführt wird.

[opcae] refreshMessage

Typ
string
Wertebereich
-
Der OPC AE Client führt eine Aktualisierung durch, wenn der Server einen entsprechenden Befehl sendet. Dieser befehl kann mit diesem Config Eintrag festgelegt werden. z.B. refreshMessage = "I need refresh" Per Default ist der Eintrag leer, wodurch keine Aktualisierungen mittels dieser Event Message durchgeführt

[opcae] server

Typ
string
Definiert den Datenpunkt für den A&E Server. Für den OPC A&E Client von WinCC OA kann es mehrere solcher Einträge geben, da dieser die Alarme/Events von mehreren OPC A&E Servern verarbeiten kann.

[opcae] sourceSeparator

Typ
char
Default
.
Trennzeichen, das der Server für die Items verwendet. D.h der Source Separator trennt die vom Server (beim Browsen) übergebenen Items in ihre Bestandteile. Per Default ist dieser ein Punkt ("."). Der Client muss ebenfalls dieses Trennzeichen verwenden (z.B. PVLEVEL4.Level1). Es kann ein beliebiges Trennzeichen verwendet werden.

[opcae] startDelay

Typ
int
Default
0
Mit dem Eintrag startDelay kann der Manager-Status "running" verzögert werden und dadurch verhindert werden, dass abhängig vom OPC A&E Client-Start, anschließende Manager zu früh gestartet werden.

[opcae] timeFormatComment

Typ
string
Default
[]{original time: %Y.%m.%d %H:%M:%S.%z}
Wertebereich
-
Legt das Format des Zeitstempels fest, welcher an den Alarmkommentar angefügt wird. Für Details bezüglich der erlaubten Formatkonstanten siehe: formatTime()

[opcae] useJsonForSimpleEvents

Typ
bool
Default
0
Wertebereich
0|1
Definiert ob das JSON Format für Simple/Tracking Events verwendet werden soll.

[opcaesrv]

Einstellungen für den WinCC OA OPC A&E Server.

[opcaesrv] rootItem

Typ
string
Default
DP
Wertebereich
"DP" | "DPT"
Definiert die oberste Hierarchie des Item-Baumes. Dabei bedeutet "DPT", dass die oberste Hierarchie der Datenpunkttyp ist, für "DP" ist die oberste Ebene der Datenpunkt. Dieser Wert sollte für ein Projekt nur einmal vor der Parametrierung eingestellt werden.

[opcaesrv] server

Typ
string
Es kann in einem WinCC OA System nur einen WinCC OA OPC A&E Server geben. Dieser Eintrag muss in der Config-Datei gesetzt werden. Zum Beispiel: "AEServer1"

[opcae_<servername>]

[opcae_<servername>] conditionEventDp

Typ
string
Definiert einen Datenpunkt vom Typ String (pro Server), auf den alle Condition Events gemappt werden sollen. Ist der Eintrag leer so findet keine Abbildung statt. Ist der Eintrag definiert so werden auf das entsprechende DPE die Parameter des Events im JSON Format abgebildet.

[opcae_<servername>] prefix

Typ
string
Default
AE_
Definiert das Präfix, welches allen automatisch generierten Datenpunktelementen in WinCC OA vorangestellt wird. Gibt es in zwei oder mehr Servern dieselben Server-Items, dann muss das Präfix für jeden der Server unterschiedlich sein.

[opcae_<servername>] simpleEventDp

Typ
string
Default
DP prefix+SimpleEventNotifications
Definiert einen Datenpunkt vom Typ String (pro Server), auf den alle Simple Events gemappt werden. Ist dieser Eintrag nicht vorhanden, werden die Simple Events auf den Datenpunkt prefix+SimpleEventNotifications gemappt. Beispiel: [opcae_ABB1] simpleEventDp = "GU_SimpleEvents. " Der String, der vom AE Client geschrieben wird, ist folgendermaßen aufgebaut: EventQuelle + "| " + EventMessage + " (severity " + EventSeverity + ") " Dabei sind die kursiv geschriebenen Werte die Werte, die der OPC AE-Server in seiner Message sendet, und die vom Client zu dem unten angeführten String zusammengesetzt werden. Beispiel: "123.124.23.17_ConERR | No Alive Signal (severity 250) "

[opcae_<servername>] twoStateConditionsOnly

Typ
bool
Default
0
Wertebereich
0|1
Mit dem Eintrag 1 wird dem Client mitgeteilt, dass der Server ausschließlich boolsche Alarme zur Verfügung stellt. Wenn es nur boolsche Alarme gibt, dann können mit den Panels weder Masterdatenpunkte angelegt noch eine Zuordnung der Server Items zu den Client Items durchgeführt werden. Die Konfiguration muss dann entweder manuell im PARA angelegt oder über den ASCII-Manager eingespielt werden. Der OPC A&E Client legt sich automatisch einen Masterdatenpunkt mit zwei Meldebereichen (0=inaktiv, 1=aktiv) zur Laufzeit an.

[opcae_<servername>] watchdog

Typ
string string int
Wertebereich
<wdMsg> <wdTargetDp> <wsTimeout>
Die Überwachung der OPC AE Verbindung erfolgt folgendermaßen: Der OPC AE Server sendet periodisch ein SimpleEvent mit speziellem Format (Watchdog-Event) an den Client. Beim Ankommen des Watchdog-Events wird ein Timer zurückgesetzt. Läuft der Timer ab bevor ein neuer Watchdog-Event vom Server gesendet wird, wird ein binäres DPE gesetzt (1). Dieses Signal kann für die weitere Verarbeitung verwendet werden (z.B. Redundanzumschaltung, Erstellen von Alarmen, Archivierung). Um den Traffic möglichst gering zu halten, werden nur Änderungen am Watchdog-Status zum System übermittelt. Hinweis: Für einen Server können so viele Watchdogs wie nötig hinzugefügt werden. Hierfür muss einfach die entsprechende Anzahl an Config-Einträgen angegeben werden (siehe Beispiel). Der Config-Eintrag muss im folgenden Format gesetzt werden: watchdog = <wdMsg> <wdTargetDp> <wsTimeout> wdMsg = String der die Watchdog-Nachricht innerhalb des SimpleEvents identifiziert. Kann entweder die gesamte Nachricht oder nur ein Teil davon sein. Wildcards sind nicht erlaubt. wdTargetDp = Datenpunktname des binären Datenpunktelements das auf TRUE gesetzt wird, wenn kein Watchdog-Signal eintrifft. wdTimeOut = Timeout in ms. Beispiel watchdog = "WATCHDOG_PLC1" "wdDpPlc1" 10000 watchdog = "WATCHDOG_PLC2" "wdDpPlc2" 20000 watchdog = "WATCHDOG_PLC3" "wdDpPlc3" 30000 Redundanz Für eine korrekte Funktionsweise in einem redundanten System, müssen folgende Schritte durchgeführt werden: Zieldatenpunkt muss zweimal existieren (für "targetDP" muss "targetDP_2" vorhanden sein). Der Client setzt den richtigen DP automatisch. Damit die Datenpunkte auch am passiven System gesetzt werden ist ein Eintrag in der config.redu Datei notwendig. Die Watchdog-Datenpunkte müssen als "forward Datenpunkte" deklariert werden (siehe fwdDp und fwdDpType).

[opchda]

Einstellungen für den OPC HDA Client

[opchda] serverStateTimer

Typ
uint
Default
30
Wertebereich
>0
Definiert das Intervall in Sekunden in dem Server-Statusinformationen gelesen werden.

[opchdasrv]

Einstellungen für den OPC HDA Server

[opchdasrv] archiveResponseTimeout

Typ
uint
Default
5
Wertebereich
>0
Definiert das Timeout in Sekunden um eine Abfrage an das Archiv durchzuführen. Wenn eine Abfrage (z.B. dpGetPeriod) nicht innerhalb der definierten Zeit durchgeführt werden kann wird eine Fehlermeldung an den OPC HDA Client geliefert.

[opchdasrv] cnsShowSystemNameForLocalViews

Typ
bool
Default
0
Wertebereich
0|1
Bestimmt ob der Systemname des lokalen Systems im OPC Adressraum enthalten ist oder nicht. Dieser Eintrag gilt nur für Serverkonfiguration mittels CNS View.

[opchdasrv] cnsShowViewInPI

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt ob der CNS View-Name im OPC Adressraum enthalten ist oder nicht. Dieser Eintrag gilt nur für Serverkonfiguration mittels CNS View. Wenn dieser Eintrag auf 0 gesetzt wird und der Server mehr als eine View eines Systems exportiert, kann es bei den Itemnamen zu Konflikten kommen.

[opchdasrv] maxHdaReturnValues

Typ
uint
Default
100000
Wertebereich
>0
Definiert wie viele Werte bei einer Anfrage maximal zurück gegeben werden können. Dieser Wert kann auch über den Server-Status ausgelesen werden.

[opchdasrv] rootNode

Typ
string
Default
WinCC_OA
Erlaubt es den Root Knoten des OPC Servers festzulegen. Durch Setzen eines Leerstrings "" kann der Root-Knoten deaktiviert werden und wird somit im Adressraum nicht angezeigt. Hinweis Dieser Eintrag gilt nur bei Verwendung von CNS.

[opchdasrv] vendorName

Typ
string
Default
ETM professional control GmbH
Erlaubt es für den HDA server einen beliebigen Herstellernamen zu definieren.

[OPCSERVER]

Einstellungen für den OPC Server

[OPCSERVER] DEFAULTTRACEFILE

Typ
string
Dieser Eintrag gibt an, in welche Datei Debugmeldungen geschrieben werden sollen. Beispiel: [OPCSERVER] STOPWITHLASTCLIENT = 0 DEFAULTTRACEFILE = "C:/TEMP/MeinLOG.log" TRACEFILE = 1 TRACELEVEL = 8

[OPCSERVER] IgnoreTimestampChange

Typ
bool
Default
1
Wertebereich
0|1
Wenn sich der Zeitstempel eines Items, welches vom OPC Server übertragen wird, ändert, wird diese Änderung ignoriert. Nur die Änderung der Qualität oder Wertes führen zu einer Übertragung. Dies entspricht dem Default-Verhalten (IgnoreTimestampChange = 1). Wenn dieser Config-Eintrag auf 0 gesetzt wird, sendet der OPC Server auch Items im Falle einer Änderung des Zeitstempels

[OPCSERVER] OVERWRITELOGFILE

Typ
bool
Default
1
Wertebereich
0|1
Ermöglicht ein langes Tracing des OPC-Servers. D.h es wird die Log-Datei überschrieben und vor dem Überschreiben kopiert und mit der Endung "bak" versehen (Verhalten wie bisher). Mit "OVERWRITELOGFILE = 0" wird die Trace-Datei gewechselt und mit den Endungen ".0", ".1", ".2" etc. versehen, wobei die Datei mit der höchsten Endung die aktuelle Trace-Datei ist. Damit fällt das Kopieren der Log-Datei weg, was bei sehr großem "maxLogFileSize" länger dauern kann. Verwenden Sie diesen Config-Eintrag, wenn Sie Probleme mit älteren Werten haben (anstatt neue Werte zu erhalten, erhalten Sie alte Werte von dem aktiven OPC-Server).

[OPCSERVER] STOPWITHLASTCLIENT

Typ
int
Default
1
Wertebereich
0|1
Gibt an, ob der WinCC OA OPC Server beim Beenden eines OPC Clients automatisch gestoppt wird. Sind mehrere Clients mit dem OPC Server verbunden, so beendet sich der Server nach Stoppen des letzten Clients.

[OPCSERVER] SubscribeOnUse

Typ
bool
Default
0
Wertebereich
0|1
Gibt an ob der OPC Server alle Items sofort und permanent beim Event Manager anmeldet (Wert 0) oder erst bei Hinzufügen eines Items durch den OPC Client (Wert 1), d.h. erst wenn sich ein Client dafür interessiert. Letztere Modus ist dann sinnvoll wenn der Adressraum sehr viele Items umfasst und die Clients immer nur einen Teil der Items anmeldet haben. Dadurch werden "dpConnect"-Anmeldung beim Event Manager gespart.

[OPCSERVER] TRACEFILE

Typ
int
Default
0
Wertebereich
0|1
Gibt an, ob Debugmeldungen in die mit DEFAULTTRACEFILE angegebene Datei geschrieben werden sollen (1 = ja).

[OPCSERVER] TRACELEVEL

Typ
int
Default
0
Wertebereich
0..31
Gibt an, welche Debugmeldungen geschrieben werden sollen. Der Tracelevel ist eine Summe folgender Werte: 1: Schreibt erfolgreiche Aufrufe in die Log-Datei 2: Schreibt informative Meldungen in die Log-Datei 4: Schreibt Warnungen in die Log-Datei 8: Schreibt Fehler in die Log-Datei 16: Schreibt sonstige Meldungen in die Log-Datei Beispiel: TRACELEVEL = 8 //schreibt nur Fehlermeldungen TRACELEVEL = 12 //schreibt Fehler und Warnungen (4+8) TRACELEVEL = 31 //schreibt alle Meldungen (1+2+4+8+16) Hinweis: Werden die Schlüsselwörter oder die Werte in der Config-Datei falsch geschrieben (z.B. fehlendes " zu Beginn des Pfades beim DEFAULTTRACEFILE) so erfolgt eine Fehlermeldung im Log Viewer und der OPC Server startet nicht.

[OPCSERVER] Vendor

Typ
string
Default
ETM professional control GmbH
Erlaubt es für den OPC DA server einen beliebigen Herstellernamen zu definieren.

[opcsrv]

Allgemeine Einstellungen für den OPC DA Server.

[opcsrv] cnsShowSystemNameForLocalViews

Typ
bool
Default
0
Wertebereich
0|1
Bestimmt ob der Systemname des lokalen Systems im OPC Adressraum enthalten ist oder nicht. Dieser Eintrag gilt nur für Serverkonfiguration mittels CNS View.

[opcsrv] cnsShowViewInPI

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt ob der CNS View-Name im OPC Adressraum enthalten ist oder nicht. Dieser Eintrag gilt nur für Serverkonfiguration mittels CNS View. Wenn dieser Eintrag auf 0 gesetzt wird und der Server mehr als eine View eines Systems exportiert, kann es bei den Itemnamen zu Konflikten kommen.

[opcsrv] CompareOldNew

Typ
int
Default
0
Wertebereich
0|1
Aktiviert einen Alt-/Neu-Vergleich beim WinCC OA OPC Server. Daten von der Peripherie, die sich nicht ändern, werden nicht an WinCC OA geschickt.

[opcsrv] itemIdType

Typ
int
Default
0
Wertebereich
0-2
Mit diesem Eintrag kann ausgewählt werde ob der OPC server die Datenpunktnamen oder den Alias als OPC Itemnamen verwenden soll. Folgenden Werte sind mögliche. 0 -> Datenpunktname 1 -> Alias; wenn es keinen Alias gibt wird der DPE ignoriert 2 -> Alias; wenn es keinen Alias gibt wird der Name verwendet

[opcsrv] rootNode

Typ
string
Default
WinCC_OA
Wertebereich
-
Erlaubt es den Root Knoten des OPC Servers festzulegen.

[opcsrv] server

Typ
string
Default
OPCDAPvssServer
Legt den Servernamen für den internen Datenpunkt fest (ohne führendes "_").

[opcsrv] showDPTs

Typ
bool
Default
0
Wertebereich
0|1
Dieser Eintrag erlaubt es auszuwählen ob Datenpunkttypen im Adressraum abgebildet werden (Wert 1) oder nicht (Wert 0).

[opcua]

Einstellungen für den OPC UA Client

[opcua] alarmFallbackAddress

Typ
string
Default
ns=0;i=0
Mit diesem Eintrag kann eine Rückfalladresse für OPCUA-Alarme definiert werden. Diese Adresse kann verwendet werden um Alarme mit unbekannter ConditionId zu empfangen. Wenn diese Adresse ungleich der Null-NodeId (ns=0;i=0) ist, dann werden empfangen Alarme, die keiner konfigurierten ConditionId zugeordnet werden können der alarmFallbackAdresse zugeordnet.

[opcua] alertCounterAddValue

Typ
uint
Default
0
Wertebereich
0..32
Dieser Config-Eintrag ermöglicht es, einen Counter zu verwenden der bei zeitgleichen Alarmen erhöht wird. Der angegebene Wert legt fest, auf welchem Begleitwert der Counter abgespeichert werden soll. Mit dem abgelegten Wert können zeitgleiche Alarme sortiert werden. Default = 0 -> kein Count wird an einen Begleitwert übergeben. Weitere Informationen finden Sie im Kapitel Alarme und Zustände.

[opcua] applicationUri

Typ
string
Default
urn:host:ETMpc:WinCC_OA_Client
Wertebereich
Uri
Werden für den UA Client spezielle Zertifikate verwendet, ist es unter Umständen notwendig die "Application URI" und die "Product URI" des Clients anzupassen um Probleme im verschlüsselten Modus zu vermeiden. Dies ist notwendig, weil manche Server die Übereinstimmung dieser Parameter im Zertifikat und in der OPC UA CreateSession Anforderung überprüfen. Verwenden Sie in dem Fall die Config-Einträge "applicationUri" und "productUri". Die Defaultwerte dieser Einträge sind: applicationUri = "urn:host:ETMpc:WinCC_OA_Client productUri = "urn:ETMpc:WinCC_OA_Client"

[opcua] autoGQ

Typ
uint
Default
0
Wertebereich
0-3
Definiert, ob der Client 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 Hinweis: Wenn der Config-Eintrag driverNegativeSourceTimeDiff (siehe Kapitel Event-Manager) verwendet wird und Subscriptions mit Zeitstempel vom Server bzw. von der Quelle herangezogen werden, darf keine Redundanzumschaltung während der GQ durchgeführt werden, da sonst der Zeitstempel von unterschiedlichen Servern/Quellen genommen wird. Somit muss autoGQ 0 oder 1 sein.

[opcua] certificateStore

Typ
string
Pfad zum Verzeichnis, in dem sich das Public-Key-Infrastructure-Verzeichnis befindet. Standardmäßig ist das PKI-Verzeichnis für den WinCC OA OPC UA Client in <WinCC OA Versionsverz>/data/opcua/client -> certificateStore = "" oder Eintrag nicht in der Config-Datei eintragen.

[opcua] checkCertificateHost

Typ
bool
Default
1
Wertebereich
0|1
Definiert ob der client prüft ob der Hostnamen/IP Adresse in der Server URL mit dem Hostnamen/IP Adresse im Server-Zertifikat übereinstimmt. Wenn die Überprüfung fehlschlägt ist keine gesicherte Kommunikation möglich.

[opcua] connUserBitWriteFeedback

Typ
int
Default
0
Wertebereich
0..15
Das angegebene Userbit muss bei einem dpSet auf ein DPE mit einer Ein-/Ausgangsadresse gesetzt sein, damit der UA Client für den Schreibbefehl eine Rückmeldung auf das DPE schreibt. Ist der Wert 0 so bedeutet das, dass nie eine Rückmeldung geschrieben wird.

[opcua] eventFallbackAddress

Typ
string
Default
ns=0;i=0
Wertebereich
node ID of the fallback address
Mit diesem Eintrag kann eine Fallback-Adresse für den Empfang von Ereignissen angegeben werden. Der Standardwert dieses Eintrags ist ns=0;i=0. Wenn der Namespace-Index 0 ist, wird keine Fallback-Behandlung durchgeführt. Wenn der Namensraum nicht Null ist, wird die folgende Fallback-Behandlung ausgeführt: Wenn kein sourceNode verfügbar oder konfiguriert ist, versucht der Treiber, das Ereignis auf eine Adresse abzubilden, die aus dem Namespace-Index und dem sourceName des Ereignisses besteht (z.B."ns=20;s=myEventSourceName"). Wenn die Fallback-Knoten-ID nicht null ist und kein übereinstimmender Quellknoten oder Quellname konfiguriert ist, wird das Ereignis der eventFallbackAddress (Namespace und Bezeichner) zugeordnet. Alternativ zu sourceNode können Sie daher den sourceName verwenden. Zum Beispiel: [opcua] eventFallbackAddress = "ns=10;s=all_other_events" Wenn Sie die Adresse "ns=10;s=all_other_events" konfigurieren, erhalten Sie alle Ereignisse, die nicht der sourceNode-Adresse oder "ns=10;s=sourcename"-Adresse zugeordnet werden können.

[opcua] historyReadMode

Typ
uint
Default
0
Wertebereich
0|1
Bestimmt das Verhalten des passiven Clients bei historischen Abfragen. 0: Der passive Client führt genauso wie der aktive Client historischen Abfragen durch 1: Der passive Client führt keine historischen Abfragen durch

[opcua] maxItemsInRequest

Typ
uint
Default
1000
Gibt an wie viele items maximal in einer Lese- bzw. Schreibanforderung enthalten sein können. Damit kann die Größe der Lese- bzw. Schreibanforderungen reduziert werden, wenn der Server hier limitiert ist.

[opcua] maxPendingMethodCalls

Typ
uint
Default
100
Wertebereich
1..10000
Gibt an wie viele Methodenaufrufe parallel vom Client pro Verbindung maximal gestartet werden. Stehen mehr Methodenaufrufe an, müssen diese in der Ausgangsqueue warten bis die ausstehenden Aufrufe vom Server beantwortet werden.

[opcua] maxRequestQueueSize

Typ
uint
Default
10000
Gibt die Größe der Request-Warteschlange für eine OPC UA Server Verbindung an. Wird sie z.B. durch zu schnelles Schreiben überschritten, dann kommt es zum Datenverlust. Diese Queuegröße muss demnach an die zu erwartende Last angepasst werden.

[opcua] nullValueToInvalid

Typ
int
Default
1
Wertebereich
0-2
Legt fest auf welche Art der OPC UA Client "null"-Werte abbildet. Folgende Optionen stehen zur Verfügung: 0 ... Null-Werte werden verworfen 1 ... DPE wird mit aktuellem Zeitstempel auf "ungültig" gesetzt 2 ... DPE wird ohne Änderung des Zeitstempels auf "ungültig" gesetzt

[opcua] productUri

Typ
string
Default
urn:ETMpc:WinCC_OA_Client
Wertebereich
Uri
Werden für den UA Client spezielle Zertifikate verwendet, ist es unter Umständen notwendig die "Application URI" und die "Product URI" des Clients anzupassen um Probleme im verschlüsselten Modus zu vermeiden. Dies ist deshalb notwendig, weil manche Server die Übereinstimmung dieser Parameter im Zertifikat und in der OPC UA CreateSession Anforderung überprüfen. Verwenden Sie in dem Fall die Config-Einträge "applicationUri" und "productUri". Die Defaultwerte dieser Einträge sind: applicationUri = "urn:host:ETMpc:WinCC_OA_Client productUri = "urn:ETMpc:WinCC_OA_Client"

[opcua] server

Typ
string
Definiert den Namen des internen Verbindungsdatenpunktes, der für einen Server verwendet wird. Dieser config Eintrag ist aktuell nicht mehr notwendig, da die Zuordnung der Datenpunkte dynamisch mittels Adresskonfig oder internen Datenpunkt erfolgt.

[opcua] serverStateTimer

Typ
uint
Default
5000
Wertebereich
>0
Definiert das Intervall in Millisekunden in dem Serverstatus gelesen werden.

[opcua] sessionTimeout

Typ
uint
Default
1200000
Wertebereich
>5000
Dieser Eintrag definiert den Session Timeout, der vom Client angefordert werden soll. Der Server kann denn Wert übersteuern wenn er nicht in den erlaubten Bereich für den Server fällt.

[opcua] setInvalidForConnLoss

Typ
uint
Default
0
Wertebereich
0 - 2
Mittels des Config Eintrages kann bestimmt werden ob die Werte welche der Treiber liefert bei einem Verbindungsverlust auf ungültig gesetzt werden. Optional kann ebenfalls der Zeitstempel angepasst werden. Folgende Optionen stehen zur Verfügung: 0 => Invalid Bit wird nicht gesetzt 1 => Invalid Bit wird gesetzt (und der Zeitstempel wird an die Zeit des Verbindungsverlustes angepasst) 2 => Invalid Bit wird gesetzt (ohne den Zeitstempel anzupassen)

[opcua] timestampDefaultForRead

Typ
int
Default
3
Dieser Eintrag bestimmt welcher Zeitstempel bei Leseaufrufen verwendet werden soll, wenn die Adresse in keiner Subscription ist. Folgende Möglichkeiten stehen zur Auswahl: 0 => benutze Zeitstempel von Quelle 1 => benutze Zeitstempel von Server 2 => nicht benutzt (Zeitstempel von beiden) 3 => benutze Empfangszeitstempel

[opcua] timestampWriteMode

Typ
int
Default
0
Wertebereich
0..3
Definiert welchen Zeitstempel der OPC UA Treiber bei Schreib-Anfragen setzen soll. 0 - der Treiber setzt keinen Zeitstempel bei Schreib-Anfragen 1 - der Treiber setzt die _stime des Wertes als "source timestamp" (Quell-Zeitstempel), der "server timestamp" (Server-Zeitstempel) wird nicht gesetzt 2 - der Treiber setzt die _stime des Wertes als "server timestamp" (Server-Zeitstempel), der "source timestamp" (Quell-Zeitstempel) wird nicht gesetzt 3 - der Treiber setzt die _stime des Wertes als "source timestamp" (Quell-Zeitstempel) und "server timestamp" (Server-Zeitstempel)

[opcua] uaCallTimeout

Typ
int
Default
10000
Der Eintrag legt die Zeit in Millisekunden fest, in der ein OPC UA Service-Aufruf erfolgen muss. Kehrt der Aufruf in der Zeit nicht zurück, wird der Aufruf mit den Fehler Bad_Timeout abgebrochen. Ein kleiner Wert sorgt für eine schnellere Detektion eines Verbindungsverlustes. Dadurch ergibt sich aber ein höheres Risiko, dass ein Aufruf abgebrochen wird falls der Server für die Bearbeitung länger braucht.

[opcua] uaLocalIds

Typ
string
Default
en
Der Eintrag legt die vom Client gewünschten Sprachen fest, die beim Aktivieren der OPC UA Session angeben werden. Der Server wählt dann jene Sprache für die Session aus, die er von der angegebenen Liste als erstes zur Verfügung stellen kann. Kann der Server keine Sprache aus der Liste zur Verfügung stellen, so wählt der Server eine seiner Sprachen aus. Die Sprachidentifier müssen mit ',' getrennt eingegeben werden (z.B. "en,de-AT,de").

[opcua] userBitHistoryRead

Typ
int
Default
0
Wertebereich
0..32
Das angegebene Userbit wird für Werte die über eine historische Abfrage ermittelt werden gesetzt. Ist der Wert 0 so wird kein Userbit gesetzt. Wenn die Werte aus einer historischen Abfrage als Korrekturwerte geschrieben werden sollen, muss zusätzlich der Config-Eintrag histDataBits in der Sektion [opcua] entsprechend gesetzt werden.

[opcua] userBitWriteFeedback

Typ
int
Default
0
Wertebereich
0..32
Mit dem angegebenen Userbit werden die Wertänderungen aufgrund des Write Feedback markiert. Der Wert 0 bedeutet, dass keine Markierung stattfindet.

[opcuasrv]

Einstellungen für den OPC UA Server

[opcuasrv] certificateStore

Typ
string
Pfad zum Verzeichnis, in dem sich das Public-Key-Infrastruktur-Verzeichnis befindet. Defaultmäßig ist das PKI-Verzeichnis für den WinCC OA OPC UA Server unter <WinCC OA Versionsverz>/data/opcua/server. Dieser Config-Eintrag erlaubt es den Pfad zum PKI-Verzeichnis zu ändern.

[opcuasrv] checkApplicationUri

Typ
bool
Default
1
Wertebereich
0|1
Definiert ob der Server prüft ob die Application URI, die der Client beim Verbindungsaufbau schickt mit jener im Client Zertifikat übereinstimmt. Wenn die Überprüfung fehlschlägt ist keine gesicherte Kommunikation möglich.

[opcuasrv] cnsShowSystemNameForLocalViews

Typ
bool
Default
0
Wertebereich
0|1
Bestimmt ob der Systemname des lokalen Systems im OPC Adressraum enthalten ist oder nicht. Dieser Eintrag gilt nur für Serverkonfiguration mittels CNS View.

[opcuasrv] cnsShowViewInPI

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt ob der CNS View-Name im OPC Adressraum enthalten ist oder nicht. Dieser Eintrag gilt nur für Serverkonfiguration mittels CNS View. Wenn dieser Eintrag auf 0 gesetzt wird und der Server mehr als eine View eines Systems exportiert, kann es bei den Itemnamen zu Konflikten kommen.

[opcuasrv] conditionSuffix

Typ
string
Default
_@condition
Setzt den "condition" Suffix.

[opcuasrv] disableSecurity

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob der Server die Sicherheitsstrategie "None" akzeptiert. 1 = ja; 0 = nein.

[opcuasrv] discoveryServer

Typ
string
URL eines Discovery Servers, bei dem sich der OPC UA Server registrieren soll. Dieser Eintrag kann mehrfach vorhanden sein, wenn sich der Server bei mehreren Discovery Servern registrieren soll.

[opcuasrv] enableAnonymous

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob die Benutzer-/Passwort-Überprüfung ausgeschaltet ist. 1 = ja; 0 = nein. Für weitere Informationen siehe Kapitel Benutzer-Authentifizierung.

[opcuasrv] externalAckPrefix

Typ
string uint
Default
-
Wertebereich
<alertclass prefix> <driver number>
Der Config Eintrag ermöglicht es für den OPC UA Server externe Alarme zu quittieren. Hierfür muss der Config EIntrag unter verwendung des Alarmklassen Präfixes sowie der Treiber Nummer, welche angibt welcher Treiber die Alarme quittieren soll, gesetzt werden. Dieser Config Eintrag kann mehrmals gesetzt werden. Beispiel: externalAckPrefix = "BAC" 1 Alle Alarme mit einer Alarmklasse, welche mit "BAC" beginnt werden durch den _Driver1 DP quittiert.

[opcuasrv] historyNumValuesPerNode

Typ
uint
Default
10000
Wertebereich
>= 0
Maximale Anzahl an Werten in einem readRaw-Ergebnis für ein einzelnes Element. Der Wert 0 bedeutet, dass kein Limit verwendet wird.

[opcuasrv] maxSessionTimeout

Typ
int
Default
60000
Wertebereich
>= 0
Setzt den maximalen Session Timeout (in Millisekunden). Bei einem Wert von 0 wird das Limit nicht beachtet.

[opcuasrv] maxVcMessageSize

Typ
unsigned integer
Default
200
Wertebereich
>= 0
Definiert wie viele Wertänderungen eine VC (Value Change) Message, die der UA Server zum Event schickt, maximal enthalten darf.

[opcuasrv] nodeIdType

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob der Server den Datenpunkt-Namen oder -Alias als NodeId verwendet: 0 -> DP-Namen 1 -> DP-Alias

[opcuasrv] notifierSuffix

Typ
string
Default
_@notifier
Setzt den "notifier" Suffix.

[opcuasrv] numberOfClients

Typ
uint
Default
0
Wertebereich
>=0
Definiert die maximale Anzahl der Clients, die sich zu einem Server verbinden dürfen. Der Wert 0 bedeutet, dass sich theoretisch unendlich viele Clients zum Server verbinden können.

[opcuasrv] opcuaAlarmGroup

Typ
string
Default
OPCUAAlarm
Wertebereich
<Alarm DP Group Alias>
Legt anhand des Alias fest welche Datenpunkt Gruppe für die Alarmdaten verwendet werden soll. Hierbei kann für jeden Server eine eigene Gruppe definiert werden. Hinweis: Beim Anlegen einer neuen Datenpunktgruppe für den OPC UA Server muss ein Alias vergeben werden.

[opcuasrv] opcuaHAReadGroup

Typ
string
Default
OPCUAHARead
Wertebereich
<Historical Access DPGroup Alias>
Legt anhand des Alias fest, welche Datenpunkt-Gruppe für die historischen Daten des Servers verwendet werden soll. Hierbei kann für jeden Server eine eigene Gruppe definiert werden. Hinweis Beim Anlegen einer neuen Datenpunktgruppe für den OPC UA Server muss ein Alias vergeben werden.

[opcuasrv] opcuaReadGroup

Typ
string
Default
OPCUARead
Wertebereich
<Read DP Group Alias>
Legt anhand des Alias fest welche Datenpunkt Gruppe für die gelesenen Daten verwendet werden soll. Hierbei kann für jeden Server eine eigene Gruppe definiert werden. Hinweis: Beim Anlegen einer neuen Datenpunktgruppe für den OPC UA Server muss ein Alias vergeben werden.

[opcuasrv] opcuaWriteGroup

Typ
string
Default
OPCUAWrite
Wertebereich
<Write DP Group Alias>
Legt anhand des Alias fest welche Datenpunkt Gruppe für die geschriebenen Daten verwendet werden soll. Hierbei kann für jeden Server eine eigene Gruppe definiert werden. Hinweis: Beim Anlegen einer neuen Datenpunktgruppe für den OPC UA Server muss ein Alias vergeben werden.

[opcuasrv] pvRangeCheck

Typ
bool
Default
0
Wertebereich
0|1
Per Default (0) werden Schreibanfragen im OPC UA Server nicht auf Wertebereichsüberschreitung geprüft. Wird dies benötigt, muss der Eintrag auf 1 gesetzt werden, damit der OPC UA Server alle _pv_range Configs der verbundenen DPE lädt und die konfigurierten Werte zur Wertebereichsprüfung der Client-Schreibanfragen verwendet. Wenn die Werte der _pv_range Configs verändert werden, muss der OPC UA Server neu gestartet werden!

[opcuasrv] reduServerDiscoveryUrl

Typ
string
Dieser Eintrag ist notwendig, wenn der redundante UA server in die Discovery-Liste des Servers eingetragen werden soll. Damit kann ein Client automatisch die URL des redundanten Servers bestimmen. Wird der Eintrag nicht gesetzt, so wird der redundante Server nicht in die Discovery-Liste eingetragen.

[opcuasrv] reduServerInstanceName

Typ
string
Dieser Eintrag dient zur Konfiguration des Names des redundanten UA servers, wenn der Server im Redundanzmodus 'Hot' läuft. Ist der Eintrag nicht gesetzt so versucht der Treiber den Namen des redundanten Servers automatisch aus den Projekteinstellungen zu bestimmen.

[opcuasrv] reduServerInstanceUri

Typ
string
Dieser Eintrag dient zur Konfiguration der URI des redundanten UA servers, wenn der Server im Redundanzmodus 'Hot' läuft. Diese wird im ServerUriArray vom RedundancyServer Objekt eingefügt. Ist der Eintrag nicht gesetzt so versucht der Treiber die URI des redundanten Servers automatisch aus den Projekteinstellungen zu bestimmen.

[opcuasrv] sendCertificateChain

Typ
bool
Default
1
Wertebereich
0|1
Definiert ob der Server die Zertifikatkette zum Client schicken soll. Manche ältere Clients können damit nicht umgehen deshalb bietet dieser config Eintrag die Möglichkeit das zu deaktivieren.

[opcuasrv] server

Typ
string
Default
OPCUAPvssServer
Legt den Servernamen für den internen Datenpunkt fest (ohne führendes "_").

[opcuasrv] serverBuildDate

Typ
string
Default
<AutoGeneratedBuildDate>
Legt das Build Datum im ISO 8601 Format fest, z.B. "2020-03-16T09:41:27.179Z". Diese Information finden Sie im OPC UA Knoten unter "Server.ServerStatus.BuildInfo".

[opcuasrv] serverBuildNumber

Typ
string
Default
<AutoGeneratedBuildNumber>
Legt die Build Version fest. Diese Information finden Sie im OPC UA Knoten unter "Server.ServerStatus.BuildInfo".

[opcuasrv] serverCertificate

Typ
string
Default
PVSS_UA_server.der bzw. ab Version 3.11: WinCC_OA_UA_Server.der
Zertifikat, welches der Server für seine Identifizierung verwenden soll.

[opcuasrv] serverInstanceName

Typ
string
Mithilfe dieses Eintrages können Sie einen beliebigen Servernamen setzen, wenn Ihnen der automatisch generierte Name nicht gefällt.

[opcuasrv] serverInstancePrefix

Typ
string
Default
WinCC_OA
Definiert das Präfix für die Server-URI und für den Namen.

[opcuasrv] serverInstanceURI

Typ
string
Mithilfe dieses Eintrages können Sie eine beliebige Server-URI setzen, wenn Ihnen die automatisch generierte URI nicht gefällt.

[opcuasrv] serverManufacturerName

Typ
string
Default
ETM professional control GmbH - a Siemens company
Legt den Produktnamen fest. Diese Information finden Sie im OPC UA Knoten unter "Server.ServerStatus.BuildInfo".

[opcuasrv] serverProductName

Typ
string
Default
WinCC OA OPC UA Server
Legt den Produktnamen fest. Diese Information finden Sie im OPC UA Knoten unter "Server.ServerStatus.BuildInfo".

[opcuasrv] serverProductUri

Typ
string
Default
http://www.etm.at/WinCC_OA
Legt die Produkt URI fest. Diese Information finden Sie im OPC UA Knoten unter "Server.ServerStatus.BuildInfo".

[opcuasrv] serverSoftwareVersion

Typ
string
Default
<WinCC OA version>
Legt die Softwareversion fest. Diese Information finden Sie im OPC UA Knoten unter "Server.ServerStatus.BuildInfo".

[opcuasrv] showDPTs

Typ
bool
Default
1
Wertebereich
0|1
Dieser Eintrag erlaubt es auszuwählen ob Datenpunkttypen im Adressraum abgebildet werden (Wert 1) oder nicht (Wert 0).

[opcuasrv] sourceSuffix

Typ
string
Default
_@source
Setzt den "source" Suffix.

[opcuasrv] tcpServerPort

Typ
uint
Default
4840
Wertebereich
>=0
Portnummer des TCP Servers. Mittels dieses wird definiert, welchen Serverport der OPC UA Server öffnen darf.

[opcuasrv] timestampWriteMode

Typ
int
Default
0
Wertebereich
0..2
Definiert welchen Zeitstempel der OPC UA Server bei empfangenen Schreib-Anfragen verwenden soll. 0 - der Server verwendet seinen lokalen Zeitstempel für empfangene Wertänderungen von einem Client (default) 1 - der Server verwendet den vom Client empfangenen "source timestamp" (Quell-Zeitstempel) 2 - der Server verwendet den vom Client empfangenen "server timestamp" (Server-Zeitstempel) Bitte beachten Sie: Wenn die Option 1 oder 2 ausgewählt ist, akzeptiert der Server Schreib-Anfragen mit gesetztem "source timestamp" (Quell-Zeitstempel) und/oder "server timestamp" (Server-Zeitstempel). Wenn die Option 1 oder 2 ausgewählt ist und der gewünschte Zeitstempel nicht gesetzt ist, wird die lokale Zeit verwendet (wie bei Option 0).

[opcuasrv] uaBadAttributes

Typ
string
Default
_out_prange,_out_range,_exp_inv,_aut_inv,_stime_inv
Wertebereich
<attribute1>,<attribute2>,...,<attributeX>
Erlaubt es festzulegen welche Attribute einen BAD Status innerhalb des OPC UA Servers auslösen können.

[opcuasrv] uaFloatingPointType

Typ
bool
Default
0
Wertebereich
0|1
Der Config-Eintrag definiert wie ALLE "float" DPEs im Addressraum mit dem OPC UA Datentyp "Float" abgebildet werden. Mögliche Wert sind: 0 - Double (64bit Double Precision) - Default 1 - Float (32bit Single Precision) Bitte beachten Sie: Der OPC UA Datentyp für "float" DPEs kann nur global für alle DPEs konfiguriert werden und sich NICHT individuell für einzelne "float" DPEs unterscheiden. Bei der Konvertierung der auf den DPEs speicherten Gleitkommazahlen im 64 Bit (double precision) Format auf den OPC UA Datentyp "Float" kann es zu einem Verlust der Genauigkeit kommen. Ist der Wert einer 64 Bit Gleitkommazahl auf einem "float" DPE größer oder kleiner als der Zahlenbereich des OPC UA Datentyps "Float" (+/- 3.4*1038), so wird der Wert im Adressraum auf "+/- Unendlich" gesetzt.

[opcuasrv] uaMaxDataQueueSize

Typ
int
Default
100
Wertebereich
>= 1
Setzt die maximale Queuegröße, die der Server für ModifiedItems akzeptiert.

[opcuasrv] uaMaxRetransmissionQueueSize

Typ
int
Default
20
Wertebereich
>= 1
Setzt die maximale Anzahl von Nachrichten, die der Server in der Republish Queue pro Subskription erlaubt.

[opcuasrv] uaSecurityMode

Typ
int
Wertebereich
1|2
Definiert den Sicherheitsmodus. 1 - Der niedrigste Sicherheitsmodus der akzeptiert wird ist "Sign" 2 - Der niedrigste Sicherheitsmodus der akzeptiert wird ist "Sign and Encrypt" Hinweis: Wenn der Config-Eintrag uaSecurityPolicy auf 0 (None) gesetzt wird, so wird auch dieser Config-Eintrag nicht berücksichtigt.

[opcuasrv] uaSecurityPolicy

Typ
int
Default
3
Wertebereich
0..5
Definiert die Sicherheitsstufe. 0 - Die niedrigste Sicherheitsstrategie die akzeptiert wird ist "None" 1 - Die niedrigste Sicherheitsstrategie die akzeptiert wird ist "Basic128Rsa15" 2 - Die niedrigste Sicherheitsstrategie die akzeptiert wird ist "Basic256" 3 - Die niedrigste Sicherheitsstrategie die akzeptiert wird ist "Basic256Sha256" 4 - Die niedrigste Sicherheitsstrategie die akzeptiert wird ist "Aes128Sha256RsaOaep" 5 - Die niedrigste Sicherheitsstrategie die akzeptiert wird ist "Aes256Sha256RsaPss"

[opcuasrv] uaUncertainAttributes

Typ
string
Wertebereich
<attribute1>,<attribute2>,...,<attributeX>
Erlaubt es festzulegen welche Attribute einen UNCERTAIN Status innerhalb des OPC UA Servers auslösen können.

[opcuasrv] useClientUser

Typ
bool
Default
0
Wertebereich
0|1
Dieser Eintrag erlaubt es auszuwählen ob Wertänderungen und Alarmquittierungen unter dem Benutzer des Clients gemacht werden sollen oder unter dem Benutzer unter dem der Server läuft.

[opcuasrv] useOnlineValueForConnect

Typ
bool
Default
1
Wertebereich
0|1
Per Default (1) überträgt der Server "online"-Werte zum verbundenen Client. Sollte es erforderlich sein, dass "original"-Werte übertragen werden, muss dieser Eintrag auf 0 gesetzt werden. Jedoch ist zu beachten, dass in diesem Fall keine Default-Werte berücksichtigt werden.

[opc_<symbolic_servername>]

Serverspezifische Einstellungen für den OPC Client.

[opc_<symbolic_servername>] addItemsSingle

Typ
string
Default
no
Wertebereich
yes|no
Beim Start des Clients können die Items jeder Gruppe im Server wahlweise einzeln oder auf einmal angelegt werden. Dieser Eintrag legt fest, wie die Items zu einer Gruppe hinzugefügt werden: [opc_server1] addItemsSingle = "yes" Fügt die Items einzeln zur einer Gruppe hinzu. Mit dem Wert "No" werden alle Items auf einmal zur Gruppe hinzugefügt. Werden alle Items auf einmal angelegt, so startet der Client schneller hoch. Allerdings haben manche Server damit Probleme. Existiert kein Eintrag im Config-File, so werden alle Items auf einmalangelegt. Hinweis: Mit der Debuginfo -dbg 2 erfolgt eine Ausgabe des Anmeldemodus im Log Viewer.

[opc_<symbolic_servername>] browseOnStart

Typ
string
Default
yes
Wertebereich
yes|no
Wenn dieser Config-Eintrag nicht bzw. mit browseOnStart = "yes" in der Config-Datei gesetzt ist, wird ein Browsen des Server-Adressraumes durchgeführt und die Items des Servers werden im internen Datenpunkt des Servers (_OPC Server -> _ETM.ItemIds) abgelegt, nachdem der Client gestoppt und neu gestartet wurde. Ist der Eintrag auf browseOnStart = "no" eingestellt, so wird nach dem Hochlauf des Clients keine Info im internen Datenpunkt des Servers abgelegt. Es steht lediglich: 'no browse info available'.

[opc_<symbolic_servername>] enableAddrBrowsing

Typ
string
Default
yes
Wertebereich
yes|no
Über diesen Eintrag kann das Abfragen der im Server parametrierten Items erlaubt bzw. verboten werden. Normalerweise bleibt dieser Wert auf "yes". Wenn dieser Eintrag nicht gesetzt wird, dann wird der Defaultwert "yes" verwendet.

[opc_<symbolic_servername>] enableCALLR

Typ
string
Default
no
Wertebereich
yes|no
Für zwei Kopplungen mit Festo und WSK (nicht im WinCC OA Lieferumfang enthalten) kann dieser Eintrag verwendet werden. Dieser Eintrag erlaubt die Verwendung des CALL-R Interfaces. Über dieses Interface kann ein CALL-R Client, in dem Fall WinCC OA, neue Items im OPC Server parametrieren. Die Items, die den Gruppen hinzugefügt werden, werden dann über ICallrItemConfig::CreateCallrItems vom Client im Server angelegt. Wenn dieser Eintrag nicht gesetzt wird, dann wird der Defaultwert "no" verwendet.

[opc_<symbolic_servername>] gaBitOnStart

Typ
string
Default
yes
Wertebereich
yes|no
Wird ein Item beim OPC-Server angemeldet, dann kommt vom Server ein Callback (als Spontanantwort). Dieser Fall wird wie eine Generalabfrage weiterbehandelt. Das gilt nur, wenn zum Zeitpunkt des Anmeldens die betroffene OPC-Gruppe aktiv ist und Callbacks aktieviert sind (siehe auch Panel OPC Gruppe). Mit diesem Config-Eintrag wird bestimmt, ob beim ersten Callback das GA-Bit gesetzt wird.

[opc_<symbolic_servername>] hierarchySeparator

Typ
string
Default
.
In der Config-Datei kann der Eintrag [opc_server1] hierarchySeparator = "/" gesetzt werden. Default: "."; Dieser Eintrag definiert ein Trennzeichen. Ist dieses Zeichen in der Bezeichnung eines Item-Namens enthalten, so erfolgt eine Auftrennung des Items in eine zusätzliche Unterebene beim hierarchischen Browsen, z.B. Tag22/test ergibt: Tag22 test Da bei manchen OPC Servern Punkte in den Item-Namen vorkommen, muss der Config-Eintrag mit einem Zeichen versehen werden, welches nicht in den Item-Namen vorkommt, um die Anzeige der Items richtig darzustellen.

[opc_<symbolic_servername>] invertPrefix

Typ
string
Default
no
Wertebereich
yes|no
Invertiert das Verhalten der permanenten und nonpermanenten Gruppen, wenn invertPrefix = "yes". Beispiel: [opc_ABB] nonpermanentKey = "PERMANENT" invertPrefix = "yes"

[opc_<symbolic_servername>] ioTimeout

Typ
unsigned
Default
2000 [msec]
Wertebereich
> 0
Der Treiber ruft readData, writeData und refreshData, also Lesen, Schreiben und Generalabfrage, in einem eigenen Thread auf, um ein Blockieren im Server zu vermeiden. Der Eintrag gibt die Zeit in Millisekunden an, innerhalb derer der Aufruf erfolgt sein muss. Kehrt der Aufruf in der Zeit nicht zurück, wird davon ausgegangen, dass der OPC-Server blockiert und der Thread wird beendet. Ein blockierender Server ist oft die Folge eines Softwarefehlers im OPC-Server, es kann aber auch sein, dass die Abfrage selbst mehr Zeit in Anspruch nimmt. Es ist also zunächst zu prüfen, ob eine Erhöhung von ioTimeout Abhilfe verschafft. Sie können es z.B. erhöhen, wenn bekannt ist, dass die Verbindung zum Server sehr langsam ist.

[opc_<symbolic_servername>] nonpermanentKey

Typ
string
Nicht-permanente OPC Gruppen sind solche, deren OPC Items nur bei Bedarf am OPC Server angemeldet werden. Mit diesen Gruppen ist es möglich Beschränkungen des OPC Servers im Bezug auf Anzahl der angemeldeten Items zu umgehen. Items aus nicht-permanenten Gruppen werden nur beim Server angemeldet, wenn ein Wert geschrieben werden muss, oder wenn ein User Interface bzw. ein CTRL Skript im lokalen oder im verteilen System ein dpConnect() auf das zugehörige DPE aufrecht haben. D.h. zum Beispiel, dass Items nur angemeldet werden, wenn die zugehörigen DPEs in einem Panel angezeigt werden. Wird das Panel geschlossen, so werden die Items beim Server wieder abgemeldet. Nicht-permanente Gruppen sollten nur verwendet werden, wenn eine Einschränkung bezüglich Itemanzahl am Server existiert, da es durch das An- und Abmelden zu einer erhöhten Last zur Laufzeit kommen kann. Zudem dürfen Items, die archiviert werden oder alarmbehandelt sind, nicht in nicht-permanenten Gruppen vorkommen, da diese nur unter obigen Bedingungen gelesen werden. Der Eintrag "nonpermanentKey" in der serverspezifischen Sektion ist das Namenspräfix für die nicht-permanenten Gruppen und gibt an welche Gruppen dies sind. Mit dem Eintrag "invertPrefix" kann das Verhalten invertiert werden (d.h. eine nicht-permanente Gruppe wird permanent). [opc_ABB] nonpermanentKey = "PERMANENT" invertPrefix = "yes"

[opc_<symbolic_servername>] reconnectOnFailedState

Typ
bool
Default
1
Wertebereich
0|1
Definiert ob der Client versucht die Verbindung wiederherzustellen wenn OPC-Server im Status "Failed" ist. 0: Es wird nur die Statusänderung des Servers angezeigt. Der Serverstatus im WinCC OA Konfigurationspanel wechselt auf 2. 1: Der Serverstatus in WinCC OA wechselt auf 0 und der Client versucht die Verbindung wiederherzustellen.

[opc_<symbolic_servername>] sendNoValueForQuality

Typ
string
Wertebereich
8 digits
Der Wert für diesen Eintrag muss ein 8-stelliger String in der Form "1100????" sein. 1 bedeutet: an dieser Stelle muss 1 stehen. 0 bedeutet: an dieser Stelle muss 0 stehen. Jedes andere Zeichen bedeutet, dass dieses Bit nicht berücksichtigt wird. Werte, die von einem OPC-Server kommen und diese hier eingetragene Qualitätsinformation haben, werden nicht an den Event-Manager weitergeschickt. In dem Fall wird nur das Invalid-Bit vom Treiber gesetzt, d.h. der alte Wert bleibt am Datenpunkt erhalten. Für einen Server kann es auch mehrere solcher Einträge geben.

[opc_<symbolic_servername>] setInvalidForConnLoss

Typ
uint
Default
0
Wertebereich
0..2
Der OPC Client ist in der Lage das DPE Invalid-Bit (_aut_inv Attribut) für alle Eingabe- oder Eingabe-/Ausgabe-Adressen, wenn die Verbindung zu dem OPC Server verloren geht oder nicht aufgebaut werden kann. Die Invalid-Bits werden zurückgesetzt sobald der nächste gültige Wert erhalten wird. ACHTUNG: Invalid-Bits werden nicht gesetzt, wenn der OPC Client beendet wurde. Dieses Feature kann für jeden Server einzeln aktiviert werden, indem der Config-Eintrag setInvalidForConnLoss = 1 innerhalb der Config-Datei des betroffenen OPC-Servers (z.B. [opc_ServerX]) gesetzt wird. Der Defaultwert des Config-Eintrages ist 0, was bedeutet, dass das Invalid-Bit nicht gesetzt wird.

[opc_<symbolic_servername>] vtEmptyArrayRead

Typ
bool
Default
0
Wertebereich
1|0
Manche OPC Server akzeptieren vom Client keine typspezifische Auswahl für Array Datentypen. Wird dieser Eintrag auf 1 gesetzt, wird die Anmeldung für Arrays auf eine unspezifische mit VT_EMPTY geändert. Das bedeutet dass der Client keinen bestimmten Typ fordert, welcher normalerweise vom DPE Typ bzw. Transformationstyp abgeleitet wird. Außerdem kann der OPC Client unabhängig davon ob der Array-Index bei 0 oder 1 beginnt, Daten empfangen. Achtung: Der Benutzer ist verantwortlich für die korrekte Auswahl des Transformationstypen, da keine Typumwandlung vom Server durchgeführt wird.

[opc_<symbolic_servername>] watchdogGroup

Typ
string int int
Wertebereich
<watchdog group> <mult: >= 1> <validToReset6gt;
Watchdog-Gruppen enthalten nur ein Item und erwarten, dass das Item einen Wert alle n Sekunden sendet (n entspricht einem Intervall, welcher mittels des zweiten Parameters des Config-Eintrages "mult" festgelegt wird und der (tatsächlichen) Update-Rate der OPC-Gruppe (in ms): ABB_Watch_mult * ActualUpdateRate Beispiel: [opc_server1] watchdogGroup = "ABB_Watch" 3 10 Hinweis: ABB_Watch ist eine Watchdog-Gruppe. Erwartetes Änderungsintervall n: 3 (mult) * 1000 (ActualUpdateRate) = 3000 ms Die aktuelle Update-Rate wird im entsprechenden OPC Group DP angezeigt. Wenn z.B. ein Zähler in der Peripherie verwendet wird, muss dieser auf eine Inkrementzeit, die weniger als 3000 ms beträgt, gesetzt werden. Der Minimalwert für mult ist 1 ms. Hinweis: Wenn ein Item in einer Watchdog-Gruppe nicht einen Wert innerhalb von 3 * n Millisekunden sendet, setzt die Gruppe das allItems Invalid-Bit. Wenn ein Watchdog ausgelöst wurde, weil kein Watchdog-Signal empfangen wurde, wird der Watchdog vom Treiber nicht beim ersten Signal zurückgesetzt sondern erst, wenn Watchdog-Signale für mindestens ABB_WD_validToReset-Sekunden ohne Störung empfangen wurden. Wenn (wie in unserem Beispiel) diese Periode 10 Sekunden ist und der Client Signale nur für 8 Sekunden erhält, setzt der Treiber einen internen Zähler und startet von Anfang. Dieses Feature wurde implementiert um zu verhindern, dass Watchdog laufend gesetzt und zurückgesetzt wird (Flattern). Die folgenden Einschränkungen gelten für die Watchdog-Gruppen: Wenn die Update-Rate, die vom Server garantiert wird, kleiner als das Watchdog-Intervall ist, signalisiert die Gruppe das über den Status "AllItems Invalid". Watchdog-Gruppen sind immer permanente Gruppen. Die Definition einer Watchdog-Gruppe ist stärker als einer nonpermanenten Gruppe. Watchdog-Gruppen akzeptieren nur ein Item, da sie eine Verbindung überwachen. Es ist nicht möglich eine Watchdog-Gruppe zur Laufzeit zu erstellen. Der Client muss neu gestartet werden. In einem redundanten System hat der aktuelle Wert des Items keine Bedeutung, da es auf dem passiven System vom aktiven System überschrieben werden kann. Hinweis: Der _OPCGroup-Datenpunkt enthält ein Bool-Element, das auf TRUE gesetzt wird, wenn die Gruppe eine Watchdog-Gruppe ist. Der Watchdog-Mechanismus kann auch für Items, die Werte nicht spontan senden, verwendet werden. z.B. ein Skript startet ein Aktualisierungs- und Lese-Vorgang für das Item (in einer Gruppe) alle n-2 Sekunden und die Gruppe speichert die Werte die empfangen wurden. Wenn nicht genug Werte empfangen wurden wird "AllItems Invalid" gesetzt und ein Kommunikationsfehler tritt auf. Das Gerät muss gelesen werden. Ansonsten funktioniert dieser Mechanismus nicht, da es laufend Werte vom Cache gibt. Achtung: Wenn mehr als eine Watchdog-Gruppe verwendet wird, müssen die Einträge abwechselnd gesetzt werden.

[PMAgent]

Einstellungen für das PM-Add-On.

[PMAgent] defaultLang

Typ
langString
Default
en_US
Wertebereich
WinCC OA languages
Einheit
language string
Definiert die Sprache für das PM-Add-On. Die Default-Sprache ist "en_US". Ein Fallback-Mechanismus selektiert eine weitere Sprache, wenn die gesetzte Sprache nicht verfügbar ist z.B. de_CH --> de_AT.

[PMAgent] httpsPort

Typ
int
Default
3060
Wertebereich
3060
Definiert den HTTPS-Port für das PM-Add-On.

[PMAgent] maxBufferSize

Typ
int
Default
3000
Wertebereich
100-6000
Definiert den Datentransfer zwischen dem PM-AGENTEN und PM-SERVER. Grundsätzlich ist die Puffergröße abhängig vom System. Es kommt darauf an, wieviele Wertänderungen im System tatsächlich vorkommen und welche Einstellungen im PM-SERVER vorgenommen wurden (die Glättung, die Puffergröße der Abfrage, das Abfrageintervall). Generell gilt, je weniger Wertänderungen an den PM-SERVER übertragen werden, desto weniger wichtig ist die Puffergrößer.

[pmon]

Einstellungen für den Prozess Monitor (Pmon)

[pmon] aliveSeconds

Typ
int
Default
30
Wertebereich
> 0
Innerhalb der angegebenen Zeit in Sekunden muss ein Manager, welcher vom Pmon überwacht wird, seinen Alive-Counter erhöhen (also ein Lebenszeichen von sich geben), sonst erkennt der Pmon diesen Manager als "blocked" und startet ein externes script (crashAction).

[pmon] allowSNMP

Typ
string
Default
no
Wertebereich
yes, no
Definiert, ob der WCCILpmon auch den SNMP Port öffnet und somit auf SNMP-Anfragen reagiert.

[pmon] allowSNMPCommands

Typ
string
Default
no
Wertebereich
yes/no
Definiert, ob via SNMP MIB-Einträge geändert werden dürfen. Siehe auch Kapitel MIB.

[pmon] delayStartSeconds

Typ
int
Default
0
Wertebereich
>= 0
Verzögert den Start des Pmons um die angegebene Zeit in Sekunden. In der Zeit, in der der Pmon auf den Start wartet, können keine Aktionen in der Console durchgeführt werden.

[pmon] LAProxyPortNr

Typ
unsigned int
Default
4701
Wertebereich
1024 .. 65535 (see RFC 1340, or /etc/services)
Hier gibt man die Portnummer vom SNMP Live Agent an, für den der Pmon als Proxy fungiert.

[pmon] lmcMaxNumDBLocks

Typ
int
Default
600
Wertebereich
Number of DB Files
Definiert die maximale Anzahl von RAIMA-Datenbankdateien. Der Eintrag ist nur unter Linux erforderlich, wenn es zu Problemen mit Datenbank-Dateiwechseln kommt. Setzen Sie den Eintrag in diesem Fall auf 1500. HINWEIS Unter Linux kann der lm_ip (Unix Domain Socket lock manager of RaimaDB) mit dem Betriebssystem gestartet werden. Der PMON startet den lm_ip mit einem hardkodierten Wert von 600 DB-Dateien. Auch die Raima-Tools WCCOAtoolNametoId, WCCOAtoolConvertDb, WCCOAtoolDoCreate, WCCOAtoolSyncTypes und WCCOAtoolBuildIdList starten den lm_ip unter Linux. Ändern Sie den Wert des lmcMaxNumDBLocks-Eintrags manuell. Bitte beachten Sie, dass die Änderung dieses Config-Eintrags nicht nur einen Neustart Ihres Projekts und der Raima-Tools erfordert, sondern auch einen manuell gestoppten lm_ip-Prozess unter Linux. Der Prozess lm_ip kann nur gestoppt werden, wenn das Projekt und die Raima-Tools nicht ausgeführt werden. Dies gilt jedoch nicht für SQLite-Projekte und -Tools, da diese nicht von lm_ip betroffen sind.

[pmon] restartDelaySeconds

Typ
int
Default
0
Wertebereich
>= 0
Startet ein Manager zu schnell erneut, so wird der nächste Startversuch um den hier angegebenen Wert verzögert (in Sekunden). Der Defaultwert 0 besagt, dass der Manager in diesem Fall gar nicht wieder neu gestartet wird. Das "crashAction" Skript wird mit dem Typ "DELAYING_RESTART" anstatt "NO_RESTART_ANYMORE" gestartet, wenn der Wert dieses Config-Eintrages > 0 ist.

[pmon] restartProjVA

Typ
string
Default
no
Wertebereich
yes/no
Wenn ein Value Archiv Manager abstürzt, wird das Projekt in einem redundanten System neu gestartet.

[pmon] sendManagerStateChange

Typ
string
Default
No
Wertebereich
Yes|No
Wenn bei einer Statusänderung eines WinCC OA Managers ein Trap verschickt werden soll, ist dieser Parameter auf "Yes" zu setzen.

[pmon] SNMPPortNr

Typ
unsigned int
Default
4700
Wertebereich
1024 .. 65535 (see RFC 1340, or /etc/services)
Portnummer für die der Pmon auf SNMP Anfragen aktiv ist.

[pmon] startupTimeoutSeconds

Typ
int
Default
0
Wertebereich
>= 0
Dauert der Projekt-Start länger als die angegebene Anzahl von Sekunden, wird eine Warnung ausgegeben und das "crashAction" Skript mit dem Typ "STARTUP_TIMEOUT" und dem zuletzt gestarteten Manager ausgeführt. Der Defaultwert 0 deaktiviert das Timeout.

[pmon] v1ReadCommunity

Typ
string
Default
public
Definiert die ReadCommunity für SNMP v1/v2.

[pmon] v1TrapTarget

Typ
string
Gibt die IP-Adresse/Portnummer an, zu der Traps gesendet werden. z.B. v1TrapTarget = "192.168.150.29/162" Dieser Eintrag kann beliebig oft gesetzt werden (für jedes TrapTarget ein eigener Eintrag). Alle hier eingetragenen Targets bekommen die Traps zugesendet.

[pmon] v1WriteCommunity

Typ
string
Definiert die WriteCommunity für SNMP v1/v2.

[pmonWatchdog]

Mit diesem Schlüsselwort beginnen die Eigenschaften für die Sektion pmonWatchdog.

[pmonWatchdog] monitoredManager

Typ
string
Default
<manager name[,manager number]>
Wertebereich
manager name[,manager number]
Managername: Für den Managernamen geben Sie den Dateinamen ohne die Dateierweiterung an, z.B. WCCOActrl, WCCOAiec61580. HINWEIS: auch andere Managernamen als Namen, die mit WCC anfangen, können verwendet werden. Wenn ein Managername oder eine Managernummer in der Config-Datei angegeben wurde und der Name/die Nummer nicht existiert, wird eine Warnung im Log Viewer angezeigt. Der zweite Parameter ist die Managernummer . Wenn keine Nummer angegeben wurde, werden alle Manager des Typs (Managername) überwacht. Überwachung eines spezifischen Managers inklusive Managernummer ist möglich nur, wenn die Managernummer als Startparameter angegeben wurde. Das ist die Nummer, die verwendet wurde, um einen Manager in der Console zu starten. Wenn keine monitoredManager-Einträge definiert wurden, wird die Funktion deaktiviert auch wenn das Time-out > 0 wäre. Beispiel: [pmonWatchdog] waitUntilKill = 300 monitoredManager = "WCCOAvalarch" # Überwache alle Archive-Manager monitoredManager = "WCCOActrl,5"  #Überwache nur CTRL-Manager mit der Nummer 5. Siehe Onlinehilfe Kapitel Managerüberwachung - Pmon Watchdog

[pmonWatchdog] waitUntilKill

Typ
int
Default
180
Wertebereich
seconds
Das Time-out in Sekunden. Der Defaultwert für das Timeout ist 180 Sekunden. Wenn der Wert -1 gesetzt wird, wird die Funktion deaktiviert.

[profisafe]

Einstellungen für den PROFIsafe-Treiber.

[profisafe] deviceWatchdog

Typ
ulong
Default
1000
Einheit
milliseconds
Watchdog-Zeit in Millisekunden um zu überprüfen, ob das IO-Device noch aktiv ist (Wert 0 deaktiviert den Watchdog).

[profisafe] runSleepTime

Typ
ulong
Default
10
Einheit
milliseconds
Sleep time in milliseconds for each PROFINET loop.

[profisafe] statisticsRefreshTime

Typ
ulong
Default
60
Einheit
seconds
Refresh-Intervall der statistischen Daten auf den internen Datenpunkten in Sekunden.

[proxy]

Einstellungen für den WCCILproxy

[proxy] proxyPort

Typ
int
Default
5678
Wertebereich
> 0
Serverport für den WCCILproxy.

[proxy] server

Typ
string
Default
derived from various settings
Syntax: server = "host:port" e.g. server = "atpcb2rd:4897" #Data-Manager running on atpcb2rd server = "atpcb2rd:4998" #Event-Manager running on atpcb2rd Firewall Feature. Definiert zu welchen Servern der WCCILproxy eine Verbindung aufbauen darf, wenn ein Client es anfordert. Der WCCILproxy schließt die Verbindung zum Client, wenn der angeforderte Server nicht in dieser Liste gefunden wird. Dieser Eintrag kann mehrmals vorkommen, einmal für jedes Host/Port Paar.

[proxy] socketConnectionLimit

Typ
int
Default
1024
Wertebereich
0-1024
Diese Einstellung begrenzt die maximale Anzahl von Socket-Verbindungen auf 1024 als defensive Sicherheitsmaßnahme gegen hohen Speicherverbrauch bei potentiellen Angriffen. Das Limit für Socket-Verbindungen wird nur gesetzt, wenn der Wert größer als 0 ist. Wenn der Wert 0 oder negativ ist, wird für Linux der Maximalwert des Betriebssystems (1024) und für Windows die hartkodierte Grenze von 8192 verwendet. HINWEIS: Jeder Manager benötigt zwei Verbindungen, so dass die angegebene Grenze effektiv halb so viele Managerverbindungen zulässt.

[redu]

Einstellungen für den Redundanz-Manager

[redu] activeChangeInterval

Typ
int (seconds)
Default
3
Wertebereich
>= 0
Verzögert eine Redundanzumschaltung um die angegebene Zeit. Wenn activeChangeInterval = 0, erfolgt eine Redundanzumschaltung sofort, insofern der eigene Fehlerstatus schlechter ist als der Fremdstatus.

[redu] aliveCheckInterval

Typ
int (seconds)
Default
10
Wenn innerhalb dieses Intervalls die Alive-Nachricht nicht kommt, wird die Verbindung für tot erklärt.

[redu] aliveInterval

Typ
int (seconds)
Default
1
Zeitintervall zwischen geschickten Alive-Nachrichten.

[redu] delayChange

Typ
int
Default
0
Wertebereich
0|1
Definiert, ob eine Redundanzumschaltung schneller, insofern der eigene Fehlerstatus schlechter ist als der des Redu-Partners, oder erst nach activeChangeInterval Sekunden erfolgt. activeChangeInterval > 0, firstActiveChangeInterval = 0 und delayChange = 0 bedeutet, dass die Umschaltung sofort erfolgt, aber die nächste Umschaltung wird nie früher als nach activeChangeInterval Sekunden durchgeführt. activeChangeInterval > 0, firstCActivehangeInterval > 0 und delayChange = 0 bedeutet, dass die Umschaltung erst nach firstActiveChangeInterval erfolgt, aber die nächste Umschaltung wird erst nach activeChangeInterval Sekunden durchgeführt. activeChangeInterval > 0 und delayChange = 1 bedeutet, dass nach einer Änderung des Fehlerstatus zuerst gewartet wird, ob die Umschaltung wirklich notwendig ist. Erst wenn der Fehlerstatus auch nach activeChangeInterval Sekunden schlechter ist, wird umgeschalten. Eventuelle nächste Umschaltung findet wieder erst nach dem Intervall statt. Dieser Timer gilt nicht für die 'händische' Umschaltung (.Command.*) - die Kommandos werden sofort ausgeführt (und der Timer eventuell neugestartet).

[redu] firstActiveChangeInterval

Typ
int (seconds)
Default
0
Wertebereich
>=0
Verzögert die erste Redundanzumschaltung um die angegebene Zeit, falls delayChange = 0. Wenn firstActiveChangeInterval = 0, erfolgt eine Redundanzumschaltung sofort, insofern der eigene Fehlerstatus schlechter ist als der Fremdstatus. Wenn delayChange = 1 wird auch die erste Redundanzumschaltung um die Zeit von activeChangeInterval verzögert.

[redu] initPeerTimeout

Typ
unsigned int (seconds)
Default
60
Definiert die Zeit, die der passive Redu-Manager beim Recovery auf den aktiven wartet. Wenn er innerhalb dieses Timeouts keine Verbindung aufbaut, setzt er den eigene Event-Manager auf aktiv.

[redu] linkUpDelayTime

Typ
int (Sekunden)
Default
0
Wertebereich
0 .. maxInt
Wenn die Redu-Manager eines redundanten Systems die Verbindung zueinander aufbauen, wird der Event-Manager erst nach linkUpDelayTime Sekunden benachrichtigt. Die Fehletstatus werden jedoch gleich nach Aufbau der Verbindung zwischen den Redu-Managern ausgetauscht.

[redu] managerDP, peerManagerDP

Typ
string
Wertebereich
Datapoint of the type _ReduManager
Namen von internen Datenpunkten für unsere und fremde Replikas - unterschiedlich!

[redu] portNr

Typ
int
Default
4776
Wertebereich
1024 .. 65535 (TCP/IP Ports)
Serverport für den Redu-Manager. Muss auf beiden Rechnern gleich sein. (Obsolet, stattdessen den Eintrag reduPort verwenden)

[redu] reduPort

Typ
uint
Default
4776
Wertebereich
1024 .. 65535 (TCP/IP Ports)
Serverport für den Redu-Manager. Muss auf beiden Rechnern gleich sein.

[redu] reportAliveTime

Typ
int
Default
0
Wertebereich
0|1
Bestimmt, ob die Zeitstempel der Redu-Manager <-> Redu-Manager Verbindung zum Event-Manager geschickt werden.

[reporting]

Einstellungen für den Reporting-Manager.

[reporting] httpAuth

Typ
bool
Default
1
Wertebereich
0|1
Gibt an, ob Autorisierung erforderlich ist oder nicht.

[reporting] httpPort

Typ
int
Definiert den Default Port für eine HTTP- Verbindung. Setzen Sie den httpPort auf 80, wenn Sie das BIRT-Programm für das Reporting verwenden. Der httpsPort kann nicht verwendet werden, wenn das BIRT-Programm für das Reporting verwendet wird. Setzen Sie daher den Port auf 80.

[reporting] httpsPort

Typ
int
Default
443
Definiert den Defaultport für eine HTTPS Verbindung.

[reporting] IncNofConnections

Typ
int
Wertebereich
NofConnections (see resp. config entry)
Wenn alle bereits offenen Datenbankverbindungen in Verwendung sind, werden IncNofConnections neu geöffnet. Es werden aber nur maximal ,NofConnections'-Datenbankverbindungen geöffnet. Dieser Eintrag wird für das Connection Pooling verwendet.

[reporting] maxRequestLineCount

Typ
int
Default
100000
Wertebereich
0-1000000
Limitiert die Größe der abgefragten Daten (dpGetPeriod, alertGetPeriod, dpQuery) auf maximal 100000  Rückgabezeilen. 0 bedeutet, dass die Größe der Daten auf 0 (keine Daten) imitiert wird. Wird dieses Limit überschritten, wird ein Fehler ausgegeben und es werden keine Daten zurückgegeben.

[reporting] MinNofConnections

Typ
int
Minimale Anzahl der DB-Verbindungen, die verwendet werden sollen. Dieser Eintrag wird für das Connection Pooling verwendet.

[reporting] NofConnections

Typ
int
Default
5
Anzahl der maximal gleichzeitig offenen DB-Verbindungen. Dieser Eintrag wird für das Connection Pooling verwendet.

[reporting] NofThreads

Typ
int
Default
Number of CPU cores x2
Wertebereich
Number of threads
Gibt an, wie viele Reporting-Anfragen gleichzeitig (connection Pooling) bearbeitet werden sollen. Die Defaultanzahl der Threads ist abhängig von der Anzahl der CPU-Cores des verwendeten Systems. Mit diesem Eintrag kann die Anzahl geändert werden. ACHTUNG: Wenn BIRT verwendet wird, setzen Sie den Eintrag auf mindestens 25 oder höher.

[reporting] queryRDBdirect

Typ
bool
Wertebereich
0|1
Gibt an, über welchen Weg die lesenden Datenbankabfragen erfolgen: 0 = Abfragen werden mittels Messages abgehandelt. 1 = Abfragen vom Reporting Manager werden direkt an die Oracle-Datenbank übermittelt. Bei RDB-Projekten wird per Default queryRDBdirect = 1 verwendet.

[reporting] sslCertificate

Typ
string
Wertebereich
<server-cert><server-key><CAFile>
Erlaubt es, ein SSL Zertifikat zu definieren. Folgende Parameter müssen gesetzt werden: server-cert: Relativer Pfad des Zertifikates ausgehend vom Projektverzeichnis server-key: Relativer Pfad des private Keys des Servers ausgehend vom Projektverzeichnis CAFile: Relativer Pfad des private Keys des Servers ausgehend vom Projektverzeichnis Alle Dateien müssen im PEM Format vorliegen.

[reporting] wsdlPath

Typ
string
Wertebereich
<path>,<path>/<file name>.wsdl
Mit diesem Config-Eintrag ist es möglich 1.) einen Pfad festzulegen, in dem der Reporting-Manager nach der Reporting.wsdl-Datei sucht. 2.) Pfad + Namen der wsdl-Datei anzugeben, die der Reporting-Manager verwenden soll Per Default wird die wsdl-Datei vom Client über den HTTP Server des Reporting-Managers heruntergeladen.

[rk512]

Einstellungen für den RK512 Treiber

[rk512] 3964R

Typ
int
Default
1
Wertebereich
0|1
Diese Einstellung erlaubt es zwischen den Protokollen 3964 und 3964R umzuschalten. 3964R unterscheidet sich von 3964 durch eine längere Quittungsverzugszeit und eine zusätzliche Prüfsumme in den Telegrammen. Mögliche Werte sind '0' für 3964 und '1' für 3964R. Beispiel: Es wird das Protokoll 3964 verwendet. 3964R = 0

[rk512] baudrate

Typ
int
Default
9600
Wertebereich
2400..9600 (19200)
Gibt die Baudrate für die serielle Schnittstelle an. Der Defaultwert ist 9600. Typische Werte sind 2400, 4800 und 9600. In Verbindung mit einer S5 beträgt die Untergrenze für die Übertragungsrate 2400 Baud, die Obergrenze 9600 Baud. 19200 Baud werden von einer S5 nur unter bestimmten Voraussetzungen unterstützt. Beispiel: Einstellen der Baudrate auf 9600 Baud. baudrate = 9600

[rk512] connRetries

Typ
int
Default
6
Wertebereich
>= 0
Gibt die Anzahl der Wiederholungen an, um eine Verbindung mit der SPS aufzubauen, damit ein Telegramm verschickt werden kann. Mögliche Werte sind alle natürlichen Zahlen einschließlich 0. Der Defaultwert ist 6. Normalerweise muss dieser Wert nicht verändert werden. Beispiel: Einstellen der Anzahl der Wiederholungen auf 8. connRetries = 8

[rk512] device

Typ
string string
Dieser Config-Eintrag gibt den Namen der seriellen Schnittstelle und die zugehörigen Einstellungen an. Der Eintrag hat nur unter Windows eine Bedeutung. Er sollte nicht zusammen mit "baudrate" oder "parity" verwendet werden. device = "COM1" "9600,e,8,1" # Kein Handshaking device = "COM1" "9600,e,8,1,p" # Hardwarehandshaking Einstellungen für 9600 Baud, gerade Parität, 8 Bits, 1 Stopbit, p schaltet Handshaking ein.

[rk512] deviceName

Typ
string
Gibt den Namen der seriellen Schnittstelle an, über die mit der SPS kommuniziert werden soll. Dieser Eintrag muss vorhanden sein. Die Kommunikation erfolgt nach RS232 über eine einfache 3-Draht Leitung. Beispiel: Weist dem Treiber die Schnittstelle mit dem Namen /dev/tty00 zu. devicename = "/dev/tty00"

[rk512] drvGQ

Typ
string
Gibt den Datenpunktnamen an, der eine Generalabfrage auslöst. Jedes Verschicken dieses Datenpunktes veranlasst den Treiber alle Datenpunkte, die als Eingang parametriert sind, abzufragen und die Werte dem WinCC OA System mitzuteilen. Für den Datenpunktnamen wird zweckmäßig _Driver_num.GQ verwendet, wobei num die Treibernummer ist. Der Datenpunktelementtyp ist natürliche Zahl, der Wert wird vom Treiber nicht ausgewertet. Wird dieser Eintrag nicht in der Konfigurationsdatei verwendet, so ist keine Generalabfrage möglich. Beispiel: Jedes Schreiben auf _Driver_1.GQ:_original.._value löst eine Generalabfrage aus. drvGQ = "_Driver_1.GQ"

[rk512] drvPollMode

Typ
string
Gibt den Datenpunktnamen an, über den der Pollingmodus ein- und ausgeschaltet wird. Für diesen Wert wird zweckmäßig _Driver_num.PM verwendet, wobei num die Treibernummer ist. Im Allgemeinen wird der Pollingmodus nur zur Fehlersuche ausgeschaltet. Beispiel: Wird der Datenpunkt auf 0 gesetzt, pollt der Treiber keine Datenpunkte mehr. drvPollMode = "_Driver_1.PM"

[rk512] drvSQ

Typ
string
Gibt den Datenpunktnamen an, der eine Einzelabfrage auslöst. Wird dieser Datenpunkt verschickt und enthält er den Namen eines Datenpunktes, der auf Einzelabfrage parametriert wurde, so wird diese durchgeführt. Zweckmäßigerweise wird für diesen Wert _Driver_num.SQ verwendet, wobei num die Treibernummer ist. Das Datenpunktelement ist vom Typ Bezeichner. Um eine Einzelabfrage auszulösen, muss der Name des entsprechenden Datenpunkts in _Driver_num.SQ:_original.._value übergeben werden. Wird dieser Eintrag nicht in der Konfigurationsdatei aufgeführt, so kann keine Einzelabfrage ausgelöst werden. Beispiel: Wird ein Datenpunktnamen in _Driver_1.SQ:_original.._value übergeben, so führt der Treiber für diesen Datenpunkt eine Einzelabfrage aus. drvSQ = "_Driver_1.SQ"

[rk512] floatIsIEEE

Typ
string
Default
No
Wertebereich
Yes|No
Dieser Eintrag gibt an, ob float-Werte im IEEE-Format oder im RK512-spezifischen Format übertragen werden sollen. Der Default ist das RK512-spezifische Format. Da bei den meisten SPSen das IEEE-Format verwendet wird, muss hier der Eintrag floatIsIEEE = "Yes" in der Config-Datei eingetragen werden. [rk512] floatIsIEEE = "Yes"

[rk512] parity

Typ
string
Default
even
Wertebereich
even, odd, none
Stellt die Parität für die serielle Schnittstelle ein. Mögliche Werte sind "even", "odd" und "none" für gerade, ungerade und keine Parität. Der Defaultwert ist "even". Die Parität ist von der SPS als "even" vorgegeben. Eine abweichende Einstellung ist daher nur sinnvoll, wenn mit einem speziellen Gerät über das RK512-Protokoll kommuniziert werden soll. Beispiel: Einstellen der Parität auf ungerade. parity = "odd"

[rk512] pollMode

Typ
bool
Default
1
Wertebereich
0|1
Schaltet das Pollen ein und aus. Mögliche Werte sind 0 = Pollen ausgeschaltet, und 1 = Pollen einschaltet. Der Defaultwert ist 1, Datenpunkte werden also gepollt. Diese Einstellung kann durch Schreiben auf den Datenpunkt, der unter drvPollMode angegeben wurde, zur Laufzeit geändert werden. Beispiel: Ausschalten des Pollen von Datenpunkten. pollMode = 0

[rk512] priority

Typ
string
Default
low
Wertebereich
high|low
Gibt die Priorität des Treibers bei einem Initialisierungskonflikt an. Mögliche Werte sind "low" und "high". Der Defaultwert ist "low". Versuchen SPS und Treiber gleichzeitig, ein Telegramm zu verschicken, wird anhand der Priorität entschieden, wer tatsächlich senden darf. Die Priorität wird an der SPS hardwaremäßig eingestellt. Für den Treiber muss die entgegengesetzte Priorität eingestellt werden. Beispiel: Einstellen einer hohen Priorität. priority = "high"

[rk512] QVZ

Typ
float
Default
2.0 [sec]
Wertebereich
> 2.0
Gibt die Zeit in Sekunden an, innerhalb derer ein Verbindungsaufbau oder -abbau von der SPS quittiert werden muss. Der Defaultwert ist 2.0 Sekunden. Wird das Protokoll 3964 anstelle von 3964R verwendet, sollte dieser Wert auf 0.55 Sekunden eingestellt werden. Da diese Einstellung nur den Treiber betrifft, nicht aber die SPS, sollten kleinere Werte nicht verwendet werden. Beispiel: Einstellen der Quittungsverzugszeit auf 0.55 Sekunden. QVZ = 0.55

[rk512] restartFetchOnError

Typ
string
Default
No
Wertebereich
Yes|No
Dieser Config-Eintrag (Type: string, default: "no") gibt an, ob bei einem Übertragungsfehler in Melderichtung (Daten werden von der SPS zum Treiber übertragen) wieder mit einem Befehlstelegramm (dem ersten Telegramm) begonnen werden soll ("yes") oder ob ein Folgetelegramm wiederholt werden kann. [rk512] restartFetchOnError = "yes"

[rk512] restartSendOnError

Typ
string
Default
No
Wertebereich
Yes|No
Dieser Config-Eintrag (Type: string, default: "no") gibt an, ob bei einem Übertragungsfehler in Befehlsrichtung (Daten werden vom Treiber zur SPS übertragen) wieder mit einem Befehlstelegramm (dem ersten Telegramm) begonnen werden soll ("yes") oder ob ein Folgetelegramm wiederholt werden kann. [rk512] restartSendOnError = "yes"

[rk512] rk512DpName

Typ
string
Default
_RK512_<num>
Dieser Config-Eintrag gibt den Namen des internen Datenpunktes vom Typ _RK512 (Typ: string) an. Normalerweise ist der Name "_RK512_<num>". In einem redundanten System müssen sich die Namen der beiden Treiber jedoch unterscheiden und es sind folgende Einträge nötig: [rk512] (host1) rk512DpName = "_RK512_<num>" (host2) rk512DpName = "_RK512_2_<num>"

[rk512] sendRetries

Typ
int
Default
6
Wertebereich
6gt;= 0
Gibt die Anzahl der Wiederholungen an, um ein Telegramm nach erfolgreichen Verbindungsversuch an die SPS zu verschicken. Mögliche Werte sind alle natürlichen Zahlen einschließlich 0. Der Defaultwert ist 6. Im Normalfall muss dieser Wert nicht verändert werden. Beispiel: Einstellen der Anzahl der Wiederholungen auf 8. sendRetries = 8

[rk512] talas

Typ
string
Default
No
Wertebereich
Yes|No
Dieser Eintrag gibt an, ob der Treiber an einen TALAS-Rechner angekoppelt wird. In diesem Fall werden immer ganze Datenbausteine ausgelesen. Die ersten Wörter enthalten die Quellzeit der Daten, auf die Daten folgt noch ein Statuswort.

[rk512] TVZ

Typ
float
Default
5.0 [sec]
Wertebereich
> 5.0
Dieser Config-Eintrag TVZ (Telegrammverzögerungszeit) gibt die Zeit in Sekunden, innerhalb derer auf ein Befehlstelegramm ein Reaktionstelegramm eintreffen muss. Der Wert sollte mindestens doppelt so groß sein wie die QVZ (Quittierverzögerungszeit), damit die SPS Gelegenheit hat, einen Timeout zu erkennen und ihr Reaktionstelegramm zu wiederholen. Beispiel: [rk512] TVZ = 6.5

[rk512] ZVZ

Typ
float
Default
0.220 [sec]
Wertebereich
> 0.220
Gibt die Zeit in Sekunden an, innerhalb derer ein weiteres Zeichen eines Telegramms empfangen werden muss. Bleibt dieses aus, so wird ein Fehlercode an die SPS verschickt. Der Defaultwert ist 0.22 Sekunden. Da diese Einstellung nur den Treiber betrifft, nicht aber die SPS, sollten kleinere Werte nicht verwendet werden. Im allgemeinen muss die Defaulteinstellung nicht geändert werden. Beispiel: Einstellen der Zeichenverzugszeit auf 0.30 Sekunden. ZVZ = 0.30

[s7]

Einstellungen für den S7 Treiber

[s7] AliveInterval

Typ
unsigned
Default
30
Wertebereich
0..65535
Intervall [s] nachdem eine Status-Überprüfung an die SPS(en) über alle Verbindungen gesendet wird. Wenn das AliveInterval auf 0 gesetzt ist, werden keine regelmäßigen Alive-Überprüfungen durchgeführt. Aber es gibt mindestens eine Alive-Überprüfung immer wenn eine Verbindung hergestellt wird.

[s7] AutoGQ

Typ
string
Default
Y
Wertebereich
Y/N
Gibt an, ob General-Abfragen automatisch durchgeführt werden sollen.

[s7] AutoTimeSyncFactor

Typ
unsigned
Default
0
Wertebereich
0..x
Der Wert gibt an, in welchen Alive-Abständen eine automatische Zeitsynchronisation ausgeführt werden soll. Der Defaultwert ist 0. Das bedeutet keine automatische Synchronisation. Wenn das Alive-Intervall z.B. 10 Sekunden ist und AutoTimeSyncFactor 10, wird eine Zeitsynchronisation alle 100 Sekunden ausgeführt.

[s7] CheckPollReqPending

Typ
bool
Default
1
Wertebereich
0|1
Wenn der Eintrag aktiviert ist, wird geprüft ob noch ein identischer Pollauftrag aussteht bevor der neue in die AGLink Queue hineingestellt wird.

[s7] diagnosticsRefreshTime

Typ
unsigned
Default
60 [sec]
Intervall [sec] für die Aktualisierung der Diagnosedaten. Beim Wert 0 gibt es keine Aktualisierung. wird.

[s7] HighPrioBlock

Typ
int
Default
-1
Wertebereich
>-1
Die Datenblocknummer der Hochprio-Adressen. Wenn ein Schreib-Request mit einer Adresse, die zu diesem Block gehört, ansteht, wird dieser vor dem ersten Request mit einer normalen Priorität hinzugefügt.

[s7] LimitedTSPPAliveCheck

Typ
string
Default
N
Wertebereich
Y|N
Mit dem Config-Eintrag LimitedTSPPAliveCheck = "Yes" kann der Alive-Check für redundante TSPP- Verbindungen ausgeschaltet werden. Es wird dann nur noch geprüft, ob Telegramme über eine Verbindung empfangen werden (und nicht über alle).

[s7] MaxAGLinkQueueSize

Typ
int
Default
1
Wertebereich
1..32
Die maximale Anzahl von anstehenden Requests für die AGLink-Bibliothek. Wenn dieser Wert überschritten wird, wird die Anforderung zu einer internen Lese- oder Schreib-Queue hinzugefügt. Wenn der Wert 0 ist, wird keine interne Queue verwendet. D.h. altes Verhalten vor der Implementierung der Queue.

[s7] MaxGap

Typ
unsigned
Default
10
Wertebereich
1..50
Der maximale Unterschied in Bytes zwischen zwei Adressen bis die Daten in Polling-Anfragen gruppiert werden. Wenn der Adressenbereich zwischen zwei nebeneinanderliegenden Adressen größer ist als der Wert in MaxGap, wird eine neue Gruppe erstellt (z.B. Parametrierung von Adressen 1.100, 1.101, 1.102, 1.103, 1.115, 1.116 würde die Adressen in zwei Polling-Anforderungen gruppieren. Der Defaultwert ist 10.) Dieser Config-Eintrag wird nur auf Eingangsadressen angewendet.

[s7] maxPollBlockSize

Typ
uint
Default
65535
Wertebereich
32..65535
Maximale Größe der Pollblöcke durch Optimierung in Bytes. Dieser Eintrag kann beim Modus "Poll On Use" dazu verwendet werden um Pollblöcke zu limitieren, damit der Modus PollOnUse auch bei aufeinanderfolgenden Adressen, die sonst in sehr großen Blöcken zusammengepackt werden, optimal ausgenutzt werden kann

[s7] MaxReadRequestSize

Typ
int
Default
0
Wertebereich
0,1, >50
Auf Grund von Polloptimierung kann es sein dass Multi-Byte Datenelemente (z.B. word oder double word) in zwei aufeinander folgenden Low-Level-Read-Requests gelesen werden. In seltenen Fällen kann dies jedoch einem verfälschten Zwischenergebnis führen. Dieses Verhalten kann durch Ändern der Polloptimierung auf die maximale PDU Größe der PLC verhindert werden. 0...Volle Optimierung, Defaultverhalten 1...Änderung der Optimierung auf die maximale PDU Größe der PLC >50...Änderung der Optimierung auf eine explizit festgelegte Größe Hinweis Diese Änderung verursacht eine geringe Verringerung des Datendurchsatzes, da die Polloptimierung limitiert wird. Das bedeutet, dass zum Lesen der gleichen Menge an Daten möglicherweise mehr Low-Level-Read-Requests notwendig sind.

[s7] MaxRequestQueueSize

Typ
int
Default
200
Wertebereich
0..1000
Maximale Größe der internen Schreib- und Lese-Queue (Jede Queue kann diese Größe haben). Wenn die Schreib- und Lese-Queue voll ist, wird der Request verworfen und eine Fehlermeldung (Error Code 56) auf das DPE _S7_Conn.LastError geschrieben. Zudem können Lese-, Schreib- und AGLink Queue-Größen über _S7_Conn.State.ReadQueue und _S7_Conn.State.AGLinkQueue DPEs überwacht werden. Anmerkung: Die neuen Werte werden auf das DPE in dem Intervall das über den Config-Eintrag "StatCheckInterval" definiert wurde, geschrieben.

[s7] MaxTsppAnswerListSize

Typ
int
Default
200
Gibt die maximale Größe der TSPP-Antwortliste an. Wenn der Wert überschritten wird, werden die Daten gelöscht und eine Fehlermeldung angezeigt.

[s7] MaxTsppRequestQueue

Typ
unsigned
Default
4
Wertebereich
1..64
Anzahl von Anforderungen in Queue für asynchrone Kommunikation. Das wird nur zu Testzwecken verwendet.

[s7] MaxTsppVcPerLoop

Typ
int
Default
1000
Gibt die maximalen Wertänderungen pro Treiber-Zyklus an. Wenn der Wert überschritten wird, werden die nächsten Wertänderungen im nächsten Treiber-Zyklus abarbeitet.

[s7] MaxWriteBlockLen

Typ
int
Default
0
Wertebereich
0..240
Write Requests werden als Block gesendet, wenn die Adressen fortlaufend sind und es keine Lücken gibt. Der Defaultwert des Eintrags ist 0. Das bedeutet, dass die Requests nicht als Block gesendet werden. Um sicherzustellen, dass die fortlaufenden Adressen als Block gesendet werden, müssen die entsprechenden Datenpunkte über dpSet() gesetzt werden. Zum Beispiel Schreiben der Adressen: DB10.DBW0 DB10.DBB3 DB10.DBX4.0 DB10.DBX4.1 DB10.DBX4.2 DB10.DBX4.3 DB10.DBX4.4 DB10.DBX4.5 DB10.DBX4.6 DB10.DBX4.7 werden als Block gesendet da die Adressen fortlaufend sind (es gibt keine Lücke). Wenn z.B. das letzte Bit fehlt, werden nur die ersten 2 Adressen als Block gesendet und die Bits werden einzeln gesendet da das letzte Byte nicht voll ist. maximumWriteBlockLen hängt von dem verwendeten SPS-Typ ab. Wenn der Wert unter 240 Bytes ist, ist sichergestellt, dass die generierte Anforderung (Request) nicht von der verwendeten S7-Kommunikationsbibliothek aufgeteilt wird.

[s7] MaxWriteGroupSize

Typ
int
Default
16
Wertebereich
1..64
Maximale Größe eines einzelnen Schreib-Requests, der in einem mehrfachen Request zusammengefasst werden kann, wenn Request aus der Schreib Request-Queue bearbeitet wird.

[s7] mpiDevice

Typ
{serial interface} {pc address} {Baudrate}
mpiDevice = <serial interface> <pc address> <baud rate> Der Config-Eintrag definiert die Parameter für eine serielle Schnittstelle/für einen Adapter. Um mit einer SPS zu kommunizieren, definieren Sie das MPI-Gerät in der Config-Datei wie folgt: mpiDevice = "COM1" 15 38400. In diesem Fall ist ein Siemens-Adapter mit einem COM1 und 15 verbunden und soll als MPI-Adresse für den Adapter verwendet werden. Der Eintrag des COM-Ports im Parametrierpanel muss mit dem Gerät, welches in der Config-Datei definiert ist, übereinstimmen. Hinweis: Die MPI-Adresse und die SPS Adresse dürfen nicht gleich sein! Die einzugebende MPI-Adresse ist die des Adapters. Z.B. wenn die MPI-Adresse der SPS "5" ist, dann darf die Adresse des Adapters nicht ebenfalls auf "5" eingestellt werden. In der Config-Datei darf in diesem Fall folgendes nicht stehen: mpiDevice = "COM1" 5 38400

[s7] onlyActivePolls

Typ
string
Default
N
Wertebereich
Y/N
onlyActivePolls = "Y" gibt an, dass nur der aktive Treiber in einem redundanten System pollt. Der Defaultwert ist "N" (beide Treiber pollen die SPS).

[s7] plcCodePage

Typ
string
Default
<langgt;.iso88591
Wenn Strings innerhalb der SPS eine spezielle Encodierung verwenden, dann kann mit diesem Config-Eintrag festgelegt werden, welches Encoding für eine Konvertierung nach UTF-8 herangezogen werden soll. Alle gültigen Encodierungswerte können in der Datei <Installationverzeichnis>/nls/lang.dir gefunden werden. Beispiel [s7] plcCodePage = "el_GR.iso88597"

[s7] ReadOpState

Typ
uint
Default
15
Wertebereich
>=0
Mit diesem Eintrag kann man angeben ob und in welchem Intervall der Betriebszustand der SPS gelesen werden soll. Die Zeit wird in Sekunden angegeben. Der Wert 0 bedeutet kein lesen des Betriebszustandes. Ein periodischen Lesen wird nur dann durchgeführt, wenn der die ereignisgesteuerte Betriebszustandsübertragung fehlschlägt. Letztere erlaubt eine schnellere Erkennung einer Betriebszustandsänderung. Der Betriebszustand wird auf dem internen Datenpunkt _S7_Conn.OpState des Treibers gezeigt und für die Umschaltung bei redundanten SPSen herangezogen. Die verschiedenen Zustände sind: 0 STOP 1 START-UP 2 RUN 3 UNDEFINED Für eine redundante SPS gibt es zusätzlich: 8 RUN SOLO (nur eine SPS läuft) 9 RUN REDU (beide SPSen laufen) 10 HALT 11 CONNECTING 12 UPDATING Hinweis: Bei symbolischer Adressierung wird dieser Config-Eintrag nicht unterstützt.

[s7] ReadPLCTime

Typ
string
Default
N
Wertebereich
Y/N
Wenn der Config-Eintrag ReadPLCTime auf "Yes" gesetzt ist (Default ist "No") wird die SPS-Zeit in Alive-Überprüfungsabständen gelesen und der Wert auf das DPE _S7_Conn.Time.Value. geschrieben. Dieser Wert soll verwendet werden, wenn die WinCC OA-Zeit auf die SPS-Zeit synchronisiert werden soll.

[s7] reduModeTSPP

Typ
bool
Default
0
Wertebereich
0|1
Legt fest welche TSPP Telegramme bei der Verwendung redundanter SPSen / Verbindungen verarbeitet werden sollen: 0 => Es werden nur die Telegramme der aktiven Verbindung verarbeitet (Default) 1 => Es werden Telegramme von allen Verbindungen verarbeitet. 2 => Es werden Telegramme von allen Verbindungen verarbeitet und zusätzlich doppelte Telegramme ausgefiltert.

[s7] refreshPollBlocksOnUse

Typ
string
Default
N
Wertebereich
Y|N
Wird dieser Config-Eintrag auf "Y" gesetzt, berechnet der Treiber die Pollblöcke bei Bedarf neu und berücksichtigt dafür nur noch die aktuell benötigten Eingangsadressen. Im Fall von "Poll on Use" ergibt sich daraus eine erhebliche Optimierung. Für leistungsschwache S7 Steuerungen empfiehlt sich zusätzlich der Config-Eintrag "maxGap" mit einem niedrigen Wert, z.B. 1, damit die Kommunikationslast weiter reduziert wird.

[s7] setInvalidForConnLoss

Typ
uint
Default
1
Wertebereich
0 - 2
Mittels des Config Eintrages kann bestimmt werden ob die Werte welche der Treiber liefert bei einem Verbindungsverlust auf ungültig gesetzt werden. Optional kann ebenfalls der Zeitstempel angepasst werden. Folgende Optionen stehen zur Verfügung: 0 => Invalid Bit wird nicht gesetzt 1 => Invalid Bit wird gesetzt (und der Zeitstempel wird an die Zeit des Verbindungsverlustes angepasst) 2 => Invalid Bit wird gesetzt (ohne den Zeitstempel anzupassen)

[s7] StatCheckInterval

Typ
unsigned
Default
20 [sec]
Wertebereich
5..100
Intervall [sec] nach dem das DPE ".State" des Verbindungsdatenpunkts aktualisiert wird.

[s7] TimeSyncUTC

Typ
string
Default
N
Wertebereich
Y/N
Mit dem Config-Eintrag TimeSyncUTC = "Yes" kann eingestellt werden, dass der Treiber die SPS auf UTC-Zeit synchronisiert. Ohne Config-Eintrag bzw. wenn der Config-Eintrag auf "No" gesetzt wurde, synchronisiert der Treiber die SPS auf die lokale Zeit.

[s7] UseConnections

Typ
int
Default
2
Wertebereich
1,2,3
Wenn die erste Verbindung zu der SPS aufgebaut wird, versucht der Treiber keine weitere Verbindungen aufzubauen. Mit dem Config-Eintrag "UseConnections" versucht der Treiber weitere Verbindungen aufzubauen obwohl die erste Verbindung schon aufgebaut ist. Die Anzahl der Verbindungen hängt von der Nummer des Config-Eintrags ab. Der Default-Wert ist 2.

[s7] useStringLengthInfo

Typ
string
Wertebereich
Y|N
Wird dieser Config-Eintrag auf "Y" gesetzt, berücksichtigt der Treiber die im S7-String enthaltenen Längeninformationen. In diesem Fall kann die tatsächliche Adresse parametriert werden, da die beiden Bytes mit der Längeninformation weggeschnitten werden.

[s7plus]

Einstellungen für den S7Plus-Treiber

[s7plus] certPath

Typ
string
Default
cert
Relativer Pfad des Certificate Stores unter <project>/data/s7plus/.

[s7plus] diagnosticsRefreshTime

Typ
uint
Default
60
Intervall (in Sekunden) in dem die auf den internen Datenpunkten abgespeicherten Diagnosedaten aktualisiert werden, falls Kanaldiagnose aktiviert ist.

[s7plus] maxAlarmQueueSize

Typ
uint
Default
1024
Maximale Größe der Alarm-Queue.

[s7plus] maxAsyncQueueSize

Typ
uint
Default
1024
Maximale Größe der Queue für Kommandos (Aktivieren von Subscriptions).

[s7plus] maxBrowseQueueSize

Typ
uint
Default
10
Maximale Größe der TIA Dateibrowsing-Queue.

[s7plus] maxRequestQueueSize

Typ
uint
Default
1024
Maximale Größe der Request-Queue.

[s7plus] maxResponseQueueSize

Typ
uint
Default
1024
Maximale Größe der Response-Queue.

[s7plus] maxSpontQueueSize

Typ
uint
Default
1024
Maximale Größe der Queue für spontane Meldungen.

[s7plus] onlyActivePolls

Typ
bool
Default
1
Wertebereich
0|1
Nur der aktive Treiber in einem redundanten System fragt Daten ab und erstellt Subscriptions.

[s7plus] reloadSymbolicOnDemand

Typ
bool
Default
0
Wertebereich
0|1
Der Config-Eintrag legt fest ob Symbolische Adressen konstant im Speicher gehalten (=0) werden oder nur (neu-)geladen werden, wenn diese aktiv verwendet werden (=1). Dies erlaubt es den verwendeten Speicher der Maschine zu reduzieren indem unbenutzte Informationen aus potenziell großen TIA-Projekt Exportdateien oder Online SPS-Programmen reduziert werden. Dies wird besonders für schwächer ausgestattete Geräte mit eingeschränktem Umfang an Speicher empfohlen. Folgende Informationen müssen bei der Verwendung des Config-Eintrages beachtet werden: - Änderungen der Konfiguration von Adress-Configs können zu einem automatischen Neu laden sämtlicher symbolischen Informationen führen. - Änderungen auf den internen DPEs Redu.SwitchTag und Tspp.BufferAddress führen zu keinem Neu laden, sondern müssen bei Bedarf mittels Config.StationName angestoßen werden.

[s7plus] statisticsRefreshTime

Typ
uint
Default
60
Intervall (in Sekunden) in dem die auf den internen Datenpunkten abgespeicherten statistischen Daten aktualisiert werden.

[s7plus] tsppVersion

Typ
int
Default
1
Wertebereich
1,2
Dieser Config-Eintrag ermöglicht es zwischen der alten und neuen Version von TSPP zu wechseln. Mit "tsppVersion = 1" wird der Treiber mit der alten Version von TSPP gestartet. Mit "tsppVersion = 2" wird der Treiber mit der neuen Version von TSPP gestartet. Standardmäßig wird der Treiber mit der alten Version gestartet.

[sbus]

Einstellungen für den S-Bus Treiber

[sbus] AliveInterval

Typ
uint
Default
30
In diesem Intervall wird geprüft, ob das S-Bus-Device noch erreichbar ist bzw. wird versucht, die Verbindung wieder aufzubauen, falls diese unterbrochen wurde.

[sbus] LocalSBusPort

Typ
uint
Default
3002
Port an dem die Antworten vom S-Bus-Device empfangen werden.

[sbus] MaxGap

Typ
uint
Default
1
Maximaler Element-Abstand zwischen aufeinander folgenden Adressen, die bei einer Leseabfrage zusammengefasst werden. z.B. werden per Default R0 und R1 zusammengefasst, R0 und R2 aber einzeln abgefragt. Element-Abstand ist dabei die Differenz des x-Anteils (bzw. y-Anteil bei DB) der Adresse. Beispiel: Bei MaxGap = 2 wird die Adresse F0 (niedrigstes Bit von Byte 0) und Adresse F16 (niedrigstes Bit von Byte 2) in einem Telegramm zusammengefasst. F0 und F24 (niedrigstes Bit von Byte 3) würden in zwei Telegramme aufgeteilt werden. Hinweis: Bits die innerhalb eines Bytes liegen werden immer zusammengefasst. Textadressen können nicht zusammengefasst werden. Achtung: Für höheren Datendurchsatz kann der MaxGap Wert erhöht werden, allerdings lässt sich nur im speziellen Anwendungsfall testen, ab welchem Wert keine Verbesserung mehr eintritt.

[sbus] MaxNumOfNakTelegrans

Typ
uint
Default
150
Maximale Anzahl an NAK Telegrammen die innerhalb eines Alive Zyklus empfangen werden dürfen, bevor der Treiber die Verbindung trennt. Es kann es vorkommen, dass der Treiber beim Empfangen einer größeren Anzahl von NAK Telegrammen nicht mehr funktioniert. Durch  MaxNumOfNakTelegrams unterbricht der Treiber die Verbindung und versucht diese mit dem nächsten AliveCheck wieder aufzubauen. Achtung: Wählt man einen zu hohen Wert kann es sein, dass der Eintrag seinen Nutzen verliert. Maximum number of NAK telegrams that may be received within an alive cycle before the driver disconnects. It may be case that the driver doesn't work when receiving a large number of NAK telegrams. MaxNumOfNakTelegrams disrupts the connection and tries to reestablish it with the next AliveCheck. Caution: If the chosen value is too high, the entry may lose its purpose.

[sbus] MaxTelegramQueueSize

Typ
ulong
Default
500000
Maximale Anzahl an Elementen, die eine interne Queue des Treibers enthalten kann.

[sbus] PlcRecvBufferSize

Typ
int
Default
3
Beschränkt die Anzahl der Telegramme, die an die SPS gesendet werden bevor eine Antwort retour kommt. Hinweis Seriell kann eine SAIA PLC maximal 3 Telegramme in ihrem Eingangspuffer halten. Bei dem vom WinCC OA S-Bus Treiber verwendeten TCP Protokoll verwendet die PLC eine Eingangsqueue, die maximal 32 Telegramme enthalten kann.

[sbus] StableRead

Typ
uint
Default
0
Wertebereich
0|1
Legt die Zusammensetzung der gelesenen Werte einer Array Adresse fest. 0 - Die Werte können von unterschiedlichen Zyklen stammen, d.h. es können Werte von unterschiedlichen Sendeversuchen (Retransmit einer oder mehrerer Leseanforderungen) in einem Array enthalten sein. 1 - Sämtliche zu einem bestimmten Zeitpunkt auf den Datenpunkt geschriebenen Werte stammen aus einem Zyklus, d.h. sind Anworten auf den ersten Senderversuch innerhalb dieses Zyklus.

[sbus] StableWrite

Typ
uint
Default
1
Wertebereich
0|1
Ermöglicht es das Schreibverhalten des Treibers festzulegen: 1 (Default) -  Schreibaufträge werden serialisiert, d.h. es wird immer nur ein Schreibauftrag an die SPS gesendet. Erst wenn der SPS den Erhalt dieses Schreibauftrages bestätigt hat wird der nächste Auftrag gesendet. 0 - Schreibaufträge werden nicht serialisiert. Achtung Ist StableWrite deaktiviert (=0) kann es auf Grund des Retransmit Protokolls vorkommen, dass eine Sequenz von Schreibbefehlen in der Folge A-B-C-D an den Treiber gesendet wird, aber in der Reihenfolge A-B-D-C bei der SPS erhalten wird, wodurch es vorallem bei dem Erhalt von Steuerbefehlen zu unerwünschtem Verhalten kommen kann. Hinweis Die Bestätigung bedeutet in diesem Fall lediglich, dass die PLC den Befehl korrekt empfangen hat, eine Überprüfung, ob der Befehl auf der PLC auch korrekt ausgeführt wurde, obliegt der Applikation.

[sinaut]

Einstellungen für den SINAUT Treiber

[sinaut] aliveInterval

Typ
uint
Default
30
Wertebereich
10-32664
Innerhalb dieser Zeit (in Sekunden) muss zumindest ein Telegramm empfangen werden. Wird keines empfanden, dann wird der Verbindungsstatus auf NOT CONNECTED (nicht verbunden) gesetzt. Wenn aliveInterval auf 0 gesetzt ist, werden keine regelmäßigen Alive-Überprüfungen durchgeführt. Dies betrifft jedoch nicht die Alive-Überprüfung nach einem Verbindungsaufbau - diese wird immer durchgeführt.

[sinaut] aliveReconnectInterval

Typ
uint
Default
10
Wertebereich
10-32664
Zeitraum in Sekunden, in welchem der Treiber versucht eine Verbindung nach einem Verbindungsverlust (Zeit in aliveInterval ist abgelaufen) wieder herzustellen.

[sinaut] aliveRequestBeforeTimeout

Typ
uint
Default
10
Wertebereich
0-(aliveInterval-1)
Zeitraum in Sekunden bevor der Eintrag aliveInterval in Kraft tritt. Nach Ablauf dieser Zeit wird der Master TIM nach dem Verbindungsstatus seiner Teilnehmer überprüft. Wenn eine Verbindung vorhanden ist, wird eine ST7 Nachricht vom Master TIM zum Treiber geschickt und der Eintrag aliveInterval tritt nicht in Kraft. Setzen Sie den Eintrag auf 0, um diesen zu deaktivieren.

[sinaut] doGQafterReduSwitch

Typ
bool
Default
0
Wertebereich
0|1
Wenn TRUE (1), wird im Falle einer Redundanzumschaltung (aktiv/passiv) eine komplette Generalabfrage durchgeführt. Andernfalls wird nur ein Statusupdate am Master TIM angefragt.

[sinaut] maxAGLinkQueueSize

Typ
int
Default
80
Wertebereich
MAX_INT
Definiert die maximale Anzahl von Anfragen die an die AGLink Bibliothek anstehen. Wenn diese Anzahl überschritten wird, werden die neuen Anfragen in einer internen Schreibwarteschlange verwahrt.

[sinaut] maxBReceiveAnswerListSize

Typ
int
Default
200
Wertebereich
MAX_INT
Definiert die Maximalgröße von der BReceive Antwortliste. Wenn die Größe überschritten wird, werden die Daten gelöscht und eine Fehlermeldung wird im WinCC OA Log Viewer ausgegeben.

[sinaut] maxBReceiveRequestQueue

Typ
uint
Default
40
Wertebereich
1-64
Definiert die Anzahl von BReceive Anfragen in der Warteschlange pro Master TIM.

[sinaut] maxBReceiveVcPerLoop

Typ
int
Default
1000
Wertebereich
MAX_INT
Definiert den maximalen Wertänderungen pro Treiberzyklus. Wenn der Wert überschritten wird, werden die noch anstehenden Wertänderungen im nächsten Treiberzyklus ausgeführt.

[sinaut] maxRequestQueueSize

Typ
int
Default
40
Wertebereich
MAX_INT
Definiert die maximale Größe von der internen Schreibwarteschlange. Wenn diese Größe überschritten wird, werden neue Anfragen verworfen und eine Fehlermeldung (Fehlercode 56) wird in das interne Datenpunktelement _SinautConn.LastError geschrieben.

[sinaut] onlyActiveIsConnected

Typ
bool
Default
1
Wertebereich
0|1
Wenn TRUE (1), verbindet sich ausschließlich der aktive Rechner eines redundanten Systems auf den Master TIM (empfohlene Einstellung).

[sinaut] sendTimeOnWrite

Typ
bool
Default
1
Wertebereich
0|1
Wenn TRUE (1), schreibt der Treiber die Zeit der gesendeten Werte in den ST7 Header.

[sinaut] setInvalidOnConnLoss

Typ
uint
Default
0
Wertebereich
0 - 1
Mittels des Config Eintrages kann bestimmt werden ob die Werte welche der Treiber liefert bei einem Verbindungsverlust auf ungültig gesetzt werden. Folgende Optionen stehen zur Verfügung: 0 => Invalid Bit wird nicht gesetzt 1 => Invalid Bit wird gesetzt (und der Zeitstempel wird an die Zeit des Verbindungsverlustes angepasst)

[sinaut] timeSyncInterval

Typ
uint
Default
300
Wertebereich
0-32664
Definiert die Zeit, nach deren Ablauf das Telegramm ORG256 zur Zeitsynchronisierung automatisch an alle Master TIMs gesendet wird, wenn timeSyncMode = 2.

[sinaut] timeSyncMode

Typ
uint
Default
0
Wertebereich
0-2
Definiert den Modus zum Senden des ORG256 Telegramms (Zeitsynchronisierung) an alle Master TIMs: 0 - manuell 1 - auf Anfrage durch ORG 282 2 - automatisch nach timeSyncInterval Sekunden

[sinaut] userbitHasTime

Typ
uint
Default
0
Wertebereich
0-32
Ermöglicht das Setzen des angegebenen Userbits, wenn vom Gerät ein Wert mit Zeitstempel empfangen wird. Per Default ist dieser Eintrag auf 0 gesetzt, was bedeutet dass kein Userbit gesetzt wird.

[sinaut] userbitTimeInvalid

Typ
uint
Default
0
Wertebereich
0-32
Ermöglicht das Setzen des angegebenen Userbits, wenn der Zeitstempel des erhaltenen Wertes invalid ist. Per Default ist dieser Eintrag auf 0 gesetzt, was bedeutet dass kein Userbit gesetzt wird.

[sinaut] useTimeStampOnRead

Typ
bool
Default
1
Wertebereich
0|1
Wenn TRUE (1), setzt der Treiber die Datenpunktelement Quellzeit auf die Zeit, die beim Lesen im ST7 Header gelesen wurde.

[snmpa]

Einstellungen für den SNMP Live Agent

[snmpa] enableUserTraps

Typ
string
Default
Yes
Wertebereich
Yes/No
Wenn diese Option aktiviert ist, kann man über den Live Agent Datenpunkt eigene Texte als Traps verschicken. Man braucht allerdings den Pmon Agent als Proxy, sonst werden keine Traps verschickt.

[snmpa] PmonPortNr

Typ
int
Default
4700
Wertebereich
1 .. 65535
Spezifiziert die Portnummer vom Pmon an. Diese Angabe ist notwendig, da der Pmon als Proxy für den Live Agent fungiert.

[snmpa] SNMPPortNr

Typ
int
Default
4701
Wertebereich
1 .. 65535
Dieser Parameter legt die Portnummer für den Live Agent fest.

[snmpa] v1ReadCommunity

Typ
string
Default
public
Definiert die ReadCommunity für SNMP v1/v2.

[snmpa] v1WriteCommunity

Typ
string
Default
admin
Definiert die WriteCommunity für SNMP v1/v2.

[snmpdrv]

Einstellungen für den SNMP-Manager

[snmpdrv] agentAliveTimeout

Typ
unsigned int
Default
40 [sec]
Mit dem Eintrag kann das Intervall zur zyklischen Verbindungsüberwachung zu den Agents eingestellt werden.

[snmpdrv] agentConnectOID

Typ
string
Default
1.3.6.1.2.1.1.1.0 (system.sysDescr)
Bevor ein ConnectTimeout für einen Agent ausgelöst wird, versucht der Treiber, die hier angegebene OID abzufragen und so eine Antwort vom Agent zu bekommen. Der Wert wird bei dieser Abfrage verworfen. Geht auch diese Anfrage schief, so tritt das Timeout in Kraft. Der hier angegebene OID gilt für alle Agents des Treibers. Als Alternative könnte auch "1.3.6.1.2.1.1.3.0" (system.sysUpTime) genommen werden.

[snmpdrv] agentConnectTimeout

Typ
int
Default
60
Mit diesem Parameter wird die Verbindung zum SNMP Agent überwacht. Dieser Parameter gilt für alle Agents, die von einem Treiber angesprochen werden. Läuft dieses Timeout ab (Angabe in Sekunden), ohne dass ein Telegramm vom Agent kommt, so wird ein Bit im Agent-Datenpunkt gesetzt. Beim nächsten Telegramm wird dieses Bit wieder gelöscht. Jedes empfangene Telegramm setzt den Timer zurück.

[snmpdrv] agentDPName

Typ
string
Default
SNMPAgent
Dieser Eintrag bestimmt den Mittelteil des Datenpunktnamens für die SNMP Agent-DPs. Jeder Name wird nach dem Schema _treibernummer_agentDPName_agentnummer zusammengesetzt. Die angesprochenen Datenpunkte sind vom internen Typ "_SNMPAgent".

[snmpdrv] agentDPTemplate

Typ
string
Default
_SNMPAgent
Um alle Datenpunktelemente zu initialisieren wird beim Start des Treibers ein Template-Datenpunkt abgefragt. Dessen Blätter stehen dann in weiterer Folge für alle Datenpunkte zur Verfügung. Wenn an diesem Template-Datenpunkt ein Element fehlt, so steht dies auf keinem der angemeldeten Agent-Datenpunkte zur Verfügung! Als Template-Datenpunkt kann natürlich ein (sowieso verwendeter) "normaler" Datenpunkt herangezogen werden. In diesem Fall setzt man den Wert auf den vollständigen DP-Namen, also z.B. "_1_SNMPAgent_5".

[snmpdrv] allowAgentPort162

Typ
bool
Default
0
Wertebereich
0|1
Im Fall von Trap-Only Verbindungen wird der TCP-Port 162 speziell behandelt. Diese Spezialbehandlung wird durch Setzen von allowAgentPort162 = 1 deaktiviert. In diesem Fall kann ein Agent mit Portnummer 162 für normale SNMP-Verbindungen verwendet werden. Hinweis Der Config-Eintrag darf nur auf 1 gesetzt werden wenn vom SNMP-Treiber keine Trap-only Verbindungen verwendet werden.

[snmpdrv] arrayQueryErrorHandlingMode

Typ
bool
Default
0
Legt fest, ob der Treiber trotz einzelner Fehler innerhalb einer Array-Anfrage das Ergebnis schreiben soll. Ersatzwerte für die fehlerhaften Werte können über die config-Einträge "arrayQueryErrorValue*" definiert werden.

[snmpdrv] arrayQueryErrorValueInteger32

Typ
int
Default
2147483647
Ersatzwert für Transformationstyp "integer32" bei fehlerhafter OID.

[snmpdrv] arrayQueryErrorValueIPadress

Typ
string
Default
255.255.255.255
Ersatzwert für Transformationstyp "IP-Adresse" bei fehlerhafter OID. Der Wert muss sich aus vier Dezimalzahlen (von 0 - 255) zusammensetzen, die durch Punkte getrennt werden. Z.B.: 172.16.254.1

[snmpdrv] arrayQueryErrorValueMACadress

Typ
string
Default
FF:FF:FF:FF:FF:FF
Ersatzwert für Transformationstyp "MAC-Adresse" bei fehlerhafter OID. Der Wert muss in sechs durch Doppelpunkte getrennte Gruppen von zwei Hexadezimalzahlen angegeben werden. Z.B.: 74:2B:62:86:A5:CA

[snmpdrv] arrayQueryErrorValueOctet

Typ
string
Default
FFFFFFFF
Ersatzwert für Transformationstyp "octet" bei fehlerhafter OID. Da der SNMP Datentyp OCTET STRING verwendet wird um Byte-Arrays zu verarbeiten, muss der Ersatzwert als String in hexadezimaler Schreibweise definiert werden. Der Ersatzwert kann auch als Text dargestellt werden, z.B. steht der Wert "3C3C4552524F523E3E00" für den null-terminierten Text "<<ERROR>>".

[snmpdrv] arrayQueryErrorValueOID

Typ
string
Default
1.0.4294967295
Ersatzwert für Transformationstyp "objectID" bei fehlerhafter OID. Der erste Sub-Identifier muss 0, 1 oder 2 sein. Der zweite Sub-Identifier muss zwischen 0 und 39 liegen, wenn der erste Identifier 0 oder 1 ist. Die einzige weitere Einschränkung ist, dass maximal 128 Sub-Identifier in einem OID-Wert vorkommen dürfen und jeder Identifier auf einen Bereich von 0..4294967295 limitiert ist.

[snmpdrv] arrayQueryErrorValueUnsigned32

Typ
uint
Default
4294967295
Ersatzwert für Transformationstyp "unsigned32" bei fehlerhafter OID.

[snmpdrv] arrayQueryErrorValueUnsigned64

Typ
uint64
Default
18446744073709551615
Ersatzwert für Transformationstyp "unsigned64" bei fehlerhafter OID.

[snmpdrv] arrayQueryErrorValueVisibleString

Typ
string
Default
<<ERROR>>
Ersatzwert für Transformationstyp "visible string" bei fehlerhafter OID.

[snmpdrv] commandUserByte

Typ
uint
Default
0
Wertebereich
0, 1-4
Definiert ob  und welches UserByte entsprechend eines Schreibergebnisses gesetzt werden soll oder nicht. Hierbei werden die gewählten Byte Informationen auf das erste Byte des DPE Status.WriteResponse geschrieben. 0 => Das UserByte wird nicht gesetzt 1-4 => Das entsprechende UserByte wird mit dem Ergebnis des Schreibvorgangens gesetzt,

[snmpdrv] ctrlDPName

Typ
string
Default
SNMPManager
Dieser Wert legt fest, welcher String als Teil des Manager Control-Datenpunkts verwendet wird. Über diesen Datenpunkt werden Betriebszustände des Treibers angezeigt. Der Name des Datenpunkts enthält weiters auch die Nummer des Treibers. _Treibernummer_ctrlDPName

[snmpdrv] delayBetweenAgents

Typ
int
Default
0
Wertebereich
>=0
Definiert den Zeitabstand zwischen den Abfragen zu den gruppierten Agents in Millisekunden. Der Defaultwert 0 bedeutet, dass die Anfragen innerhalb einer Pollgruppe sortiert und auch in dieser Reihenfolge ausgeführt werden.  Wird ein Wert >=0 eingetragen, werden die sich geänderten Agents gruppiert und nach dem definierten Zeitabstand abgefragt. Ein nicht erreichbarer Agent könnte dazu führen, dass keine anderen Agents abgerufen werden. Kommt auf eine Anfrage zu einem Agent ein Timeout zurück, werden alle Anfragen dieses Agents gelöscht (wenn Invalid setzen aktiviert ist, werden die gelöschten Anfragen auf den Status invalid gesetzt). Dies wird nur gemacht, wenn der Config- Eintrag "delayBetweenAgents" gesetzt ist. Beim nächsten Pollzyklus wird dann wieder versucht einer Verbindung zu diesem aufzubauen.

[snmpdrv] doGQOnStart

Typ
string
Default
Yes
Wertebereich
Yes|No
Dieser Parameter bestimmt, dass beim Starten des Treibers alle parametrierten SNMP-Objekte abgefragt werden. Diese Option kann zu einer punktuellen Überlastung des Netzwerkes führen, weil hier eben kurzfristig alle parametrierten Objekte angesprochen werden. Wenn eine General Query nicht durchgeführt werden soll, setzen Sie den Eintrag auf "No". Um eine zu grosse Netzwerkbelastung durch doGQOnStart = "Yes" beim Treiberstart zu vermeiden gibt es auch die Möglichkeit über den internen Datenpunkt _Driver<Nr>.GQ:_original.._value Generalabfragen auf einzelne Agenten durchzuführen indem man die Nummer des Agenten auf INTL%Driver<Nr>.GQ:_original.._value schreibt. Man kann also damit eine GA auch zeitgestaffelt durchführen.

[snmpdrv] enableTraps

Typ
string
Default
Yes
Wertebereich
Yes|No
Wenn der SNMP Manager Traps empfangen soll, so muss diese Einstellung auf "Yes" gesetzt werden. Sollen keine Traps empfangen werden, so setzt man ihn auf "No". Die empfangenen Traps werden im Manager Datenpunkt angezeigt.

[snmpdrv] enableTrapsFromStandbyAgent

Typ
bool
Default
0
Wertebereich
0|1
Per Default werden Traps nur vom aktuellen Agent empfangen. Vom Standby-Agent erhaltene Traps werden verworfen. Sollen diese Traps nicht verworfen werden, muss der Config-Eintrag auf 1 gesetzt werden.

[snmpdrv] getBulkMaxRepetitions

Typ
uint
Default
10
Wertebereich
>=0
Dieser Eintrag dient zur Konfiguration des "Max-Repetitions" Parameter einer einzelnen SNMP GetBulk Anforderung. Dieser Parameter bedeutet wieviele OIDs von einer GetBulk Anforderung ausgelesen werden sollen.

[snmpdrv] ignoreGQTrapErrors

Typ
string
Default
No
Wertebereich
Yes|No
Verhindert, dass wenn auf OIDs, die nur als Traps und nicht als OID-Objekte existieren, eine Generalabfrage durchgeführt wird und es sich dabei um spontane Adressen handelt, das Invalid-Bit auf das bestimmte DPE gesetzt wird.

[snmpdrv] mapInvalidData

Typ
string
Default
Yes
Wertebereich
Yes|No
Wenn dieser Config-Eintrag auf 'Yes' gesetzt ist, dann wird bei Datenpunktelementen mit Eingangsadresse das 'Invalid' Bit gesetzt, falls der betreffende SNMP Agent nicht erreichbar ist, oder die abgefragte OID im Agent nicht existiert.

[snmpdrv] maxNumOfVbsInBulkQuery

Typ
uint
Default
1000
Wertebereich
>=0
Normalerweise wird von Geräten bei einer Bulk Query nach Abarbeiten von allen SNMP Adressen (OID) ein "endOfMIBView" zurückgeliefert, wodurch die Abfrage abgebrochen wird. Bei manchen Geräten ist dies jedoch nicht der Fall und der Treiber beginnt erneut die Liste abzuarbeiten, befindet sich also in einer Endlosschleife. In diesem Fall wird die Abfrage abgebrochen, sobald das erste bereits gelieferte Ergebnis wiederholt wird. Als zusätzliche Sicherung kann mit diesem Config-Eintrag eine gewisse Anzahl an Ergebnissen eingestellt werden, nach der die Abfrage abgebrochen wird.

[snmpdrv] maxTrapsBufferSize

Typ
uint
Default
30000
Wertebereich
>=0
Defines the buffer size to buffer traps which could not be sent due to an overload (limited with maxTrapsPerSecond).

[snmpdrv] maxTrapsPerSecond

Typ
uint
Default
50
Wertebereich
>= 0
Definiert die maximale Anzahl an Traps, die jede Sekunde gesendet werden. Wenn der Wert auf <=0 eingestellt wurde, wird im Log-Viewer eine Warnung ausgegeben. Bei einer Überlast, werden die Traps gepuffert. Die Puffergröße wird mit dem Config-Eintrag maxTrapsBufferSize definiert.

[snmpdrv] numberOfAgentsWithDelay

Typ
uint
Default
1
Wertebereich
0 - 500
Wenn delayBetweenAgents auf >=0 gesetzt ist, können mehrere Agents zur gleichen Zeit kommunizieren. Dieser Config-Eintrag definiert die Anzahl der zugleich kommunzierenden Agents.

[snmpdrv] onlyActivePolls

Typ
string
Default
No
Wertebereich
Yes|No
Wenn onlyActivePolls  auf  "Yes" gesetzt wird, wird das Polling nur von dem aktiven Treiber eines redundanten Systems durchgeführt. Bei "No" findet das Polling von beiden Treibern an den Agent statt.

[snmpdrv] reportHomelessTraps

Typ
int
Default
0
Wertebereich
0..2
Definiert ob die Informationen für "homeless" Traps auch auf den internen Datenpunkt (siehe Trap.HomelessTrap) geschrieben werden sollen. 0 => Information wird nur innerhalb des LogViewers ausgegeben 1 => Information wird innerhalb des LogViewers und am internen Datenpunkt ausgegeben. 2 => Nur wenn mindestens eine "Payload OID" zu keiner Peripherieadresse zugeordnet werden konnte, wird die Information innerhalb des LogViewers und am internen Datenpunkt ausgegeben.

[snmpdrv] setTimeoutOnV3USMerrors

Typ
string
Default
no
Wenn setTimeoutOnV3USMerrors = "yes" und Status-Timeout für den SNMPv3 Agent gesetzt wurde, wirken sich SNMPv3 USM-Fehler auf den Status des Timeouts aus. "yes" - Im Falle eines USM-Fehlers wird das DPE Status.Timeout auf TRUE gesetzt "no" - das DPE Status.Timeout wird nie auf TRUE gesetzt, wenn ein USM-Fehler auftritt.

[snmpdrv] snmpDir

Typ
string
Default
/<Projektverzeichnis>/data
Für SNMPv3 braucht die SNMP Entity einen Boot Counter. Dieser befindet sich in der Datei "snmpv3_boot_counter". Der Pmon schreibt die Datei defaultmäßig in das Projektverzeichnis /data. Falls keine Schreibberechtigung auf diesen Ordner gegeben ist, kann ein anderes Verzeichnis mittels dieses Config-Eintrages bestimmt werden.

[snmpdrv] trapPayloadOctetStringHex

Typ
bool
Default
0
Wertebereich
0|1
Ist dieser Eintrag auf 1 gesetzt, dann werden Trap-Payloads vom Typ Octet-String als HEX-String auf den internen DPE _SNMPManager.Trap.PayloadValue geschrieben. Damit können auch nicht druckbare Zeichen behandelt werden.

[snmpdrv] trapReceptionPort

Typ
int
Default
162
Mit trapReceptionPort setzen Sie den Trap-Port für den SNMP-Treiber. Portnummern < 1024 können unter Linux nicht verwendet werden.

[snmpdrv] useReduPostfix

Typ
bool
Default
0
Dieser Konfig-Eintrag setzt das Verhalten des SNMP-Treibers in einem redundanten System auf das Verhalten vor 3.20 zurück, was bedeutet, dass keine "_2"-Datenpunkte erzeugt werden. Dieser Eintrag sollte nur verwendet werden, wenn es wirklich notwendig ist, denn in diesem Fall müssen die fwdDpType config.redu-Einträge zu den oben genannten DPTs entfernt werden, um genau das alte Verhalten zu erreichen.

[snmpdrv] v3agentDPTemplate

Typ
string
Default
_SNMPV3Entity
Um alle Datenpunktelemente zu initialisieren wird beim Start des Treibers ein Template-Datenpunkt abgefragt. Dessen Blätter stehen dann in weiterer Folge für alle Datenpunkte zur Verfügung. Wenn an diesem Template-Datenpunkt ein Element fehlt, so steht dies auf keinem der angemeldeten Agent-Datenpunkte zur Verfügung! Als Template-Datenpunkt kann natürlich ein (sowieso verwendeter) "normaler" Datenpunkt herangezogen werden. In diesem Fall setzt man den Wert auf den vollständigen DP-Namen, also z.B. "_1_SNMPV3Entity_5".

[snmpdrv] v3entityDPName

Typ
string
Default
SNMPV3Entity
Dieser Eintrag bestimmt den Mittelteil des Datenpunktnamens für die SNMP V3 Entity-DPs. Jeder Name wird nach dem Schema _driverNumber_v3entityDPName_agentNumber zusammengesetzt. Die Agentnummer wird dabei automatisch von 0 bis 255 getestet, d.h. jede neue Entity bekommt einfach eine weitere Nummer. Im Kommentar kann die genaue Bedeutung der Entity beschrieben werden. Die angesprochenen Datenpunkte sind vom internen Typ "_SNMPV3Entity". default: SNMPV3Entity.

[snmpdrv] writeToStandbyAgent

Typ
bool
Default
0
Wertebereich
0|1
Wird dieser Eintrag auf 1 gesetzt, übermittelt der Wincc OA SNMP Treiber Write-Requests auch an den Standby-Agent. Andernfalls werden Write-Requests nur an den aktiven Agent gesendet.

[split]

Einstellungen für den Splitbetrieb-Manager

[split] connectDpGroup

Typ
string
Default
SplitConnect / SplitConnect_2
Datenpunktgruppe mit den Datenpunkten, die zwischen den beiden Splitsystemen ständig abgeglichen werden sollen.

[split] copyDpGroup

Typ
string
Default
'SplitGet'|'SplitGet_2'
Datenpunktgruppe mit den Datenpunkten, die beim Übergang in den Splitmodus einmalig kopiert werden sollen.

[split] splitPort

Typ
unsigned int
Default
4778
Wertebereich
1024..65535
Portnummer, auf der der Splitbetrieb-Manager Verbindungen des redundanten Peers erwartet.

[ssi]

Einstellungen für den SSI Treiber

[ssi] aliveInstrNr

Typ
unsigned
Default
0
Wertebereich
>=0
Über diesen Eintrag ist einstellbar, welche Befehlsnummer beim Versenden von Alive-Telegrammen (Typ Impulsbefehl) verwendet werden soll. Dieser Eintrag ist nur dann notwendig und sinnvoll, wenn der SSI-Treiber redundant betrieben wird und die verschiedenen Replicas (siehe Redundanz) ihre Verbindungen mit unterschiedlichen Impulsbefehlen überwachen. Die Peripherieadresse des Datenpunktes, der für diese Aliveüberwachung dient, muss trotzdem bei allen Replicas gleich sein, nur die Befehlsnummer (siehe Kapitel Telegrammformate - Befehl) darf unterschiedlich sein (dies ist durch diesen Eintrag einstellbar). Beispiel: (0) aliveInstrNr = 0 (1) aliveInstrNr = 1 Die Befehlsnummern der Alive-Telegramme entsprechen hier den Replicanummern.

[ssi] aliveName

Typ
string
Default
_SSI_Alive_
Basisname der SSI-Alive-Datenpunkte. An diesen Basisnamen wird vom Treiber automatisch die Treibernummer angehängt. Beispiel: "_SSI_Alive_1" für den Treiber Nummer 1 Typ dieser Datenpunkte: _SSI_Alive

[ssi] connection

Typ
string int int
Gibt die wichtigsten Verbindungsparameter an. Syntax: connection = <hostname> <portnumber> <time> <hostname> - Der Hostname des Kommunikationspartners. Dieser muss inklusive der Domainbezeichnung angegeben werden. <portnumber> - die Portnummer der Verbindung. Diese ist auf 0 zu setzen, wenn der Treiber als Server agiert (in diesem Fall muss der Eintrag tcpServerPort in der Konfigurationsdatei existieren). <time> - Die Zeit gibt bei Clientverbindungen an, nach wie vielen Sekunden beim Verbindungsausfall versucht wird die Verbindung erneut aufzubauen. Beispiel: connection = "mymachine.co.at" 2073 6 Dieser Treiber kommuniziert mit der vorgelagerten Komponente, die die Internetadresse "mymachine.co.at" hat. Der Treiber agiert dabei als Client. Sechs Sekunden nach einem erkannten Verbindungsausfall versucht er einen erneuten Verbindungsaufbau zur vorgelagerten Komponente durchzuführen. Beispiel: tcpServerPort = 2073 connection = "othermachine.co.at" 0 10 In diesem Fall agiert der Treiber als Server. Es muss einen Eintrag tcpServerPort geben, der angibt, über welche Portnummer der Treiber seine Dienste zur Verfügung stellt. Der letzte Parameter (die Reconnect-Zeit) hat in diesem Fall keine Bedeutung.

[ssi] dadfName

Typ
string
Default
_SSI_DaDf_Table
Name des Datenpunkts, mittels dem die Zuordnung zwischen Datenart und Datenformat parametriert werden kann. Typ dieses Datenpunktes: _SSI_DaDf

[ssi] defaultImpulseTime

Typ
int
Default
8
Wertebereich
0 - 255
Bei den Impulsbefehlen, die vom Treiber an die SAT-Komponenten geschickt werden, kann eine Zeitdauer parametriert werden (siehe Kapitel Telegrammformate - Befehl). Damit nicht zu jedem Befehlsdatenpunkt diese Zeitdauer parametriert werden muss, gibt es die Möglichkeit, mit diesem Eintrag einen Defaultwert anzugeben. Dieser ist als Byte so anzugeben, wie er im SAT-Format erwartet wird (siehe unten). Fehlt dieser Eintrag in der Konfigurationsdatei, dann wird als Defaulteinstellung 8 (= 00001000) angenommen, was einer Schaltzeit von 100 ms (= 2x50 ms - siehe unten) entspricht. Folgende Informationen sind in diesem Byte enthalten: Zeit (Bit 0 und 1) 0 für 50 ms, 1 für 500 ms, 10 für 1 s, 11 für 10 s Faktor (Bit 2-6) 1..31 Schaltzeit = Zeit - Faktor OW (Bit 7) 1...Überschreibt bereits laufendes Kommando 0...Überschreiben nicht erlaubt. Beispiel: defaultImpulseTime = 4 Setzt den Defaultwert für die Schaltzeit der Impulsbefehle auf 50 ms. Beispiel: defaultImpulseTime = 134 Setzt den Defaultwert für die Schaltzeit der Impulsbefehle auf eine Sekunde mit gesetztem Überschreibbit.

[ssi] drvSmoothMode

Typ
int
Wertebereich
0,1,2
Definiert das Glättungsverhalten. Folgende Werte können für diesen Config-Eintrag gesetzt werden: 0 - Die Glättung wird immer durchgeführt. 1 - Es werden nur spontane Wertänderungen geglättet. 2 - Die Glättung wird nie durchgeführt. Dieser Wert wird auf den Datenpunkt _Driver<num>.SM vom Typ _DriverCommon geschrieben.

[ssi] hostId

Typ
int int
Gibt den Namen der eigenen Komponente im System an (<region> und <component>). Läuft der Treiber in einem redundanten System und soll daher mehrfach betrieben werden, so kann für jede Instanz ein eigener Eintrag für die HostId angegeben werden, indem jedem Eintrag die Nummer der Replica vorangestellt wird (in runden Klammern, siehe Eintrag tcpServerPort).

[ssi] impztName

Typ
string
Default
_SSI_Impulse_Times
Name des Datenpunktes, der ein dynamisches Array von Impulszeiten (für binäre SSI-Befehle) enthält. Typ dieses Datenpunktes: _SSI_Impulse_Type

[ssi] keet

Typ
int int
Regionsnummer und Komponentennummer der vorgelagerten Komponente im System (das ist die Komponente, die unmittelbar mit WinCC OA verbunden ist). Wird benötigt zur Initialisierung der komponentenspezifischen internen Datenpunkte. Die Werte müssen mit den zu erwarteten Regionsnummern und Komponentennummern der SSI-Telegramme übereinstimmen. Siehe auch keetConnection.

[ssi] keetConnection

Typ
int int string int int
Der Config-Eintrag keetConnection fasst die Einträge keet/connection bzw. redundancyKeet/redundancyConnection zusammen. Mit diesem Eintrag können mehr als 2 Verbindungen definiert werden. Die Parameter sind: Regionsnummer der Verbindung Komponentennummer der Verbindung IP-Name des Partners Portnummer (0 falls der Treiber als Server agiert), üblicherweise 2073 Timeout für einen Reconnect Die Einträge keet/connection bzw. redundancyKeet/redundancyConnection werden der Kompatibilität halber weiterhin unterstützt. Die Reihenfolge der Einträge ist beliebig, der Treiber schickt Befehle zu allen Partnern und liest Meldungen von allen Partnern. Beispiel: [ssi] keetConnections = 1 101 "SSIHost" 1723 10

[ssi] mapComponent

Typ
unsigned unsigned
Wertebereich
0..255, 0..255
Mit diesem Eintrag kann eine Komponentennummer auf eine andere abgebildet werden. Damit ist es möglich, Werte von verschiedenen, redundanten SAT-Anlagen zu erhalten, die entsprechenden Datenpunkte jedoch nur einmal zu parametrieren. Im Config-Eintrag wird die Komponentennummer und ihr 'Alias' angegeben. Beispiel: mapComponent = 2 22 Erhält der Treiber ein Telegramm mit der Komponente 2, so sucht er erst nach einer Peripherieadresse für diese Komponente. Findet er keine, so sucht er eine für die Komponente 22.

[ssi] mapRegion

Typ
unsigned unsigned
Wertebereich
0..255, 0..255
Mit diesem Eintrag kann eine Regionsnummer auf eine andere abgebildet werden. Die Reihenfolge der Zahlen im Eintrag ist <SPS-Regionsnummer> <WinCC OA-Regionsnummer>. In Telegrammen von der SPS wird die Regionsnummer immer auf die abgeändert, die in WinCC OA gültig ist, bevor nach dem entsprechenden DP gesucht wird. In Befehlstelegrammen und auch in Systemtelegrammen vom Treiber wird als Source-Regionsnummer im Telegrammkopf weiterhin die in 'hostID' spezifizierte verwendet, also ohne Mapping, für eine Target-Regionsnummer in Systemtelegrammen die abgebildet aus dem DP. In der Config-Datei sollten in 'hostID', 'keet', 'redundancyKeet' und 'reachableComponent' weiterhin die in WinCC OA gültigen Regionsnummern verwendet werden. Jede Regionsnummer darf höchstens einmal je Treiber abgebildet werden.

[ssi] mapUserBit

Typ
int string
Wertebereich
1 - 8; TestMode, Spontan, NotSorted, NEZ, Available, Ersatzwert, HighPriority, AbschaltungManuell
Die im SSI-Telegramm gesetzten Flags können bei Bedarf auf Userbits des Originalwert-Konfigs abgebildet werden. Dabei sind für den 1. Parameter die Eintrage 1 bis 8 erlaubt (für 8 Userbits), für den 2. Parameter können die folgenden Einträge angegeben werden: 'TestMode' 'Spontan' 'NotSorted' 'NEZ' 'Available' 'Ersatzwert' 'HighPriority' 'AbschaltungManuell' GA- und Invalid-Bit werden immer abgebildet und zwar auf die dafür vorgesehenen und gleichnamigen Bits des Originalwertkonfigs.

[ssi] reachableComponent

Typ
int int
Regionsnummer und Komponentennummer einer Komponente im System (außer der vorgelagerten - siehe Eintrag "keet" oben). Wird benötigt zur Initialisierung der komponentenspezifischen internen Datenpunkte. Die Werte müssen mit den zu erwarteten Regionsnummern und Komponentennummern der SSI-Telegramme übereinstimmen.

[ssi] redundancyConnection

Typ
string int int
Die Bedeutung der Parameter entspricht denen des Eintrags connection. Dieser Eintrag ist dann erforderlich, wenn es zwei redundante Fernwirkkomponenten (KE/ET) gibt, die mit einem Treiber verbunden werden. Die Kommunikation mit mehr als zwei redundanten KE/ET ist derzeit im SSI-Treiber nicht möglich. Beispiel: connection = "firstmachine.co.at" 2073 10 redundancyConnection = "secondmachine.co.at" 2074 10 Der Treiber soll zwei Verbindungen aufbauen (beide als Client). Alle Daten, die von den beiden redundanten KE/ET kommen, werden vom Treiber weiterverarbeitet (und an den Event-Manager weitergeleitet, sofern sie nicht geglättet werden). Normalerweise schickt nur das aktive der beiden KE/ET tatsächlich Nutzdaten (eine Ausnahme stellen Alive-Telegramme dar, die nur der Verbindungsüberwachung dienen).

[ssi] redundancyKeet

Typ
int int
Die Bedeutung der Parameter entspricht denen des Eintrags keet. Dieser Eintrag ist dann erforderlich, wenn es zwei redundante Fernwirkkomponenten (KE/ET) gibt, die mit einem Treiber verbunden werden. Soll mit mehr als 2 redundanten KE/ET kommuniziert werden, so müssen statt der Einträge "connection", "keet", "redundancyConnection" für jede KE/ET ein Eintrag "keetConnection" verwendet werden. The parameters here have the same meaning as those in the keet statement. This statement is necessary when there are two redundant remote devices (KE/ET) connected to one driver. If the system needs to communicate with more than 2 redundant KE/ET components, then one "keetConnection" entry must be used for each KE/ET instead of the entries "connection", "keet" and "redundancyConnection".

[ssi] selectTime

Typ
int int
Wertebereich
>=0; >=0
Maximalzeit in Sekunden (1.Parameter) und Millisekunden (2.Parameter), die im select auf das Eintreffen neuer Daten gewartet werden soll.

[ssi] ssiMaxLength

Typ
int
Default
1024
Wertebereich
>0
Gibt die maximale Länge eines SSI-Telegramms in Byte an.

[ssi] subAdrInUse

Typ
string
Default
No
Wertebereich
Yes|No
Gibt an, ob die Subadresse bei der Quelladresse des Telegramms berücksichtigt ("Yes") oder immer auf 0 gesetzt werden soll ("No").

[ssi] sysAllName

Typ
string
Default
_SSI_ALL_
Basisname aller KE/ET spezifischen Datenpunkte zur Verwaltung der Systemtelegramme in Befehlsrichtung (analog zu sysMsgName).

[ssi] sysMsgName

Typ
string
Default
_SSI_SYS_
Basisname aller komponentenspezifischen Datenpunkte zur Verwaltung der Systemtelegramme. Je Komponente im System muss ein Datenpunkt angelegt werden, auf den eingehende und ausgehende Systemtelegramme abgebildet werden (z.B. GA). Der Name besteht dann aus dem hier angegebenen Basisnamen und der Regions- und Komponentennummer, durch '_' getrennt (Beispiel: "_SSI_SYS_255_1" für Komponente 1). Es ist darauf zu achten, dass der Basisname immer mit einem "_" endet.

[ssi] tcpServerPort

Typ
int
Wertebereich
>0
Gibt den Serverport für die von diesem Treiber hergestellte TCP-Verbindung an. Dieser Eintrag ist nur dann erforderlich, wenn der Treiber als Server-Dienst zur Verfügung stellen soll. Wird der Treiber in ein redundantes System eingebunden und soll daher mehrfach laufen, so kann für jede Instanz ein eigener Eintrag für den Serverport angegeben werden.

[stdlib]

Einstellungen für die Standard Object Library (Stdlib).

[stdlib] directInputIntoTextFields

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob Werte direkt in ein Textfeld eines Faceplates eingetragen werden können, ohne dass das Werteeingabepanel geöffnet wird. FALSE(0) = nein (Default), TRUE(1) = ja.

[stdlib] faceplateModal

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob das Faceplate modal angezeigt wird. FALSE(0) = nein (Default), TRUE(1) = ja.

[stdlib] infoAreaMax

Typ
int
Default
6
Wertebereich
>=0
Definiert die maximale Anzahl von Informationsbereichen, die erlaubt sind (Default = 6). Achtung: Alle Symbole der verwendeten Libraries müssen dann mindesten diese Anzahl an Informationsbereichen bereitstellen!

[stdlib] useNotes

Typ
bool
Default
1
Wertebereich
0|1
Definiert, ob die Registerkarte "Notizen" (siehe Kapitel Faceplates und Registerkarten ) im Faceplate angezeigt wird, wenn der zugehörige Datenpunkttyp ein notes Datenpunktelement enthält. FALSE(0) = nein, TRUE(1) = ja (Default).

[TLSGateway]

Einstellungen für das TLS-Gateway

[TLSGateway] EAKDataPath

Typ
string
Diese Pfadangabe bestimmt wo die EAK-Objekte ihre persistierten Daten ablegen. Bei jedem Neustart werden diese gelesen und überschreiben die Standardwerte aus der TLS-Konfigurationsdatei. Zum Herstellen der Originaleinstellungen müssen die entsprechenden EAK-Dateien gelöscht werden.

[TLSGateway] FG1TypeName

Typ
string
Default
_TLS_FG1
Name des FG1-Datenpunkttyps.

[TLSGateway] FG254TypeName

Typ
string
Default
_TLS_FG254
Name des FG254-Datenpunkttyps.

[TLSGateway] FG3TypeName

Typ
string
Default
_TLS_FG3
Name des FG3-Datenpunkttyps.

[TLSGateway] FG4TypeName

Typ
string
Default
_TLS_FG4
Name des FG4-Datenpunkttyps.

[TLSGateway] FG6TypeName

Typ
string
Default
_TLS_FG6
Name des FG6-Datenpunkttyps.

[TLSGateway] TLSConfigFileName

Typ
string
Default
tlsconfig.txt
Name der TLS-Konfigurationsdatei. Die angegebene Konfigurationsdatei muss sich im data-Ordner des Projektverzeichnisses befinden.

[TLSGateway] tlsgwCertificate

Typ
string
Der Dateiname des zu benutzenden (X509) Zertifikats. Dieses Zertifikat muss im config/ Verzeichnis des Projektes liegen. Dieses Zertifikat kann im SysMgmt - Kommunikation - SSL Zertifikate erstellt werden. zb.: "meinTlsZertifikat.crt"

[TLSGateway] tlsgwCipherSuiteList

Typ
string
Default
<[all sections] cipherSuiteList>>
Eine durch Kommas getrennte Liste alle für die Kommunikation verwendbaren Cipher Suits. Der Server wählt die erste Cipher Suite seiner Liste die auch in der Liste des Clients zu finden ist. z.B.: "DHE-RSA-AES256-SHA256,DHE-RSA-AES256-GCM-SHA384" Der Default des Config-Eintrages leitet sich über den Config-Eintrag [Alle Sektionen] ciperSuiteList ab.

[TLSGateway] tlsgwPrivateKey

Typ
string
Der Dateiname des privaten Schlüssels des Zertifikates. Dieser wird mit dem Zertifikat generiert und muss ebenfalls im /config Verzeichnis des Projektes liegen. zB.: "meinTlsZertifikat.key"

[TLSGateway] tlsgwRootCACertificate

Typ
string
Der Dateiname des (X509) Zertifikats der Root Certificate Authority. Die Zertifikate der Gegenstelle müssen mit diesem Zertifikat signiert sein. Diese Root Zertifikat kann ebenfalls im SysMgmt erstellt werden. Dieses Zertifikat muss ebenfalls im /config Verzeichnis des Projektes liegen. z.B.: "rootCaCert.crt"

[TLSGateway] tlsgwSecurityMode

Typ
bool
Default
1
Wertebereich
0|1
Der Eintrag definiert, ob das TLS-Gateway sichere Kommunikation verwendet. Sind nicht alle erforderlichen Verschlüsselungs-Parameter innerhalb der Config-Datei definiert, stoppt das TLS-Gateway. Um die sichere Kommunikation zu deaktiveren, muss dieser Eintrag explizit auf 0 gesetzt werden.

[TLSGateway] tlsgwVerifyTime

Typ
bool
Default
1
Wertebereich
0|1
Definiert ob die Gültigkeit der Zertifikate beachtet werden soll. Wenn dieser Config Eintrag 0 ist, werden auch abgelaufenen Zertifikate akzeptiert.

[TLSGateway] TLSLogFileName

Typ
string
Default
TLSLogFile.log
Name der Logdatei in dem alle TLS-Meldungen aufgezeichnet werden. Die angegebene Datei wird im log-Ordner des Projektverzeichnisses angelegt.

[TLSGateway] TLSLoggerFlags

Typ
unsigned
Default
10
Wertebereich
0..3600 (s)

[TLSGateway] tslgwCRLfile

Typ
string
Optional, der Dateiname der certification revocate list. Diese Datei muss ebenfalls im config/ Verzeichnis des Projektes liegen. Details zu CRL Dateien können in der OpenSSL Doku gefunden werden (openssl ca). z.B.: "revocateList.crl"

[ui]

Einstellungen für das User Interface

[ui] acknowledgeFunction

Typ
string
Wertebereich
>functionName<
Mit diesem Config-Eintrag kann eine Funktion definiert werden, die vor jeder Quittierung ausgeführt wird. Damit kann z.B. eine Befehlsgewalt realisiert werden, d.h., wenn ein Benutzer keine Befehlsgewalt hat, dann kann er auch nicht quittieren (unabhängig von einer Berechtigung). Diese Funktion muss in einer CTRL - Library implementiert werden und so definiert werden: void functionName(dyn_string datapts, int type, int &returnValue); Der dritte Parameter definiert, ob das Quittierungskript ausgeführt wird (1- es wird quittiert, 0 es wird nicht quittiert). Er wird als Ersatz für einen Returnwert benutzt, damit ist auch ein dpSetWait() möglich.

[ui] activateCursor

Typ
string
Default
(PointingHandCursor)
Name der Pixmap-Datei des Cursors der angezeigt wird, falls sich im Bedien Modus der Mauscursor über einem Objekt befindet, welches ein Aktions-Script auf Klick ausführen kann. Das Format dieses Eintrags ist: "filename[,x,y]" also z.B.: "cursor.png" oder "cursor.png,2,2" wobei x,y den HotSpot des Cursor definiert. Ohne Angabe ist er genau in der Mitte. Die Pixmap-Datei für einen cursor muss im pictures-dir liegen, und das Format "PNG", "XPM" oder "GIF" haben. Beachten Sie die folgenden Einschränkung: Gültige Cursorgrößen hängen von der Hardware ab. Wir empfehlen die Cursorgröße 32x32 da diese Größe auf allen Plattformen unterstützt wird. Einige Plattformen unterstützen auch 16x16-, 48x48- und 64x64-Cursors.

[ui] activeColorScheme

Typ
string
Definiert das aktive Farbschema beim Start des UI-Managers. Zur Laufzeit kann das aktive Farbschema mit der CTRL-Funktion colorSetActiveScheme(). geändert werden. Siehe auch setActiveIconTheme().

[ui] activeIconTheme

Typ
string
Definiert das aktive Icon Thema beim Start des UI Managers, z.B. "themes/dark" Zur Laufzeit kann es mit der CTRL Funktion setActiveIconTheme() geändert werden. Wenn beim Anlegen eines neuen Projektes das alte Icon Thema verwendet wird, wird dieser Config-Eintrag als activeIconTheme = "" hinzugefügt. Bei Verwendung des neuen Icon Themas wird der Config-Eintrag nicht hinzugefügt. Ein benutzerdefiniertes Icon Thema wird beispielsweise mit activeIconTheme = "ownTheme/..." gesetzt.

[ui] aesExtendedFilter

Typ
int
Default
0
Wertebereich
0 | 1 | 2 |3
Aktiviert die "Extended Filter"-Funktionalität des Alarm- und Ereignisschirms. Der erweiterte Filter erlaubt es eigene Filteroptionen für den Alarm- und Ereignisschirm zu verwenden - siehe Kapitel Eigenschaften der Meldetabelle - Extended Filter . Der Config-Eintrag kann auf die folgenden Werte gesetzt werden: 0 = deaktiviert (default). 1 = der erweiterte Filter wird für den Alarmschirm verwendet. 2 = der erweiterte Filter wird für den Eventschirm verwendet. 3 = der erweiterte Filter wird für den Alarm- und den Eventschirm verwendet.

[ui] aesShowDistDisconnections

Typ
bool
Default
1
Wertebereich
0|1
Erlaubt das Ausschalten der PopUp-Fenster beim verlieren der Verbindung zu verteilten Systemen im Alarmschirm.

[ui] allowULCAnimation

Typ
bool
Default
0
Wertebereich
0|1
Aktiviert oder deaktiviert Embedded Module Panel-Wechsel-Animationen für den ULC. Dieser Eintrag ist gültig für den ULC und hat keinen Einfluss auf das native UI und auf den WebClient.

[ui] animationTimerInterval

Typ
int (ms)
Default
16
Animationen durch die animate() Funktion erreichen eine sanfte Bewegung indem alle 16ms ein Neuzeichnen des animierten Objektes stattfindet. Dies führt allerdings zu hoher CPU Last wenn viele Objekte gleichzeitig animiert werden. In diesem Fall kann mit diesem config Eintrag das Interval für das Neuzeichnen erhöht werden, was die Animationen weniger sanft aussehen lassen kann, aber die CPU wesentlich entlastet.

[ui] applicationFont

Typ
string
Definiert eine Schriftarten-Datei (relativ zum /data/ Verzeichnis), welche zusätzlich geladen wird. Es sind TrueType und OpenType Schriftarten möglich. Dieser config Eintrag kann mehrfach angegeben werden.

[ui] arrowFocusThreshold

Typ
int
Default
50
Der Eintrag bewirkt, dass das nächste aktuelle Objekt zu mindestens 50% innerhalb des durchsuchten Bereiches liegen muss (bei Pfeiltastensteuerung). Dies ist so zu verstehen, dass bei der Navigation mit den Pfeiltasten in eine bestimmte Richtung jenes Objekt als nächstes Objekt ausgewählt wird, dessen Markierungsrahmen mehr als die gewählte Prozentzahl innerhalb der gedachten Verlängerung des Markierungsrahmens des aktuellen Objektes liegt. Bei den einfachen Grafikobjekten, dem Textfeld und den Schaltflächen führen die Pfeiltasten zum nächsten Objekt.

[ui] arrowsAsTab

Typ
bool
Default
0
Wertebereich
0|1
Aktiviert die Pfeiltasten für die Navigation zwischen Objekten im Panel (ähnlich wie die Tabulator-Taste). D.h. ein Druck auf eine Pfeiltaste sucht ein anspringbares Objekt in der gewählten Richtung.

[ui] autoDownscaleThreshold

Typ
float
Default
2.0
Wertebereich
>= 1
Definiert die Grenze des Verhältnisses: Panelgröße / Ausschnittsgröße bis zu welchem ein Panel automatisch runterskaliert wird, um noch vollständing in einem Modul sichtbar zu sein. Der Wert 1 ist damit jener Wert, bei dem ein Panel niemals runterskaliert wird.

[ui] autoUpdateDir

Typ
string
Definiert ein relatives Verzeichnis unter dem Projektpfad, welches verwendet wird, um alle Dateien und Subverzeichnisse (rekursiv) beim Hochlauf (bei Verwendung der Kommunikation über den HTTP Server) herunterzuladen. Dieser Config-Eintrag kann beliebig oft angegeben werden. Folgende Subverzeichnisse können angegeben werden: /pictures /panels /images /colorDB /xml /nls /bin /data /scripts/libs Hinweis Werden andere Subverzeichnisse angegeben, liefert der HTTP Server die Antwort "not found". Beispiel: autoUpdateDir = "panels/myTest" autoUpdateDir = "panels/myTest2"

[ui] bmpTransparentColor

Typ
string
Jedes Bitmap, welches die Farbe des Config-Eintrags enthält soll als transparent dargestellt werden. Der Eintrag ist eine Farb-String. Die Bitmap die die Farbe enthält kann wie folgt als transparent dargestellt werden: [ui] bmpTransparentColor = "{58,110,165}" Beachten Sie, dass der Farb-String genau die Farbe eines Bitmaps, welches Sie transparent darstellen wollen, sein muss. Mit dem Eintrag bmpTransparentColor = "{58,110,165}" werden alle Bitmaps, die diese Farbe {58,110,165} enthalten als transparent dargestellt. Die genaue Farbe einer Bitmap kann mittels der Farbpipette des grafischen Editors ermittelt werden. Beachten Sie, dass wenn Sie den Config-Eintrag erst nach dem Hinzufügen von Bitmaps (welche die Farbe die als transparent dargestellt werden soll, enthalten) zu der Config-Datei hinzufügen, müssen Sie die Bitmaps im GEDI erneut hinzufügen damit die Farbe transparent dargestellt wird. ACHTUNG: Für echte Transparenz sollte ein Bildformat verwendet werden, welches Transparenz unterstützt, z.B. PNG oder GIF.

[ui] cacheTimeoutSecs

Typ
int (seconds)
Default
300
Wertebereich
>= 0
Ein UI mit der Startoption "-server" verwendet einen lokalen File-Cache zur Speicherung der Daten (Panels, Libraries, ...). Im UI wird die Information gespeichert, wann eine Datei zuletzt im Cache gesichert wurde. Erfolgt innerhalb der eingestellten Zeitspanne (Default cacheTimeoutSecs = 300 Sekunden) ein erneuter Zugriff auf die Datei, wird diese aus dem lokalen Cache geladen. Wird eine Abfrage nach Ablauf der Zeit ausgeführt, wird eine Anfrage an den HTTP-Server geschickt mit der Prüfung ob die Datei am Server verändert wurde. Bei der Verwendung von cacheTimeoutSecs = 0 werden immer die Dateien aus dem lokalen Cache geladen. Der Cache muss gelöscht werden, um neuere Dateien vom Server zu laden

[ui] canvasBkgnd

Typ
string (color)
Default
_3DFace
Setzt für ein eingebettetes Modul (Embedded Module) den Hintergrund auf die angegebene Farbe z.B. für blau: canvasBkgnd = "[0, 0, 100]"

[ui] checkADAuthIntervall

Typ
int (min)
Default
60
Wertebereich
>= 60 | 0
Intervall-Angabe in Minuten, nach welchem WinCC OA die Gruppenzugehörigkeit eines Benutzers im Active Directory überprüft. Dazu muss der Benutzer das Recht haben das AD nach Benutzerinformationen abfragen zu können. Diese Überprüfung wird zusätzlich zur Standardüberprüfung beim Login durchgeführt. Diese zyklische Überprüfung kann durch das Setzen dieses Config-Eintrages auf 0 deaktiviert werden. Somit wird nur die Überprüfung beim Login durchgeführt.

[ui] checkChildPanelPos

Typ
int
Default
1
Wertebereich
0..3
Definiert in welcher Art die Positionierung von Kindfenstern beim Öffnen eingeschränkt wird: 0: Keine Einschränkung 1: Beschränkung auf die (virtuelle) Desktopgröße 2: Beschränkung auf das Fenster ihres Eltern Rootpanels 3: Beschränkung auf die sichtbare Fläche des Eltern Rootpanels

[ui] checkPopupPos

Typ
bool
Default
0
Wertebereich
0|1
Wird dieser Eintrag auf 1 gesetzt, werden Popupmenüs nur innerhalb des eigenen UI-Fensters und nicht über den Fensterrahmen hinaus dargestellt. Im Fall dass das Popupmenü zu nahe am rechten Bildschirmrand geöffnet wird, so wird dieser ebenfalls als Fenstergrenze betrachtet.

[ui] childSystemMenu

Typ
bool
Default
1
Wertebereich
0|1
Mit diesem Eintrag ist es möglich in Childpanels die Schaltfläche für das Schließen in der Fenster-Titelleiste zu deaktivieren. Mit TRUE (1 = Default) ist wie bisher die Systemeinstellung gültig - die Childpanels besitzen aktive Schaltflächen (Minimieren, Schließen). Die Schaltfläche Schließen setzt Datenpunkt INOA%Ui_<ManNum>INOA%PanelOff.ModuleName und INOA%Ui_<ManNum>INOA%PanelOff.PanelName. Dieser Eintrag kann nur für UIs unter Windows verwendet werden.

[ui] childTitleBar

Typ
bool
Default
1
Wertebereich
0|1
Wird dieser Eintrag auf 0 gesetzt, wird die Titelleiste (der gesamte Fensterrahmen) eines Childpanels ausgeblendet. Achtung: Unter X11 (Linux) bestimmt der Window Manager, ob diese Vorgaben akzeptiert werden. Es kann also vorkommen, dass dieser Config-Eintrag keine Wirkung zeigt.

[ui] clipPrimitiveText

Typ
bool
Default
1
Wertebereich
0|1
Wird dieser Eintrag auf 1 gesetzt, so wird ein einfacher Text an seinen Grenzen abgeschnitten. Der Wert 0 besagt, dass für jeden einfachen Text die Eigenschaft "Größe anpassen" aktiviert wird. Somit ist immer der ganze Text sichtbar und es wird die Größe der Füllung auf die Textlänge angepasst. Achtung! Wird ein Panel mit einfachen Texten aufgeschalten, so ist der Wert der Eigenschaft "Größe anpassen" bei jedem einfachen Text TRUE, wenn clipPrimitiveText = 0.

[ui] clockExClientEdge

Typ
bool
Default
1
Wertebereich
0|1
Der Eintrag clockExClientEdge = 0 schaltet den 3D-Effekt im Grafikobjekt "Uhr" aus.

[ui] compatAxArgumentsByValue

Typ
bool
Default
0
Wertebereich
0|1
NV Kompatibilitätsmodus. Wenn auf 1 gesetzt, werden Argumente in ActiveX Objekt-Eventscripts immer als Werte and die Scripte übergeben, auch wenn das ActiveX Objekt ein Argument als Referenz definiert. Hinweis: Nur Scripte, die keine Referenz-Argumente haben, dürfen wartende Scriptfunktionen (dpGet, delay, ...) aufrufen.

[ui] compatDisabledTextBackground

Typ
bool
Default
0
Wertebereich
0|1
NV Kompatibilitätsmodus. Nicht geeignet für neue Panels. Wird der Wert auf 1 gesetzt, dann wird bei primitiven Textobjekten, welche inaktiv sind, der Hintergrund des Textes so dargestellt, wie es das alte NV User Interface tat.

[ui] compatDisableManagedByLayoutCheck

Typ
bool
Default
0
Wertebereich
0|1
Wenn die Größe/Position eines Shapes, einer Gruppe oder Panel Referenz verändert werden soll, während das Panel ein Layout hat, wird die Änderung verhindert und ein Fehler geworfen. Um diese Überprüfung zu verhindern kann dieser Eintrag auf 1 gesetzt werden.

[ui] compatIgnoreTextScale

Typ
bool
Default
0
Wertebereich
0|1
NV Kompatibilitätsmodus. Nicht geeignet für neue Panels. Mit diesem Config-Eintrag verhindern Sie die Transformation der Fonts bei einfachen Texten, wenn die Größe eines einfachen Textes geändert wird (=1). Ab WinCC OA-Version 3.6 wird die Größe der Fonts für einfache Texte mitskaliert, wenn die Größe des Textes geändert wird. Einschränkungen: Der Config-Eintrag beeinflusst die Darstellung zur Laufzeit. Eine Verwendung des Config-Eintrags im GEDI wird NICHT unterstützt. Bei Verwendung von initialZoomFactor kommt es zu Darstellungsfehlern.

[ui] compatLegacyPainting

Typ
bool
Default
0
Wertebereich
0|1
NV Kompatibilitätsmodus. Wenn auf 1 gesetzt, wird bei der Bildschirm-Ausgabe der bisherige Modus (bis inkl. version 3.19) verwendet. Dadurch werden Füllmuster und Linienbreiten möglicherweise unterschiedlich dargestellt.

[ui] compatPanelIdAsTitle

Typ
bool
Default
0
Wertebereich
0|1
NV Kompatibilitätsmodus. Wenn auf 1 gesetzt, wird der Parameter "Panelname" bei den *PanelOn() Funktionen immer als Paneltitel verwendet und damit in der Titelleiste angezeigt. Beim Standardverhalten wird der Parameter "Panelname" nur dann als Titel angezeigt, wenn im GEDI für das Panel kein Paneltitel gesetzt wurde.

[ui] compatPanelUpscaleOnDesktop

Typ
bool
Default
1
Wertebereich
0|1
Der Konfigurationseintrag "compatPanelUpscaleOnDesktop" kann verwendet werden, um die automatische Hochskalierung von Panels innerhalb von Modulen zu deaktivieren. Der Konfigurationseintrag betrifft nur die Desktop-Benutzeroberfläche und hat keine Auswirkung auf das Mobile UI. Wenn diese Option auf 0 gesetzt ist, wird die Hochskalierung der Panels in den Modulen deaktiviert.

[ui] confirmCursor

Typ
string
Default
(UpArrowCursor)
Name der Pixmap-Datei des Cursors der angezeigt wird, falls sich im Einzelquittier-Modus der Mauscursor über einem quittierbaren Objekt befindet. Das Format dieses Eintrags ist: "filename[,x,y]" also z.B.: "cursor.png" oder "cursor.png,2,2" Wobei x,y den HotSpot des Cursor definiert. Ohne Angabe ist er genau in der Mitte. Die Pixmap-Datei für einen Cursor muss im pictures-Verzeichnis liegen, und das Format "PNG", "XPM" oder "GIF" haben. Beachten Sie die folgenden Einschränkung: Gültige Cursorgrößen hängen von der Hardware ab. Wir empfehlen die Cursorgröße 32x32 da diese Größe auf allen Plattformen unterstützt wird. Einige Plattformen unterstützen auch 16x16-, 48x48- und 64x64-Cursors.

[ui] connectedShapesColor

Typ
string
Default
{255,0,0}
Wertebereich
RGB definition only
Bei der Verwendung der CTRL Funktion connectedShapes() werden Objekte auf eine Farbe gesetzt, die ein dpConnect() aktiv halten. Dieser Eintrag bestimmt, welche Farbe dafür verwendet wird.

[ui] connectedShapesTimeOut

Typ
int (ms)
Default
2000
Bei der Verwendung der CTRL Funktion connectedShapes() werden Objekte auf eine Farbe gesetzt, die ein dpConnect() aktiv halten. Dieser Eintrag bestimmt, wie lange diese spezielle Farbe (siehe connectedShapesColor) angezeigt wird.

[ui] ctrlDLL

Typ
string
Mit diesem Config-Eintrag kann eine CtrlExtension DLL geladen werden. Die DLL wird zunächst im <proj_path>/bin gesucht. Wenn sie dort nicht existiert, wird sie in <wincc_oa_path>/bin gesucht. Dieser Eintrag kann nur in der [ui] oder der [ctrl] Sektion gesetzt werden. Soll eine DLL vom UI und CTRL verwendet werden, muss sie in beiden Sektionen geladen werden. Es können beliebig viele DLLs geladen werden. Anmerkung: Es wird empfohlen eine CtrlExtention DLL direkt aus dem Ctrl-Script mit der #uses Anweisung zu laden.

[ui] defaultColorDbFileName

Typ
string
Default
colorDB
Dateiname der Color-Database-Datei, die als erste gelesen wird.

[ui] defaultFont

Typ
string (font)
Dieser config Eintrag wird verwendet um festzustellen, ob Schriftarteinstellungen des WinCC OA Stylesheets verwendet werden sollen. Wenn die Schriftart innerhalb der Objekteigenschaften mit den Einstellungen des config Eintrages übereinstimmen, dann werden die Stylesheet Einstellungen übernommen. Sollten config Eintrag und GEDI Einstellungen nicht übereinstimmen, so werden die Einstellungen des GEDIs verwendet anstelle des Stylesheets.

[ui] defaultLayoutBottomMargin

Typ
int
Default
from widget style
Wertebereich
>= 0
Definiert den unteren Standard Abstand in einem Layout unabhängig vom Widget Stil (in Pixel).

[ui] defaultLayoutLeftMargin

Typ
int
Default
from widget style
Wertebereich
>= 0
Definiert den linken Standard Abstand in einem Layout unabhängig vom Widget Stil (in Pixel).

[ui] defaultLayoutRightMargin

Typ
int
Default
from widget style
Wertebereich
>= 0
Definiert den rechten Standard Abstand in einem Layout unabhängig vom Widget Stil (in Pixel).

[ui] defaultLayoutSpacing

Typ
int
Default
from widget style
Wertebereich
>= 0
Definiert den Standard Abstand zwischen Elementen in einem Layout unabhängig vom Widget Stil (in Pixel).

[ui] defaultLayoutTopMargin

Typ
int
Default
from widget style
Wertebereich
>= 0
Definiert den oberen Standard Abstand in einem Layout unabhängig vom Widget Stil (in Pixel).

[ui] defaultPanelFormat

Typ
string
Default
PNL
Wertebereich
PNL|XML
Definiert das Standard-Panelformat beim Anlegen neuer Panels.

[ui] defaultResolution

Typ
integer
Default
300
Druckerauflösung in DPI, die als Vorgabewert für Ausdrucke (Panel, Tabellen) verwendet wird.

[ui] desktopUiKeepAlive

Typ
bool
Default
1
Wertebereich
0|1
Damit die HTTP Verbindung zwischen einem Desktop UI und dem Server nicht wegen Inaktivität geschlossen wird, schickt das Desktop UI einen HTTP-Request an den Server, wenn eine Minute lang kein anderer HTTP-Request geschickt wurde. Dieser Eintrag kontrolliert diese Funktionaltität: wenn auf 1 gesetzt (default), werden diese zusätzlichen Requests wie oben beschrieben geschickt, wenn auf 0 gesetzt, werden keine zusätzlichen Requests geschickt, und es kann passieren, dass die HTTP-Verbindung geschlossen wird.

[ui] downscaleOversizedPanel

Typ
bool
Default
0
Wertebereich
0|1
Wird ein Panel in einem Modul geöffnet, welches einen der möglichen Skalierungs Modi gesetzt hat (was der Standard ist), wobei das Panel in beide Richtungen größer als der gesamte Desktop ist, so kann dieser config Eintrag dafür verwendet werden, das UI zu veranlassen das Panel runter zu skalieren sodaß eine Seite dann komplett in das Fenster passt und die andere Seite einen Scrollbar anzeigt. Wenn der Eintrag 1 ist, dann ist das Verhalten des Moduls bei allen Panelgrößen konsistent.

[ui] editShowSelection

Typ
bool
Default
0
Wertebereich
0|1
Ändert die Auswahloperation bei Eingabefeldern. Springt man per Tabulator in das Textfeld, so wird der gesamte Inhalt des Feldes zum Löschen oder Ersetzen ausgewählt. Nur für Modul VISION.

[ui] fatalDialogSeconds

Typ
int
Default
120 (sec)
Wertebereich
>= 0
Bei fatalen Fehlern, die den UI-Manager zum Beenden veranlassen, wird ein Dialog mit der entsprechenden Fehlermeldung angezeigt. Dieser Config-Eintrag definiert, wie lange dieser Dialog sichtbar bleibt, bevor er automatisch geschlossen wird (d.h. Länge des Countdowns). Der Wert 0 deaktiviert den Dialog komplett, d.h. bei fatalen Fehlern wird nur der Manager beendet ohne einen Dialog anzuzeigen.

[ui] focusColor

Typ
string (color)
Default
[60,60,60]
Wertebereich
RGB definition only
Definiert die statische Farbe des Eingabefokus (falls showInputFocus = 1).

[ui] focusLineType

Typ
string (lineType)
Default
[solid,oneColor,JointMiter,CapButt,1]
Definiert die Linienart des Eingabefokus (falls showInputFocus = 1).

[ui] forcedSourceDPI

Typ
int
Default
-1
Dieser Eintrag erzwingt die Interpretation der in den Panels gespeicherten Schriftarten-Größen als ob diese auf einem Gerät mit den hier eingestellten DPI (Dots Per Inch) konstruiert worden wären. Das Problem welches hiermit gelöst werden kann ist folgendes: In den Panels werden die Schriftarten mit der Größenangabe in Punkten (Points) gespeichert, und nicht in Pixel. 1 Point = 1/72 Zoll, daher ist die Pixelgröße = (Points / 72) * DPI D.h. auf einem Zielgerät mit einer anderen DPI Einstellung als auf dem das Panel erstellt wurde, ergeben sich für Texte andere Schriftgrößen, besonders auffällig wenn die DPI Unterschiede sehr groß sind, wie z.B. Quelle = 96 DPI (Standard unter Windows), Zielgerät 400 DPI (High-DPI Schirm). Mit diesem Eintrag berechnet das UI aber die zu verwendende Pixelgröße so wie es auf dem Quellgerät ausgesehen hat. Voraussetzung ist, dass alle Panels mit den selben DPI Einstellungen auf der Quelle konstruiert wurden, da dieser Eintrag auf alle Panels wirkt.

[ui] horizontalFontHinting

Typ
bool
Default
1
Wertebereich
0|1
Legt fest, ob horizontales Hinting beim Zeichnen von Texten in Panels verwendet wird. Wenn diese Option auf 1 gesetzt ist (Standard) und diese Funktionalität vom Betriebssystem unterstützt wird, wird der Abstand zwischen einzelnen Zeichen angepasst, um die Lesbarkeit zu verbessern. Wenn diese Optimierung verwendet wird, kann es passieren, dass sich die Breite einens Textes in einem Panel nicht proportional zur Höhe verändert, wenn gezoomt wird oder Bildschirme mit verschiedenen Skalierungen verwendet werden. Texte, die dieselbe Breite auf einem Bildschirm (bzw. Vergrößerungsfaktor) haben, können unterschiedliche Breiten auf einem anderen Bildschirm (bzw. Vergrößerungsfaktor) haben. Wenn diese Option auf 0 gesetzt ist, wird diese Optimierung deaktiviert, falls möglich (das wird nicht von allen Betriebssystemen unterstützt). In diesem Fall wird das Verhältnis zwischen Textbreite und -höhe so gut wie möglich beibehalten, aber gleichzeitig kann sich die Breite von bestehenden Texten ändern.

[ui] httpProxy

Typ
string (url)
Erlaubt die Definition eines HTTP Proxy Servers, welcher bei Verwendung des WebView EWOs eingesetzt wird. Syntax: http://user:password@proxy.server.com:80 Benutzer und Passwort sind optionale Angaben.

[ui] httpServer

Typ
string (url)
Erlaubt die Definition eines HTTP Servers, welcher bei Verwendung der WebView EWO Funktion loadSnippet() bzw. der globalen Funktion getConfigActiveHttpServerUrl() verwendet wird. Syntax: http://user:password@my.server.com:80 Benutzer, Passwort und Port sind optionale Angaben. Dieser Config-Eintrag darf nur einmal in der Config-Datei vorkommen. Dieser Config-Eintrag muss bei der Verwendung von SSA verwendet werden. Bei Verwendung eines redundanten Servers mit SSA, ist es ausreichend diesen Eintrag auf einen der beiden redundanten Hosts zu setzen. Es wird hierbei der Hostname in der URL gewechselt, sodass auf den aktiven Server gezeigt wird.

[ui] initialZoomFactor

Typ
float
Default
1
Mit diesem Faktor werden alle Panels skaliert, auch Childpanels. Die Grenzen werden entsprechend dem maxZoomFactor und minZoomFactor angepasst. HINWEIS: Bei Angabe eines "initialZoomFactor" öffnet das Vision das Modul zuerst in normaler Größe (bzw. wie im ModuleOn(..) angegeben) und verkleinert es erst dann.

[ui] inputRecorderColor

Typ
string (color)
Default
{255,0,0}
Wertebereich
RGB definition only
Definiert die statische Farbe des Rahmens der angezeigt wird, wenn der inputRecorder soeben Eingaben aufzeichnet.

[ui] inputRecorderLineType

Typ
string (lineType)
Default
[solid,oneColor,JointMiter,CapButt,4]
Definiert die Linienart des Rahmens der angezeigt wird, wenn der inputRecorder soeben Eingaben aufzeichnet.

[ui] loginPanel

Typ
string
Default
vision/login.pnl
Wertebereich
vision/login.pnl vision/loginUserdefined.pnl
Gibt den relativen Pfad für das Login-Panel an. Es kann das WinCC OA standard Login-Panel "vision/login.pnl" oder das benutzerdefinierte Login-Panel "loginUserdefined.pnl" für das Login verwendet werden. Für mehr Informationen über das benutzerdefinierte Login-Panel, siehe Kapitel "benutzerdefiniertes Login".

[ui] loginPanelLocal

Typ
string
Default
login_Standard.pnl
Wertebereich
panel
Definiert das Panel für die lokale Authentifizierung wenn das Login-Framework (siehe Grundlagen zum Login-Framework) erweitert werden soll. Wenn die Basisfunktionalität vom Login-Framework nicht ausreichend ist, kann sowohl das Standard- als auch das Serverlogin-Panel durch eine eigene Implementierung ersetzt werden.

[ui] loginPanelServer

Typ
string
Default
login_Server.pnl
Wertebereich
panel
Definiert das Panel für die serverseitige Authentifizierung ( siehe Grundlagen serverseitige Authentifizierung ) wenn das Login-Framework erweitert werden soll. Wenn die Basisfunktionalität vom Login-Framework nicht ausreichend ist, kann sowohl das Standard- als auch das Serverlogin-Panel durch eine eigene Implementierung ersetzt werden.

[ui] maxZoomFactor

Typ
float
Default
4.0
Wertebereich
> 0
Obergrenze für Zoomfaktor. Defaultmäßig wird maximal um den Faktor 4 vergrößert (400%). Der Bereich ist nicht begrenzt. Beachten Sie, dass Sie nicht eine zu hohe Grenze angeben (berücksichtigen Sie das Panel das Sie verwenden).

[ui] middleMousePanning

Typ
bool
Default
1
Wertebereich
0|1
Wenn aktiviert (1) kann im Vision bei übergroßen Panels mit der mittleren Maustaste der Bildausschnitt verschoben werden (panning). Wenn die mittlere Maustaste für das Ausführen von click-Scripten benutzt werden soll, muß dieser Eintrag auf 0 gesetzt werden.

[ui] minZoomFactor

Typ
float
Default
0.5
Wertebereich
> 0
Untergrenze für Zoomfaktor. Defaultmäßig wird um den Faktor 0.5 verkleinert (auf minimal 50%). Der Bereich ist nicht begrenzt. Beachten Sie, dass Sie nicht eine zu niedrige Grenze angeben (berücksichtigen Sie das Panel das Sie verwenden).

[ui] modifyGroups

Typ
bool
Default
1
Wertebereich
0|1
Der Config-Eintrag "modifyGroups" bestimmt ob WinCC OA die Gruppen eines externen Authentifizierungssystems automatisch erstellt und aktualisiert. Für benutzerdefinierte externe Authentifizierung, siehe Kapitel Wie verwenden Sie die Benutzerdefinierte Externe Authentifizierung.

[ui] numPanelBakFiles

Typ
integer
Default
1
Gibt die Anzahl der Backup-Dateien beim Speichern des Panels an. Ist von Bedeutung, wenn ein Versionsverwaltungssystem verwendet wird.

[ui] numRecentPanels

Typ
integer
Default
10
Definiert die Anzahl der Panels, die der GEDI als zuletzt geöffnet anzeigt.

[ui] nvIconBarOn

Typ
bool
Default
1
Wertebereich
0|1
Zeigt oder blendet die Symbolleiste im Modul VISION aus. Die Kommandozeilenoptionen -iconBar und -menuBar überschreiben nvIconBarOn/nvMenuBarOn. Wenn also dieser Config-Eintrag auf 1 gesetzt ist, und das Modul mit der Option -iconBar(ohne Iconbar) gestartet wird, wird bei dem Modul keine Symbolleiste angezeigt.

[ui] nvMenuBarOn

Typ
bool
Default
1
Wertebereich
0|1
Zeigt oder blendet die Menüleiste im Modul VISION aus. Die Kommandozeilenoption -menuBar überschreibt nvMenuBarOn. Wenn also dieser Config-Eintrag auf 1 gesetzt ist, und das Modul mit der Option -menuBar(ohne Menubar) gestartet wird, wird bei dem Modul keine Menüleiste angezeigt.

[ui] panelCacheSize

Typ
int
Default
-1 (unlimited)
Wertebereich
0 .. x
Maximale Anzahl der Panels im Cache x (x ungleich 0) ... alle Panels cachen (außer Panels bei den die Eigenschaft "Im Speicher halten" im Eigenschaftenfenster auf FALSE gesetzt ist). 0 ... keine Panels (im gesamten Projekt) cachen (auch nicht wenn die Eigenschaft "Im Speicher halten" eines Panels im Eigenschaftenfenster auf TRUE gesetzt ist). Falls notwendig wird das Panel mit der ältesten Zugriffszeit aus dem Speicher gelöscht.

[ui] panelRefCacheOn

Typ
bool
Default
0
Wertebereich
0|1
Wenn der Config-Eintrag auf 0 gesetzt ist, werden Referenzen, die durch die Funktion addSymbol() hinzugefügt wurden, aus dem Cache entfernt. Das bedeutet, dass wenn eine Referenz zu einem Panel hinzugefügt wurde und diese Referenz zur Laufzeit geändert wird, werden die Änderungen bei einem erneuten Aufruf vom addSymbol() übernommen. Wenn der Config-Eintrag auf 1 gesetzt ist, werden die Änderungen zur Laufzeit nicht übernommen. Beachten Sie dabei, dass das UI (in dem das Panel geöffnet wird und der Grafikeditor mit der gleichen Nummer gestartet werden müssen).

[ui] panelVersion

Typ
integer
Default
-1
Wertebereich
1 .. current panel version
Definiert die Panelformat-Version für das PNL Panelformat beim Anlegen neuer Panels. Die neueste Version ist -1.

[ui] panningCursor

Typ
string
Default
(SizeAllCursor)
Name der Pixmap-Datei des Cursors der im Panning Modus angezeigt wird. Das Format dieses Eintrags ist: "filename[,x,y]" also z.B.: "cursor.png" oder "cursor.png,2,2" wobei x,y den HotSpot des Cursor definiert. Ohne Angabe ist er genau in der Mitte. Die Pixmap-Datei für einen cursor muss im pictures-dir liegen, und das Format "PNG", "XPM" oder "GIF" haben. Beachten Sie die folgenden Einschränkung: Gültige Cursorgrößen hängen von der Hardware ab. Wir empfehlen die Cursorgröße 32x32 da diese Größe auf allen Plattformen unterstützt wird. Einige Plattformen unterstützen auch 16x16-, 48x48- und 64x64-Cursors.

[ui] pickRange

Typ
integer
Default
3
Wertebereich
1..1000
Definiert jenen Bereich um ein Objekt, der noch als Berührung gewertet wird, wenn auf das Objekt geklickt wird (in Pixel).

[ui] pixmapEditor

Typ
string
Default
X11: kolourpaint, Windows: mspaint.exe
Definiert das externe Programm, welches zum Editieren von Pixmaps aufgerufen wird.

[ui] projPanelsObjectsFilter

Typ
string (project path) string (pattern)
Default
*
Definiert ein Filtermuster, welches in der Projektansicht und in der Katalogansicht angewendet wird, um nur jene Panels im /objects Verzeichnis anzuzeigen, die diesem Muster entsprechen. Dieser Config-Eintrag wirkt sich auf alle Paneldateien , die sich im /objects Verzeichnis oder darin enthaltenen Unterverzeichnissen (rekursiv), aus. Geprüft wird nach dem Schema der CTRL Funktion patternMatch(). Der Projektpfad muss einem in der Liste der proj_path oder wincc_oa_path Einträge entsprechen. Beispiel: projPanelsObjectsFilter = "/home/projects/myProject" "*test*"

[ui] queryRDBdirect

Typ
bool
Default
0
Wertebereich
0|1
Gibt an, über welchen Weg die lesenden Datenbankabfragen erfolgen: 0 = Standard- CTRL- Lesefunktionen (dpGet...()) über den WinCC OA Event-Manager und den WinCC OA Data-Manager. 1 = Die Standard CTRL-Lesefunktionen (dpGet...()) werden umgeleitet um den Datenbankserver direkt abzufragen Kann im Abschnitt [ui] oder [ctrl] verwendet werden. Beachten Sie, dass auch die beiden notwendigen CTRL Erweiterungen geladen werden müssen, um die direkten RDB-Lesefunktionen zu verwenden CtrlDLL = "CtrlRDBArchive" CtrlDLL = "CtrlRDBCompr" ACHTUNG: Wenn Sie queryRDBdirect = 1 verwenden, wählen Sie für Abfragen im Ereignisschirm DPEs oder *.*. Andernfalls werden DPEs nicht angezeigt.

[ui] refuseCNS

Typ
bool
Default
0
Wertebereich
0|1
Gibt an, ob ein Manager CNS-Daten der Identification im Speicher halten soll. CNS-Daten werden zwar weiterhin mit der Identification zum Manager übertragen, der Manager verwirft sie allerdings beim Empfang.

[ui] restoreFileSelectorGeometry

Typ
bool
Default
1
Wertebereich
0|1
Wenn dieser Eintrag auf 0 gesetzt wird, so wird bei Verwendung der CTRL Funktion fileSelector() die Geometrie (Größe und Position) des Dateiauswahldialogs nicht wieder hergestellt. Dies ist im Multi-Monitor Betrieb dann sinnvoll, wenn ein Panel auf unterschiedlichen Bildschirmen aufgeschalten wird, da dann der Dialog auch am Monitor des Panels geöffnet wird, und nicht an die vorherige Position (die auf einem anderen Monitor liegen könnte) verschoben wird. Alle anderen Einstellungen werden gespeichert und auch wieder hergestellt.

[ui] scalePanelsDPIDeadband

Typ
float
Default
0.3
Wertebereich
>= 0.0
Wenn der Unterschied zwischen dem DPI Wert des aktuellen Bildschirms und jenem auf dem ein Panel gespeichert wurde innerhalb des hier angegebenen Faktors liegt, so wird das Skalieren eines Panel aufgrund der DPI Unterschiede verhindert. Z.B. bedeutet der Standardwert 0.3 plus oder minus 30% Unterschied.

[ui] scalePanelsPerPhysicalDPI

Typ
bool
Default
0
Wertebereich
0|1
Durch Setzen dieses Eintrags auf 1 wird ein Panel automatisch skaliert, falls der aktuelle Bildschirm einen anderen physikalischen DPI Wert hat, als jener, auf dem das Panel erzeugt wurde.

[ui] scriptEditorIgnoreLibs

Typ
string list
Default
"~*" "*~" ".*" "*.bak"
Definiert eine Liste von Filtermustern (analog zu scriptEditorParseLibs) welche zutreffen müssen, damit eine script Datei explizit nicht geparsed wird.

[ui] scriptEditorParseLibs

Typ
string list
Default
*
Definiert eine Liste von Filtermustern, welche auf alle relativen Pfade unter scripts/libs/ angewendet werden, um festzustellen, ob eine passende CTRL Library geparsed werden soll, um im Script Editor davon die Funktionen etc. zu erkennen. Beispiel: scriptEditorParseLibs = "*.ctl" "*.myOldLib" Dieser config Eintrag kann beliebig oft verwendet werden. Alle Einträge werden in einer Liste gesammelt. Geprüft wird nach dem Schema der CTRL Funktion patternMatch(), wobei die zu prüfenden Pfade immer relativ zum scripts/libs/ Verzeichnis sind (z.B. "aes.ctl" oder "classes/test.ctl") und als Pfad-Trennzeichen immer die Unix "/" Trennzeichen verwendet werden.

[ui] sendModuleFocusDp

Typ
bool
Default
0
Wertebereich
0|1
Durch das Setzen dieses Config-Eintrages auf 1, wird das Senden der Daten an die Datenpunktelemente _UI_<num>.ModuleFocus.Name und _UI_<num>.ModuleFocus.Geometry aktiviert (siehe auch Kapitel _UI)und diese werden aktualisiert sobald sich das Modul, welches den Fokus erhält, ändert. Wenn der Config-Eintrag nicht gesetzt wird bzw. = 0 ist, werden die Daten auf den Datenpunktelementen nicht aktualisiert.

[ui] showActiveShapes

Typ
bool
Default
1
Wertebereich
0|1
Wenn aktiviert (1) wird der Mauscursor seine Form verändern, wenn er über ein Objekt bewegt wird, welches ein Script auf Klick ausführen kann.

[ui] showInputFocus

Typ
bool
Default
0
Wertebereich
0|1
Falls aktiviert (=1), kann man im Panel mittels der Tabulatortaste, oder anderen festgelegten Tasten (Siehe Config-Eintrag "arrowsAsTab), zum nächsten aktivierbaren Objekt springen. Aktivierbare Objekte sind komplexe und primitive Grafikobjekte, welche ein Clicked-Event haben und den Focus erlauben. Das Objekt, welches momentan den Eingabefokus hat, ist durch einen Rahmen gekennzeichnet. Die Farbe und die Linienart des Rahmens können mithilfe der Config-Einträge "focusColor" und "focusLineType" definiert werden. Nur für Modul VISION. Achtung: Bei aktiviertem showInputFocus wird für Textfelder beim Betätigen der "Enter"-Taste sowohl das "Clicked"- als auch das "Command"-Event ausgeführt.

[ui] showMaximizeButton

Typ
bool
Default
0
Wertebereich
0|1
Wenn der Config-Eintrag auf 1 gesetzt ist, wird im Gedi, in der Titelleiste der geöffneten Panels ein Button zum Maximieren des Panels angezeigt. Ein Klick auf diesen Button bewirkt, dass das Panel im Gedi maximiert dargestellt wird und den ganzen Platz im Gedi ausfüllt. Dadurch können Bereiche im Panel editiert werden, die normalerweise nicht sichtbar sind. Ist ein Panel maximiert, dann ist immer nur der Bereich des Panels sichtbar, der aufgrund der Größe des Gedi Fensters möglich ist. Es stehen keine Scrollbars zur Verfügung im Falle, dass ein Panel im nicht maximierten Zustand größer wäre, als es im maximierten Zustand angezeigt werden kann. Beim Speichern eines maximierten Panels wird jedoch die Größe verwendet, die das Panel im nicht maximierten Zustand hat. Wenn der Config-Eintrag auf 0 gesetzt ist, wird dieser Button nicht angezeigt.

[ui] silentPrintWithBorder

Typ
bool
Default
1
Wertebereich
0|1
Definiert ob das Panel mit oder ohne Rahmen ausgedruckt wird. 0 = Panel wird ohne Rahmen gedruckt 1 = Panel wird mit Rahmen gedruckt

[ui] soundClick

Typ
string
Wertebereich
*.wav
Definiert eine Sounddatei, welche bei einem einfachen Mausklick bzw. beim Ausführen einer Aktion abgespielt wird. Die Wav-Dateien werden in den Projektverzeichnissen data/sounds und data/ gesucht (siehe enableSound()).

[ui] soundDblClick

Typ
string
Wertebereich
*.wav
Definiert eine Sounddatei, welche beim Ausführen eines Doppelklick-Scriptes abgespielt wird. Die Wav-Dateien werden in den Projektverzeichnissen data/sounds und data/ gesucht (siehe enableSound()).

[ui] soundRightClick

Typ
string
Definiert eine Sounddatei, welche beim Ausführen eines Rechtsklick-Scriptes abgespielt wird. Die Wav-Dateien werden in den Projektverzeichnissen data/sounds und data/ gesucht (siehe enableSound()).

[ui] startCloseScriptsOnQuit

Typ
bool
Default
1
Wertebereich
0|1
Wird dieser Eintrag auf 0 gesetzt, so wird beim Beenden des UI-Managers kein Close Script der noch offenen Panels mehr ausgeführt. Damit wird verhindert, dass ein Panel nicht geschlossen werden kann, weil z.B. die Verbindung zum Event-Manager bereits geschlossen wurde, jedoch das Close Script das Panel mit einem PanelOff() (dpSet von internen DPEs) schließen will. Kann ein Panel nicht geschlossen werden, kann auch der UI-Manager nicht terminieren.

[ui] strictAddressing

Typ
bool
Default
0
Wertebereich
0|1
Definiert ob das Adressieren von Objekten in Panels im "strict mode" (1) erfolgt oder im bisherigen "legacy mode" (0). Hinweis: Nach Setzten dieses Eintrags können ältere Panels, die auf das Verhalten im legacy mode angewiesen sind, gegebenenfalls nicht mehr funtionieren.

[ui] subprojectsWritable

Typ
bool
Default
1
Wertebereich
0|1
Der Wert 1 definieirt, daß Panels, Scripte oder Message Kataloge, die aus einem Subprojekt geladen wurden, auch wieder in das originale Subprojekt geschrieben werden dürfen. Der Wert 0 definiert Subprojekte als nicht schreibbar und daher können die Dateien nur in das eigentliche Projekt geschrieben werden.

[ui] touchDetectionDistance

Typ
int
Default
8
Wertebereich
>0
Diese Distanz in Millimeter definiert wieweit sich ein Finger am Bildschirm innerhalb von touchDetectionTimeout zumindest bewegen muss, um zu entscheiden, ob eine Mehrfinger Geste gestartet wurde.

[ui] touchDetectionTimeout

Typ
int
Default
200
Wertebereich
>=0
Dieses Timeout in Millisekunden definiert wie lange das UI vom Start einer Touch-Sequenz an auf weitere Touch-Events wartet, um zu entscheiden, ob eine Mehrfinger Geste gestartet wurde.

[ui] trendEnableCurveRulers

Typ
bool
Default
0
Wertebereich
0|1
Definiert, ob im Trendobjekt Kurvenliniale gesetzt werden können

[ui] trendEnableToolTips

Typ
bool
Default
1
Wertebereich
0|1
Definiert, ob im Trendobjekt Tooltips angezeigt werden dürfen.

[ui] trendGetDataTimeout

Typ
int
Default
500
Wertebereich
>=0
Definieirt eine Zeit (in Millisekunden) die nach Veränderung des dargestellten Zeitbereichs in einem Trend abgewartet wird, bevor die Daten aus der Datenbank abgefragt werden.

[ui] trendHorizontalScaleText

Typ
bool
Default
0
Wertebereich
0|1
Definiert die Ausrichtung der Beschriftungstexte der Werteskalen, welche links oder rechts vom Trendbereich positioniert sind (Default 0 = vertikal). Skalen die oben oder unten angeordnet sind, haben immer eine horizontale Beschriftung. Diese Einstellung wirkt sich nicht auf die Zeitskala aus.

[ui] trendInvalidColor

Typ
string (color)
Default
magenta
Definiert die Farbe für eine Trend-Kurve, wenn das Invalid-Bit für das angezeigte Datenpunkt gesetzt ist. Dieser Eintrag wird auch in der standard _invalid Regel eingetragen (siehe trendStatusPattern).

[ui] trendInvalidFillType

Typ
string (fillType)
Default
[hatch,[cross,10,left]]
Definiert das Füllmuster für eine Trend-Kurve, wenn das Invalid-Bit für das angezeigte Datenpunktelement gesetzt ist. Dieser Eintrag wird auch in der standard _invalid Regel eingetragen (siehe trendStatusPattern).

[ui] trendInvalidLineType

Typ
string (lineType)
Default
[dotted,oneColor,JointMiter,CapButt,0]
Definiert die Linienart für eine Trend-Kurve, wenn das Invalid-Bit für das angezeigte Datenpunktelement gesetzt ist. Dieser Eintrag wird auch in der standard _invalid Regel eingetragen (siehe trendStatusPattern).

[ui] trendLegendStyle

Typ
int
Default
1
Wertebereich
0|1
Definiert den Stil der Trend-Legende. 0 = Zeige Kurvenstück und Kurvenname 1 = Zeige kein Kurvenstück; zeige Kurvenname in Kurvenfarbe und Kurvenwert

[ui] trendPseudoLineFillLikeCurve

Typ
bool
Default
0
Defaultmäßig wird die Pseudo-Linie vom letzten bekannten Wert eines Datenpunktelements bis zum ersten neuen Wert als Linie gezeichnet, aber keine Füllung dargestellt, auch wenn die Kurve selbst eine Füllung verwendet. Mit dem Eintrag trendPseudoLineFillLikeCurve = 1 wird die Füllart von der Trend-Kurve übernommen.

[ui] trendPseudoLineStyleLikeCurve

Typ
bool
Default
0
Definiert die Linienart der Trend-Pseudo-Linie. Mit dem Eintrag trendPseudoLineStyleLikeCurve = 1 wird die Linienart von der Trend-Kurve übernommen. Defaultmäßig wird die Pseudo-Linie vom letzten bekannten Wert eines Datenpunktelements bis zum ersten neuen Wert in der Linienart "Strich-Punkt-Punkt" mit Breite 1 Pixel gezeichnet.

[ui] trendRulerColor

Typ
string (color)
Default
{0,0,0}
Definiert die Farbe für das Trend Lineal. Es sind keine Farbnamen erlaubt, sondern nur die Angabe eines {R,G,B} Wertes.

[ui] trendRulerLineType

Typ
string (lineType)
Default
[solid,oneColor,JointMiter,CapButt,0]
Definiert die Linienart für das Trend Lineal.

[ui] trendStatusPattern

Typ
string (pattern) string (color) string (lineType) string (fillType) [string (msgCatKey) [string (icon)]]
Default
"_invalid" "magenta" "[dotted,oneColor,JointMiter,CapButt,0]" "[hatch,[cross,10,left]]"
Definiert eine Liste von Mustern (beliebig oft definierbarer Config-Eintrag). Die Liste wird zur Laufzeit vom ersten bis zum letzten gegen den aktuellen Status eines Wertes im Trend geprüft. Sobald ein übereinstimmender Eintrag gefunden wird, werden die Werte aus dem Config-Eintrag auf die Trendkurve angewandt. Falls keine eigene Regel definiert wurde, wird in einer Standardregel mit dem _invalid Status geprüft. Die Eigenschaften dieser Standardregel werden mit den Config-Einträgen "trendInvalid(Color/LineType/FillType)" angepasst. Die Einträge der Eigenschaften eines Musters können leer bleiben (Leerstring) - damit wird die Default-Eigenschaft weiterverwendet. Der Wert 'pattern' definiert eine Regel für den Status. Es können alle WinCC OA Status-Attribute angegeben werden. Folgende Syntax ist anzuwenden um eine Übereinstimmung zu erhalten: 'attribut[=0|1][,...]' Das bedeutet, dass beliebig viele Attributwerte angegeben werden können, wobei immer alle Definitionen zutreffend sein müssen, damit eine Regel als übereinstimmend erkannt wird. Beispiel: _invalid ... Der Status _invalid muss wahr sein. _invalid=1 ... Der Status _invalid muss wahr sein. _invalid=0 ... Der Status _invalid muß falsch sein _invalid=0, _userbit1=1 ... Der Status _invalid muss falsch sein und der Status _userbit1 muss wahr sein. _userbit1=0, _userbit2=1 ... Der Status _userbit1 muss falsch sein und der Status _userbit2 muss wahr sein. Die Trend-Funktion zeichnet standardmäßig ungültige Werte einer Kurve gepunktet und violett. Diese Darstellung kann mit dem Setzen des folgenden Config-Eintrages deaktiviert werden: trendStatusPattern = "_invalid=1,_invalid=0" "" "" "" Der Wert für 'msgCatKey' definiert einen Schlüssel für den Nachrichtenkatalog "quality.cat", der manuell im Projekt angelegt werden kann. Dieser beinhaltet dann für die hier verwendeten Schlüssel jeweils einen kurzen Text, welcher im Trend Lineal-Wertefenster angezeigt wird, wenn der Status eines Kurvenwertes zum markierten Zeitpunkt diesem 'pattern' entspricht. Der Wert für 'icon' ist ein Pfad zu einer Bilddatei relativ zum pictures Verzeichnis, welches dann als Marker an der Stelle des Wertes in der Kurve angezeigt wird, wenn dieses Muster passt. Hinweis: Bitte beachten Sie, dass ein lineType unbedingt angegeben werden muss, anderenfalls kann der Config Eintrag nicht korrekt interpretiert werden.

[ui] useElemNameForReadRequest

Typ
int
Default
1
Wertebereich
0|1
Wenn bei einer DB-Abfrage eine DP Identification nicht vorhanden ist wird bei einem Wert von 1 nicht mehr abgebrochen, sondern der ElementName für die weitere Suche verwendet. Bei einem Wert von 0 wird bei fehlender DP Identification abgebrochen. Für weitere Informationen siehe useElemNameForReadRequest

[ui] useExtendedAlarmHandling

Typ
bool
Default
0
Wertebereich
0|1
Ermöglicht die erweiterte Parametrierung von kontinuierlichen Meldebehandlungen. Siehe Kapitel Erweiterte Meldebehandlung kontinuierlicher Werte.

[ui] useISOTimeformat

Typ
bool
Default
1
Wertebereich
0|1
Der Config-Eintrag useISOTimeformat kann für verschiedene Panels der Benutzeroberfläche verwendet werden, wie zum Beispiel für AlertScreen. Er gibt an, ob das ISO-Zeitformat (useISOTimeformat= 1) bei der Erstellung von dpQueries verwendet werden soll. Dieser Config-Eintrag wurde eingeführt, um die Abwärtskompatibilität mit älteren Systemen in verteilten Umgebungen zu erhalten.

[ui] useLocalIdentification

Typ
bool
Default
0
Wertebereich
0|1
Gibt an, ob ein Manager die Identification (TypContainer und DpIdentification) von einer lokalen Datei lesen oder vom Data-Manager beziehen soll. Beim Beenden wird die Id in den Dateien proj_path/data/DpMsgTypeContainer.bin und proj_path/data/DpMsgIdentification.bin abgelegt. Gibt es trotz dieses Eintrages die Dateien nicht, startet der Manager normal und bezieht diese vom Data-Manager. Der Eintrag kann in allen Sektionen der Config-Datei gesetzt werden.

[ui] userDefinedCatalog

Typ
string
Default
catalog path
Erlaubt es benutzerdefinierte Symbolkataloge anzulegen. Hierbei muss der Pfad des Katalogordners angegeben werden (relativ zum /panel Verzeichnis). Alle Panels welche innerhalb dieses Ordners abgelegt sind werden innerhalb des GEDIs in einem eigenen Katalog angezeigt. Bitte beachten Sie, dass keine Panels eines Subverzeichnisses beachten werden! Diese müssen als eigener Katalog angelegt werden.

[ui] usesTouchScreen

Typ
bool
Default
0
Wertebereich
0|1
Wenn dieser Eintrag auf 1 gesetzt wird, wird das UI auf "Touch Screen" Eingabemodus gestellt, d.h. dass im Allgemeinen auf Mausklicks nicht mehr reagiert wird, sondern nur noch auf Touch-Events. (Maus-Events und Touch-Events sind separate Eingabe Events und die Verarbeitung beider wiederspricht sich zum Teil bezüglich der Art und Weise der Bedienung, daher wird mit diesem Eintrag entweder Touch oder Mausverarbeitung aktiviert)

[ui] useStylesheets

Typ
bool
Default
1
Wertebereich
0|1
Definiert ob Stylesheet Dateien geladen werden sollen für das UI.

[ui] versionControl

Typ
string
Wertebereich
>VCS name<
Dieser Eintrag wird verwendet um zu überprüfen ob ein VCS (version control system) aktiviert werden soll. Für jedes VCS kann ein eigenes Script erstellt werden, das den gleichen Namen wie im Config-Eintrag haben muss. Im Lieferumfang von WinCC OA sind die Scripte für CVS, SVN und Git enthalten. Z.B.: "CVS.ctl" --> Config-Eintrag: versionControl = "CVS"

[ui] versionControlDiff

Typ
string
Wertebereich
>path</>Diff tool name<
Dieser Eintrag wird verwendet um, im Zusammenhang mit einem VCS, ein Programm zum Vergleich von Dateien anzugeben. Z.B.: Verwendung des "TortoiseUDiff" Programms --> versionControlDiff = ">TortoiseSVN Pfad</bin/TortoiseUDiff.exe"

[ui] visionResizeMode

Typ
string
Default
Scale
Wertebereich
Zoom, Scale, None, FitSmallPanel, FitToModule
"Scale" - Modul kann frei skaliert werden. Das Panel skaliert mit und die kürzere Modul-Seite bekommt einen Scrollbalken. "Zoom" - Modul kann frei skaliert werden. Das Panel ändert die Größe nicht, sondern kann nur mit den Zoom Funktionen geändert werden (über die CONTROL-Funktion ZoomModule(), über die Optionen wie Vergrößern und Verkleinern der Symbolleiste im Modul VISION oder über den Zoom-Navigator). "None" - Modul wird an die Panelgröße angepasst und kann nicht skaliert werden. "FitSmallPanel" - Das Modul wird in der Größe nicht angepasst. Das Panel wird in der Originalgröße im Modul geöffnet. Es entstehen Scrollbalken. Die Panelgröße wird nicht geändert, wenn die Modulgröße manuell angepasst wird. "FitToModule" - Modul kann frei skaliert werden. Das Panel skaliert mit und zwar so, daß niemals Scrollbalken sichtbar werden, d.h. es ist immer das gesamte Panel sichtbar.

[ui] visionScreenMode

Typ
string
Default
all
Wertebereich
noTitleBar, noMenu, all
Definiert, ob eine Panel in VISION mit oder ohne Titelleiste (Vollbildmodus) angezeigt wird. Dazu gibt es drei verschiedene Möglichkeiten: "noTitleBar" ... Titelleiste wird nicht angezeigt (Vollbildmodus) "noMenu" ... Titelleiste wird angezeigt, aber ohne Minimieren-, Maximieren- und Schließen-Schaltfläche "all" ... Titelleiste wird mit den Standard-Schaltflächen angezeigt

[ui] vtMixComprAndCurrentValues

Typ
bool
Default
1
Wertebereich
0|1
Bestimmt, ob im variablen Trend die Kurven nur verdichtete Werte anzeigen oder mit aktuellen Werten gemischt werden. 1 = Default. Die Kurve stellt gemischte Werte dar. Nach dem letzten verdichteten Wert (diese werden nur zyklisch im z.B. Minutentakt, Stundentakt, etc. dargestellt) werden die Aktuellwerte wieder gezeichnet. 0 = Die Kurve stellt ausschließlich verdichtete Werte dar. Zwischen den Zyklen wird nichts gezeichnet (kein Aktuellwert).

[ui] wmfWinPainter

Typ
bool
Default
1
Wertebereich
0|1
Nur unter Windows. Wird der Wert auf 0 gesetzt, so wird für das Zeichnen von WMF Bildern die WinCC OA eigene Implementation verwendet, ansonsten werden die nativen Windows Funktionen verwendet. Der Vorteil der Windows nativen Funktionen ist die 100% korrekte Darstellung aller WMF und EMF Bilder. Der Vorteil der WinCC OA eigenen Implementation ist die hohe Geschwindigkeit beim Zeichnen und der geringere Speicherverbrauch. Allerdings unterstützt diese Methode nicht alle WMF Zeichenoperationen bzw. werden nicht alle völlig korrekt dargestellt. Weiters ist EMF nur sehr rudimentär implementiert. Hinweis: SVG als offiziell standardisiertes Vektorformat ist den proprietären Microsoft Formaten WMF/EMF/EMF+ vorzuziehen.

[ui] xpmTransparentColor

Typ
string
Default
_3DFace
Wertebereich
color string
Jedes Bitmap, welches die Farbe des Config-Eintrags enthält, soll als transparent dargestellt werden. Der Eintrag ist ein Farb-String. ACHTUNG: Für echte Transparenz sollte ein Bildformat verwendet werden, das Transparenz unterstützt, z.B. PNG oder GIF

[ulcUX]

Einstellungen für den ULC UX Client.

[ulcUX] autoReconnectOnShutdown

Typ
int
Default
0
Wertebereich
0|1
Ein geplantes Niederfahren des Projekts oder HTTP-Servers wird als normales Szenario angesehen. Der HTTP-Server wird ordnungsgemäß beendet und benachrichtigt ULC UX Clients über das Herunerfahren. Folglich zeiten ULC UX Clients eine "disconnected"-Message und verbinden sich nicht automatich auf einen anderen HTTP-Server. Aus Sicherheitsgründen wird in solchen Fällen die Browsersitzung beendet. Um dieses Verhalten zu verändern muss dieser Konfigurationseintrag auf 1 gesetzt werden. Im Fall eines normalen Szenarios (z. B. geplantes Niederfahren des HTTP-Servers) wir der ULC UX Client eine Wiederverbindung zu einem anderen HTTP-Server herstellung und die Sitzung nicht beenden. Im Fall eines unerwartetn HTTP-Server Crash oder einer Netzwerk-Unterbrechung werden ULC UX Clients als Standardverhalten immer automatisch auf den nächsten Verfügbaren HTTP-Server verbinden. Derauf hat dieser Konfigurationseintrag keinen Einfluss.

[ulcUX] dashboardUiArguments

Typ
string
Default
-p vision/login.pnl -centered -iconBar -menuBar
Definiert die Start-Parameter für einen ULC UX Client, die anstelle von [httpServer]uiParameters verwendet werden, wenn der ULC UX Client in einem Dashboard Widget gestartet wird.

[ulcUX] reconnectCount

Typ
int
Default
2
Wertebereich
>= -1
Definiert die Anzahl der (Wieder-)Verbindungsversuche eines ULC UX Clients. Um die Anzahl der (Wieder-)Verbindungsversuche nicht einzuschränken kann -1 angegeben werden.

[valarch]

Einstellungen für das Value Archive

[valarch] deleteNotArchivedFileSets

Typ
bool
Default
1
Wertebereich
0|1
Gibt an, ob noch nicht gesicherte Archivsätze gelöscht werden dürfen. 0 = Archivsätze werden nicht gelöscht, falls sie noch nicht gesichert wurden. 1 = Archivsätze werden auch dann gelöscht, wenn sie noch nicht gesichert wurden.

[valarch] dispatchTimeout

Typ
int
Default
20
Wertebereich
Milliseconds
Mit dem Config-Eintrag wird das dispatch Timeout in Millisekunden eingegeben. Je kleiner das dispatchTimeout ist, desto mehr CPU-Resourcen werden verbraucht. Dies erhöht auch die Schreibleistung, d.h. dass mehr Messages bewältigt werden können. Je größer das dispatchTimeout ist, desto weniger Ressourcen werden verbraucht. Sinnvollerweise verwenden Sie den Eintrag für Single- oder DuoCore-Maschinen. Verwenden Sie kleine Intervalle nur für Multi-Core-Prozessoren. Für Single Core-Maschinen kann das Timeout auf z.B.500 Millisekunden erhöht werden.

[valarch] exclusiveReadThreadsForDM

Typ
int
Default
1
Wertebereich
0..3
Gibt an, wie viele Read-Threads ausschließlich Anfragen des Data-Managers behandeln. Beachten Sie, dass die Summe der Parameter exclusiveReadThreadsForDM und readThreadsPreferringOleDb nicht größer als 3 sein darf. Wenn die Gesamtanzahl der Read-Threads größer als 3 ist, wird eine Warnung ausgegeben, aber trotzdem gestartet.

[valarch] maxMemMappings

Typ
short
Default
30
Wertebereich
15 .. 99 (wird nicht abgeprüft)
Mit diesem Config-Eintrag kann der Verbrauch an virtuellem Speicher eingeschränkt werden. Je kleiner der Wert, umso stärker sinkt aber auch der Datendurchsatz. Standardmäßig ist 15 MB eingestellt. Bei großen Projekten und ausreichendem virtuellen (und realen) Speicher kann hier ein Wert bis 50 MB (evtl. auch höher) eingestellt werden. Beachten Sie jedoch, dass ein ValueArchive den Speicher auch für andere Zwecke als MemMappings benötigt (vor allem Puffer). Zudem sind die MemMappings nicht fest an diese Einstellung gebunden und im Problemfall können mehrere Mappings geöffnet sein. Daher kann der Speicherverbrauch höher sein, obwohl der durch diesen Eintrag auf eine bestimmte Größe beschränkt wurde.

[valarch] maxNumberOfFilesToBackup

Typ
unsigned
Default
5
Wertebereich
3..25
Gibt an, wie viele Archivsätze auf einmal gesichert werden. Verwenden Sie den Eintrag um eine zu hohe CPU-Belastung zu vermeiden, wenn die Sicherung (Backup) für eine längere Zeit deaktiviert wurde oder neu konfiguriert wurde.

[valarch] maxNumberOfFilesToCompress

Typ
short
Default
5
Wertebereich
3 .. 25
Der Eintrag maxNumberOfFilesToCompress legt fest wie viele Dateien maximal pro Archiv in einem Durchgang komprimiert werden dürfen. Sinnvoll vor allem beim erstmaligen Einsatz der Komprimierung in bestehenden Projekten, da hier eine unbestimmte Anzahl von Archivsätzen vorhanden ist.

[valarch] maxNumberOfFilesToDelete

Typ
short
Default
5
Wertebereich
3 .. 25
Gibt an wie viele Archivsätze auf einmal gelöscht werden. Verwenden Sie den Eintrag um eine zu hohe CPU-Belastung zu vermeiden.

[valarch] maxNumberOfOpenFileSets

Typ
uint
Default
100
Wertebereich
10..500
Maximale Anzahl der Archivsätze, die gleichzeitig offen gehalten werden. Bei Überschreitung dieser Grenze wird der offene Archivsatz mit der niedrigsten Satznummer geschlossen (hat nur Performance-Auswirkungen, da bei Bedarf der Satz wieder geöffnet wird).

[valarch] maxNumberOfOpenFileSetsTolerance

Typ
uint
Default
10
Wertebereich
0 .. 500
Erst wenn mehr Archivsätze als maxNumberOfOpenFileSets + maxNumberOfOpenFileSetsTolerance offen sind, wird versucht auf maxNumberOfOpenFileSets zu reduzieren. Wenn die maxNumberOfOpenFileSets = 100 und maxNumberOfOpenFileSetsTolerance = 10 ist, wird versucht auf maxNumberOfOpenFileSets (100) zu reduzieren, wenn die Anzahl von offenen Archivsätzen 110 entspricht.

[valarch] maxNumberOfReadThreads

Typ
int
Default
3
Wertebereich
1..99
Anzahl von Threads, die das Value Archive startet, um zeitgleiche Leseoperationen durchzuführen. Bis zu maxNumberOfReadThreads Leseanforderungen können parallel beantwortet werden.

[valarch] maxReadQueueSize

Typ
uint
Default
128
Der Eintrag erlaubt es die Größe der Read-Queue festzulegen. Die Größe wird in MB angegeben. Beim Auftreten folgender Fehlermeldung innerhalb des Logs ist es erforderlich die Queue-Größe zu erhöhen: WCCOAvalarch (<num>), <TIMESTAMP>, SYS, SEVERE, 0, , ManagerIF, Can't insert request to queue

[valarch] maxWaitForWrites

Typ
int
Default
0
Wertebereich
0
Wenn Lese-Operationen für aktuelle Werte durchgeführt wurden, d.h. wenn Werte aus der WinCC OA History-Datenbank gelesen wurden, konnte die Operation etwas länger dauern da gleichzeitige Lese-Operationen mit der Write-Operation synchronisiert wurden. D.h. die Lese-Operation wurde verzögert bis alle aktuelle Werte geschrieben wurden. Um die Synchronization zu deaktivieren, setzen Sie den Config-Eintrag maxWaitForWrites in der valarch-Sektion auf 0.

[valarch] mergeTimeList

Typ
bool
Default
0
Wertebereich
0|1
Mit dem Config-Eintrag "mergeTimeList = 1" (Default = 0, d.h. Verhalten wie bisher) werden alle Archivierungsperioden eines DPEs zu einer zusammengefasst. D.h. das DPE gilt dann seit seiner ersten Archivierung bis zum Ende der letzten Archivierung (oder bis 2038, wenn es derzeitig archiviert wird) als im Archiv vorhanden (History DB).

[valarch] queryMaxValues

Typ
ulong
Default
100000
Wertebereich
>=0
Maximale Anzahl von Rückgabewerten bei einer Einzelabfrage. 0 bedeutet keine Einschränkung.

[valarch] queryTimeout

Typ
unsigned
Default
0
Wertebereich
>=0
Maximale Antwortzeit für eine einzelne Abfrage. 0 bedeutet keine Einschränkung. Die Zeit wird in Sekunden angegeben.

[valarch] readThreadsPreferringOleDb

Typ
int
Default
1
Wertebereich
0..3
Gibt an, wie viele Read-Threads die Anfragen des OLE DB-Providers bervorzugt behandeln (bei gleichzeitiger Anfrage von DM und OLE DB-Provider). Beachten Sie, dass die Summe der Parameter exclusiveReadThreadsForDM und readThreadsPreferringOleDb nicht größer als 3 sein darf. Wenn die Gesamtanzahl der Read-Threads größer als 3 ist, wird eine Warnung ausgegeben, aber trotzdem gestartet.

[valarch] refuseCNS

Typ
bool
Default
1
Wertebereich
0|1
Gibt an, ob ein Manager CNS-Daten der Identification im Speicher halten soll. CNS-Daten werden zwar weiterhin mit der Identification zum Manager übertragen, der Manager verwirft sie allerdings beim Empfang.

[valarch] timeoutForBackup

Typ
int
Default
0
Wertebereich
>=0
Maximaler Timeout für die Auslagerung (Backup) in Sekunden. Nach dieser Zeit wird die Auslagerung abgebrochen. 0 = kein Timeout.

[valarch] useHeaderSize

Typ
string
Wertebereich
Windows|Linux
Mit dem Config-Eintrag useHeaderSize = "Windows"|"Linux" definieren Sie wie das Value Archive die Datensätze liest/schreibt. Dadurch wird eine bessere Kompatibilität erreicht. Wenn Sie Archivsätze, die unter Linux erstellt wurden, unter Windows lesen wollen, setzen Sie den Config-Eintrag auf einem Windows-Rechner auf "Linux". Beachten Sie, dass die Archive nicht geändert werden, sondern die Art die Archive zu lesen und zu schreiben. Beachten Sie zudem, dass keine "gemischten" Archive verwendet werden können. Alle Archive müssen dem jeweils angegebenen Betriebssystem-Format entsprechen.

[ValueArchiveRDB]

Einstellungen für die RDB Archivierung

[ValueArchiveRDB] alertUpdateDelay

Typ
Int
Default
300
Wertebereich
0-600. Should not be higher than 300.
Wenn Alarme, bei denen der Voralarm in einem bereits ausgelagerten Archivsatz vorhanden ist, auftreten, versucht die Datenbank fünf Minuten lang den alten Alarm zu "erreichen". Dabei werden andere Alarme möglicherweise zurückgehalten und nicht in die Datenbank geschrieben. Um das zu verhindern und um die Zeit auf z.B. 30 Sekunden zu reduzieren, verwenden Sie [ValueArchiveRDB] "alertUpdateDelay = 30".

[ValueArchiveRDB] APMDbDb

Typ
string
APM Datenbank-Instanz.

[ValueArchiveRDB] APMDbType

Typ
string
Wertebereich
ORACLE, Access, SQL
APM Datenbanktyp. Zurzeit ist nur "ORACLE" implementiert.

[ValueArchiveRDB] APMDbUser

Typ
string
Default
0
Wertebereich
0|1
Definiert den APM Datenbankbenutzer. APM und die APM-Einträge werden verwendet um aus einer zweiten RDB Daten in ein WinCC OA-Projekt abzufragen. Bei der Abfrage wird der Datenpunkt-Name und nicht die ID verwendet. Für die APM Abfrage-Funktionen siehe Kapitel Direkte Lesefunktionen.

[ValueArchiveRDB] bufferToDisk

Typ
int
Default
1
Wertebereich
0-2
Auswahl des Speichermodus, mit welchem die Datenblöcke gepuffert werden, bevor sie in die Datenbank geschrieben werden. bufferToDisk = 0 Ohne BufferToDisk: Im Falle eines Ausfalls der Verbindung zur RDB, werden Blöcke im Hauptspeicher gepuffert und dann in die DB geschrieben. Hinweis: Daten gehen verloren, wenn der Speicherplatz überschritten wird! bufferToDisk = 1 BufferToDiskMin (Default) bufferToDisk = 2 BufferToDiskMax

[ValueArchiveRDB] bufferToDiskDir

Typ
string
Default
<project_path>\db\buffer
Absoluter Pfad zum Verzeichnis, in welchem die Daten bei bufferToDisk = 1|2 auf der Festplatte gepuffert werden. Bei Verwendung des Default-Speicherortes, wird das Verzeichnis buffer automatisch angelegt. Bei Verwendung eines individuellen Speicherortes ist der absolute Pfad einzugeben, z.B.: "D:\BufferToDisk\Files"

[ValueArchiveRDB] Db

Typ
string
Name der Datenbank, die mittels Kommando "tnsping" vom Client-Rechner aus gefunden werden kann - wie bei der vorausgegangenen Konfiguration unter Connect Identifier angegeben, z.B. "ORAWERK1".

[ValueArchiveRDB] DbPass

Typ
string
Datenbankpasswort.

[ValueArchiveRDB] DbType

Typ
string
Default
ORACLE
Wertebereich
ORACLE, Access, SQL
Typ der Datenbank (zurzeit ist nur "ORACLE" implementiert).

[ValueArchiveRDB] DbUser

Typ
string
Name des Datenbankbenutzers.

[ValueArchiveRDB] delayAfterDBRestart

Typ
int
Default
30 sec.
Zeitliche Verzögerung der Initialisierung des RDB nach Datenbankstart in Sekunden. Wenn die Datenbank gestoppt und wieder gestartet wird, kann es vorkommen, dass zwischen RDB und der Datenbank zwar eine gültige Verbindung hergestellt werden kann, jedoch ist die Datenbank zu diesem Zeitpunkt noch nicht vollständig hochgefahren. Mit dem Config-Eintrag "delayAfterDBRestart" wartet RDB die eingestellte Zeit ab, bevor er die Verbindungen initialisiert und somit aktiv die Werte in die Datenbank schreibt. Per Default ist dieser Eintrag auf 30 Sekunden eingestellt. Bei jedem Verbindungsverlust zur Datenbank, und wenn eine Verbindung über die internen Datenpunktelemente "closeDBConnection" und "openDBConnection" geschlossen bzw. geöffnet wird, kommt diese Verzögerung zum Einsatz. Beim Starten des RDB-Managers wird diese Verzögerung jedoch nicht angewendet.

[ValueArchiveRDB] ignoreStatusBits

Typ
int
Wertebereich
Bits 0-63
Für den Eintrag "ignoreStatusBits" können Bitnummern angegeben werden, die im Status ignoriert werden. Mehrere Bitnummern können angegeben werden. Beim Schreiben in die Datenbank werden im RDB diese Bits im Status herausgefiltert. D.h. dass der Status bei diesen Bits immer auf 0 gesetzt wird. Damit hat der numerische Wert im Oracle weniger Stellen und in der Datenbank wird weniger Platz benötigt. Es können die Bits von 0-63 angegeben werden. BEISPIEL: [ValueArchiveRDB] ignoreStatusBits = "20, 21, 30" In diesem Fall werden die Bits 20, 21 und 30 beim Schreiben immer auf 0 gesetzt. Dies gilt nur für Werte, NICHT für Alarme!

[ValueArchiveRDB] initialEntriesInBlock

Typ
int
Default
50
Definiert wie viele Einträge im ersten Block im Puffer nach erneuter Verbindungsaufnahme des RDB-Managers zur Oracle DB sind. Alle weiteren Blöcke im Puffer haben dann die eingestellte Größe aus dem Datenpuffer im RDB Manager Panel.

[ValueArchiveRDB] lostConnectionReportInterval

Typ
float
Default
15 sec
Wertebereich
>= 0
Definiert nach wie vielen Sekunden der Benutzer informiert wird, wenn der RDB-Manager die Verbindung zur Datenbank verliert und versucht diese wieder aufzubauen.

[ValueArchiveRDB] maxRequestLineCount

Typ
int
Default
0
Wertebereich
0-maxInt
Limitiert die Größe der abgefragten Daten (dpGetPeriod, alertGetPeriod, dpQuery) auf maximal "x" Rückgabezeilen (0 = keine Beschränkung). Wird dieses Limit überschritten, wird ein Fehler (und keine Daten) zurückgegeben.

[ValueArchiveRDB] maxRequestThreads

Typ
int
Default
4
Wertebereich
0..4
Anzahl von Threads und auch Verbindungen zu der Datenbank, die der RDB-Manager verwendet um parallele Operationen in der Datenbank durchzuführen (Abfragen). Wenn queryRDBdirect = 1 verwendet wird, wird die Lese-Verbindung für den direkten Datenbankzugriff nicht durch diese Einstellung beeinflusst. (maxRequestThreads kann in diesem Fall auf 0 gesetzt werden).

[ValueArchiveRDB] openConnOnDemand

Typ
bool
Default
0
Wertebereich
0|1
Der Config-Eintrag openConnOnDemand reduziert die Anzahl der RDB-Manager-Connections zu der relationalen Datenbank. Es werden die Read-, Info- und Delete-Connections nur bei Bedarf geöffnet und nach Abschluss der jeweiligen Operation wieder geschlossen. Die Performance ist schlechter als wenn alle Verbindungen die ganze Zeit offen wären (openConnOnDemand=0). Die Anzahl von Lese-Verbindung wird durch diese Einstellung nicht beeinflusst (verwenden Sie stattdessen maxRequestThreads). Der Eintrag openConnOnDemand ist für große verteilte Systeme notwendig, wenn viele RDB-Manager in dieselbe Datenbank schreiben. Andernfalls benötigt Oracle zu viel Speicher, weil zu viele Connections gleichzeitig offen sind.

[ValueArchiveRDB] oracleClientVersion

Typ
int
Default
11
Wertebereich
>= 11.202
Definiert die Oracle Client Version.

[ValueArchiveRDB] queryFunction

Typ
bool
Default
0
Wertebereich
0|1
Mit dem Config-Eintrag queryFunction = 1 wird eine Datenbank-Funktion anstatt einer Abfrage für dpGetPeriod() verwendet. Damit fallen Einschränkungen wie die Anzahl der Tabellen und Länge des SQL-Statements weg. Mit queryFunction = 0 wird wie bisher eine Abfrage verwendet. Der Eintrag kann in der ValueArchiveRDB- und UI-Sektion verwendet werden. Hinweis: Bitte beachten Sie, dass dieser Eintrag nicht für den Einsatz in regulären Projekten vorgesehen ist, sondern nur für spezifische, propritäre Datenbankschemata verwendet werden kann. Ein Einsatz in abweichenden Projekten führt dazu, dass eine korrekte Funktionsweise nicht mehr garantiert werden kann.

[ValueArchiveRDB] queryFunctionGetPeriod

Typ
boolean
Default
0
Wertebereich
0|1
Wenn dieses Schlüsselwort auf 1 gesetzt ist, verwenden nur die Funktionen dpGetPeriod() und alertGetPeriod() die Abfragefunktion im Oracle-Schema (siehe Config-Eintrag "queryFunction"). Dies kann z.B. die Performanz des Trends verbessern. Die Funktion dpQuery() verwendet die Abfragefunktion nicht.

[ValueArchiveRDB] queryOverBounds

Typ
int
Default
1
Wertebereich
0|1
Gibt an, ob die Funktion dpGetPeriod() über die Grenzen des abgefragten Zeitbereichs (Parameter Count der dpGetPeriod-Funktion) abfragen soll oder nicht. Wenn der Count-Parameter der Funktion größer als 0 ist, werden auch Werte außerhalb (das heißt vor und nach) dem abgefragten Zeitbereich abgefragt. Das könnte mitunter eine längere Zeit in Anspruch nehmen. queryOverBounds = 1 bedeutet, dass Werte über die Grenzen abgefragt werden. Dies funktioniert in Verbindung mit queryRDBdirect = 1 nur für RDB-Abfragen auf ein einzelnes Datenpunktelement. Bei queryOverBounds = 0 werden nur Werte im Intervall abgefragt. Das beschleunigt den Prozess.

[ValueArchiveRDB] queryOverId

Typ
bool
Default
1
Wertebereich
0|1
Gibt an, wie die lesenden Datenbankabfragen erfolgen: 0 = Datenpunktnamen oder DPE-Namen; diese Variante bringt zwar Performanceeinbußen, aber dadurch kann man aus einem anderen WinCC OA Projekt auf die Daten in der Oracle DB zugreifen. 1 = IDs (schneller)

[ValueArchiveRDB] queryTimeout

Typ
int
Default
0
Wertebereich
0 - 32767
Bricht Datenbank-Abfragen nach queryTimeout Sekunden ab. 0 bedeutet kein Timeout.

[ValueArchiveRDB] redirectArcGroup

Typ
string
Wertebereich
<AR_FROM> :<AR_TO>
Der Config Eintrag erlaubt es festzulegen, ob eine Archivgruppe auf eine andere Archivgruppe gemappt wird, um so das Anlegen zusätzlicher Archivgruppen zu verhindern und eine bessere Performance zu erzielen. Beispiel redirectArcGroup = VA10 :QPS Die Archivgruppe VA10 wird hierbei auf die Archivgruppe QPS weiter geleitet. redirectArcGroup = VA* :EVENT Die Archivgruppen, welche mit "VA" beginnen werden auf die Archivgruppe Event weiter geleitet.

[ValueArchiveRDB] sendMaxTS

Typ
bool
Default
1
Wertebereich
0|1
sendMaxTS = 1 Der RDB-Manager holt sich den größten Zeitstempel aus der Datenbank und führt mit dem Data-Manager einen Datenabgleich aus. D.h. der Data-Manager sendet dem RDB-Manager alle Wertänderungen, die neuer sind als der Zeitstempel aus der Datenbank. sendMaxTS = 0 Der RDB holt den Zeitstempel nicht aus der Datenbank und es erfolgt kein Datenabgleich. Das verbessert die Hochlaufgeschwindigkeit, aber die letzte Wertänderung bis zum RDB-Start ist nicht in der Oracle-Datenbank. sendMaxTS = 2 Der letzte (zuletzt gespeicherte) Zeitstempel pro System wird in der SYSTEMS-Tabelle gespeichert und mit jedem Block der in die Datenbank geschrieben wird, aktualisiert. Beim Start des RDB-Managers wird der Zeitstempel aus der Tabelle gelesen. Das ist eine schnelle Leseoperation mit der Sie den neuesten Zeitstempel des Systems abfragen können.

[ValueArchiveRDB] SQLPreFetchCount

Typ
int
Default
1000
Wertebereich
>=0
Legt die Anzahl der Zeilen fest welche gebuffert werden durch die Oracle Client Library nachdem ein erfolgreich Aufruf einer Abfrage und für jeden anschließenden Abruf in der Datenbank. Für Abfragen die eine hohe Anzahl an Datenreihen zurückliefern kann die Performance signifikant verbessert werden durch erhöhen des PreFetchCount Wertes.

[ValueArchiveRDB] updateConnCloseDelay

Typ
float
Default
180 (3 minutes)
Wertebereich
0-32767
Für Updates wird eine zusätzliche DB-Verbindung geöffnet. Sie wird nur dann verwendet wenn openConnOnDemand = 1 (siehe oberhalb). Die Update-Connection wird wieder nach updateConnCloseDelay-Sekunden nach ihrer letzten Verwendung geschlossen.

[ValueArchiveRDB] writeTimeout

Typ
int
Default
15 sec
Wertebereich
0-32767
Wenn Sie in der Datenbank eine INSERT- oder UPDATE-Anweisung durchführen, wartet der RDB-Manager writeTimeout-Sekunden für die Durchführung der Anweisung. Die Verbindung zur Datenbank wird wieder hergestellt, wenn das Timeout abläuft.

[ValueArchiveRDB] writeWithBulk

Typ
bool
Default
1
Wertebereich
0|1
1 = Schreibt Daten in das RDB-Archiv über die OCI Oracle Call-Schnittstelle (OCCI). OCI Bulk-Writing ist defaultmäßig aktiviert. Dies verbessert die Performance. 0 = OCI wird nicht verwenden.

[webClient]

Einstellungen für die WinCC OA mobile UI Applikation und das WinCC OA Desktop UI.

[webClient] advancedSecurity

Typ
int
Default
0
Wertebereich
0-2
Der gehärtete Webserver (web server hardening) schränkt die Funktionalität des webclient_http.ctl-Skripts ein. Mögliche Werte für diesen Config-Eintrag sind: 0: (default) Webserver wird nicht gehärtet, Zugriffsrechte bleiben unverändert. 1: Kein Zugriff auf Zertifikate. Das bedeutet, dass die Zertifikate beim Verbinden mit dem Projekt über Mobile UI oder Desktop UI manuell verteilt werden müssen. 2: Kein Zugriff auf Zertifikate, Script- und Panel-Dateien. Auch die HTTP-Endpunkte, die z. B. vom Dashboard oder PM-Agent verwendet werden, stehen nicht zur Verfügung. Diese Einstellung kann für ULC UX und Remote-UIs verwendet werden, während Desktop UI, Mobile UI und das Dashboard nicht unterstützt werden.

[webClient] clientProjExt

Typ
uint
Default
0
Wertebereich
0-2
Definiert den Namen des Cache Verzeichnisses für das Desktop/Mobile UI: 0 - projectName (default) 1 - projectName_ServerName 2 - projectName_reduServerName1_reduServerName2

[webClient] clientSideAuth

Typ
bool
Default
1
Wertebereich
0|1
Mittels "clientSideAuth" = 1 Config-Eintrag wird die Authentifizierung auf der Clientseite verwendet. Der Config-Eintrag "clientSideAuth" = 0 aktiviert die serverseitige Authentifzierung. Siehe Grundlagen Serverseitige Authentifizierung

[webClient] httpAuth

Typ
Bool
Default
0
Wertebereich
0|1
Gibt an, ob eine Autorisierung für den http Server verwendet wird oder nicht. Hinweis: Wenn setUserId() aufgerufen wird und httpAuth aktiviert ist (1) loggt sich der ULC UX aus.

[webClient] httpPort

Typ
uint
Default
80(Windows, Linux - root users), 8080(Linux - non root users)
Wertebereich
0-65535
Definiert den HTTP-Port über den die ungesicherte HTTP-Kommunikation zwischen Server und Client erfolgt. Per Default ist der HTTP-Port 80. Dieser benötigt keinen gesonderten Eintrag in der Config-Datei. Unter Linux sind die Ports unter 1024 für Nicht-root-Benutzer nicht vefügbar, weshalb in diesen Fällen der Default-Port 8080 gesetzt wird. Mit Port 0 wird die HTTP-Kommunikation deaktiviert.

[webClient] httpsPort

Typ
uint
Default
443(Windows, Linux - root users), 8079(Linux - non root users)
Wertebereich
0-65535
Definiert den HTTPS-Port, über den die gesicherte HTTPS-Kommunikation zwischen dem Server und dem Client erfolgt. Unter Linux sind die Ports unter 1024 für nicht-root-Benutzer nicht vefügbar, weshalb in diesen Fällen der Default-Port 8079 gesetzt wird. Mit Port 0 wird die HTTPS-Kommunikation deaktiviert.

[webClient] lowestAutoManNumMobileUI

Typ
unsigned
Default
200
Wertebereich
1-255
Der Eintrag "lowestAutoManNumMobileUI" gibt die niedrigste Managernummer für Mobile UI Clients vor.

[webClient] mobileRootPanel

Typ
string
Wertebereich
<relative path>/<panelname>.pnl
Definiert das Startpanel für die mobile Applikation. Wenn der Config Eintrag nicht gesetzt ist wird das login.pnl geöffnet.

[webClient] rootPanel

Typ
string
Wertebereich
<relative path>/<panelname>.pnl
Definiert welches Startpanel vom UI aufgerufen wird. Wenn der Config Eintrag nicht gesetzt ist wird das login.pnl geöffnet.

[wssServer]

Einstellungen für spezialisierte WebSocket-Server (wie sie für z. B. Dashboard oder Node-RED verwendet werden).

[wssServer] canEditPermissionBit

Typ
int
Default
3
Wertebereich
1..32
Definiert das Benutzer-Berechtigungsbit, das ein Dashboard-Benutzer benötigt, um Dashboards zu editieren.

[wssServer] canPublishPermissionBit

Typ
int
Default
4
Wertebereich
1..32
Definiert das Benutzer-Berechtigungsbit, das ein Dashboard-Benutzer benötigt, um Dashboards zu publizieren.

[wssServer] canWritePermissionBit

Typ
int
Default
0
Wertebereich
0..32
Definiert das Benutzer-Berechtigungsbit, das ein Dashboard-Benutzer benötigt, um Schreibzugriff auf Datenpunkte zu bekommen. Wenn der Wert auf 0 gesetzt wird, ist der Schreibzugriff für all Dashboard-Benutzer gesperrt. Das ist auch die Default-Einstellung.

[wssServer] dashboardSharedLicenses

Typ
uint
Default
0
Wertebereich
>=0
Definiert die Anzahl der Dashboard Desktop Lizenzen, die für mobile Clients verwendet werden können, falls keine weiteren Dashboard Mobile Lizenzen mehr frei sind.

[wssServer] diskCheckDp

Typ
string
Default
"_ArchivDisk"
Definiert den Namen des Datenpunkts, mit dem der verfügbare Platz für Dateien, die über den WebSocket-Server hochgeladen werden, abgefragt wird. Muss vom Datenpunkttyp _DiskSpaceCheck sein. Siehe auch DP_DiskCheck im Abschnitt [data].

[wssServer] diskCheckLimit

Typ
int
Definiert den Speicherplatz in kB auf der Server-Disk, der verfügbar sein muss, um Dateien über den WebSocket-Server hochladen zu können. Wenn dieser Wert nicht konfiguriert ist, wird der Grenzwert für die Warnung des Datenpunkts verwendet, der unter diskCheckDp definiert ist.

[wssServer] heartbeatSeconds

Typ
int
Default
5
Gibt an, in welchem Interval (in Sekunden) Heartbeat-Nachrichten vom WSS Server an alle verbundenen Clients schickt. Dadurch können Verbindungsunterbrechungen schneller erkannt werden, auch wenn keine regulären Nachrichten gesendet werden. Wird dieser Wert auf 0 gesetzt, werden keine Heartbeat-Nachrichten gesendet.

[wssServer] httpsPort

Typ
int
Default
8449
Definiert den Port, der vom WebSocket-Server für eingehende WSS-Verbindungen geöffnet wird. Dieser Port muss unterschiedlich zu dem in Abschnitt [httpServer] definierten Port sein.

[wssServer] jwtWssPort

Typ
uint
Default
8449
Wertebereich
>0
Das vom HTTP-Server ausgestellte Token, mit dem sich ein Client am WSS-Server anmelden kann, enthält auch den Port-Nummer, mit dem die WSS-Verbindung aufgebaut werden soll. Per default ist das der Port, mit dem der WSS-Server konfiguriert und gestartet wurde. Mit diesem Eintrag kann eine andere Port-Nummer definiert werden, die im Token eingetragen wird. Das ist z. B. notwendig, wenn der WSS-Server sich hinter einem Gateway oder Proxy befindet und der Server dadurch über eine andere Port-Nummer erreichbar ist.

[wssServer] resourceName

Typ
string
Default
/websocket
Definiert den Pfad (Teil des URLs) zum WebSocket-Server für einkommende Verbindungen.

[wssServer] tokenAutoRefresh

Typ
bool
Default
0
Wertebereich
0|1
Wenn "tokenExpireWarning" auf einen Wert ungleich 0 gesetzt wurde, wird eine Verbindung nach einer Warnung geschlossen, wenn ein Token abläuft und der Client kein erneuertes Token sendet. Im einfachsten Fall kann eine automatische Erneuerung mit diesem Eintrag aktiviert werden: wenn der Client zum Zeitpunkt der Warnung ein noch gültiges Token an den Server schickt, wird es automatisch verlängert. NB: In einer typischen Konfiguration werden detaillierte Überprüfungen implementiert, bevor ein Token verlängert wird.

[wssServer] tokenExpire

Typ
uint
Default
600
Wertebereich
5..28800
Definiert den Zeitraum in Sekunden, in dem ein vom HTTP-Server ausgestelltes Token zur Authentifizierung bei einem WebSocket-Server gültig ist. Defaultwert ist 10 Minuten, möglicher Wertebereich ist von 5 Sekunden bis 8 Stunden.

[wssServer] tokenExpireWarning

Typ
uint
Default
0
Wertebereich
0, 5..600
Der WebSocket-Server kann eine Verbindung automatisch schließen, wenn die Gültigkeitsdauer des Authentifizerungs-Token abläuft. Bevor das passiert, schickt der WebSocket-Server eine Warnung an den Client, um ihm eine Möglichkeit zu geben, das Token zu erneuern. Diese Einstellung definiert, wie viele Sekunden (ungefähr) vor dem Schließen der Verbindung diese Warnung geschickt wird. Ist diese Einstellung auf 0 gesetzt (default), wird die Verbindung nicht automatisch geschlossen, und deshalb auch keine Warnung geschickt. In diesem Fall wird die Gültigkeitsdauer des Tokens nur beim Öffnen einer Verbindung überprüft.

[wssServer] useSharedWorker

Typ
bool
Default
0
Wertebereich
0|1
Gibt an, ob Frontends, die sich mit diesem Server verbinden, einen SharedWorker (1) oder WebWorker (0) verwenden sollen.

[wssServer] wssServerAddress

Typ
string
Dieser Eintrag definiert externe Adressen, unter denen ein (oder mehrere) WSS-Server erreichbar sind (z. B. hinter einem Proxy). Dieser Eintrag kann mehrfach verwendet werden. Die erste angegeben Adresse wird im Authentifizierungs-Token mitgeschickt und sollte dem WSS-Server entsprechen, der auf dem lokalen System läuft. Alle angegeben Adressen werden von Clients verwendet, um bei einem Verbindungsabbruch alternative WSS-Server zu finden. Wenn kein solcher Eintrag existiert, wird die Liste der verfügbaren WSS-Server dynamisch aktualisiert, wobei die lokalen Adressen der WSS-Server verwendet werden.