Is there a way to see whether the sequence was started by the Sequence Editor or the UserInterface? If the sequence was started by the SequenceEditor, I would like to show some debug information. However, this should not happen when starting from the UserInterface.
I hope someone has an idea. Thanks in advance...
Caller of the Sequence (SequenceEditor or UserInterface)
NI Package Builder Dependices management configuration
Hello,
Does anyone understand clearly how dependencies are working for pacakges. It's unclear for me inside NI Package Builder and it's the same inside LabVIEW.
How can I configure the package to requests for example to request TestStand Version 2019 but without taking in count the patch installed?
It can be the same for any package that can have patch. For example LabVIEW Runtime. I need absolutely the LV RunTime 2018 but I don't care if it's the 2018 F1, F2, SP1 f3 for example. Is it possible to configure it like that ?
Thanks in advance.
SimulationDriver.dll for the teststand online training
How to change ResultRecordingOption depending on step result?
Hello,
is it possible to create a preexpression in a numeric-limit-step which set the Result Recording Option = Disabled if the step is passed?
I only want to see the step if limit check failed.
Thx
How to get sequence name in external sequence
Hello,
i have a sequence file "Main.seq and another "extern.seq".
Extern.seq contains a sequence "myseq" and in this sequence is a teststep "mystep"
In Main.seq i have a three sequence calls which opens the myseq sequence in Extern.seq
All three calls have different names like Measure_A, Measure_B, Measure_C.
Question is now:
How can i access in mystep the name of the calling sequence?
In the end i want to rename the "mystep" to Measure_A/B/C
Thx
Include a string value into a step parameter name
Hello,
I would like to include a string value into the "name" of a step parameter but I didn't found how to do this.
To be clear, I have a container with 5 strings ("A","B","C","D","E", for exemple) and I have locals.Results.A, locals.Results.B, etc.
I'm doing a foreach on my container and I want to save the result of my calulation in the good locals.Results but I don't know how to "use" my strings values to complete the value that i have to set for the parameter name of my sub sequence (I tried locals.Results.(container.string1) but it does not functionning)
Unfortunaly, I can't send a screen shot of my work, but if it's needed, I'll create a "false sequence".
I hope i have been clear.
Sincerely,
Jonathan
Automating multiple Input/Output to an executable using TestStand
Hi,
I hope this hasn't been answered already but I couldn't find exactly what I was looking for when searching.
I have a design that calls for using a .tcl script that is normally manually operated by a user using the keyboard. It basically is a terminal window where the user can type low level commands to send/receive messages from a device, or access a test menu and execute other scripts in the .tcl suite. The tcl application handles the underlying serial communication to the device, and I would be using TestStand to manage the input/output to the tcl application.
I need to be able to call the main .tcl executable from TestStand and then continually interact with that terminal throughout a sequence passing in input strings and reading the output strings, as if the sequence/steps were typing on the keyboard. I know the Call Executable step can provide a process handle to that .tcl exe process, but I don't see a way to keep interacting with that process over multiple steps. I'm looking for a solution where basically I use a call Executable step to start the .tcl application, and then call more steps to read outputs of that application and supply inputs, with other TestStand steps in between those that processes the info and provides software logic to determine the next inputs and handle the current outputs.
Basically something similar to using the ExtraPutty .dll for serial terminals but for interacting with a scripting language executable.
Is this something that can be done entirely with the Call Executable steps, or will I need to generate some custom C code to handle the input/output to the tcl application after loading it with call executable?
Thanks,
Jared
Announcing TestStand 2020
TestStand 2020 is out now and available for download.
The exciting release of TestStand 2020 includes a modernized Sequence Editor interface, intuitive usability improvements, and increased Python Adapter functionality!
Key updates include:
TestStand Sequence Editor Visual Design Updates
TestStand 2020 introduces a streamlined visual design to the TestStand Sequence Editor. In addition to cosmetic changes, the sequence editor has the following changes:
- By default, the sequence editor toolbar now only displays buttons that are global in scope. Buttons that provide functionality restricted to a single window or pane are now located in the relevant window or pane.
- Panes or tabs that provide configuration options for a single window are fixed to the relevant window.
- On the Steps pane, steps now have syntax highlighting. The icon color for a step indicates which type of step it is.
Python Adapter Improvements
TestStand 2020 adds support for Python 3.8. You can now use the Python Adapter to perform the following tasks:
- Pass COM objects between TestStand and Python code modules.
- Map enums in TestStand to enums in Python code modules.
- Map arrays of numbers in TestStand to NumPy arrays in Python code modules.
- Include or exclude subproperties of a container of a named data type when passing it between TestStand and a Python code module.
- Enter either an individual file or a directory as a code module path for the Python Adapter
Regular Expression Support
Regular expressions are now a supported comparison type for String Value Test steps. You can also use regular expressions as parameters for the CheckStrLimit, FindPattern, MatchPattern, and SearchPatternAndReplace expression functions.
InstrumentStudio Integration Improvements
TestStand 2020 introduces improvements to integration with InstrumentStudio. You can now perform the following tasks:
- Use Python code modules with IO Configuration step types.
- Pass the NI_IOSession data type between TestStand and Python code modules.
For additional information view the ReadMe.
User not updating in Status Bar
I am working on updating the Username in a the Status Bar, using the native ActiveX status bar. When I set a default username, I dont see the status bar updating.
Set the Username
Pane is configured as "User"
Status bar configured using the example from the Full Featured example.
Do I need to do anything else to update the Status Bar?
Simple UI Freezes on Exit - dynamical sequence call
I am using TS2019 with LV2017.
My Teststand always load a static sequence file, which dynamically (based on some conditions) calls sequences from other sequences files on the disc.
This architecture works totally fine with Sequence Editor, but when executed with the Simple UI example, the UI freezes as soon as the exit button is pressed after the sequence execution. This happens to both the LV source and the executable built from it.
Because if I execute an example sequence which does not involve dynamic calling of other sequence files, everything works fine. I wonder if this issue is due to the dynamic calling, and the simple UI is not able to close the opened reference related to it.
Anyone has any experience/insight to this.
Thanks!
Obtain a better report .xml
Dear all,
I'm using TestStand 2017 and I generated reports with "TR5_Horizontal.xsl" and "ATML 5.0".
I've a step "Sequence Call" that call a Sequence that has a "NumericLimitTest" and I have the report in "Initial Result.png".
I want to have only a one table line, as I edit in picture "Wanted.png".
I try to create a custom step starting from a "SequenceCall" combined with "NumericLimitTest", and I pass to the main step results of called step by RunState.Caller.FileGlobals... I obtained result in "Actual.png".
Anyone has ideas about how edit results/step/xls to obtain a result similar to "Wanted.png"?
I'm open to all possibilities.
Many thanks in advance.
Best regards,
Claudio
Using Named Queues and Notifiers in UI and TestStand Sequence
Hi Folks,
I am interested in hearing what TestStand users think about using Named Queues and Notifiers for communicating between a LabVIEW UI built as an EXE and the Test Sequence (or rather, the VIs the Test Sequence calls) it is running in the TestStand engine.
I know the recommendation is to completely split development of Test Sequence and the UI, and that they should have minimal reliance on each other. I also know that synchronous UIMessages are recommended for the communication between UI and Test Sequence. I am just curious if others have had success getting named queues or notifiers to work in an EXE setting, what their process is, and what type of issues or caveats they have encountered using that method.
Thanks,
Error : Enter operation with the same name is already pending for this thread -17300
Hello
I am new to the batchmodel in teststand 2014 and i have problem with my first sequence.
Everything works fine unit the operator presses the Terminate-All button. When this happens i get sometime an error -17300 (Enter operation with the same name is already pending for this thread). In my opinion when theads enter a batch and Terminate-All is pressed then they go to the cleanup of that sequence. I have a Exit batch in all cleanups where i Enter a batch. How is it possible that i get this error ?. I have attached a part of my sequence as an example
Thanks for your help in advance
Using the synchronous model to run parallel executions
TS 2017, LV 2018
I wish to run up to 4 UUTs at a time, independently, from a LV UI and display any given VI in the sequence in a sub panel. Using some example code (multi window UI Example and sub panel example) I can run 4 copies of my sequence, with my own process model, make the Vis re-entrant and the code is much simpler than the parallel process model. My question is: what's the best way to keep track of which sequence is telling the UI message model callback to put it's VI front panel in one of the sub panels? I assume there are 4 copies of the test sequence running, but are there 4 copies of the process model running too? Do I need to create a variable in the process model and return that to the UI every time a displayable front panel executes?
Parallel Model Data Flow Documentation
Hi Forum
I am looking for documentation for the data flow within the Parallel Model, I need to understand how the Data storage between the Main Sequence and Offline Processing works. I tried several approaches documented below to write a few datapoints to the offline processing but I am lost as to what path those datapoints have at the time of processing.
Thanks, Raphael
Just getting started with TestStand and looking how to set up window on my TS "Desk"
Doing the self taught approach for test stand, so I am taking the online Developing Test Programs in TestStand so they jump right in to excercies. I can't figure out how to set up the various windows in my view, which I refer to as my TestBench "Desk" - not sure what it's officially referred to, but. I'd like the Main Sequence to be in the upper left and that's where mine came up out of the box. Now I'm pretty sure when I first got started the Step Settings was in a window in lower right - but now it just floats and I can not figure out how to get it back. I look under View and it's not obvious and I also selected Tile under Windows tab and that does not seem to tile these two windows.
Now with trying to figure out how to tile these two windows, I selected Window tab and went down to Workspace and that pops a long narrow "Workspace" down the left hand side of my TestStand view. Not that it's there - I can get rid of it - but what's it used for?
Thanks
Dave
Change Step.Result.Status of calling sequence
This is an example of my structure:
The MainSequence contains some Sequences and each of them have a CheckSequence at Setup:
- Sequence1
- CheckSequence
- Sequence2
- CheckSequence
- Sequence3
- CheckSequence
Now I want to set the Step.Result.Status of the Sequence1,2 or 3 within the CheckSequence. I've tried this Statement, but it does not set the Status:
RunState.Caller.Caller.Step.Result.Status = "Skipped"
StepName change affter execution
in my sequence file, all step names are changed to 'blocking ' after running, I don't know how does this happen.
Waiting for a Stimulus profile result
Hi,
I try to use a Veristand Stimulus Profile file into TS. The stimulus profile and related files (RT, real time sequence) works if runned in VS and I see the correct behavior ( a slow ramp) but when import the stimulus file in TS sequence using "Run Stimulus Profile" step, I don't see nothing on VS and the TS report said "done" for every step without error.
I tried to check the step configuration and I didn't nothing to strange, seems also blocking (Step proprieties->General->Type : "RunStimulusProfileBlocking").
Thanks for any suggestion
Calling a .DLL within TestStand
Hi folks
I've been trying to figure this out the entire day, but without luck. I hope you guys are able to help me out
I am using an instrument (Frequency. Counter) from Mini-Circuits. I need to get the measurements inside TestStand, onto my report.
Therefore I tried to implement the custom made .DLL for this instrument. Found here: "https://www.minicircuits.com/softwaredownload/fc.html"
".NET DLL from 27. October 2020. .NET class library for automation via USB (Windows PCs)"
So I am asking - how do I call a .DLL within TestStand? I don't seem to be able to do this..
Thanks in advance!
BR Andedam