Sunteți pe pagina 1din 6

Application Notes D-3 Exclusive Control

In Exclusive Control, the Speed Reference becomes 0, and the PID Output becomes the
entire Freq Command. Exclusive Control is used when A152 [PID Ref Sel] is set to
option 1, 2, 3 or 4. This configuration does not require a master reference, only a
desired set point, such as a flow rate for a pump.

Example

• In a pumping application,
o The PID Reference equals the Desired System Pressure set point.
• The Pressure Transducer signal provides PID Feedback to the drive.
o Fluctuations in actual system pressure,
o Due to changes in flow, result in a PID Error value.
• The drive output frequency,
o increases or decreases to vary motor-shaft speed,
o To correct for the PID Error value.
• The Desired System Pressure set point is maintained as valves in the system are
opened and closed causing changes in flow.
• When the PID Control Loop is disabled,
o The Commanded Speed is the Ramped Speed Reference.

1
First, stop and take a deep breathe.

Got it? OK.

Loop controls are not trivial in general and especially in the situation you are probably going to encounter.

Let's take this one step at a time.

1. All closed loop controls work roughly the


same way. Whatever you do, it needs to come up with
a SINGLE input value for each output.
a. You have a SP (set point),
2. There are several different methods to
b. CV (control variable, aka output), achieve the control aspect of things.

c. and a PV (process variable, aka To begin with, there is "open" vs. "closed",
input). also known as "feed forward" and "feed
back" loops.
The goal of the control loop is to adjust the
CV so that the SP equals the PV. In an open or feed forward loop, you simply
perform some math on the SP and feed the
Before we go any further then, we have just result to the CV.
ONE input controlling ONE output to try to
match ONE setpoint. The PV is ignored.

