Controladores

Qué es un controlador, cómo se habilitan y se deshabilitan, el controlador fijo de un dispositivo, la tabla de todos los controladores que conoce este producto, qué documenta la página de cada uno, y la nota sobre los controladores que un paquete no lleva.

Ver como Markdown

Un controlador es el protocolo con el que la estación habla con una familia de equipos: registros Modbus sobre TCP, un servidor OPC UA, un autómata Siemens. Todo dispositivo de la página Connector pertenece exactamente a un controlador, y el controlador decide qué campos de conexión muestra el dispositivo, cómo se direccionan sus tags, qué tipos de dato pueden llevar, si se pueden escribir, si el controlador puede explorar en busca de equipos, y si la estación los sondea o el equipo empuja hacia ella. Este grupo tiene una página por controlador; esta página es lo que todas tienen en común.

El registro

El conjunto de controladores es fijo: viene con la aplicación y no se puede ampliar desde la página. La fila Controladores, en lo alto de la columna Comunicación, lista los que lleva esta instalación, cada uno con su descripción, su recuento de dispositivos, su estado de salud y una pareja de habilitar y deshabilitar; la tabla y sus reglas están en La lista de controladores y la página de un controlador.

Los controladores vienen habilitados. Deshabilitar uno solo esconde su grupo del árbol, y se rechaza mientras el controlador siga teniendo dispositivos (o, en Modbus RTU, líneas serie), así que un dispositivo configurado nunca puede desaparecer de la vista. Habilitar uno añade un grupo vacío bajo la fila Controladores sin dispositivos del árbol. Añadir un dispositivo a un controlador habilita ese controlador por su cuenta. El conjunto habilitado se guarda con la configuración y viaja con las copias de seguridad.

El controlador de un dispositivo es fijo

El controlador se elige al crear el dispositivo: el menú Nuevo… de la columna nombra el controlador bajo el que aterriza el dispositivo, y Añadir dispositivo en la página de un controlador crea bajo ese controlador. A partir de ahí, la tarjeta Dispositivo muestra el controlador como texto de solo lectura. Para llevar un dispositivo a otro protocolo, cree un dispositivo nuevo bajo el otro controlador y elimine el antiguo; la dirección cambia, así que hay que apuntar las referencias a los tags nuevos desde la tarjeta Usado por de cada tag.

Todos los controladores

Controlador Habla con
Simulated Señales sintéticas generadas en la propia aplicación, para probar sin hardware.
Modbus TCP Registros Modbus sobre TCP/IP. Puerto 502 por defecto.
Modbus RTU Registros Modbus por una línea serie (RS-485/232).
OPC UA Cliente OPC Unified Architecture sobre opc.tcp.
Siemens S7 Autómatas Siemens S7 por el controlador S7comm.
Rockwell EtherNet/IP Autómatas Allen-Bradley / Rockwell sobre EtherNet/IP (CIP).
Beckhoff ADS Autómatas Beckhoff TwinCAT sobre ADS/AMS.
Mitsubishi MC Autómatas Mitsubishi por el controlador MELSEC MC.
BACnet Dispositivos de automatización de edificios BACnet/IP.
IEC 61850 IED de subestación IEC 61850 sobre MMS. No se incluye en el paquete distribuido (véase más abajo).
OCPP Puntos de recarga de vehículos eléctricos por OCPP (los puntos de recarga se conectan a esta estación).
Redfish API REST Redfish para hardware de servidor y de centro de datos.
Matter Dispositivos domésticos Matter (puesta en marcha por Bluetooth).
LoRaWAN Sensores LoRaWAN a través del servidor de red Basics Station integrado.
AVEVA PI Puntos de AVEVA PI System por PI Web API, por HTTPS de forma predeterminada.
HTTP Puntos de conexión HTTP/JSON genéricos sondeados como tags.

El registro también conoce OPC DA (el OPC Data Access clásico sobre COM/DCOM), pero en este producto no lo sirve ningún controlador: nunca se lista, nunca se habilita y no acepta ningún dispositivo.

Qué tienen en común los controladores, y en qué se diferencian

El Connector dibuja un solo editor para todos los controladores y deja que el controlador decida qué partes aparecen. Esta tabla dice qué esperar antes de abrir la página de un controlador:

