FINS (Factory Interface Network Service) es el protocolo propietario de Omron para comunicarse con sus autómatas: lee y escribe áreas de memoria del PLC (CIO, DM, W, H, A) mediante comandos identificados por un código de dos bytes. Viaja sobre Ethernet en el puerto 9600, en UDP o TCP, y también sobre enlaces serie y Controller Link.
Dónde se encuentra FINS en planta
FINS aparece allí donde hay control Omron, que en España es especialmente frecuente en envase y embalaje, alimentación y bebida, y en maquinaria entregada por fabricantes de equipo original que estandarizan en esa marca. Cubre desde las series clásicas hasta los controladores de máquina actuales, que mantienen FINS mientras incorporan mensajería por EtherNet/IP y, en algunos modelos, servidor OPC-UA integrado. El direccionamiento es de tres niveles (red, nodo y unidad), de modo que una petición puede atravesar segmentos si existen tablas de encaminamiento; en instalaciones sencillas sobre Ethernet el número de nodo suele derivarse del último octeto de la dirección IP. Los comandos más usados son la lectura y la escritura de área de memoria, y el conjunto incluye también lectura de estado y de reloj del controlador, además de comandos de cambio de modo del CPU.
FINS frente a EtherNet/IP, Host Link y Modbus TCP
La confusión más habitual es entre FINS y Host Link, el protocolo serie ASCII más antiguo de la misma marca: no son lo mismo, aunque los comandos FINS pueden encapsularse en tramas Host Link para llegar por puerto serie. La diferencia que importa en un proyecto nuevo es otra: FINS direcciona por posición de memoria, y hay que saber que la producción del turno está en una palabra concreta del área DM, mientras que la mensajería por EtherNet/IP de los controladores modernos direcciona por nombre de variable. La consecuencia es de mantenimiento: si el programador reorganiza la memoria, una integración basada en direcciones se rompe en silencio y sigue devolviendo números plausibles, mientras que una basada en nombres falla de forma explícita. Frente a Modbus TCP, FINS comparte el planteamiento (direcciones numéricas, sin autenticación) pero es específico de un fabricante y expone directamente las áreas nativas del PLC, sin la capa de registros a la que obliga Modbus.
Extraer datos de FINS hacia una capa de datos
La lectura por FINS es un sondeo no intrusivo: no exige modificar el programa del autómata ni parar la línea, siempre que el controlador tenga puerto Ethernet disponible y el servicio habilitado. El coste está en otro sitio. Las comunicaciones las atiende el propio CPU dentro de su ciclo de scan, así que un sondeo agresivo (muchas peticiones pequeñas a alta frecuencia) alarga el ciclo y puede afectar al control. Cada comando devuelve además un bloque acotado de palabras, de modo que la estrategia correcta es agrupar las variables de interés en zonas contiguas de memoria y leerlas en pocas peticiones grandes, en lugar de dispersarlas y encadenar decenas de lecturas.
Hay dos limitaciones que condicionan la calidad del dato resultante. La primera es que FINS devuelve palabras en crudo: no hay tipo, ni unidades, ni escala. Un valor de coma flotante ocupa dos palabras consecutivas cuyo orden depende de cómo lo almacene el programa, y un contador puede estar en binario o en BCD. Sin el mapa de direcciones que debe aportar el fabricante de la máquina, la extracción se convierte en ingeniería inversa. La segunda es que el protocolo no marca el tiempo: el instante que se registra es el del colector, así que la resolución temporal real del dato es el periodo de sondeo y no el ciclo del PLC. Si el proceso cambia más rápido que ese periodo, el dato simplemente no existe, por mucho que el histórico parezca continuo.
En seguridad, FINS no tiene autenticación ni cifrado, y las mismas tramas que leen memoria incluyen comandos de cambio de modo del CPU: el protocolo no distingue permisos, así que la restricción tiene que estar en la red y en la configuración del equipo, no en el cliente. La variante UDP tampoco garantiza entrega, por lo que el colector debe implementar reintentos y detectar respuestas perdidas o duplicadas; sobre una red de planta con tráfico real, la variante TCP suele dar menos sorpresas. El patrón razonable es hablar FINS una sola vez, en un equipo del edge, normalizar allí tipos, escalas y nombres, y republicar el resultado por OPC-UA o MQTT, de modo que ningún sistema aguas abajo dependa del mapa de memoria de un autómata concreto. Ese trabajo es el objeto de la conectividad de PLC.
Relación con otros términos
FINS es una de las vías de acceso al PLC, junto a Modbus y a los servidores OPC-UA integrados en los controladores recientes. Su lectura suele consolidarse en el edge antes de publicarse hacia el SCADA, el historian o un Unified Namespace.