KI-GESTÜTZTE DOKUMENTATION
Was möchten Sie wissen?
Umgebungsvariablen
Sie können für jede Kamera in den System Settings Umgebungsvariablen definieren. Diese Variablen stehen in Node-RED zur Verfügung und ermöglichen es Ihnen, Parameter wie PLC IP, Liniennummer, Modbus IP, Zeitzone, FTP-Server usw. an einer zentralen Stelle festzulegen. Dadurch lässt sich derselbe Node-RED-Flow problemlos über verschiedene Linien hinweg wiederverwenden, während das Verhalten pro Kamera angepasst werden kann. Umgebungsvariablen-Sätze können außerdem in eine .txt-Datei exportiert oder aus dieser importiert werden, was Bereitstellung und Backup vereinfacht.
Der OV80i wird mit drei integrierten Variablen ausgeliefert — Line Code, Camera Timezone und Date Installed — und Sie können beliebig viele Custom Variables hinzufügen.
Wann Umgebungsvariablen sinnvoll sind
Greifen Sie auf Umgebungsvariablen zurück, wenn:
- Derselbe Wert (PLC IP, MES-URL, Modbus-Host, Lizenzschlüssel, Schwellenwert, Linien-ID) von mehr als einem Node-RED-Node referenziert wird.
- Ein Wert sich zwischen Bereitstellungen unterscheidet und Sie einen Flow möchten, der überall funktioniert — setzen Sie die Variable einmal pro Kamera, anstatt den Flow zu bearbeiten.
- Sie einen Flow zwischen Kameras teilen möchten (Export/Import), ohne bereitstellungsspezifische Konfiguration ins JSON einfließen zu lassen.
- IT-Personal oder Bediener einen Wert ändern müssen (z. B. einen neuen FTP-Server), ohne Node-RED zu öffnen.
Variablen in System Settings definieren
- Klicken Sie in der linken Seitenleiste der Kamera-UI auf System Settings.
- Öffnen Sie den Tab Environment Variables (dritter Tab in der Sub-Navigation).
- Füllen Sie eine der integrierten Variablen aus:
- Line Code — Bezeichner oder Code der Produktionslinie (Freitext).
- Camera Timezone — Zeitzone aus dem Dropdown auswählen.
- Date Installed — Datumsauswahl.

- Um eine benutzerdefinierte Variable hinzuzufügen, klicken Sie oben rechts auf + New Variable. Eine neue Custom Variables-Zeile mit einem Schlüssel/Wert-Eingabepaar erscheint. Geben Sie einen Schlüssel (keine Leerzeichen — nur Buchstaben, Ziffern und Unterstriche) sowie einen Wert ein und klicken Sie auf Apply Changes.

Der Schlüssel ist der Name, den Sie zum Auslesen der Variablen aus Node-RED verwenden. Konvention ist UPPER_SNAKE_CASE (z. B. PLC_IP, MODBUS_IP, FTP_SERVER, LINE_NUMBER, ALERT_THRESHOLD) — Leerzeichen werden von der UI nicht zugelassen.
- Die Kamera fordert Sie vor dem Speichern zur Bestätigung auf. Node-RED wird beim Anwenden neu gestartet, damit der neue Wert sofort in Flows verfügbar ist.

Das Speichern jeglicher Änderung an Umgebungsvariablen — Hinzufügen, Bearbeiten oder Löschen einer benutzerdefinierten Variable oder Ändern eines der integrierten Felder — startet die Node-RED-Laufzeit neu, damit die Werte wirksam werden. Aktive Inspektionen laufen weiter, aber jede gerade laufende Flow-Ausführung wird unterbrochen. Planen Sie Änderungen während geplanter Ausfallzeiten ein, nicht mitten in der Schicht.
Backup und Wiederherstellung
Die Schaltfläche Export .txt lädt den aktuellen Variablensatz als reine Textdatei (KEY=VALUE-Zeilen) herunter. Import .txt stellt aus einer zuvor exportierten Datei wieder her. Nutzen Sie dies, um eine bewährte Konfiguration über mehrere Kameras derselben Linie zu klonen oder vor einer Neuinstallation zu sichern.
Variablen aus Node-RED auslesen
Öffnen Sie den IO Block in einem beliebigen Rezept und klicken Sie auf Advanced Mode, um Node-RED zu öffnen. Die Umgebungsvariablen der Kamera werden Flows auf drei Arten zugänglich gemacht — wählen Sie die für Ihren Anwendungsfall passende aus.
1. Inject-Node mit Payload-Typ env (am einfachsten)
Der schnellste Weg, eine Variable auszulesen, ist ein Inject-Node, konfiguriert mit Payload-Typ env und Payload <VAR_NAME>. Beim Auslösen sendet der Inject-Node msg.payload = <Wert der Umgebungsvariable> nach unten — kein Code, kein Function-Block.

