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.
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 Usar LabVIEW con TCP/IP y UDP de la Ayuda de LabVIEW para obtener más información sobre cómo funciona la comunicación TCP/IP.
Utilice las funciones TCP/IP ubicadas en la paleta Functions»Data Communication»Protocols»TCP para la 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.
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.
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
La siguiente imagen* muestra cómo el servidor recibe estos comandos. Observe que se incluyen las mismas funciones básicas de TCP, pero el código circundante permite conexiones más complejas y una comunicación robusta.
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 caso envía información a la terminal de continuación, que determina si continuar 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.
* Tenga en cuenta que estas imágenes son de una versión anterior de LabVIEW. Es posible que los colores de los cables de datos y los íconos de función no coincidan con su versión. La estructura del código sigue siendo aplicable.