Quantcast
Channel: NI TestStand topics
Viewing all 6527 articles
Browse latest View live

Timeout problems using SwitchExecutive in TestStand Steps with Batch Model

$
0
0

I’m having timeout problems by running a test sequence with switching steps in a batch model.

A short description of my HW architecture:

A simple schematic can be found in the appendix.

We have 3x a Keysight 34980A Switch Main Frame with 4 active Slot units. 2x a Matrix, 1x a GP- card and 1x Multiplexer.

Communication Bus is LXI.

Used SW:

  • NI TestStand 2014 SP1      - using the standard NI Batch process model
  • NI Switch Executive 2015
  • OS: W7 64bit professional

The goal is to test a batch with 3 DUTs.

My first approach was to define only 1 virtual switch executive which includes all 3 HW Switch frames.  Advantage would be that I can connect the matrix card from the 3 HW switch frames with each other over a HW bus realized over the Virginia panel. This possibility is actually not required at the moment but is a design decision for the future. Requirement for the actual DUTs is that each DUT has his dedicated HW- Switch Frame with the corresponding card.

For the test sequence; I have a fix SE- Name for the TestStand Step and a test socket depending route name.  The approach works fine for 1 Socket and also for all 3 sockets as long as the tracing is enabled and not too fast.

By disabling the tracing I receive timeout error.

Error:“Could not perform the switching operation:  Details: An error has occurred while attempting to access device DAU2 VISA error = Zeitüberschreitung, bevor der Vorgang abgeschlossen werden konnte.(Error = -2147483648)”

translation German part of error message: Timeout error bevor process could be terminated

See screenshot in appendix.

It looks like there are deadlocks when multiple switching commands are sent.   See my example sequence.

In a second approach I defined a virtual switch executive unit for each HW Swich Frame: So in this case I have a socket depending switch name and a fix route name. This approach work now with 3 SE- objects in contrast to the first approach with only 1 SE-object.

Using this variant I don’t have the timeout error by running the sequence without tracing enable.

I would like to ask/ discuss why I’m seeing the timeouts in the first approach.  Does I do something wrong or is this some kind of restriction from my SW- Design or in general from SE.

Appendix: -     NI MAX export including the SE definitions -     TestStand example sequence file -     Error Screenshot -     HW architecture diagram


In TestStand 2013, how to add some simple description messages

$
0
0

    hi ,guys.

   I want to add some message of test sample in the beginof the report, what can I do?

Concurrent run of LXI instrument​s self-test/​measuremen​t problem in Teststand

How to write to step property during run time

$
0
0

Hi All,

I am creating a custom step in which i want to write a "data" to the step property. I am able to write and read it in edit time (using edit substep), but not during run time (pre substep). In pre substep, say, i write 5 to "data" and read back using TS API. I am getting the data as 5 (i can see it using a probe in LV). But once the execution is complete i donot see the value 5 in the "data" of my step property. How do i write to the step property and retain the value even after execution?

I am passing the sequence context to write to the step property. I think i should pass a different reference during run time. Thanks for any help.

In TestStand 2013, reportgen_html.seq, transfer data flow

$
0
0

     hi, guys.

      I want to know each step's effect in the sequence, but I do not understand Step>>AddStionID>>Expression, E.g. below:

AddStationID.jpg

     I want to find where are define Locals.HeaderNameTagStart, Locals.HeaderValueTagStart,and so on.

     In ResStr() function, what are "MODEL" means?    

     Thinks.

In TestStand 2013, modelsupport2.dll, custom

$
0
0

     Hi,guys

      I want to know how to use modelsupport2.dll to custom StepText in report.

     So far I know the StepText be controled by someone Function in the DLL, but I do not konw how to modify the config.

    

     I want to realize result below:

     before modify:

     ScreenHunter_4.jpg

     after modify:

     ScreenHunter_6.jpg

     Thinks!

How do I dynamically reload different generations of database schemas in TestStand?

