IVI System Architecture
Main Components of an IVI System
The following figure shows the components of an IVI system. In general, to implement an automated test system, you develop a program that controls instruments. For each instrument model that you access, you use an IVI specific driver. The specific driver contains all the information to control a particular instrument model.
IVI System Architecture
Your test program communicates with the specific driver in one of two ways: directly or through an IVI class driver.
Directly
Your test program can call the specific driver directly, similar to the way you use traditional instrument drivers. With this approach, you gain most of the benefits of IVI instrument drivers, including state caching, range checking, status query checking, simple simulation, and multithread safety. All functions and attributes that the specific driver exports begin with a prefix that uniquely identifies the specific driver. Because the specific driver's prefix is unique, interchangeability is not available through direct communication, and you must modify and recompile your test program when you want to use a different specific driver.
Through an IVI Class Driver
Your test program can access a specific driver indirectly through an IVI class driver. With IVI class drivers, you can develop test programs that are independent of specific hardware and interchange instruments without modifying or recompiling your test program. In addition to interchangeability, IVI class drivers deliver other benefits such as class simulation, spying, and interchangeability checking. For information about a particular IVI class driver, refer to IVI Class Driver Help.
When you use an IVI class driver, you begin by calling its initialize function. This function uses the logical name parameter to initialize the instrument and driver software. The function then returns an instrument handle that you use with all other IVI class driver function calls. You create and configure logical names in MAX.
To change the instrument that your program uses, edit the logical name in MAX to identify the new specific driver and physical instrument. You do not have to change or recompile your program. Therefore, the class driver allows you to develop hardware-independent test programs that do not require modification when you use a different instrument. For a complete description of the IVI configuration features in MAX, refer to Measurement & Automation Explorer Help for IVI.