01-26-2012 04:01 AM - edited 01-26-2012 04:02 AM
I'm using a NI PCI-6030E with Labview 2011, and want to build a controller for my AOTF, but I'm stuck on the programming and beginning to wonder if it is possible with my hardware. Hopefully there is someone here who can help me.
This is my setup:
A camera records frames at framerates between 10 and 100 Hz and exposure times between 100ms and 1 ms. These values are set before every experiment. The camera gives a high TTL signal wenever it is exposing the chip. This is the input signal.
An AOTF controles the transmission of laserlines that must expose the sample whenever the camer chip is exposed. This AOTF has four inputs for different laserlines it can control. Whenever a line is high the corrosponding laser is transmitted.
This is my goal:
I would like to build a labview program that let's the AOTF alternate between laserlines sychronized with the camera. For example 1x line 1, 4x line 2, 1x line 3, 4x line 4, and repeat. Is this possible with the PCI-6030E ?
In the attachment I put an example of an input and output signal.
Solved! Go to Solution.
01-26-2012 11:58 AM
Unfortunately, the 6030E does not support the necessary features to get what you need.
What I would suggest is to switch hardware to something that supports change detection and buffered digital output (eg. PCI-6220, PCIe-6320). You could then configure a change detection task which will generate a clock on both the rising and falling edges of your signal. Using this clock, you could then generate a digital waveform that would produce the signals you need on lines 1 through 4.
02-15-2012 04:59 AM
I now have a PCI-6220 and I am trying to program the controller. Using this example:
http://zone.ni.com/devzone/cda/epd/p/id/317 I can detect changes created by the camera on port0/line0 (pin52/53) .
If I understood your post correctly should create a clock from that, and then program a buffered digital output to sychronize with that clock?
Are there maybe also examples for that?
02-22-2012 08:23 AM
Problem solved. Turned out only port0 has buffered digital output and change detection, so I created a digital input on line0 with change detection. Then made a digital output on port 0 with a sampleclock that has "ChangeDetectionEvent" as source.
07-12-2012 09:37 AM
I have a similar problem trying using TTL signal to control different lasers through AOTF. I want to alternatively switch from different lasers. The problem for me is that I want to output anolog signals so that I can control the intensity of different lasers. I try to use the counter to select different channels. However, it seems that the there is some deleay of my program. Will some one helps me improve my code? Thanks!
07-16-2012 07:24 AM
Maybe you can use the link below. Otherwise don't hesitate to ask any question.