Verwendung einer dynamischen Verbindung zu einem OPC UA Server

Die Einstellungen für die Kommunikation einer OPC UA Client Datenquelle zu einem OPC UA Server können dynamisch aus dem IEC Code konfiguriert und auch zur Laufzeit geändert werden. Zu diesem Zweck ist in der Bibliothek ‎DatasourceOpcUAServer‎ eine Struktur verfügbar.

Bei dieser Art der "dynamischen Verbindung" kann zur Laufzeit z.B. die Server-URL wieder geändert werden, wenn sich das Gerät in einem anderen Netz befindet als zum Zeitpunkt der Konfiguration. Es kann auch verwendet werden, um detaillierte Einstellungen für die OPC UA Verbindung zu konfigurieren.

Anforderung

  1. Auf der ⮫ Kommunikation der Datenquelle die Option „Verbindungseinstellungen aus IEC-Variable lesen“ aus.

  2. Erstellen Sie im statischen Speicher (z.B. in einer GVL oder in einem Programm in Ihrem Projekt) eine Variable vom Typ ‎DatasourceOpcUaServer.UserConfigurationV1‎.

    Beispiel: Variable ‎config‎ im Programm ‎PLC_PRG‎

    PROGRAM PLC_PRG
    VAR	
        config : DatasourceOpcUaServer.UserConfigurationV1 := (
    	        SessionName := 'MyCustomSession',		
                    EndpointUrl := 'opc.tcp://DevXY:4840',		
                    SecurityPolicyUri := DatasourceOpcUaServer.CmpOpcUaStack_Interfaces.OpcUa_SecurityPolicy_None);	
        value : INT;
    END_VAR
  3. Verweisen Sie im Eingabefeld unterhalb der Option „Verbindungseinstellungen aus IEC-Variable lesen“ auf die in Schritt 2 erstellte Variable:

    Beispiel: ‎PLC_PRG.config‎

    Nun können Sie jederzeit die Felder dieser ‎UserConfigurationV1‎ Struktur mit Werten füllen. Dies kann z.B. beim Starten des Controllers, aus einer Konfigurationsdatei oder aus einem Visualisierungsdialog heraus geschehen.

    Beim Füllen der Struktur mit Einstellungswerten gilt folgendes:

    • Die Einstellung ‎EndpointUrl‎ muss immer definiert werden.

    • Alle anderen Einstellungen können nach Belieben zugewiesen werden. Sie ermöglichen zum Beispiel die Verwendung eines anderen Sicherheitsmodus als im üblichen Editor. Einige Einstellungen, die nicht im Editor verfügbar sind, können auch über die OPC-UA Verbindung konfiguriert werden.

Wenn alle Verbindungseinstellungen konfiguriert sind, können Sie den Parameter ‎xValid‎ der ‎UserkonfigurationV1‎ auf ‎TRUE‎ setzen.

Beispiel: Im Implementierungsteil von ‎PLC_PRG‎:

config.SubscriptionPublishingInterval := config.SamplingInterval := TIME#2S;
config.xValid := TRUE;

Dann beginnt die Datenquelle im nächsten Zyklus mit dem Verbindungsaufbau.

Änderungen an den Einstellungen, während eine Verbindung besteht, haben keine Auswirkungen und werden erst beim nächsten Verbindungsaufbau übernommen.

Wenn die Einstellung ‎xValid‎ auf ‎FALSE‎ gesetzt wird, trennt die Datenquelle automatisch die Verbindung zum Server und die Einstellungen können erneut geändert werden.

In der Dokumentationsansicht der Bibliothek ‎DatasourceOpcUAServer‎ sehen Sie eine Übersicht über die aktuell verfügbaren Einstellparameter der Struktur und deren Standardwerte im Bibliotheksmanager. Neue Versionen der Datenquellen könnten neue Optionen bieten.