07-12-2011 12:34 AM - edited 07-12-2011 12:43 AM
Hi, Guys, I'm new to TestStand and I'm using LabVIEW for years.
I want to know if TestStand can do the job below.
1, Various Test parameters are to be adjusted or measured, and some of them should run first.
2, User might define some test sequence including some or all test parameters, and their order might be very different.
3, Parameters belong to some Classes.
e.g, Set Temp@-10, Set Temp@25 are Class Set_Temp
4, Test conditions and seqs are stored in database. Some conditions exist in Parameters, like Class Set_Temp.
5, To reduce instrument idle time, we separate test parameters to different tester, so my boss has to hire more operators and handing time with DUT would increase.
We install/uninstall DUT to EVB manually.
1) A runs first
2) C runs before E,F.
3) H runs after A, and it doesn't mater if it runs after H. Let's assume Parameter C is for acquiring wfms/data, etc. The following E, F are for analysis.
4) CD, CB,CG can't run in parallel.
My question is
Can TestStand arrange them automatically based on the present seq? So we can merge 2+ testers to one?
I don't want to alter database tables too much. I'd like to use the present UI.
Solved! Go to Solution.
07-12-2011 10:52 AM
Your use of the word Parameter makes absolutely no sense regarding TestStand. I'm assuming you mean Step????
In TestStand there are two uses of the word parameter:
Use A: a parameter is a variable that is passed to a code module (i.e. LabVIEW). Since you've been doing LabVIEW for years then think of a parameter as a connector on the connector pane. For a subVI you can have multiple connectors. They are all passed at the same time. When TestStand calls a code module, whether it's a dll, VI, COM or other, they all go at the same time. Order is irrelevant.
Use B: a Parameter (and I capitalize it on purpose) is a section for variables in a sequence. It is used to pass information back and forth between calling sequences and sub sequence (just like subVIs). Think of it as the "connector pane" of sequences.
Ok stepping down from my soapbox now......
In order to find you the right solution I would need to understand your application and use better. Let me know if my understanding is correct:
You have 2 sequence files with various steps that run in order. They both have some of the same steps in them? You are worried that if both Sequence Files are executed at the same time then they could conflict with each other? The simplest solution is to just not run them at the same time. Otherwise you will have to use locks and synchronization so they don't tromp on each other.
Also, where are your Classes stored? Are they .NET assemblies? Where are you storing your "parameters"? Are they in the Sequences or in some code module?
07-12-2011 09:47 PM
Ah, Step is OK. In my program, each step is desiged specially for a predifined test item. I'm trying to explain it in your words.
Step A--->I get test data for Item A
Step B--->I get test data for Item B
Steps are related to my test sequence. As I said before, All sequences are stored in server. See the picture below.
Set Temp@25 is Step 1
Idc_Get is Step 2 ...
I know TestStand can run tem in parallel. My question is, can TestStand or LabVIEW convert the seq to more STEPS for TestStand use?
I can't define STEPs in seq previously.
Seq1 and Seq2 would never run at the same time.
My classes don't matter with .NET, and they are all LVOOP. e.g, Set Temp@-10, Set Temp@25 are Class Set_Temp because Set_Temp is designed to set temp and the difference is T only.
07-13-2011 01:02 AM
So are you saying you have a single code module which performs all types of tests depending on what data it receives?
If you are asking if you can create a test sequence at runtime then the answer is yes.
07-13-2011 11:09 AM - edited 07-13-2011 11:09 AM
@"My question is, can TestStand or LabVIEW convert the seq to more STEPS for TestStand use?"
Are you asking if TestStand can read from your DB and automatically create steps in a sequence matching those in your DB? If so then the answer is yes as Ray pointed out.
Option A: you will have to manually create steps for each field in your DB.
Option B: you create some steps in TS which read your DB and dynamically creates steps which will run as a test.
Here are some sites on creating steps dynamically:
You can also look at the Sequence Builder Tool in the examples
Hope this helps. Let me know if I'm off base here.