KI-GESTÜTZTE DOKUMENTATION
Was möchten Sie wissen?
MQTT-Kommunikationseinrichtung
Diese Anleitung zeigt Ihnen, wie Sie die MQTT-Kommunikation zwischen Ihrer OV10i-Kamera und externen Geräten mit Node-RED konfigurieren. MQTT ermöglicht eine schlanke, zuverlässige Nachrichtenübermittlung für IoT-Anwendungen und Remote-Gerätekommunikation.
Wann MQTT-Kommunikation verwenden: IoT-Geräteintegration, Remote-Monitoring-Systeme, Publish/Subscribe-Messaging-Muster, Umgebungen mit geringer Bandbreite, verteilte Sensornetzwerke oder wenn Sie eine zuverlässige Nachrichtenzustellung mit automatischer Wiederverbindung benötigen.
Beschreiben Sie Ihre MQTT-Integration in einfachem Englisch, und der Auto-Integration Builder generiert in Sekundenschnelle einen vollständigen Node-RED-Flow für Sie.
Voraussetzungen
- OV10i-Kamerasystem eingerichtet und verbunden
- Netzwerkverbindung zwischen Kamera und MQTT-Broker
- Verfügbarer MQTT-Broker (lokal oder cloudbasiert)
- Grundlegendes Verständnis der MQTT-Konzepte (Topics, Publish/Subscribe)
- Aktives Recipe auf der Kamera konfiguriert
MQTT-Kommunikationsübersicht
Wichtige MQTT-Konzepte:
- Broker: Zentraler Server, der Nachrichten zwischen Clients weiterleitet
- Topics: Nachrichtenkategorien (z. B. "camera/status", "commands/trigger")
- Publish: Nachrichten an ein Topic senden
- Subscribe: Nachrichten von einem Topic empfangen
- QoS: Quality of Service-Stufen (0, 1, 2)
Schritt 1: Netzwerkkonfiguration überprüfen
1.1 Kameranetzwerkeinstellungen prüfen
- Zu Systemeinstellungen navigieren
- IP-Adresse der Kamera notieren (z. B.
192.168.0.100) - Netzwerkverbindung zum MQTT-Broker überprüfen
1.2 Anforderungen an den MQTT-Broker
Zugänglichkeit des MQTT-Brokers sicherstellen:
- Gleiches Netzwerk: Kamera muss die Broker-IP-Adresse erreichen können
- Port-Zugriff: Standard-MQTT-Port 1883 (oder 8883 für TLS)
- Authentifizierung: Benutzername/Passwort, falls vom Broker erforderlich
- Firewall: MQTT-Verkehr auf den erforderlichen Ports zulassen
1.3 Netzwerkanforderungen
| Komponente | IP-Adresse | Port | Hinweise |
|---|---|---|---|
| Kamera | 192.168.0.100 | N/A | Muss Broker erreichen |
| MQTT-Broker | 192.168.0.200 | 1883 | Standard-MQTT-Port |
| Client-Geräte | 192.168.0.xxx | Variabel | Beliebige abonnierende Geräte |
Schritt 2: Node-RED-Editor aufrufen
2.1 Zum IO-Block navigieren
- Öffnen Sie Ihr aktives Recipe im Recipe Editor
- Klicken Sie auf Configure IO oder wählen Sie IO Block im Breadcrumb-Menü, um den Node-RED-Editor zu öffnen
2.2 Verfügbarkeit der MQTT-Nodes prüfen
Node-RED-Palette auf MQTT-Nodes prüfen:
- mqtt in – MQTT-Topics abonnieren
- mqtt out – An MQTT-Topics publishen
Checkpoint: Sie sollten MQTT-Nodes im Bereich Network des linken Panels sehen.
Schritt 3: MQTT-Broker-Verbindung konfigurieren
3.1 MQTT-Broker-Konfiguration hinzufügen
- Ziehen Sie den "mqtt in"-Node auf die Arbeitsfläche (für die initiale Einrichtung)
- Doppelklicken Sie auf den Node, um die Konfiguration zu öffnen
- Klicken Sie auf das Stift-Symbol neben dem Feld Server
- Klicken Sie auf "Add new mqtt-broker"
3.2 Broker-Einstellungen konfigurieren
Grundlegende Broker-Konfiguration:
| Einstellung | Wert | Beschreibung |
|---|---|---|
| Name | Camera MQTT Broker | Beschreibender Bezeichner |
| Server | 192.168.0.200 | IP-Adresse des MQTT-Brokers |
| Port | 1883 | Standard-MQTT-Port |
| Protocol | MQTT V3.1.1 | Empfohlene Version |
| Client ID | (automatisch generieren) | Für automatische Vergabe leer lassen |
3.3 Authentifizierungseinstellungen (falls erforderlich)
Wenn der Broker eine Authentifizierung erfordert:
| Einstellung | Beschreibung |
|---|---|
| Username | MQTT-Broker-Benutzername |
| Password | MQTT-Broker-Passwort |
| Use TLS | Für sichere Verbindungen aktivieren (Port 8883) |
3.4 Erweiterte Einstellungen
Verbindungsoptionen:
| Einstellung | Empfohlener Wert | Beschreibung |
|---|---|---|
| Keep Alive | 60 Sekunden | Heartbeat-Intervall |
| Clean Session | True | Bei jeder Verbindung neu starten |
| Auto Connect | True | Automatisch neu verbinden |
3.5 Broker-Konfiguration speichern
- Auf "Add" klicken, um die Broker-Einstellungen zu speichern
- Auf "Done" klicken, um die Knotenkonfiguration zu schließen
- Die Broker-Konfiguration ist jetzt für alle MQTT-Knoten verfügbar
Schritt 4: MQTT-Eingang konfigurieren (Subscribe)
4.1 MQTT In Node einrichten
- Wählen Sie den hinzugefügten "mqtt in"-Knoten aus
- Doppelklicken Sie zum Konfigurieren
- Konfigurieren Sie die Abonnement-Einstellungen:
4.2 MQTT In Konfiguration
Abonnement-Einstellungen:
| Einstellung | Beispielwert | Beschreibung |
|---|---|---|
| Server | Camera MQTT Broker | Konfigurierten Broker auswählen |
| Topic | camera/commands | Topic für das Abonnement |
| QoS | 0 | Nachrichtenzustellungsqualität |
| Output | auto-detect | Nachrichtenformat |
| Name | Command Listener | Knotenbezeichnung |
4.3 Topic-Namenskonventionen
Empfohlene Topic-Struktur:
| Zweck | Topic-Beispiel | Verwendung |
|---|---|---|
| Commands | camera/commands | Steuerbefehle empfangen |
| Status requests | camera/status/request | Statusinformationsanfragen |
| Configuration | camera/config | Konfigurationsänderungen |
4.4 Nachrichtenverarbeitung konfigurieren
- "debug"-Knoten hinzufügen, um eingehende Nachrichten zu überwachen
- Verbinden: MQTT In → Debug
- Debug-Knoten konfigurieren, um die vollständige Nachricht anzuzeigen
Schritt 5: MQTT-Ausgang konfigurieren (Publish)
5.1 MQTT Out Node hinzufügen
- "mqtt out"-Knoten auf die Arbeitsfläche ziehen
- Doppelklicken zum Konfigurieren
- Dieselbe Broker-Konfiguration auswählen
5.2 MQTT Out Konfiguration
Veröffentlichungseinstellungen:
| Einstellung | Beispielwert | Beschreibung |
|---|---|---|
| Server | Camera MQTT Broker | Gleicher Broker wie für Eingang |
| Topic | camera/responses | Topic für Kameraantworten |
| QoS | 0 | Nachrichtenzustellungsqualität |
| Retain | False | Letzte Nachricht nicht speichern |
| Name | Response Publisher | Knotenbezeichnung |
5.3 Antwort-Topic-Struktur
Empfohlene Antwort-Topics:
| Antworttyp | Topic-Beispiel | Verwendung |
|---|---|---|
| Status updates | camera/status | Kamerastatusinformationen |
| Results | camera/results | Inspektionsergebnisse |
| Acknowledgments | camera/ack | Befehlsbestätigungen |
Schritt 6: Grundlegenden Kommunikationsablauf erstellen
6.1 Ausgehenden Nachrichtenfluss erstellen
Erstellen Sie einen Flow zum Veröffentlichen von Nachrichten der Kamera:
- "inject"-Knoten hinzufügen, um Nachrichten auszulösen
- "function"-Knoten hinzufügen, um Nachrichten zu formatieren
- "mqtt out"-Knoten hinzufügen, um zu veröffentlichen
- Verbinden: Inject → Function → MQTT Out
6.2 Eingehenden Nachrichtenfluss erstellen
Erstellen Sie einen separaten Flow zum Empfangen von Nachrichten:
- "mqtt in"-Knoten hinzufügen, um zu abonnieren
- "debug"-Knoten hinzufügen, um Nachrichten zu überwachen
- Verbinden: MQTT In → Debug
6.3 Inject-Node konfigurieren
- Doppelklick auf Inject-Node
- Einstellungen konfigurieren:
- Name: "Send Test Message"
- Payload: Timestamp
- Topic: (leer lassen)
- Auf "Done" klicken
6.4 Function-Node konfigurieren
Einfache Nachrichtenformatierung:
// Format outgoing message
msg.topic = "camera/status";
msg.payload = "Camera online - " + new Date().toISOString();
return msg;
- Doppelklick auf Function-Node
- Code oben kopieren in den Tab "On Message"
- Name: "Format Message"
- Auf "Done" klicken
6.5 MQTT-Out-Node konfigurieren
- Doppelklick auf MQTT-Out-Node
- Broker auswählen: Camera MQTT Broker (zuvor konfiguriert)
- Topic: (leer lassen – wird vom Function-Node gesetzt)
- Name: "Publish Status"
- Auf "Done" klicken
6.6 MQTT-In-Node konfigurieren
- Doppelklick auf MQTT-In-Node
- Broker auswählen: Camera MQTT Broker
- Topic:
camera/commands - Name: "Command Listener"
- Auf "Done" klicken
6.7 Debug-Node konfigurieren
- Doppelklick auf Debug-Node
- Output: Complete msg object
- Name: "Incoming Messages"
- Auf "Done" klicken
6.8 Endgültige Flow-Struktur
Ihr vollständiger Flow sollte folgendermaßen aussehen:
Ausgehend: Inject → Function → MQTT Out Eingehend: MQTT In → Debug
Schritt 7: Konfiguration deployen und testen
7.1 Flow deployen
- Auf die Schaltfläche "Deploy" klicken (oben rechts)
- Erfolgsmeldung für das Deployment überprüfen
- Node-Statusanzeigen prüfen:
- Grüner Punkt: Mit Broker verbunden
- Roter Punkt: Verbindung fehlgeschlagen
- Gelber Punkt: Verbindungsaufbau
7.2 Interne Kommunikation testen
MQTT-Publishing der Kamera testen:
- Auf die Inject-Schaltfläche klicken, um eine Testnachricht zu senden
- Aktivität des MQTT-Out-Nodes überprüfen
- Debug-Panel prüfen, sofern externe Nachrichten vorliegen
7.3 Externer Test (optional)
Test mit externem MQTT-Client, um Befehle an die Kamera zu senden:
Mit Kommandozeilen-Tools:
# Send a test command to the camera
mosquitto_pub -h 192.168.0.100 -t "camera/commands" -m "test_command"
Erwartetes Ergebnis: Der Debug-Node sollte die eingehende Nachricht im Node-RED Debug-Panel anzeigen.
7.4 Kommunikation überprüfen
Folgende Aspekte prüfen:
| Test | Erwartetes Ergebnis | Status |
|---|---|---|
| Broker-Verbindung | Grüner Status an MQTT-Nodes | ☐ |
| Nachrichtenversand | Inject löst MQTT Out erfolgreich aus | ☐ |
| Nachrichtenempfang | Debug zeigt externe Nachrichten | ☐ |
| Wiederverbindung | Automatische Wiederverbindung nach Netzwerkunterbrechung | ☐ |
Schritt 8: Fehlerbehebung bei MQTT-Problemen
8.1 Verbindungsprobleme
| Problem | Symptome | Lösung |
|---|---|---|
| Verbindung zum Broker nicht möglich | Rote Statusanzeigen | Broker-IP und Port prüfen |
| Authentifizierungsfehler | Verbindung abgelehnt | Benutzername/Passwort überprüfen |
| Netzwerk-Timeouts | Gelber Status "Connecting" | Netzwerkverbindung prüfen |
| Firewall blockiert | Kein Verbindungsversuch | MQTT-Ports öffnen |
8.2 Nachrichtenprobleme
| Problem | Symptome | Lösung |
|---|---|---|
| Keine Nachrichten empfangen | Debug zeigt nichts an | Topic-Subscriptions prüfen |
| Nachrichten werden nicht veröffentlicht | Externe Clients sehen nichts | Publish-Topics überprüfen |
| Fehler im Nachrichtenformat | Parsing-Fehler | Einfache Textnachrichten verwenden |
| Verlorene Nachrichten | Sporadische Zustellung | Broker-Verbindung prüfen |
8.3 Performance-Probleme
| Problem | Symptome | Lösung |
|---|---|---|
| Hohe Latenz | Verzögerte Nachrichtenzustellung | Broker-Performance prüfen |
| Verbindungsabbrüche | Häufige Wiederverbindungen | Keep-Alive-Einstellungen anpassen |
| Nachrichtenflut | Broker-Überlastung | Nachrichten-Throttling implementieren |
8.4 Debugging-Techniken
Systematische Fehlersuche:
- Broker-Verbindungsstatus prüfen in Node-RED
- Node-RED Debug-Panel überwachen auf Nachrichtenfluss
- Einfache Textnachrichten verwenden vor komplexen Daten
- Netzwerkverbindung verifizieren mit Ping
- Mit einfachen Topics testen vor erweiterten Flows
Erfolg! Ihre MQTT-Kommunikation ist bereit
Ihr MQTT-Kommunikationssystem kann nun:
- Mit MQTT-Brokern verbinden mit ordnungsgemäßer Authentifizierung
- Topics abonnieren zum Empfangen von Befehlen und Daten
- Nachrichten veröffentlichen für Statusaktualisierungen und Antworten
- JSON-Nachrichtenformate verarbeiten für strukturierte Kommunikation
- Automatisch wiederverbinden nach Netzwerkunterbrechungen
- Mehrere QoS-Stufen unterstützen für unterschiedliche Nachrichtenprioritäten
Laufende Wartung
Regelmäßige Systemprüfungen
- Broker-Verbindungsstatus überwachen in Node-RED
- Nachrichtenzustellung verifizieren mit Testnachrichten
- Broker-Logs prüfen auf Fehlermuster
- Authentifizierungsdaten aktualisieren nach Bedarf
Performance-Überwachung
- Nachrichtenlatenz und Zustellzeiten verfolgen
- Broker-Ressourcennutzung überwachen für Skalierbarkeit
- Topic-Nutzungsmuster analysieren zur Optimierung
- QoS-Einstellungen überprüfen basierend auf tatsächlichen Anforderungen
Nächste Schritte
Nach der Einrichtung der grundlegenden MQTT-Kommunikation:
- Spezifische Messaging-Workflows implementieren für Ihre Anwendung
- Topic-Hierarchien einrichten für strukturierte Kommunikation
- Sicherheitsmaßnahmen hinzufügen wie TLS-Verschlüsselung
- Mit externen Systemen integrieren über etablierte MQTT-Protokolle
- Monitoring-Dashboards erstellen für den Systemzustand
Der Integration Builder kann komplette MQTT-Kommunikations-Flows aus einer einfachen englischen Beschreibung generieren. Beschreiben Sie Ihr Messaging-Muster (z. B. „publish inspection results to an MQTT topic with pass/fail status and confidence scores") und erhalten Sie in Sekunden einen produktionsreifen Node-RED-Flow.