SOCKET_CREATE
Crea un'istanza del socket e restituisce un numero di istanza che viene usato come ingresso nelle operazioni socket successive.
Dettagli operazione:
- Istruzioni socket supportano la comunicazione Full-Duplex con i dispositivi remoti.
- Le connessioni User Datagram Protocol (UDP) supportano un massimo di otto pacchetti di datagrammi UDP in coda. La coda contiene i pacchetti più recenti.
- I controllori Micro820 revisione 9 o successiva supportano fino a otto istanze Socket. Le istanze Socket supportano i socket UDP e TCP:
- Usare tutte le otto istanze per la connessione del client Transmission Control Protocol (TCP).
- Usare tutte le otto istanze per ascoltare le connessioni TCP in entrata, quindi accettare le otto connessioni da altri dispositivi.
- Eseguire le operazioni client e server TCP.
- Eseguire le operazioni TCP e UDP.
- Per accettare le connessioni TCP in entrata sulla stessa porta, creare una nuova istanza Socket.
- Connessione TCP persa:
- Il programma applicativo dell'utente deve rilevare la perdita di connessioni TCP e gestire l'evento. A seconda dell'applicazione utente, prendere in considerazione l'opzione di un guasto al controllore.
- Guasto al controllore.
- Provare a ristabilire la connessione.
- Per ristabilire le comunicazioni con un altro dispositivo:
- Eliminare l'istanza Socket per la connessione persa.
- Se la connessione è un client TCP, creare una nuova istanza Socket usando SOCKET_CREATE ed eseguire SOCKET_OPEN sul dispositivo di destinazione.
- Se la connessione è un server TCP, creare una nuova istanza Socket usando SOCKET_CREATE ed eseguire SOCKET_ACCEPT per attendere un'altra connessione dal dispositivo remoto.
- Messaggi applicativi per le connessioni TCP:
- Una connessione TCP è un flusso di byte tra due applicazioni. Il protocollo applicativo determina i formati del messaggio.
- I messaggi possono avere dimensioni fisse o variabili.
Lingue supportate: Diagramma a blocchi funzione, Diagramma Ladder, Testo strutturato.
SOCKET_CREATE

Parametro | Tipo di parametro | Tipo di dati | Descrizione |
|---|---|---|---|
Execute | Ingresso | BOOL | Abilitazione del blocco istruzione.
|
Type | Ingresso | USINT | Specificare il tipo di Socket:
|
SockAddr | Ingresso | SOCKADDR_CFG | Specificare la configurazione dell'indirizzo del socket. Il modulo EtherNet/IP per selezionare il numero di porta locale, impostare SockAddr su 0. Specificare un numero di porta locale in cui un'applicazione è in ascolto e riceve i dati, oppure:
Intervallo porte locali: Da 1 a 65535. Se il numero di porta locale specificato è già utilizzato dal controllore L20E o L50E, si verifica un errore. Il controllore usa i seguenti numeri di porta: Porte TCP:
Porte UDP:
Vedere Tipo di dati SOCKADDR_CFG. |
Timeout | Ingresso | UDINT | Specificare il Timeout per inattività Socket. Se un'istanza Socket non riceve alcuna richiesta entro il timeout di inattività specificato, l'istanza Socket verrà eliminata. Se viene inviata una richiesta dopo l'eliminazione dell'istanza socket, viene restituito l'errore "istanza Socket non supportata". Il blocco istruzione restituisce un errore quando il valore di timeout è inferiore al valore minimo. Impostare il timeout in modo che sia maggiore dell'intervallo più lungo tra le operazioni del socket. Se il timeout per inattività è troppo breve, le istanze Socket potrebbero scadere. Intervallo timeout: 1000-86.400.000 millisecondi. Impostare Timeout su 0 per usare il valore predefinito 300.000 (5 minuti). |
Done | Uscita | BOOL | Indica se l'operazione è stata completata.
|
Busy | Uscita | BOOL |
|
Error | Uscita | BOOL | Indica che si è verificato un errore.
|
Status | Uscita | SOCK_STATUS | Stato definito utilizzando il tipo di dati SOCK_STATUS che contiene informazioni su ErrorID, SubErrorID e StatusBits. |
Instance | Uscita | UDINT | Contiene Socket Handler. Usare il parametro Instance per le istruzioni Socket successive. |
Esempi di SOCKET_CREATE
Esempio di diagramma a blocchi funzionali SOCKET_CREATE

Esempio di diagramma ladder SOCKET_CREATE

Esempio di testo strutturato SOCKET_CREATE

Risultati: client TCP

Risultati: server TCP

Risultati - UDP

Fornire un feedback