Open Arduino

Enter Your Project for a chance to win a grand prize for the most innovative use of Arduino or a $200 shopping cart! The Birthday Special: Arduino Projects for Arduino Day!

Back to The Project14 homepage

Project14 Home
Monthly Themes
Monthly Theme Poll

 

Arduino in Test Instrumentation

 

To celebrate Project 14's birthday, I'm going to make a programmable lab instrument with the UNO that I received from tariq.ahmad.

The device can be used in a LabVIEW setup and will allow you to control a few relays in an automated test process.

 

As proof of concept, I will use it to extend the test setup I made for a recent Road Test:Programmable Electronic Load - Automating a DC Switcher Efficiency Test with LabVIEW

 

Background

 

I'm extending the capabilities of my lab. I want to be able to create repeatable and automated test setups.

The goal is to control the lab instruments and have all measurements logged to a document.

My PSU and scope are programmable. Together with two other element14 community members I've designed a programmable DC load.

What I'm missing is a programmable switch that can be used to turn on or off signals. I'll make one for The Birthday Special: Open Arduino.

 

 

Hardware

 

I'll use an Arduino UNO and two relay breakout boards. I received the UNO from element14 to celebrate Project 14's birthday.

I got the two relay boards when I purchased the components from someone who was quitting the electronics hobby a few years ago.

 

Given that I have all components and that they are very simple, I don't expect any complexity on the electronics part.

 

 

Firmware

details: Arduino in Test Instrumentation - Part 1: SCPI Lib

details: Arduino in Test Instrumentation - Part 2: Firmware

 

The software is a different story. I've automated instruments before with SCPI, but the challenge with the Arduino UNO will be the available memory.

I'll have to fit (or slim down) the SCPI lib that I want to use and leave enough space for serial communication lib and the logic to switch the relays.

 

I'll support the standard SCPI commands and dedicated ones to control both relays in the Arduino firmware.

 

CommandDescriptionExample
*IDN?instrument identity

*IDN?

Project14,Arduino SCPI Switch,1,0

*RSTreset instrument. Set all switches off*RST
*CLSsame as *RST*CLS
:DIGITAL:SWITCH# ON|OFFturn a switch on or off. 1 based:DIGI:SWIT1 ON
:DIGITAL:SWITCH#?get a switch' status. 1 based

:DIGITAL:SWITCH1?

OFF

 

LabVIEW Library

details: Arduino in Test Instrumentation - Part 3a: LabVIEW Driver Intitialisation Block

details: Arduino in Test Instrumentation - Part 3b: LabVIEW Driver Switch Control Block

details: Arduino in Test Instrumentation - Part 3c: LabVIEW Driver Read Status Block

 

The end game is to include the Arduino switcher in the test setup I made for the RoadTest TI SWIFT™ Power Module EVM

Just as many instrument manufacturers do, I'll write a LabVIEW library with easy to use blocks: Init, Control and Close.

These blocks will make it easy to include the Arduino switcher into designs and it collaborate in an automated setup.

I'll claim success when I'm able to switch some configuration resistors in and out of my device under test to change its operation parameters.

If I can then run a test cycle It should be possible to capture the device's efficiency with 3 separate output voltage settings, with an input range sweeping from lowest to highest values, pulling between 0 and 7 A from the output.

In total this will be more than 2000 measurements that I'll have to capture.

 

That's it. Wish me luck.

 

 

Related Blog
Arduino in Test Instrumentation - Intro: SCPI Programmable Switch
Arduino in Test Instrumentation - Part 1: SCPI Lib
Arduino in Test Instrumentation - Part 2: Firmware
Arduino in Test Instrumentation - Part 3a: LabVIEW Driver Intitialisation Block
Arduino in Test Instrumentation - Part 3b: LabVIEW Driver Switch Control Block
Arduino in Test Instrumentation - Part 3c: LabVIEW Driver Read Status Block
Arduino in Test Instrumentation - Outro: LabVIEW Example

 

 

The LabVIEW project, with driver library and example, is attached.