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 usando Node-RED. MQTT permite mensajería ligera y confiable para aplicaciones IoT y comunicación remota con dispositivos.

Cuándo Usar Comunicación MQTT: integración de dispositivos IoT, sistemas de monitoreo remoto, patrones de mensajería publish/subscribe, entornos de bajo ancho de banda, redes distribuidas de sensores o cuando necesite entrega confiable de mensajes con reconexión automática.

Omita la configuración manual

Describa su integración MQTT en inglés simple 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 basado en la nube)
  • Comprensión básica de los conceptos de MQTT (topics, publish/subscribe)
  • Receta activa configurada en la cámara

Visión General de la Comunicación MQTT

Conceptos Clave de MQTT:

  • Broker: servidor central que enruta los mensajes entre clientes
  • Topics: categorías de mensajes (por ejemplo, "camera/status", "commands/trigger")
  • Publish: enviar mensajes a un topic
  • Subscribe: recibir mensajes desde un topic
  • QoS: niveles de Calidad de Servicio (0, 1, 2)

Paso 1: Verificar la Configuración de Red

1.1 Verificar la Configuración de Red de la Cámara

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

1.2 Requisitos del Broker MQTT

Asegure 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 (u 8883 para TLS)
  • Autenticación: usuario/contraseña si el broker lo requiere
  • Firewall: permitir tráfico MQTT en los puertos requeridos

1.3 Requisitos de Red

ComponenteDirección IPPuertoNotas
Cámara192.168.0.100N/DDebe alcanzar el broker
Broker MQTT192.168.0.2001883Puerto MQTT estándar
Dispositivos Cliente192.168.0.xxxVariableCualquier dispositivo que se suscriba

Paso 2: Acceder al Editor de Node-RED

2.1 Navegar al Bloque IO

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

2.2 Verificar la Disponibilidad de Nodos MQTT

Revise la paleta de Node-RED para ver los nodos MQTT:

  • mqtt in - suscribirse a topics MQTT
  • mqtt out - publicar en topics MQTT

Punto de Verificación: debería ver los nodos MQTT en la sección Network del panel izquierdo.

Paso 3: Configurar la Conexión del Broker MQTT

3.1 Agregar la 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 Server
  4. Haga clic en "Add new mqtt-broker"

3.2 Configurar los Ajustes del Broker

Configuración Básica del Broker:

AjusteValorDescripción
NameCamera MQTT BrokerIdentificador descriptivo
Server192.168.0.200Dirección IP del broker MQTT
Port1883Puerto MQTT estándar
ProtocolMQTT V3.1.1Versión recomendada
Client ID(auto-generado)Dejar en blanco para automático

3.3 Configuraciones de Autenticación (Si se Requiere)

Si el broker requiere autenticación:

ConfiguraciónDescripción
UsernameNombre de usuario del broker MQTT
PasswordContraseña del broker MQTT
Use TLSHabilitar para conexiones seguras (puerto 8883)

3.4 Configuraciones Avanzadas

Opciones de Conexión:

ConfiguraciónValor RecomendadoDescripción
Keep Alive60 segundosIntervalo de heartbeat
Clean SessionTrueIniciar nueva sesión en cada conexión
Auto ConnectTrueReconectar automáticamente

3.5 Guardar Configuración del Broker

  1. Haga clic en "Add" para guardar la configuración del broker
  2. Haga clic en "Done" 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 (Suscripción)

4.1 Configurar el Nodo MQTT In

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

4.2 Configuración de MQTT In

Configuraciones de Suscripción:

ConfiguraciónValor de EjemploDescripción
ServerCamera MQTT BrokerSeleccione el broker configurado
Topiccamera/commandsTópico al cual suscribirse
QoS0Calidad de entrega del mensaje
Outputauto-detectFormato del mensaje
NameCommand ListenerIdentificador del nodo

4.3 Convenciones de Nomenclatura de Tópicos

Estructura de tópicos recomendada:

PropósitoEjemplo de TópicoUso
Commandscamera/commandsRecibir comandos de control
Status requestscamera/status/requestSolicitudes de información de estado
Configurationcamera/configCambios de configuración

4.4 Configurar el Procesamiento de Mensajes

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

Paso 5: Configurar Salida MQTT (Publicación)