Controlador Campos de conexión en la página del dispositivo Direccionamiento del tag Intervalo de sondeo Escrituras en tags Descubrir
Simulated ninguno el nombre del tag, más la forma de la señal sí (su catálogo)
Modbus TCP Host o IP, Puerto, ID de unidad, Intervalo mínimo entre transacciones tipado: clase y número de registro sí (exploración por dirección o CIDR)
Modbus RTU Línea serie (fija), ID de unidad tipado: clase y número de registro sí (sondeo de ID de unidad en una línea)
OPC UA Host o IP, Puerto, Ruta del recurso, Usuario, Contraseña texto libre: Id de nodo sí (dirección del servidor)
Siemens S7 Host o IP, Bastidor / Ranura tipado: área, DB, byte, bit no
Rockwell EtherNet/IP Host o IP, Ranura texto libre: tag del autómata, más un desplazamiento sí (difusión)
Beckhoff ADS Host o IP, Puerto, IP local (AMS) texto libre: Símbolo no
Mitsubishi MC Host o IP, Puerto texto libre: Dirección del dispositivo fijo 1 s no
BACnet Host o IP, Puerto, Id de dispositivo tipado: tipo de objeto e instancia fijo 1 s sí (Who-Is)
IEC 61850 Host o IP, Puerto texto libre: ruta MMS fijo 1 s no
OCPP Identificador tipado: número de conector; el nombre del tag termina en Meter o Status lo empuja el punto de recarga no (solo lectura) sí (puntos de recarga conectados)
Redfish Host o IP, Usuario, Contraseña texto libre: Ruta del recurso, más un puntero JSON no
Matter ID de nodo (solo lectura) el nombre del tag es el clúster no (solo lectura) sí (nodos puestos en marcha)
LoRaWAN Identificador (DevEUI), Servidor / Clave (clave de aplicación) tipado: canal o desplazamiento, tipo LPP lo empuja el sensor no (solo lectura) no
AVEVA PI Host o IP, Puerto, Ruta del recurso, Transporte, Usuario, Contraseña, Token de portador texto libre: ruta PI no
HTTP Host o IP, Puerto, Ruta del recurso texto libre: Ruta no

Cada controlador estrecha además la lista Tipo de dato que ofrece un tag a lo que de verdad puede transportar; la lista exacta está en la página del controlador. Donde la tabla dice "fijo 1 s", el controlador ignora el intervalo configurado, así que las páginas de Dispositivo y de Tag le esconden el campo Intervalo de sondeo. Donde dice "solo lectura", el campo Acceso ofrece únicamente Solo lectura y el campo de escritura no aparece nunca.

Qué documenta la página de cada controlador

La página de cada controlador recorre las mismas secciones en el mismo orden: los campos de conexión que muestra la tarjeta Dispositivo y cómo componen el URI base; cómo se direcciona un tag (los campos tipados o la ficha de texto libre, y la dirección de bus de solo lectura que previsualiza el panel); los tipos de dato ofrecidos; el descubrimiento, cuando el controlador lo tiene; las escrituras, cuando el controlador las acepta; y las particularidades del controlador (credenciales, certificados, tiempos, un servidor de red que corre la estación, emparejamiento).

Un controlador que el paquete no lleva

El controlador IEC 61850 se compila y corre en una instalación de desarrollo, pero no entra en el paquete distribuido: su biblioteca de protocolo está licenciada en términos que no permiten enviarla dentro del instalador. El Connector nunca lista un controlador que el paquete en ejecución no lleva, y nunca lo habilita. Una configuración que llega con esos dispositivos de todas formas (una copia de seguridad restaurada, una configuración de otra máquina) los conserva: la fila del controlador sigue listada mientras esos dispositivos existan, su descripción se lee "Este paquete no incluye el controlador.", y la página del controlador y todos los dispositivos que hay bajo ella llevan un aviso que dice lo mismo. Esos dispositivos se quedan sin conexión y conservan sus ajustes; se pueden eliminar, pero no copiar, y bajo ese controlador no se puede arrancar ningún dispositivo nuevo ni ninguna exploración de descubrimiento. Habilitar la fila se rechaza con "No se habilitó 'IEC 61850': Este paquete no incluye el controlador."

Qué controladores lleva un paquete se lee del registro de complementos del servidor integrado, que solo existe una vez que el servidor ha arrancado. Hasta entonces todos los controladores cuentan como presentes, así que la lista de controladores se asienta unos segundos después del arranque y se queda quieta durante la sesión, incluso mientras el servidor se detiene y se vuelve a arrancar.

El código de un controlador se carga una sola vez mientras la aplicación corre. Detener y arrancar la comunicación reconstruye los dispositivos en marcha y la lista de controladores a partir de esa misma carga, que es lo que mantiene plana la memoria de la estación a lo largo de un día de reinicios. La consecuencia es que sustituir en disco los archivos de un controlador solo surte efecto después de reiniciar la propia aplicación.