(VID-P3-0043) Part 10 of 11 - PID Tuning. Productivity3000 - Be More Productive.
One of the critical areas when using a PID Loop Controller is getting it Tuned just right by adjusting the various terms for Proportional, Integral and Derivative. And because in most cases we need to have our system ‘live’ during Tuning, we need to be concerned with Safety. SAFETY! OK, during operation and tuning of any type of process control, it is very important to follow all safety guidelines and procedures. There can be many different conditions that will affect safety, so it is up to the end user to totally understand their application and all potential hazards that can take place. Tuning a PID Loop while connected to a process can cause unexpected results. So as a safety starting point, make sure all personnel are clear of the process area, and if possible, have the process operating in manual mode and manually adjust the Process Output value to produce as much of a steady state as possible. During the Loop tuning procedure, always be near the Emergency Stop push button or switch that controls power to the Loop Actuator in case a shutdown is necessary. Once I have all of the equipment in place, wired, and checked out, I can then start the process. I first apply power to the equipment and press the Power On push button. Using the C-more Touch Panel’s Parameter Screen, I start with a value of ‘10’ for the Proportional gain, a value of ’65,535’ for the Integral time reset, which essentially turns it off, and zero for Derivative rate , which takes it out of the equation. I now switch back to the PID Control Screen, and enter a Volume of 1.50 Gallons. I press both the PID Enable and Auto Mode Push Buttons so these bits are ‘On’. The Diaphragm Pump should start to run at maximum output filling the Process Tank from the Reservoir Tank. The purpose at this point is to get enough water so that the level is above the bottom of the Process Tank’s siphon tube. One and a half gallons should do the trick. Once I have the application up and running, I can use the ‘PID Tuning’ feature that is built into the Productivity 3000’s programming software to both monitor the PID loop, and also tune the loop either manually or automatically. I next click on the ‘PID Tuning’ feature located under the Monitor & Debug folder in the Application Tools panel to initiate this feature. The PID Tuning window will show charts for all the variables and allow changing settings for manual tuning, and also automatically tuning the PID loop. Next I will change the Volume to 3.00 gallons while monitoring the results. As can be seen with the PID Tuning window, the volume has trouble reaching the Set Point, mainly because a Proportional gain of ‘10’, along with no Integral reset time, the ‘65,535’ I entered earlier, doesn’t produce enough Process Output, or as I like to call it, ‘umph’ for our particular application. The Volume barely reaches 2.00 gallons. Next I disable the PID Loop, crack open the Ball Valve to allow the Process Tank to start draining, which lowers the tank’s volume. I change the Integral reset time value to ‘1’, which allows for a faster correction of the accumulation of ‘past’ errors, as we learned earlier in this tutorial, but leave the Proportional gain at ‘10’. As now seen with the PID Tuning window, the Diaphragm Pump is driven at full output, bringing the volume up to our Set Point value with some overshoot. After oscillating around the Set Point for a period of time, the volume settles down, but the time it takes to do so is very slow. The next step will be to obtain a faster response by increasing the Proportional gain in steps, enter a new Set Point value, monitor the response using the PID Tuning window, and make additional adjustments to the Integral reset time value to reduce oscillations. After some trial and error in making changes to the Proportional gain and Integral reset time values, changing my Set Point, monitoring the response, and repeating these steps, I end up with a Proportional gain of ‘200’ and an Integral time reset value of ‘5’. This gave me the fastest response when Set Point changes were made with very little overshoot and minimum oscillations. Please note that because our application process is somewhat slow in responding, I did not require any Derivative rate time. In fact, in my application, adding any Derivative actually caused the PID Loop to become unstable. Now that I have my PID Loop manually tuned with an acceptable performance, let’s see how well the Productivity 3000’s built-in Auto Tune feature will work for us. To use the Auto Tune feature, I will switch the PID Loop Control to Manual Mode by pressing the PID Auto push button on the C-more Touch Screen so it is ‘Off’. I see the ‘Auto’ indicator on the PID Faceplate change to ‘Manual’. Next I use the PID Tuning window in the programming software to manually adjust the Process Output value to produce a steady state for my PID Loop. I keep the default for an Initial PV Bump of 5% and leave the PV Deadband at ‘0’. Again our process did not require a Derivative value, so I check the PI radio button, and not the PID button. Next I click on the Auto Tune ‘Start’ button in the PID Tuning window. The current Process Variable will be copied to the Set Point value, in our example this became a volume of 3.0036323 gallons. The Process Output will go to the upper limit (65,535) and drive the Diaphragm Pump full on to increase the volume in the tank at one gallon per minute. Once the Process Variable reaches the Initial PV Bump, in our case 5%, or approximately 3.15 gallons, the Process Output will go to the lower limit (0) and the pump stops. The Process Tank continues to drain through the slightly opened Ball Valve. Eventually the Process Variable falls below the Set Point and the Output is then driven to the Output upper limit, or in other words the Diaphragm Pump is full on again. When the Process Variable rises above the Set Point, the Output is driven to the Output lower limit again. The Output cycling pattern continues for three full cycles, and when completed, the Auto Tune routine calculates the new values for the Proportional and Integral terms and writes them into the appropriate Tagnames. In my case, my final Proportional gain value equals ‘193’ and my Integral reset time value equals ‘4’. These values are almost identical to the values that were determined by my earlier trial and error manual tuning effort. It looks like the Productivity 3000’s built-in Auto Tune did its job! Follow me to our last video in this series and I will demonstrate our PID Loop Control application example.
More from In Depth - Productivity3000 PID Loop Programming - 11 Part Series...