$
0
0

Hi 

I have 2 sequence files A.seq and B.seq on one test station (one computer).

I want to save the result from A.seq using the “2.x to 4.0” schema “TS 2.x-4.0 Generic Recordset (NI)”

I want to save the result from B.seq using the “2012 and later” schema “Generic Recordset (NI)”

The problem seems to be that in order to change the schema I have to do the following.

1 Configure\Result Processing

2 Database

3 Schemas\Reload NI Schemas

4 select “2012 and later”

5 OK, 

6 select “Generic Recordset (NI)”

7 OK, OK

How can I do this programmatically / on the fly from the sequence file?

It’s not enough to simply put:

Parameters.DatabaseOptions.DatabaseSchema.Name = "Generic Recordset (NI)" in "DatabaseOptions"

because this will apparently not load the necessary modules to TestStand.

Yours sincerely,

Erik

Configure LabVIEW Adapter Programmatically

$
0
0

This example allows users to configure LabVIEW adapter programmatically.

This could be used in a LabVIEW user interface to programmatically configure the adapter to a Run-Time configuration.



who can help me?

Batch Synchronization Example TestStand 3.1

$
0
0

This TestStand 3.1 Example displays the three types of Batch Synchronization steps available and demonstrates their capabilities.

To place a batch Step, right click » Insert Step » Synchronization » Batch Synchronization.

Right click the Batch Synchornization step and Configure Batch Synchronization.

For each Batch Synchronization step you'll want to select whether you are Entering or Exiting. Place the code you want Synchronized between an Enter and an Exit.

For an Entering step you'll also be able to select which type of Synchronization you want. The three types are briefly explained and demonstrated.

Batch Synchonization Example.JPG

Software Engineer Needed!

$
0
0

Software Engineer

Hot Hot Hot!!!  We are looking for an experience Test Stand and Lab View Software Engineer to join our crew!  We are a full service contract Manufacturer specializing in Defense, Commercial and Industrial Electronics for over 40 years.  We offer the latest in Technology Solutions, Turnkey Manufacturing and Engineering Services.  Our capabilities include:

     *Low to Medium Volume, High Mix, High Complexity Assemblies

     *Product Development, Transition and New Product Introduction

     *RF Capability-Engineering, Manufacturing and Test

     *Full Spectrum Test and Development-Flying Probe, ECT, ESS and Functional

     *Design For Manufacturability and Test Services

     *Tin Whisker Mitigation

Software Engineer 3

Responsible for designing, developing, troubleshooting, and improving software programs for circuit card assemblies and systems. Must have strong experience in Lab View and Test Stand, other software applications experience is a plus. Performs systems modeling, simulation and analysis in designing compilers, assemblers and utility programs. Work with hardware designers on machine characteristics that may affect software systems. As required, provides inputs for documentation of new or existing programs.

Software Engineer Responsibilities:

Responsible for the analysis, design, programming, and modification of software programs in a manufacturing environment.

Writes code, completes the programming and performs the testing and debugging of applications.

Writes software for graphical user interfaces, and writes firmware for embedded processes as required. Completes documentation and procedures for installation and maintenance.

Will interface with customers internal and external to define system requirements and/or necessary modifications.

Works on complex issues where analysis of situations or data requires an in-depth evaluation of variable factors.

Exercises judgment in selecting methods, techniques and evaluation criteria for obtaining results.

Internal and external contracts often pertain to company plans and objectives.

Determines methods and procedures on new assignments, and may provide guidance to other personnel.

Software EngineerTraits:

Must be a self-starter and be able to work with minimal supervision.

To be considered must have a willingness to support the manufacturing effort at all times.

The successful candidate shall possess the required knowledge and reasoning skills to effectively accomplish job objectives, and take personal responsibility to continuously learn and maintain skills.

Their work must be thorough, accurate, reliable and completed in a timely manner.

They must provide verbal and written information that is clear and concise, and demonstrating tact, courtesy, and flexibility.

