Triggern nach dem Lego-Prinzip

Wer kennt sie nicht? Die farbigen Kunststoff-Klötzchen, die sich durch das patentierte Noppensystem beliebig zusammensetzen lassen und der Fantasie dabei freien Lauf lassen. Und dabei ist das Prinzip so genial wie einfach. Ein Erfolgsrezept wie sich herausstellte. Die Welt der industriellen Bildverarbeitung hat sich dieses Prinzip zu Nutze gemacht.

Unentdeckte Möglichkeiten

Kamera-Triggersignale sind heute weit mehr als Hardware-Leitungen, die in der Kamera-Firmware innerhalb von Mikrosekunden je nach aktiver Flanke eine Bildaufnahme starten. Triggersignale werden durch GenICam und der SFNC zu abstrakten Signaldefinitionen mit festgelegtem Verhalten und vielfältigem Nutzen. Die Trennung triggerauslösender Signale (Software) von triggerfähigen Geräteeingängen (Hardware) macht die Verwendungsmöglichkeiten von "Triggern" zudem noch variantenreicher. Und die Auslösung einer Bildaufnahme ist nicht nicht mehr beschränkt auf eine externe Quelle. Auch Zähler, Timer, generierte PWM Signale oder ein Software-Event sind mögliche "Signalgeber".

Die Trigger-Konfiguration von IDS Kameras wurde mit der Vision-Firmware V1.5 um zahlreiche Eigenschaften erweitert. Damit ergeben sich unzählige Verschaltungsmöglichkeiten der Trigger-Quellen.
Die Trigger-Konfiguration von IDS Kameras wurde mit der Vision-Firmware V1.5 um zahlreiche Eigenschaften erweitert. Damit ergeben sich unzählige Verschaltungsmöglichkeiten der Trigger-Quellen.

Trigger-Anwendungsfälle

Auch Funktionsblöcke wie Timer, Counter, PWM oder UserOutput können ihrerseits sehr variabel durch "Signale" zusammengeschaltet werden. Dadurch ergeben sich unzählige Möglichkeiten die Bildaufnahme einer Vision-Kamera zu steuern. Die folgenden Anwendungsfälle beschreiben nur einige Beispiele der vielen Trigger-Möglichkeiten, die mit IDS Vision-Kameras (ab Vision Firmware V1.5) umsetzbar sind. Diese sind so beschrieben, dass sie mit dem IDS Vision Cockpit mit Hilfe des GenICam Node Tree direkt nachgestellt werden können.

Azyklische Bildaufnahme

Auf einem Laufband werden verschiedene Typen von Bauteilen transportiert. Eine Lichtschranke triggert die Bildaufnahme der Bauteile, um Barcodes zur Bauteilidentifizierung auszulesen.

weiterlesen...

Eigenschaften

  • Das Triggersignal ist z.B. ein Software- oder Hardware-Trigger.
  • Durch unterschiedliche Bauteile und Abstände enstehen azyklische Triggersignale.
  • Unmittelbar nach dem Triggersignal startet die Bildaufnahme mit der Belichtung.
  • Die Belichtungszeit ist voreingestellt auf die Lichtverhältnisse und die Bandgeschwindigkeit, um scharfe Bilder zu erhalten.
  • Es wird pro Triggersignal genau ein Bild aufgenommen.
  • Während der Bildaufnahme und der Auslesezeit wird kein weiteres Triggersignal angenommen.

Parametereinstellungen

AcquisitionMode   = Continuous
ExposureTime      = 15000
TriggerSelector   = ExposureStart
    TriggerMode   = On
    TriggerSource = Line0

Mit dem AcquisitionStart Kommando wird das System bereitgeschaltet, Triggersignale zu empfangen:

Acquisition Start

Execute AcquisitionStart

Mit "Line0" als TriggerSource können jetzt externe Hardwaretrigger-Quellen die Belichtung starten, z.B. durch Signale einer Lichtschranke oder eines Tasters.

Ist "Software" die TriggerSource, verwenden Sie dazu das Softwaretrigger Kommando:

