Quantcast
Channel: All NI TestStand posts
Viewing all 24414 articles
Browse latest View live

Teststand 2016 32-bit version download

$
0
0

I need to download Teststand 2016 32-bit version from NI. But when I click the download link, Teststand 2017 32-bit version was downloaded. Could you help correct the link? Thanks.


Re: -17502 System Level Exception

$
0
0

Hi edinsofty1,

 

The -17502 System Level Exception error is an operating system exception being passed back to TestStand, which is then reported to the user. The error is generic to its nature, thus it can have multiple causes. 

 

There is a KB article that describes how to debug and try find what is throwing the error. Maybe this can be of some help for you?

Debugging TestStand System Level Exception Error -17502 with Visual C++

 

Can you reproduce the same error with other CVI? Or is it just this one CVI script?

 

I found some forum posts that discusses the same error code. I suggest that you have a look at them unless you haven't already:

 

Cheers!

//Marcus Bengths

Re: Teststand 2016 32-bit version download

Trace settings memory leak

$
0
0

We have noticed something in TestStand 4.1 (yes, I know how old that is; some systems live longer than others Smiley Happy).

We always switch off tracing in the Station options for performance reasons.

In the Run Options of SequenceCall steps is a "Sequence Call Trace Setting" and as far as I  understand the documentation its only purpose is to disable tracing for that particular call if it is generally enabled.

Now we noticed when this is on "Use current trace settings" the sequence calls seem to leak memory. The amount is apparently something like 80 kByte/call, but this is hard to say as it may depend on the complexity of the sequences called. Also, this setting seems to be inherited, i.e., if we set it like this on a high level in our sequence hierarchy, the execution leaks memory rather fast.

Is this a known problem?

Regards, Peter

Re: Using LabVIEW to check if postBatch.seq within Batch Process Model has finished executing?

Sending Strings from PreBatch to PreUUT?

$
0
0

Hello everyone,

 

I am currently improving our test reports and I am working on adding the feature for users to add test notes before the execution of a test.

I have added this feature into the PreBatch subsequence because we use this to call a VI that we use to get the serial numbers.

 

Because I am adding the test notes to the UUT report header I have overriden the PreUUT Process Model callback to add the additional data and to set the include flag.

 

I have an issue however where the Test Notes string information doesn't seem to be getting copied and is instead showing up as  ' " ' .

Within the code module that we use to get the serial numbers and the test notes I output the String into a file global that I then include into my report under the Test Notes header.

 

Any ideas on why the string isn't showing and I only get this ' " ' ?

Re: Drivers in Testand are missing windows API dlls under windows 10

$
0
0

Hello,

 

I have the same problem encountered by Olga and may have a  solution : in fact you have to visualize the error message raised by Teststand entirely, because it seems the DLL really needed by Teststand appear at the end of the message. It occurs when you call a DLL that have other dependencies that Teststand is not able to find. I don't know why so many windows DLL appear not found but it is not relevant.

 

Once you have identified the relevant missing DLL, you have to find it and put it the same directory that the main DLL you are calling in Teststand. In my case it solved the problem.

 

Good luck

Re: ProcessHandle in 64-Bit TestStand

$
0
0

It really depends on what you are trying to do with it? Are you trying to pass it to a C API, or C#, or LabVIEW? Or what do you want to do with it.


Re: ProcessHandle in 64-Bit TestStand

$
0
0

I have an application with a C-api, so lets first focus on that ...

Re: Sending Strings from PreBatch to PreUUT?

$
0
0

I figured it out.

 

Both the PreBatch and the PreUUT can see the ModelData property.

With a lot of help from a colleague I implemented the following code.

 

PreBatch Code

Statement (Add TestNotes Property)

Expression = Parameters.ModelData.BatchUUT.AdditionalData.SetValString("TestNotes",1,Locals.TestNotes)

 

PreUUT Code

If (PropertyExists("Parameters.ModelData.BatchUUT.AddiitonalData.TestNotes"))

       Statement (Populate Header)

          Expression = Parameters.UUT.AdditionalData.SetValString("TestNotes",PropOption_InsertIfMissing,Parameters.ModelData.GetValString("BatchUUT.AdditionalData.TestNotes",PropOption_NoOptions))

 

Statement (Include within Report)

Expression = Parameters.UUT.AdditionalData.SetFlags("",0,PropFlags_IncludeInReport)

 

 

I hope this helps whoever else comes across this problem Smiley Happy

 

 

 

 

 

Re: UI Message Post from Labview VI running on another thread

$
0
0

I know this conversation is an older one but I want to give my five cents anyway...

 

Are you aware of the leaking objects in your code?

- The object coming out of "AsPropertyObject" (this one is easy)

- The object coming out of "GetPropertyObject" as well(!) just sinking it into the message will not release it. (This one is a beast)

Execute that code in a loop and watch your computer slowly slowing down for no obvious reason.

 

I'm not aware of any tools which will point the open references out for you (DesktopExecutionToolkit didn't - at least in the version I used at the time).

