SOCKET_WRITE

Die SOCKET_WRITE-Anweisung sendet Daten an einen Socket.
Details zum Betrieb:
  • SOCKET_WRITE versucht, die angeforderte Anzahl von im Length-Parameter angegebenen Datenbyte zu senden. Wenn der Sendevorgang abgeschlossen ist, gibt SOCKET_WRITE die Anzahl von in den TxLength-Parameter geschriebenen Datenbyte zurück.
  • Die Ausgabe wird asynchron vom Programm-Scan aktualisiert.
Unterstützte Sprachen: Funktionsblockdiagramm, Kontaktplan und Strukturierter Text.
Diese Anweisung gilt für
Micro820
L20E-,
Micro850
L50E- und
Micro870
L70E-Controller.
SOCKET_WRITE
SOCKET_WRITE
SOCKET_WRITE-Parameter
Parameter
Parametertyp
Datentyp
Beschreibung
Execute
Eingang
BOOL
Anweisungsblock aktivieren.
  • TRUE: Anstiegsflanke erkannt. Startet den Anweisungsblock unter der Voraussetzung, dass der letzte Vorgang abgeschlossen ist.
  • FALSE: Keine Anstiegsflanke erkannt.
Instance
Eingang
UDINT
Kopieren vom zurückgegebenen Socket-Handler aus einer SOCKET_CREATE- oder SOCKET_ACCEPT-Anweisung.
  • Kopieren Sie für die Socket-Typen von UDP- und TCP-Client Socket den zurückgegebenen Socket-Handler aus einer SOCKET_CREATE-Anweisung.
  • Kopieren Sie für den Socket-Typ des TCP-Servers vom zurückgegebenen Socket-Handler aus einer SOCKET_ACCEPT-Anweisung.
Timeout
Eingang
UDINT
Zeitüberschreitung für SOCKET_WRITE-Instanzen. Die Anweisung gibt einen Fehler zurück, wenn der Zeitüberschreitungswert geringer als der Mindestwert ist.
Zeitüberschreitungsbereich: 1000 - 1.800.000 Millisekunden. Setzen Sie Zeitüberschreitung auf 0 zur Verwendung des Standardwerts 10.000 (10 Sekunden).
UDPAddr
Eingang
Die UDP-Zieladresse, in die die Daten geschrieben werden, wenn eine SOCKET_OPEN-Anweisung seit der Erstellung des Socket nicht ausgeführt wurde. Für TCP oder wenn eine SOCKET_OPEN-Anweisung für UDP ausgeführt wurde, wird diese Struktur nicht verwendet und sollte Nullen enthalten. Die TCP-Verbindung und die SOCKET_OPEN-Anweisung für UDP übermitteln alle Remote-Adresseninformationen.
Beispiel für UDPAddr von 192.168.2.100 und Port 12000:
UDPAddr.IPAddress[0] = 192
UDPAddr.IPAddress[1] = 168
UDPAddr.IPAddress[2] = 2
UDPAddr.IPAddress[3] = 100
UDPAddr.Port = 12000
Verwenden Sie den SOCKADDR_CFG-Datentyp, um UDPAddr zu definieren.
Data
Eingang
USINT[1..1]
Ein Array zum Speichern des Datenschreibenvorgangs zur jeweiligen Socket-Instanz mithilfe der SOCKET_WRITE-Anweisung.
  • Die Datenarray-Größe muss >= (Offset + Length) sein.
  • Das Datenarray kann größer als die SOCKET_WRITE-Length sein.
Length
Eingang
UINT
Die Anzahl der zu schreibenden Datenbytes.
Maximal 256 Bytes.
Offset
Eingang
UNIT
Offset im Datenarray. Der Datenschreibvorgang aus SOCKET_WRITE beginnt an dieser Position.
Done
Ausgang
BOOL
Gibt an, wenn der Vorgang abgeschlossen ist.
  • TRUE: Vorgang erfolgreich abgeschlossen
  • FALSE: Vorgang wird ausgeführt oder eine Fehlerbedingung ist aufgetreten.
Die Ausgabe wird synchron vom Programm-Scan aktualisiert.
Busy
Ausgang
BOOL
  • TRUE: Der Vorgang ist nicht abgeschlossen.
  • FALSE: Vorgang ist abgeschlossen.
Die Ausgabe wird synchron vom Programm-Scan aktualisiert.
Error
Ausgang
BOOL
Gibt an, dass ein Fehler aufgetreten ist.
  • TRUE: Es wurde ein Fehler erkannt.
  • FALSE: Kein Fehler.
Die Ausgabe wird synchron vom Programm-Scan aktualisiert.
Status
Ausgang
SOCK_STATUS
Der Status wird mithilfe der Datentyp SOCK_STATUS definiert, welche ErrorID-, SubErrorID- und StatusBits-Informationen enthält.
Die Ausgabe wird synchron vom Programm-Scan aktualisiert.
TxLength
Ausgang
UNIT
Die Anzahl der Bytes der geschriebenen Daten.

SOCKET_WRITE-Beispiele

Beispiel für ein SOCKET_WRITE-Funktionsblockdiagramm
Beispiel für ein SOCKET_WRITE-Funktionsblockdiagramm
Beispiel für einen SOCKET_WRITE-Kontaktplan
Beispiel für einen SOCKET_WRITE-Kontaktplan
Beispiel für strukturierten SOCKET_WRITE-Text
Beispiel für strukturierten SOCKET_WRITE-Text
Ergebnisse – TCP
Ergebnisse – TCP
Ergebnisse – UDP ohne Öffnen
Ergebnisse – UDP ohne Öffnen
Ergebnisse – UDP mit Öffnen
Ergebnisse – UDP mit Öffnen
Rückmeldung geben
Haben Sie Fragen oder Feedback zu dieser Dokumentation? Bitte geben Sie hier Ihr Feedback ab.
Normal