Bildaufnahme

TriggerSource = Software
    Execute TriggerSoftware

Mit AcquisitionStop beenden Sie den Bildaufnahmemodus:

Acquisition Stop

Execute AcquisitionStop

Bereits gestartete Bildaufnahmen werden bei Auftreten des AcquisitionStop Signals noch vollständig belichtet und übertragen.

Signal-Zeit-Diagramm der azyklischen Bildaufnahme

Signal-Zeit-Diagramm der azyklischen Bildaufnahme

Verzögerter Bildeinzug

In einer Förderanlage, wo der Triggersensor baulich bedingt nicht direkt bei der Kamera montiert werden kann, muss die Bildaufnahme verzögert gestartet werden. Die Zeit der Verzögerung richtet sich dabei nach der Fördergeschwindigkeit.

weiterlesen...

Eigenschaften

  • Das Triggersignal ist z.B. ein Software- oder Hardware-Trigger.
  • Die Bildaufnahme startet mit Verzögerung (TriggerDelay) auf das Triggersignal die vorgegebene Belichtungszeit.
  • Die Zeit des TriggerDelay ist einstellbar (in Mikrosekunden von 0 bis ca. 16 sec)
  • Pro Triggersignal wird genau ein Bild aufgenommen.
  • Die einzelnen Triggersignale können azyklisch auftreten.
  • Während des TriggerDelay und der Bildaufnahme werden keine weiteren Triggersignale angenommen.

Parametereinstellungen

AcquisitionMode   = Continuous
ExposureTime      = 15000
TriggerSelector   = ExposureStart
    TriggerMode   = On
    TriggerSource = Line0
    TriggerDelay  = 500

Mit diesen Triggereinstellungen wird die Belichtung erst 500 µs nach Eintreffen des Line0 Triggersignals gestartet.

Das TriggerDelay kann mit jedem anderen TriggerSelector bzw. TriggerSource eingesetzt werden.

Mit dem AcquisitionStart Kommando wird das System bereitgeschaltet, Triggersignale zu empfangen:

Acquisition Start

Execute AcquisitionStart

Mit "Line0" als TriggerSource können jetzt externe Hardwaretrigger-Quellen die Belichtung starten, z.B. durch Signale einer Lichtschranke oder eines Tasters.

Mit AcquisitionStop beenden Sie den Bildaufnahmemodus:

Acquisition Stop

Execute AcquisitionStop

Bereits gestartete Bildaufnahmen werden bei Auftreten des AcquisitionStop Signals noch vollständig belichtet und übertragen.

Signal-Zeit-Diagramm des verzögerten Bildeinzugs

Signal-Zeit-Diagramm des verzögerten Bildeinzugs

Skaliertes Triggern

Eine Druckbahn wird von einer IDS Kamera im "Line-Scan-Modus" aufgenommen. Ein Encoder gibt die Taktrate vor, um die Bildaufnahme mit der Maschinengeschwindigkeit zu synchronisieren und die Pixel gleich groß zu halten. Die Encoder-Frequenz entspricht jedoch nicht der Zeilenfrequenz, so dass die Taktrate mit dem Trigger-Vorteiler reduziert werden muss.

weiterlesen...

Eigenschaften

  • Das Eingangssignal kommt per Software- oder Hardware-Trigger
  • Das Triggersignal startet die vorgegebene Belichtungszeit jeder Bildaufnahme.
  • Es wird pro Triggersignal genau ein Bild aufgenommen.
  • Durch den TriggerDivider kann jedes x-te Triggersignal verarbeitet werden.

Das Startsignal für den ExposureStart so konfiguriert, dass nur jedes 4te Signal auf Line0 ein Bild aufgenommen wird.

Parametereinstellungen

AcquisitionMode    = Continuous
ExposureTime       = 15000
TriggerSelector    = ExposureStart
    TriggerMode    = On
    TriggerSource  = Line0
    TriggerDivider = 4

Mit dem AcquisitionStart Kommando wird das System bereitgeschaltet, Triggersignale zu empfangen.

