LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

PID\Smith predictor simulation problem

Hi,

 

I want to implement a Smith predictor on a distillation column feed temperature. This system has 20 to 30 second time delay. The smith predictor uses an iternal model to give perfect performance for time delay systems. I first want to get some things working before i try it though. In the VI test.vi there is a PID-controller and a simulation of the temperature model, but I don't get the transient behavior what it should be theoretically, with that transfer function. The simulation and PID are not the ones standard in labview PID toolkit or a simulation loop for the model. I tried it first with standard labview blocks and I didn't get the correct transient behavior, so I tried it with a self written version, but I am seeing the same things. Normally they are correctly written (but sloppy Smiley Happy).

 

Also I included a picture of the correct transient behavior and the behavior I am getting, I don't know why I am not getting the correct behavior.I would be very gratefull if someone could get the correct transient behavior with a simulation loop and PID-block, not necessarily mine! The transferfunction is: 0.0003656/(0.0008248+0.06385*s+1*s²), I removed the time delay. PID-settings: K: 20, Ti (s):77, Td (s): 15. The blue line in PID.jpeg is the correct behavior, I am getting the white line.

 

Thanks in advance

 

KF_

Download All
0 Kudos
Message 1 of 13
(7,087 Views)
Also, the PID is not capped at 100% output, so it is not because the closed loop is tuned to fast, it can go from 0 to 1000%. I also forgot to include a small subVI.
Message Edited by KF_ on 02-28-2010 06:18 PM
0 Kudos
Message 2 of 13
(7,086 Views)
I forgot yet another subVI, dont know where my head is!
Message Edited by KF_ on 02-28-2010 08:31 PM
Download All
0 Kudos
Message 3 of 13
(7,064 Views)

Hello,

 

I am curious here. You said that you tried to use the "LabVIEW Control Design and Simulation" but the behavior is not standard. However, I noticed that you are just trying to implement a RK-2 solver and a PID with some specific features. Could you elaborate more about what is different from the "Control and Simulation Loop"? The Module also has an example of it:

 

C:\Program Files\National Instruments\LabVIEW 2009\examples\Control and Simulation\Case Studies\Process Control\Smith Predictor\Smith Predictor.vi

 

Have you exam this example?

Barp - Control, Simulation, RTT and HIL - National Instruments
0 Kudos
Message 4 of 13
(7,032 Views)

Hi Barp,

 

Thanks for your reply.

 

Nothing is different from the control and simulation loop. But I didn't get the correct transient behavior with the simulation loop, so I tried to write something myself (thinking maybe it has something to do with simulation loop), but I am seeing the same thing. I dont know why I don't get the blue line in the figure, that's basically my question. I have added a.vi with a control loop and also a picture of the output compared to to right output now with a simulation loop. The settling time is much higher and there is overshoot + transient behavior is not of first order which it should be.

 

I didn't see that example yet, I will check it out.

 

Thanks

 

KF_

Message Edited by KF_ on 03-01-2010 10:03 AM
Download All
0 Kudos
Message 5 of 13
(7,023 Views)
one more question. How to you get the "expected" result? I would like to know your assumptions in trying to get the response in the 'jpg'. In general, the results do not match because you did not take into account the sampling time (the controller has to be discretized) and/or you do not take into account the nonlinearities as the saturation of PID.
Barp - Control, Simulation, RTT and HIL - National Instruments