11-01-2011 10:14 AM
Is this thread still available ?
I am running perfect with LabVIEW 2010 and OceanOptics OmniDriver for LabVIEW to get the XY graph of Intensity vs Wavelength for each channel.
However, my client needs me to grab the Intensity of one specific wavelength (say 400) vs time in real-time.
Can anyone share your experience of similar LabView VI ?
Joe
11-01-2011 03:53 PM
Hi Joe,
I'm afraid this thread is dead but fortunately it happens that after more than 2 years on this package developement I will work on a similar project this month so may be we could share some insight later.
Regards,
Charly
11-01-2011 07:35 PM
You might consider dropping Omnidriver and using the NI drivers instead:
These drivers are easier to work with in Labview than Omnidriver, and in my experience are more stable as well.
Jason
11-02-2011 08:54 AM
Hi, Jason,
Thanks for your information. It helps but still not solves my problem for getting the detail and specific data from the spetrometer's channel.
Joe
11-02-2011 10:38 AM
Hi Joe,
I work for Ocean, so hope to answer this for you.
The data you'll get out of Omnidriver, are wavelenght versus whatever parameter on the Y-axis (counts, reflection, absorption, irradiance, etc). Normally you'll get an array length of 1024, 2048 or 4096 depending on the amount of pixels the CCD Detector has. The pixels are calibrated in the factory to wavelength, that's why you'll get unique wavelengths per device.
We are working to actually get functionality in our firmware to choose which wavelengths an user likes/expects as return values.
Until then you have great tools in Labview to handle this. They are called Threshold and Interpolate.
As input you give the required X-value, then feed the result into interpolate to find the right Y-value. If you loop this you'll get a new array with the wavelength you'd like.
See below an example from my code.
hope this helps! Good luck!
Marco
ps. the NI drivers are indeed great, we like them. NI supports them. Do look at the functionality you need, as Omnidriver (and especially SPAM our analysis module) do have some additional functionalities. Depends what you're looking for.
11-02-2011 02:02 PM
Hi, Marco,
It seems that you got my points of question.
My X-value is the time and the Y-value is the Intensity of a user-defined (input) wavelength from a specific channel.
I do use the Omnidriver's LabVIEW NETWrapper llb but It is not enough.
Could you share your codes (Threshold and Interpolate) to me so that I can figure out what my code is going to be ?
Thanks for the valuable information.
Joe
11-03-2011 02:58 PM
11-08-2011 02:18 PM
Hi, Albert,
This threshold array can only pick up those Intensities which are greater than the input threshold.
What I need is to pick up those intensities which are exact from a specific wavelength and draw a graph of these intensities vs. time.
I have no idea of this because I do not know how the data is arranged in the array and how to get the timing data for the graph.
Here I attached one of my testing VI which were modified from OceanOptics sample and it can get intensity of all the wavelength from a specifice channel.
Now, I need to further filter some of data and only focus on data from a specific wavelength.
Thanks for the help.
Joe
11-08-2011 02:22 PM
Sorry for the last reply without the attachment.
However, I still can not attach the VI file. Please let me know your email address so that I can send you the sample.
Thanks !
Joe
11-08-2011 03:58 PM
The search should take place on the wavelength because you want a specific wavelength.
The same index, including a linear interpolation can be used to calculate the amplitude.
Take your time to play with both vi's, it took me also a few retries and still is not completely easy.