5.1 Agregar Nodo MQTT Out

  1. Arrastre el nodo "mqtt out" al canvas
  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
ServerCamera MQTT BrokerMismo broker que la entrada
Topiccamera/responsesTópico para las respuestas de la cámara
QoS0Calidad de entrega del mensaje
RetainFalseNo almacenar el último mensaje
NameResponse PublisherIdentificador del nodo

5.3 Estructura de Tópicos de Respuesta

Tópicos de respuesta recomendados:

Tipo de RespuestaEjemplo de TópicoUso
Status updatescamera/statusInformación del estado de la cámara
Resultscamera/resultsResultados de inspección
Acknowledgmentscamera/ackConfirmaciones de comandos

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

6.1 Construir el Flujo de Mensajes Salientes

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

  1. Agregue un nodo "inject" para activar mensajes
  2. Agregue un nodo "function" para dar formato a los mensajes
  3. Agregue un nodo "mqtt out" para publicar
  4. Conecte: Inject → Function → MQTT Out

6.2 Construir el Flujo de Mensajes Entrantes

Cree un flujo separado para recibir mensajes:

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

6.3 Configurar Nodo Inject

  1. Haga doble clic en el nodo inject
  2. Configure los ajustes:
    • Name: "Send Test Message"
    • Payload: Timestamp
    • Topic: (dejar vacío)
  3. Haga clic en "Done"

6.4 Configurar Nodo Function

Formato de mensaje simple:

// 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 de arriba en la pestaña "On Message"
  3. Name: "Format Message"
  4. Haga clic en "Done"

6.5 Configurar Nodo MQTT Out

  1. Haga doble clic en el nodo mqtt out
  2. Seleccione broker: Camera MQTT Broker (configurado anteriormente)
  3. Topic: (dejar vacío - establecido por el nodo function)
  4. Name: "Publish Status"
  5. Haga clic en "Done"

6.6 Configurar Nodo MQTT In

  1. Haga doble clic en el nodo mqtt in
  2. Seleccione broker: Camera MQTT Broker
  3. Topic: camera/commands
  4. Name: "Command Listener"
  5. Haga clic en "Done"

6.7 Configurar Nodo Debug

  1. Haga doble clic en el nodo debug
  2. Output: Complete msg object
  3. Name: "Incoming Messages"
  4. Haga clic en "Done"

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 "Deploy" (esquina superior derecha)
  2. Verifique el mensaje de despliegue exitoso
  3. Revise los indicadores de estado de los nodos:
    • Punto verde: Conectado al broker
    • Punto rojo: Conexión fallida
    • Punto amarillo: Conectando

7.2 Probar la 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 depuración 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 debe mostrar el mensaje entrante en el panel de depuración de Node-RED.

7.4 Verificar la Comunicación

Revise estos aspectos:

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

Paso 8: Solución de Problemas de MQTT

8.1 Problemas de Conexión

ProblemaSíntomasSolución
No se puede conectar al brokerIndicadores de estado en rojoVerifique la IP y el puerto del broker
Falla de autenticaciónConexión rechazadaVerifique usuario/contraseña
Tiempos de espera de redEstado amarillo conectandoRevise la conectividad de red
Firewall bloqueandoSin intento de conexiónAbra los puertos MQTT

8.2 Problemas con los Mensajes

ProblemaSíntomasSolución
No se reciben mensajesDebug no muestra nadaRevise las suscripciones de topics
Los mensajes no se publicanLos clientes externos no ven nadaVerifique los topics de publicación
Errores de formato de mensajeFallas en el análisisUse mensajes de texto simples
Mensajes perdidosEntrega intermitenteRevise 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
Saturació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 la conexión del broker en Node-RED
  2. Monitoree el panel de depuración de Node-RED para el flujo de mensajes
  3. Use mensajes de texto simples antes que datos complejos
  4. Verifique la conectividad de red con ping
  5. Pruebe con tópicos 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 autenticación adecuada
  • Suscribirse a tópicos 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
  • Admitir múltiples niveles de QoS para diferentes prioridades de mensajes

Mantenimiento Continuo

Verificaciones 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 para detectar patrones de error
  • Actualice las credenciales de autenticación según sea necesario

Monitoreo de 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 tópicos 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. Configure jerarquías de tópicos 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
Generar flujos MQTT automáticamente

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

🔗 Ver También