Saltar al contenido principal

DOCUMENTACIÓN CON IA

¿Qué desea saber?

Configuración de Comunicación MQTT

Esta guía le muestra cómo configurar la comunicación MQTT entre su cámara OV10i y dispositivos externos utilizando Node-RED. MQTT permite mensajería ligera y confiable para aplicaciones IoT y comunicación remota de dispositivos.

Cuándo usar la comunicación MQTT: Integración de dispositivos IoT, sistemas de monitoreo remoto, patrones de mensajería de publicación/suscripción, entornos de bajo ancho de banda, redes de sensores distribuidos, o cuando necesita entrega de mensajes confiable con reconexión automática.

Salte la configuración manual

Describa su integración MQTT en inglés sencillo y el Auto-Integration Builder generará un flujo completo de Node-RED para usted en segundos.

Prerrequisitos

  • Sistema de cámara OV10i configurado y conectado
  • Conectividad de red entre la cámara y el broker MQTT
  • Broker MQTT disponible (local o en la nube)
  • Comprensión básica de los conceptos de MQTT (temas, publicación/suscripción)
  • Receta activa configurada en la cámara

Visión General de la Comunicación MQTT

Conceptos Clave de MQTT:

  • Broker: Servidor central que enruta mensajes entre clientes
  • Temas: Categorías de mensajes (por ejemplo, "camera/status", "commands/trigger")
  • Publicar: Enviar mensajes a un tema
  • Suscribirse: Recibir mensajes de un tema
  • QoS: Niveles de Calidad de Servicio (0, 1, 2)

Paso 1: Verificar la Configuración de Red

1.1 Verificar Configuraciones de Red de la Cámara

  1. Navegue a Configuración del Sistema
  2. Anote la dirección IP de la cámara (por ejemplo, 192.168.0.100)
  3. Verifique la conectividad de red al broker MQTT

1.2 Requisitos del Broker MQTT

Asegúrese de la accesibilidad del broker MQTT:

  • Misma red: La cámara debe alcanzar la dirección IP del broker
  • Acceso al puerto: Puerto MQTT predeterminado 1883 (o 8883 para TLS)
  • Autenticación: Nombre de usuario/contraseña si el broker lo requiere
  • Cortafuegos: Permitir tráfico MQTT en los puertos requeridos

1.3 Requisitos de Red

ComponenteDirección IPPuertoNotas
Cámara192.168.0.100N/ADebe alcanzar el broker
Broker MQTT192.168.0.2001883Puerto MQTT estándar
Dispositivos Clientes192.168.0.xxxVariableCualquier dispositivo suscrito

Paso 2: Acceder al Editor de Node-RED

2.1 Navegar al Bloque de IO

  1. Abra su receta activa en el Editor de Recetas
  2. Haga clic en Configurar IO o seleccione Bloque de IO en el menú de migas de pan para ingresar al editor de Node-RED

2.2 Verificar Disponibilidad de Nodos MQTT

Verifique la paleta de Node-RED para nodos MQTT:

  • mqtt in - Suscribirse a temas MQTT
  • mqtt out - Publicar en temas MQTT

Punto de control: Debería ver nodos MQTT en la sección de Red del panel izquierdo.

Paso 3: Configurar la Conexión del Broker MQTT

3.1 Agregar Configuración del Broker MQTT

  1. Arrastre el nodo "mqtt in" al lienzo (para la configuración inicial)
  2. Haga doble clic en el nodo para abrir la configuración
  3. Haga clic en el ícono de lápiz junto al campo Servidor
  4. Haga clic en "Agregar nuevo mqtt-broker"

3.2 Configurar Ajustes del Broker

Configuración Básica del Broker:

ConfiguraciónValorDescripción
NombreBroker MQTT de la CámaraIdentificador descriptivo
Servidor192.168.0.200Dirección IP del broker MQTT
Puerto1883Puerto MQTT estándar
ProtocoloMQTT V3.1.1Versión recomendada
ID de Cliente(auto-generar)Deje en blanco para automático

3.3 Configuración de Autenticación (Si es Requerida)

Si el broker requiere autenticación:

ConfiguraciónDescripción
Nombre de usuarioNombre de usuario del broker MQTT
ContraseñaContraseña del broker MQTT
Usar TLSHabilitar para conexiones seguras (puerto 8883)

3.4 Configuraciones Avanzadas

Opciones de Conexión:

ConfiguraciónValor RecomendadoDescripción
Mantener Vivo60 segundosIntervalo de latido
Sesión LimpiaVerdaderoComenzar desde cero en cada conexión
Conexión AutomáticaVerdaderoReconectar automáticamente

