KI-GESTÜTZTE DOKUMENTATION
Was möchten Sie wissen?
Metadaten-Einrichtung
Diese Anleitung zeigt Ihnen, wie Sie Metadaten für die Bilder Ihrer OV20i-Kamera konfigurieren. Metadaten sind benutzerdefinierte Informationen, die zu jedem erfassten Bild gespeichert werden und Ihnen helfen, wichtige Details wie Teilenummern, Seriennummern oder Produktionsdaten zu verfolgen.
Wann Metadaten verwendet werden: Produktionsverfolgung, Teileidentifikation, Qualitätskontrollaufzeichnungen, Chargeninformationen, Bedieneridentifikation oder beliebige benutzerdefinierte Daten, die Sie mit Inspektionsbildern verknüpfen möchten.
Voraussetzungen
- OV20i-Kamerasystem eingerichtet und verbunden
- Aktives Rezept mit konfigurierter Bildaufnahme und Inspektionseinrichtung
- Mindestens ein AI-Block (Klassifikation oder Segmentierung) konfiguriert
- Verständnis der Daten, die Sie aus Inspektionsergebnissen verfolgen möchten
Was sind Metadaten?
Metadaten sind zusätzliche Informationen, die an jedes erfasste Bild angehängt werden. Diese Informationen:
- Werden mit dem Bild in der Bibliothek der Kamera gespeichert
- Erscheinen im HMI für Bediener sichtbar
- Helfen bei der Identifikation und Verfolgung bestimmter Teile oder Produktionsläufe
- Können in der Bibliothek zur Analyse durchsucht werden
Beispiele für nützliche Metadaten:
- Teilenummern (z. B. „P12345")
- Seriennummern (z. B. „SN987654")
- Bedienernamen (z. B. „John_Smith")
- Schichtinformationen (z. B. „A_Shift")
- Chargennummern (z. B. „Batch_2025_001")
Metadaten können nur gespeichert werden, wenn eine Inspektion abgeschlossen ist. Die Metadaten müssen Teil des Flows sein, der bei „All Block Outputs" beginnt, nachdem die Kamera ein Bild erfasst und verarbeitet hat.
Schritt 1: Node-RED-Editor öffnen
1.1 Zum IO-Block navigieren
- Öffnen Sie Ihr aktives Rezept im Recipe Editor
- Klicken Sie auf Configure IO oder wählen Sie IO Block" im Breadcrumb-Menü, um in den Node-RED-Editor zu gelangen
1.2 Node-RED-Oberfläche überprüfen
Checkpoint: Sie sollten den Node-RED-Flow-Editor mit dem bestehenden IO-Block-Flow und der Node-Palette auf der linken Seite sehen.
Schritt 2: Den Node „All Block Outputs" lokalisieren
2.1 Den Startpunkt finden
Suchen Sie in Ihrem Node-RED-Flow den Node „All Block Outputs". Dies ist der Startpunkt, der Daten von der Kamera empfängt, nachdem eine Inspektion ausgelöst und verarbeitet wurde.
Der „All Block Outputs"-Node:
- Enthält Inspektionsergebnisse von allen AI-Blöcken
- Enthält Informationen zur Bilderfassung
- Liefert die für die Metadatenerstellung benötigten Daten
- Ist die Quelle, die sowohl Metadaten als auch Pass/Fail-Entscheidungen speist
2.2 Die Flow-Struktur verstehen
Ihr Flow sollte diesem Muster folgen:
Camera Trigger → AI Processing → All Block Outputs → [Your Custom Logic]
Von „All Block Outputs" benötigen Sie zwei separate Pfade:
- Metadaten-Pfad: All Block Outputs → Function (Create Metadata) → Capture Metadata
- Entscheidungs-Pfad: All Block Outputs → Function (Logic) → Final Pass/Fail
Sowohl die Metadaten als auch die Pass/Fail-Entscheidungen müssen vom „All Block Outputs"-Node abzweigen.
Schritt 3: Capture Metadata Node hinzufügen
3.1 Metadaten-Node lokalisieren
- Suchen Sie den „Capture Metadata"-Node im linken Panel (Bereich Overview)
- Ziehen Sie den „Capture Metadata"-Node auf die Flow-Arbeitsfläche
- Positionieren Sie ihn in Ihrem Flow nach dem Trigger, aber vor der Bilderfassung
3.2 Node-Platzierung im Flow
Korrekte Flow-Struktur:
All Block Outputs → Function (Create Metadata) → Capture Metadata
↓
Function (Pass/Fail Logic) → Final Pass/Fail
Der „Final Pass/Fail"-Node ist erforderlich, damit der Flow ordnungsgemäß funktioniert. Jeder Flow muss mit diesem Node enden.
Schritt 4: Metadatenfelder konfigurieren
4.1 Grundlegende Metadaten einrichten
- Doppelklicken Sie auf den Capture Metadata Node
- Konfigurieren Sie die Metadatenfelder, die Sie erfassen möchten
- Richten Sie Datenquellen für jedes Feld ein
4.2 Anforderungen an das Metadatenformat
Die Metadaten müssen als Objekt mit folgender Struktur formatiert sein:
- String-Schlüssel – Feldnamen müssen Text sein
- String- oder Zahlenwerte – Daten können Text oder Zahlen sein
Beispiel für korrektes Format:
{
"part_number": "P12345",
"serial_number": "SN987654",
"operator": "John_Smith",
"shift": "A",
"quantity": 100,
"temperature": 23.5
}
Schritt 5: Function Node für Metadaten erstellen
5.1 Function Node zur Metadatenerstellung hinzufügen
- Fügen Sie einen "function"-Node zwischen "All Block Outputs" und dem "Capture Metadata"-Node ein
- Doppelklicken Sie auf den Function Node, um ihn zu konfigurieren
- Diese Funktion extrahiert Daten aus den Inspektionsergebnissen und erstellt Metadaten
5.2 Daten aus All Block Outputs extrahieren
Der "All Block Outputs"-Node liefert umfangreiche Inspektionsdaten. So extrahieren Sie diese:
// Extract data from inspection results
const captureId = msg.payload.capture_id;
const serialNumber = msg.payload.serial_number || "No_Serial";
const inspectionTime = msg.payload.inspection_time || new Date().toISOString();
// Create metadata from inspection data
msg.payload = {
"capture_id": captureId,
"serial_number": serialNumber,
"inspection_time": inspectionTime,
"operator": global.get("current_operator") || "Unknown"
};
return msg;
5.3 Statische Metadaten (feste Werte)
Für Informationen, die sich während der Produktion nicht ändern:
// Set static metadata values
msg.payload = {
"recipe_name": "Bolt_Inspection_v2",
"line_number": "Line_3",
"shift": "A_Shift",
"station": "QC_Station_1"
};
return msg;
5.4 Dynamische Metadaten (mithilfe von Inspektionsdaten)
Für Informationen, die aus den Inspektionsergebnissen stammen:
// Extract inspection data
const captureId = msg.payload.capture_id;
const imageUrl = msg.payload.image_url;
const predictions = msg.payload.classification?.predictions || [];
// Create dynamic metadata
msg.payload = {
"capture_id": captureId,
"part_number": "P" + Date.now(),
"total_rois": predictions.length,
"timestamp": new Date().toISOString(),
"batch": global.get("current_batch") || "Default_Batch"
};
return msg;
Schritt 6: Metadaten- und Pass/Fail-Flows verbinden
6.1 Erforderliche Flow-Struktur
Jeder Flow muss beide Pfade von "All Block Outputs" enthalten:
All Block Outputs → Function (Create Metadata) → Capture Metadata
↓
Function (Pass/Fail Logic) → Final Pass/Fail
6.2 Metadatenpfad verdrahten
- Verbinden Sie den Ausgang von "All Block Outputs" mit dem Eingang Ihrer Metadaten-Funktion
- Verbinden Sie den Ausgang der Metadaten-Funktion mit dem Eingang von "Capture Metadata"
- Der Capture Metadata Node kann ein Endknoten sein (keine Ausgangsverbindung erforderlich)
6.3 Pass/Fail-Pfad verdrahten
- Verbinden Sie den Ausgang von "All Block Outputs" mit einer Pass/Fail-Logikfunktion
- Verbinden Sie den Ausgang der Logikfunktion mit dem Eingang von "Final Pass/Fail"
- Der "Final Pass/Fail"-Node ist obligatorisch – jeder Flow muss hier enden
6.4 Beispiel für Pass/Fail-Logikfunktion
// Extract inspection result for pass/fail decision
const predictions = msg.payload.classification?.predictions || [];
// Determine if inspection passed (all ROIs passed)
let passed = true;
for (let prediction of predictions) {
if (!prediction.predicted_class.includes("pass")) {
passed = false;
break;
}
}
// Set the pass/fail result
msg.payload = passed;
return msg;
Schritt 7: Metadaten-Konfiguration testen
7.1 Bereitstellen und Testen
- Klicken Sie auf die Schaltfläche „Deploy" (oben rechts)
- Lösen Sie eine Inspektion mit Ihrer konfigurierten Triggermethode aus (manuell, digitaler Eingang oder PLC)
- Stellen Sie sicher, dass:
- Ein Bild aufgenommen wurde
- Metadaten zusammen mit dem Bild erscheinen
- Eine Pass/Fail-Entscheidung getroffen wurde
- Der Flow erfolgreich abgeschlossen wurde
7.2 Vollständigen Flow verifizieren
Prüfen Sie, dass beide Pfade funktionieren:
Metadaten-Pfad:
- Navigieren Sie zur Library in der Hauptoberfläche
- Suchen Sie Ihr Testbild
- Stellen Sie sicher, dass Metadaten in den Bilddetails erscheinen
Pass/Fail-Pfad:
- Prüfen Sie, dass die Inspektionsergebnisse den Pass/Fail-Status anzeigen
- Verifizieren Sie, dass der „Final Pass/Fail"-Node korrekt verarbeitet wurde
- Bestätigen Sie, dass alle verbundenen Ausgänge (PLCs, Anzeigen) entsprechend reagieren
7.3 Verschiedene Triggerquellen testen
Stellen Sie sicher, dass Metadaten mit Ihrem spezifischen Trigger funktionieren:
Für manuelle Trigger:
- Verwenden Sie die Software-Trigger-Schaltfläche
- Stellen Sie sicher, dass Metadaten bei jeder manuellen Aufnahme erscheinen
Für digitale Eingangstrigger:
- Aktivieren Sie einen externen Sensor/Schalter
- Bestätigen Sie, dass Metadaten mit den ausgelösten Bildern erfasst werden
Für PLC-Trigger:
- Senden Sie ein Triggersignal von der PLC
- Stellen Sie sicher, dass die Metadaten ggf. PLC-Daten enthalten
Schritt 8: Erweiterte Metadaten-Konfigurationen
8.1 Metadaten aus mehreren globalen Variablen
Kombinieren Sie Daten aus verschiedenen global gespeicherten Quellen:
// Combine data from various global storage
const operatorData = global.get("operator_info") || {};
const productData = global.get("product_info") || {};
const shiftData = global.get("shift_info") || {};
msg.payload = {
"operator": operatorData.name || "Unknown",
"operator_id": operatorData.id || "000",
"product_code": productData.code || "Default",
"product_version": productData.version || "1.0",
"shift": shiftData.current || "Day",
"line_status": "Running",
"timestamp": new Date().toISOString()
};
return msg;
Schritt 9: Fehlerbehebung bei Metadaten-Problemen
9.1 Häufige Probleme
| Problem | Symptome | Lösung |
|---|---|---|
| Metadaten erscheinen nicht | Keine Daten in der Library | Stellen Sie sicher, dass sich der Metadaten-Node im Haupt-IO-Block-Flow befindet |
| Metadaten beim falschen Bild | Daten erscheinen bei falschen Aufnahmen | Timing prüfen – Metadaten müssen vor der Bildaufnahme erfolgen |
| Trigger funktioniert nicht | Keine Bilder aufgenommen | IO-Block-Trigger-Konfiguration überprüfen |
| Fehlende Metadatenfelder | Einige Daten fehlen | Payload-Format des Function-Nodes prüfen |
| Fehler durch falschen Datentyp | Node zeigt Fehlerstatus an | Stellen Sie sicher, dass Werte nur Strings oder Zahlen sind |
9.2 Metadaten-Flow debuggen
Fügen Sie Debug-Nodes zur Fehlersuche hinzu:
- Fügen Sie nach dem Trigger einen Debug-Node hinzu, um zu prüfen, ob der Trigger funktioniert
- Fügen Sie nach der Metadaten-Function einen Debug-Node hinzu, um den Payload zu prüfen
- Fügen Sie nach Capture Metadata einen Debug-Node hinzu, um die Verarbeitung zu bestätigen
- Prüfen Sie das Debug-Panel auf Fehlermeldungen
Schritt 10: Best Practices
10.1 Flow-Design
Effiziente Metadaten-Flows entwerfen:
- Metadaten frühzeitig im Flow platzieren – Metadaten unmittelbar nach dem Trigger setzen
- Einen einzelnen Metadaten-Node verwenden – Capture Metadata Nodes nicht duplizieren
- Flow-Kontinuität wahren – Metadaten müssen Teil des Haupt-Inspektionsflows sein
- Fehlende Daten behandeln – Stets Standardwerte bereitstellen
10.2 Benennung von Metadatenfeldern
Konsistente, klare Feldnamen verwenden:
- Unterstriche statt Leerzeichen verwenden („part_number" statt „part number")
- Beschreibend, aber prägnant („operator" statt „op")
- Kleinbuchstaben für Konsistenz verwenden
- Sonderzeichen vermeiden, die Probleme verursachen könnten
10.3 Performance-Überlegungen
Für die Großserienproduktion:
- Metadatengröße minimieren – Nur notwendige Informationen einbeziehen
- Effiziente Datentypen verwenden – Wenn möglich Zahlen, kurze Strings
- Komplexe Verarbeitung vermeiden – Metadatenerstellung einfach und schnell halten
- Globale Daten cachen – Häufig genutzte Daten in globalen Variablen speichern
Erfolgreich! Ihr Metadatensystem ist einsatzbereit
Ihre Metadatenkonfiguration kann nun:
✅ Benutzerdefinierte Informationen an jede ausgelöste Bildaufnahme anhängen
✅ Produktionsdaten synchron zum Inspektionsflow erfassen
✅ Durchsuchbare Informationen in der Kamera-Library speichern
✅ Relevante Daten im HMI für Bediener anzeigen
✅ Rückverfolgbarkeit für Fertigungsanforderungen unterstützen
Laufende Wartung
Regelmäßige Systemprüfungen
- Überprüfen, ob Metadaten bei ausgelösten Aufnahmen erscheinen
- Auf fehlende Daten in Produktionsläufen prüfen
- Flow-Performance bei hohen Triggerraten überwachen
- Metadatenfelder bei Änderung der Anforderungen aktualisieren
Flow-Management
- Metadaten-Timing in der Produktion überprüfen
- Performance der Function Nodes optimieren
- Verwaltung globaler Variablen aktualisieren
- Bediener im triggerbasierten Betrieb schulen
Nächste Schritte
Nach der Einrichtung triggerbasierter Metadaten:
- Mit allen konfigurierten Trigger-Typen testen (Manuell, Digital, PLC)
- Bediener im korrekten Trigger-Einsatz für die Metadatenerfassung schulen
- Verwaltung globaler Variablen für dynamische Daten einrichten
- Metadaten-Templates für verschiedene Produktlinien erstellen
- Produktionsüberwachung mithilfe von Metadaten-Analytics implementieren