PID Loop Control / RSLogix

wwcoop

Member
Join Date
Jan 2005
Location
Winston-Salem, NC
Posts
4
I'm new to PLC's and am working on a practice program which includes a PID control for a steam valve used to control the temperature in a tank. I'm having trouble understanding the settings in RSLogix... Any suggestions for learning how to do this for the first time?

Thanks!
 
RSLogix5 ? ...
RSLogix500 ? ...
RSLogix5000 ? ...

it makes a BIG difference ...

next we'll need to know what analog input and output modules you'll be using ... or at least "simulating" ...

and welcome to the forum ...
 
The SLC 500 instruction set reference manual actually has quite a good explanation of the PID loop and its use in Chapter 10. I only have this manual in print, and its part number is PN 956500-02. I assume nowadays you can probably get it online.

If you've read this, and still have problems, please post the specifics.
 
Hi,

Just want to mention that a product from Rockwell called
RSTune works realy well for fast responding loops.

In some applications it can be a real hit and miss afair with PID loops, and can take quite a while to get things sorted.
 
PID

This is for RSLogix 5. As far the input
and output modules, I am just simulating
, so I will just be using
simulation logic to approximate the
what the real life behavior might be.

The PID loop is to control an adjustable
steam valve that can be opened 0-100% depending on how close the temperature of a batch tank is to the desired set point.

The process variable is the tank temp,
which should be kept at 180 deg F. The
control variable will correspond to
the percentage the steam valve will be
opened.

I am using Wonderware Intouch to model
my process and will neeed to make
a screen for the PID, so that I can
'tune the loop' and see a graph of the
results.

Thanks very much for your help!
 
ok ... now we’re getting somewhere ...

Greetings wwcoop,

with the PLC-5, there are two basic ways to set up the PID ...

(1) the old way (and there are still tons of these in use today) uses a 23-word integer-style control block (example: N7:100 through and including N7:122) ... with this type of PID, you will not be able to enter “floating point” numbers for any of the settings ... but that’s ok ...

(2) the new PD-type control block (only available with “enhanced” PLC-5 models) will require you to create a new data file (example: PD9:0) to contain the PID control structure ... this method allows “floating point” entries and more flexible settings ... we’ll eventually learn about this method too if you want to go that far ...

if you’re trying to make your experience as portable as possible, then I recommend that you start with the older integer-type control and we’ll go from there ...

I recommend that you “simulate” a 1771-IFE analog input module with a 4-20mA input ... you don’t need to actually program in the “simulated” module - but you must have a realistic address for the Process Variable (PV) ... I suggest N7:54 ...

you need to specify the minimum (4mA) temperature reading for your temperature transmitter ... for right now I’ll assume (gosh I hate that word) that you’ll be using 0 degrees F. ... this will correspond to a data reading of 0 at the PV ...

you also need to specify the maximum (20mA) temperature reading for your temperature transmitter ... for right now I’ll assume (I still hate that word) that you’ll be using 250 degrees F. ... this will correspond to a data reading of 4095 at the PV ......

I recommend that you “simulate” a 1771-OFE2 analog output module with a 4-20mA output ... you don’t need to actually program in the “simulated” module - but you must have a realistic address for the Control Output (CV) ... I suggest N7:75 ...

this setup means that a CV signal of 0 at N7:75 will generate an output of 4mA to the control valve in the field ... also ... a CV signal of 4095 at N7:75 will generate an output of 20mA to the control valve in the field ... for now we’ll assume (man that word is killing me) that 4mA will close the steam valve completely ... and that 20mA will open the valve completely ...

[attachment]

the yellow highlighted settings temporarily put the PID into the “Set Output Mode” for testing the input and output signals ... this is basically one type of “manual” control mode ... with the settings I’ve given, the CV at N7:75 should go to a steady value of 1024 (4095 times 25% equals 1024) ... then you should be able to increase and decrease the CV by changing the “Set Output Value” ... if your “simulator” is working correctly, the PV should start to increase and decrease as you manually open and close the valve ... specifically, the value at N7:54 should increase and decrease between 0 and 4095 ... and the “Scaled PV Value” on the PID setup screen should increase and decrease between 0 and 250 degrees ...

