Image-Trigger Station¶
In manchen Applikationen muss der Bildeinzug direkt auf der Kamera durch einen externen Trigger ausgelöst werden, z.B. wenn Bauteile auf einem Förderband vor der Kamera vorbeifahren.
Ein Handshake wie bei der Vision Standard-Station wäre hier u.U. zu langsam. Bei der Image-Trigger Station wird die Auswertung deshalb durch den Bildeinzug selbst gestartet.
Damit ist ein anderer Handshake erforderlich:
Ablauf¶
Die Station setzt READY nach dem Laden des VisionJobs auf
HIGH.Die SPS setzt ENABLE um die Station vorzubereiten.
Nachdem die Station die Bildquelle konfiguriert hat, wird mit WAITING signalisiert, dass die Station auf den nächsten Bildeinzug wartet.
Ab jetzt kann die SPS den Bildeinzug der Kamera per Hardware-Trigger auslösen.
Nach der Bildübertragung startet die Station die Auswertung. Während der Auswertung sind:
BUSY:
HIGHIO:
LOWNIO:
LOWERROR:
HIGH
Am Ende der Auswertung wird BUSY auf
LOWsowie eines der Result-Bits aufHIGHgesetzt:IO: Gut-Teil
NIO: Schlecht-Teil
ERROR: Fehler bei der Auswertung
Die beiden Bits FINISHED_1 und FINISHED_2 wechseln ihren Zustand nach jeder Bildauswertung. Die SPS kann durch den Flankenwechsel feststellen, ob eine Auswertung stattgefunden hat.
Hinweis
Nach Neustart oder Reset der BV werden beide Finished-Bits auf LOW gesetzt. So kann die SPS zwischen einer echten Auswertung (1 Bit HIGH, 1 Bit LOW) und einem Reset (beide Bits LOW) unterscheiden.
Konfiguration¶
Wie jede Station wird die Image-Trigger Station in der stations.xml konfiguriert:
<station id="1" name="BV 1" type="VisionStationImageTrigger">
<param name="timeoutAllImages" value="10000"/>
<param name="resetOutDataOnStart" value="False"/>
<handshake>
<param name="bitToASCII" value="false"/>
<in>
<bit bitRef="1001" id="enable"/>
</in>
<out>
<bit bitRef="1001" id="ready"/>
<bit bitRef="1002" id="busy"/>
<bit bitRef="1003" id="error"/>
<bit bitRef="1004" id="io"/>
<bit bitRef="1005" id="nio"/>
<bit bitRef="1006" id="waiting"/>
<bit bitRef="1007" id="finished0"/>
<bit bitRef="1008" id="finished1"/>
</out>
</handshake>
<commandInterface>
<in>
<data dataRef="07" offset="0" length="24" id="DATA"/>
</in>
<out>
</out>
</commandInterface>
</station>
Parameter
timeoutAllImage: Nach dem ersten Bild müssen alle weiteren Bilder innerhalb dieses Timeouts empfangen werden. Nur aktiv wenn der Station mehrere Jobs zugeordnet sind.
resetOutDataOnStart: Wenn
Truewerden vor dem Start zusätzlich zum Handshake alle Ausgangsvariablen des ToolGroupItems auf ihre Default-Werte gesetzt.setBusyWithData: Siehe Vision Standard-Station
Zusätzlich können auch Kriterien-Bits und User-Bits verwendet werden.
Bemerkung
Die Image-Trigger Station kann derzeit nur für BV Jobs mit genau einer physikalischen Bildquelle verwendet werden, die allerdings als Master-Slave Bildquelle mehrere Bilder liefern kann.
Hinweis
Wenn WAITING nicht auf HIGH wechselt, muss die Ursache über die Log-Datei geprüft werden.