11-27-2017 07:30 AM
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.
11-27-2017 09:43 AM
@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?
11-27-2017 10:00 AM
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.
11-27-2017 11:41 AM
@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?
11-27-2017 12:04 PM
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.
11-27-2017 02:02 PM
@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
}
}
12-05-2017
10:21 AM
- last edited on
10-22-2024
04:43 PM
by
Content Cleaner
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!
12-28-2017 03:38 AM
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.
01-09-2018 10:23 AM
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.
01-17-2018
12:32 PM
- last edited on
10-22-2024
04:43 PM
by
Content Cleaner
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.
These Steps now include this new SeqTimeout property:
RT Sequence Action
RT Sequence Numeric Limit Test
RT Sequence Pass Fail Test
Run Stimulus Profile