_OPCServer (OPC Client)
Über den Server Datenpunkt werden die Eigenschaften eines Servers gesetzt und die Statusinformationen des Servers zur Verfügung gestellt. Die Werte werden im OPC Server Panel dargestellt (siehe Panel OPC-Server).
Für jeden Server, der über seinen config- Eintrag gestartet werden soll, muss so ein Datenpunkt vom Typ _OPCServer vor dem Start des OPC Client vorhanden sein. Der Name muss nach folgender Konvention zusammengesetzt werden:
_ + symbolischer Servername
"server1"
Symbolischer Name: server1
Name des internen Datenpunktes vom Typ _OPCServer: _server1
DP Element | Typ | Beschreibung |
---|---|---|
BandWidth | uint | Der Wert dieses Feldes ist abhängig vom Server. Er sollte die Auslastung des Servers in Prozent angeben. Werte über 100% signalisieren, dass zu viele Items mit einer zu hohen Aktualisierungsrate gefordert werden. Server die eine exakte Angabe der Auslastung nicht unterstützen sollten den Wert 0xFFFFFFFF liefern. Dieser Wert kann vom User nicht gesetzt werden. |
BuildNumber | uint | Build number der Server Software. Dieser Wert kann vom User nicht gesetzt werden. |
Connected | bit | Wird vom Treiber gesetzt: (TRUE), wenn eine Verbindung zum entsprechenden Server besteht. Wird rückgesetzt (FALSE), wenn die Verbindung unterbrochen wird. Dieser Wert kann vom User nicht gesetzt werden. |
CurrentTimeBias | uint [ms] | Dieser Wert kann vom User nicht gesetzt werden. Unterschied zwischen dem Zeitstempel des Serverstatus und der aktuellen Systemzeit. |
DeleteServer | bit | Wird auf dieses Element der Wert 1 geschrieben, dann wird der zugehörige Server gestoppt. Der Server wird erst bei einem Neustart des Treibers wieder gestartet. |
GetItemIds | bit | Das Schreiben eines Wertes löst ein Update der Information in ItemIds aus. |
GroupCount | uint | Anzahl der im Server insgesamt enthaltenen Gruppen (public und private). In diesem Wert sind auch Gruppen enthalten, die von anderen Clients im Server angelegt werden. Dieser Wert kann vom User nicht gesetzt werden. |
InvalidMapping | bit | Ist dieser Wert TRUE wird das Invalid Bit vom Treiber gesetzt, falls die OPC Quality Information BAD oder UNCERTAIN ist. Diese Einstellung ist kombinierbar mit alle möglichen Einstellungen von QualInfoFilter.QualInfo und QualInfoFilter.QualInfoDetail. |
ItemIds | dyn. Textfeld | In diesem Feld wird der Adressraum des Servers dargestellt, falls der Server diese Funktion unterstützt und das Adressbrowsing über die Config-Datei eingeschaltet ist. Dieser Wert kann vom User nicht gesetzt werden. |
LastUpdateTime | time | Zeitpunkt des letzten Updates durch den Server in lokaler Zeit. Dieser Wert kann vom User nicht gesetzt werden. |
MajorVersion | uint | Major Version der Server Software. Dieser Wert kann vom User nicht gesetzt werden. |
MinorVersion | uint | Minor Version der Server Software. Dieser Wert kann vom User nicht gesetzt werden. |
QualInfoFilter. QualiInfo |
uint | Der Wert dieses Datenpunktes gibt an welcher Teil der OPC Qualitätsinformation auf die Benutzerbits abgebildet wird. |
QualInfoFilter. QualInfoDetail |
uint | Dieser Wert gibt an auf welche Benutzerbits der unter QualInfoFilter.QualInfo eingestellte Teil der Qualitätsinformation abgebildet wird (siehe Tabelle unten) |
ReconnectTimer | uint [s] | Nach einer Unterbrechung der Verbindung des Client zum Server versucht der Client die Verbindung zum Server wieder herzustellen. Dieser Wert gibt die Länge des Intervalls in Sekunden an, nach dessen Ablauf der Client eine Wiederverbindung (ein reconnect ) probiert. ACHTUNG: Dieser Wert sollte nicht zu klein gewählt werden, da sonst ein reconnect probiert wird bevor der Server den shutdown ausgeführt hat. (~20 Sekunden) |
ServerGA | bit | Eine Wertänderung in diesem Feld löst eine Generalabfrage auf den Server aus. Dabei werden alle Items in allen Gruppen des betreffenden Servers abgefragt. Ob diese Abfrage aus dem Cache des Servers oder direkt von der Peripherie beantwortet wird hängt von dem Wert in_OPCGroup.DataSourceDevice ab und kann pro Gruppe eingestellt werden. Siehe Abschnitt über "_OPCGroup (OPC Client)". |
ServerState | uint | Der vom Server gelieferte Status als Zahl laut OPC Spezifikation. Dieser Wert kann vom User nicht gesetzt werden. |
ServerStateText | string |
Falls in ServerState ein OPC Standard ServerState steht, wird in diesem Wert die Darstellung dieses Wertes als Text geliefert. Dieser Wert kann vom User nicht gesetzt werden. BEISPIEL: ServerState = 1 ServerStateText = OPC_STATUS_RUNNING |
StartTime | time | Dieser Wert kann vom User nicht gesetzt werden. Er gibt den Zeitpunkt (in lokaler Zeit) an, zu dem der Server gestartet wurde. |
StateTimer | int [s] | Dieser Wert legt das Sekundenintervall fest, in dem der Serverstatus abgefragt wird. Da die Statusabfrage (zusammen mit einem Callback Mechanismus) zur Verbindungsüberwachung verwendet wird sollte dieser Wert nicht zu groß gewählt werden. (1 - 30 Sekunden). Bei 0 wird der Serverstatus nicht abgefragt. |
VendorInfo | string | Herstellerspezifische Information zum Server. Dieser Wert kann vom User nicht gesetzt werden. |
BrowseInfo.GetBranch | dyn_String | Über dieses DPE wird das Browsen einer hierarchischen Ebene im Server angestoßen. Das erste Element wird aktuell ignoriert. Im zweiten Element muss die ItemId des Knoten stehen für den die Kindknoten gelesen werden sollen. |
BrowseInfo.BranchNames | dyn_string | Enthält die Namen der Kindknoten vom Vaterknoten aus. |
BrowseInfo.BranchQuery | dyn_string | Gespiegelter GetBranch-Befehl |
BrowseInfo.HierarchySeparator | char | Trennzeichen für die Hierarchiestufen |
HierarchicalBrowsing | bit | Obsolet. |
ContainedItemCnt | uint | Enthält die Summe aller Items die in die Gruppen dieses Servers eingefügt sind. |
TimeoutError | int |
Dieses Element enthält Informationen über Timeout-Fehler die bei gewissen Serverzugriffen aufgetreten sind. Mögliche Werte: 0...kein Fehler 1...Timeout-Fehler während Read 2...Timeout-Fehler während Write 3...Timeout-Fehler während Refresh 4...Timeout-Fehler während Readback |
TimeoutItems | dyn_string | Alle Elemente die während eines Lese- oder Schreibvorganges des OPC Servers einen Timeout Fehler aufweisen werden innerhalb dieser Liste hinterlegt. |
In der folgenden Tabelle ist das Abbilden für die unterschiedlichen Kombinationen der Werte QualInfoFilter.QualInfo und QualInfoFilter.QualInfoDetail dargestellt. Die nicht verwendeten Benutzerbits werden vom Treiber in Befehlsrichtung nicht interpretiert und in Melderichtung nicht gesetzt.
QualInfoFilter. QualInfo |
QualInfoFilter. QualInfoDetail |
Bedeutung |
---|---|---|
0 | Don't care | Kein quality mapping, kein userbit gesetzt |
1 | 0 | Das Lowbyte der OPC Quality Information wird auf die 8 userbits abgebildet |
8 | Qualität und Substatus der OPC Quality Information werden auf Bits 1 bis 6 abgebildet. | |
9 | Qualität und Substatus der OPC Quality Information werden auf Bits 2 bis 7 abgebildet. | |
10 | Qualität und Substatus der OPC Quality Information werden auf Bits 3 bis 8 abgebildet. | |
16 | Bilde Limitinformation auf userbits ab, beginnend bei bit1 | |
17 | Bilde Limitinformation auf userbits ab, beginnend bei bit2 | |
18 | Bilde Limitinformation auf userbits ab, beginnend bei bit3 | |
19 | Bilde Limitinformation auf userbits ab, beginnend bei bit4 | |
20 | Bilde Limitinformation auf userbits ab, beginnend bei bit5 | |
21 | Bilde Limitinformation auf userbits ab, beginnend bei bit6 | |
22 | Bilde Limitinformation auf userbits ab, beginnend bei bit7 | |
32 | Bilde Substatus auf Userbits ab, beginnend bei bit1 | |
33 | Bilde Substatus auf Userbits ab, beginnend bei bit2 | |
34 | Bilde Substatus auf Userbits ab, beginnend bei bit3 | |
35 | Bilde Substatus auf Userbits ab, beginnend bei bit4 | |
36 | Bilde Substatus auf Userbits ab, beginnend bei bit5 | |
2 | Don't care | Das Highbyte der OPC Quality Information (server specific information) wird auf die 8 userbits abgebildet |