Code Beispiele Opc Ua Client Sdk

Die nachfolgenden Code Beispiele PLCcom Opc Ua Client Sdk unterstützen .net oder java Entwickler bei der Implementierung von Opc Ua Funktionalitäten in Ihre Applikationen.

Die Einbindung des PLCcom Opc Ua Client Sdk ist sehr einfach und benutzerfreundlich. Die Funktionen richten sich nach den Spezifikationen der Opc Foundation. Die nachfolgenden Beispiele veranschaulichen die wichtigsten Funktionalitäten.

Weiterführende umfangreiche Dokumentationen mit direkt ausführbaren Code-Beispielen finden Sie in der Beispielanwendung in unserem Downloadpaket oder online.

picture: Code Beispiele PLCcom Opc Ua Client Sdk
Die bereitgestellten Endpoints eines OPC UA Servers lassen sich mit dem Befehl GetEndpoints(.net) oder discoverEndpoints (Java) ermitteln.

Nachfolgend ein komplettes ausführbares Beispiel:

Example: Discover OPC UA Server

Das Verbinden zu einem OPC UA Server kann auf Wunsch automatisch oder manuell durchgeführt werden.

Per Default-Einstellung verbindet sich ein Client automatisch zum Server wenn eine Verbindung benötigt wird. Auch der Reconnect nach einem Verbindungsabriss findet automatisch statt.

Das Verhalten kann über die AutoConnect Eigenschaft des Clientobjekt eingestellt werden.

DataAccessClient client = new DataAccessClient(„< Enter your UserName here >“, „< Enter your Serial here >“, sessionConfiguration, false);
oder
client.AutoConnect = false;

Nachfolgend ein komplettes ausführbares Beispiel zum manuellen Verbinden:

Example: Connect to endpoint

Die Knoten eines OPC UA Servers lassen sich mit dem Befehl „Browse“ durchsuchen.

Einfaches Beispiel:
ReferenceDescription rd = client.Browse(„Objects.Server.Data.Static“) ;

Nachfolgend ein komplettes ausführbares Beispiel:

Example: Browse nodes

Das Lesen oder Schreiben von Werten kann entweder über die NodeId oder direkt über den kompletten Namen/Pfad des Knotens erfolgen:

Beispiel zum Lesen eines Knotens:
DataValue value = client.ReadValue(„Objects.Server.Data.Static.Scalar.Int64Value“);

Beispiel zum Schreiben des Wertes 123 auf einen Knoten:
StatusCode sc = client.WriteValue(„Objects.Server.Data.Static.Scalar.Int64Value“,123);

Nachfolgend ein komplettes ausführbares Beispiel:

Example: Read or write values

Das Überwachen von Items kann entweder über die NodeId oder direkt über den kompletten Namen/Pfad des Knotens erfolgen:

Beispiel:

//create and register monitoring item
client.StartMonitoringItem(„Objects.Server.Data.Dynamic.Scalar.Int64Value“, Client_MonitorNotification);

//catch the monitoring event
private void Client_MonitorNotification(string Identifier, MonitoredItem monitoredItem, MonitoredItemNotificationEventArgs e)
{
MonitoredItemNotification notification = e.NotificationValue as MonitoredItemNotification;
Console.WriteLine(Identifier + “ “ + monitoredItem.StartNodeId + “ Value: “ + notification.Value + “ Status: “ + notification.Value.StatusCode.ToString());
}

Nachfolgend ein komplettes ausführbares Beispiel:

Example: Monitoring items