NI VeriStand Add-Ons Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

VeriStand Steps for TestStand Feedback

VeriStand Steps for TestStand Feedback: Low-Level RT Sequence Control

Hi Handy Andy,

Attempting to use "Get Sequence State" in a polling loop to query status of a Real Time Sequence running on target.

Tried passing the sequence path as a properly delimited string in Property Browser: Veristand: SequenceName:

“Directory\\Subdirectory\\Another_Subdirectory\\sequence_name.nivsseq”

Error Returned >

Error executing substep 'GetSequenceState'.
An exception occurred inside the call to .NET member 'Sequence':
NationalInstruments.VeriStand.SequenceNotFoundException: C:\\Users\\Public\\Documents\\National Instruments\\NI VeriStand 2015\\Projects\\ECLSS_Sensor_Test\\UI_Manager\\Simulated Gas Mixing.nivsseq
\r
at NationalInstruments.VeriStand.ClientAPI.StimulusProfileSessionImpl.get_Sequence(String sequence_name)[Error Code: -2.15E+009]


Notice how the path passed into the API call has carriage return appended...

I had not appended a carriage return to the path constant.

Same thing happens when trying to use some of the other low-level calls, i.e. "GetSequenceReturnValue"

Error: Error executing substep 'GetSequenceReturnValue'.
An exception occurred inside the call to .NET member 'Sequence':
NationalInstruments.VeriStand.SequenceNotFoundException: C:\\Users\\Public\\Documents\\National Instruments\\NI VeriStand 2015\\Projects\\ECLSS_Sensor_Test\\UI_Manager\\Simulated Gas Mixing.nivsseq
\r
at NationalInstruments.VeriStand.ClientAPI.StimulusProfileSessionImpl.get_Sequence(String sequence_name)[Error Code: -2.15E+009, User-defined error code. ]

I read in another post on a similar issue to try defining the path in a local variable. So I created a local:

Real_Time_Sequence_Path (Directory\Subdirectory\Another_Subdirectory\sequence_name.nivsseq)

and then used the local in the Property Browser: Veristand: SequenceName:


Alas, this had the same result.

Also, I noticed the API Call referenced in: StartVeristand was referenced to the 2013 assemblies.

I changed it to point to 2015 assemblies, but it had no effect on the above issues.

The Low-Level call to "Get All Sequence Names" succeeds, but it does not require a path definition.

Am I missing something here?

0 Kudos
Message 121 of 292
(1,054 Views)

I'm currently stuck trying to programmatically access step properties when I'm generating a TestStand sequence.

I tried posting in the TestStand forum and got some help (see that post here: http://forums.ni.com/t5/NI-TestStand/Access-Type-Palette-element-details-from-LabVIEW/m-p/3220127#M4...), but I'm still stuck. I need to find a way to access the properties for each Veristand Custom Step so I can set them as I create the TestStand sequence.

I'm at the point where I can generate a sequence with whatever steps I want (thanks to HandyAndy and JL), but now I want to be able to programmatically get/set the available properties for a given step in the Veristand Type Palette.

Any ideas?

0 Kudos
Message 122 of 292
(1,054 Views)

@AR_15_Builder -

This is an issue I haven't seen before and I don't have an immediate answer, but I'll look into it.  My hunch is that some intermediate code is inserting the carriage return when retrieving the error text and passing it out, but I'll check that too.

@ElectricWraith -

It's great that you have working what you have.  And looking at your other thread, you are right - you need to know what the specific step property name is in order to get or set its value.  If you are going to set parameters for the Set Channel Value step, you need to set a specific set of step variables, and if you are going to set parameters for Get Channel Value, you need to set others.  You need a separate piece of code for each step.

A while ago I realized that in order to REALLY make scripting these easy, I envisioned a library with a palette of VIs, one for each VS TS step.  In each VI, there is code that adds the step to a sequence, and then additional code that sets each of its parameters.  I hope to make this library, but it's gone into my wish list that I likely won't get to for a couple of months.  I wish I could have had it ready right now - I would feel SO cool.

Does that help at all?

Thanks both,

Andrew

0 Kudos
Message 123 of 292
(1,054 Views)

I had been sort of fumbling (code-wise) towards what you describe, so you clarifying that does help a bit. But, what would really help is if you could show me how to use whatever PropertyObject methods/properties I need.

For example: Say I'm adding a Set Channel Value step. I have code (as a result of the thread in the TS forum) that allows me to get the list of names of the elements in NI_VeristandTypes.ini. From there I want to use the name of the Set Channel Value type to access the Value To Set and ChannelName properties.

Once I can do that, I'm all set. I just need to figure out how to get there, which at the moment I'm unable to do.

0 Kudos
Message 124 of 292
(1,054 Views)

Hello,

I'm using the "TS 2014 32b VS 2014" version and I've just found a bug in the

     RTSequenceVIs.llb\Run RT Sequence Pass Fail Test.vi

     RTSequenceVIs.llb\Run RT Sequence Numeric Limit Test.vi

where a wrong configured case structure in the "Parse the parameter information" for loop prevent the correct execution of a realime sequence with numerical parameters.

Run RT Sequence Pass Fail Test.vi.png

Run RT Sequence Numeric Limit Test.vi.png

The correct (at least working) case structure can be found on

     RTSequenceVIs.llb\Open and Destroy RT Sequence blocking call.vi

Open and Destroy RT Sequence blocking call.vi.png

Self fix this should be easy for everyone here but a patched release will make my delpoyment proces easy (do not need to remember to install the patched version of the llb). Yeah... I'm extra lazy!

Cheers

D.

0 Kudos
Message 125 of 292
(1,054 Views)

ts-vs-pipeerror.png

I am having an issue with a system in which I originally had VS2014 installed.  In trying to use the TS-VS add-on, when I called Initialize Veristand, VS2014 would launch and then TS would error out with the above error message.  I realized I did not have TS2014 SP1 installed, so I uninstalled TS2014 and the TS-VS addon, and also VS2014 (I don't need/want it, I have VS2015).  I reinstalled TS2014 SP1 and the TS-VS add-on and still get the same error message above. 

Where does TestStand get the information for launching Veristand?  VS2015 runs fine on my system.  I have other setups that never had VS2014 and seem to work fine. 

0 Kudos
Message 126 of 292
(1,054 Views)

D4N!3L3 - Thank you for the bug report. 

Martin_Meyer - Did you reinstall the TS 2014 VS 2015 version of the steps, or reinstall the 2014 version again?  It should have been a new download.  From the error message, I suspect that is it.

Thanks,

Andrew

0 Kudos
Message 127 of 292
(1,054 Views)

Yes I didn't realize the older version was at the top. 

0 Kudos
Message 128 of 292
(1,054 Views)

AR_15_Builder -

I got a while to try to troubleshoot your issue.  I think it might be related to the way you're using the "RT Sequence Name" field.  But I'm not sure.

Can you attach an example sequence of how you are using it?  I want to see what local variables are in play, because I suspect the issue is related to that.

Thanks,

Andrew

0 Kudos
Message 129 of 292
(1,054 Views)

Z4CRUZN -

One of the outputs of the Stop Logging step should have an array of the created log files in it.  It's an array because if you select file spanning, you could get N of them.  It's located in  Step.Result.VeriStand.Location.  If you only use one log, just take the first element and that's your log file path.

Thanks,

Andrew

0 Kudos
Message 130 of 292
(1,054 Views)