suggested plan of attack:

(1) let us know when you’ve got this much working ...
(2) post your current .RSP program file ...
(3) ask specific questions about specific entries that have you puzzled ... be sure to tell us what you’ve already tried ... and what results you expected ... and what results you saw ... and why those results have you puzzled ...

you can find the official description of the PID instruction as used in the PLC-5 in Chapter 14 of:

The PLC-5 Instruction Set Reference Manual

so ... are we having fun yet? ...

in your first post you said:
I'm having trouble understanding the settings in RSLogix...
now in the picture above you have almost all of the settings involved for one very popular method of setting up a PID ... so which of these settings are giving you the most trouble? ... we’re ready to help ... just tell us where it hurts ...

playpid1.jpg
 
Last edited:
Great

Ron,
Thanks very much for your detailed suggestions. You provided much more information than I had anticipated. I am in the midst of doing some unrelated VB, so I am going to have to come back to this a little bit later, but I will certainly let you know how it goes. The screen shot helped a lot as well as your description of the various settings. Please drop me an
e-mail to [email protected], so
that I can respond privately with any attachments, images etc. to show you more
of what I am working on. I'll follow up
after I have wrestled with it and I am
ready for PID 201. Again thanks very much
for taking the time to get me the detailed
info that I need.
 
sorry ... no e-mails ... we need to keep this on the open forum so that others can learn from what we cover ... that's what the forum is all about ...

we'll see you when you come back ... just dig up this same thread and post right onto the end of it ... that way we can keep everything in a nice orderly package ... if we do a good job of this, then people all around the world will still be reading it and learning from it for many years to come ...

Again thanks very much for taking the time to get me the detailed info that I need.

you're quite welcome ... I actually enjoy this sort of thing ...
 
Last edited:
Detail is Ron's middle name..

Wwcoop,

I and many others like yourself appreciate the detail Ron
puts in his responses. I have yet to come upon anyone
on any forum to give such detail. I can only guess as to how
much time he devotes to his responses. His classes are second
to none. The training coarse I took has helped me immensely
with my position.

Ron,

My hats off to you.. I and many others thank you!


Gary
 
Hmm training?

--His classes are second
to none. The training course
I took has helped me immensely
with my position.

Is there some kind of week long
class I can sign up for?
I can probably get my company to
foot the bill if there is a
training class I can attend for
a week located in the southeast.
I realize there are lots PLC
texts, but it would be nice to
get some instructor training to
get me kick-started.
 
So this is a Jacketed batch heater ? and where is the process liquor temperature measured ? Do you have a constant recirc running all the time when the process is heating ?
Dependant on the level of control you require +- 1C? , you may find that a PID control is not necessarily best suited to this application .
Before everybody jumps and says how so ? , just think about the dynamics of what is going on , the volume of the heater jacket itself , the SHC of the process fluid and the volume as well .
Remember that also the energy required to keep the batch a temperature is a tiny proportion of that required to do the actual heating , if precise control is necessary , then you may well find that it is more efficient to use simple on off control upto a proportion of the setpoint , then take over with PID to finish the job off and maintain temperature - the valve in this case would be very much smaller than required for the heating process

Completely off track but there you go !
 
hi ,
i just now finished a project on heater PID control using AB micrologix 1200 c series . actually we didn't have a PID controller for controlling heater . thus we programmed PLc to act as a controller .. actually we designed velocity form of digital PID controller . we got the actual temp frm the field , and got set point from panel view, and subtracted it to get En , and we used timers so as to get En-1 and En-2 and saving each in some adress using MOV. then then we programend Velocity equation using add, mul,div, sub instructions .. and thus we got the delCn value . we can calculate a del Cn value seprately (perfect) and get it frm pane view . thus comapring this given del Cn value and del Cn value which we get frm field . and if the value is greater or lesser thus on or offing the heater ..
this is what our concept was ..
please reply if u didn't understand or if u got any doubt ..