3.5 Guardar Configuración del Broker

  1. Haga clic en "Agregar" para guardar la configuración del broker
  2. Haga clic en "Listo" para cerrar la configuración del nodo
  3. La configuración del broker ahora está disponible para todos los nodos MQTT

Paso 4: Configurar Entrada MQTT (Suscribirse)

4.1 Configurar Nodo MQTT In

  1. Seleccione el nodo "mqtt in" que agregó
  2. Haga doble clic para configurar
  3. Configure las configuraciones de suscripción:

4.2 Configuración de MQTT In

Configuraciones de Suscripción:

ConfiguraciónValor de EjemploDescripción
ServidorBroker MQTT de la CámaraSeleccionar broker configurado
Temacamera/commandsTema al que suscribirse
QoS0Calidad de entrega del mensaje
Salidaauto-detectarFormato del mensaje
NombreEscuchador de ComandosIdentificador del nodo

4.3 Convenciones de Nomenclatura de Temas

Estructura de tema recomendada:

PropósitoEjemplo de TemaUso
Comandoscamera/commandsRecibir comandos de control
Solicitudes de estadocamera/status/requestSolicitudes de información de estado
Configuracióncamera/configCambios de configuración

4.4 Configurar Procesamiento de Mensajes

  1. Agregue un nodo "debug" para monitorear mensajes entrantes
  2. Conectar: MQTT In → Debug
  3. Configure el nodo debug para mostrar el mensaje completo

Paso 5: Configurar Salida MQTT (Publicar)

5.1 Agregar Nodo MQTT Out

  1. Arrastre el nodo "mqtt out" al lienzo
  2. Haga doble clic para configurar
  3. Seleccione la misma configuración del broker

5.2 Configuración de MQTT Out

Configuraciones de Publicación:

ConfiguraciónValor de EjemploDescripción
ServidorBroker MQTT de la CámaraMismo broker que la entrada
Temacamera/responsesTema para respuestas de la cámara
QoS0Calidad de entrega del mensaje
RetenerFalsoNo almacenar el último mensaje
NombrePublicador de RespuestasIdentificador del nodo

5.3 Estructura de Tema de Respuesta

Temas de respuesta recomendados:

Tipo de RespuestaEjemplo de TemaUso
Actualizaciones de estadocamera/statusInformación de estado de la cámara
Resultadoscamera/resultsResultados de la inspección
Reconocimientoscamera/ackConfirmaciones de comandos

Paso 6: Crear Flujo de Comunicación Básico

6.1 Construir Flujo de Mensaje Saliente

Cree un flujo para publicar mensajes desde la cámara:

  1. Agregue un nodo "inject" para activar mensajes
  2. Agregue un nodo "function" para formatear mensajes
  3. Agregue un nodo "mqtt out" para publicar
  4. Conectar: Inject → Function → MQTT Out

6.2 Construir Flujo de Mensaje Entrante

Cree un flujo separado para recibir mensajes:

  1. Agregue un nodo "mqtt in" para suscribirse
  2. Agregue un nodo "debug" para monitorear
  3. Conectar: MQTT In → Debug

6.3 Configurar Nodo Inject

  1. Haga doble clic en el nodo inject
  2. Configurar ajustes:
    • Nombre: "Enviar Mensaje de Prueba"
    • Carga útil: Timestamp
    • Tema: (dejar vacío)
  3. Haga clic en "Listo"

6.4 Configurar Nodo Function

Formato simple de mensaje:

// Format outgoing message
msg.topic = "camera/status";
msg.payload = "Camera online - " + new Date().toISOString();
return msg;

  1. Haga doble clic en el nodo function
  2. Copie el código anterior en la pestaña "On Message"
  3. Nombre: "Formato de Mensaje"
  4. Haga clic en "Listo"

6.5 Configurar Nodo MQTT Out

  1. Haga doble clic en el nodo mqtt out
  2. Seleccione broker: Camera MQTT Broker (configurado anteriormente)
  3. Tema: (dejar vacío - establecido por el nodo function)
  4. Nombre: "Publicar Estado"
  5. Haga clic en "Listo"

6.6 Configurar Nodo MQTT In

  1. Haga doble clic en el nodo mqtt in
  2. Seleccione broker: Camera MQTT Broker
  3. Tema: camera/commands
  4. Nombre: "Escucha de Comandos"
  5. Haga clic en "Listo"

6.7 Configurar Nodo Debug

  1. Haga doble clic en el nodo debug
  2. Salida: Objeto msg completo
  3. Nombre: "Mensajes Entrantes"
  4. Haga clic en "Listo"

6.8 Estructura Final del Flujo

Su flujo completo debe ser:

Saliente: Inject → Function → MQTT Out
Entrante: MQTT In → Debug

Paso 7: Desplegar y Probar la Configuración

