You are not registered yet. Please click here to register!


 
 
plc storereviewsdownloads
This board is for PLC Related Q&A ONLY. Please DON'T use it for advertising, etc.
 
Try our online PLC Simulator- FREE.  Click here now to try it.

New Here? Please read this important info!!!


Go Back   PLCS.net - Interactive Q & A > PLCS.net - Interactive Q & A > LIVE PLC Questions And Answers

Reply
 
Thread Tools Display Modes
Old June 20th, 2003, 02:20 PM   #1
Ron Beaufort
Lifetime Supporting Member
United States

Ron Beaufort is offline
 
Ron Beaufort's Avatar
 
Join Date: Jul 2002
Location: Charleston, SC
Posts: 5,698
lambda tuning – how is it calculated?

Recently I have been trying to learn more about the so-called “Lambda” or “setpoint” tuning method for PID control. I have a small heating system which I use for lab experiments with an Allen-Bradley PLC-5. The data shown below was generated by this system using the Dependent Gains (ISA standard) equation for PID.

Figure 1 shows the results of using RSTune’s recommended tuning values for “setpoint” tuning with a Lambda of 4 minutes. A test of the system is performed by making a step change to the setpoint (shown in blue) – changing it suddenly from 100 degrees to 300 degrees. After four Lambda periods (4 * 4 minutes = 16 minutes) the PV (Process Variable – shown in red) has stabilized “on target”. There is no tendency to overshoot the setpoint nor for the process to oscillate. The basic idea as I understand it: “Lambda” is actually a period of time which the programmer selects. Whenever a change in the PID setpoint occurs, the system should recover and be back “on target” again after four of these Lambda time periods have elapsed – with no overshoot and with no oscillation. Figure 1 shows that the PID settings recommended by RSTune satisfy these requirements.

[attachment]

Figure 2 shows a common test of the process which is performed under manual control to determine the system’s characteristics. The CV (Control Variable – shown in yellow) is first set to 10% and the system is allowed to stabilize. The resulting PV (Process Variable) is 117 degrees. Next the CV is stepped to 80% and the system is again allowed to stabilize. The resulting PV is now 375 degrees. A straight line (S) is drawn tangent to the PV curve at the point of maximum slope. Horizontal lines (X and Y) are drawn to extend the PV1 (starting temperature) and PV2 (final temperature) traces across the graph. Noted as distance “A”, the total rise in temperature (117 to 375) is 258 degrees. Calculating 63.2% of 258 gives 163 degrees which is noted as distance “B”. A horizontal line (P) is drawn to indicate where the temperature reached this percentage of its total rise. A vertical line (D) is drawn where line (S) intersects line (X). Another vertical line (T) is drawn from the point at which line (P) intersects the PV trace.

The distance DT (Deadtime) is measured between the point at which the CV step change occurred and the vertical line (D). A ratio is used to convert this distance to 0.69 minutes. The distance T1 (the system’s Time Constant) is measured between vertical lines (D) and (T). A ratio is used to convert this distance to 3.41 minutes. The system gain (G) is calculated by G=((PV2-PV1)/(CV2-CV1)). Thus G=3.69 degrees/%CV - or in other words, each change of 1% to the CV produces a change of 3.69 degrees in temperature.

Now for the big question. How can I make use of the information given in Figure 2 to manually calculate the tuning values shown in Figure 1? Or at least come up with values that are “close enough” to work. I know that manually calculating the values will help me understand the material far better than simply relying on RSTune to crank out the tuning values for me. I know that this manual calculation can be done – the procedure was explained to me several years ago. Since then I have lost my notes and forgotten nearly everything I once knew about how to solve this problem. I vaguely remember something along the lines of “set the integral equal to ...” and “multiply ... times ... to get the derivative setting” and “multiply ... times ... to find the setting for proportional”.

I have searched the Internet and consulted every book on loop tuning that I can put my hands on. I can find many references to “lambda tuning” but nothing which is specific enough to actually allow me to perform the calculations. I would sincerely appreciate any help which anyone can provide. Thank you.
Attached Images
File Type: jpg lambda.jpg (28.2 KB, 679 views)
__________________

