# Activación y estado de salud

> Qué participa en la adquisición en cada nivel del árbol, qué significan los puntos y los textos de estado, las fichas Todos/Correctos/Con problemas/Apagados, la barra de estado, el último error, y los verbos Reconectar, Actualizar y Actualizar todo.

Dos preguntas recorren toda la columna Comunicación, y las dos se responden igual en cada nivel: qué está participando en la adquisición, y qué está respondiendo en este momento. La primera es una decisión que usted toma con los verbos Activar y Desactivar; la segunda es lo que observa una vez por segundo un monitor siempre encendido y empuja a cada punto de la página, a la barra de estado y a los valores del Connector que leen Logic y los paneles de control.

## Qué participa {#what-takes-part}

La activación se decide por nivel, y un conmutador nunca reescribe al conmutador de abajo:

| Nivel | Verbos | Efecto cuando está apagado |
| --- | --- | --- |
| Línea serie | Activar / Desactivar en la barra de la línea | El bus se cierra para todos los dispositivos que hay en él; cada dispositivo conserva su propia elección de Activado y regresa exactamente como estaba cuando la línea se vuelva a activar. Activar se rechaza mientras la tupla de la línea no es válida. |
| Bróker | Activar / Desactivar en la barra del bróker o en su fila | La sesión MQTT se cierra para todos los dispositivos del bróker; cada dispositivo conserva su propia elección de Activado y regresa como estaba cuando el bróker se vuelva a activar. Activar se rechaza mientras el bróker no tiene host. |
| Dispositivo | Activar / Desactivar en la barra del dispositivo o en su fila | Toda la comunicación con el dispositivo se detiene y sus tags salen del espacio de direcciones en vivo; los tags conservan sus propios conmutadores. Encendido de forma predeterminada. |
| Tag | Activar / Desactivar en la barra del tag o en su fila | Ese único tag sale de la adquisición y del espacio de direcciones en vivo. Encendido de forma predeterminada. Un tag de Solo escritura nunca se sondea, esté activado o no. |

Cada Activar y cada Desactivar necesitan Configurar Connector y quedan en gris mientras una corrida retiene la estación o el runtime está detenido; un escaneo en el mismo driver pone en gris también los de la línea y los del dispositivo. Un dispositivo está **activado en operación** cuando está activado y, en un dispositivo de línea serie, su línea también lo está, y para MQTT, su bróker: eso es lo que miran el sondeo, la ficha Apagados y el monitor de salud. Un driver no tiene interruptor propio: se ofrecen todos los drivers que trae el paquete, y los niveles de abajo deciden lo que lee.

## El estado de salud de un dispositivo {#the-health-of-a-device}

El monitor deriva el estado de salud de un dispositivo de sus tags activados y legibles:

| Estado de salud | Punto | Significado |
| --- | --- | --- |
| **En línea** | verde | Todos los tags activados y legibles respondieron su última lectura. Un tag cuyo primer valor todavía no manda un punto de recarga OCPP o un sensor LoRaWAN (el tag Transaction de un conector antes de la primera recarga) no cuenta hasta que llega ese valor, y tampoco cuenta un tag cuyo primer valor todavía no llega en otros tres casos: un archivo que lee el driver File y que todavía no existe, un tag en escucha del driver Generic serial and TCP antes del primer mensaje que acepta su filtro, y un tag del driver Database que lee la fila más reciente de una tabla que todavía no tiene filas. El primer valor cuenta desde la última conexión del dispositivo: cuando un punto de recarga se vuelve a conectar después de una recarga, el tag Transaction del conector vuelve a no contar hasta la siguiente recarga. Un tag que ya tuvo un valor desde que su dispositivo se conectó cuenta como siempre, aunque esté esperando. |
| **Parcialmente en línea** | ámbar | Algunos respondieron y otros no. |
| **Sin conexión** | rojo | Ninguno respondió. |
| **Desactivado** | gris | El dispositivo está desactivado, o lo está su línea serie o su bróker. |
| **Aún sin determinar** | gris | No hay nada que juzgar: ningún tag activado; un dispositivo cuyo host aún no se ha indicado, al que la estación no intenta conectarse; o un dispositivo que la estación está volviendo a poner en el servidor en marcha después de un guardado o cuando el servidor arranca, hasta que uno de sus tags responde o uno pasa su intervalo de sondeo más 10 segundos sin responder; un sensor LoRaWAN conectado que todavía no manda ningún valor de sus tags; o un dispositivo cuyos tags legibles están todos esperando su primer valor, como se describe en En línea. |