Acquisition Start

Execute AcquisitionStart

Mit "Line0" als TriggerSource können jetzt externe Hardwaretrigger-Quellen die Belichtung starten, z.B. der Encoder der Druckbahn.

Mit AcquisitionStop beenden Sie den Bildaufnahmemodus:

Acquisition Stop

Execute AcquisitionStop

Bereits gestartete Bildaufnahmen werden bei Auftreten des AcquisitionStop Signals noch vollständig belichtet und übertragen.

Signal-Zeit-Diagramm des skalierten Triggerns

Signal-Zeit-Diagramm des skalierten Triggerns

Aufnahmezeitspanne triggern

Beispiel: Der Fall eines Tropfens soll beobachtet werden. Beim Eintritt in den Bildbereich wird der Tropfen von einer Lichtschranke erkannt und die Bildaufnahme wird gestartet. Es werden Bilder aufgenommen, welche die Oberflächenbewegung des Tropfens während des freien Falls dokumentieren. Durch eine zweite Lichtschranke am unteren Bildrand wird die Bildaufnahme beendet, sobald der Tropfen den Bildbereich wieder verlässt.

weiterlesen...

Eigenschaften

  • Während der aktiven Phase des Trigger Signales werden kontinuierlich Bilder aufgenommen.
  • Framerate und Belichtungszeit sind fest eingestellt.
  • Die Anzahl aufgenommener Bilder wird durch die Zeit der aktiven Signalphase und die eingestellte Framerate bestimmt.

Parametereinstellungen

AcquisitionMode        = Continuous
AcquisitionFrameRate   = 30
ExposureTime           = 1000
TriggerSelector        = AcquisitionStart
    TriggerMode        = On
    TriggerSource      = Line0
    TriggerActiviation = RisingEdge
TriggerSelector        = AcquisitionStop
    TriggerMode        = On
    TriggerSource      = Line0
    TriggerActiviation = FallingEdge

Mit dem AcquisitionStart Kommando wird das System bereitgeschaltet, Triggersignale zu empfangen.

Acquisition Start

Execute AcquisitionStart

Mit "Line0" als TriggerSource können jetzt externe Hardwaretrigger-Quellen die Belichtung starten, z.B. der Encoder der Druckbahn.

Mit AcquisitionStop beenden Sie den Bildaufnahmemodus:

Bereits gestartete Bildaufnahmen werden bei Auftreten des AcquisitionStop Signals noch vollständig belichtet und übertragen.

Signal-Zeit-Diagramm zur Triggerung einer Aufnahmezeitspanne

Signal-Zeit-Diagramm zur Triggerung einer Aufnahmezeitspanne

Zyklisches Triggern

Beispiel: Durch eine Zeitrafferaufnahme soll der Verlauf einer Objekt-Bewegung dokumentiert werden. Die Belichtungszeit ist dabei an den vorgegebenen zeitlichen Verlauf angepasst.

weiterlesen...

Eigenschaften

  • Zyklische Triggersignale können durch einen Timer oder von einem PWM-Signal erzeugt werden
    • für hochfrequente Signal (bis 100 kHz) bietet sich ein PWM Signal an.
    • für niedrige Frequenzen (z.B. 1Bild pro Min) kann ein Timer mit optionalem Triggerteiler verwendet werden.
  • Durch einen zusätzlich steuerbaren Signalpegel (z.B. UserOutput) kann ein Timer zyklisch erneut gestartet werden.
  • Das Triggersignal startet die vorgegebene Belichtungszeit jeder Bildaufnahme.
  • Es wird pro Triggersignal genau ein Bild aufgenommen.

Parametereinstellungen

AcquisitionMode    = Continuous
ExposureTime       = 15000
TriggerSelector    = ExposureStart
    TriggerMode    = On
    TriggerSource  = Timer0Start
    TriggerDivider = 6

