NI VeriStand Add-Ons Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

VeriStand Steps for TestStand Feedback

Hi Andy,

I don't have any options as you shared in the image. Do I need to add that parameter in Property Browser??? Because of this timing test stand is not moving to next step??? Attached the screenshot of my TestStand property browser window.

Capture1.png

0 Kudos
Message 251 of 292
(1,793 Views)

@ElectricWraith,

 

Thanks for the question and for providing screenshots. The ValueToSet property uses an Expression data type so that you can use Expressions to dynamically set a channel to a value stored in a TestStand variable. 

 

Have you tried using the SetValString method instead of the SetValNumeric method of the PropertyObject?

 

2017-11-27 09_42_17-vs-steps-build-vm on USAUSLT-WIA1K58 - Virtual Machine Connection.png

0 Kudos
Message 252 of 292
(1,787 Views)

Hi Samraj,

 

Can you confirm what version of the VeriStand Step Types you are using? 

 

You can find the version within TestStand in the Type Palettes configuration section. Here's an example showing the 17.0.6.0 version of the steps.

 

2017-11-27 09_59_09-vs-steps-build-vm on USAUSLT-WIA1K58 - Virtual Machine Connection.png

 

 

0 Kudos
Message 253 of 292
(1,784 Views)

@MaWei,

 

I would agree that this is not expected behavior of the Timeout property of the RT Sequence Step Types. 

 

I went ahead and created an issue on the project's GitHub page to track this. You can find more information about the problem here.

 

Timeout for high-level RT Sequence Step Types does not work as expected #8

 

Ultimately the problem is that the Timeout property does not configure a timeout for the Sequence Call but rather a timeout for the individual time steps of the RT Sequence. 

 

This will be close to the top of the list for feature improvements/fixes. We will get to this before the holidays but it may be a couple of weeks out still. 

 

Are you able to wait for a fix or do you need a workaround immediately?

0 Kudos
Message 254 of 292
(1,782 Views)

Andy,

I hadn't tried the SetValString method, so I did so a little while ago, no dice. I don't understand why it's giving me the error that it is (-17306 Unknown variable or property name 'ValueToSet'), I can successfully obtain the subproperty name, so it's baffling to me that the unknown proprty name error happens. I get it from the ChannelName SetValString method as well, even if I clear the error from the SetValString method for ValueToSet.

 

I was able to use the SetMultipleChannelValues step type (configured as a single element array write) as a stop-gap fix, but I'd really like to understand what's going wrong with the SetChannelValue step type.

SetValString Method.JPG

0 Kudos
Message 255 of 292
(1,779 Views)

@Andy-C

 

thanks for the answer. I believe I've expressed myself a bit incomprehensibly. I do not want to run RT Sequences from Teststand but Stimulus Profiles. In our current project, there's no way of exporting our >100 Stimulus Profiles to TestStand (let alone the additional cost of multiple new TestStand licences).

So I'm looking for a way to poll the status of a "Run Stimulus Profile (async)" step to implement a timeout in TestStand:

Run Stimulus Profile (async)
while(profileRunning) #how can I obtain this status?
if(time > timeout)
{
Undeploy Project #this also ends the Stimulus Profile
}
}
0 Kudos
Message 256 of 292
(1,772 Views)

@MaWei,

 

Thanks for clarifying. I misread your question. I assumed you meant the Timeout in the RT Sequence Steps. It's actually the same Timeout as specified in the Stimulus Profile, and the confusing behavior happens in both places for the same reason. I'll investigate that behavior a little more as I think this Timeout should address the root problem you are trying to address. 

 

In the meantime there are some workarounds that may help. 

 

The easiest option that comes to mind is to configure a Global Time Limit for all Steps in a TS Sequence. This is set using the Station Options. The downside is that this will always terminate or abort execution. 

 

Another option would be implement something like your above pseudo-code within your sequence.

 

I made a small example that does something similar with the Engine Demo project that ships with VeriStand. The attached sequence will launch N Stimulus Profiles asynchronously. It will then enter a loop which periodically checks the status of each RT Sequence running in each of the deployed Stimulus Profile Sessions. This loop continues to check the RT Sequence states until all the Sequences are Completed or until the timeout is reached. At that point you could either end the Sequence or implement more code to dynamically Stop any running Sequences and continue the test. 

 

I hope this helps!

 

2017-12-05 10_20_22-vs-steps-build-vm on USAUSLT-WIA1K58 - Virtual Machine Connection.png

0 Kudos
Message 257 of 292
(1,734 Views)

Hi Andy,

 

Sorry for the delayed response, I was on leave for my marriage. I am using version 14.0.3.0. Please find the attachment.

0 Kudos
Message 258 of 292
(1,653 Views)

What does the Timeout(ms) on the RT Sequence Action step do exactly?  If my RT sequence runs for longer then the Timeout it doesnt seem to matter.

0 Kudos
Message 259 of 292
(1,632 Views)

There is a new release of the VeriStand Steps available on the community page that addresses this timeout issue. 

 

The Timeout setting you configure in the Step dialog is actually the Timestep Timeout for the RT Sequence. 

 

The latest version of the VeriStand Steps includes an additional Step Property called SeqTimeout which will cause the Step to return after the specified value

 

2018-01-17 12_30_19-rtt-test-vs17-ts16 - Remote Desktop Connection.png

 

These Steps now include this new SeqTimeout property:

 

RT Sequence Action

RT Sequence Numeric Limit Test

RT Sequence Pass Fail Test

Run Stimulus Profile

 

0 Kudos
Message 260 of 292
(1,623 Views)