Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

What is the difference between using property nodes and IVI drivers for instrument control?

Hello,
 
There are several options for remote programming of an instrument in Labview, specific IVI driver, generic IVI driver, and property nodes.  What is the difference between the three options.  The difference between the IVI options seems to be that the specific IVI driver has more commands build-in than the generic IVI driver.  I guess I'm asking why not use property nodes invoked on the instrument handle to program the isntrument.
 
Thanks,
-Scott
0 Kudos
Message 1 of 4
(3,636 Views)
A follow up question.  Is it possible to use an Agilent IVI driver in Labview?  Since they are the original equipement manufacturer maybe their driver works better.
 
-Scott
0 Kudos
Message 2 of 4
(3,634 Views)

Besides IVI, don't forget that you can also program the instrument with native LabVIEW VISA Writes and often native LabVIEW drivers exist as well as IVI ones. Given a choice, I will almost always use a native LabVIEW driver because I have the ability to modify the code.

But, to answer your questions specifically, an IVI class driver contains those functions that the IVI foundation has deemed to be the most common among instruments in that class. A class driver is generic and it is that which enables you to freely swap instruments from different manufacturers. If you use the instrument specific driver, then you are forced to stick with that instrument and you have lost one of the major reasons for using IVI.

Yes, you can use IVI properties instead of the higher level functions in the driver. You will need to be a bit more careful in how you do your programming though. You can create a single property node that configures everything but you specify the order in which the properties are set and the possibiltiy exists that you might do things in the wrong order. The higher level functions have been written to take this in account so that if a functions sets parameters a,b,c and the instrument requires that c be sent before a, the driver will do this for you.

If you find another driver, it may or may not be better. It may in fact be the exact same driver. The only thing to do is to try both. If, the other driver is an IVI-COM driver as opposed to an IVI-C driver that you find at NI's site, you will use it differently and will not be able to use NI's IVI class drivers without some modification to the IVI-COM driver.

0 Kudos
Message 3 of 4
(3,630 Views)
 

You can take a look at the following DevZone document:

Using an IVI-COM Instrument Driver in LabVIEW (https://knowledge.ni.com/KnowledgeArticleDetails?id=kA03q000000x2PfCAI&l=en-US)

0 Kudos
Message 4 of 4
(3,614 Views)