NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Pass data from configuration entry point

I have a need to post data from a Configuration Entry Point during a Test UUTs execution. I would like to update a parameter in my test sequence, using the configuration entrypoint if the test sequence is actively running in Test UUts. If it's not active, I would update a .ini file which gets read by the process model when a new Test UUTs entrypoint is started.
 
My first guess has been to determine if the TestUUTs sequence is active, and I have tried using the PropertyObject RunState.ProcessModelClient.IsExecuting, but I just realized the Configuration Entry Point is always running in the process model.
 
Everything I have read indicates that most Configuration Entry Points just write data to a file. Am I doing something fundamentally wrong?
 
How do i determine if my sequence file is being executed with TestUUts?
 
Thanks for your help. Woefully confused,
Brian
0 Kudos
Message 1 of 6
(3,852 Views)
Hi Brian,

Based on what it seems you are trying to accomplish you might want to consider using a Global variable with its Shared flag set to true. This will enable you to both read and write from within a test sequence and also have a process check it during startup.

I was wanted to see what you are trying to accomplish with this other than checking to see if TestUUTs was being executed as there may be other ways of accomplishing this based on what you were trying to do from a higher level.
Test Engineer - CTA
Message 2 of 6
(3,823 Views)

Hi Jon,

Thanks for your response. At a high level, I'm manually setting the number of boilers available for a process. I want the test sequence to accept the updates for logging purposes, as the number of boilers online can change during the course of testing a single UUT. I want to use the Configuration Entry Point from the operator interface to set the number of boilers regardless of whether I'm executing my tests or whether the machine is sitting idle. I guess it's not really necessary to determine which Execution Entry point is active. The data just needs to be accessed from existing executions and new executions.

If I used a station global, how would my changes be saved? Can you do this programmatically? Is there a better way?

0 Kudos
Message 3 of 6
(3,820 Views)
Globals are stored in the StationGlobals.ini file. I'll have to check on doing this programmatically as I'm not sure how we would do that at the moment. I'll get back to you on this tomorrow.
Test Engineer - CTA
0 Kudos
Message 4 of 6
(3,809 Views)

hi bce,

[ If I used a station global, how would my changes be saved? Can you do this programmatically? Is there a better way? ]

When Teststand closes, it automatically saves the StationGlobals. You would use PropertyObjectFile.SaveFileIfModified if you needed to force the save. But you shouldn't really need to do this as the latest value is available to all sequences and sequence files.

Regards

Ray Farmer

 

Regards
Ray Farmer
Message 5 of 6
(3,801 Views)
Perfect. This solves my problem. Thanks for the guidance Ray and Jon!
0 Kudos
Message 6 of 6
(3,795 Views)