You have 12 or 16 inputs (it wasn't clear) These types of "loops" have much faster
controlling 4 outputs. response speeds than closed loop
controllers because closed loop controllers
You have to decide right away how to only adjust things based on the errors (after
combine those inputs. the fact).

For instance, if any of the thermocouples Often the output of both types is summed
are clearly out of range (way too high or too together before being sent to the actual
low) indicating a broken or shorted output to control the device.
thermocouple, then you will probably want
to ignore them. 3. The closed loop controller looks at the
difference between the PV and the SP (the
For the remainder, most commonly you will error signal) and adjusts the CV (output) to
be either taking the lowest, highest, or try to make the PV and SP match.
average value, or perhaps a median or
some other tricky formula of your own
design such as a weighted average.

2
It does not take changes to the set point process heating controllers where PID loops
into consideration in general, only the error don't tend to work so well.
signal.
4. Now more importantly, it is important that
Thus the reason that the open loop any of these controllers are operated either
controller deals with changes in set points by taking timing into consideration or else
so much better. run with consistent timing.

There are several types of controllers such What do I mean by that?


as IMC (internal model control), SMC
(sliding mode control), and the one you All of the closed loop controllers have gain
mentioned, PID (proportional, integral, settings that are in terms of time.
derivative control, plus variations which
turn various P/I/D terms off). They are programmed as if "time" is
consistent...that is, the controller gets run
Each has certain distinct advantages in say once every 100 ms or once every
certain applications. second.

For instance, PID loops work best with low If you put the controller code in your
process lags (if you change the CV, the PV continuous task and don't go through some
responds very quickly), linear responses and sort of gyration to fix the timing issue, your
consistent process gains (the same size controller will not run consistently.
change in CV results in the same change in
the PV every time), and non-integrating So the general rule is to always put the code
loops (the error value does not go into into a periodic task.
exponential runaway).
Start by setting up a periodic task
IMC controllers are much more tolerant of specifically for your control loops no matter
long process lags and process gain issues which PLC you are using.
but intolerant of process linearity issues and There are alternatives but this is the
integrating loops. simplest way that gives you consistent
results.
Sliding mode controllers are very tolerant of
pretty much all of the above except for 5. Ok, so far you should have code that is
integrating loops and can be a bit on the transforming your thermocouple inputs into
slow side to converge. a single PV.

The reason I'm mentioning these Now create the PID instruction itself, one
alternatives is because in general sliding for each output.
mode controllers tend to work very good as

3
First fill in the variable where you calculated The other manual modes are again for
your PV. interfacing to some sort of external
controller.
Ignore tieback (used for interfacing to
external discrete PID loop controllers such To set the loop into manual mode, set the
as Honeywell UDC's). .SWM bit.

Fill in the CV as the output variable for your To put it in automatic, clear this bit.
analog output.
Don't touch the .MO bit! I know what it
Ignore the master loop and inhold stuff. says...trust me, just don't touch it.

Enter 0's for any of the parameters that you When you are in software manual mode,
won't be using. use the ".SO" value to set the output.

6. You need to enter the set point into the In software manual mode, the PID
loop_structure.SP member to be able to controller will copy the value of .SO into the
adjust your set points. .CV (control value).

Also make sure to turn on While in this mode, the PID loop internal
a. .PVT (process variable tracking), values "track" the .SO value and don't go
b. .DOE (derivative of error), into "windup" (runaway).
c. and clear .PE (use independent gain
equation) While in automatic mode, the .SO value is
d. and .NDF (turn on derivative changed by the PID controller to reflect the
smoothing). actual current .CV.

If you don't know what these mean, use my When you go back to software manual
suggestions. mode, then it again releases control.

You can always experiment later. This provides for smooth transitions
between auto and manual mode (so-called
7. Now manual/auto control is another area "bumpless" transfers).
that is a bit strange.
8. Your 3 gains (P, I, D) are in the .KP, .KI, and
There are multiple manual modes. .KD variables.

The one I recommend is "software manual". Now setting these things can be done
extremely scientifically but almost everyone
does a seat-of-the-pants method which I'll

4
explain, mostly because Zigler-Nichols has a. Set the set point (.SP) close to where
never been tremendously successful for me. the .PV (process variable) is actually
at.
Now you need to make yourself a trend
chart. b. Initially set .KI equal to 10% of the
.KP value.
On this chart you want to see the 3 key
variables (CV, SP, and PV). c. Now put the loop in manual.

Once you got your trend chart running, also d. You should see the loop "pull in"
make sure you have the loop controls in (adjust the .CV value until SP=PV).
front of you so that you can control
everything in another window. e. Now change the SP and observe
how it responds again.
Now turn everything on and put the loop in
manual (.SWM) control with the .SO f. Carefully adjust KI by a factor of 10
(output) value set to something very low. and try to get it to pull in faster.

You may have to go back and tune it again g. If it starts oscillating, then back off.
later so I recommend that you actually build
a loop tuning screen in your operator h. Then once you got it close, switch
interface specifically for doing this. from multiplying/dividing by 10 to a
factor of 2.
Now make at least 2 or 3 step changes to
the .SO value and watch what happens. i. Continue tuning until whenever you
change the SP, you get a "25%
Wait until the .PV settles out and calculate overshoot" followed by the loop
the actual gain. pretty much levelling out after that.

In other words, if you adjust the .SO value j. We'll fix the overshoot in a minute.
by x%, what percentage does the .PV
increase by? 10. Finally, start with .KD at 10% of the value of
KI.
This ratio is your process gain and the value
of .KP should be exactly equal to that. Slowly increase it and notice how what KD
tends to do is to provide a very quick
So you just determined your first gain. correction to the .CV that helps the loop
"pull in" even faster and helps narrow some
9. For the others, it's a bit trickier. of the overshoots.

5
KD will help you whenever there is a I've never used this instruction yet though
disturbance in the system. so I can't really tell you much else about it.

It helps correct process disturbances 13. If you are having trouble getting the loops
whereas KI is all about pulling in the loop to stabilize, realize that you are probably
and PV is all about setting the initial gain fighting one of two things.
(guess).
Process heating applications usually are
11. Now start running product through there. notorious for long lags (the time it takes for
the PV to respond after you change the CV
This isn't a one-time affair. is very long), and they are notorious for
integrating loops (errors in the loop tend to
It will take some additional adjustments exponentially increase/decrease rather
(usually doubling or halving gains, followed than remaining at a fixed value).
by making much smaller moves after that)
because an "idle" heating system has a If this is the case you may find that you will
different system gain from a real one. have to set the KP low, the KI even lower,
and have a fairly high KD value.
12. If you want to try "auto tuners", my
recommendation is to use them with KD tends to help keep things stable while KI
caution. slowly corrects the errors.

Sometimes they work well and sometimes Your gains will be very low since both lag
not. and integrating properties are fighting
against making very fast changes.
Interestingly enough the above tuning
method even though it is "seat of the 14. Or you can instead use a sliding mode
pants" calculated EXACTLY controller.
THE SAME GAINS as the software product
from ControlSoft. These are often much better at controlling
process heating applications than PID.
Or if you have RS-Logix 5000 Professional,
there is a loop tuner available in there. And there's really only one parameter to
tune.
Or, instead of the PID instruction, switch to
the PIDE instruction. Search for "SMC" or "sliding mode
controller" on this forum for references on
You will have to put it in a function block how to do it.
diagram but it also has an autotuner built
right into the PLC firmware.

S-ar putea să vă placă și