Der Timer0 wird so eingestellt, dass er 10 Sekunden (10.000.000 µs) lang läuft. Solange der Signalpegel des UserOutput0 auf "LevelHigh" steht, startet der Timer0 kontinuierlich neu. In Kombination mit dem Trigger Divider führt erst der sechste Timerstart zu einer Bildaufnahme.

Timereinstellungen

TimerSelector              = Timer0
    TimerDuration          = 10000000
    TimerTriggerSource     = UserOutput0
    TimerTriggerActivation = LevelHigh

Durch den manuellen Start der Acquisition wird das System bereitgeschaltet, jetzt Trigger zu empfangen. Die Bildaufnahme wird jedoch erst gestartet, wenn der Timer losläuft.

Acquisition Start

Execute AcquisitionStart

Wird nun UserOutput0 auf True (=LevelHigh) gesetzt, startet der Timer, wodurch sofort das erste Bild aufgenommen wird. Es empfiehlt sich zuvor einmalig ein TimerReset durchzuführen. Damit wird sicher gestellt, dass bereits das erste Intervall die volle Länge hat.

Timer Start

TimerSelector = Timer0
    Execute TimerReset
 
UserOutput0   = True

Mit diesen Einstellungen wird jede Minute ein Bild aufgenommen bis AcquisitionStop ausgeführt wird oder UserOutput0 auf False (=LevelLow) gesetzt wird.

Acquisition Stop

UserOutput0   = False
Execute AcquisitionStop

Bereits gestartete Bildaufnahmen werden bei Auftreten des AcquisitionStop Signals noch vollständig belichtet und übertragen.

Signal-Zeit-Diagramm des zyklischen Triggerns

Signal-Zeit-Diagramm des zyklischen Triggerns

Getriggerte Belichtungszeit

Beispiel: Eine Kamera liefert Bilder, die direkt verarbeitet und ausgewertet werden. Hier kann auch festgestellt werden, ob die Bilder über- oder unterbelichtet sind. Über den Pulsgeber kann dann die Belichtungszeit für die nächste Bildaufnahme dynamisch angepasst werden, ohne dass die Parameter in der Kamera verändert werden müssen.

weiterlesen...

Diese Art der Bildaufnahme wird auch "Level controlled exposure" oder "bulb mode" genannt.

Eigenschaften

  • Die Trigger-Pulsbreite bestimmt die Belichtungszeit.
    • Die Belichtung beginnt zum frühest möglichen Zeitpunkt nach Beginn des Belichtungszeit-Start-Triggers (hier: steigende Flanke auf Line0).
    • Die Belichtung dauert so lange, wie von den Triggersignalen vorgegeben.
    • Die Belichtung dauert dabei mindestens so lange, wie in TriggerControlledExposureTimeMin definiert.
    • Die Belichtung wird spätestens nach TriggerControlledExposureTimeMax abgebrochen
  • Pro Triggersignal wird genau ein Bild aufgenommen.

Parametereinstellungen

AcquisitionMode   = Continuous
TriggerSelector   = ExposureStart
    TriggerMode       = On
    TriggerSource     = Line0
    TriggerActivation = RisingEdge
TriggerSelector   = ExposureEnd
    TriggerMode       = On
    TriggerSource     = Line0
    TriggerActivation = FallingEdge
TriggerControlledExposureTimeMin = 500
TriggerControlledExposureTimeMax = 1000000

Mit den Parametern TriggerControlledExposureTimeMin bzw. TriggerControlledExposureTimeMax schränken Sie die Belichtungszeit auf einen für Ihre Anwendung "sinnvollen" Zeitbereich ein. Damit verhindern Sie viel zu kurze bzw. zu lange Belichtungen.

Mit dem AcquisitionStart Kommando wird das System bereitgeschaltet, Triggersignale zu empfangen.

Acquisition Start

Execute AcquisitionStart

Mit "Line0" als TriggerSource kann jetzt ein externer Pulsgeber die Belichtung der Bildaufnahmen steuern.

Mit AcquisitionStop beenden Sie den Bildaufnahmemodus:

Acquisition Stop

Execute AcquisitionStop

Bereits gestartete Bildaufnahmen werden bei Auftreten des AcquisitionStop Signals noch vollständig übertragen.

