Descubrimiento
Dejar que un driver escanee en busca de dispositivos o de puntos, qué necesita y qué devuelve cada escaneo, el comportamiento del progreso y de la cancelación, agregar los resultados, y emparejar un dispositivo Matter por Bluetooth.
Para los drivers cuyo protocolo admite un escaneo de verdad, Descubrir encuentra los dispositivos o los puntos por usted en lugar de obligarlo a escribirlos. Vive en la barra de comandos de un nodo de driver (y, para Modbus RTU, en la tarjeta Descubrir unidades de la página de una línea serie), mientras que todo lo que toma el escaneo vive en la tarjeta Alcance del escaneo de la página del driver: la barra lleva el comando, la tarjeta lleva su alcance. Todo esto necesita Configurar Connector: a un rol sin ese bit no se le dibujan ni la tarjeta de alcance ni el botón. Un escaneo se rechaza mientras una corrida retiene la estación o el runtime está detenido. Cuando un escaneo no devuelve nada, eso es un resultado del escaneo, no una función que falta: el botón aparece solo donde un escaneo puede producir resultados.
Qué drivers escanean
| Driver | Qué hace el escaneo | Necesita |
|---|---|---|
| Simulated | Lista su catálogo de modelos de dispositivo simulados, una instancia lista para usar de cada uno, con sus canales. | Nada. |
| Modbus TCP | Envía Read Device Identification (función 43/14) a hosts y ID de unidad explícitos; una excepción Modbus validada prueba que hay una unidad sin nombrarla. Devuelve el punto de conexión y ningún tag. | La tarjeta Alcance del escaneo. |
| Modbus RTU | Sondea secuencialmente un rango inclusivo de ID de unidad sobre la tupla guardada de una línea, con la misma petición y sin ningún acceso a registros. | Una línea, desactivada o sin dispositivos activados, y un rango de ID de unidad. |
| OPC UA | Consulta a un servidor por los puntos de conexión que anuncia, y luego recorre el espacio de direcciones de cada punto de conexión en busca de puntos. | La dirección del servidor, en la tarjeta Alcance del escaneo de la página del driver ("Dirección del servidor OPC UA, por ejemplo opc.tcp://plc-host:4840"). Sin ella, o con una dirección que no lo es, Descubrir se pone en gris y dice qué se espera. |
| Rockwell EtherNet/IP | Difunde ListIdentity y recorre los tags de cada controlador. | Nada. |
| BACnet | Difunde Who-Is y escucha las respuestas I-Am, y cada dispositivo aparece en cuanto contesta. Devuelve la dirección, el puerto y la instancia de dispositivo, y ningún tag. | Nada. |
| Redfish | Lee la dirección de servicio que se le da y recorre su primer sistema, su primer manager y su primer chasis. Devuelve el servicio y sus puntos. | La tarjeta Alcance del escaneo. |
| AVEVA PI | Recorre el elemento AF que se le da y todo lo que hay debajo. Devuelve el servicio y un punto por atributo. | La tarjeta Alcance del escaneo. |
| OCPP | Lista los puntos de recarga conectados a esta estación en este momento. | Nada. |
| Matter | Lista los nodos ya puestos en marcha en el Fabric de esta estación. | Nada. |
Siemens S7, Beckhoff ADS, Mitsubishi MC, IEC 61850, LoRaWAN y HTTP no tienen escaneo y no muestran botón. El botón aparece solo una vez que el servidor integrado está en marcha, porque es el registro de drivers del servidor el que contesta si un escaneo puede correr, y aparece solo para los drivers que instala esta versión: si el registro contesta con un ensamblado que la aplicación no reconoce, el botón se queda fuera y la página Eventos registra que el driver instalado no es el que trae esta versión.
Modbus TCP: la tarjeta Alcance del escaneo
La tarjeta aparece en la página del driver Modbus TCP: "Identificación del dispositivo en solo lectura; los registros se configuran después de agregarlo."
| Campo | Valores / valor inicial | Efecto |
|---|---|---|
| Host IPv4 o CIDR | Una dirección, o un CIDR de /24 a /32; la aplicación nunca deduce la subred local. | Todas las direcciones de host del rango, excluidas la de red y la de difusión. |
| Puerto | De 1 a 65535; 502. | El puerto al que se marca en cada host. |
| ID de unidad | Valores, listas separadas por comas o rangos ascendentes, de 0 a 255 ("1, 3, 8-16"); "1". | A cada host se le pregunta por cada id. |
| Intervalo mínimo entre transacciones (ms) | De 0 a 1000; 0. | Silencio entre sondeos completados en el mismo host; los hosts se cadencian por separado. Es local al escaneo: no se escribe en los dispositivos que usted agregue. |
La línea que va debajo de los campos es el presupuesto: "2 direcciones × 3 ID de unidad = 6 sondeos · límite 256", con "· 100 ms de silencio por host." cuando está puesto. Un escaneo puede enviar como máximo 256 sondeos; pasado el presupuesto la línea se pone roja ("Este escaneo enviaría 512 sondeos; reduzca el rango de red o de ID de unidad a 256 o menos.") y Descubrir se pone en gris. Una entrada mala se nombra igual ("'10.0.0' no es una dirección IPv4 válida de cuatro octetos.", "El prefijo CIDR debe estar entre /24 y /32.", "Ingrese al menos un id de unidad (0-255).", "El rango de ID de unidad '9-3' debe ser ascendente."). Cambiar cualquier campo del alcance descarta los resultados del escaneo anterior, porque describían otro alcance. Se escanean como máximo cuatro hosts a la vez, con una conexión por host.
Modbus RTU
El escaneo está en la página de la línea, no en la del driver: ID de unidad inicial e ID de unidad final (de 1 a 247, ascendentes, de 1 a 32 de forma predeterminada) y su propio botón Descubrir, con una estimación del peor caso ("32 sondeos · hasta ~32.1 s, incluidos 4.011 ms de silencio antes de cada sondeo."). El escaneo abre el puerto una vez con los ajustes guardados de la línea, sondea cada unidad por turno, y rechaza una línea activa en lugar de interrumpirla: "Esta línea está en uso. Desactívela antes del descubrimiento; Ganter Lab no interrumpirá ni reactivará el bus automáticamente." Una edición pendiente de la línea se guarda antes de que arranque el escaneo; si no se puede, el escaneo no arranca ("El descubrimiento no se inició porque no se pudo guardar la edición de la línea serie."). La página de Líneas serie cubre el resto de esa tarjeta.
Redfish y AVEVA PI: el servicio que lee el escaneo
Ni un servicio Redfish ni un PI System se anuncian en una red que esta estación pueda escuchar, así que esos dos escaneos leen el único servicio al que usted los apunte, en la tarjeta Alcance del escaneo de la página del driver. Redfish toma la dirección del servicio (https://bmc-host, o https://bmc-host:8443 donde conteste en otro lado) y siempre la lee por HTTPS, porque las credenciales del dispositivo viajan en cada petición; una dirección que pide el transporte sin cifrar se rechaza ahí mismo donde se escribe. AVEVA PI toma la dirección del servicio y, después de un #, el elemento AF desde el que empieza el recorrido: https://pi-host/piwebapi#\\AF-SRV\Plant\Line 3. Sin ese elemento no hay nada que recorrer, así que Descubrir se pone en gris y dice qué se espera.
Los dos escaneos leen el servicio sin credenciales, porque corren antes de que exista el dispositivo que las tendría. Por eso un servicio que autentica cada petición no contesta nada y el escaneo no encuentra nada: agregue ese servicio a mano, y sus puntos con él.
Correr un escaneo
Mientras el escaneo corre, la página del driver imprime una línea de estado y el Descubrir de la barra se convierte en Cancelar. El estado viene de dos etapas independientes, el descubrimiento de puntos de conexión y el recorrido de canales: "Escaneando los puntos de conexión…", "Inspeccionando el punto de conexión 2…", "Leyendo los canales de opc.tcp://plc:4840…", y luego "Se encontraron 3 dispositivos."; los drivers que reportan su propio progreso dicen "Consultando los puntos de conexión anunciados por el servidor OPC UA …" y "Se encontraron 2 puntos de conexión.", "Buscando controladores Rockwell…", "Escaneando dispositivos BACnet…", "Inspeccionando el nodo Matter puesto en marcha 1 de 2…", "Escaneando 2 direcciones × 3 ID de unidad…" o "Sondeando la unidad 5 (5 de 32)…". Un escaneo que se detiene por un error del driver conserva lo que encontró y lo dice: "El escaneo se detuvo con un error después de encontrar 1 dispositivo. La lista puede estar incompleta." Un punto de conexión cuyos canales no se pudieron leer se lista igual, con cero tags.
El escaneo se apropia del driver mientras corre: usted no puede seleccionar otro nodo ("Cancele el descubrimiento antes de salir de este driver."), ni agregar un dispositivo o una línea, ni activar o desactivar líneas, ni usar las acciones de fila hasta que termine. Los resultados pertenecen a la ventana que arrancó el escaneo: otra pestaña del navegador en la misma estación no los ve.
Cancelar
Cancelar ("Cancelando…" una vez presionado) detiene las dos etapas. Los candidatos preparados por completo antes de la cancelación se quedan en la lista; el punto de conexión cuyos canales todavía se estaban leyendo se descarta. El estado dice "Descubrimiento cancelado." y el registro de acciones "Descubrimiento cancelado para OPC UA; se conservan 2 resultado(s) completado(s)." El escaneo sigue ocupado hasta que el socket, el cliente o la sesión temporales del driver se hayan cerrado; después de dos segundos el estado dice "Esperando a que el driver libere sus recursos de descubrimiento…" en lugar de fingir que el escaneo ya se detuvo, porque un driver no siempre suelta en el instante en que se le pide.
Los resultados
La tarjeta Dispositivos descubiertos (en una línea, Unidades descubiertas) lista una tarjeta por candidato: un nombre editable, el punto de conexión y "2 de 5 tags seleccionados". Debajo, una cuadrícula compacta de los tags candidatos con una marca Agregar (encendida de forma predeterminada), Nombre del tag, Tipo y Acceso; sin ninguno, "No se reportó ningún tag. Agregue el dispositivo para configurar sus tags en el editor." Nada se guarda hasta que usted presione Agregar dispositivo en una tarjeta ("Agregando…" mientras corre): el dispositivo se crea con un nombre único en el driver y exactamente los tags marcados, la tarjeta sale de la lista, la página se abre en el dispositivo nuevo, y el registro de acciones dice "Se agregó 'Pump' con 3 tag(s)." Los tags descubiertos llegan de solo lectura o escribibles según los reportó el driver, con su tipo y con la cadena de conversión predeterminada; nada más se deduce.
Un candidato que coincide con un dispositivo que usted ya tiene se marca como Ya configurado y ofrece Abrir en lugar de Agregar, así que un escaneo nunca crea un duplicado por accidente. Solo se comparan identidades estables: una unidad Modbus RTU en la misma línea, y un id de nodo Matter. Los demás drivers no comparan nada, porque un punto de conexión alcanzable no es prueba de que sea el mismo equipo.
Descartar limpia la lista, y espera al escaneo: mientras hay uno en marcha queda en gris, porque limpiar la lista a media corrida también lo cancela y tira todo lo que ya había contestado. Seleccionar otro driver, o cambiar el alcance, también la limpia. Mientras corre un escaneo, eliminar un dispositivo o un tag y mover un dispositivo a una carpeta se ponen en gris con el mismo motivo: el escaneo retiene el driver, y el comando habría fallado después de que usted lo confirmara. En Modbus RTU el ID de unidad es una columna propia, y un id ya configurado en la línea se rechaza al agregarlo: "La unidad 5 ya está configurada en 'Line 1'."
Emparejar un dispositivo Matter
Matter pone en marcha el dispositivo físico por Bluetooth antes de que exista aquí, así que el primer verbo del driver Matter es Emparejar dispositivo, no Agregar dispositivo, y abre un formulario en la página del driver (el menú Nuevo… y el menú del clic derecho del driver ofrecen lo mismo). El emparejamiento necesita Configurar Connector, un radio Bluetooth LE utilizable en esta computadora, y una red Thread existente cuyo conjunto de datos usted tenga permiso de obtener. El formulario lo dice: "Ponga el dispositivo físico en modo de emparejamiento antes de continuar. El emparejamiento usa el Bluetooth de esta computadora."
| Campo | Qué es |
|---|---|
| Nombre del dispositivo | El nombre editable que tendrá el dispositivo en el Connector; "Dispositivo Matter" al inicio, con "Luz de la cocina" como texto de ejemplo. |
| Código de configuración Matter | El código manual oficial de 11 o 21 dígitos impreso en el dispositivo, o la carga QR completa que empieza por MT:. Se oculta al escribirlo; Mostrar el código de configuración lo revela. |
| Conjunto de datos operativo Thread | El conjunto de datos activo completo de la red Thread, en hexadecimal, del administrador de la red o del Border Router; "Ganter Lab no puede inventar credenciales de una red existente." Se oculta al escribirlo; Mostrar el conjunto de datos lo revela. |
Emparejar dispositivo se habilita en cuanto los tres están llenos y la estación acepta modificaciones. El formulario recorre entonces cinco pasos, Validar, Buscar, Emparejar, Unirse a Thread y Guardar, con una línea de estado debajo: "Validando el código de configuración y el conjunto de datos Thread…", "Buscando el dispositivo por Bluetooth…", "Autenticando y emparejando el dispositivo…", "Enviando la configuración de la red Thread existente…", "Esperando a que el dispositivo se una a la red Thread…", "Guardando el nodo puesto en marcha en el Fabric local…", "Emparejamiento completado." Cancelar se acepta solo hasta que se selecciona el anuncio que coincide ("Detener antes de que se modifique el dispositivo"); de ahí en adelante el botón dice "Terminando de forma segura…", porque el dispositivo ya se modificó y la estación tiene que registrar el nodo aunque usted se vaya. Cerrar descarta el formulario mientras no corre nada.
Cuando sale bien, el dispositivo se crea con el id de nodo como su única identidad (el código de configuración y el conjunto de datos nunca se guardan, ni se registran, ni se vuelven a mostrar), la página se abre en él, y el registro de acciones dice "Se emparejó el dispositivo Matter 'Luz de la cocina'." Si el nodo se puso en marcha pero su dispositivo no se pudo crear, el registro de acciones lo dice y Descubrir es el camino de recuperación. Las fallas se dicen sin rodeos y el formulario se queda abierto para reintentar: un código o un conjunto de datos no válidos, ningún adaptador Bluetooth utilizable, Bluetooth denegado o apagado, ningún dispositivo que coincida ("Póngalo en modo de emparejamiento, manténgalo cerca e inténtelo de nuevo."), un código de configuración rechazado, un dispositivo que no se unió a la red Thread (su nodo se queda en el Fabric y se puede recuperar con Descubrir), un Fabric que no se pudo guardar (cuando el dispositivo ya estaba puesto en marcha: "No reinicie el dispositivo hasta que se resuelva el problema de almacenamiento del Fabric."), u otro emparejamiento ya en marcha. Corre un emparejamiento a la vez; mientras corre no se puede salir del driver ("Espere a que termine el emparejamiento Matter antes de salir de este driver.").
Lo que el descubrimiento no hace
Un escaneo nunca guarda nada por sí solo, nunca cambia un dispositivo existente y nunca se vuelve a correr por su cuenta. No deduce subredes, ni mapas de registros, ni ajustes serie, no activa ni desactiva una línea, y no quita del equipo los candidatos descartados. Se rechaza para un driver que el paquete no trae. Lo que contienen los resultados de cada driver está en la página de ese driver, bajo Drivers.