Reduce Test Station Deployment and Rework Costs

Overview

A big challenge companies face today is the rising cost of test. As the complexity of devices increases, so does the cost of testing these devices. Although testing remains critical to product quality, the cost of test has not kept up with the lower cost of manufacturing as more complex electronic devices require newer, more advanced instrumentation.

Test engineers are presented with the following realities of today’s product development environment:

  • Product designs are more complex than previous generations
  • Development cycles are shorter to stay competitive and meet market demand
  • Budgets are decreasing while product testing is becoming more expensive

To meet the challenges of shorter development cycles, larger product portfolios, decreased budgets, and exponentially more complex products, test engineers are being forced to abandon monolithic, application-specific, and turnkey test systems. Because of these systems’ inflexibility to adapt and add functionality to test newer, more complex products, traditional solutions like rack-and-stack box instruments or proprietary “big iron” automated test equipment (ATE) systems are no longer an efficient way to keep up with today’s demanding markets.

 

 

Contents

Modular Test Framework: A Software-Defined Approach to Test

In response to these demands, test managers and engineers are turning to a modular, software-defined test architecture based on industry standards that can provide:

  • Increased test system flexibility to add new features and adapt to new technologies as they are required
  • Scalability to add new functionality and instrumentation as needed
  • Lowered test system costs by reducing up-front capital investment and maintenance cost while increasing equipment and code reuse
  • Reduced risk of hardware obsolescence through hardware abstraction layers

Designing efficient modular test systems requires an architecture that decouples the different components of the test system (Figure 1)―primarily the instrumentation from the test code and the test code from the overarching test management framework. This modular decoupling of different components of the test system along with the ability to define the functionality in software are key to developing flexible test systems faster and more cost-effectively.

Test System Architecture

Figure 1: Test System Architecture

Test Management Software: TestStand

An automated test system requires the implementation of several tasks and measurements, some specific to the device under test (DUT) and others repeated for every device tested. Traditional test systems often combine both types of operations into the same single software layer. This paradigm makes code changes to either part and code reuse between projects cumbersome.

A modular test system architecture makes a clear separation between system-level tasks that are common to every device (test management software) and the DUT-level tasks that are different for each device tested (test code). See Table 1 for examples of different DUT-level and system-level tasks. This separation allows you to quickly reuse, maintain, and modify test management software components without affecting the actual test code and vice versa.

Operations Different for Each Device

Operations Common for Each Device

Instrument ConfigurationOperator Interfaces
MeasurementsUser Management
Data AcquisitionDUT Tracking
Results AnalysisTest Flow Control
CalibrationStoring Results
Test ModulesTest Reports

Table 1: Test Management Software Tasks Compared to Test Development Software Tasks

TestStand is NI’s powerful ready-to-run test management software designed to develop, deploy, and execute test system software (Figure 2). At its core, TestStand is a test executive that allows you to sequence calls to test code written in virtually any programming language. In addition, right out of the box, TestStand provides common test management software functionality such as:

  • Result logging to any OLEDB or ODBC databases
  • Report generation in a variety of formats including HTML, text, XML, and ATML
  • User management with different access levels
  • Test limits management
  • Simple and advanced operator interfaces provided in five different languages
  • Parallel testing capabilities that allow testing multiple products or running multiple tests on a single DUT simultaneously

In addition, TestStand itself is built on a modular software architecture, which allows you to use each of these components out of the box or customize them to meet unique system requirements.

TestStand Sequence Editor

Figure 2: TestStand Sequence Editor

Some companies have written their own test executives and spent valuable engineering resources to develop test management software from the ground up. This strategy often results in reduced productivity and ties up resources over time for software maintenance. Instead, using commercially available test management software, such as TestStand, you can maximize productivity by reducing the development of features that are common to each device and focusing your development efforts on the test code―the operations that are different for each device. See TestStand test management software in action to learn more.

Test Development Environment: LabVIEW

TestStand can call test code written in virtually any programming environment or language, including LabVIEW, LabWindows™/CVI, C/C++, and .NET and even scripting languages. However, most general-purpose programming languages are not optimized for test and measurement applications, making it difficult to write code to communicate with instruments, analyze data, and display that data in a meaningful format to engineers.

In addition to reducing test development time through an intuitive graphical programming environment, LabVIEW improve your productivity by providing:

  • Instrument connectivity through free instrument drivers to automate virtually any instrument
  • Data analysis through thousands of built-in functions to analyze and present data
  • User interface controls, like graphs, LEDs, knobs, and gauges, specific to test and measurement
  • Higher performance by automatically taking advantage of multicore processing

NI also offers tools for developing test code in more traditional text-based languages. LabWindows/CVI is an ANSI C development environment and Measurement Studio is a plug-in to Visual Studio, adding test- and measurement-specific user interface control and analysis functions for ANSI C, .NET, and Microsoft Visual C++.

By choosing a programming language that is optimized for test and measurement applications, you can drastically improve your ROI by reducing the time and effort it takes to develop test code. To learn more, see the white paper on Choosing the Right Software Application Development Environment.

Summary

Increased device complexity, shorter development cycles, and decreased budgets provide an opportunity for engineering teams to re-evaluate their current automated test strategies and look for areas to increase efficiency and reduce cost. When designing next generation test systems it is important to incorporate strategies that increase system flexibility and scalability, deliver higher performance, lower test system cost, and expand longevity.

Modular, software-defined automated test systems overcome the shortfalls of past solutions based on stand-alone instrumentation or cost-prohibitive proprietary ATE systems. By decoupling the different components of the test system and being able to define the behavior in software, engineers can use these test systems to provide flexible, scalable and lower cost solutions that are better suited to meet today’s challenges. Modular test software architectures built with NI TestStand Test Management Software and the LabVIEW graphical programming language have been proven to optimize and reduce the cost of test systems for applications ranging from the latest smartphones and 3D televisions to the next generation of mission critical defense systems and medical devices.

Additional Resources

The mark LabWindows is used under a license from Microsoft Corporation. Windows is a registered trademark of Microsoft Corporation in the United States and other countries.