Rizwan Qadeer How to design perfect a P.I.D Control in PLC Program, What Must be consider i.e Kp,Ki,Kd,Sampling time etc
Florin Marinescu • 1. Start with sampling time. The rule of thumb is 5..10 times faster than the time constant of your process.
2. Increase Kp until your process variable start to oscillate, then pull back a little bit.
3. Increase Kd to reduce the overshoot
4. Increase Ki to reduce static errors
Good luck
Juozas Kimtys • To avoid overshoot you have to limit a "sum error". Also there will be useful to limit maximal allowable action value (may be in percent of maximal achievable). However, limiting of action value will prevent your actuator from damage, but not from overshoot.
Claude Flandro • Go to controlsoftinc.com and download a free copy of the PID Loop Tuning Pocket Guide.
Michel Ruel • I disagree with Mr Marinescu. The "clock" for you rprocess is the time constant if and only if you tune your loop to respond nicely to SP changes. If your goal is to reduce load changes, the "clock" is the dead time. The dead time is the time needed to observe a change in PV after a controller output change (in Auto or in Manual).
Sampling time should be ~5 to 10 times smaller than dead time.
PV filter time constant should be around one fifth of dead time.
Derivative time (if needed) should be around half the dead time.
The Integral time should be around 2 to 5 times the dead time.
The proportional gain will determine the loop response. Increasing the Kp will reduce the peak error after a load change, will reduce IAE (integral of Absolute Error) but could introduce overshoot and damped oscillations.
A good rule of thumb is to use as a starting point :
Kp~0.2 x Time constant/(Process gain x Dead Time)
All the values above will work with series or ideal (ISA) algo; with parallel algo, values need to be calculated differently.
Do not hesitate to ask for more precisions... Have fun!
See on our web site:
http://www.topcontrol.com/en/infos_news/technical_manual
http://www.topcontrol.com/en/infos_news/publications_
Michel Ruel • If you do it for learning purposes, fine... if not, use an algorithm already developped; it is available now with most PLCs, even samll ones.
Hervé de Foucault • Sometimes some physical considerations can help: for instance if you control the position of an hydraulic jack thanks to a servovalve's current there's no need of any Ki. The system to be controlled already behaves as an integrator.
Hervé de Foucault • Sometimes some physical considerations can help: for instance if you control the position of an hydraulic jack thanks to a servovalve's current there's no need of any Ki. The system to be controlled already behaves as an integrator.
Hervé de Foucault • Sometimes some physical considerations can help: for instance if you control the position of an hydraulic jack thanks to a servovalve's current there's no need of any Ki. The system to be controlled already behaves as an integrator.
Ray Joseph, PE • I just love control theory. Across the vast majority of applications, feedback in a control system is one of the most important considerations for reliable performance. One of the most detrimental properties of feedback is when it is delayed.
If we have a controller that is designed to track changes in say, a feed composition, which changes every hour but our analysis of the composition takes 6 hours to perform, we will have a real problem meeting our control goal. What would be worse is if our set-point signal was difficult to read and we weren't sure what the target is.
Trying to solve an unknown problem is always fun. We can define it to be anything we choose and purse that line as we wish. Freedom of target definition allows for wonderful creativity. Putting constraints on the problem space only defines the box we get to break out of - great creativity.
Learn the rules so you know how to break them properly.
Rizwan Qadeer • Dear All,
I have following settings for a temperature controller.
GAIN=12000
Integral=40
Derivative=0
I have to control the temperature to a s.p.The medium is steam.
It is working nice,but i want to know exactly that is it standard?
what you say?
Amit Lalyan • Gain, Integral Time & derivative values will always be unique for every Loop or application.
Rizwan Qadeer • ok yes it may be unique...but there must be a specific relation among all these parameters? for a PID control
Michele Tonon • For Michel Ruel: your considerations are true if the ratio of dead time and process constant time is bigger than one, or in other words where the dead time is prevalent.
For Mike Brown: what do you mean "standard block", and "home made"? I found a lot of bugs in Siemens S7 standard blocks library...are not they made by human beings? We are professionals...of course you have to know what are you developing. For instance PID temperature control auto-tuning provided with S7 library is based on the inflexion point of open loop step response (Ziegler-Nichols, 1940). Not bad, except that it is very sensitive to noise and second, is performed in open loop, hence without any control. I developed an auto-tuning function, based on moments method (Ray,1972) which is better performing and works for most of its time with the pid in closed loop.
For Rizwan Qadeer : there are plenty of rules to tune the pid parameters. I suggest to have a look at this book that collects a huge number of them: HANDBOOK OF PI AND PID CONTROLLER TUNING RULES (3RD EDITION) by O'DWYER AIDAN, IMPERIAL COLLEGE PRESS.
Ray Joseph, PE • Feedback
Rizwan, it sounds like you would like to assure yourself that your control loop is configured correctly based upon how other, similar loops are configured.
There are too many differences in the underlying business and technical aspects of each loop that any such comparison will bring no value as Amit pointed out. And from Mike's comments about 80% of the loops being configured erroneously, following any example is a high risk situation.
Loop tuning is not just a technological endeavor, fundamentally, it is a solution to a business opportunity. The first thing to consider when designing and thus tuning of any loop is to understand the business case. Identify the value influences this loop has on the business. This typically cascades to production goals, operational costs, process and equipment reliability. This requirement refinement chain should always be addressed in the light of safety. Safety may impact the initial business case.
Tuning parameters and the underlying process dynamics effect the loop behavior and thus the ability to achieve the business requirements. No two systems will be the same.
Communication is the key to successful loop design and tuning. Interview all the stakeholders. From your peers, your boss, production, operations, maintenance, reliability personnel, plant manager, business agents, and all the others that will be impacted by your choices. Identify the requirements. Identify the process. Understand the loop. Tune to match.
Ray Joseph, PE
832 586-5854
ray@aarden.us
Rizwan Qadeer • Thanks you all...But now from discussions it seems to me that if there is no standard/protocol to design a PID control loop.the most important in control and automation.???AM i right?
Claude Flandro • Here’s a standard approach stated simply:
1) Select a PID function from your PLC library.
2) The tuning parameters and scan depend on your specific process and the process dynamics. To properly tune a PD controller you need to determine the process response to your controller. Several suggestions were previously made.
3) Pay close attention to the PLC manufacturer’s recommendations to setup the PID controller. As stated previously, it’s easy to go wrong here.
Good luck.
Graham Jefferson • Rizwan, if you have a view to developing your own PID instruction in a PLC then I would suggest you take Mike Brown's advice and don't do it. However if you do or if you want to look at the vendors' PID instruction then it becomes clear that there is a standard of sorts. The reason is that the PID is a fairly simple algorithm however with only a few flavours. Whether it is Velocity or Positional or Series, Ideal or Parallel. Other than that it's the bells and whistles that really count, things like bumpless transfer, output scaling and clamping, feedforward etc. Let's return to the standard Vendor PID instructions and as Mike said an awful lot of them are configured incorrectly and that is particuarly so in the Allen Bradley PLC5, ControLogix and the Siemens S7. People often confuse incorrect configuration with bugs. When you configure them correctly they all work and for all intents and purposes they all work the same. The only true bug I've encountered is in the Allen Bradley PLC5 PID which is also in the ControLogix Ladder PID instruction and that is when a large error occurs with a high gain the output is clamped at max or min however the calculation is not clamped resulting in serious and deep saturation. The theory of sampling time can indeed be complex however in practical terms settingthe scan rate at 1 second will suffice for just about any industrial process. Remember that most DCS vendors have fixed scan rates (usually 1 second) and they all work fine so why get hung up on the theory. And lastly you mentioned that you have a temperature controller with a Gain of 12000. That clearly is not a sensible gain and suggests that you have a scaling issue between your input and output ranges. Quite simple every PID MUST have its input and output units normalised to be the same. For example if the output is 0 - 100% and the input (PV and SP) are 0 - 1000 then the input must be multiplied by 0.1 to normalise it. If this is not done then the units of Gain become meaningless. Most controllers manage it in their configuration by putting in the relevant ranges and it is taken care of however many controllers like the S7, Quantum and GE Fanuc do not so the user must do it
هذه مشاركة منقولة من منتدى أخر
http://www.topcontrol.com/en/infos_news/technical_manual
http://www.topcontrol.com/en/infos_news/publications_
http://www.controlsoftinc.com/