PID control with up/down controls only

cardosocea

Member
Join Date
Nov 2016
Location
Fields of corn
Posts
2,622
Hi guys,

I have a mixer to be upgraded where I'd like to implement some smarter control than it currently has.

The speed control is currently done with buttons for up and another one for down. These buttons are checked against the system interlocks and then go straight out to solenoids that move a washplate that lets more or less oil through the hydraulic motor.

I checked with our hydraulic guru and other than upgrading the hydraulic system (not possible due to budget) the solution isn't easy.

I could devise some logic that pulses the up or down output depending on where the speed is in relation to the setpoint, but was wondering if anyone has applied any PID or smart logic to control something similar to this.
 
I would stick with pulse logic. Sometimes PID's are not the best answer.

I have done similar controls on blower vanes, every one second, see if you are above, below or at setpoint (with a small deadband) then pulse the correct output for xx msec, I would start with something small. For tuning, you can adjust the time between evaluations, and the amount of pulse.
 
I did a system that controlled a motor speed using a Variator with Faster and Slower inputs. The system was originally designed to work with a VSD so already had a PID system working, I modified it so that the PID would instead control the Faster and Slower inputs. It functioned OK, not my finest work and I was happy when the machines were retired. To get it to operate with PID I needed to know how long it took to go from zero to full speed, then I could calculate how long to keep the signal on depending on the PID output. If the PID hadn't already been there I would have used a simpler system as described by Monsieur Moore.
 
If you prefer a PID Controller, many Uneversal Controllers have "Three Position Step Control" that you can use.

If you like an AB Logix5000 Controller you can implement a PID or a PIDE and utilize a POSP instruction block to drive the outputs
 
I don't like Ken's answer because when there is a change the steps will keep being made until the PV = SP but this can cause over shoot when too many steps are made before the pump can respond.

We need to know how fast can the steps be made and about what percent of control output is each step.

I would have a filter or ramp the set point so the set point ramps smoothly from one set point to another. This will avoid sudden changes that the pump can't respond to. This will avoid generating too many steps that may cause overshoot.

Another way is to use a PID but add or subtract steps based on how the output is changing. The problem with this method is that it is necessary to know how many steps corresponds to 50% output.
 
I don't like Ken's answer because when there is a change the steps will keep being made until the PV = SP but this can cause over shoot when too many steps are made before the pump can respond.
This is one of the reasons why I would like to take this control from the operators. It can be done, but I then need to account for all possibilities of taking the system above what we want.

We need to know how fast can the steps be made and about what percent of control output is each step.
The machine is still working with the old PLC5, I may try to get some measurements from the machine to get a feel for how it behaves.

Another way is to use a PID but add or subtract steps based on how the output is changing. The problem with this method is that it is necessary to know how many steps corresponds to 50% output.

I'll have a look at this way. I thought of something similar where, assuming the output is fairly linear between pulse and speed increase, I could calculate the time per pulse needed for 1 or 10 RPM increase and the controller would really only do minor adjustment around the setpoint.
 
When ever I am faced with a control were I need to very how aggressive I want to go up or down, I normally "Home roll" my own.

I often find this easier then tuning in a PID loop, PID's has a tendency to end up (at lest for me) as a compromise.

Not saying if you take the PID loop to its full potential you cold get the same result, I just find it simpler the other way around. :)
 

Similar Topics

In the HVAC field I have seen many controls technicians and integrators struggle for hours on end trying to get various PID loops tuned in for...
Replies
12
Views
6,936
I have S7 1512C controler for controlling 48 PID temperature loop, the output is PWM. Please I need the best, most efficient way to write the...
Replies
5
Views
214
Hi all, I'm having trouble solving a problem I've been working on for several months, and thought you might like a stab at it. The machine runs...
Replies
22
Views
843
How can I connect PID Output to a valve. In ladder logic program is there any logic do I want to add between valve and PID? PV=SP What will be the...
Replies
7
Views
384
I am setting up control for Hypochlorite dosing. The easy part is the dosing calculation for flow pacing but I would also like to setup trimming...
Replies
8
Views
890
Back
Top Bottom