Depuración de Node-RED
Depuración de Node-RED - Guía de Mantenimiento
Esta guía proporciona procedimientos completos para la solución de problemas de Node-RED en el sistema de cámara OV80i. Úsela para reparaciones en campo, depuración de problemas en producción y mantenimiento preventivo de los flujos de inspección.
⚠️ Seguridad Primero: Siempre notifique a producción antes de realizar cambios en sistemas de inspección activos. Cree copias de seguridad antes de modificar flujos.
Procedimientos de Reparación Rápida de Emergencia
Sistema Crítico Caído - Acciones Inmediatas
Paso | Acción | Tiempo | Resultado |
---|---|---|---|
1 | Verificar estado del LED de alimentación de la cámara | 30 seg | Confirmar hardware OK |
2 | Acceder a Node-RED del OV80i: http://camera-ip/recipes/<recipe-number>/ioblock | 1 min | Confirmar acceso al editor |
3 | Buscar indicadores de error (triángulo rojo) | 1 min | Identificar nodos con fallas |
4 | Hacer clic en botón Deploy (Despliegue Completo) | 30 seg | Reiniciar todos los flujos |
5 | Probar disparo básico de inspección | 2 min | Verificar sistema operativo |
Recuperación del Sistema (Si el Editor No Carga)
Las cámaras OV80i no cuentan con modo seguro; el reinicio es el método principal de recuperación:
- Ciclo de energía de la cámara (desconectar alimentación por 10 segundos)
- Esperar arranque completo (los 4 LEDs estables - 2-3 minutos)
- Acceder a Node-RED de la receta activa vía URL específica
- Verificar integridad del flujo y realizar correcciones necesarias
- Desplegar cambios para restaurar operación normal
💡 Formato de URL: http://<camera-ip>/recipes/<recipe-number>/ioblock
Ejemplos:
http://192.168.0.101/recipes/20/ioblock
http://192.168.0.105/recipes/1/ioblock
Proceso Sistemático de Depuración
Paso 1: Identificar el Alcance del Problema
Preguntas para Evaluación Rápida
Pregunta | Si la respuesta es SÍ | Si la respuesta es NO |
---|---|---|
¿Puede acceder a la interfaz Node-RED del OV80i? | Continuar al Paso 2 | Verificar estado de red/cámara |
¿Se ven los flujos en el editor? | Continuar al Paso 2 | Realizar ciclo de energía y reintentar |
¿Ve triángulos de error en los nodos? | Enfocarse primero en esos nodos | Verificar ejecución del flujo |
¿Se dispara la inspección? | Revisar salidas de nodos individuales | Verificar entradas de disparo |
💡 URL de acceso: Use el formato específico de receta: http://<camera-ip>/recipes/<recipe-number>/ioblock
Paso 2: Habilitar Monitoreo de Depuración
Añadir Nodos Debug para Solución de Problemas
- Colocar nodos Debug en puntos clave de flujos problemáticos:
- Después de entradas de disparo
- Antes y después de nodos lógicos
- En salidas finales
- Configurar nodos Debug para máxima información:
- Salida: Objeto completo del mensaje
- Destino: Barra lateral de Debug
- Nombre: Nombres descriptivos (ej. "Después de Lógica de Clasificación")
- Habilitar todos los nodos Debug haciendo clic en sus botones en el editor
Gestión de la Barra Lateral de Debug
Acceso a la Barra Lateral de Debug:
- Hacer clic en la pestaña Debug (icono de insecto) en el panel derecho
- Limpiar mensajes antiguos usando el icono de bote de basura
- Filtrar mensajes si hay demasiados nodos activos
Interpretación de Mensajes Debug:
- Marca de tiempo indica cuándo ocurrió el mensaje
- Nombre del nodo indica qué nodo generó el mensaje
- Contenido del mensaje muestra estructura de datos y valores
Paso 3: Rastrear la Ejecución del Flujo
Seguir la Ruta del Mensaje
- Iniciar desde la fuente de disparo (inyección, temporizador, entrada externa)
- Verificar que cada nodo reciba la entrada esperada
- Revisar transformaciones del mensaje en cada paso
- Identificar dónde se detiene el flujo o produce salida incorrecta
Puntos Comunes de Interrupción del Flujo
Tipo de Nodo | Problemas Comunes | Chequeo Rápido |
---|---|---|
Lógica de Clasificación | No se cumple umbral de confianza | Verificar alineación de ROI, reentrenar modelo |
Nodo Switch | Lógica condicional incorrecta | Verificar reglas del switch y propiedades del mensaje |
Nodo Join | Espera conjunto incompleto de mensajes | Verificar cantidad de partes del mensaje |
Nodo Function | Errores en JavaScript | Revisar consola del navegador para errores |
HTTP Request | Conectividad de red | Probar endpoint manualmente |
Problemas Comunes de Node-RED y Soluciones
Problemas en la Ejecución del Flujo
Problema: El Flujo No Se Dispara
Síntomas:
- No hay mensajes en la barra lateral Debug
- El sistema parece inactivo
- Disparadores externos no funcionan
Pasos de Diagnóstico:
- Verificar fuente de disparo: Inyección manual, temporizador, entrada externa
- Verificar cableado: Asegurar conexiones entre nodos
- Probar disparo manual: Usar nodo Inject para forzar inicio del flujo
Soluciones:
Causa | Solución | Prevención |
---|---|---|
Flujos deshabilitados | Hacer clic en Deploy → Despliegue Completo | Despliegue regular tras cambios |
Conexiones rotas | Reconectar nodos correctamente | Inspección visual durante edición |
Configuración errónea de temporizador | Revisar configuración del nodo Inject | Documentar requisitos de temporización |
Fallo en disparador externo | Verificar cableado y señales I/O | Pruebas regulares de I/O |
Problema: Flujos Ejecutándose Pero Resultados Incorrectos
Síntomas:
- Mensajes fluyen pero clasificaciones incorrectas
- Lógica de pase/fallo no funciona correctamente
- Resultados inconsistentes
Proceso de Diagnóstico:
- Agregar nodos Debug antes y después de nodos sospechosos
- Comparar contenido esperado vs real de mensajes
- Verificar configuraciones de nodos para parámetros correctos
Soluciones:
Área del Problema | Verificar | Corrección |
---|---|---|
Lógica de Clasificación | Alineación de ROI, entrenamiento del modelo | Reentrenar o ajustar ROI |
Condiciones del Switch | Nombres y valores de propiedades | Corregir lógica del switch |
Propiedades del Mensaje | Tipos de datos y formatos | Usar nodo Change para corregir formato |
Variables de Contexto | Valores almacenados y alcance | Limpiar/reiniciar almacenamiento de contexto |
Problemas de Rendimiento
Problema: Ejecución Lenta del Flujo
Síntomas:
- Retrasos entre disparo y salida
- Tiempos de espera en inspección
- Lentitud del sistema
Diagnóstico de Rendimiento:
- Revisar marcas de tiempo en Debug para identificar nodos lentos
- Monitorear uso de CPU en sistema de cámara
- Contar nodos Debug activos (deshabilitar los no usados)
Acciones de Optimización:
Problema de Rendimiento | Solución | Mejora Esperada |
---|---|---|
Demasiados nodos Debug | Deshabilitar/eliminar nodos Debug no usados | Incremento de velocidad 10-20% |
Nodos Function complejos | Optimizar código JavaScript | Mejora variable |
Disparos de alta frecuencia | Añadir retardo/limitación de tasa | Evitar sobrecarga del sistema |
Objetos de mensaje grandes | Reducir tamaño de carga útil | Procesamiento más rápido |
Procedimientos de Mantenimiento
Revisiones Diarias de Salud
Inspección Visual del Flujo (5 minutos)
- Acceder al editor Node-RED
- Buscar indicadores de error (triángulos rojos)
- Verificar conexiones del flujo estén intactas
- Revisar mensajes Debug recientes para anomalías
Prueba de Ejecución del Flujo (10 minutos)
- Prueba de disparo manual usando nodos Inject
- Verificar salidas esperadas en barra lateral Debug
- Probar lógica de pase/fallo con piezas buenas/malas conocidas
- Confirmar comunicaciones externas (PLC, bases de datos)
Tareas de Mantenimiento Mensual
Revisión de Rendimiento (15 minutos)
Lista de Verificación para Optimización de Flujos:
Tarea | Acción | Notas |
---|---|---|
Limpieza de Nodos Debug | Deshabilitar nodos Debug no usados | Mantener solo depuración esencial |
Revisión de Almacenamiento de Contexto | Limpiar valores almacenados innecesarios | Prevenir acumulación de memoria |
Revisión de Registro de Errores | Revisar consola del navegador para errores | Documentar problemas recurrentes |
Creación de Copia de Seguridad | Exportar flujos a archivo de respaldo | Guardar con fecha/versión |
Validación de Configuración (20 minutos)
- Comparar flujos actuales con estándares documentados
- Verificar que todos los caminos críticos tengan manejo de errores adecuado
- Probar escenarios de recuperación de errores
- Actualizar documentación por cualquier cambio
Mantenimiento Profundo Mensual
Análisis Integral de Flujos (45 minutos)
Recolección de Métricas de Rendimiento:
- Tiempos de ejecución de flujos
- Análisis de frecuencia de errores
- Patrones de uso de recursos
- Confiabilidad de comunicaciones
Revisión de Estructura de Flujos:
- Eliminar nodos redundantes
- Consolidar lógica duplicada
- Actualizar configuraciones obsoletas
- Optimizar nodos Function complejos
Pruebas de Respaldo y Recuperación (30 minutos)
- Crear exportación completa de flujos
- Probar procedimiento de importación en sistema de respaldo
- Verificar que restauración mantiene funcionalidad
- Documentar procedimientos de recuperación
Herramientas y Técnicas de Diagnóstico
Herramientas Integradas de Node-RED
Funciones de la Barra Lateral de Debug
Función | Caso de Uso | Método de Acceso |
---|---|---|
Filtrado de Mensajes | Enfocarse en nodos específicos | Botón de filtro en barra lateral |
Historial de Mensajes | Revisar últimos 100 mensajes | Desplazamiento en barra lateral Debug |
Ubicación del Nodo | Encontrar origen del mensaje Debug | Clic en nombre del nodo en mensaje |
Exportación de Mensajes | Guardar datos diagnósticos | Copiar contenido del mensaje |
Explorador de Datos de Contexto
Acceso al Almacenamiento de Contexto:
- Abrir interfaz Node-RED del OV80i (
http://<camera-ip>/recipes/<recipe-number>/ioblock
) - Ir a pestaña Context Data (barra lateral derecha)
- Visualizar valores de contexto Node/Flow/Global
Depuración de Contexto:
- Contexto de Nodo: Revisar estado individual del nodo
- Contexto de Flujo: Verificar variables compartidas del flujo
- Contexto Global: Revisar configuraciones a nivel sistema
Pruebas de Comunicación de Red
Validación de HTTP Request:
- Usar herramientas externas (Postman, curl) para probar endpoints
- Verificar formatos de respuesta coincidan con datos esperados
- Probar condiciones de error (timeouts, respuestas inválidas)
Verificación de Comunicación con PLC:
- Usar software de programación PLC para verificar conectividad
- Probar acceso a registros de datos de forma independiente
- Validar conversiones de formato de datos
Procedimientos de Recuperación de Emergencia
Recuperación de Corrupción de Flujos
Síntomas de Corrupción:
- Interfaz Node-RED del OV80i no carga flujos
- Flujos aparecen vacíos tras reinicio de cámara
- Despliegue falla repetidamente
Pasos de Recuperación:
- Ciclo de energía de la cámara OV80i:
- Desconectar alimentación por 10 segundos
- Esperar arranque completo (los 4 LEDs estables)
- Acceder a interfaz Node-RED de la receta:
- Navegar a
http://<camera-ip>/recipes/<recipe-number>/ioblock
- Si flujos están corruptos, importar desde respaldo
- Navegar a
- Restaurar desde respaldo:
- Usar función de importación de recetas OV80i
- Importar archivo de respaldo más reciente
- Verificar que todas las conexiones estén intactas
- Validar restauración:
- Probar todos los flujos críticos
- Verificar comunicaciones externas
- Actualizar cualquier cambio en configuración
Problemas de Recursos del Sistema
Sobrecarga de Memoria/CPU
Acciones Inmediatas:
- Deshabilitar nodos Debug no esenciales en Node-RED del OV80i
- Eliminar disparadores temporizados de alta frecuencia
- Simplificar nodos Function complejos
- Ciclo de energía de la cámara para reiniciar todos los servicios
Soluciones a Largo Plazo:
- Optimizar diseño de flujos para hardware OV80i
- Implementar limitación de tasa
- Reducir tamaños de carga útil de mensajes
- Programar ventanas de mantenimiento
Listas de Verificación para Solución de Problemas
Lista Previa al Mantenimiento
- Notificar a producción sobre ventana de mantenimiento
- Crear copia de seguridad actual de flujos
- Documentar estado actual del sistema
- Preparar procedimiento de reversión
- Probar proceso de restauración de respaldo
Validación Posterior al Mantenimiento
- Todos los flujos se despliegan correctamente
- Pruebas de disparo manual exitosas
- Comunicaciones externas verificadas
- Indicadores de error eliminados
- Rendimiento dentro de rango aceptable
- Documentación actualizada
Lista de Respuesta a Emergencias
- Evaluar impacto del sistema
- Notificar a producción
- Intentar reparación rápida
- Restaurar respaldo si es necesario
- Identificar causa raíz
- Implementar medidas preventivas
Documentación y Registro
Registros de Mantenimiento
Documentación Requerida:
- Fecha/hora del mantenimiento
- Problemas identificados y resueltos
- Cambios de configuración realizados
- Mejoras de rendimiento logradas
- Recomendaciones futuras
🔗 Recursos Relacionados
- Node-RED Basics
- Creating Your First Recipe
- Camera Communication Architecture
- Troubleshooting Power Issues
- Node-RED Architecture in OV80i
Recuerde: Documente todos los cambios realizados durante las sesiones de depuración. Esto ayuda en futuras soluciones de problemas y construye conocimiento institucional para su equipo.