Verzahnte Bildaufnahme

Eine triggergesteuerte Belichtungszeit kann, je nach Sensor der verwendeten Kamera, auch "verzahnt" erfolgen (Interleaved Image Acquisition). Dabei wird der Sensor während der Auslesezeit bereits wieder für die nächste Bildaufname belichtet. Damit sind maximale Frameraten erreichbar. Der Parameter TriggerControlledExposureTimeMin bestimmt zusätzlich den Grad der Verzahnung. Dabei gilt:

  • Je höher TriggerControlledExposureTimeMin eingestellt wird, desto stärker kann verzahnt werden.

  • Wird TriggerControlledExposureTimeMin größer als die Dauer des Readouts, erhöht sich der Grad der Verzahnung nicht weiter

Signal-Zeit-Diagramm der getriggerten Belichtungszeit

Signal-Zeit-Diagramm der getriggerten Belichtungszeit

Schnellstmögliche gezählte Bildfolge

Beispiel: Eine Kamera nimmt Bauteile auf, die auf einem Förderband transportiert werden und auf Qualität geprüft werden sollen. Da es aus technischen Gründen keine Möglichkeit gibt, die Lichtquelle stabil zu halten, werden immer drei Bilder in schneller Folge mit unterschiedlicher Belichtungszeit aufgenommen. Das mit der besten Belichtung wird dann ausgewertet.

weiterlesen...

Eigenschaften

  • Pro Triggersignal werden mehrere Bild in schneller Folge aufgenommen ("Burst").
  • Das auslösende Triggersignal ist z.B. ein Software- oder Hardware-Trigger.
  • Die Belichtungszeit ist voreingestellt.
  • Die Aufnahme der Bilderserie erfolgt so schnell der Sensor es erlaubt.
  • Als Hilfsmittel für die gezählte Bildfolge wird ein Counter verwendet, der nach Erreichen der benötigten Bilderanzahl selbständig die Aufnahme beendet.
  • Während der Counter aktiv ist, wird kein weiteres Triggersignal verarbeitet.

Die Bildaufnahme wird so parametriert, dass Bilder dann eingezogen werden, während der Counter zählt, also er "aktiv" ist. Exposurezeit muss vorher eingestellt sein!

Parametereinstellungen

AcquisitionMode   = Continuous
ExposureTime      = 15000
TriggerSelector   = ExposureStart
    TriggerMode       = On
    TriggerSource     = Counter0Active
    TriggerActivation = LevelHigh

Der Counter wird durch ein externes Hardwaresignal ausgelöst (Line0). Sein Endwert (Duration) wird auf die gewünschte Anzahl der Bilderserie eingestellt. Die Zählung basiert auf dem ExposureStart-Event. Der Counter wird mit dem Startsignal (CounterTrigger) auch gleichzeitig zurückgesetzt. (Counter Reset).

Parametereinstellungen

CounterSelector      = Counter0
    CounterTriggerSource = Line0
    CounterResetSource   = CounterTrigger
    CounterEventSource   = ExposureStart
    CounterDuration      = 3

Durch den manuellen Start der Acquisition wird das System bereitgeschaltet. Die Bildaufnahme wird jedoch erst gestartet, wenn der Counter aktiv ist.

Acquisition Start

Execute AcquisitionStart

Mit dem Hardwaretrigger (Line0) können jetzt Bilderserien aufgenommen werden. Die Bildaufnahme wird automatisch gestoppt, wenn der Counter den voreingestellten Endwert erreicht.

Mit AcquisitionStop beenden Sie den Bildaufnahmemodus:

Acquisition Stop

Execute AcquisitionStop

Bereits gestartete Bildaufnahmen werden bei Auftreten des AcquisitionStop Signals noch vollständig übertragen.

Signal-Zeit-Diagramm der schnellstmöglich gezählten Bildfolge

Signal-Zeit-Diagramm der schnellstmöglich gezählten Bildfolge

Gezählte Bildfolge mit fester Framerate