Verbinden Sie ihn mit einem Debug-Node und lösen Sie den Inject aus — die Debug-Seitenleiste zeigt den aufgelösten Wert.

Dieses Muster ist ideal, um zu prüfen, ob eine Variable definiert ist und korrekt gelesen wird. Es ist auch das Muster der Wahl, wenn ein nachgeschalteter Node (HTTP-Request, MQTT-Publish, FTP) lediglich den rohen Wert als Payload benötigt.
2. Function-Node mit env.get() (programmatisch)
Wenn Sie mehrere Variablen kombinieren, eine strukturierte Nachricht aufbauen oder anhand eines Werts verzweigen müssen, verwenden Sie einen Function-Node und die Standard-API env.get() von Node-RED:
// Read a built-in variable
const lineCode = env.get("LINE_CODE");
// Read custom variables
const plcIp = env.get("PLC_IP");
const ftpServer = env.get("FTP_SERVER");
// Build a structured message for downstream nodes
msg.payload = {
line: lineCode,
plc: plcIp,
ftp: ftpServer,
capturedAt: new Date().toISOString(),
};
return msg;
Verbinden Sie ihn mit einem mqtt out-, http request-, ftp- oder email-Node, und der strukturierte Payload wird mitübergeben.
3. ${VAR_NAME}-Substitution in beliebigen Node-Eigenschaften
Die meisten Konfigurationsfelder von Nodes unterstützen die ${VAR_NAME}-Substitution. In einem http request-Node können Sie beispielsweise die URL setzen auf:
${MES_ENDPOINT}/api/v1/inspections
…und Node-RED ersetzt zur Laufzeit den aktuellen Wert der Variable. Dasselbe gilt für ftp-Server-Felder, mqtt-Broker-URLs, email-Empfängerlisten usw. So können Sie bereitstellungsspezifische Konfiguration an einer Stelle setzen (System Settings), ohne den Flow anzufassen.
Häufige Muster
| Muster | Variablenname | Wie er gelesen wird |
|---|---|---|
| PLC-Verbindung | PLC_IP, PLC_PORT | Inject + env oder ${PLC_IP} in der PLC-Konfiguration |
| FTP-Bildexport | FTP_SERVER, FTP_USERNAME | FTP-Node-Host/Anmeldedatenfelder mit ${...}-Substitution oder env.get() in einem Function-Node |
| MES- / Data-Historian-Endpunkt | MES_ENDPOINT | HTTP-Request-Node-URL: ${MES_ENDPOINT}/api/... |
| MQTT-Broker | MQTT_BROKER | MQTT-Broker-Konfiguration: ${MQTT_BROKER} |
| Modbus-Host | MODBUS_IP | IP-Feld des Modbus-Nodes |
| Linienbezeichner (pro Kamera) | LINE_NUMBER, LINE_CODE (integriert) | Auf jede veröffentlichte Nachricht zur Rückverfolgbarkeit aufgeprägt |
| Schwellenwert für Alarmeskalation | ALERT_THRESHOLD | Function-Node, der jüngste Fehler zählt |
| Benachrichtigungsliste für Bediener | ALERT_EMAILS | „to"-Feld des Email-Nodes |
Die Seite Environment Variables liegt im Klartext vor und ist für jeden Benutzer mit System Settings-Zugriff sichtbar. Für Geheimnisse, die stärkeren Schutz erfordern (PLC-Passwörter, signierte Tokens, Zertifikate), verwenden Sie stattdessen den Credentials-Store von Node-RED an den einzelnen Nodes.
Wie geht's weiter
- Node-RED-Grundlagen — Einstieg, falls Sie neu bei Node-RED auf der Kamera sind.
- Overview Node-RED Custom Blocks — Referenz für die OV-spezifischen Blöcke, die neben der Standard-Node-RED-Palette erscheinen.
- Ausgänge einrichten (Schritt 5) — wo Node-RED in den umfassenderen Pass/Fail- und Integrations-Flow passt.