I have a very basic concept problem of PID closed loop. I have been reading a lot of materials of the PID controller but still confused.
I understand that the error between the measured and the desired will be processed through PID controller, but I dont understand how the output of the controller(sum of the three P/I/D components) adjust the plant right behand the controller. For example, a electric powered fan will below on some board, the wind force onto the board could be detected by voltage and the fan's speed of course could be adjusted by voltage. But the error of the set point and process variable will directly go to the fan in Labview without identifying any mechanisms on the plant(fan). I wonder if any one knows how this error is processed through the plant. And why we don't need to care about the transfer function of the plant.
Solved! Go to Solution.
Can you include a VI or picture to explain your question better?
" the error of the set point and process variable will directly go to the fan in Labview without identifying any mechanisms on the plant(fan)"
If you by this means that the set point and process variable is connected to a PID block, then yes, they are and no, they don't go directly to any fan. The PID process happens inside the PID block.
As to how PID works, i can recommend Wikipedia on the subject. PID_controller
Thanks for your reply Yamaeda!
Just to make myself more clear, in this youtube video(https://www.youtube.com/watch?v=YnFlpxKVMTQ), they used a PID control to adjust the fan. And here is the snapshot of the block diagram. I have two questions based on the block diagram:
1. Similar in my previous post, it looks like the output of "PID" directly goes to the "DAQ Assistant 2", which controls the voltage applied on the fan. But my question is why the transfer function of the fan is not placed there. Otherwise, how does the system know to increase/descrease the voltage if an error exists.
2. The output of the PID should be the accumulation of the error in funtions of Kp/Ki/Kd, but it is still format of a sum of errors. It does not make sense to me to have the "error" go to the fan. Shouldn't be a voltage or some controlled parameters go back to the fan?
You are ignoring the PID gains. Let's look just at the Proportional component, since it's the most simple. Consider the proportional gain to have units of [output units] / [process variable units]. That is, the proportional gain says how much response (what output value) is needed for a given error in the process variable. The math for proportional control is very simple: output = error * gain, where the error is the difference between the setpoint and the process variable. The bigger the error, the larger the output.
The integral and derivative terms improve this control. With proportional control, the output decreases as the error decreases, which means the process variable may never reach the setpoint. This is known as an offset. Integral control eliminates the offset. Derivative control can speed up the controller response in slow systems (for example, heaters that take a long time to warm up).
I understand that the output is equal to error*gain and no question so far about the units. A follow-up question would be: why this output (oftern termed as manipulated variable) of the controller can adjust the plant? the u(t) is just a sum of a lot of errors, even in the converted right unit, but how can this u(t) adjust the plant system? For example, you have two seperate different plant systems but with two same PID controllers with exactly same PID gains, when the errors of these two controllers are the same, the u(t) will also be same, but I don't think they will share the same control on the plant. I am thinking there should be a transfer function somewhere to identify the plant system, but there is none.
I have a lot of trouble understanding the basic concept of PID. My question is why the Manipulated Variable can adjust the plant?
I know the Manipulated Variable() is the output of the PID controller and also the input of the plant, but it looks this u(t) is just a math equation of errors. How can this error format variables adjust the plant? I am so confused..Please help if you had this trouble eariler when you started learning PID.
If you have a transfer function for your plant, you don't need PID, because the optimal control output can be determined directly from the transfer function! (Well, more specifically, often in this case you would use the transfer function for feed-forward control, which you would combine with PID to correct for minor variations between the transfer function model and reality.)
The PID output is not a sum of errors. It is a sum of control outputs - the proportional output, the integral output, and the derivative output. The gains adjust the controller for the specific system, and if they're not chosen correctly, the control will be terrible and potentially unstable.
In your theoretical example of two systems - yes, it's quite possible that for one moment the error, and therefore the output, will be the same. But if the systems are very different, then the next iteration of the control the errors will be different, so the next controller output value will be different, etc. And, if the systems are very different, they shouldn't have the same gains.