Test Automation Theory #2 Instrument Control through Instrument Drivers Motivations and Drivers for Instrument Drivers
??
Instrument Control through Drivers Page 2 Motivations and Drivers for Instrument Drivers Historical Perspective
IVI
SCPI VXIplug&play
Instrument Interface GPIB LXI VXI PXI AXIe
Instrument Control through Drivers Page 3 Instrument Driver – what is it ?
Instrument Driver:
a set of software routines that simplifies remote instrument control
Instrument drivers simplify instrument control and reduce test program development time by eliminating the need to learn the programming protocol for each instrument.
Instrument Control through Drivers Page 4 Advantages and Disadvantages of using SCPI (Standard Commands for Programmable Instruments)
Advantages Disadvantages
+ Portable to any language – Not possible to use for PXI or Operating System or throughout Hybrid Systems containing PXI
+ Possible to use throughout any – Takes a while to learn combination of GPIB, LXI and USB
+ Ability to provide fine-level instrument control
+ Fewer bugs than instrument drivers (?)
Instrument Control through Drivers Page 5 Motivations and Drivers for Instrument Drivers
Instrument Control through Drivers Page 6 Evolution of instrument drivers Early 90s Proprietary standards . HP IDL drivers pioneered independance of I/O scheme and programming language
1993 VXIplug&play – first vendor-independant standard . DLLs, standardized data types and basic functionality . Support for C, BASIC, VEE, LabVIEW
1997 IVI – higher-level standardization adds interchangability . VXIplug&play-like, standardized measurement functionality . Focus on instrument interchangeability
1999 IVI-COM – COM adds language-independance . COM is supported by all programming environments . Modern, object-oriented design
2002 Microsoft introduces .NET . .NET features seamless interoperability with COM
Instrument Control through Drivers Page 7 Instrument Driver or SCPI ? Quick sneak preview … with same result …
Take a look into C# code …
Instrument.WriteString("MEAS:VOLT:DC?"); Instrument.ReadString();
basically becomes
DMM.DCVoltage.Measure(10, 1e-3)
Instrument Control through Drivers Page 8 Now we can “talk” SCPI and Drivers …
… we want to deep-dive into C#
Correct ?
Instrument Control through Drivers Page 9 Time for Efficiency Tools … Keysight Connection Expert – advanced Time for Demo !
Instrument Control through Drivers Page 10