NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

[LV -> TS] How to execute a SEQ file, get the result (PASS/FAIL) and the report file ?

Solved!
Go to solution

Hello,

 

tumblr_inline_ndyxvlV1e91refloq.gif

 

little attempt to revive my topic out from the grave, it's been more than a month without answer, while I originally thought my explanations were clear and concise enough.

 

The problem remains, yet the question is more structural though :

 

Is it possible to control Teststand (make it my b...each) from Labview, hence use it in 'slave' mode, or the only way to do a proper job is to use Testand as 'master' and commander Labview that would act only as a thin layer for displaying content (ActiveX widgets on front panel) and IO/callback interface ?

 

That would definitively tells me if my current application architecture (Labview controlling Teststand through APIs) is right or wrong.

 

David Koch

0 Kudos
Message 11 of 28
(2,587 Views)

Hi David,

 

maybe this old thread helps.

http://forums.ni.com/t5/NI-TestStand/How-to-execute-a-sequence-without-using-an-User-Interface/m-p/8...

OK this stuff is done in C#, but don't care api Calls were the same in LV

 

Regards

 

Juergen

 

 

 

--Signature--
Sessions NI-Week 2017 2016
Feedback or kudos are welcome
0 Kudos
Message 12 of 28
(2,497 Views)

HI David,

 

ops, Upper stuff is dealing points 1 to 2 which are done!!!!

 

Sorry

 

Juergen

--Signature--
Sessions NI-Week 2017 2016
Feedback or kudos are welcome
0 Kudos
Message 13 of 28
(2,493 Views)

Hi David

 

this example should working for 4/5

 

It is excatly the way you have preferd in your first question.

But with just one difference! I am using a process model because without it you will get NO report at all.

I am using the NI's default one with entry point "Single Pass"

 

That was all.

 

Juergen

--Signature--
Sessions NI-Week 2017 2016
Feedback or kudos are welcome
0 Kudos
Message 14 of 28
(2,483 Views)

Hello j_dodek, sorry for the delay.

 

Thanks for your input, it validates some stuff I already

implemented in my Labview version. However there

are two things I'd still want to modify at runtime without

having to touch the Teststand's side (understand the

models) :

 

1- Inject a UUT serial before execution (very important)

2- Perhaps change the report path (but that's optional)

 

Clipboard_20150617_111610.png

 

Yes, it's big. Because big is beautiful.

 

Several parts are currently disabled because non

functional (hangs the engine because 'RunState'

variables are not found) 😕

 

I admit a text version would be something like 30

lines of code, but hey, that's the magic of the good

old GLanguage where you also have to route your

algorithm.

 

David Koch

0 Kudos
Message 15 of 28
(2,418 Views)

Hi David.

 

I fact that is beautiful.

 

For me it is clear why do not have access to your RunState.Root.xxx stuff.

 

But before i am going to answer that.

I would like to know why you do not want to use a process model at all.

I also would like to reinvite Norbert_B to this dicsussion again.

 

In my opinion you can throw TestStand to the garbage if you dont care or use the process model.

It is hard to live without heart.

 

Regards

 

Juergen

 

--Signature--
Sessions NI-Week 2017 2016
Feedback or kudos are welcome
0 Kudos
Message 16 of 28
(2,404 Views)

I know I'm a hearthless **bleep**, but that's not the point being

addressed here. There's reasons why I lost faith and passion

for programming during the last year.

 

Well, I do not need all the subtilities surrounding a Teststand

model because all I need is (love ?) doing a 'Simple pass'

with injecting a serial number before the test. All the UI and

DB management is done by my 'operator interface'.

 

The chosen (one ?) architecture was LV to control TS as a

simple test engine, without using all the capabilities offered.

Hence I just need TS to inject a UUT serial, run a SEQ, get

the resulting XML, and voila.

 

David Koch

 

0 Kudos
Message 17 of 28
(2,399 Views)

Hi David,

 

... you said RunState.Root.xxx stuff is not found.

You are right!!

 

They are defined in the "heart", NI is calling this a Sequnence from type "Execution EntryPoint"

--> The Sequence Icon is RED maybe they thougt heart as well !?!?!? <--

 

That means you have no heart so thats reason why you can not find your variables of course

 

All the steps you mentionend before the "voila" were jobs of the "Execution EntryPoint"

even reportgeneration is done there because there is a sequence doing this job for you.

If you dont like that --> please throw TestStand to the garbage and write your own sequncer.

 

What do think of renaming 'SimplePass' to 'SinglePass'

and use the SequentialModel.seq that comes with Teststand.

I going to add the UUT stuff to my Example and viola ? 

 

 

Juergen

--Signature--
Sessions NI-Week 2017 2016
Feedback or kudos are welcome
0 Kudos
Message 18 of 28
(2,391 Views)

Well, before using TS as a test engine, the company I'm currently

contracted in used to have their own sequencer, quite steady yet

lacked of hierarchical features (calling sub sequences with

parameters). TS offers that, but encapsulate everything in its own

way of doing things.

 

OK, the 'RunState.Root.xxx' stuffs are not to be found before

execution, but where are the same variables used as default

entry before execution ? I'd like to write in these variables and

TS to use their content and do the job.

 

Thanks for providing me with source code and explanations.

 

David KOCH

0 Kudos
Message 19 of 28
(2,383 Views)

Hi David

 

voila

 

Screen.jpg

Regards

 

Juergen

--Signature--
Sessions NI-Week 2017 2016
Feedback or kudos are welcome
0 Kudos
Message 20 of 28
(2,367 Views)