Hardware Test Automation Tools – for complex electromechanical product manufacturing

You’re likely asking yourself at least one of these questions:

  1. What software is available to test my hardware product?
  2. What hardware is available to test my hardware product?
  3. I’m not finding what I need to test my product.  I think I might need a custom automated test system.  What are they and how do I get one?

Automation software tools to test hardware products

If you’re just looking for software options and don’t need a complete automated tester, here’s what you want to know.

Software development environment options

Theoretically you can use most any software language for hardware test automation (e.g. Windows/Linux shell scripting, MATLAB, Java), but some languages are more common than others because they offer more pertinent capabilities, such as built-in support for data acquisition hardware and the parallel threading that is so important when testing expensive equipment.  Some of the more common software used for automated test include:

  1. LabVIEW – this is the de facto standard when it comes to software for automating tests. If you want to learn more about LabVIEW, see here (we’re LabVIEW lovers, so that’s why we have a lot to say on the topic):
    1. What is LabVIEW used for,
    2. Why use LabVIEW,
    3. Where is LabVIEW Used? Who uses LabVIEW? What companies use it?
  2. Python – this has been gaining traction over recent years due to it being ubiquitous in academic settings, so many new test engineers know Python, because it’s free, and because there are so many toolsets developed by a large global community.
  3. C# – this is a good language to consider when dealing with databases and web technology.

Test Executive/sequencing software

This is the software that will allow you to automate the various test steps and sequences that your product needs to be run through in order to validate or verify its functionality and performance.  For example, a simple automated test sequence subset might look something like:

  1. Set power supply 3 to 28 volts.
  2. Wait for 300 ms.
  3. Read voltages on channels 3,4,9 & 17.
  4. Check if within limits.
  5. Record pass/fail.
  6. Log raw data.

A test executive/sequencer can be created fully custom from scratch using LabVIEW, Python, C#, or other languages.  For more complex, regulated, or replicable product test scenarios, test executive software should be considered.  Some examples:

  1. NI TestStand
  2. Viewpoint’s StepWise test executive
  3. Marvin Test Solutions’ ATEasy
  4. There are others. Do a google search for “test executive”.

Automation hardware tools to test hardware products

If you’re planning to develop your own automation software and just need some hardware to interface to your product, here’s what you should know.

Data acquisition (DAQ) hardware tools for hardware test automation

These tools are often basic building blocks for automated test systems when more than just a few measurements need to be made.  These measurements can be on properties such as voltage, current, vibration, strain, force, pressure, temperature, humidity, proximity, etc.  The main DAQ hardware to consider is:

  1. NI PXI – see the PXI section in this guide on Which NI Platform is Right for Your Automated Test Needs? cRIO, PXI, cDAQ, sbRIO?.
  2. NI cRIO (and cDAQ) – see the cRIO & cDAQ sections in this guide on Which NI Platform is Right for Your Automated Test Needs? cRIO, PXI, cDAQ, sbRIO?.
  3. Keysight PXI – we don’t use Keysight’s PXI equipment, because NI offers a one-stop shop for both hardware and software, but it’s worth considering, since they have some unique designs and capabilities in their chassis. Keysight puts out high quality products.  We do use some of their equipment, such as their DMMs, power supplies, and oscilloscopes, it’s just that we’re an NI Alliance Partner so we tend to start with NI’s platforms unless there’s a reason to look elsewhere.

Lab instruments

Sometimes you might want to automate an existing manual test setup, in which case you likely already have some lab instruments at your disposal.  We’re referring to instruments like network analyzers, oscilloscopes, logic analyzers, multi-meters, spectrum analyzers, power meters, etc.  The main players here are Tektronix, Keithley, Fluke, and Keysight.

Assuming your equipment isn’t totally ancient (i.e. not manufactured before ~2004), chances are there’s a way to interface to the instrument to enable automation.  The two critical pieces to understand are:

  1. Is there a driver and does it work? Check the instrument manufacturer’s website as well as your automation software vendor’s website (e.g., if you’re using LabVIEW, check the Instrument Driver Network). After you’ve found a driver, do yourself a favor and make sure it works for your scenario.
  2. What communication interfaces are available? Common options include Ethernet, RS-232, GPIB, and USB.

Structural testers

These testers are for testing stress/strain/load on materials or mechanical structures.  Players here include the likes of Instron, MTS, Applied Test Systems, and Mark-10.  Suppliers of these testers often have their own software to assist in automation, and you can often interface with external automation software (just be sure to check driver compatibility and physical interface capabilities).

Custom automated test systems as hardware test automation tools

Custom test equipment is essentially the integration of lots of automation tools to validate or verify your product.  Custom automated test equipment usually performs all (or at least most) of the following functions:

  1. Stimulates the UUT (unit under test) mechanically (e.g. vibration, actuation) or electrically (e.g. supplies power, triggers).
  2. Sequences through various test steps.
  3. Measures various properties (e.g. voltage, current, temperature, pressure, optics, vibration, load, strain, etc).
  4. Analyzes the acquired data against pass/fail criteria.
  5. Displays UUT pass/fail results on a GUI.
  6. Generates a test report and logs data.

If you’re interested in learning more about custom test equipment options, start with these resources:

Next steps

If you’d like help with automating your test setup (the entire system or just the software), reach out for a custom automated test system consultation.

If you’re in learning mode, here’s some other resources for you:

If you work for a US-based manufacturer or lab and you’d like to stay up to date on the world of automated test, sign up for our group emails.