Eingangs- und Ergebnisdaten¶
Der Datenaustausch zwischen Cognex-Toolgroups und Viper.NET erfolgt über Tools. Es werden Toolbocks genutzt, welche einer Namenskonvention folgen. Output-Terminals der Tools liefern die Eingangsdaten für die Toolgroup. Ergebnisdaten der Toolgroup wiederum werden nach vollständiger Ausführung von Input-Terminals spezieller Toolblöcke abgefragt.
Steuerungsvariablen - GInOut¶
Über GInOut können Daten mit externen Steuerungen ausgetauscht werden. Die Integration in die Toolgroup erfolgt über InputDataBlock und OutputDataBlock. Verknüpfungen der Toolblock-Terminals mit GInOut Daten werden im Tab Data des ToolgroupItem-Editors.
Die Kommunikation kann über unterschiedliche Wege erfolgen:
Variablen: Variablen werden im HW Explorer konfiguriert. Auf TG-Item Ebene werden anschließend Variablen aus dem HW Explorer mit Input / Output Terminals verknüpft.
Direkter Datenzugriff: Input / Output Terminals werden direkt mit einem Speicherbereich verknüpft. Die Konfiguration im HW Explorer entfällt.
Bemerkung
Es sollten Variablen im HW Explorer konfiguriert und hier verwendet werden.
Eingabedaten¶
Die Eingabedaten dienen dazu, Parameter einer externen Steuerung der Auswertung zuzuführen und diese somit dynamisch zu beeinflussen.
Direkter Zugriff¶
Mit dem Plus- bzw. Minusbutton werden neue Eingabedaten angelegt bzw. bestehende Eingabedaten gelöscht. Darunter befindet sich die Liste mit den aktuell konfigurierten Eingabedaten. Um neue definieren zu können, existieren folgende Einstellungen:
Terminal: Terminal, in das die Eingabedaten geschrieben werden sollen
Data: Definition des Datenblocks
Offset: Offset der Daten im Datenblock
Länge: Länge der Daten in Byte
Converter: Konverter zur Umwandlung der HW Daten in den Zieltyp
Generischer Typ: Auswahl des Zieldatentyps
Daten Einlesen: Liest aktuelle Werte aus dem Datenfeld und zeigt sie im Feld „aktuell“ an.
Vorschau aktualisieren: Aktualisiert das Vorschau-Feld, d.h. wandelt den Wert „aktuell“ laut Konverter um.
Unterhalb der Auswahl des Konverters befinden sich Einstellungen zur Konvertierung. Diese weichen je nach Art des Konverters voneinander ab. Folgende Einstellungen sind meist vorhanden:
Twisted Bytes: Bestimmt ob die Reihenfolge der Bits invertiert werden soll.
Bemerkung
Die hier benötigten Parameter entsprechen denen im HW Explorer. In den dortigen Kapiteln finden sich nähere weitere zum Übertragen von Daten von und zu externer Hardware.
Über Hardware-Variablen¶
Zunächst ist immer das Anlegen von Variablen im Hardware Explorer notwendig. Danach können die Eingangsvariablen mit den Terminals des Input Daten Block verbunden werden.
Zum leichteren Verständnis in welche Richtung die Daten fließen ist der Direction Pfeil in der Mitte der Tabelle abgebildet.
Ausgabedaten¶
Mithilfe der Ausgangsdaten können Ergebnisse der Auswertung zu einer externen Steuerung weitergegeben werden, die anschließend entsprechend reagiert.
Direkter Zugriff¶
Die Definition der Ausgabedaten gestaltet sich identisch zu den Eingabedaten. Zusätzlich können jedoch Default-Werte eingegeben werden, die bei einem Fehler im Datenbereich stehen.
Über Hardware-Variablen¶
Die Definition der Ausgabedaten gestaltet sich identisch zu den Eingabedaten.
Definieren von Ergebnisbits¶
Zur Auswertung von Prüfkriterien können sogenannte Ergebnisbits definiert werden. Dabei werden Ergebnisse der DataAnalysis-Terminals als einzelne Bits an eine externe Steuerung übergeben.
Auf der linken Seite befinden sich die aktuell konfigurierten Ergebnisbits. Mit Plus kann ein neues (bereits konfiguriertes) Bit hinzugefügt und mit Minus ein Bestehendes entfernt werden.
Im mittleren Teil des Dialogs befindet sich eine Liste aller Auswertungen aller DataAnalysis-Terminals in der ToolGroup. Durch die Pfeile kann ein Kriterium auf die rechte Seite übernommen werden und beeinflusst das gewählte Bit.
Falls ein Terminal gelöscht wurde, jedoch einem Ergebnisbit zugeordnet ist, erscheint er in der Liste „ungültige Einträge“.
Bilder¶
Eingangsbilder erhalten die Toolgroups in Viper.NET von einem ImagesToolBlock. Im ToolGroup Item Editor werden die Terminals mit Bildquellen verknüpft.
Ergebnisbilder können mittels SaveImagesEx-ToolBlock abgespeichert werden.
CSV Dateien¶
Viper.NET bietet zwei Mechanismen um Ergebnisse einer Toolgroup in Csv-Dateien zu speichern:
ResultCsv-Tool: Das VisionPro-Tool kann in jeder Toolgroup eingebunden werden. Bei jeder Tool-Ausführung werden die Terminal-Werte als Zeile in eine Ausgabedatei aufgenommen. Das Tool ist geeignet, wenn einzelne Werte in einer Tabelle erfasst werden sollen.
JobResultCsv-Plugin: Das Plugin muss in der Projektkonfiguration aktiviert werden. Es schreibt typische Ergebniswerte von Jobs wie zum Beispiel alle CogDataAnalysisTool-Terminals, in Csv-Dateien. Es eignet sich daher für Logging und Auswertung von BV-Ergebnissen.