Zum Hauptinhalt springen

KI-GESTÜTZTE DOKUMENTATION

Was möchten Sie wissen?

Scriptable Integration

Ab Firmware 2026.10.30 kann OV Spark Daten von Ihrer Linie entgegennehmen, mit Ihrer eigenen Logik entscheiden und Ergebnisse in Ihrem eigenen Format ausgeben – alles direkt auf der Kamera. Es gibt vier Bausteine, und die meisten Konfigurationen nutzen nur ein oder zwei davon:

BausteinWas es istCode?
VariablenWerte, die von außen kommen, etwa eine Serien- oder Losnummer von der SPS oder aus MQTT. Jede Aufnahme speichert die Werte, mit denen sie ausgeführt wurdeNein
Recipe scriptJavaScript im Schritt Beurteilung, das OK oder NG mit Begründung entscheidet, Metadaten und Tags hinzufügt und eigene Bytes für die SPS schreibtJa
Camera scriptEin kamera-weites Skript, das an MQTT veröffentlicht, auf eingehende Nachrichten reagiert sowie Zähler und Alarme pflegtJa
MQTTEin integrierter MQTT-Client. Sobald ein Broker eingerichtet ist, wird jedes Prüfergebnis veröffentlicht – ganz ohne SkriptNein

Sie finden diese unter Integration in der linken Navigation der Kamera: Variables, Camera Script und Data Connectors. Das Recipe script befindet sich im Schritt Beurteilung jedes Rezepts.

Seite Data Connectors mit MQTT, der SPS und der HTTP API

Recipe script oder Camera script​

Recipe scriptCamera script
Gehört zuEinem Rezept und wird mit diesem exportiertDer Kamera und läuft über Rezeptwechsel hinweg weiter
LäuftBei jeder Prüfung, nach den Tools und bevor die SPS das Ergebnis siehtWenn etwas passiert: ein Ergebnis, eine MQTT-Nachricht, eine Änderung der SPS-Benutzerdaten, ein Timer
SpeicherKein verlässlicher Speicher: jede Prüfung beginnt neuBehält Zustand zwischen Ereignissen bis zum Neuladen
Zeitlimit25 ms standardmäßig, bis zu 200 ms1 Sekunde bis zum ersten await eines Hooks, danach 50 ms pro Teil
KannOK oder NG und die Begründung setzen, PLC User Results Bytes schreiben, Metadaten und Tags hinzufügenAn MQTT veröffentlichen, Variablen setzen, Alarme auslösen, Timer ausführen
Kann nichtNetzwerk nutzen, Zustand halten, Timer verwendenEine Beurteilung ändern, SPS-Bytes schreiben, eine abgeschlossene Aufnahme bearbeiten
Faustregel

Wenn die SPS es benötigt, sobald Inspection Completed aktiv wird, gehört es in das Recipe script. Wenn es über das Netzwerk geht oder sich etwas über Teile hinweg merken muss, gehört es in das Camera script.

Die beiden sind über Variablen verbunden: Das Camera script setzt eine Variable, das Recipe script liest sie, und der Wert wird mit der Aufnahme gespeichert – so sehen Sie jederzeit, worauf eine Entscheidung beruhte.

Typische Konfigurationen​

