RF Measurement Devices

cancel
Showing results for 
Search instead for 
Did you mean: 

NI 5660 Driver DLL Errors when using Teststand 2010 and LabVIEW Run-Time Engine 2010

Hi marcus

In attachment the screenshoot that you asked . i have added also the information about the memory status at the first run and after around 300 repetitions of the same sequence. and you can see that is increase at every run as also the execution time of the test.

 

i did not see the Update VI Calls in the tools menu i dont now why so i cannot test it

 

Thanks for support

 

MY

 

 

 

0 Kudos
Message 11 of 30
(3,361 Views)

Hi Marcus ,

I have some new information about the memory problem .

I have created a sequence file that execute only the  RF operation of the peak measure , tracking the memory occupation on each run  using as adapter  labview ( development system) and Runtime  option.

 

The results in the picture attached . You can see that there are a lot of I/O activity during the execution when the Runtime option is selected and the memory increase at every run comparing with the other case when i m using the labview development system as adapter option.

 

Another thing that i have note is that if you did not performe the open and close operation of the Ni 5600 board during the loop but only one time leve in the loop only the measurement session , this problem disappear .

 

An additional information on the system configuration that i can give to you is that the SO is windows XP

 

In attachment you can find a zip file with  the sequence file, the VI used to run the test and the two picture mentioned before.

 

If you can give me some information on how solve this problem   i would appreciate 🙂

 

Thanks for the support

 

 

MY 

0 Kudos
Message 12 of 30
(3,351 Views)

Hi MY,

 

I believe the open and close operations should be on the outside of the while loop. Mainly, this is to increase performance speeds but it may affect memory as well. This is also true of any configuration settings if they stay the same throughout your application.

 

If you run this application multiple times in just the LabVIEW development system environment, do you still see these memory spikes? In other words, is this inherent to your program in LabVIEW or is this caused by TestStand? This will help us narrow down where to look and how to troubleshoot.

Josh Y.
Applications Engineer
National Instruments
0 Kudos
Message 13 of 30
(3,333 Views)

Hi Josh

thanks for your reply

 

I didn't see these spikes when i run the same sequence using as adapter the labview development system ( as you can see in the zip folder in the image  MemoryTest_LVadapter) .

So i think there is some difference between this two selection in Teststand. I've note also that when is selected as adapter the LV runtime system in Teststand there is a thread ( Kernel32.dll) that is create and destroyed continuously but i don't know if this is normal.

 

I've tried to separate the VI in 3 single VI called Initialization +Measurement +Close but i did not able to pass tthe reference created in the initialization VI through the other .

Do you have any suggestion on this point ?

 

Thank you 

MY

 

 

 

0 Kudos
Message 14 of 30
(3,325 Views)

Hi MY,

 

If you don't see the spikes using the LabVIEW development system, do you see the spikes using the LabVIEW Run Time Engine? We're basically trying to narrow down where the issue lies. TestStand shouldn't change things based on whether you're using the development environment compared to the run time engine. However, if you do not see this issue at all outside of TestStand, then we know where to look.

 

Regarding splitting the initialization, measurement and close into three separate VIs, is there a particular reason you want to do this? Typically, if you want to split these steps up, you can use a state machine architecture or create subVIs. To create a subVI, you need to use the connector pane and (to a lesser degree) the icon. In your initialize subVI, you can have the initialize VI connected to an indicator for the instrument handle as the output. You can then use this output as the input for your measurement subVI.

 

Regards

Josh Y.
Applications Engineer
National Instruments
0 Kudos
Message 15 of 30
(3,317 Views)

Hi Josh

 

I know how to create subvi. 🙂 my problem is pass the reference in TS using Fileglobals or locals variables.

 I have insert the initialization and the close operation in PreUUTloop and PostUUTloop callback in TS and the measurement part in main .

But when i pass the indicator that exit from the initialize VI to a fileglobals , this cannot pass correctly to the measurement VI that did not work ( i cannot see any measure ) . The Fileglobals is created using the same typedef of the indicator that exit from the initialize VI -

 

I'm trying to make this separation to workaround the problem of the memory increasing. This because i note that if you perform only one time the open and close operation and loop only the measurement  leave the resource open the problem that i have described did not happens when i run the sequence using the Labview runtime engine

 

 

In attachment you can find a zip file with the three VI and and example of the sequence that im trying to use so you can better understand  the problem and tell me if something is wrong on how i pass the reference.

 

Thank you

 

MY

 

 

 

 

0 Kudos
Message 16 of 30
(3,314 Views)

Hi MY,

 

It looks like you aren't setting the output of your VI to your file globals in TestStand. The sequence you sent passes variables into your VI from the FileGlobals you have created.

 

You will notice below that the parameters highlighted in green are inputs and the red parameters are outputs.

 

PassingValues.png

 

You will need to store the output of your VI in your FileGlobals in order to then pass it to another VI.


Please let me know if this answers your question.

 

Warm Regards,

Daniel Dorroh
National Instruments
0 Kudos
Message 17 of 30
(3,303 Views)

Hi D-Cubed

As  you can see from picture below ( and also in the picture you have posted there are flag on the Default value) there are some default value setted

So is not necessary use globals value to pass some value.

Maybe you cannot see the correct value passed because as i can see on your posted picture the VI measurement is not linked in right way (e.g  picture not avaiable and red dot near the create VI icon )  .

The only thing that i have forgot to link is the reciever info out but is an output of the VI so is necessary for the close operation not for the Measurement operation

 

By the way even if i link this output to the file globals variable did not solve the problem 

 

Thanks for your answer but this did not solve my problem yet  unfortunatley  🙂

 

MY

 

Sequence Capture.JPG

0 Kudos
Message 18 of 30
(3,299 Views)

Hi MY,

 

The reason the VI did not display properly in the screenshot I sent is because the VI you attached was broken.  It contains subVIs which I did not have access to.  What have you installed on top of LabVIEW to run these VIs?

 

Does your sequence give you any errors when run?  Have you tried seeing what values are getting stored in the FileGlobals Type by setting break points between your sequences?  

 

I think maybe we are missing each other on this issue.  Would you mind stating clearly what is happening and what you would like to accomplish?  I think if we can better parameterize the problem, we will make more progress.

 

Warm Regards,

Daniel Dorroh
National Instruments
0 Kudos
Message 19 of 30
(3,290 Views)

Hi Daniel,

You can find additional information  about this problem in the previous messages that i have posted before

 I have send also an email to the support service  but no ticket was open yet  on the request

 

By the way the The setup of my application is

PXIe 1065

NI 5600+NI5620

Labview 2011

TS 2010Sp1

NIRFSA 2.4.5

Spectrum measurement toolkit 2.6.1

Windows Xp SP3

 

Yes i have tried to run the sequence  setting some breakpoint and i recieve an error when run the measurement VI  (initialize VI didn't give any error).

 

In attachment you can find the File globals value during the run and the error message in the measurement VI .

 

Just a note on the pics ,The file globals value for the correction factor array is filled with 500 elements ( i dont get a screenshoot for this but they are generated )

 

 

 Thanks for your support

 

Orlando. R

 

 

 

 

 

 

Download All
0 Kudos
Message 20 of 30
(3,283 Views)