2-B ?
Best regards, ----+----] [----+------------( )----
Ron | |
PLC Boot Camp - Retired | 2-B |
+----]/[----+

I once was lost, but now am found, was blind, but now I see.

  Reply With Quote
Old July 29th, 2003, 04:53 PM   #2
Ron Beaufort
Lifetime Supporting Member
United States

Ron Beaufort is offline
 
Ron Beaufort's Avatar
 
Join Date: Jul 2002
Location: Charleston, SC
Posts: 5,698
finally ...

Just closing the loop on this one - in case someone ever does a search on this site for “lambda tuning” in the future -

A response on another forum gave me a source for the information I needed:

Publication TIP-1101-02 “Tuning guide for basic control loops” covers the Lambda tuning method in enough detail to answer my needs. This is available from:

TAPPI Press

For US$30.00 they e-mailed me a 12 page .PDF file. I had to jump through a few mathematical hoops to get the values into Allen-Bradley format - but now at last I have the information in hand. It works fine on the processes I’ve tried it on so far.
__________________

2-B ?
Best regards, ----+----] [----+------------( )----
Ron | |
PLC Boot Camp - Retired | 2-B |
+----]/[----+

I once was lost, but now am found, was blind, but now I see.

  Reply With Quote
Old August 5th, 2003, 01:18 AM   #3
Peter Nachtwey
Member
St Kitts and Nevis

Peter Nachtwey is offline
 
Peter Nachtwey's Avatar
 
Join Date: Apr 2002
Location: No income tax, no capital gains tax. Freedom!
Posts: 8,272
Mental Gymnastics.

I had never heard of Lambda tuning until Ron started this thread. I also looked on the web, but could find only brief descriptions of what lambda tuning is. From what I was able to read, I deduced that lambda tuning is just another pole placement scheme that uses only real poles that should not cause overshoot. Ron was given some hints on the www.control.com site. I noticed that two of the solutions were not the same. It seems there are as many techniques of lambda tuning as there are PID. Ron paid $30 for what was probably yet a third solution. Seeing this I decided that I would derive my own formulas to calculate the PID Gain, integrator time constant (reset time) and differentiator time constant ( pre act).

One of the reasons that there may be so many different forms of lambda tuning is that one can make many assumptions. The assumptions made here are:

1. THERE ARE NO TEMPERATURE DEAD TIMES. Dead times exist only in non-linear motion systems that have friction or where material has a transport time between where it is controlled and where it is measured. I feel strongly about this. Most of the heavy weights on sci.engr.control think so too. I think temperature systems that talk in terms of dead times are flat out wrong. There are, however, time constants for the sensor. This results in a two time constant system.

2. I used Ron's system parameters for system gain and time constant, but replaced his dead time with a sensor time constant. I made an assumption here. Remember, temperature control systems have time constants not dead times.

3. The resulting transfer function has three poles. One pole for the plant time constant, one for the sensor time constant and one for the integrator. Note, most of the example formulas make some simplifying assumptions here. They just add the dead time to the system time constant to make a longer time constant so they have only two poles.

4. My PID gain is in %CV/degree of error and time constant are in minutes. A update time of .1 minutes ( 6 seconds ) is used. Not very quick.

The link.

The s domain part that calculates the PID gains and time constants is is commented pretty well. The z domain calculations are used for the discrete time domain calculations and are pretty involved. However, one should see the discrete time temperature response. Notice the little bit of overshoot. The response is the for the actual temperature response. Normally what people is is the measure temperature response. The difference is due to the time delay of the temperature sensor. The time delay of the temperature sensor makes the control more difficult. If there wasn't any temperature time constant then what Tom Jenkins has been saying would be true. Just use on off control. Actually, on off control ( sliding mode ) does work extremely well, but one must take into account the sensor and system time constants. Given that one knows how, YOU DON'T NEED TO MESS WITH NO STINKIN' PID for temperature control. JUST THINK. NO GAIN, NO TUNING SOFTWARE and much more robust control. I have waited for Tom to explain this. I can, but Tom brought it up first so he deserve first so I figure he deserves first shot at it.

Summation, ignorance is costly. Ron may have got a bargain at $30. The companies that make autotunig software make a lot of money because of the ignorance. I am not so sure they know what they are doing.

Now beware because you are about to enter the s domain and z domain.
Arm yourself with your college control books before entering.
Laplace transforms, simultaneous equations, and Bode plots OH MY!

Derivation and verification of lambda tuning formulas.

Comments?
  Reply With Quote
Old August 5th, 2003, 11:58 AM   #4
Ron Beaufort
Lifetime Supporting Member
United States

Ron Beaufort is offline
 
Ron Beaufort's Avatar
 
Join Date: Jul 2002
Location: Charleston, SC
Posts: 5,698
Greetings, Peter,

Right now I have very little time and I’m going to be offline until early next week ... but I did want to respond and thank you for taking an interest in my “search for the Lambda” problem. I’ll be going over everything which you posted with great interest. In the meantime, what follows is a slightly modified cut-and-paste version of a post that I had previously put on “another forum” to further explain my interest in lambda tuning. This might help some of our other readers understand what this thread is all about.

First of all, I am not an engineer and so I’m not really in the business of actually going out into the world and tuning PID control loops. I work for an Allen-Bradley distributor - and one of my job duties is fielding phone calls from our customers when they request technical help with the PLC systems that they have purchased. Once in awhile - just four or five times a year on average - the customer’s problem relates to PID control. These requests never seem to come from seasoned engineers - but always from some poor Joe who’s just trying to “get the darned thing working” - and often with the boss breathing down his neck. Usually we can solve the problem over the phone by just carefully going over the basic PID setup - timing issues, signal scaling, etc. But then occasionally we’re also forced to tackle loop tuning. Now there’s a scary thought ... we’re going to actually tune a PID loop over the phone.

Still, in spite of the obvious disadvantages of having to work “sight unseen” over the telephone lines, I’ve actually had pretty good luck in the past by falling back on the old tried-and-true Ziegler-Nichols tuning methods. Basically I just have the customer perform a step-change to the system under manual control - and then I have him email or fax a screen dump of the test results to me. I print the picture - draw the lines - make the calculations - all of which only takes about 3 or 4 minutes - and then I call the customer back with advice along the lines of: “Try setting Kc to 1.11; set Ti to 1.23; set Td to 0.05 ... then cross your fingers and try it out again.” I find it amazing how often this simple Fred Flintstone approach works. Sure the loop could probably use some fine tuning and tweaking - but at least the PLC is now controlling the process - and the customer has an “in the ball park” set of tuning values to get him out of hot water.

Now I have no doubt that Peter is going to debate this next point, but many (most?) engineers seem to consider a system response whose oscillations die out within about four cycles to be a highly workable tuning solution - at least for most “run of the mill” processes. And in those cases the Ziegler-Nichols method has usually satisfied my limited “in the ball park” requirements very well.

But - (just once or twice in the past) - I’ve been asked to provide a tuning solution that gives NO overshoot - or NO oscillation. And in those rare cases I’ve always been totally unable to come up with an “over the phone” solution to help the customer out of a jam.

And that’s where “Lambda tuning” comes into the picture. Its major purpose in life is to give us a system response which has NO overshoot - and NO oscillation.

So (as I originally suspected - and now know for certain) Figure 2 of the drawing in my original post contains all of the information necessary to allow a manual calculation of the tuning values for a lambda response. Well - all of the information except for the actual “... multiply this by that ...” formulas themselves. And now that I’ve obtained that particular information, I can make the calculations that my limited purposes require. So in addition to my “I just want to know” reasons for learning the Lambda tuning method - I now have “my ducks in a row” and I feel a lot more confident about the next time when I’ll need to perform another tuning miracle over the telephone lines.

And incidentally, I’ll agree that the $30 I spent for “the answer to my quest” was indeed a bargain. I’ll guarantee you that I’ve spent a lot more than $30 worth of time just searching the net looking for these formulas.

Again, Peter, thanks for your response. I’ll probably have more to add next week.
__________________

2-B ?
Best regards, ----+----] [----+------------( )----
Ron | |
PLC Boot Camp - Retired | 2-B |
+----]/[----+

I once was lost, but now am found, was blind, but now I see.

  Reply With Quote
Old August 5th, 2003, 12:45 PM   #5
Steve Bailey
Lifetime Supporting Member + Moderator
United States

Steve Bailey is offline
 
Steve Bailey's Avatar
 
Join Date: Apr 2002
Location: The boondocks of Western Massachusetts USA
Posts: 8,242
Totally off-topic

Occasionally, a question gets posted here along the lines of: "What PLC should I purchase"?

One of my standard responses to that question is: "Invite the local distributors of a couple of different brands of PLC to your office and see which one offers the best technical support of their products".

Sometimes this elicits a sarcastic response along the lines of: "I try to avoid distributors. They're nothing but margin sucking bottom feeders, and most of the time they know less about their products than I do".

Ron Beaufort is an example of the value a distributor adds to the products he sells. As a former applications specialist for a distributor myself, all I can say is "hats off to Ron Beaufort". IMHO, he exceeds all expectations, reasonable and otherwise, for distributor support.
  Reply With Quote
Reply
Jump to Live PLC Question and Answer Forum


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Topics
Thread Thread Starter Forum Replies Last Post
PID tuning software from Rockwell ckchew666 LIVE PLC Questions And Answers 10 November 4th, 2014 11:42 AM
PID tuning in FlexLogix System rlong69 LIVE PLC Questions And Answers 4 June 6th, 2004 02:15 AM
pid tuning ssullivan LIVE PLC Questions And Answers 1 May 30th, 2003 11:21 AM
Trying to find a website ganutenator LIVE PLC Questions And Answers 9 January 5th, 2003 04:06 PM
Tuning Method -- Damped Oscillation ganutenator LIVE PLC Questions And Answers 4 December 27th, 2002 03:04 PM


All times are GMT -4. The time now is 08:08 PM.


.