Skip to main content

Dynamische Verbindung zu einem OPC UA Server verwenden

Die Einstellungen für die Kommunikation einer Datenquelle OPC UA Client zu einem OPC UA Server können dynamisch aus dem IEC-Code heraus vorgenommen und auch zur Laufzeit geändert werden. Dazu steht eine Struktur in der Bibliothek DatasourceOpcUAServer zur Verfügung.

Bei Verwenden einer solchen "dynamischen Verbindung" kann beispielsweise zur Laufzeit die Server-URL nochmals geändert werden, falls das Gerät sich in einem anderen Netzwerk befindet als zum Zeitpunkt der Konfiguration. Auch können damit detaillierte Einstellungen an der OPC UA-Verbindung vorgenommen werden.

. Voraussetzung
  1. Aktivieren Sie nun auf der Registerkarte Kommunikation der Datenquelle die Option Verbindungseinstellungen aus IEC-Variable lesen

  2. Legen Sie im statischen Speicher, also beispielsweise in einer GVL oder in einem Programm in Ihrem Projekt, eine Variable des Typs DatasourceOpcUaServer.UserConfigurationV1 an.

    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. Referenzieren sie die in Schritt 2 angelegte Variable im Eingabefeld unterhalb der Option Verbindungseinstellungen aus IEC-Variable lesen:

    Beispiel: PLC_PRG.config

    Sie können jetzt zu einen beliebigen Zeitpunkt die Felder dieser Struktur UserConfigurationV1 mit Werten füllen. Beispielsweise kann das beim Start der Steuerung, aus einer Konfigurationsdatei oder aus einem Visualisierungsdialog heraus erfolgen.

    Beim Füllen der Struktur mit Einstellungswerten gilt Folgendes:

    • Die Einstellung EndpointUrl muss immer definiert werden.

    • Alle anderen Einstellungen können beliebig belegt werden. Sie ermöglichen es beispielsweise, eine andere Security-Betriebsart als im gewöhnlichen Editor zu verwenden. Auch können einige Einstellungen an der OPC-UA-Verbindung vorgenommen werden, die im Editor nicht zur Verfügung stehen.

Wenn alle Verbindungseinstellungen vorgenommen 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;

Die Datenquelle beginnt dann im nächsten Zyklus den Verbindungsaufbau.

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

Wird die Einstellung xValid auf FALSE gesetzt, trennt sich die Datenquelle automatisch vom Server und die Einstellungen können wieder verändert werden.

Eine Übersicht über die aktuell verfügbaren Einstellungsparameter der Struktur und ihre Standardwerte sehen Sie im Bibliotheksverwalter in der Dokumentationsansicht der Bibliothek DatasourceOpcUAServer. Neue Versionen der Datenquellen bringen eventuell neue Optionen mit.