Insights > Benchtop

Instrument Libraries at your fingertips. Take your pick!

2023-02-26  |  9 min read 

A simple testplan development may have you creating a small section of code just to control an instrument to do a specific job. This works for something quick and simple, like an experimental test setup or a proof of concept. But when you scale up the development for production tests, it is quite a different story. 

Instrumentation controls form the foundation of a testplan. With the rapid evolution of test technology today, it is challenging to keep up with the latest releases of new instruments and software. Test development is constantly under time pressure to complete and deliver. We do not have the time to spend developing libraries for the instruments. 

Given the vast selections of brands and models for different instruments in the market, it makes perfect sense to have standards defined around the development of libraries by instrument makers such that these libraries adhere to a typical architecture that allows wider adoption. This also governs the quality and completeness of the libraries, making them faster to deploy and easier to troubleshoot. 

While PathWave Test Executive for Manufacturing(PTEM) comes with a wide range of built-in instrument libraries, it also supports Interchangeable Virtual Instruments (IVI) drivers and .NET Framework-compatible libraries. Let us dive deeper into each of these methods and understand how they can help reduce test development time. 

Built-in instrument libraries
PTEM is not just another test executive application that sequences your test steps for execution. Its actual value lies in the built-in libraries of Keysight and selected third-party instruments. You do not have to troubleshoot the libraries as Keysight supports them directly. Every built-in library comes with a set of test steps that you can pick to add to your testplan. 

Fig1: Comprehensive list of built-in instrument libraries

Test steps are actions. Each one of them performs a task like switching a connection or sending a command to make a measurement. In PTEM, the editor environment is graphical, hence there is no need for software coding knowledge. After selecting the test steps, you just need to enter the parameters for the test step to execute. This takes away the complexity of integrating instruments. You can now focus on developing the tests itself rather than developing the libraries to work with the instruments.

Fig2: Built-in test steps simplifies test parameter setup

Interchangeable Virtual Instrument (IVI) drivers

Instrument manufacturers create IVI drivers following the specifications laid out by the IVI foundation. Drivers created by the manufactures typically include the full functions of the instruments. This is an excellent alternative to instruments that are not included in the list of built-in libraries of PTEM. Integrating instruments using IVI drivers saves you the effort of developing the libraries to control them. You simply choose the functions that you need and not worry about the low-level programming codes.

Add the IVI instrument like how you would for any other built-in libraries. Define the driver and resource name of the instrument and then select the Software Module Name to use. The Software Module Name shows a list of the IVI drivers that you have installed in the computer. Pick the driver that matches your target instrument. If you do not see the correct drivers, you may need to verify the software installation of the instrument again. 

Fig3: Interchangeable Virtual Instrument (IVI) and driver selections

A typical test setup will include switch matrixes to connect between the instruments and the device under test (DUT). Switch manager in PTEM lets you create the switch paths graphically. You simply drag the pins from one instrument to another to create a switch path. We will talk about switch paths setup using Switch Manager in a different post. 

To facilitate graphical representation of your instrument, configure the pins of the instrument that you intend to use in your test. This allows the Switch Manager interface to route connections to the instrument. Enter the number of pins and their name prefix so that Switch Manager can display them. 

Fig4: Setup instrument pin configurations to facilitate graphical representation

You now have access to all the functions available in the IVI library of the instrument when you use the IVI method to invoke the test step. Simply select the function that you need and set up the necessary parameters if required. It is as simple as that. 

Fig5: Selection of member functions from IVI drivers

.NET Framework Dynamic linked libraries
IVI drivers are available for physical instruments. However, our test plan may need to use functions from another software or application which does not support IVI. Dynamic link libraries (DLL) are commonly used in software development to facilitate reuse of codes and functions. This provides an alternative for instruments or applications that do not support IVI drivers. Developers can develop a .NET-compatible DLL for an instrument and reuse it for test development. However, the functions provided in the DLL depend on what the developer decides to include. Comparing this with the IVI drivers from the instrument manufacturers, IVI drivers support a more comprehensive set of functions for the instruments whereas DLL functions vary with their developers. Nonetheless, both methods provide you with the ability to reuse proven libraries, thus significantly reducing development time. 

PathWave Test Executive for Manufacturing (PTEM) supports DLL built with .NET Framework version 4.7.2 and above. You select the functions you need from the DLL and set it as an object for the test plan to access. You will be able to see the list of member functions when you assign the DLL.

Fig6: Add .NET DLL functions to test plan

You can have multiple .Net DLL wrapper test steps in your PTEM testplan. Each step allows you to access a function and you just need to set up the required parameters. As each function is set up as a unique object, you can have test steps executing distinct functions of the same DLL in the test plan. However, the function has exclusive access to its targeted instrument during its execution. Because PTEM supports parallel test sequences, it is possible to set up multiple test steps calling to the same instrument within a parallel test sequence. Depending on the sequence of tests, this may result in conflict when two or more functions targeting the same instrument execute at the same time. In fact, the scenario is inherent with other test steps, as they can be accessing the same instrument in parallel too. 

Fig7: Executing a function using .NET Wrapper test step

The support of IVI drivers and .NET DLL complements the set of built-in libraries in PTEM. Together, they allow you to integrate almost any instrument or application into your testplan without any software code development, hence allowing you to spend more time developing your test. 

Until the next post, stay healthy and safe!
Ping me with your questions or comments!