They shall be punctual and take personal responsibility to comply with ethical standards.

Software Engineer Qualifications:

Requires a minimum of 10 years of related experience, BSEE is preferred.

Must be familiar with Microsoft applications.

Test system development and or test system design.

Lab View/Test Stand development experience.

RF troubleshooting to compenent level is a plus.

Manufacturing support is a plus.

C++, Lab windows, Visual Basic, and VEE software development capability a plus.

Hardware design for production test systems is a plus.

Please contact Krista@Dunhillnc.com ASAP for more information

TestStand Using LabVIEW OOP Truck Example

$
0
0

This example uses TestStand 2012 and LabVIEW 2012 to demonstrate calling a LabVIEW VIs through dynamic dispatching.

The LabVIEW OOP example included ships with 2012 and can be found in: C:\Program Files\National Instruments\LabVIEW 2012\examples\lvoop\DynamicDispatching

In this example the Call OOP LabVIEW.seq will call the "Get Cargo Capacity.vi" in Vehicle passing both a Vehicle object and a Truck object to show the same behavior.

Running with Single pass a successful run will give you the following output:

"Truck1CargoCapacity = 1, Truck2CargoCapacity= 2, Vehicle3CargoCapacity = 3."

LabVIEW Utility for Initializing a TestStand Variable (Container / Array)

$
0
0

The attached LabVIEW VI will allow you to initialize/clear a TestStand Variable by reference (including containers and arrays) to null values (Null definitions for Bools, Strings, and Numbers are defined by an input cluster). 

The VI runs recursively to dive through any nested containers and arrays.  Arrays may be either initialized to the null values of its elements or have all elements deleted.

Written in LV and TS version 2012.

Simpler Operator Interface Example

$
0
0

Hi,

I have lacked a more simple operator interface (OI) example shipping with Teststand, so I decided to made my own.

This example shows how to send information such as numeric and string data to the OI as well as how to update sequence variables in Teststand from the OI. For an example about how to send other datatypes such as waveform data, please have a look here: http://zone.ni.com/devzone/cda/epd/p/id/6233

Untitled.png

Code is written in Labview 2011 and Teststand 2010.

I haven't spent a lot of time making a generic framework, only a simple example.

If you use it, it would be nice if you can post an example image on how you've tweaked it.

Good luck,

Pelle Steen

NI Sweden

Play Audible sound from TestStand Sequence via .NET


TestStand Deployment Utility Log Viewer

$
0
0

Note: In TestStand 2014, the deployment utility includes a tree log view.  This tool is intended for deployment logs created in TestStand 2013 and previous.

Overview

The TestStand Deployment Utility Log Viewer allows you to view the results of a TestStand deployment in an organized tree view. The viewer provides the following features:

  • Displays all paths mentioned in each error and warning
  • Checks whether the file paths are valid files on disk, and whether LabVIEW VIs contain any errors
  • Optionally filters out VIs that ship in the default LabVIEW libraries (vi.lib, instr.lib, and user.lib)
  • Allows you to quickly open LabVIEW VIs, and browse to the location of any file path

The viewer can be used with LabVIEW 2009 and later.

viewerScreenshot.png

Getting Started

To use the TestStand Deployment Utility Log Viewer, follow these steps:

  1. extract all files inthe attached zip archive
  2. Open "Deployment Utility Log Viewer.vi" in the version of LabVIEW you used to build your deployment. The viewer is intended to be run on the machine you are using to build the deployment, so the file information provided is accurate.
  3. The Viewer prompts you to import a log file.  You can open the file from disk, or paste the log contents directly.
  4. Click OK to begin processing the log.

Viewer Settings

You can configure the viewer using the following options:

