PID tuning on SLC 5/05

Another Hail Mary

The pilot valve uses 3 - 15 psi of instrument air to control the larger valve. The larger (Control) Valve modulates the flow of oil

If there is a pilot valve downstream of the current-to-pressure transducer and upstream of the oil control valve, then it might be a pneumatic valve positioner (see image below; source here). A valve positioner's job is to ensure any friction or sticking (stiction) in the the final control element ([Valve Actuator] below) does not prevent its position from matching the 3-15PSI input signal, which signal is coming from the SLC PID and the I-to-P transducer.

However, if the linkages in the valve positioner are worn, then the positioner adds hysteresis (backlash) into the system. One possible, possible (and temporary) solution might exist if the valve postioner has a bypass lever. A valve positioner bypass would send the [Controller Pressure] directly to the [Actuator Output], taking the [Pilot Relay] and its worn positioning linkages out of the process. The I-to-P transducer's output pressure would then directly control the [Valve Actuator] position, which would only improve the situation if any stiction in the final Valve Actuator has less of an effect than any backlash in the Valve Positioner mechanism.

One problem with this is that OP said there is no feedback of the valve position, so maybe the pilot valve is not a valve positioner. Or it could be that OP means there is no available electronic feedback of the valve position to the SLC.

That's a lot of IFs ...
b2fef314d37dcbe317eaf7ef31a284ca620ca7a8.png
 
@drbitboy, Rube Goldberg would be proud.
If what you show is the case, there can be no hope for precision.

Our controllers have controlled valves that use air to move pistons that control the flow of steam to turbines. That is much simpler than what you have drawn. Anyway, I am sitting back eating pop corn watching this unfold after #77 posts.


There are much simpler ways to control pressure. A small electronically controlled valve would do.
 
@drbitboy, Rube Goldberg would be proud.


Yes, I am well aware. But the OP has the system they have, and there may be no budget for hardware. I hope the insanity of a backlash model, while simple to implement, will instead convince them to fix the hardware.

Also note, if the system does have a pneumatic valve positioner, that the bypass lever trick has worked at least twice during my career (not me, someone else did it) to both eliminate violent cycling of Very Large Valves (oil refinery furnace) and convince the plant to fix the positioner.
 
If there is a pilot valve downstream of the current-to-pressure transducer and upstream of the oil control valve, then it might be a pneumatic valve positioner (see image below; source here). A valve positioner's job is to ensure any friction or sticking (stiction) in the the final control element ([Valve Actuator] below) does not prevent its position from matching the 3-15PSI input signal, which signal is coming from the SLC PID and the I-to-P transducer.

However, if the linkages in the valve positioner are worn, then the positioner adds hysteresis (backlash) into the system. One possible, possible (and temporary) solution might exist if the valve postioner has a bypass lever. A valve positioner bypass would send the [Controller Pressure] directly to the [Actuator Output], taking the [Pilot Relay] and its worn positioning linkages out of the process. The I-to-P transducer's output pressure would then directly control the [Valve Actuator] position, which would only improve the situation if any stiction in the final Valve Actuator has less of an effect than any backlash in the Valve Positioner mechanism.

One problem with this is that OP said there is no feedback of the valve position, so maybe the pilot valve is not a valve positioner. Or it could be that OP means there is no available electronic feedback of the valve position to the SLC.

That's a lot of IFs ...
b2fef314d37dcbe317eaf7ef31a284ca620ca7a8.png

There's no interposing device. The Current/Pressure transducer modulates the proportional actuator directly. I tried to find more info on the valve, but nothing. It's a jamesbury actuator, series C12S II. Picture of label attached. I don't know enough about this valve to know if there's a potential problem with the rating of "Min supply pressure" being 20 (Psi?) in combination with the transducers 3 - 15 psi output. I don't think so, since we do get action on the valve with changes in the transducer. Your discussion of backlash got me looking into the valve itself.

PXL_20221125_155251394.jpg
 
Believe it or not, it can be a broken ring on the spring, even often these are as big as a suspension spring of a car they do break, had many of them, if the break is just one coil from either end then it can cause a similar symptom to backlash (often compressing & slipping past next ring), other problems are a perforated diaphram, that too can cause problems these springs are quite brittle, although you think 20 to 120 psi would not break the spring the constant movement of PID will. worth a look, but the age of that valve probably have problems finding a new spring.
 
Believe it or not, it can be a broken ring on the spring, even often these are as big as a suspension spring of a car they do break, had many of them, if the break is just one coil from either end then it can cause a similar symptom to backlash (often compressing & slipping past next ring), other problems are a perforated diaphram, that too can cause problems these springs are quite brittle, although you think 20 to 120 psi would not break the spring the constant movement of PID will. worth a look, but the age of that valve probably have problems finding a new spring.

I hadn't considered broken springs! I just timed cycling the valve, around 15s, plus or minus a half second or so to open fully, about 10s, plus or minus half a second to close fully. There's a bit of slowdown in the last 10% of the stroke in both directions, but otherwise no irregular movement of the valve indicator. Doing another pressure cycle today, will update with new trend (at 0.5second sampling!).
 
Another pressure cycle, this time with P=5.0, I=0.5, D=0.0 and update time is 1.00 seconds. Some interesting changes in the control output which do correspond to small changes in the tank (not the pressure vessel) level (where the pressure pump supplies pressure from). Overshoot is better, only about 7 to 10 psi above setpoint this time.

Pressure cycle 2022 11 25 - P5 I0.5 D0.jpg
 
It was just a thought, the first one we had, did not look at any trends (original Scada developer never included any), we replaced the valve & problem solved, stripped the old valve & found the spring broke, ordered some new springs & diaphrams, over the years had a few broken springs, some perforated diaphrams etc. Also had a pump that caused a similar fault, however, I was not involved in that one, they replaced the pump & the VFD, did not find which was the problem as the engineers dumped the VFD & sent the pump away for re-furbish due to slight leak on mechanical seal.
 