Sie möchtenVerwenden Sie
Die Serien- oder Codenummer, die die SPS mit jedem Bild sendet, speichernEine Variable, die an PLC User Data gebunden ist. Kein Code: Jede Aufnahme speichert sie, die Library zeigt sie an, und Dateinamen im Remote-Speicher können sie nutzen, z. B. {camera}/{var.lot} für den Ordner und {var.serial}_{capture_id} als Dateinamen
Das Teil mit dem vergleichen, was die SPS erwartetEin Recipe script, das den OCR-Text oder Code mit der Serien-Variable vergleicht und mit serial differs ablehnt. Dasselbe Prinzip funktioniert für eine Anzahl gegenüber der Bestellmenge
Daten aus MES oder einem anderen System übernehmenEine Variable, die an ein MQTT-Topic und ein JSON-Feld gebunden ist, oder ein Camera script, das ein Feld aus einer Fremdnachricht entnimmt und die Variable setzt
Einem Bediener die Eingabe der Losnummer erlaubenSetzen Sie die Variable manuell auf der Seite Variables. Aufnahmen mit einem manuell eingegebenen Wert erhalten ein manual-Kennzeichen. So testen Sie auch Skripte auf dem Tisch ohne SPS
Aufnahmen später nach Los oder danach finden, wie knapp sie am Ausschuss warenEin Recipe script, das Werte als Metadaten speichert und Aufnahmen taggt, etwa near-miss oder review
Eigene Daten an die SPS sendenEin Recipe script, das mit pack() eine Anzahl, ein Bit pro Region oder einen Code pro Tool in User Results packt
Pro Modell andere Prüfungen ausführenDie SPS sendet den Teiletyp; das Recipe script kennzeichnet andere Teiletypen als Not inspected oder aktiviert/deaktiviert eine Prüfung
Eigene Pass-Logik verwendenZum Beispiel OK, wenn mindestens 78 von 80 Regionen OK sind, oder den Namen des fehlerhaften Tools in die Begründung schreiben
Ein Teil nicht prüfen, wenn Daten fehlen oder veraltet sindEin Recipe script, das Not inspected zurückgibt, wenn die Seriennummer nicht eingetroffen ist oder wenn der letzte Wert der SPS zu alt ist
Jedes Ergebnis veröffentlichenNichts zu schreiben: Mit einem unter Data Connectors eingerichteten Broker gehen jedes Ergebnis und ein Heartbeat an MQTT. Nutzen Sie das Camera script für ein eigenes Topic oder Nachrichtenformat
Die Linie überwachenEin Camera script, das nach N Ausschüssen in Folge einen Alarm auslöst, OK- und NG-Zählerstände pro Schicht als CSV veröffentlicht oder einen Heartbeat sendet
Auf Anfragen über MQTT antwortenEin Camera script, das Anfragen wie last result oder value of a variable beantwortet

Für jede der obigen Konfigurationen, die ein Skript verwendet, gibt es eine fertige Vorlage im Bereich Templates des Skript-Editors.

Die Skript-Werkbank​

Beide Skripte werden im selben Editor auf der Kamera geschrieben, mit:

  • Templates: funktionierende Beispiele für jede obige Aufgabe. Wählen Sie eines aus und tragen Sie Tool oder Variable ein
  • Autocomplete und ein Reference-Panel, das jeden Hook, jede globale Variable und jeden Typ mit kurzen Anleitungen dokumentiert
  • Test gegen die Live-Kamera oder kürzliche Aufnahmen, sodass Sie nicht mehr zwischen HMI und Skript-Tab wechseln müssen
  • History: Ihre letzten 20 gespeicherten Versionen zum Vergleich oder zur Wiederherstellung
  • Test führt den Entwurf an einem Live-Trigger oder gespeicherten Aufnahmen aus (die neueste, die letzten N bis zu 500, einen Library-Filter oder Aufnahmenummern). Für das Camera script ist dies ein Dry Run, der kürzliche Ergebnisse abspielt, ohne etwas zu senden

Recipe-script-Editor mit Templates, History, Settings, Test und dem Reference-Panel

Vor dem Speichern testen

Ein Recipe script, das einen Fehler wirft oder das Zeitlimit überschreitet, macht das Teil Not inspected und nullt die PLC User Results. Führen Sie Test sowohl mit einem fehlerhaften als auch einem guten Teil aus, bevor Sie speichern, und halten Sie das Skript kurz: Seine Laufzeit addiert sich zu jedem Zyklus.

Gut zu wissen​

  • Variablen, Skripte und MQTT-Einstellungen werden mit Rezept-Exporten übernommen. Passwörter und Zertifikate werden nicht exportiert: Wenn die Quelle Anmeldedaten verwendet hat, die das Ziel nicht hat, kommt MQTT deaktiviert an; andernfalls bleibt die Einstellung der Quelle erhalten
  • Die HTTP API gibt Ergebnisse jetzt im gleichen Format wie MQTT und die Skripte zurück. Wenn Sie gegen 2026.10.13 integriert haben, beachten Sie die Feldänderungen auf dieser Seite
  • Noch nicht verfügbar: Eine Prüfung auslösen oder Rezepte aus dem Camera script heraus wechseln (das machen weiterhin SPS und HTTP), TCP und OPC-UA sowie ein HMI-Widget zum Anzeigen oder Setzen einer Variable

Nächste Schritte​