NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

CVI Template for Test Stand

Hi,

 

I am currently assessing NI Test Stand and LabWindow/CVI to decide if my companie will start to use those tools using PXI Racks to automate our production tests. I've been through the basic tutorial pointed by the documentation but this is far from being enough especially when it is about integrating GUI in test stand. I have tried to recoup informations from the tutorial to understand the mechanism but each time i'tm trying to design something from scratch it is a faillure. Where could i find a decent tutorial providing more information about those topics ?

 

My initial attempt was to design a standard simple test in labwindow (exe) and then intergate it to test Stand by converting it to a DLL. The only way around that i found to make it work is to copy a project from the tutorial and integrate my file in it but this is not really clean. So i'm looking for a clean way to design CVI for test Stand.

 

Thank you

Jc

0 Kudos
Message 1 of 9
(5,025 Views)

Hi,

 

Unfortunately there is not a lot of examples for the UI using CVI.

 

A quick search, I found 3 examples, one using TestStand 1.01, another using TS 2.0.x and a third using TS4.1, the last one not really an example that I would call as a beginner's.

 

This is the third example found

Embedded Dynamic Panels in User Interface Application

https://forums.ni.com/t5/Example-Code/Embedded-Dynamic-Panels-in-User-Interface-Application/ta-p/349...

 

The first one is the Simple Operator Interface without a GUI, but the principle should still apply.

 

Have you looked at the Simple Operator Interface as supplied with TestStand?

 

(Note to NI: These examples really need bringing up todate)

Regards
Ray Farmer
0 Kudos
Message 2 of 9
(4,992 Views)

I have looked into the simple one, but way to simple 🙂 The full GUI that mimic a Test Stand GUI is interesting but far away from my application. I have extended skills using QT for my GUI but we want to use a solution that match better with industries standards.

 

I'm basically looking for a skeleton that would provide guidance on how to design modules that we can use both as stand alone test for engineer troubleshooting. I have tried to design one on my own but it looks messie. If i can not find something nice, i will just recommend to play "divide and conquer" and design separate test module for production and engineering.

 

I also have the feeling that NI put more energi integrating LabVIEW in TestStand than CVI.

0 Kudos
Message 3 of 9
(4,976 Views)

 


@jyce wrote:

I have looked into the simple one, but way to simple 🙂 The full GUI that mimic a Test Stand GUI is interesting but far away from my application. I have extended skills using QT for my GUI but we want to use a solution that match better with industries standards.

 

I'm basically looking for a skeleton that would provide guidance on how to design modules that we can use both as stand alone test for engineer troubleshooting. I have tried to design one on my own but it looks messie. If i can not find something nice, i will just recommend to play "divide and conquer" and design separate test module for production and engineering.

 

I also have the feeling that NI put more energi integrating LabVIEW in TestStand than CVI.


 

Actually, the number of shipping examples for LabVIEW and CVI for simple and full GUIs are exactly the same. The user interfaces for parallel and batch models are written entirely (and only) in CVI so personally, I think you have a bit of an advantage.

 

Could you explain a bit more about what you want the 'engineer troubleshooting' option to do? I think the CVI operator interface is the same as the LabVIEW one where with a Ctrl-Alt-Shift-Insert, you can turn it into an editor.

0 Kudos
Message 4 of 9
(4,970 Views)

Well basically, lets say I design a GUI that allow to fully controls the IO of the PXI rack. The kind of design I'm working on feature a lot of analog and digital IO. I want the automatic test to start the sequence, test my IO and leave. So I do not necessarily need a GUI there except to make it more user friendly.

 

But then if we need to understand where the problem is coming from, i need to be able to restart the tester but leave the possibility to the engineers to change stimulus (for example making it dynamic even if i'm testing DC IOs) wihtout going in and out of the sequence all the time.

 

I'm sur it is doable but as i said i'm trying to come up with a clean skeleton that could be use by the software that will actually developp those modules.

0 Kudos
Message 5 of 9
(4,965 Views)

Typically, it is the sequence file that fully controls hardware and does the tests. The Operator Interface is pretty disconnected from the actual testing (at least with what I have done). What I have done to give techs/engineers additional options is to make use of the login and enable options in the sequence itself or enable options in the tool menu. The options might display popups/instrument soft panels/whatever. I never liked making options accessible only in the OI.

0 Kudos
Message 6 of 9
(4,957 Views)

Hi

 

Do you like to develop something like this:

http://sine.ni.com/cs/app/doc/p/id/cs-11443 

 

If you are not able to translate, just see the pictures

Note: GUI is done in CVI the src behind in VC8

 

Regards

 

Juergen

--Signature--
Sessions NI-Week 2017 2016
Feedback or kudos are welcome
0 Kudos
Message 7 of 9
(4,939 Views)

This is more what i'm looking for, i like it, but the only comment i have is that it does not look like a "Divide and Conquer" strategie since everthing is integrated in one UI. Our idea is to do something similar but using a bunch of simpler panel and integrate the test procedure in Test Stand.

 

The reason to use Test Stand is also that each equipment is tested several time. Before/After calibration, burn in chamber, and after the burn in chamber for shipping. Having test stand allow to make more flexible scenario without reinventing the wheel.

 

I'll try to see how it goes by using the simple approach of disabling controls depending on the config that you pass to the CVI. Thanks for those idea everybody.

0 Kudos
Message 8 of 9
(4,918 Views)

I have used TestStand with CVI to create both UUT tests and Techincian/Engineering troubleshooting panels. Some lessons I have learned include: 1) if you want to use same GUI for both consider all requirements prior to design as it is more difficult to design for the one function then go back and add the other   2) If designing a UUT test as a DLL to be called from TestStand typical function arguments include data types testData (sequence context) , testError and may include data derived from property loaders - these argument types are not easily compatiable with stand-alone EXEs (used as Techincian/Engineering troubleshooting panels); therefore consider entry points into the panel which do not require those prerequisites.  3) If all factors are considered then minimal changes will be required to compile a UUT DLL into a Techincian/Engineering troubleshooting EXE.  Using Tabs in the CVI GUI design is also a good way to implement the "divide and conquer" strategy as a seperate tab for each instrument or test function can be designed.

NI MAX (Measurement & Automation Explorer) is good tool to that has all GUI functions to control instruments - not sure if it is available but would be nice if NI would provide source code modules for everything contained in NI MAX which would be good starting point for users to develop thier own test panels. 

0 Kudos
Message 9 of 9
(4,621 Views)