This is a capture from the same pressure cycle as above, so same settings. Seeing a bit of oscillation in the output and process variable, does this indicate an unstable PID?

Pressure cycle 2022 11 25 - P5 I0.5 D0 - output oscillation.jpg
 
Some interesting changes in the control output which do correspond to small changes in the tank (not the pressure vessel) level (where the pressure pump supplies pressure from).
The control output only changes due to the pressure changing in the the pressure vessel. Those pressure changes might be caused by changes in the feed tank upstream of the pump, but the PID controller knows nothing about that and can only react to changes in the measured pressure.

For example, just after 12:35, the pressure, which had been essentially constant at setpoint for half a dozen minutes, shows a small increase above setpoint for maybe a dozen seconds; perhaps that was caused by a change in the feed tank that raised the pump suction pressure.

Whatever the cause, the control output opened the valve to compensate for that change in pressure, and the pressure dropped almost immediately to a value just below setpoint, which canceled the brief control output increase and resulted in a steady decrease in the control output that lasted for a few minutes.

The important thing to note is that the pressure immediately stabilized again, i.e. stayed at a constant value, almost immediately after the control output stopped increasing, and stayed at a constant value even as the control outptut continued to decrease (1) well below the control output value where the pressure was previously steady, and (2) much farther below that previous control value output than the brief excursion above that previous value. If the controller output value represented the actual valve-open position, i.e. if the valve was actually closing as the control output value decreased, then the pressure would have started to increase again within seconds of when the control output value started to decrease.

In fact, immediately after 12:35:23, we see the pressure decreasing while the control output value is also decreasing.

One obviously incontrovertible conclusion that must be drawn from these data is that the control output value cannot be considered a reliable proxy for the actual control valve position.

We don't have enough information to definitively pinpoint the reason for the disconnect between the PLC control output and the actual valve position, but Occam's Razor points to backlash (hysteresis).

And as long as there is significant hysteresis in the valve positioning system, there is no way to eliminate the overshoot; the best that can be hoped for is to play around the edges by using trial and error to empirically tune the PID to an acceptable minimum magnitude of overshoot.

Anyway, to get back to the question posed in the original post of this thread, there is nothing wrong with the PID: the PID is functioning 100% correctly as it is designed to function; the PID is not the cause of the overshoot.

The cause of the overshoot is external to the PID and to the PLC, and is instead in the process itself.

If you have any doubt about this, try the following experiment:

  • With the system shut down and the pump not running, put the PID into Manual Mode, by assigning a value of 1 to .AM (Word 0, bit 01);
  • Assign the controller output value to ~45%
    • i.e. Assign a value of approximately 7373 to N9:5, the CV Output of the PID instruction.
  • Measure the physical position (not the PID controller output value!) of the physical valve mechanism (e.g. valve stem) with a micrometer or a ruler, or put some masking tape around the valve and mark the position with a Sharpie.
  • Manually decrease the controller output value by 5%, maybe even 10%;
    • i.e. decrease the value of N9:5 by 819 (5%) to 6554, or by 1638 (10%) to 5735
  • Measure again the physical position of the valve stem: it will not have changed from the previous measurement.
 
Here is the PID equation from the SLC Instruction Set manual: https://literature.rockwellautomation.com/idc/groups/literature/documents/rm/1747-rm001_-en-p.pdf#G13.1041550

Here is the same thing in a discrete form, equivalent to how the SLC 5/05 PID is behaving in your process at each PID loop update: https://literature.rockwellautomation.com/idc/groups/literature/documents/wp/logix-wp008_-en-p.pdf#page=1

PIDs are about time. At each loop update time N+1, the PID looks at BOTH its state stored from the previous update time N, AND its current process variable measurement PVN+1, and based on those inputs it updates its controller output CVN+1, along with its internal state for the next loop update time in the future. It takes no more than simple arithmetic, pencil and paper to apply those equations to a process with CV-to-valve hysteresis and predict the behavior seen in the latest sawtooth-trend image.

PID is a form of feedback loop. Application of the PID and its equation to control a process assumes that, when the PID changes its control output value CV, that something in the process changes. If there is hysteresis between the control output value CV and that something in the process that the CV is supposed to drive, then that assumption is false. That is what we are seeing here.
 
This is a capture from the same pressure cycle as above, so same settings. Seeing a bit of oscillation in the output and process variable, does this indicate an unstable PID?

1. Please tell me just one thing: do you read what is written for you?
2. Just list to yourself what you have done in the last couple of weeks that is helpful in solving your problem: examined a valve, examined any other components of your system, posted data on the forum that could help us give you a hint on solving your problem...
3. I asked about the scaled-up PV curve. Is it available?
 

Similar Topics

Hello, I'm having a lot of trouble tuning a PID loop on a SLC 5/05. Can someone tell me if I'm doing something wrong? Please see attachment to...
Replies
8
Views
3,815
Hi, I have a system (see attached illustration) that is PID controlled. The pump is used for the injection of chemical from the tank to the...
Replies
5
Views
4,556
Hello, I am using a AB SLC5/05 PLC & using the PID insrtuction for a single loop control. I have assigned N10:0 as the control block starting...
Replies
4
Views
4,943
Hello, I am attempting to tune a PID loop on a process. The process involves a valve with electronic actuator that has quite a high deadband...
Replies
10
Views
2,072
so i have 4 25gpm wells feeding a 1000gal tank (T-1), with an additional 15gpm from a decant tank for 3hrs every 12hrs. P1 and P2 both controlled...
Replies
154
Views
35,518
Back
Top Bottom