Beispiel: An einer Ampel wird eine Kamera eingesetzt, um das Verhalten der Autofahrer beim Überfahren der Stopstelle unter "Rot" zu erfassen. Eine Bilderserie mit angepasster Framerate lässt Rückschlüsse auf die Geschwindigkeit, einen Bremsvorgang oder eine Richtungsänderung zu. So kann ein versehentliches langsames Überfahren mit anschliessendem Stop von einem echten Verkehrsvergehen mit Fahrerflucht unterschieden werden.

weiterlesen...

Eigenschaften

  • Pro Triggersignal wird eine festgelegte Anzahl Bilder aufgenommen.
  • Das auslösende Triggersignal ist z.B. ein Software- oder Hardware-Trigger.
  • Die Belichtungszeit ist voreingestellt.
  • Die Aufnahme der Bilderserie erfolgt mit vorgegebener Framerate.
  • Als Hilfsmittel für die gezählte Bildfolge wird ein Counter verwendet, der nach Erreichen der benötigten Bilderanzahl selbständig die Aufnahme beendet.
  • Während der Counter aktiv ist, wird kein weiteres Triggersignal verarbeitet.

Die Bildaufnahme wird so parametriert, dass Bilder dann eingezogen werden, während der Counter zählt, also "aktiv" ist. Exposurezeit und Framerate müssen vorher eingestellt sein!

Mit dem Hardwaretrigger (Line0) startet die Aufnahme der Bilderserie. Bei Erreichen des Counter0-Endwert stoppt diese dann automatisch.

Parametereinstellungen

AcquisitionMode      = Continuous
AcquisitionFrameRate = 30
ExposureTime         = 30000
TriggerSelector = AcquisitionStart
    TriggerMode     = On
    TriggerSource   = Line0
TriggerSelector = AcquisitionStop
    TriggerMode     = On
    TriggerSource   = Counter0End

Der Counter-Endwert (Duration) wird auf die gewünschte Anzahl der Bilderserie eingestellt. Die Zählung basiert auf dem FrameStart-Event. Der Counter wird mit dem Startsignal (CounterTrigger) auch gleichzeitig zurückgesetzt. (Counter Reset).

Parametereinstellungen

CounterSelector      = Counter0
    CounterTriggerSource = AcquisitionStart
    CounterResetSource   = CounterTrigger
    CounterEventSource   = FrameStart
    CounterDuration      = 3

Durch den manuellen Start der Acquisition wird das System bereitgeschaltet.

Acquisition Start

Execute AcquisitionStart

Ein auftretender Hardwaretrigger (Line0) startet die Bilderserie.

Mit AcquisitionStop beenden Sie den Bildaufnahmemodus:

Acquisition Stop

Execute AcquisitionStop

Bereits gestartete Bildaufnahmen werden bei Auftreten des AcquisitionStop Signals noch vollständig übertragen.

Signal-Zeit-Diagramm der gezählten Bildfolge mit fester Framerate

Signal-Zeit-Diagramm der gezählten Bildfolge mit fester Framerate

Schnellstmögliche zeitgesteuerte Bildfolge

Beispiel: Der Aufprall eines Tropfens auf unterschiedliche Oberflächen soll untersucht werden. Dazu wird die Bildaufnahme immer dann getriggert, wenn ein Tropfen in den Bildbereich fällt. Die Aufnahme wird dann für eine vorgegebene Zeit mit maximaler Framerate aufrecht erhalten, um das Verhalten beim Aufprall zu dokumentieren.

weiterlesen...

Eigenschaften

  • Pro Triggersignal werden mehrere Bild in schneller Folge aufgenommen ("Burst").
  • Das auslösende Triggersignal ist z.B. ein Software- oder Hardware-Trigger.
  • Die Belichtungszeit ist voreingestellt.
  • Die Aufnahme der Bilderserie erfolgt so schnell der Sensor es erlaubt.
  • Als Hilfsmittel für die Bildfolge wird ein Timer verwendet, der nach Ablauf der eingestellten Zeit selbständig die Aufnahme beendet.
  • Während der Timer aktiv ist, wird kein weiteres Triggersignal verarbeitet.

