Here’s the page we think you wanted. See search results instead:

 

Contact an Expert

Instrument Driver Overview

Almost all of today’s instruments support remote control by a PC. This is usually accomplished by sending ASCII SCPI (Standard Commands for Programmable Instruments) commands from your development environment to the instrument. While each instrument’s commands are usually well documented, it can become a huge task to understand how all of the commands interact, especially in large test systems.

Instrument drivers provide a higher-level interface that helps to provide a more abstract view of the instrument that is easier to understand. Instrument drivers also provide a common framework, so that a test engineer can move quickly, and productively, between instruments without having to learn everything from scratch.

Types of drivers in use today

IVI drivers

The IVI Foundation specifies industry standards for instrument drivers called Interchangeable Virtual Instrument (IVI) drivers. IVI drivers come in two distinct flavors: IVI-COM and IVI-C. As the current industry standard, most new instruments include either an IVI-COM driver, or an IVI-C driver, or both; the LXI standard also specifies that all LXI instruments must have an IVI driver.

IVI drivers provide many advanced features, such as: instrument interchangeability without recompiling code, instrument simulation, and a common framework that allows for easy system integration.

For instructions on getting started with IVI drivers in your favorite ADE, check out the IVI Getting Started Guide at www.ivifoundation.org 

IVI-COM

IVI-COM drivers work best in standard object-oriented ADE’s that support COM directly, or through some interoperability mechanism. These environments include:

  • Keysight VEE
  • MathWorks MATLAB (requires a MATLAB instrument driver wrapper)
  • Microsoft Visual Basic 6
  • Microsoft Visual Studio .Net (using Visual Basic, C/C++, Managed C++ or C#)
  • Microsoft Excel using VBA
  • National Instruments LabVIEW

Other environments may work with IVI-COM drivers, but there are other driver types that work more seamlessly.

IVI-C

IVI-C drivers work well in development environments designed to access C-style libraries. These environments include:

  • C/C++
  • MathWorks MATLAB (requires a MATLAB instrument driver wrapper)
  • National Instruments LABVIEW
  • National Instruments LabWindows/CVI

VXIplug&play instrument drivers

VXIplug&play is a term indicating conformance to a set of system-level standards, produced by the VXIplug&play Systems Alliance (now maintained by the IVI Foundation). These standards apply to instrument drivers, soft front panels, installation packages, documentation, technical support and application development environments.

VXIplug&play drivers were considered the industry-standard instrument drivers for many years, but have been largely replaced by IVI drivers. VXIplug&play drivers can be used in environments such as:

  • Keysight VEE
  • C/C++
  • MathWorks MATLAB (requires a MATLAB instrument driver wrapper)
  • Microsoft Visual Studio .Net (requires a wrapper which can be created by third-party applications)
  • National Instruments LABVIEW
  • National Instruments LabWindows/CVI

VXIplug&play drivers are sometimes known by other names, such as VXIpnp, Plug&Play, or Universal Instrument Drivers.

LabVIEW instrument drivers

While other driver types work well in LabVIEW, LabVIEW drivers have the advantage of being written natively in LabVIEW code; that means that the source code is directly available if it needs to be modified. LabVIEW drivers can be written to directly access I/O API’s, such as VISA, or can be used as wrappers on top of other drivers, such as IVI drivers. The disadvantage to LabVIEW drivers is that they only work in LabVIEW; if you need to work with other development environments, you will have to use several driver types.

MATLAB instrument drivers

MATLAB instrument drivers provide a convenient way to wrap existing instrument drivers, such as IVI or VXIplug&play drivers, or create custom instrument drivers for use in MATLAB. MATLAB instrument drivers are created and modified using the Instrument Control Toolbox, and MATLAB instrument drivers can only be used in MATLAB.

Legacy drivers no longer in use

VEE Panel instrument drivers

VEE Panel Drivers are essentially a virtual front panel, and make instrument programming interactive and graphical. VEE Panel Drivers were supported only by Keysight VEE, and are now considered obsolete. VEE Panel Drivers were also known as Classic, VEE, or ITG Instrument Drivers.

D-SCPI instrument drivers

Downloadable Standard Commands for Programmable Instruments, or D-SCPI, instrument drivers download into VXI Command Modules (E1300, E1301, E1306, E1405, and E1406) and interpret SCPI commands into register-level I/O. It is highly recommended that the D-SCPI driver be installed whether the VXI instrument is programmed using its VXIplug&play driver or using SCPI commands embedded in an I/O language. This information does not apply to message-based modules which have built-in SCPI drivers.

I-SCPI instrument drivers

I-SCPI stands for Interpreted Standard Commands for Programmable Instruments. Register-based VXI modules installed in Embedded VXI Controllers or MXI or VXLink systems (V743, EPC-7, EPC-8, E6232, E1489, E1383, and E1483) require an I-SCPI driver to provide programming capability. This information does not apply to message-based modules which have built-in SCPI drivers.

Last Updated: 03July, 2008