SendByte

TwinCAT TIA
Netzwerk TCP/IP Client ActiveClients Ein Client

ns=2;s=DEPRAG Smart/Network/TCP/IP/ActiveClients/0/SendByte

Der Befehl sendet ein Byte-Array als TCP/IP-Nachricht an den Server.

Parameter:

    Message
    Inhalt der Nachricht, die an den Server gesendet werden soll.

Rückgabewert:

    SendByte
    Eine Variable vom Typ OpcMethodReturnValueVoid. Die Methode hat keine befehlsspezifischen Rückgabewerte.

Beispiele:

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

Beckhoff Parameter:

    bTcpIpSendByte
    Eine boolesche Variable, über welche die Ausführung des SendByte-Befehls getriggert werden kann.
    OutputDataTcpIpSendByte
    Eine Instanz der ST_VoidOutputData Struktur, in welche der Rückgabewert der SendByte-Methode geschrieben wird.
    hrTcpIpSendByte
    Hiermit kann die Ausführung des Befehls überwacht werden. Fehler-Codes haben den Typ HRESULT.
    Message
    Eine Variable vom Typ "ARRAY[*] OF BYTE", in welcher die zu sendende Nachricht abgelegt wird.
    fbTcpIp
    Eine Instanz des, mit der DEPRAG Smart-Bibliothek gelieferten, "FB_TcpIp" Funktionsbausteins.
    nMessageLength
    Eine UINT-Variable die die Länge der Nachricht spezifiziert.
    sClientId
    Eine STRING(255)-Variable, welche die ID des Clients darstellt, mit welchem die Nachricht versendet werden soll.
    ConnectionHandle
    Beim Verbindungsaufbau zwischen DEPRAG Smart Server und Ihrem OPC UA Client erhaltenes "ConnectionHandle".


VAR
   bTcpIpSendByte    : BOOL;
   OutputDataTcpIpSendByte  : ST_VoidOutputData;
   hrTcpIpSendByte    : HRESULT;
   testLongByteArray : ARRAY[1..1000] OF BYTE := [84, 101, 115, 116, 255, 84, 255];

   fbTcpIp  : FB_TcpIp;
END_VAR

hrTcpIpSendByte := fbTcpIp.SendByte(
        bExecute   := bTcpIpSendByte, 
        ConnectionHandle := depragSmartConnection.ConnectionHandle, 
        nMessageLength  := 7, 
        sClientId   := '0', 
        Message    := testLongByteArray, 
        OutputData   => OutputDataTcpIpSendByte);
IF hrTcpIpSendByte <> S_FALSE THEN 
    bTcpIpSendByte := 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.