Logix 5 PID : When to use derivative

KNeland

Member
Join Date
May 2010
Location
Boise, Idaho
Posts
87
In my very limited experience with control loop tuning, I found the use of derivative to be a hindrance, and dialed in quarter decay with Proportional gain and Integral gain only. This was tuning a very simple level/flow loop.
Currently I am trying to tune 2 PID functions controlling 2 different pumps(motors) that are in series along different points in a flowing process. The first pump PID is based on P.S.I setpoint, with the process variable measured at the front of the second pump, which has a setpoint based on an entered flow rate(G.P.M), which is measured by a Coriolis meter further down the line. In this case I am dealing with previously set up programming parameters, and the guy before me used some derivative on the metering (second) pump.....The process really oscillates up and down, and I was hoping to get some insight in understandable terms, of why to add derivative. Oh...and the proportional gain in that case is low (.01) and integral (.1) with the derivative at .05

Any advice?


thanks
 
the link below is about as simple as I know how to make it ...

http://www.plctalk.net/qanda/showthread.php?p=11874&postcount=9

and I'm certain that there will be some who will say that it's TOO simple ... but I offer it as a "starting point" for what it's worth ...

my best advice: if it's "legal" to do so, post your complete program file before you go much further ... most of the time when PID loops are hard to tune, it's because they're not configured right in the first place ... "timing/triggering" issues and "scaling" issues are the most common culprits ...

another good idea is a "Trend" graph of how the system is responding ... the more we know, the more we can help ...
 
In my very limited experience with control loop tuning, I found the use of derivative to be a hindrance, and dialed in quarter decay with Proportional gain and Integral gain only. This was tuning a very simple level/flow loop.
Currently I am trying to tune 2 PID functions controlling 2 different pumps(motors) that are in series along different points in a flowing process. The first pump PID is based on P.S.I setpoint, with the process variable measured at the front of the second pump, which has a setpoint based on an entered flow rate(G.P.M), which is measured by a Coriolis meter further down the line. In this case I am dealing with previously set up programming parameters, and the guy before me used some derivative on the metering (second) pump.....The process really oscillates up and down, and I was hoping to get some insight in understandable terms, of why to add derivative. Oh...and the proportional gain in that case is low (.01) and integral (.1) with the derivative at .05

Any advice?


thanks

I don't consider myself a PID Tuning Expert by any means, but one thing I have found tuning loops that interact, is not to have the PID Update Time the same. I usually have one loop considerably faster than the other. Which loop to make faster will depend on your application, and which Parameter is most important. Try using a Search Term on here like Cascade Loops and you will find some threads that have discussed this.

Ron Beaufort's articles on PID may help you with this.

http://www.ronbeaufort.com/sample_lessons.htm

Scroll down to the PID Section. It is based on Allen Bradley PIDs. While not specifically about tuning, understanding how the PID Parameters work is important if you are going to have any success tuning the PID.

Stu....
 
I see Ron beat me with a reply. My advice is to read his advice very carefully, and head it.

Stu.....
 
The technically correct and ideal answer is

Whenever your system is under damped or has more than one pole or one pole with and integrator.

However, with the PLC5 the answer is not to use derivative gain unless you really need to or are very good at filtering. The PLC5 suffers from two problems that make using the derivative gain hard to use. The sample time is not constant. It suffers from jitter due to the asynchronous nature of the PLC. The feed back resolution is usually 14 bits at best and may be 12 bits.
 
Again, I can pick it apart because..

Pretty good article from Control Engineering Magazine about derivative and when to use it.

http://www.controleng.com/index.php?id=483&cHash=081010&tx_ttnews%5Btt_news%5D=18861
They don't speak about what kind of systems they are tuning.

The article got the little bit of knowledge is dangerous. This is very true when you assume that all systems tune the same way. There is another thread where I posted linked to xls files that shows that there are many different types of systems and each requires it own tricks.

This mass on a spring system is an example of a system that requires a derivative gain and ZN will not work.
http://www.plctalk.net/qanda/showthread.php?p=362683

"Many, if not most, control applications can run perfectly well with just P and I control."
Wrong. SOPDT systems and under damped system should have a derivative gain.

"But let’s say the process in your case is a tank of liquid product that you’re trying to heat. If the process variable (temperature) goes above the setpoint, the product may be ruined or catch on fire. So, how do you get the process variable to move, but not overshoot the setpoint excessively? One answer is introducing a derivative factor."
Wrong again. If the system is modeled by a FOPDT the formulas for tuning are given on the www.controlguru.com site. These formulas will provide zero overshoot tuning.

"So if the main purpose is slowing the control effort of the other factors, what’s D good for? Fast acting loops, such as flow and pressure loops, don’t really need it."
What about controlling hydraulic pressure loops? If the system is under damped the derivative gain is needed.

The article completely glosses over those things that make using the derivative gain difficult, lack of resolution and sample jitter.
 
Peter, I think they maybe referring to process loop because they said not to use derivative on fast loops such as flow and pressure. Motion loops tends to be fast and is somewhat of a different animal. I've tuned a lot of process loops and the only time I ever have to use derivative are on temperature loops with long lag time.
 
That is my point!!!

Peter, I think they maybe referring to process loop because they said not to use derivative on fast loops such as flow and pressure.
You think they maybe...... The problem I see is that they make it very clear. What type of systems they are talking about. People read articles like this and apply it to hydraulic systems. We control oil flow and pressure all the time.

Motion loops tends to be fast and is somewhat of a different animal.
Yes and even position and velocity systems are different.

I've tuned a lot of process loops and the only time I ever have to use derivative are on temperature loops with long lag time.
I believe you but if you are only working in one industry with one kind of systems that is not a very broad view. SOPDT systems should have a derivative gain.

My issue with the article is:
1. It doesn't specify which systems need to use a derivative gain. I did above.
2. It did not mention the two important things that keep derivative gains from working well. I did above.
 
Thanks for the insights

There has been a plethora of clear and high quality data passed on this thread. I did study PID loops and loop tuning in school, both the hard way(equations and graph paper with colored pencils) and the easier way (simple single controllers). With all of this advice as well as Ron's amazing library of information, I have found what I was looking for.

Excellent again folks!

Thanks,

Kyle
 

Similar Topics

Hello all, I'm having issues with a PID and trying to tune it. I just do not understand why my CV goes to 105 with the settings I have. Config...
Replies
14
Views
1,587
Hello, I have a flow control PID that keeps locking up. It seems to control fine but after a while the output no longer moves. For instance...
Replies
4
Views
972
Hello all! First official post here... have been using the site for help but managed to find existing threads to help with all previous issues...
Replies
8
Views
1,212
Hi, Long time not in the forum, and not in the programming. I´m getting back. I was issued a conversion from RSLogix 500 to RSLogix 5000 (studio...
Replies
0
Views
1,301
So I have a PID loop on an 1756-L61 running V17 software just for background. Also the PID PV is a pressure transmitter and the CV is speed sent...
Replies
1
Views
909
Back
Top Bottom