NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Limit loading from Processmodel and limits change for each run in of the UUT

We have a customised processmodel and limitloader steptype that can load limits for a given client sequence file. Our requirement is to load limits from processmodel(after PreUUT) for every new UUT with a different limit file( based on the serail number). As of now the limtloading is happening properly for the very first UUT and subsequnet UUTs will have the same limits as in frist run. Please let me know how to handle new limit loading for every new run with limit loading step type located at ProcessModel(after PreUUT).

Currently the limitloader step type is able to load limits even for the second run if we don't execute the seqeunce. But it doesn't do so while the sequence is running.

Please suggest...

0 Kudos
Message 1 of 10
(3,985 Views)

Hi

 

What version of TestStand are you using?

 

Regards

Ray Farmer

Regards
Ray Farmer
0 Kudos
Message 2 of 10
(3,984 Views)
Iam using Teststand 3.1 currently. But later I want to extend this for other version of Teststand; 3.5,4.0.1 and 4.1. As of now please advice me on TS 3.1. Also if I have to make any changes for other version of TS  to support this, please let me know.
0 Kudos
Message 3 of 10
(3,981 Views)

Hi,

 

I dont know of any problems in TS3.1 with the PropertyLoader.

What are your settings for the PropertyLoader?

Can you post either some pictures or an example of your ProcessModel with the PropertyLoader.

 

Regards

Ray Farmer

Regards
Ray Farmer
0 Kudos
Message 4 of 10
(3,959 Views)
I have attached document.Please see if this helps....
0 Kudos
Message 5 of 10
(3,957 Views)

Also please note that the limitloader step needs Locals.LimitFileName, Locals.LimitFilePath and Locals.LimitSheetName be present in the same subseqeunce as the limitloader step is located.

0 Kudos
Message 6 of 10
(3,956 Views)

Pickering,

 

I put together a simple example that seems to do what you want correctly.  Please tell me how this differs from your limit loader, and then we can figure out how to fix it.

 

Note that the limits are based off of the serial number, and that I have specified three:  "001", "002", "003".

Message Edited by Josh W. on 02-12-2009 01:15 PM
Josh W.
Certified TestStand Architect
Formerly blue
0 Kudos
Message 7 of 10
(3,925 Views)

Hello Josh

Thanks for you effort. But unfortunately its not solved yet. We actually need to load only FileGlobals and Step.Limits properties. The package that you have sent works only for Locals but not for Step.Limits property. Is it the limitaion of 'property loader' step type when used from a Processmodel. I have attached the test seqeunce and the modified limit.s txt for your reference. Note that its not updating the limits for 'Numeric Limit Test'.

Meanwhile I continued experimenting with other things. My observation was Incrementing the RunState.ProcessModelClient.ChangeCount was not updating the runtime copy of limits(Step.Limits) but only Locals.

Now Iam trying to upload the limits from PreUUT of client sequence file, but still without any success. The 'LimitLoader' step that we use need 'ThisContext' of Mainseqeunce. But  its created only when the Mainseqeunce starts executing right? Is there a way that we can get the 'ThisContext' of Mainseqeunce at the PreUUT( located at Client seqeunce file)?OR

Can we handle this in the soucre code of limitloader step type?

Do you have any other alternative of handling the step.limits form outside the Mainsequnce of client sequnce file?

Please advice...

 

Thanks.........

0 Kudos
Message 8 of 10
(3,900 Views)

Pickering,

 

I'm not quite sure why you are not able to get this working.  I wrote a simple property loader example loading (from the process model) a few step limits and local variable properties.  It works correctly.

 

I was not able to do this with the files you attached, because there are several .dlls that you did not send me.  Also, I didn't have your process model. 

 

Once again, the limits to be loaded are dependent on the serial number.  I defined different limits for serial numbers "001","002", and "003".

 

Please let me know if this does not work for you.

Josh W.
Certified TestStand Architect
Formerly blue
0 Kudos
Message 9 of 10
(3,858 Views)

Thanks for your inputs.But unfortunately it still didn't workout so we found a workaround to solve the isse.

I have anew query

We use customised ProceddModel(PM) that has seq call In PreUUT. This seqcall will actually branches to one of the

sequences( say Seq1) in the PM. When I use PreUUT in the client sequence( overriding the callback) the execution flows properly from

PreUUT of client sequence to Seq1. But when I end the execution and close the sequence editor, I still the 'SeqEdit.exe"

running at the TaskManager.
To give a brief flow of our customized PM its is like this
1.We select and run  the sequence through any Entrypoint, EP1
2.EP1 will start a new execution for one more entry point EP2 ( For limitloading)
3.EP2 will initiate the new execution of 'Test UUTs' entrypoint
4.'Test UUTs' entrypoint further initiates the execution by socketwise ( as many number of sockets selected).

5. The client sequence starts running afterwards.

 

This situation also happens both for normal closure( halting the sequence) and termination of the sequence.
Please advice on how to tackle what is causing the problem and also any possible solution/s.

 

Thanks.......

0 Kudos
Message 10 of 10
(3,798 Views)