arun
 
Ron Beaufort - recommend textbooks ??

Ron Beaufort

I see where you are an instructor. IF you use a textbook I would like to know which one. If you can go so far what set of text books would you recommend to someone starting out in PLCs??

Currently I am taking class at North Seattle Community College and just getting into SLC 5 and the thermocouple / mV module (NT 4). Bit overwehelmed right now but that is the way of learning curves I guess.

The textbook we are using is Dunning -- Intro to Programmable Logic Controllers. he does well on the basics, but basically stops at thermocouples and other analog.

I appreciate the answers you place on the web site and try to keep track of them for future referance.

Thanks for help

Dan Bentler
 
PLC textbook?

Greetings Dan,

sorry to let you down ... but I’ve never been able to find a textbook that would work with the unusual (weird?) methods that I use to teach PLCs ... my classes are usually five days of hard-core nuts-and-bolts training intended for plant maintenance technicians ... the idea is to take a guy who might start out knowing absolutely nothing about a PLC and send him back to the plant the next Monday morning ready to go to work with all of the basic skills that he needs to handle the PLC end of his job ... and that includes everything from discrete (on/off) signals - all the way through analog signals – and interpreting ladder logic programs ...

all of the PLC textbooks that I’ve ever come across are targeted more toward classes which last for a full sixteen-week college semester ... so the truth is, even if I COULD find the “right” textbook, the students in my one-week “high-impact” courses certainly wouldn’t have enough time available to read it anyway ...

so to answer your question, the “textbook” that I use for my classes is a three-ring binder containing about 350 pages ... most of this is made up of material that I’ve developed myself over the years ... and a collection of “important pages” from various online manuals for processors, modules, software, etc. ... just the type of material that the students need for the hands-on lab exercises during my classes – and that they’ll require in order to survive once they get back on the job ...

but even though I personally can’t help you out with a PLC textbook recommendation, my distinguished colleague, Mr. Randy Ludington, might be able to provide some assistance along those lines ... I was able to take a quick tour of Randy’s lab last week while picking up the PLC hardware that he so graciously bestowed upon me ... he mentioned that the textbook he uses for his PLC classes was written by Frank Petruzella and is published by McGraw-Hill ... since I haven’t had a chance to look over a copy of it myself, maybe Randy will step in and continue the discussion from here ...

as for PLC textbooks in general, I’ve found (as you mentioned) that they all seem to “lose steam” as soon as they hit the transition from discrete to analog signals ... to be fair to the authors, one perfectly valid reason for this is that each PLC manufacturer has different ways of handling these more-advanced processes ... and even considering just one manufacturer, the analog procedures can vary widely from one platform to another (for example: the procedures for handling analog signals for the Allen-Bradley PLC-5 platform are quite different from the procedures required for the Allen-Bradley SLC-500 platform) ... and so writing a single “one-size-fits-all” textbook would be an extremely challenging (if not impossible) task ...

as a matter of fact, I actually have TWO slightly different “textbooks” ... one which I use for the five-day “PLC-5/RSLogix5” class ... and another which covers exactly the same type of material – but for the five-day class for the “SLC-500/RSLogix500” platform ...

I’m sorry that I couldn’t nail this “textbook” issue down for you ...

as for the 1746-NT4 module that you mentioned, as you might already know, you can find the user manual for it online here ...

the biggest problem that most people seem to have with one of these SLC “configurable” type modules is in getting the “big picture” ideas sorted out ... the thing to remember is that the configurable module is able to “help out” the SLC processor by doing some of the basic math operations “on-board” before the input signals are sent over to the input image tables ... this allows the module to handle different types of thermocouples (J, K, T, etc.), different temperature scales (Celsius or Fahrenheit, etc.), and other things along those lines ... the question is: “how do we (the programmers) tell the module how we want it to work?” ... the answer is: by putting the correct “code numbers” into the module’s configuration words ... and these “configuration words” will be located on the SLC’s OUTPUT data table ...

