From: CharlyStardust on
Hi,

I am developing an application using an Ocean Optics (OO) spectrometer under LabVIEW V8.5. My spectrometer is the USB2000 and I have SpectraSuite and the OmniDriver package (OMNI+SPAM Beta release). The OmniDriver package consists in 2 modules (OmniDriver and SPAM). The java-based functions of those modules are both wrapped into the OmniDriverSPAM32.dll (on a windows platform). The OmniDriver package also comes with 2 LabVIEW libraries corresponding to OmniDriver and SPAM modules. Basically the subvis from these libraries are calling functions from the OmniDriverSPAM32.dll with Call Library Function Nodes.

 

Is there someone who is using that library under LabVIEW?

 

Do you guys have a kind of conflict with LabVIEW 8.5 and the OmniDriverSPAM32.dll? Does your application crashes systematically when you REopen your application WITHOUT closing LabVIEW? (I can send you the description to bring about the bug)

 

I'm trying to get the wavelength calibration of the spectrometer (It comes with the spectrometer) but I'm stuck. I need it to compute the absolute irradiance then the optical power in Lumens. So far I can acquire the spectrum from the spectrometer but only in counts (photons)

Did someone do it before?

 

Charly


SpectrometerScanV2.2.0.jpg:
http://forums.ni.com/attachments/ni/170/275400/1/SpectrometerScanV2.2.0.jpg


USB2000_readWavelengthcoefficients.JPG:
http://forums.ni.com/attachments/ni/170/275400/2/USB2000_readWavelengthcoefficients.JPG


USB2000_readWavelengthcoefficientsFP.JPG:
http://forums.ni.com/attachments/ni/170/275400/3/USB2000_readWavelengthcoefficientsFP.JPG
From: jason_w on
Hi Charly,
I see that you are using a couple of different drivers/applications with LabVIEW.  I have looked a bit into SpectraSuite and OmniDriver to see if there are any resources internally that would be beneficial in this situation.  Unfortunately, I can't find anything at all to reference specifically.  I would suggest to try and using the provided resources in LabVIEW to try and access the USB ports, but other than that I would recommend trying to investigate the drivers.  If these include subVIs in LabVIEW then they probably have a better route to find more information. 
Otherwise, it would be best for another customer to respond if they have referenced these specific packages.
Jason W.
From: CharlyStardust on
Hi Jason,
Thanks for your interest.  Spectra Suite is a spectroscopy software based on the OmnidriverSPAM32.dll That library also comes within the omnidriver package. I want to develop my own spectroscopy software with LabVIEW and that library. I don't want to use Spectra Suite.
There are some documents describing the functions of the OmnidriverSPAM32.dll (function prototype, inputs, outputs, what the function does) but not much for the LabVIEW functions.
 
I have 2 concerns:
 
1_Conflict with LabVIEW 8.5 and the omnidriver package
Here are the steps to reproduce the bug
 


Open LabVIEW 8.5

 

Open sample.vi (from Ocean Optics) ->OK

Run sample.vi ->OK

Stop from the front panel or abort execution ->OK

 

Run sample.vi again ->OK

Stop from the front panel or abort execution ->OK

Close sample.vi ->OK

 

Reopen sample.vi ->OK

Run sample.vi -> error 1097 An exception occurred within the external code called by a Call Library Function Node. The exception may have corrupted LabVIEW's memory. Save any work to a new location and restart LabVIEW.

 

To run the sample application again I must close LabVIEW then reopen the sample application.

 

Do you see the same bug?
 
2_The acquisition of the spectrum from the via the USB works well. I am just STUCK with the processing of the spectrum and I wondered if someone else who is currently using that library overcame that step. 
I should get in touch with a developer from Ocean Optics. I've investigated the labVIEW sample applications Ocean Optics provided.
 
By the way the omnidriver package replaces the OOILVD LabVIEW package from Ocean Optics (though still downloadable from NI website)
 
Thanks,
Charly 
From: Nasos on
Hi,
I'm trying to do exactly the same thing with you (absolute irradiance
measurements), using the usb2000.
The difference is that I'm trying to do it with the oolvd drivers (although I believe
it?s easier with SPAM).

I read about the problem you
have and I checked it in the oolvd for a while. The error you report
happens with the oolvd drivers too, even whith earlier versions of
LabVIEW. It doesn?t seem to be a conflict, but let me check it in the lab
where the USB2000 is connected to the PC.
You can aquire ?raw? spectrums
to your pc, but you want them to be calibrated for absolute irradiance
measurements. That means that you have to create a calibration file using
a calibration lamp (for example LS-1). Have you created this "calibration spectrum"?  (I'm trying to understand the step you are on).
What is your light sampling set
up? (Bare fiber, cc-3, int. sphere)?
If I had some of the OMNI+SPAM documentation could help me.Nasos 


error.doc:
http://forums.ni.com/attachments/ni/170/276879/1/error.doc
From: CharlyStardust on
Hi Nasos,
I started to develop my application with the oolvd drivers. OMNI+SPAM drivers are a bit more complicated (for example you have to handle the creation and the destruction of java objects) but more powerful than the oolvd drivers.
1_As for the 'conflict' between LabVIEW and the ocean optics dll I got in touch with ocean optics developers and they are investigating.
2_As for the absolute irradiance I understand that I need a calibration file. However as I don't have an ocean optics calibration lamp I thought I could skip to make an formal calibration by READING the calibration programmed onto my spectrometer's memory chip.
3_In my lab I have a Labsphere integrating sphere LMS-200 and its corresponding calibration lamp. I don't have an irradiance probe yet. My spectrometer is the usb2000 and I have a P400-2-VIS/NIR optical fiber.
Can you let me know about your calibration lamp data file and send me a sample. I think I can load it.
Please can you rephrase that sentence I don't get it:smileywink:  If I had some of the OMNI+SPAM documentation could help me
Thanks,
Charly