7.1 Desplegar Flujo

  1. Haga clic en el botón "Desplegar" (esquina superior derecha)
  2. Verifique el mensaje de éxito del despliegue
  3. Verifique los indicadores de estado del nodo:
    • Punto verde: Conectado al broker
    • Punto rojo: Conexión fallida
    • Punto amarillo: Conectando

7.2 Probar Comunicación Interna

Pruebe la publicación MQTT de la cámara:

  1. Haga clic en el botón inject para enviar un mensaje de prueba
  2. Verifique que el nodo MQTT Out muestre actividad
  3. Revise el panel de debug si tiene mensajes externos

7.3 Pruebas Externas (Opcional)

Pruebe con un cliente MQTT externo para enviar comandos a la cámara:

Usando herramientas de línea de comandos:

# Send a test command to the camera
mosquitto_pub -h 192.168.0.100 -t "camera/commands" -m "test_command"

Resultado esperado: El nodo debug debería mostrar el mensaje entrante en el panel de debug de Node-RED.

7.4 Verificar Comunicación

Verifique estos aspectos:

PruebaResultado EsperadoEstado
Conexión al brokerEstado verde en nodos MQTT
Publicación de mensajesInject activa MQTT Out con éxito
Recepción de mensajesDebug muestra mensajes externos
ReconexiónReconexión automática después de interrupción de red

Paso 8: Solucionar Problemas de MQTT

8.1 Problemas de Conexión

ProblemaSíntomasSolución
No se puede conectar al brokerIndicadores de estado rojosVerifique la IP y el puerto del broker
Fallo de autenticaciónConexión rechazadaVerifique nombre de usuario/contraseña
Time-outs de redEstado amarillo conectandoVerifique la conectividad de red
Firewall bloqueandoSin intento de conexiónAbra los puertos MQTT

8.2 Problemas de Mensajes

ProblemaSíntomasSolución
No se reciben mensajesDebug no muestra nadaVerifique las suscripciones de tema
Los mensajes no se publicanClientes externos no ven nadaVerifique los temas de publicación
Errores de formato de mensajeFallos de análisisUse mensajes de texto simples
Mensajes perdidosEntrega intermitenteVerifique la conexión al broker

8.3 Problemas de Rendimiento

ProblemaSíntomasSolución
Alta latenciaEntrega de mensajes retrasadaVerifique el rendimiento del broker
Caídas de conexiónReconexiones frecuentesAjuste la configuración de keep-alive
Inundación de mensajesSobrecarga del brokerImplemente limitación de mensajes

8.4 Técnicas de Depuración

Solución de problemas sistemática:

  1. Verifique el estado de conexión del broker en Node-RED
  2. Monitoree el panel de depuración de Node-RED para el flujo de mensajes
  3. Utilice mensajes de texto simples antes de datos complejos
  4. Verifique la conectividad de red con ping
  5. Pruebe con temas básicos antes de flujos avanzados

¡Éxito! Su Comunicación MQTT Está Lista

Su sistema de comunicación MQTT ahora puede:

  • Conectarse a brokers MQTT con la autenticación adecuada
  • Suscribirse a temas para recibir comandos y datos
  • Publicar mensajes para actualizaciones de estado y respuestas
  • Manejar formatos de mensajes JSON para comunicación estructurada
  • Reconectarse automáticamente después de interrupciones de red
  • Soportar múltiples niveles de QoS para diferentes prioridades de mensajes

Mantenimiento Continuo

Revisiones Regulares del Sistema

  • Monitoree el estado de conexión del broker en Node-RED
  • Verifique la entrega de mensajes con mensajes de prueba
  • Revise los registros del broker en busca de patrones de error
  • Actualice las credenciales de autenticación según sea necesario

Monitoreo del Rendimiento

  • Rastree la latencia de mensajes y los tiempos de entrega
  • Monitoree el uso de recursos del broker para escalabilidad
  • Analice los patrones de uso de temas para optimización
  • Revise la configuración de QoS según los requisitos reales

Próximos Pasos

Después de configurar la comunicación MQTT básica:

  1. Implemente flujos de mensajería específicos para su aplicación
  2. Establezca jerarquías de temas para una comunicación organizada
  3. Agregue medidas de seguridad como cifrado TLS
  4. Integre con sistemas externos utilizando protocolos MQTT establecidos
  5. Cree paneles de monitoreo para la salud del sistema
Genere flujos MQTT automáticamente

El Integration Builder puede generar flujos de comunicación MQTT completos a partir de una descripción en inglés simple. Describa su patrón de mensajería (por ejemplo, "publicar resultados de inspección en un tema MQTT con estado de aprobado/reprobado y puntajes de confianza") y obtenga un flujo de Node-RED listo para producción en segundos.

🔗 Vea También