Instrucciones de sockets
Usa el protocolo de sockets para comunicaciones Ethernet con dispositivos que no admiten Modbus TCP y EtherNet/IP. Los sockets admiten cliente, server, Protocolo de Control de Transmisión (Transmission Control Protocol, TCP) y Protocolo de Datagramas de Usuario (User Datagram Protocol, UDP). Las aplicaciones habituales incluyen la comunicación con impresoras, lectores de códigos de barras y equipos personales.
Comportamiento de las instrucciones de socket en el modo de cambio de modo de ejecución (RMC):
- Si se realiza una operación de eliminación en una SOCKET_OPEN, SOCKET_ACCEPT, SOCKET_READ o SOCKET_WRITE estando en modo RMC, se eliminará la instancia de socket.
- En el modo RMC, cualquier cambio a una entrada de SOCKET_READ mientras se opera en estado OCUPADO se convierte en un error y el paquete recibido se descartará. Los parámetros de entrada de SOCKET_READ son los siguientes: Longitud, offset, tamaño de matriz de datos, variable de matriz de datos.
- SOCKET_READ es la única instrucción de SOCKET que admite agregar o modificar operaciones estando en modo de RMC.
- Si se modifican los parámetros de dirección IP de Ethernet mediante el modo RMC, todas las instancias de socket creadas se eliminarán, de forma parecida a SOCKET_DELETEALL.
Procesamiento de instrucciones y actualizaciones de salida para instrucciones de sockets:
- Asíncrona: Las instrucciones correspondientes donde todas las salidas se actualizan de forma asíncrona con la exploración del programa del usuario. Por ejemplo, una exploración de lógica de escalera. La salida asíncrona no se puede utilizar para la detección de un flanco disparador. Los parámetros de salida asíncrona no están forzados y se pueden actualizar después de la finalizar las instrucciones de socket correspondientes.
- Síncrona: Las instrucciones correspondientes donde todas las actualizaciones de la salida están sincronizadas con las exploraciones de programas de usuario. Los parámetros de salida síncrona se fuerzan y no pueden modificarse tras finalizar la instrucción de socket correspondiente.
- Híbrida: Las instrucciones correspondientes donde algunas salidas se actualizan en sincronización con la exploración del programa del usuario. Las salidas restantes se actualizan de forma asíncrona con la exploración del programa de usuario.
- Ejecución de la instrucción inmediata: La instrucción completa la función deseada antes de ir a la siguiente instrucción.
- Ejecución de la instrucción no inmediata: La instrucción requiere más de una exploración del programa para completar la función deseada. Las instrucciones realizan una instantánea de los parámetros de entrada cuando se detecta la transición deFalso > Cierto.
Instrucción | Descripción | Cliente TCP | Servidor TCP | UDP con conexión abierta | UDP sin conexión abierta | Procesamiento de instrucciones | Actualización de la salida de instrucciones |
|---|---|---|---|---|---|---|---|
Acepta una solicitud de conexión TCP de un destino remoto y devuelve una instancia de socket que se usa para enviar y recibir datos en la conexión recién creada. | NO | SÍ | NO | NO | No inmediata | Híbrida | |
Crea una instancia del socket y devuelve un número de instancia que utiliza las operaciones de sockets subsiguientes. | SÍ | SÍ | SÍ | SÍ | Inmediata | Síncrona | |
Elimina una instancia de socket creada. Las conexiones TCP se cierran antes de la eliminación. | SÍ | SÍ | SÍ | SÍ | No inmediata | Síncrona | |
Devuelve información de los sockets, por ejemplo, códigos de error y estado de ejecución. | SÍ | SÍ | SÍ | SÍ | Inmediata | Síncrona | |
Las conexiones TCP se abren con la dirección de destino especificada. Las conexiones UDP asocian una dirección IP de destino y un número de puerto al socket especificado. | SÍ | NO | SÍ | NO | No inmediata | Síncrona | |
Lee datos en un socket. Intenta recibir el número de bytes especificado y devuelve el número de bytes recibidos. | SÍ | SÍ | SÍ | SÍ | No inmediata | Híbrida | |
Envía datos en un socket. Intenta enviar el número de bytes solicitado y devuelve el número de bytes enviados. | SÍ | SÍ | SÍ | SÍ | No inmediata | Híbrida |
Entregue su opinión