LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

PID academic is wrong?????

Hi again,
I am using the PID academic of the Control Design Toolkit, in the help it is written a formula with Td in the numerator and denominator, but the result that this block calculates is without Td in the denominator. What is wrong here? The help file or the calculation made by the Block?
 
Thanks
0 Kudos
Message 1 of 6
(3,796 Views)

Post the vi if you want to get any help. Otherwise your question is just chinese for us !

 

Chilly Charly    (aka CC)
0 Kudos
Message 2 of 6
(3,774 Views)
Hi Dak,

I am the technical writer for the Control Design Toolkit.  I forwarded your question to the developers, and we're investigating the issue.  It appears the equation in the manual is wrong.  If this is the case, I'll correct the equation in the next version of the toolkit manual.  I'll update this thread with more information when I have it.

Let me know if you have any more questions.

Hope this helps!

-Ryan Pollack
Technical Writer
LabVIEW Control Design & Simulation
http://lvtechspeak.blogspot.com
0 Kudos
Message 3 of 6
(3,720 Views)

Hi Dyan

There is one more thing i observed, this is in PID.vi supplied with Real time i believe. I wanted to nullify the effect due to integral gain, so i set a huge value for Ti, as larger the integral time Ti, smaller is the integral effect. But it did not react in the way i expected, when i checked the block diagram of integral component, i saw that the Ki was checked for infinity and integral gain was made 0, and not Ti which should be the case.

Can you give me some input on this? is this purposely done or a mistake?

Thanx

Arun

0 Kudos
Message 4 of 6
(3,704 Views)
Dak,
The VI and the documentation being different isn't good.  As far as saying which one is correct, depends on what you want to achieve.  The implementation in both the documentation and the VI could be correct.  The implementation described in the documentation allows you to set alpha and then have the cut-off frequency of the derivative action depend on the derivative parameter you choose.  This can be convenient.  However the implementation of the VI lets you set a fixed cut-off frequency that does not depend on the derivative coefficient.  This is good if you have noise of a known frequency that you want to eliminate.  The misleading part is that the input to the VI is called Alpha.  A better name might be Derivate Filter Time Constant.

Luckily it is easy to convert between the two implementations.  Specifically to get the behaviour described in the help, multiply Td (or Kd depending on the type of PID) by your desired Alpha and use that as the input to the VI.  I have attached a snippet of code to show this (CD_PID.vi).

Arun,
If you make Ti arbitrarily large you will see the effect of the integral action become smaller.  But there will always be some intergral action present.  For this reason a Ti of 0 is special and means no integral action.  What happens in the VI is that Ki is calculated from Ki = Kc/Ti.  If Ti is 0 then Ki is Inf which then triggers the PID Integral Action.vi to ignore the integral action part.  So set Ti to 0 and you will see no intergral action.

Carl L
National Instruments
0 Kudos
Message 5 of 6
(3,656 Views)
I forgot to attach the VI.  It is saved in LV 7.1.

Carl L
0 Kudos
Message 6 of 6
(3,630 Views)