Hydraulic PID Controller

Introduction

The purpose of this lab was to learn how to create a digital controller for a hydraulic actuation system. First we modeled the system in Matlab as a closed loop position controller, similar to previous labs. By characterizing the system then modeling the components, we gained experience working with and understanding the safety procedures in hydraulic systems.

By modeling the system in Matlab, we could prove our system works on the computer before taking it to the real world and risk injuring people or equipment with high pressure hydraulic fluid or uncontrolled motion. As an added benefit, computer modeling also speeds up the process of tuning the control system.

Instrumentation

The following equipment was used: a computer, and the hydraulic positioning system, including the hydraulic cylinder (actuator), feedback potentiometer (sensor), actuation mass on a linear bearing, high-pressure hydraulic lines with a flow meter and pressure gauges as well as a bypass value, and a National Instruments DAQ (controller) which communicates with the computer.

Experimental setup

Procedure

We began by modeling the system in Simulink as a closed loop system, and used block diagram algebra to reduce the system to a single transfer function from which we then used to determine specific parameters after initial testing.

Using data collected about the system parameters, and after calibrating the linear potentiometer, we ran steady state tests at varying voltages to find the voltage to current gain of the servo amplifier and the current to flow gain of the servo valve. This allowed us to get kq using ka and the slope of the curve for the system for our model. Next, we ran closed loop step response tests while setting the measured potentiometer gain and offset. We used repeating sequence to generate a step and ramp input. The cases we plotted are as follows:

a) Overdamped: KI = 0, KD = 0, KP = 10.
b) Critically damped: KI = 0, KD = 0, KP = 20 (max with no overshoot)
c) Underdamped: KI = 0, KD = 0, KP = 41 (25% overshoot)
d) Critically stable: KI = 0, KD = 0, KP = 76 (maximum for critically stable)

Overdamped PID
Critically damped PID
Underdamped PID
Critically stable PID

Next, using EES we simultaneously solved for 4β/Vt and KCE. We calculated 12469, 0.001633. We modeled the system at the critically stable Kp value and its block diagram and plot are shown below. We attempted to emulate the system at 25% OS based on the values calculated.

Finally the real tuning began. We replaced K­P with a PID controller. The block diagram is shown in Attachment 4. We set KP = 30, KI = 500, and KD = 0. We changed KI until steady state error was eliminated from our ramp function. We verified that the steady-state error was eliminated by superimposing the data onto a plot, shown as figure 7 in Attachment 4. Then we proved the model worked by transferring this PID data onto the hydraulic positioner and superimposed the ideal vs. experimental response. The superimposed plot is shown below.

Experimental vs model step responses
Experimental vs model ramp responses

Conclusion

In conclusion, our plots above show that our tuned response is almost identical to the Hydraulic Positioner response. It is very difficult to tune out all the overshoot in the plot, but as the last image shows, we were able to model the system very accurately.