IPID FB Issue In CCW Micro800 - HELP

husky

Member
Join Date
Jun 2015
Location
Melbourne
Posts
20
Hi there,

I have a small heating system with a micro 830 PLC to assist with the learning process of automation and PLC's etc. The system is a small brewery where a volume of water must be heated to a setpoint and then held.
I have written a program in connected components workbench CCW using the standard IPID controller function block.
The problem I'm having is that when tuning the control loop, the controller output value (CV) is abnormally high and does not begin to decrease until PV=SP which causes significant overshoot. A PID controller should start reducing the CV as SP is approached however the CCW controller does not seem to. If I disconnect the feedback loop in the function block then the controller behaves more predictably as in the CV = gain x (PV-SP) however with the feedback disconnected only the gain value can be used which does not allow SP to be achieved(required Ti).
Looking through the documentation in CCW it seems that there is a minimum value of 0.0001 for the Ti variable which even when set to 0 seems to still load up 0.0001.
Has anyone had a similar issue using PID control in CCW?
Has anyone written their own PID controller for use in CCW that actually works and could share?

Cheers,
 
Thanks for the reply.
Yes I have also tried RA_PID as well as a few others such as RA_IPID_AUTOTUNE & RAPID_CmdSts however they all rely on the built in IPID controller.
Has anyone got a program that they have written successfully using a PID function block so I can see if I am doing anything different?
My initial thoughts are that there is an issue with the IPID controller however I cant find any reports of this on the web, could it be that no one using these small PLC's required PID control.
Cheers,
 
I have succesfully used the RA_PID a few times.
One on a fairly large coffee roaster program with a couple of cascade loops.

On Edit.....I see your notes in the thread start.
I dont remember having any integral windup issues. I am building a new electric smoker that will use a Micro820 with a PID.
I will play around and see what happens.
 
Last edited:
husky said:
...Has anyone got a program that they have written successfully using a PID function block so I can see if I am doing anything different?...

Did you check out the samples in the links I provided you in the other thread?

Regards,
George
 
Did you check out the samples in the links I provided you in the other thread?

Regards,
George

Hi George,

Yes I did thanks! I did not realise I could access the Rockwell knowledgebase. I had a look through the examples and they were very similar to how I had set mine up. I ended up sorting my issues. The problem was that the ipid controller automatically loads an I value of 0.0001 which is high integral action when Ti set it to zero expecting none. I had to set Ti to 1000 to remove all integral action to tune Pgain.

cheers
 
Hi Baldone...
Can you tell me as an example for me....what were the PID gains that yoyr autotuning gave you ?
i am programming a furnace for baking aircraft parts so this is a very slow process as my thermocouple is actually inserted in the part that is placed inside the furnace which is 8 feet by 8 feet by 8 ffet. So this is a very slow response beacuse air in furnace has to heat up before the part then heats up.
I am having a hard time autotuning this.
 
I have written a program in connected components workbench CCW using the standard IPID controller function block.
What is a IPID block?



The problem I'm having is that when tuning the control loop, the controller output value (CV) is abnormally high and does not begin to decrease until PV=SP which causes significant overshoot.
This is because the controller does not avoid integrator wind up.



A PID controller should start reducing the CV as SP is approached however the CCW controller does not seem to.
The proportional term will get smaller but not the integrator term. If the integrator is saturated there will be overshoot.



If I disconnect the feedback loop in the function block then the controller behaves more predictably as in the CV = gain x (PV-SP) however with the feedback disconnected only the gain value can be used which does not allow SP to be achieved(required Ti).
This makes no sense. If you disconnect the feedback then how is the PV known? Why do you write (PV-SP)? If it is a heating system then in should be SP-PV



Looking through the documentation in CCW it seems that there is a minimum value of 0.0001 for the Ti variable which even when set to 0 seems to still load up 0.0001.
An integrator time constant of 0.0001 is fast whether it be seconds or minutes.



Has anyone had a similar issue using PID control in CCW?
Has anyone written their own PID controller for use in CCW that actually works and could share?

Cheers,
No, but I think it is a good idea that you do so to learn.


The integrator time constant should be roughly equal to the time constant of the system you are trying to control.
 

Similar Topics

Long time listener, first time caller. I have a Micro850 PLC controlling the temperature in seven fermentation vessels at a local brewery. Each...
Replies
2
Views
2,596
Hi guys, I'm using AB Micro850 PLC. I need a PID function: the one available in the function library doesn't work at all (At least to my...
Replies
8
Views
3,093
Hey guys, I have no real experience with PLCs or PID control, but I was given a project that involves both and don't know anyone who can help me...
Replies
1
Views
8,781
I have created a project in TIA Portal v16 Upd6 with S7-1200 (6ES7214-1AG40-0XB0) and WinCC Unified (PC station). The communication between the...
Replies
4
Views
135
Hi folks, in the alarm manager of Rslogix 5000, the tag-based alarm has been created. But when I tried to change the condition, it was found the...
Replies
2
Views
138
Back
Top Bottom