Display Options

  • Show Only Missing and Broken Files - When selected, the tree only displays file paths which are either not found on disk, or are detected to be broken VIs
  • Check for Broken VIs - When enabled, the viewer opens each VI listed in the log and checks if the VI is broken.  the Broken VI and Error Loading File icons indicate the state of each VI.  Note: this process can take a long time if you are loading many VIs, or VIs with a large number of dependencies.
  • Reload Selected VIs - select one or more VIs in the log tree, then click this button to reload the selected VIs.  THis is useful if you have changed the VIs since enabling the Check for Broken VIs option

Excluded Directories

  • Exclude vi.lib/user.lib/instr.lib - when selected, the viewer does not display VIs in these locations.  The viewer determines the location of these directories using the Base LabVIEW Directory.
  • Base LabVIEW Directory - Use this field to specify the LabVIEW directory of the version that was active when the deployment log file was created. It is recommended that you execute the viewer in the LabVIEW version that was active when the deployment log file was created.

Displaying TS execution percent on LabVIEW UI through UI message

$
0
0

Hi all,

 

I have an Teststand UI which launches the teststand and executes the certain sequence file.

I want to display the % execution of the sequence on the LabVIEW UI.

For that I am posting following UI message from the teststand:

RunState.Thread.PostUIMessageEx(UIMsg_ProgressPercent, FileGlobals.CurrentPercent, "", ThisContext, True) .

This message is called in SequenceFilePostStep callback and hence it is expected to be posted after each step.

When this UI message is posted,  in the UserMessageEventCallback VI of LabVIEW I am trying to read the value of FileGlobals.CurrentPercent which will give the current execution % and I can display it on UI.

 

When this sequence is ran standalone(instead of launching from LabVIEW UI , if I run it directly from teststand) the callback sequence is executing after each step and I can see the processpercent incrementing based on number of steps .

However when this sequence start its execution through UI , I am not able to get this UI message executed in the CallBack VI of LabVIEW. As this UI message is not getting executed in the UI , the progress precent what I am getting on UI is always zero.

I am not sure where I am going wrong. Do I need to configure anything in TS UI to run the callback sequence when it is launched from TS UI?

 

Jump To Subsequence Within Main Sequence Using Post Action

$
0
0

Hi everyone,

 

I have 4 subsequences that run one after another within my "Main Sequence."  Within the 4th subsequence, I have a step that checks whether a boolean is TRUE.  If the boolean is TRUE, I want to jump to the 1st Subsequence using the step's post action.  Then I expect the code to jump to the 1st Subsequence, run the 1st Subsequence, then run the 2nd Subsequence, then run the 3rd Subsequence, and then run the 4th Subsequence and check if the boolean is TRUE again.  If it is TRUE, I will jump back to the 1st Subsequence and start all over again.  If it is FALSE, I will finish executing the sequence file.

 

What is the syntax in the post action selection I need to use?  Thanks!

Numeric Test Failure on VAL("")

$
0
0

The following will show how to cause a failure on a Numeric Test that contains an invalid number.

 

In the Post-Expression of your message box:

Val(Parameters.EnteredData,Locals.ValidNumber),
Parameters.EnteredData=(Local.ValidNumber?Parameters.EnteredData:"NAN")

The Numeric Test that follows has the usual Data Source code:

Step.Result.Numeric=Val(Parameters.EnteredData)

This will however replace any entered input to "NAN" in the results/reporting field. "NAN" string through VAL() converts it to "Not A Number".

 

This example uses Parameters, but would be better as a Local.

VI runs well in Labview2015 but wrong in TS2013 VI call

$
0
0

Hello~

Firstly, I want to use MUXdll.dll in TS, but TS can't recognize them, I think it's has no library.

muxdll.png    

So I have to build LIN bus configuration VI by labview2015 and it runs well in lv, but when i call this vi in TS2013 with VI call, it can't perform it's function and show 2nd connection wrong message(the 1st message is in the sequence structure before this one) I write in the vi:

ScreenHunter_1.jpg

my VI call is:

ScreenHunter_2.jpg

It seems i lost some steps before doing the VI call? what can i do for this?

 

Viewing all 6527 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>