Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Making my USB instrument LabView compatible

Hello
I'm new to the NI developer zone and not experienced with LabView. I hope this is the right place to put my question:

We are in the process of designing a data acquisition device that will be attached to a PC through the USB port.
We are considering of making this device compatible for LabView. Is there a standard API that we have to provide?

As I am new to this field, even basic and simple hints pointing to the right direction are welcome. (Where to find information / who to ask / examples ...)

Thanks in advance for any help
Andy

0 Kudos
Message 1 of 5
(3,731 Views)

What do you mean by data acquision? Communicating with instruments to retrieve measurements or actual DAQ hardware?


 

0 Kudos
Message 2 of 5
(3,725 Views)
Actual DAQ hardware (rather slow, so no hard real-time restrictions will occur)
0 Kudos
Message 3 of 5
(3,721 Views)
 

http://sine.ni.com/nips/cds/view/p/lang/en/nid/11737 

http://zone.ni.com/devzone/conceptd.nsf/webmain/6100BC4CA014910786256E4A006FE675 

 

might be helpful

0 Kudos
Message 4 of 5
(3,717 Views)

There's a few different options you have. Instrument vendors that have added USB ports to their GPIB instrument have made them compliant with the USBTMC class. You can find out more about this at www.usb.org. It's possible to use VISA to write to USB devices on a lower level. Do a site search for 'VISA USB' for info. You'll also find some additional information on USBTMC. I'm currently using some in-house designed USB instruments that I control with some low level VISA functions. The instruments were designed just for users of LabVIEW or NI's product called TestStand. It would require a user to have VISA installed and while that's not an issue with LabVIEW users, there would be licensing issues if someone were wanting to use your instrument with VB, C++, etc. USBTMC requires VISA as well.

You could also write a dll in a language such as C++ that did the USB RAW communication and provide the api for the dll to all users. This might be the most universal solution. There is a shipping document with LabVIEW called 'Using External Code with LabVIEW' that explains how LabVIEW can call a dll and what the limitations are.

Message 5 of 5
(3,715 Views)