Searching this was not funny - finding it even more rewarding...

 

Edit: My case was a third party ActiveX as a source and sink for the object. I haven't tried with ActiveX-object and PostUIMessageEx but I saw the behavior with several calls so I'm sure it applies there as well.

TestStand can't start. Invalid StationGlobals file.

$
0
0

I ran a long sequence of about 4 hours and then the tests passed. When closing TestStand seq editor I received an error which I closed by mistake and now when I try to open TestStand I receive the error on attachment1.

 

Checking out "C:\ProgramData\National Instruments\TestStand 2017 (64-bit)\Cfg" I see that the file "StationGlobals.ini" is empty and there is no backup. Let's forget about all the parameters and settings that I had save in there. I copied the "StationGlobals.ini" from the 32-bit folder and TS starts normally, ofcourse without any stationGlobals. 

 

 

I change  a variable in the stations global once every 10-20 minutes. Reading the same variable is however is done every 1 minute from several different testsockets. 

 

I'd like to know what may have caused this? 

 

Window 10 64bit. TestStand 2017 64 bit

What is the purpose of "loop callbacks" in the sequential model single-pass entry point?

$
0
0

Why Single Pass entry point in SequentialModel.seq includes PreUUTLoop Callback and PostUUTLoop Callback? This entry point does not have a loop for sockets, so what is the point?

Re: What is the purpose of "loop callbacks" in the sequential model single-pass entry point?

$
0
0

I haven't been at NI long enough to know the exact historical reason, but my guess is just for parity with the Test UUTs entry point. Here's an example of where that might be useful:

  • I have some big LED/Indicator on my test station that i want to turn on whenever someone is running tests to express "somebody is using this test station"
    • I turn it on in PreUUT Loop and off in PostUUT Loop so it's not off periodically between each UUT.
  • I have some small LED/Indicator on the test fixture to let the operator know "this is the actual UUT that's being tested right now"
    • turn it on in PreUUT and off in PostUUT

Overriding both callbacks in a client file lets you get the same LED behavior with both entry points, without having to the modify the client file. My example probably isn't the best - i suppose ProcessSetup and Cleanup would work just as well for the big LED, but there are some other reasons those callbacks exist...

 

Hope that helps!

Trent

Exceptions to Custom Result Properties

$
0
0

Normally ResultList is collecting properties from Step.Result container, however according to this article there are some exceptions.

https://zone.ni.com/reference/en-XX/help/370052W-01/tsfundamentals/infotopics/custom_result_props_exceptions/

 

So how is this exception implemented? For instance, how to recreate this exception in my custom step type?

 

Also, I found that in the Computer Motherboard example, Video Test step (and all the other Numeric Limit Tests) has more exceptions.

Status, Error, ReportText, Common, and TS are as usual. Numeric and Units are included because they are inside od Step.Result. Limits and Comp are the mentioned exceptions. But what about RawLimits? It is not inside of Step.Result and it is not mentioned exception.

 

Is Status Expression somehow used to make an exception?

 

Why these exceptions exist anyways?


Re: What is the purpose of "loop callbacks" in the sequential model single-pass entry point?

$
0
0

You might be right. I was analyzing a single pass entry point without thinking that it is a part of the process model that has two possible entry points. But now it makes sense.

Thanks.

Re: ProcessHandle in 64-Bit TestStand

$
0
0

You can pass it as an argument to a function that takes a HANDLE by using the "Pointer/Handle" Category for the argument in the C/C++ adapter or the CVI adapter. Then you can call Win32 APIs that take a process handle, for example, WaitForSingleObject(), TerminateProcess(), and CloseHandle(). Don't forget to call CloseHandle() on it when you are done with it or you will be leaking the process handle.

 

Hope this helps,

-Doug

Re: Exceptions to Custom Result Properties

$
0
0

Ok I was wrong.

Everything is fine - more or less.

The RawLimits is a part of the Step.Result and all the properties with the flag "include in report" are in the ResultList. 

I don't know why Numeric, Units and RawLimits has this flag also. These properties are already in Step.Results so they should be included in the ResultList anyway. Am I right?

ResultList.png

Operator Verification

$
0
0

I have several steps in a test sequence that require operator visual verification that a test passed.  What is the best way to implement a user acknowledgement that an individual step passed before proceeding to the next step?

Re: Operator Verification

$
0
0

One way is to make a code module, say in LabVIEW, that is a dialog box and the operator chooses pass or fail.  This VI would return a boolean and is called in TestStand as a "Pass/Fail Test" with that boolean set to Step.Result.PassFail

 

Another way would be to make a "Message Popup" step.  In "Text and Buttons", make Button 1 say "Pass" and Button 2 say Fail.  Then, in the Post Expression, add "Step.Result.Status = (Step.Result.ButtonHit==1 ? "Passed" : "Failed")

 

Pulido Technologies LLC

Viewing all 24414 articles
Browse latest View live


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