Je nach Geschwindigkeit und Datenmenge des "Burst" kann es vorkommen, dass die maximal mögliche Bandbreite der Datenschnittstelle überschritten wird! Daher ist zu prüfen, ob und wie lange ein solcher Burst aufrecht erhalten werden kann, und wie lange die Pausen zwischen den einzelnen Bursts sein müssen.

Die Bildaufnahme wird so parametriert, dass Bilder aufgenommen werden, während der Timer0 läuft, also "aktiv" ist. D.h. sobald der Sensor nach einer Aufnahme wieder bereit ist, startet er direkt die nächste Bildaufnahme.

Parametereinstellungen

AcquisitionMode   = Continuous
ExposureTime      = 15000
TriggerSelector   = ExposureStart
    TriggerMode       = On
    TriggerSource     = Timer0Active
    TriggerActivation = LevelHigh

Der Timer wird durch die steigende Signalflanke eines externen Hardwaresignal ausgelöst (Line0). Seine Dauer(TimerDuration) wird auf genau eine Sekunde eingestellt (1 s = 1000000 µs).

Timereinstellungen

TimerSelector          = Timer0
    TimerDuration          = 1000000
    TimerTriggerSource     = Line0
    TimerTriggerActivation = RisingEdge

Durch den manuellen Start der Acquisition wird das System bereitgeschaltet ein Triggersignal zu empfangen.

Acquisition Start

Execute AcquisitionStart

Mit dem Hardwaretrigger (Line0) können jetzt Bilderserien aufgenommen werden. Die Bildaufnahme wird automatisch gestoppt, wenn der Timer die voreingestellte Zeit erreicht.

Mit AcquisitionStop beenden Sie den Bildaufnahmemodus:

Acquisition Stop

Execute AcquisitionStop

Bereits gestartete Bildaufnahmen werden bei Auftreten des AcquisitionStop Signals noch vollständig übertragen.

Signal-Zeit-Diagramm der schnellstmöglich zeitgesteuerten Bildfolge

Signal-Zeit-Diagramm der schnellstmöglich zeitgesteuerten Bildfolge

Zeitgesteuerte Bildfolge mit fester Framerate

Beispiel: Die Reaktion von Prüfobjekten nach Eintreten eines bestimmten Events (z.B. Reaktionszeit, Verhalten, Entscheidungen) soll analysiert und geprüft werden. Dazu startet die Bildaufnahme mit Eintreffen eines externen Triggersignals. Für eine vordefinierte Zeitspanne werden Bilder mit einer geeigneten Framerate aufgenommen, um die Reaktion zu dokumentieren.

weiterlesen...

Eigenschaften

  • Pro Triggersignal werden mehrere Bild in einer vorgegebenen Zeit aufgenommen.
  • Das auslösende Triggersignal ist z.B. ein Software- oder Hardware-Trigger.
  • Die Belichtungszeit ist voreingestellt.
  • Die Aufnahme der Bilderserie erfolgt mit vorgegebener Framerate.
  • Als Hilfsmittel für die Bildfolge wird ein Timer verwendet, der nach Ablauf der eingestellten Zeit selbständig die Aufnahme beendet.
  • Während der Timer aktiv ist, wird kein weiteres Triggersignal verarbeitet.

Die kontinuierliche Bildaufnahme (10 fps) startet mit einem externen Triggersignal (Line0) und endet mit Ablauf des parallel gestarteten Timer0.

Parametereinstellungen

AcquisitionMode   = Continuous
ExposureTime      = 15000
AcquisitionFrameRate = 10
TriggerSelector   = AcquisitionStart
    TriggerMode       = On
    TriggerSource     = Line0
    TriggerActivation = RisingEdge
TriggerSelector   = AcquisitionEnd
    TriggerMode       = On
    TriggerSource     = Timer0End
    TriggerActivation = RisingEdge

