AddClient

TwinCAT
Netzwerk TCP/IP Client

ns=2;s=DEPRAG Smart/Network/TCP/IP/AddClient

Erstellt einen neuen, vollständig parametrierten TCP/IP Client. Der Client kann über den zurückgegebenen Index aus der Liste "ActiveClients" abgerufen werden.

Parameter:

    ConnectionTimeoutInMilliseconds
    Maximale Zeit in Millisekunden für den Verbindungsaufbau zum Server. Kann innerhalb des Zeitintervalls keine Verbindung aufgebaut werden, wird ein Fehler ausgegeben.

Rückgabewert:

    AddClient
    Eine Variable vom Typ OpcMethodReturnValueInt32. In der Eigenschaft Result sind die befehlsspezifischen Rückgabewerte enthalten.
      Result
      Eindeutiger Index, mit dem der TCP/IP-Client aus der Liste "ActiveClients" abgerufen werden kann.

Beispiele:

Neben den bereits erläuterten Parametern sind für die Implementierung in TwinCAT 3 nachfolgende Variablen anzulegen / zu übergeben:

Beckhoff Parameter:

    bTcpIpAddClient
    Eine boolesche Variable, über welche die Ausführung des AddClient-Befehls getriggert werden kann.
    OutputDataTcpIpAddClient
    Eine Instanz der ST_Int32OutputData Struktur, in welche der Rückgabewert der AddClient-Methode geschrieben wird.
    hrTcpIpAddClient
    Hiermit kann die Ausführung des Befehls überwacht werden. Fehler-Codes haben den Typ HRESULT.
    fbTcpIp
    Eine Instanz des, mit der DEPRAG Smart-Bibliothek gelieferten, "FB_TcpIp" Funktionsbausteins.
    sHostAddress
    Eine String(255)-Variable, welche die IP oder DNS-Adresse des Servers darstellt.
    nPortNumber
    Eine DINT-Variable, welche den Port des Hosts spezifiziert.
    nConnectionTimeoutInMilliseconds
    Eine DINT-Variable, welche die maximale Zeit in Millisekunden für den Verbindungsaufbau zum Server angibt. Kann innerhalb des Zeitintervalls keine Verbindung aufgebaut werden, wird ein Fehler ausgegeben.
    ConnectionHandle
    Beim Verbindungsaufbau zwischen DEPRAG Smart Server und Ihrem OPC UA Client erhaltenes "ConnectionHandle".


VAR
    bTcpIpAddClient    : BOOL;
    OutputDataTcpIpAddClient : ST_Int32OutputData;
    hrTcpIpAddClient   : HRESULT;

    fbTcpIp  : FB_TcpIp;
END_VAR

hrTcpIpAddClient := fbTcpIp.AddClient(
        bExecute       := bTcpIpAddClient, 
        ConnectionHandle     := depragSmartConnection.ConnectionHandle, 
        sHostAddress      := '10.10.222.101', 
        nPortNumber       := 4540, 
        nConnectionTimeoutInMilliseconds := 5000, 
        OutputData       => OutputDataTcpIpAddClient);
IF hrTcpIpAddClient <> S_FALSE THEN 
    bTcpIpAddClient := FALSE;
END_IF
                                                    

Für Beispiele und Erklärungen bezüglich der Aufrufe von Knoten via Siemens TIA Portal sei an dieser Stelle auf den Unterpunkt "Siemens TIA Portal" in Abschnitt "Erste Schritte" verwiesen.