FB_SocketSend

FB_SocketSend 1:

Mit dem Funktionsbaustein FB_SocketSend können über den TwinCAT TCP/IP Connection Server Daten zu Remote-Clients oder Remote-Server gesendet werden. Eine Remote-Clientverbindung muss vorher mit dem Funktionsbaustein FB_SocketAccept oder eine Remote-Serververbindung mit dem Funktionsbaustein FB_SocketConnect aufgebaut werden.

VAR_INPUT

VAR_INPUT
    sSrvNetId   : T_AmsNetId := '';    
    hSocket     : T_HSOCKET;      
    cbLen       : UDINT;            
    pSrc        : DWORD;            
    bExecute    : BOOL;         
    tTimeout    : TIME := T#5s;     
END_VAR

sSrvNetId: String mit der Netzwerkadresse des TwinCAT TCP/IP Connection Servers. Für den lokalen Rechner (default) kann auch ein Leerstring angegeben werden.

hSocket: Das Verbindungshandle des Kommunikationspartners zu dem Daten gesendet werden sollen.

cbLen: Die Anzahl der zu sendenden Daten in Bytes.

pSrc: Die Adresse (Pointer) auf den Sendepuffer.

bExecute: Über eine positive Flanke an diesem Eingang wird der Baustein aktiviert.

tTimeout: Maximale Zeit, die bei der Ausführung des Funktionsbausteins nicht überschritten werden darf.

FB_SocketSend 2:

Wenn der Sendepuffer des Sockets voll ist, weil z.B. der Remote-Kommunikationspartner nicht schnell genug die gesendeten Daten empfängt oder sehr viele Daten gesendet werden, liefert der FB_SocketSend-Funktionsbaustein nach der tTimeout-Zeit einen ADS-Timeoutfehler: 1861 zurück. In diesem Fall muss der Wert der tTimeout-Eingangsvariablen entsprechend erhöht werden.

VAR_OUTPUT

VAR_OUTPUT
    bBusy       : BOOL;
    bError      : BOOL;
    nErrId      : UDINT;
END_VAR

bBusy: Dieser Ausgang wird bei der Aktivierung des Funktionsbausteins gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt.

bError: Dieser Ausgang wird, nachdem der bBusy-Ausgang zurückgesetzt wurde, gesetzt, sollte ein Fehler bei der Übertragung des Kommandos erfolgen.

nErrId: Liefert bei einem gesetzten bError-Ausgang die TwinCAT TCP/IP Connection Server Fehlernummer.

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS Bibliotheken

Alle TwinCAT v2.8.0 Versionen und höher

PC oder CX (x86)

TcpIp.Lib

( Standard.Lib; TcBase.Lib; TcSystem.Lib werden automatisch eingebunden )

TwinCAT v2.10.0 Build >= 1301

CX (ARM)