LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Ocean Optics USB4000 Spectrometer

Alvin,

 

first of all many thanks for providing this nice VISA driver! After having struggled with the OmniDriver, this instrument driver makes all the difference :-)) 

 

One issue I recently noticed is that the driver seems to consume an aweful lot of CPU cf. the attaced screenshot. Is there anything that can be done about this ??? 

 

The CPU-load did not bother me too much with my latest program as it involved only one USB-4000. For my next project though, I am planning to operate 4 spectrometers simultaneously and I am expecting serious problems if each single USB-4000 consumes 25% CPU or more, what can one do ?

 

regards HU

0 Kudos
Message 101 of 286
(3,699 Views)

Hello Dave,

        Here is a version of the driver that is saved for LabVIEW 7.1.

 

-NathanT

0 Kudos
Message 102 of 286
(3,670 Views)
Hello HU, I recommend that you try increasing the delay in the main while loop and see if the CPU usage goes down (or just get a quad-core computer). You can also experiment with removing the waveform graph and see if the system usage improves. UI items can end up taking up a significant amount of resources if they are being updated frequently. Examples are provided to give you a good idea of how to start. In many cases it is a good idea to design and implement your code according to the special requirements of your application. I recommend that you take a look at the Producer-Consumer architecture. Cheers, NathanT
0 Kudos
Message 103 of 286
(3,673 Views)

Thank you NathanT!

 

~Dave

0 Kudos
Message 104 of 286
(3,638 Views)

Hello NathanT,

 

the program that I attached IS the example that NI (AlvinT?) provided with the driver and after over 20 years in the instrumentation business I refuse to believe that reading 4000 words from a USB-device at 10Hz requires a quad-core computer - really!

 

Could NI please forward my request to the person who wrote this driver? This spectrometer unit is part of a large investment on my clients side and we need to install the software very soon. I will also trigger off an official support request here from our local NI branch to get a result hopefully soon.

 

Thanks so far HU

 

ps. my client is probably one of the oldest NI-customers here in Austria (~ 20 years?) and I suggested to them to use the NI driver instead of the Omnidriver trusting in the statement "driver is supported by NI" , so please NI don't disappoint us 😉

0 Kudos
Message 105 of 286
(3,619 Views)

NathanT,

I'm getting the same error with the recompiled drivers you posted as I was with the drivers I recreated:

 

Errorpic.png

 

I've cycled the power (unplugged and plugged back in) several times, but I always get this error. I initially thought it was because the read spectra .vi was timing out, but that is probably due to the instrument not being synchronized as well.

 

Is there a way to force synchronization besides cycling the power?

 

Cheers,

~Dave

0 Kudos
Message 106 of 286
(3,597 Views)

Hello HU,

       What happened to the CPU usage when you deleted the waveform graph?

 

In your time in the instrumentation business, you have probably seen that rapidly updating User Interface objects can negatively effect system performance.

 

This is probably a general LabVIEW performance issue and not a specific problem with the instrument driver.  I have requested that a local AE contact you and help you improve the system resource usage.

 

I am the best person to talk to about problems with the instrument driver.  If any commands are being sent incorrectly, please let me know.

 

I appreciate that you recommended the LabVIEW driver to your customer, and don't think that you or they will be disappointed.

 

-NathanT

 

 

0 Kudos
Message 107 of 286
(3,597 Views)

Hello HU,

       I spoke with the vendor and they recommended pulling the Wavelength calculation outside of the loop.  I have done that in the attached VI.  Please try running it and let me know how your resource usage changes.  The goal of our instrument drivers is to provide data to the user in the most "usable" state, so that is why we are not just returning raw data.  If your customer is just concerned with logging raw data, the instrument driver can be modified.

 

-NathanT

0 Kudos
Message 108 of 286
(3,578 Views)

Hello David,

     The error is being generated because the synch byte is not being found at the end of the spectrum data. 

 

A couple of questions for you:

 

Are you using USB 2.0 or 1.1?

 

Are you doing anything else with the device when you are trying to read the spectra?

        Please confirm that any configuration settings are within the valid ranges for your device.

 

Are you attempting to use external hardware triggering?

 

Does the issue reproduce on other PCs?

 

 

-NathanT

 

0 Kudos
Message 109 of 286
(3,572 Views)

I have been tracking this thread and reading as much as I can but I have yet to succeed with OO QE65000.  I have tried everything, but afraid that I am missing something that is keeping me from getting this to work.  I am running XP with LV2009.  I also have 8.6 still on the machine as well. I don't have spectrasuite installed on the system anymore.

 

1)  I installed the old drivers from OO.  I upgraded to the 1.5 drivers +SPAM (even though the driver detail says 1.2 can someone check to see what yours says) and uninstalled the fieldpoint.  I still get the Can't create JVM.  I updated to the latest java, same thing with the error 1097.  After failure with this, I moved on to 2.

 

2)  Created NI-VISA drivers.  I did get this working, however, I have notices loss of functionality.  I need to do the electric dark correction and I don't see anything that allows me to do this.  I moved on to 3.

 

3)  Seeing Sundar VI's that uses active x, I tried those once I switch the drivers back to the OO.  It doesn't work, and throws up a error 97 unknown system error in get wavelenghts.vi

 

I been working this from both NI and OO side of the house.  NI gave me some advice, but no success and OO is saying they are away and working with NI and pretty much telling me to follow the same steps of removing the fieldpoint drivers which is already done.  So to the NI community. 

 

Is there something I'm missing here to get this program to work with the supplied OO VI's?

I can use the NI-VISA drivers, but is there a way to get the functionality, such as electric dark correction, added to this?

For Sundar VI's, anyone know what is throwing up that code?

 

Thanks,

guilio

0 Kudos
Message 110 of 286
(3,517 Views)