Comunicación TCP/IP Básica en LabVIEW

Información general

Este artículo es una introducción a los conceptos básicos de la comunicación TCP/IP. Requiere algunos conocimientos previos sobre LabVIEW. Si usted es un principiante en LabVIEW, consultar primero este Tutorial de LabVIEW podría ayudarlo a comprender mejor este artículo.

Descripción

El Protocolo de Internet (IP), el Protocolo de Datagramas de Usuario (UDP) y el Protocolo de Control de Transmisión (TCP) son las herramientas básicas para la comunicación de red. El nombre TCP/IP proviene de dos de los protocolos más conocidos del conjunto de protocolos de Internet, el Protocolo de Control de Transmisión y el Protocolo de Internet. Con TCP/IP puede comunicarse a través de redes individuales o redes interconectadas (Internet).

La comunicación TCP/IP proporciona una interfaz de usuario simple que oculta las complejidades de garantizar comunicaciones de red confiables. Consulte la nota de aplicación Usar LabVIEW con TCP/IP y UDP para obtener más información sobre cómo funciona la comunicación TCP/IP. Consulte la especificación de TCP (enlace a continuación) para obtener detalles técnicos sobre TCP.

Utilice las funciones TCP/IP ubicadas en la paleta Functions»Data Communication»Protocols»TCP para comunicación TCP en LabVIEW. Al igual que con DAQ, el instrumento y la comunicación de E/S de archivos, el proceso implica abrir la conexión, leer y escribir la información y cerrar la conexión.

Con la mayoría de las comunicaciones de E/S, el procesador es siempre el cliente que inicia una conexión con el servidor de la unidad de disco, el servidor de instrumentos externo o el servidor de la tarjeta DAQ. Con las conexiones TCP/IP, una PC puede funcionar como cliente o como servidor. El siguiente diagrama de bloques representa una aplicación cliente que inicia una conexión a un servidor remoto con Conexión Abierta TCP. El servidor, o daemon, escucha las conexiones remotas y responde adecuadamente.


Los usuarios de LabVIEW pueden desarrollar aplicaciones personalizadas para la comunicación TCP/IP. El programador es responsable de desarrollar tanto el cliente como el servidor. Consulte la nota de aplicación Usar LabVIEW con TCP/IP y UDP (enlace a continuación) para obtener más información sobre crear un cliente TCP con LabVIEW.

Dado que cualquiera puede iniciar una conexión a un servidor, es posible que desee un control de acceso al servidor. El siguiente diagrama de bloques muestra cómo el servidor utiliza el valor de salida de la dirección remota del TCP Listen VI para determinar si un cliente remoto tiene permiso para acceder al servidor.





Desarrollar Aplicaciones de Comunicación
La mayoría de las aplicaciones hacen más que escribir y leer un valor. La comunicación es un proceso continuo que involucra protocolo. Por ejemplo, supongamos que un cliente envía los siguientes cuatro comandos por entero de 8 bits al servidor:
1 = adquirir datos y confirmar
2 = enviar datos
3 = obtener estado
4 = cerrar conexión

En el siguiente diagrama de bloques, un Ciclo While rodea el resto del VI. Esto le permite al VI manejar múltiples conexiones secuenciales sin tener que reiniciar después de que se cierre cada conexión. El VI no puede manejar múltiples conexiones simultáneas. La estructura externa de la caja determina si se produjo una conexión válida. Si no, no pasa nada. Si se produce una conexión válida, el VI ingresa en un Ciclo While que lee un byte desde el puerto TCP/IP. Este byte mantiene los comandos del 1 al 4 del cliente. Si no se recibe ningún comando dentro del período de tiempo de espera de lectura, la caja predeterminada de la estructura de la caja interna envía un valor VERDADERO a la terminal de continuación del Ciclo While interno para mantener la conexión activa.




El siguiente diagrama de bloques muestra las otras cuatro cajas de la afirmación de la caja interna. Cada caja maneja un comando específico que el servidor puede enviar. Cada caja envía información a la terminal de continuación, que determina si continuar o no el ciclo. En particular, la caja Quit siempre devuelve un valor de FALSO. Después de salir del ciclo, el servidor cierra la conexión con el cliente.


 
 


Este tipo de arquitectura de servidor le permite desarrollar servidores flexibles para los procedimientos de comunicación de red más complejos. Los protocolos que desarrolle pueden ser más complejos que el ejemplo anterior.

Was this information helpful?

Yes

No