Overview & Types
Hydraulic actuators use pressurized fluid (typically oil) to generate extremely high forces and precise motion. Where pneumatics excels at speed, hydraulics dominates in raw power — from construction excavators lifting tonnes to aircraft flight controls requiring absolute reliability. The incompressibility of hydraulic fluid enables stiff, precise position control under heavy loads.
Types
- Single-Acting Cylinder: Hydraulic pressure extends; gravity or spring retracts. Common in jacks, log splitters, and dump trucks.
- Double-Acting Cylinder: Pressure drives both directions. Full force control on extend and retract. Standard in excavators, presses, and steering systems.
- Telescopic Cylinder: Nested stages extend sequentially, providing long stroke in a compact retracted length. Used in dump truck beds and cranes.
- Hydraulic Motor: Converts fluid pressure to continuous rotation. Types: gear, vane, axial piston. Used in winches, conveyors, and wheel drives.
- Hydraulic Rotary Actuator: Limited-angle rotation (typically 90–360°). Used in valve actuation and heavy equipment swing drives.
- Servo/Proportional Cylinder: Equipped with servo valves and LVDT feedback for precise position, velocity, and force control. Used in test machines and flight simulators.
Working Principle
Pascal’s Law
Pressure applied to a confined fluid is transmitted equally in all directions throughout the fluid. This principle enables force multiplication: a small pump piston creates high pressure that acts on a large cylinder piston, producing enormous force.
- Hydraulic Pump: Driven by electric motor or engine, pressurizes oil (70–350 bar typical, up to 700 bar for specialized systems).
- Directional Valve: Routes pressurized oil to the desired cylinder port while connecting the opposite port to the tank (reservoir).
- Cylinder Extension: Oil enters the bore side, pushing the piston. Return oil flows back to tank.
- Cylinder Retraction: Valve switches, oil enters the rod side, piston retracts.
Force & Speed Calculations
Force: F = P × A
At 200 bar with 80 mm bore: A = π×0.04² = 0.005027 m² → F = 20,000,000 × 0.005027 = 100,530 N ≈ 100.5 kN
Speed: v = Q / A
At 20 L/min flow with 80 mm bore: v = 0.000333 / 0.005027 = 0.0663 m/s ≈ 66 mm/s
Power: P = pressure × flow = 200×10⁵ × 0.000333 = 6,660 W ≈ 9 HP
Hydraulic Specifications
| Parameter | Compact Cylinder | Standard Industrial | Heavy Duty / Mobile |
|---|---|---|---|
| Bore Diameter | 16–50 mm | 40–200 mm | 150–500+ mm |
| Stroke | 10–200 mm | 50–3,000 mm | Up to 10+ m |
| Operating Pressure | 70–210 bar | 160–350 bar | 200–700 bar |
| Force (@ 200 bar) | 4–39 kN | 25–628 kN | 354–3,927 kN |
| Speed | 0.1–100 mm/s | 5–500 mm/s | 5–300 mm/s |
| Working Fluid | Mineral oil (ISO VG 32–68), biodegradable ester, water-glycol, phosphate ester | ||
| Temperature Range | −20°C to +80°C (standard seals), up to 120°C with Viton | ||
| Filtration | 10–25 µm (standard), 3–5 µm (servo systems) | ||
Control Hardware
Directional Control Valves
- 4/3-Way Spool Valve: Standard for double-acting cylinders. Center position options: closed center (holds position), open center (free flow to tank), tandem center.
- Proportional Valve: Electrically-modulated spool position controls both direction and flow rate. Driven by PWM or analog signal. Enables smooth speed control.
- Servo Valve: Ultra-precise 2-stage valve using torque motor and feedback. Bandwidth up to 100+ Hz. Used in test machines, flight simulators, and precision manufacturing.
Solenoid Valve Driver
Industrial hydraulic solenoid valves use 12 V or 24 V DC coils, drawing 0.5–3 A. Drive via relay or high-current MOSFET. PWM dithering (50–200 Hz, 10–30% amplitude) prevents spool stiction and improves proportional valve response.
Pressure & Flow Sensors
- Pressure Transducer: 4–20 mA or 0–10 V output. Monitor system pressure for safety cutoffs and closed-loop control.
- Flow Meter: Turbine or gear-type measures flow rate for speed feedback.
- LVDT / Magnetostrictive Sensor: High-precision position feedback for servo control. Resolution to 1 µm.
Control Methods
On/Off Switching
Basic directional valve switching. Cylinder extends or retracts at full speed. Simple and robust for position-to-position movement with hard stops.
Proportional Speed Control
Proportional valve modulates flow rate based on an analog/PWM signal. Combined with pressure-compensated flow control, this gives smooth, controlled motion.
Closed-Loop Servo Control
Full servo system: servo valve + position sensor (LVDT) + PID controller. Achieves positioning accuracy of ±0.01 mm at forces exceeding 100 kN. Essential for:
- Material testing machines (tension, compression, fatigue)
- Flight simulators (Stewart platform with 6 DOF)
- Metal forming presses (ram position control)
Electrohydraulic Motion Control
Modern systems use PLCs or embedded controllers running position, velocity, and force control loops at 1–10 kHz update rates. CAN bus or EtherCAT connects sensors and valves.
Code Example — Arduino & ESP32
Arduino: Basic Hydraulic Valve Control
// Control a 4/3-way hydraulic directional valve
// Wiring: Solenoid A (extend) → Relay 1 (D4)
// Solenoid B (retract) → Relay 2 (D5)
// Pressure sensor (4-20mA → 1-5V via 250Ω) → A0
const int SOL_EXTEND = 4;
const int SOL_RETRACT = 5;
const int PRESSURE_PIN = A0;
const float MAX_PRESSURE = 200.0; // bar (sensor range)
const float RELIEF_PRESSURE = 180.0; // safety cutoff
void setup() {
Serial.begin(9600);
pinMode(SOL_EXTEND, OUTPUT);
pinMode(SOL_RETRACT, OUTPUT);
// Start with valves centered (both off)
stopMotion();
Serial.println("Hydraulic Controller Ready");
Serial.println("Commands: E=extend, R=retract, S=stop");
}
float readPressure() {
int raw = analogRead(PRESSURE_PIN);
float voltage = (raw / 1023.0) * 5.0;
// 1V = 0 bar, 5V = 200 bar (4-20mA through 250Ω)
return ((voltage - 1.0) / 4.0) * MAX_PRESSURE;
}
void extend() {
digitalWrite(SOL_RETRACT, LOW);
delay(50); // Prevent cross-port flow
digitalWrite(SOL_EXTEND, HIGH);
Serial.println("EXTENDING");
}
void retract() {
digitalWrite(SOL_EXTEND, LOW);
delay(50);
digitalWrite(SOL_RETRACT, HIGH);
Serial.println("RETRACTING");
}
void stopMotion() {
digitalWrite(SOL_EXTEND, LOW);
digitalWrite(SOL_RETRACT, LOW);
Serial.println("STOPPED - center position");
}
void loop() {
float pressure = readPressure();
// Safety: over-pressure cutoff
if (pressure > RELIEF_PRESSURE) {
stopMotion();
Serial.print("OVER-PRESSURE! ");
Serial.print(pressure);
Serial.println(" bar - EMERGENCY STOP");
delay(5000);
return;
}
Serial.print("Pressure: ");
Serial.print(pressure);
Serial.println(" bar");
if (Serial.available()) {
char cmd = Serial.read();
switch (cmd) {
case 'E': case 'e': extend(); break;
case 'R': case 'r': retract(); break;
case 'S': case 's': stopMotion(); break;
}
}
delay(100);
}
ESP32: Proportional Hydraulic Servo with LVDT
// ESP32 closed-loop hydraulic position control
// Proportional valve: PWM output via DAC (GPIO25) → valve amplifier
// LVDT position sensor: 0-10V → voltage divider → GPIO34 (ADC)
// Stroke: 0-500mm mapped to 0-10V sensor output
#include <Arduino.h>
#define DAC_PIN 25 // Proportional valve command
#define POS_PIN 34 // LVDT position feedback
#define SOLENOID_EN 26 // Enable solenoid (safety)
const float STROKE_MM = 500.0;
const float Kp = 0.8, Ki = 0.1, Kd = 0.05;
float integral = 0, prevError = 0;
float targetPos = 250.0; // mm
unsigned long lastTime = 0;
void setup() {
Serial.begin(115200);
analogReadResolution(12);
pinMode(SOLENOID_EN, OUTPUT);
dacWrite(DAC_PIN, 128); // Center = no motion
digitalWrite(SOLENOID_EN, HIGH);
lastTime = millis();
Serial.println("Hydraulic Servo Controller");
Serial.println("Send target position in mm (0-500)");
}
float readPosition() {
int raw = analogRead(POS_PIN);
// Voltage divider: 0-10V → 0-3.3V
return (raw / 4095.0) * STROKE_MM;
}
void loop() {
unsigned long now = millis();
float dt = (now - lastTime) / 1000.0;
if (dt < 0.001) return; // 1kHz max
lastTime = now;
// Read serial for target updates
if (Serial.available()) {
float newTarget = Serial.parseFloat();
if (newTarget >= 0 && newTarget <= STROKE_MM) {
targetPos = newTarget;
integral = 0; // Reset integrator
Serial.printf("New target: %.1f mm\n", targetPos);
}
}
float pos = readPosition();
float error = targetPos - pos;
integral += error * dt;
integral = constrain(integral, -100, 100);
float derivative = (error - prevError) / dt;
prevError = error;
// PID output: 0-255 DAC, 128 = center (no motion)
float output = 128.0 + (Kp * error + Ki * integral + Kd * derivative);
int dacVal = constrain((int)output, 0, 255);
dacWrite(DAC_PIN, dacVal);
static int counter = 0;
if (++counter >= 100) { // Print every 100ms
Serial.printf("Pos: %.1f mm | Target: %.1f | Err: %.2f | DAC: %d\n",
pos, targetPos, error, dacVal);
counter = 0;
}
}
Real-World Applications
Construction & Mining
- Excavator boom, arm, and bucket
- Bulldozer blade and ripper
- Crane telescoping and lifting
- Tunnel boring machine thrust
Aerospace & Manufacturing
- Aircraft flight control surfaces
- Landing gear retraction
- Metal stamping and forming presses
- Injection molding clamping
Advantages vs. Alternatives
| vs. Actuator | Hydraulic Advantage | Hydraulic Disadvantage |
|---|---|---|
| Pneumatic | 10–100× more force, incompressible (stiff, precise) | Heavier, oil leaks, more complex, slower |
| Electric Motor | Superior force density, natural overload protection | Less energy efficient, maintenance intensive |
| Electric Linear | Much higher force, better shock load handling | Requires pump, reservoir, valves — more complex system |
| BLDC | Continuous high torque without overheating | Not suitable for clean environments, noisy pump |
Limitations & Considerations
- Fluid Leakage: Seals wear over time, causing external and internal leaks. Internal leaks reduce efficiency; external leaks create contamination and fire hazards.
- Temperature Sensitivity: Oil viscosity changes dramatically with temperature. Cold oil is sluggish; hot oil thins and bypasses seals. Coolers and heaters maintain optimal range.
- Contamination: Particles as small as 5 µm can damage servo valves ($2,000+). Filtration to 3–10 µm is mandatory. Contamination causes 70–80% of hydraulic system failures.
- Noise: Hydraulic pumps (especially gear and vane types) are loud (75–95 dB). Variable-displacement piston pumps with load-sensing reduce noise.
- Energy Efficiency: Overall system efficiency is 30–60%. Losses occur in pump, valves (throttling), and fluid friction. Modern load-sensing and variable-speed drives improve efficiency.
- Environmental Impact: Oil spills contaminate soil and water. Biodegradable fluids (HETG, HEES) mitigate risk but are more expensive and temperature-limited.