Sychronisationsproblem SensiCam
-
- beginner
- Сообщения: 47
- Зарегистрирован: 09 дек 2008, 15:20
- Версия LabVIEW: 8.2
- Контактная информация:
Sychronisationsproblem SensiCam
Hallo!
Zur Zeit arbeite ich an einem Versuchsaufbau, bestehend aus folgender Hardware:
Frequenzgenerator, Triggermodul, Stroboskop und SensiCam Fast Shutter von PCO mit dazugehöriger PCI-Karte (Kommunikation/Datentransfer über Glasfaserkabel UND BNC-Buchse).
Die Synchronität zwischen Belichtung der Kamera und Strobo-Blitz bei einer bestimmten Trigger-Frequenz (hier z.B.: 12 Hz) funktioniert unter der mitgelieferten Kamera-Software "CamWare" von PCO einwandfrei.
Bei gleichen Hardware-Parametern (Frequenz, Triggermodi, Kamera-Einstellungen) klappt diese Synchronität unter meinem LV-Programm (unter Verwendung der PCO-VI´s) leider nicht zufriedenstellend.
- Einzelbildaufnahmen, extern getriggert, funktionieren
- Bei Bildsequenzen kommt es zu folgendem Problem:
Die Kamera belichtet zwar die eingestellte Anzahl Bilder, doch nicht alle sehen auch den Blitz. Und leider (nicht reproduzierbar!) variierend viele und an unterschiedlichen Positionen in der Sequenz.
Teilweise stimmt die Synchronität über die gesamte Sequenz (sehr selten), teilweise nur bei 40%, mal ist das erste Bild ohne Licht usw.
Kann es an Laufzeit-Problemen zwischen Windows und LV liegen? Ich benutze LV 8.2.
Bin ratlos und über Antworten sehr froh!
Günnsen
Zur Zeit arbeite ich an einem Versuchsaufbau, bestehend aus folgender Hardware:
Frequenzgenerator, Triggermodul, Stroboskop und SensiCam Fast Shutter von PCO mit dazugehöriger PCI-Karte (Kommunikation/Datentransfer über Glasfaserkabel UND BNC-Buchse).
Die Synchronität zwischen Belichtung der Kamera und Strobo-Blitz bei einer bestimmten Trigger-Frequenz (hier z.B.: 12 Hz) funktioniert unter der mitgelieferten Kamera-Software "CamWare" von PCO einwandfrei.
Bei gleichen Hardware-Parametern (Frequenz, Triggermodi, Kamera-Einstellungen) klappt diese Synchronität unter meinem LV-Programm (unter Verwendung der PCO-VI´s) leider nicht zufriedenstellend.
- Einzelbildaufnahmen, extern getriggert, funktionieren
- Bei Bildsequenzen kommt es zu folgendem Problem:
Die Kamera belichtet zwar die eingestellte Anzahl Bilder, doch nicht alle sehen auch den Blitz. Und leider (nicht reproduzierbar!) variierend viele und an unterschiedlichen Positionen in der Sequenz.
Teilweise stimmt die Synchronität über die gesamte Sequenz (sehr selten), teilweise nur bei 40%, mal ist das erste Bild ohne Licht usw.
Kann es an Laufzeit-Problemen zwischen Windows und LV liegen? Ich benutze LV 8.2.
Bin ratlos und über Antworten sehr froh!
Günnsen
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Kannst du nen Screenshot deines VIs (gerade wo die Synchronisation passiert) machen? Evtl. liegt es an der Verwendung von Variablen, falls du welche verwendest.
-
- beginner
- Сообщения: 47
- Зарегистрирован: 09 дек 2008, 15:20
- Версия LabVIEW: 8.2
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Da habe ich mich wohl falsch ausgedrückt...
Eine Synchronisation in LV gibt es nicht wirklich. Sie ist bei der aktuellen Frequenz auch nicht nötig, da Kamera und Strobo durch die Auslesezeit des Kamera-Chips synchron laufen (jedenfalls in CamWare). Die Sync wollte ich eigentlich nur über delay und exposure der Kamera steuern (und zur Not nur jedes xte Trigger-Signal belichten).
Das große Rätsel ist nun also, warum die Kamera, über LV gesteuert, nicht jeden Blitz trifft.
Klingt vielleicht noch blöder, aber wie füge ich nen Screenshot ein?
Eine Synchronisation in LV gibt es nicht wirklich. Sie ist bei der aktuellen Frequenz auch nicht nötig, da Kamera und Strobo durch die Auslesezeit des Kamera-Chips synchron laufen (jedenfalls in CamWare). Die Sync wollte ich eigentlich nur über delay und exposure der Kamera steuern (und zur Not nur jedes xte Trigger-Signal belichten).
Das große Rätsel ist nun also, warum die Kamera, über LV gesteuert, nicht jeden Blitz trifft.
Klingt vielleicht noch blöder, aber wie füge ich nen Screenshot ein?
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Auf den Button "Antworten" links unten klicken, da kannst du dann deine Screenshots einfügen.
-
- beginner
- Сообщения: 47
- Зарегистрирован: 09 дек 2008, 15:20
- Версия LabVIEW: 8.2
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Also mein Windows macht screenshots als .bmp. Und die sind hier verboten bzw können nicht eingefügt werden.
Ich könnte mein VI anhängen, da sind aber viele spezifische SubVIs drin...
Soll ich?
Ich könnte mein VI anhängen, da sind aber viele spezifische SubVIs drin...
Soll ich?
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Nö, ich glaube VI mit vielen fehlenden SubVIs bringt nichts. Mach lieber Screenshots (am besten PNG).
Schau:
Block Diagramm öffnen
Ctrl+A klicken (alles markieren)
Ctrl+C klicken (in die Zwischenablage kopieren)
Paint aufmachen
Ctrl+V klicken (aus der Zwischenablage kopieren)
Ctrl+S klicken (speichern)
Name eingeben und PNG Format auswählen
Schau:
Block Diagramm öffnen
Ctrl+A klicken (alles markieren)
Ctrl+C klicken (in die Zwischenablage kopieren)
Paint aufmachen
Ctrl+V klicken (aus der Zwischenablage kopieren)
Ctrl+S klicken (speichern)
Name eingeben und PNG Format auswählen
-
- beginner
- Сообщения: 47
- Зарегистрирован: 09 дек 2008, 15:20
- Версия LabVIEW: 8.2
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Sowas muss den dummen doch einfach mal gesagt werden...
Hilft das weiter? Bin wie man merkt sehr neu dei der Sache.
Hilft das weiter? Bin wie man merkt sehr neu dei der Sache.
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Ja, ich sehe keine einzige Varible, das ist schon mal gut.
Die eigentliche Aufnahme passiert an dieser Stelle?
Die eigentliche Aufnahme passiert an dieser Stelle?
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Jetzt erkläre mal nacheinander was du alles machen muss um eine Aufnahme zu machen. Du hast:
Frequenzgenerator, Triggermodul, Stroboskop und SensiCam Fast Shutter
Musst also vier Geräte ansteuern?
Frequenzgenerator, Triggermodul, Stroboskop und SensiCam Fast Shutter
Musst also vier Geräte ansteuern?
-
- beginner
- Сообщения: 47
- Зарегистрирован: 09 дек 2008, 15:20
- Версия LabVIEW: 8.2
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Das Bild ist allerdings für die Einzelbild-Aufnahme. Das rechte VI im roten Kringel ist nur für die Darstellung auf dem Display zuständig und gibt eine Kopie des Einganges weiter.
Hier nochmal die Serienbild-Aufnahme und das Innenleben des VI: SC_Aufnahme.
LV soll nur folgendes verwalten: Speichern der Bilder, Auswerten der Bilder (filtern, vermessen usw...) und Kamera-Wartezeiten und Belichtung steuern. Der Rest soll eigentlich extern passieren. Ein Frequenz-Signal löst den Trigger aus, der den Blitz und die Kamera triggert.
Wobei die Bildearbeitung noch nicht integriert ist. Erst sollte der Rest laufen...
Hier nochmal die Serienbild-Aufnahme und das Innenleben des VI: SC_Aufnahme.
LV soll nur folgendes verwalten: Speichern der Bilder, Auswerten der Bilder (filtern, vermessen usw...) und Kamera-Wartezeiten und Belichtung steuern. Der Rest soll eigentlich extern passieren. Ein Frequenz-Signal löst den Trigger aus, der den Blitz und die Kamera triggert.
Wobei die Bildearbeitung noch nicht integriert ist. Erst sollte der Rest laufen...
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Im VI Aufnahme hast du eine While-Schleife, wo du den Status pollst. Kann dein Problem hier stecken?
Also die Kamera und der Blitz bekommen einen externen Trigger und die Kamera geht in einen bestimmten Modus. Du musst in dem Programm diesen Modus erkennen und die Aufnahme machen. Stimmt es?
Weitere Frage: hast du mal die CPU-Auslastung angeschaut während dein Programm läuft? Du hast nirgends Wartezeit. Unterstützen die VIs den Abfragemodus mit Timeout?
Die Bibliothek sollte doch was mit Events unterstützen. Mit dem Pollen ist so ne Sache. Da kann es passieren, dass du das Bild verspätet bekommst.
Also die Kamera und der Blitz bekommen einen externen Trigger und die Kamera geht in einen bestimmten Modus. Du musst in dem Programm diesen Modus erkennen und die Aufnahme machen. Stimmt es?
Weitere Frage: hast du mal die CPU-Auslastung angeschaut während dein Programm läuft? Du hast nirgends Wartezeit. Unterstützen die VIs den Abfragemodus mit Timeout?
Die Bibliothek sollte doch was mit Events unterstützen. Mit dem Pollen ist so ne Sache. Da kann es passieren, dass du das Bild verspätet bekommst.
-
- beginner
- Сообщения: 47
- Зарегистрирован: 09 дек 2008, 15:20
- Версия LabVIEW: 8.2
- Контактная информация:
Re: Sychronisationsproblem SensiCam
In der while-schleife wird der Status des PCI-Boards abgefragt. Also ob die Kamera gerade busy ist oder idle.
Der Modus der Kamera ist sogar voreingestellt. Kann also eigentlich auch nichts schief laufen..
CPU-Auslast kommt in 7min. Muß das System erst wieder hochfahren...
Wo kann ich erfahren, ob die VIs mit timeout arbeiten können?
Der Modus der Kamera ist sogar voreingestellt. Kann also eigentlich auch nichts schief laufen..
CPU-Auslast kommt in 7min. Muß das System erst wieder hochfahren...
Wo kann ich erfahren, ob die VIs mit timeout arbeiten können?
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Das heisst: ein Triggersignal kommt, Blitz und Kamera starten, danach geht die Kamera in den Modus "idle" und du kannst das Bild von der Kamera abholen.
Ich meine was hat dein Programm mit dem Trigger zu tun? Eigentlich gar nichts. Das Programm muss nur rechtzeitig die Bilder abholen können. Richtig? Wenn ja, was würde passieren, wenn du ein Bild rechtzeitig nicht abholen würdest? Macht dann die Kamera trotzdem die Aufnahmen oder wartet sie bis du das gerade gemachte Bild abgeholt hast?
Dem Blitz ist das bestimmt egal, der läuft ja mit dem Trigger weiter, oder?
Ich meine was hat dein Programm mit dem Trigger zu tun? Eigentlich gar nichts. Das Programm muss nur rechtzeitig die Bilder abholen können. Richtig? Wenn ja, was würde passieren, wenn du ein Bild rechtzeitig nicht abholen würdest? Macht dann die Kamera trotzdem die Aufnahmen oder wartet sie bis du das gerade gemachte Bild abgeholt hast?
Dem Blitz ist das bestimmt egal, der läuft ja mit dem Trigger weiter, oder?
-
- beginner
- Сообщения: 47
- Зарегистрирован: 09 дек 2008, 15:20
- Версия LabVIEW: 8.2
- Контактная информация:
Re: Sychronisationsproblem SensiCam
soweit ich es verstanden habe kommt der trigger, der chip wird belichtet, ausgelesen und erst dann kommt das idle Signal
der chip kann erst wieder belichtet werden, nachdem er ausgelesen ist. der trigger hat mit dem programm nichts zu tun, richtig. er sagt lediglich der kamera, daß sie belichten soll.
der blitz läuft immer weiter
der chip kann erst wieder belichtet werden, nachdem er ausgelesen ist. der trigger hat mit dem programm nichts zu tun, richtig. er sagt lediglich der kamera, daß sie belichten soll.
der blitz läuft immer weiter
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Sychronisationsproblem SensiCam
Probiere mal in die beiden While-Schleifen eine Wartezeit von 10 ms zu machen. Und schau dir dann das Verhalten an.
Das beste wäre hier natürlich wenn du direkt mitbekommen würdest, wennn die Kamera in den Idle-Modus wechselt. Denn, wenn es passiert, dann kannst du ganz schnell und ohne Verzögerung das Bild abholen und die nächste Aufnahme machen. Ich meine du musst doch danach (nach dem du das Bild abgeholt hast) die Kamera wieder in den Run-Modus versetzen.
Deshalb war meine Idee mit dem Event. So, dass du halt ein Ereignis von der Kamera bekommst und direkt daraufreagieren kannst.
Hast du in der Library irgendwas mit Events oder Interrupts oder Timeouts?
Das beste wäre hier natürlich wenn du direkt mitbekommen würdest, wennn die Kamera in den Idle-Modus wechselt. Denn, wenn es passiert, dann kannst du ganz schnell und ohne Verzögerung das Bild abholen und die nächste Aufnahme machen. Ich meine du musst doch danach (nach dem du das Bild abgeholt hast) die Kamera wieder in den Run-Modus versetzen.
Deshalb war meine Idee mit dem Event. So, dass du halt ein Ereignis von der Kamera bekommst und direkt daraufreagieren kannst.
Hast du in der Library irgendwas mit Events oder Interrupts oder Timeouts?