let’s take an example ... suppose that your 1746-NT4 input module is located in slot #3 of the SLC’s local chassis ... in that case the signal data (the thermocouple readings) from the four available input channels would be located in these four words: I:3.0, and I:3.1, and I:3.2, and I:3.3 ... there will also be four extra input words (I:3.4 through I:3.7) assigned for this module ... these will eventually contain “status information” about the individual channels ... we’ll ignore these for the rest of this discussion ... the number “3” which shows up in each address is used to denote the module’s slot number ...

so far this should be making pretty good sense ... specifically, we have an INPUT module ... and we have INPUT (“I”-type) words to handle the signal data coming in from the module ...

now let’s talk about the configuration words for the input module ... when you first add the 1746-NT4 module to your program’s IO Configuration list, in addition to the 8 words set up on the INPUT table, there will also be 8 words automatically set up on the OUTPUT table ... these will be O:3.0 through O:3.7 ... the last four words (O:3.4 through O:3.7) will be unused ... the first word (O:3.0) will be used for the configuration of the module’s first input channel ... the second word (O:3.1) will be used for the configuration of the module’s second input channel ... and so on for all four of the module’s channels ... the fact that we have OUTPUT words associated with an INPUT module sometimes confuses people the first time they run into this type of system ...

now all that we have to do is figure out exactly what “code values” to use for those four configuration words and we’re just about finished ... the best way to tackle that particular problem is to print out a copy of page B-4 from the module user manual (linked above) ... then mark up the chart by penciling in the desired set up information ... then finally go to the output table and manually enter the proper 1 or 0 pattern of bits for each configuration word ... then turn the system on and test it out ... if you’re lucky you should be home free ...
 
Hard to find a good one!

As Ron said, I use the Petruzella text from McGraw-Hill ISBN# 0078298520 and the companion lab manual by the same author ISBN#0073010103. With the lab manual you will get the LogixPro simulator software and that is invaluable for learning PLCs, especially AB. As for the Dunning text, I have a copy of it and did not find it comprehensive enough for my classes. The Petruzella text is a little short in the analog area as are most, but dose an acceptable job of introducing some of the basics. I believe you will find that the available commercial texts are all going to lack the specific module info you are seeking, and that is especially true of the "smart" ones. There are just to many these days and to many variations of those. To cover them all to any depth in a text would not be practical. If you are studying the NT4, your instructor should be providing you with extra handouts specific to that module. If not, you can go to the AB site and get the manual yourself as Ron pointed out.
You might also check http://catalogs.mhhe.com/mhhe/viewP...isbn=0078298520 for more information on obtaining the Petruzella text, or you can use the ISBN number and get the book from Amazon.com or other book retailer. Often they will sell these books at less cost than a campus bookstore will.
If you need more info from me, just ask, I will be glad to try and help you out. There are many here on this site that will be glad to help get you started out right.
👨🏻‍🏫
 

Similar Topics

Hello, I'm having issues with a PID control loop. I am working with 5000 software and Contrologix controller. The control loop has been in...
Replies
25
Views
4,589
Old Allen Bradley guy here: I used to have a SCL or SCP and then a PID tuner block to use. Here in the FANUC ladder world I have not been able to...
Replies
3
Views
1,832
Hello all, If I have a closed loop system/pid loop to control steam and have different setpoints to control the same loop. How should I go about...
Replies
6
Views
2,395
Hello all, I am having a weird issue with the output of my PID on a compact logix controller that will not let me input the variable into my...
Replies
3
Views
6,516
Dear all I would like to ask you for help in solving one algorithm, because I never worked with cascade PID. I have to realize heating valve...
Replies
12
Views
8,257
Back
Top Bottom