Der Timer wird mit dem Start der Bildaufnahme ausgelöst (AcquisitionStart) und wird auf genau eine Sekunde eingestellt (1 s = 1000000 µs).

Timereinstellungen

TimerSelector          = Timer0
    TimerDuration          = 1000000
    TimerTriggerSource     = AcquisitionStart
    TimerTriggerActivation = RisingEdge

Durch den manuellen Start der Acquisition wird das System bereitgeschaltet ein Triggersignal zu empfangen.

Acquisition Start

Execute AcquisitionStart

Mit dem Hardwaretrigger (Line0) können jetzt Bilderserien aufgenommen werden. Die Bildaufnahme wird automatisch gestoppt, wenn der Timer die voreingestellte Zeit erreicht. Jeder weitere Hardwaretrigger löst eine neue Bildserie aus.

Mit AcquisitionStop beenden Sie den Bildaufnahmemodus:

Acquisition Stop

Execute AcquisitionStop

Bereits gestartete Bildaufnahmen werden bei Auftreten des AcquisitionStop Signals noch vollständig übertragen.

Signal-Zeit-Diagramm der zeitgesteuerten Bildfolge mit fester Framerate

Signal-Zeit-Diagramm der zeitgesteuerten Bildfolge mit fester Framerate

Trigger-Tipps

Folgende Tipps und Anmerkungen helfen Ihnen dabei Fehler zu vermeiden und das Verhalten der Triggerfeatures leichter zu verstehen:

  • Eingerückte Parameter können mehrfach vorkommen und können für jeden Elternknoten einen anderen Wert annehmen.
  • Schalten Sie nicht benötigte Triggersourcen immer inaktiv ("OFF").
  • Bereits gestartete Bildaufnahmen werden immer vollständig durchgeführt und übertragen, auch wenn Steuersignale währendessen enden.
  • Um Triggerparameter einzustellen, muss die Bildaufnahme gestoppt sein (AcquisitionStop)! Um die konfigurierten Trigger dann zu verwenden, muss die Bildaufnahme wieder gestartet werden (Acquisition Start)!
  • Ist ein Aufnahme-Trigger eingeschaltet (TriggerMode = ON) setzt das AcquisitionStart-Kommando die Bildaufnahme lediglich auf "bereit". Die Bildaufnahme startet erst mit einem definierten Triggersignal der eingerichten TriggerSource.
  • Sollen Bilder kontinuierlich getriggert werden, wird der AcquisitionMode typischerweise auf continuous gesetzt. Ansonsten wird die Bildaufnahme automatisch beendet, wenn ein Bild (Single Frame) oder eine Anzahl von X Bildern (Multi Frame) eingezogen wurden.
  • Externe Triggersignale können Sie mit Hilfe von "UserOutputs" leicht simulieren.
weiterlesen...

Externes Triggersignal simulieren

Wenn Sie komplizierte Triggeranwendungen testen möchten und eventuell keine Hardware-Signale zur Verfügung steht, können Sie dennoch ein Triggersignal simulieren. Dazu wird ein UserOutput auf eine Line (Hardware-Input) gelegt und diese als Output konfiguriert. Über den UserOutput können Sie nun die Line aktivieren und deaktivieren, als ob ein Hardware Signal dort anliegen würde.

Beispiel: Simulierter Hardware Trigger auf Line2

Acquisition Configuration

TriggerSource = Line2

Line2 wird so konfiguriert, als ob sie ein Output wäre mit Signaleingang von UserOutput0:

Line Configuration

LineSelector = Line2
LineMode     = Output
LineSource   = UserOutput0

Mit Aktivierung des Bildeinzugs wird das System bereit geschaltet, jetzt Trigger zu empfangen:

Acquisition Start

Execute AcquisitionStart

Ein- und Ausschalten von UserOutput0 löst nun Triggersignale auf Line2 aus und triggert Ihre Anwendung. Das Signal wird jeweils bei Aktivierung des UserOutputValues erzeugt.

UserOutput0 schalten

UserOutputSelector = UserOutput0
UserOutputValue    = true
UserOutputValue    = false