El punto del propio dispositivo responde a Activar y Desactivar al instante, como sus tags, sin esperar al monitor: Desactivar muestra Desactivado de inmediato, y Activar muestra Aún sin determinar hasta que el monitor haya leído el dispositivo ya encendido. Activar o desactivar su línea serie le hace lo mismo, y los puntos de su carpeta, de su driver y de la carpeta Drivers cambian en el mismo momento.

Un punto de recarga OCPP toma su estado de salud de su conexión al sistema central de esta estación y no del silencio de sus tags, como un concentrador de radio LoRaWAN lo toma de la de su puerta de enlace: En línea mientras está conectado, mande lo que haya mandado hasta ahora (Parcialmente en línea cuando fallan algunos de los tags que mandó), Sin conexión cuando no se ha conectado desde que se abrió la estación o después de caerse, y Aún sin determinar solo durante hasta diez segundos después de que la estación lo volvió a poner. [OCPP](driver-ocpp#the-charge-points-health) tiene la tabla completa.

Un dispositivo cuyos tags activados son todos de Solo escritura no tiene ninguna lectura que juzgar y toma en su lugar el estado de conexión del transporte: En línea mientras está conectado, Sin conexión mientras no lo está, y Aún sin determinar antes de que Connector lo haya intentado. Un valor fuera de rango con una falla de límite es una condición de proceso, no un problema de conexión: pone el punto del tag en ámbar pero nunca cuenta al dispositivo como sin conexión. Un valor sustituto, igualmente, mantiene el tag legible mientras el dispositivo sigue reportándose sin conexión. El servidor OPC UA integrado no forma parte de este estado de salud: mientras está detenido, Connector sigue leyendo y cada tag conserva su valor en vivo, y su propio estado está en [Estado](connector-opcua-server). Solo un Connector que no está en marcha para nada deja todos los tags como un hueco, y la barra de estado dice entonces "Connector: detenido".

## El punto del tag {#the-tags-dot}

El punto de un tag es el mismo en el árbol y en la página del tag. Un tag que la estación no lee queda gris, muestre lo que haya mostrado por última vez: un tag desactivado, y cada tag de un dispositivo que está desactivado, que está bajo una línea desactivada o cuyo host aún no se ha indicado, así que Desactivar pone en gris los tags del dispositivo al instante. En un tag que la estación lee, el punto es ámbar cuando el valor es un sustituto o cuando la etapa Límites levantó una falla, porque un número legible no es lo mismo que una medición, y ámbar cuando la lectura enmudeció; verde mientras el tag tiene un valor; gris en los demás casos. Una lectura enmudece cuando no llega ninguna nueva durante el intervalo de sondeo del tag más 10 segundos, como cuando un dispositivo acepta la conexión y luego deja de responder. Entonces cuenta como una lectura fallida: el tag muestra lo que presenta su política para [un dispositivo que no respondió](connector-value-pipeline#the-device-did-not-answer), sin valor y con calidad mala de forma predeterminada, fechado por la marca de tiempo de origen de la última lectura que llegó, y cuenta para el estado de salud de su dispositivo como sin respuesta. La fila del tag lleva además una marca de error roja cuando falló la última lectura, con el mensaje como información emergente.

## Los estados de una línea serie {#serial-line-states}

Una línea serie, sea cual sea su driver, reporta el puerto físico aparte de sus dispositivos, en la fila del árbol, en la tabla de líneas del driver y en el encabezado de la página de la línea:

| Estado | Punto | Significado |
| --- | --- | --- |
| **Apagada** | gris | La línea está desactivada. |
| **En reposo** | gris | Activada, pero sin ningún dispositivo activado: el puerto no está abierto. |
| **Conectando…** | ámbar | Hay un dispositivo activado y el puerto se está abriendo, o se está reabriendo después de una falla. |
| **En línea** | verde | El puerto está abierto y sirviendo. |
| **Falla del puerto** | rojo | El puerto no se pudo abrir o falló; el motivo se imprime bajo el encabezado en el idioma de la estación (otro programa tiene el puerto, el puerto no existe, el puerto falló) y, con las palabras del sistema operativo, como la información emergente de error de la fila, y el diario técnico registra la falla una vez y la recuperación una vez. |

El texto de resumen de la línea agrega qué están haciendo sus dispositivos: "En línea · 2/2 dispositivos en línea", "En línea · 1 en línea · 1 con problemas", "En reposo · sin dispositivos activados". Una línea puede estar En línea y contener aun así un dispositivo por el que nadie responde. Un bróker MQTT informa su sesión de la misma manera, aparte de sus dispositivos; sus estados están en [MQTT](driver-mqtt#broker-states).

## Cómo se resumen los puntos {#how-the-dots-roll-up}

Las carpetas, las líneas serie, los drivers y la carpeta Drivers aplican todos una misma regla a sus hijos: solo cuentan los hijos En línea, Parcialmente en línea y Sin conexión; Desactivado y Aún sin determinar son neutros y nunca ponen a un padre en ámbar ni en rojo. De los hijos que cuentan, todos En línea da En línea, cualquier En línea o Parcialmente en línea entre otros da Parcialmente en línea, todos Sin conexión da Sin conexión, y ningún hijo que cuente da Aún sin determinar. Una carpeta resume todos los dispositivos que hay dentro de ella, subcarpetas incluidas; un driver Modbus RTU resume sus líneas, un driver Generic serial and TCP o SCPI instruments sus líneas y sus dispositivos fuera de línea, y un driver MQTT sus brókeres; la carpeta Drivers resume todos los drivers que lleva. Con un driver En línea y otro con todos sus dispositivos desactivados, la carpeta Drivers lee En línea, no ámbar. Las dos filas de la carpeta [Servidores](connector-servers) quedan fuera de este resumen: cada punto solo dice cómo está su servidor, y ninguno mueve el punto de la carpeta Drivers ni la barra de estado.

## Las fichas Todos / Correctos / Con problemas / Apagados {#the-all--ok--issues--off-chips}

Las fichas que hay arriba del árbol reparten cada fila según esos mismos estados: **Correctos** es un dispositivo o una línea activados en operación que están En línea o todavía sin nada que juzgar, incluido un dispositivo cuyo host aún no se ha indicado, y un tag activado que lee una medición dentro de sus límites; **Con problemas** es un dispositivo o una línea activados que están Sin conexión o Parcialmente en línea, y un tag activado sin valor, con un valor sustituto, con un valor fuera de sus límites o con una lectura que enmudeció, en un dispositivo que la estación está leyendo; **Apagados** es un dispositivo, una línea o un tag desactivados, incluido un dispositivo bajo una línea desactivada. Un tag solo se lee mientras se lee su dispositivo: cada tag de un dispositivo apagado queda en Apagados junto con él, y cada tag activado de un dispositivo cuyo host aún no se ha indicado queda en Correctos junto con él, muestre lo que muestre. Un tag activado sin valor que no cuenta para el estado de salud de su dispositivo porque su primer valor todavía no llega (ver En línea) también queda en Correctos. Los dos servidores se reparten según su propio estado: **Correctos** mientras está encendido y no falló, **Con problemas** mientras está encendido pero no puede iniciarse, **Apagados** mientras está apagado. Una fila de driver y las dos carpetas se muestran cuando algo de abajo pasa el filtro; la fila seleccionada siempre queda visible. Las fichas se describen junto con el resto de la columna en [Connector](connector#search-and-the-state-chips).

## La barra de estado {#the-status-bar}

La marca de Connector y el texto de la izquierda de la barra de estado de la ventana son ese mismo monitor, plegado a una sola línea, con la marca teñida de verde, ámbar, rojo o gris como un punto del árbol: "Connector: en línea" cuando ningún dispositivo está Sin conexión ni Parcialmente en línea; en los demás casos, el dispositivo peor parado por su nombre, "Connector: Furnace sin comunicación" para Sin conexión o "Connector: Furnace inestable" para Parcialmente en línea; "Connector: detenido" mientras el propio Connector no está en marcha. Habla solo por Connector: el servidor OPC UA integrado que publica los dispositivos tiene su propio estado en [Estado](connector-opcua-server), y Connector lee mientras está detenido. El icono del área de notificación dice la misma línea. Hacer clic en el indicador abre la página Connector. El resto de la barra de estado está en [La ventana](app-window).

## Último error {#last-error}

Cada nivel del árbol dice el error que es suyo, nombra los elementos justo debajo que tienen uno y apunta hacia arriba cuando el error viene de ahí, igual con cualquier driver. Un elemento con un error propio lleva una marca roja después de su nombre, en su fila del árbol y en cada tabla que lo lista, con el motivo como información emergente; ese motivo se queda en el elemento y en su propia página, y el diario técnico guarda cada línea completa.

| Nivel | Su propio error | El nivel de abajo | Un error de arriba |
| --- | --- | --- | --- |
| Driver | Un driver que el paquete no trae, o una biblioteca que esta computadora no tiene, como aviso en su página | Sus líneas serie y brókeres con error, y después sus dispositivos con error, por nombre: "2 dispositivos con error: Boiler, Chiller" | Ninguno |
| Línea serie, bróker MQTT | El puerto que no abre, o el bróker que rechaza la estación, en rojo bajo el encabezado en el idioma de la estación (abajo) | Sus dispositivos con error, por nombre | Ninguno |
| Dispositivo | No se conecta, o la conexión es rechazada, en rojo bajo el encabezado y en la columna **Último error** de la tabla de dispositivos del driver, ambos en el idioma de la estación (ver abajo), con la línea completa como información emergente de la celda | Sus tags con error, por nombre: "3 tags con error: C3, Opt_Int, T5", y los demás contados después de tres nombres ("+2") | En una línea serie o un bróker con error, el dispositivo no lleva marca y su página dice "Este dispositivo pasa por la línea serie Bench bus, que tiene un error. La página de la línea dice por qué." |
| Tag | Por qué falló su lectura o su escritura, en rojo bajo el encabezado | Ninguno: el tag es el último nivel | Mientras su dispositivo no está conectado, el tag no lleva marca y su página dice "Este tag pasa por el dispositivo Furnace, que no está conectado. La página del dispositivo dice por qué." |

El error propio de un dispositivo se limpia cuando el dispositivo se reconecta, En línea o Parcialmente en línea: un tag que sigue fallando conserva entonces su propio error en su fila y en su página, y la fila del dispositivo deja de llevar el error de conexión; uno escrito mientras el dispositivo seguía En línea se limpia cuando cada tag que la estación lee de él ha recibido una lectura posterior a la entrada; un tag que todavía espera su primer valor, que En línea no cuenta, tampoco cuenta aquí. El de un tag se va en cuanto llega una lectura de ese tag posterior a la entrada, haya cambiado o no el estado del dispositivo, y el tag sale con él de la lista de su dispositivo. El error de lectura de un tag también se va cuando una lectura posterior encuentra al tag solo esperando su primer valor desde que su dispositivo se conectó: cuando un punto de recarga se vuelve a conectar sin una recarga en curso, el tag Transaction del conector vuelve a esperar, como antes de la primera recarga, sin error. Un dispositivo cuyo driver el paquete no trae muestra en ese lugar el aviso "Este paquete no incluye el driver.", porque no hay ninguna falla que investigar; un dispositivo OPC UA que espera su certificado muestra "Esperando la aprobación del certificado". Un dispositivo activado todavía sin host muestra "Host aún sin indicar": no se ha intentado nada, así que no hay ningún error que mostrar, y el error que dejó un host anterior se limpia. El diario técnico completo está en la página Eventos.

La línea roja bajo el encabezado de un dispositivo, de un tag, de una línea serie o de un bróker, la celda **Último error** del dispositivo y la respuesta de una escritura en la página del tag dicen lo que falló en el idioma de la estación, sin la apertura de la línea del diario técnico, sin la clase de la excepción, sin el inglés del sistema operativo y sin lo que la estación hace después, en cada intento, también cuando la línea es una que el driver escribió por su cuenta; la información emergente de la celda, la de la marca del árbol y la página Eventos guardan la línea completa:

| Lo que falló | Lo que dice la línea roja |
| --- | --- |
| Una unidad Modbus responde a la lectura con una excepción | Que el dispositivo rechazó la lectura, la clase como la nombra la lista **Clase de registro**, la dirección como la imprime el manual del dispositivo (el registro de entrada 0 es 30001) y el código, con lo que significa en los códigos 1 a 4, 10 y 11 (código 2: dirección no válida) |
| El puerto rechaza la conexión | "El dispositivo no acepta conexiones en el puerto 502: nada atiende en ese puerto, o un firewall la rechaza." |
| El host responde al ping, el puerto no dice nada | "10.0.0.5 responde al ping, pero el puerto 502 no: probablemente un firewall bloquea ese puerto, en esta estación, en el dispositivo o en la red entre ambos. Permita TCP 502 desde esta estación hacia 10.0.0.5." |
| Ni el puerto ni el ping responden | "10.0.0.5 no responde, ni siquiera al ping: verifique que el dispositivo esté encendido y que su host sea correcto. Un firewall que también bloquea el ping se ve igual." |
| El dispositivo no responde a tiempo | "El dispositivo no respondió a tiempo." |
| El nombre del host no se resuelve | "El nombre plc-7 no corresponde a ninguna dirección de red: verifique el host del dispositivo." |
| El driver falló sin palabras propias | "El dispositivo falló sin dar un motivo. La página Eventos guarda el detalle técnico." |
| Una unidad Modbus responde a la escritura con una excepción | Que el dispositivo rechazó la escritura, dicho como una lectura rechazada |
| La conexión con el dispositivo se corta | "Se perdió la conexión con el dispositivo." |
| Ninguna ruta de red lleva al host | "Ninguna ruta de red lleva de esta estación al dispositivo: verifique su host y la red intermedia." |
| Un servicio web responde con un estado fuera del rango de éxito | "El dispositivo respondió con el estado HTTP 503.", con lo que significa el estado después en los códigos 401, 403 y 404 (401: no se aceptó el nombre de usuario o la contraseña) |
| El dispositivo responde a una lectura sin un valor, y su driver no dice por qué | "El dispositivo respondió a la lectura sin un valor." |
| La respuesta del dispositivo no es un valor del tipo del tag | "La respuesta del dispositivo no se puede leer como un valor del tipo del tag." |
| Otro programa tiene el puerto serie, o el puerto no existe | "El puerto serie COM3 lo está usando otro programa, o Windows no deja que la estación lo abra." o "El puerto serie COM3 no existe en esta computadora: verifique el nombre del puerto y que su adaptador esté conectado." |
| El bróker MQTT rechaza la estación | Lo que rechazó y dónde se corrige: "El bróker rechazó el nombre de usuario o la contraseña: verifique Nombre de usuario y Contraseña en la tarjeta Conexión con el bróker." |
| La estación rechaza el certificado que presenta el equipo o el bróker | "El certificado de este equipo (9F2C44A01B7E33D0) espera su aprobación en Acceso a los equipos, en la página del driver Redfish. La lectura empieza en cuanto lo apruebe.", y del mismo modo un certificado bloqueado en esta estación, fuera de sus fechas de validez o que no supera una verificación que ninguna aprobación sustituye |
| Una CPU Siemens rechaza la conexión | "La CPU aceptó la conexión TCP y rechazó la conexión S7: verifique Bastidor y Ranura del dispositivo.", y del mismo modo una contraseña rechazada, las bibliotecas de OpenSSL que faltan junto al driver o una CPU que no responde al acceso por nombre |
| La lectura del dispositivo se detuvo inesperadamente | "La lectura de este dispositivo se detuvo inesperadamente, así que sus tags no tienen valor. Al reiniciar el programa se vuelve a leer; la página Eventos guarda el detalle técnico." |
| Cualquier otra falla | Las palabras del propio driver, que dicen por qué |

Un comando de dispositivo, un **Reconectar** y un escaneo que fallan dicen lo que encontraron con las mismas palabras, y lo mismo hacen los rechazos de la propia estación (un dispositivo que no está conectado, un dispositivo que todavía no está en la configuración en ejecución, un comando todavía no guardado); el agente y el diario técnico conservan la línea en inglés.

Cuando la conexión TCP de un dispositivo, o de un bróker MQTT, no se abre, la estación revisa el puerto una segunda vez y hace ping al host al mismo tiempo, y la línea del diario técnico lleva una frase más después de la causa del propio driver, en inglés como la causa, que la línea roja dice en el idioma de la estación (ver arriba). Un equipo encendido con el puerto cerrado rechaza al instante, así que un puerto que se queda callado mientras su host responde está filtrado en el camino:

| Lo que encuentra la estación | La frase después de la causa |
| --- | --- |
| El host responde al ping, el puerto no dice nada | "10.0.0.5 answers ping, but TCP port 502 does not: a firewall probably blocks that port, on this station, on the device or on the network between them. Allow TCP 502 from this station to 10.0.0.5." |
| Ni el puerto ni el ping responden | "10.0.0.5 does not answer ping either: check that the device is on and that the address is right. A firewall that also blocks ping looks the same." |
| El puerto rechaza | "10.0.0.5 refuses connections on TCP port 502: nothing serves on that port there, or a firewall refuses it." |

El puerto es el que abre el protocolo del dispositivo: el propio puerto del dispositivo en la mayoría de los drivers, 102 en Siemens, 44818 en Rockwell y en un Omron NJ/NX, 48898 en Beckhoff ADS. La frase de un bróker habla de la computadora del bróker, y un bróker que respondió y rechazó la estación no lleva frase. No se agrega nada donde el dispositivo no tiene un puerto propio que revisar: una línea serie, UDP, VISA, un archivo SQLite o un origen ODBC, una instancia de SQL Server que localiza el servicio SQL Server Browser, una solicitud que lleva el proxy de la computadora. Las frases no nombran a nadie: quien abre el puerto, en esta estación, en el equipo o en la red de la planta, lee las mismas palabras.

## Reconectar, Actualizar y Actualizar todo {#reconnect-refresh-and-refresh-all}

| Comando | Dónde | Qué hace |
| --- | --- | --- |
| **Reconectar** | La barra y el menú del clic derecho de un dispositivo | Cierra la conexión de ese dispositivo y la vuelve a abrir, sin tocar ningún otro dispositivo y sin recargar nada. El mensaje espera al driver: "Se reconectó 'Furnace'.", o "No se pudo reconectar 'Furnace':" con la causa tal como la dice la línea roja del dispositivo. |
| **Actualizar** | La barra y el menú del clic derecho de un driver | Vuelve a leer la configuración de la base de datos y reconstruye todo el árbol. El servidor en marcha se deja como está. La columna conserva su lugar: el driver sigue seleccionado con su página abierta, y lo desplegado sigue desplegado. "Dispositivos actualizados." |
| **Actualizar todo** | La barra del catálogo de la carpeta Drivers | Lo mismo que Actualizar, y la carpeta Drivers sigue seleccionada con el catálogo abierto. |

Actualizar y Actualizar todo solo leen, así que se dibujan para todos los roles; Reconectar cierra y vuelve a abrir una conexión, así que a un rol sin Configurar Connector no se le dibuja en absoluto. Los tres se ponen en gris mientras una corrida retiene la estación o el runtime está detenido, y Reconectar y Actualizar se ponen en gris además mientras corre un escaneo o un emparejamiento. Reconectar también se pone en gris en un dispositivo que todavía espera su dirección (el host, el dispositivo NI-DAQmx, la carpeta o la base de datos), que no tiene ninguna conexión que reabrir; su información emergente nombra lo que le falta a su driver. Ninguna de las dos actualizaciones hace falta después de una edición: cada guardado concilia por sí mismo el dispositivo cambiado dentro del servidor en marcha, y un dispositivo inalcanzable se reintenta en segundo plano hasta que responde, y sus tags se leen como huecos mientras tanto. Reconectar es lo que acorta esa espera: pregunta ahora en lugar de dejar el dispositivo al siguiente intento automático, y reporta si el dispositivo respondió. Los límites que levantan una falla de límite son parte de [la cadena de conversión](connector-value-pipeline).
