05-26-2009 06:34 PM
I have made a sequence in TestStand 4.1.1 (with LabVieW) that contains a PID regulation VI that regulates a power to a certain temperature.
I was using Ziegler-Nichols method to come up with appropriate PID settings for the system when using one DUT and everything was just fine, until I started
to run with 2 DUT:s!
The timing was not the same and the regulation was not good. Instead of having the power being stable around 80W +/- 1W it was now 80W +/- 25W.
I tried to separate the PID vi by using a separate vi for each testsocket but it is still problems.
The PID is inside a while loop in TestStand and except the PID vi there are some more temperature readings and updates of graphs etc.
The total loop time in this while loop is around 2.8s so I think the time shouldn't be a problem. I am using a PC with an Intel Pentium 4 CPU 2.40 GHz and 2 GB RAM.
Anyone out there that have done this succesfully?
NI Software : TestStand version 4.1.1
OS : Windows XP
LabView : 8.6
Solved! Go to Solution.
05-26-2009 08:51 PM
05-27-2009 11:02 AM
Hi Dennis,
yes I've tried that but it didn't make it better.
I made both the first VI where I have a case selection dependent on which test socket I'm running reentrant and also the PID VI inside the case selections reentrant.
I think that the first VI with the case selection should not really matter if I had it reentrant but I have tested both ways.
Regards
Hans
06-10-2009 12:55 PM
After a tip from NI support I now know that the VI can still be running in series in TestStand.
What I had to do was not only make the VI:s reentrant but also set the preferred execution system to other 1 or other 2.
That made a big difference.
Thanks,
Hans
06-10-2009 02:41 PM - edited 06-10-2009 02:42 PM
For others who may have this problem, the cause is due to the way that TestStand calls VIs. More information is described in this KnowlegeBase:
Why Does My LabVIEW VI's Parallel Blocks Run Sequentially when Called from TestStand?