Back to Sensors & Actuators Series

Aerospace Actuators: EHA, EMA, Reaction Wheels & Fly-by-Wire

April 10, 2026 Wasil Zafar 20 min read

From flight control surfaces at Mach 0.85 to reaction wheels in orbit — aerospace actuators operate at the extremes of reliability, temperature, and certification. Master EHA, EMA, and space actuator systems.

Contents

  1. Overview & Types
  2. Working Principle
  3. Aerospace Actuator Specifications
  4. Driver Circuits & Electronics
  5. Control Methods
  6. Code Example — Arduino & ESP32
  7. Real-World Applications
  8. Aerospace Electrification Benefits
  9. Limitations & Considerations

Overview & Types

Aerospace actuators operate at the extremes — controlling flight surfaces at 600 mph, deploying landing gear under 10 G loads, positioning satellite antennas in vacuum, and throttling rocket engines at 3,000°C. Reliability is paramount: failure means loss of aircraft or spacecraft. This drives extensive redundancy, fault-tolerant design, and qualification testing that dwarfs any other industry.

Key Insight: Aerospace is transitioning from hydraulic to electric actuators (“More Electric Aircraft” — MEA). The Boeing 787 replaced many hydraulic systems with Electro-Hydrostatic Actuators (EHA) and Electro-Mechanical Actuators (EMA), saving weight, reducing maintenance, and improving fuel efficiency.

Flight Control Actuators

  • Hydraulic Servo Actuator: The traditional standard. 3,000–5,000 psi hydraulic system powers linear cylinders that move ailerons, elevators, rudder, spoilers, and flaps. Triple-redundant servo valves. Used on most commercial aircraft.
  • Electro-Hydrostatic Actuator (EHA): Self-contained unit: electric motor → hydraulic pump → hydraulic cylinder. No central hydraulic lines. Used on Airbus A380 (backup) and Boeing 787 (primary for some surfaces).
  • Electro-Mechanical Actuator (EMA): Electric motor + gearbox + ball screw. Fully electric, no hydraulic fluid. Used for secondary flight controls (trim tabs, flaps). Advancing toward primary flight control.

Landing Gear & Utility

  • Landing Gear Actuator: Hydraulic cylinders for extension/retraction. Electric backup (hand crank or electric motor) for emergency extension. 10–50 kN forces.
  • Nose Wheel Steering: Hydraulic or electro-hydraulic actuator for ground taxiing. ±70° steering angle for maneuvering.
  • Thrust Reverser: Hydraulic or pneumatic actuators deploy blocker doors or cascade vanes after landing. Must deploy reliably and retract fully — partial deployment is a critical failure.

Space & Satellite

  • Reaction Wheel / CMG: Spinning flywheels (reaction wheels) or gimbaled flywheels (control moment gyros) for spacecraft attitude control. Absorb angular momentum without propellant. Used on ISS, Hubble, all modern satellites.
  • Thruster Valve (Solenoid): Solenoid valves controlling hydrazine or cold-gas thrusters. Pulse width determines impulse bit. Must operate after years of dormancy in vacuum.
  • Solar Array Drive Assembly (SADA): Stepper or BLDC motor + harmonic drive rotating solar panels to track the sun. Slip rings or flex cables transfer power. 15–25 year life in space.
  • Gimbal Actuator: Hydraulic or electric actuators tilting rocket engine nozzles for thrust vector control (TVC). Must handle extreme vibration and thermal environments.

Working Principle

Electro-Hydrostatic Actuator (EHA)

  1. Command Signal: Flight computer sends position command via ARINC 429 or MIL-STD-1553 bus.
  2. Motor Drive: Variable-speed BLDC motor spins a fixed-displacement hydraulic pump in both directions.
  3. Hydraulic Circuit: Pump pressurizes one side of a double-acting cylinder. Motor speed/direction controls flow rate and direction. Closed circuit — no reservoir.
  4. Position Feedback: LVDT (Linear Variable Differential Transformer) provides precise position feedback. Redundant LVDTs (typically 3) for fault tolerance.
  5. Fail-Safe: Hydraulic lock or mechanical brake holds position on power loss. Damping mode allows passive aerodynamic centering.

Reaction Wheel

A BLDC motor spins a flywheel (0.1–100 kg). By Newton’s third law, accelerating the wheel applies torque to the spacecraft. Three orthogonal wheels provide 3-axis attitude control. When wheels approach saturation speed, thrusters desaturate them. Typical accuracy: 0.001° pointing.

Aerospace Actuator Comparison

TypeBandwidthForceWeightMaintenance
Hydraulic Servo10–50 HzVery HighMedium (+ system)High (fluid, seals)
EHA5–30 HzHighMedium (self-contained)Low
EMA3–20 HzMedium–HighLowVery Low
Reaction Wheel0.1–10 HzN/A (torque)0.5–50 kgNone (space)

Aerospace Actuator Specifications

ParameterHydraulic ServoEHA (Boeing 787)Reaction Wheel
Power Source3000 psi hydraulic270 VDC (MEA bus)28 VDC (sat bus)
Force/Torque10–500 kN10–200 kN0.001–1 N·m
Speed50–200 mm/s30–150 mm/s0–6000 RPM
Bandwidth10–50 Hz5–30 Hz1–10 Hz
Position Accuracy±0.1 mm±0.1 mm0.001° pointing
RedundancyTriple hydraulicDual motor/electronics4 wheels (3+1 spare)
Operating Temp−55°C to +90°C−55°C to +90°C−30°C to +70°C (space)
Design Life60,000 flight hours60,000 flight hours15–25 years

Driver Circuits & Electronics

Motor Controller (EHA/EMA)

Dual-lane or triple-lane motor controllers with independent power stages and monitoring. Rad-hard or radiation-tolerant components for space. Automotive-grade (AEC-Q100) minimum for aircraft. Isolated gate drivers, current sensors with self-test, and hardware watchdogs.

Servo Valve Driver (Hydraulic)

Dual-coil torque motor driven by ±40 mA current from flight computer. Force-feedback nozzle-flapper or jet-pipe mechanism. LVDT feedback closes position loop.

Reaction Wheel Electronics (RWE)

Space-grade BLDC driver with: magnetic encoder (no optical — radiation darkens glass), current-mode FOC, speed/torque control, telemetry interface (RS-422 or SpaceWire), and latch-up protection.

Control Methods

Fly-by-Wire (FBW)

Pilot stick inputs are digitized and processed by redundant flight computers (typically 3–4). Computers send position commands to actuator controllers. Multiple dissimilar computing channels prevent common-mode failures.

Active-Active Redundancy

Multiple actuators on the same surface operate in force-fight mode (opposing actuators share load). If one fails, the others continue seamlessly. Monitor-compare architecture detects discrepancies.

Model-Based Health Monitoring

On-board models predict expected actuator response. Deviations indicate degradation (leakage, friction increase, motor winding failure). Prognostic health management extends inspection intervals.

Code Example — Arduino & ESP32

Arduino: Reaction Wheel Attitude Control Simulation

// Simplified reaction wheel attitude control
// BLDC motor (via ESC) → D9 (servo PWM signal)
// IMU (MPU6050) → I2C for attitude feedback
// PD controller maintains desired angle

#include <Wire.h>
#include <Servo.h>

#define MPU6050_ADDR 0x68
Servo esc;

float targetAngle = 0;    // degrees (yaw)
float currentAngle = 0;
float angularRate = 0;
float wheelSpeed = 1500;  // ESC microseconds (1500 = stop)

float Kp = 10.0, Kd = 5.0;

void setup() {
    Serial.begin(9600);
    Wire.begin();

    // Init MPU6050
    Wire.beginTransmission(MPU6050_ADDR);
    Wire.write(0x6B); Wire.write(0x00);  // Wake up
    Wire.endTransmission();

    esc.attach(9);
    esc.writeMicroseconds(1500);  // Neutral (no spin)
    delay(2000);  // ESC arm time

    Serial.println("Reaction Wheel Controller");
    Serial.println("Send target angle (-180 to 180):");
}

void readIMU() {
    Wire.beginTransmission(MPU6050_ADDR);
    Wire.write(0x47);  // Gyro Z register
    Wire.endTransmission(false);
    Wire.requestFrom(MPU6050_ADDR, 2);
    int16_t gz = (Wire.read() << 8) | Wire.read();
    angularRate = gz / 131.0;  // deg/s (±250°/s range)
    currentAngle += angularRate * 0.02;  // Integrate (dt=20ms)
}

void loop() {
    readIMU();

    if (Serial.available()) {
        float angle = Serial.parseFloat();
        if (angle >= -180 && angle <= 180) {
            targetAngle = angle;
            Serial.print("Target: "); Serial.println(angle);
        }
    }

    float error = targetAngle - currentAngle;
    float torqueCmd = Kp * error - Kd * angularRate;

    // Map torque command to ESC signal (1000-2000 µs)
    wheelSpeed = 1500 + constrain((int)torqueCmd, -500, 500);
    esc.writeMicroseconds(wheelSpeed);

    static unsigned long lastPrint = 0;
    if (millis() - lastPrint > 200) {
        Serial.print("Angle: "); Serial.print(currentAngle, 1);
        Serial.print("° Rate: "); Serial.print(angularRate, 1);
        Serial.print("°/s Wheel: "); Serial.println(wheelSpeed);
        lastPrint = millis();
    }
    delay(20);
}

ESP32: EHA Simulation with Position & Pressure Control

// ESP32 Electro-Hydrostatic Actuator (EHA) simulation
// Motor PWM → GPIO25 (represents variable-speed pump motor)
// LVDT position → ADC34
// Pressure sensor → ADC35

#include <Arduino.h>

#define MOTOR_PWM  25
#define MOTOR_DIR  26
#define LVDT_PIN   34   // Position feedback (simulated LVDT)
#define PRESS_PIN  35   // Pressure sensor

struct EHA_State {
    float position;     // mm (0-200 stroke)
    float pressure;     // bar
    float command;       // mm (desired position)
    float motorSpeed;   // -100 to +100 %
} eha;

float Kp = 5.0, Ki = 0.5, Kd = 2.0;
float integral = 0, prevError = 0;
const float MAX_PRESSURE = 350;  // bar (pressure limit)
const float STROKE = 200.0;      // mm total stroke

void setup() {
    Serial.begin(115200);
    ledcSetup(0, 20000, 8);
    ledcAttachPin(MOTOR_PWM, 0);
    pinMode(MOTOR_DIR, OUTPUT);
    analogReadResolution(12);

    eha.command = 100;  // Mid-stroke
    Serial.println("EHA Controller Simulation");
    Serial.println("Send position 0-200 (mm):");
}

float readPosition() {
    int raw = analogRead(LVDT_PIN);
    return (raw / 4095.0) * STROKE;
}

float readPressure() {
    int raw = analogRead(PRESS_PIN);
    return (raw / 4095.0) * 400.0;  // 0-400 bar range
}

void driveMotor(float speed) {
    // speed: -100 to +100 (% of max)
    if (speed > 0) digitalWrite(MOTOR_DIR, HIGH);
    else digitalWrite(MOTOR_DIR, LOW);

    int pwm = constrain((int)(abs(speed) * 2.55), 0, 255);
    ledcWrite(0, pwm);
    eha.motorSpeed = speed;
}

void loop() {
    eha.position = readPosition();
    eha.pressure = readPressure();

    if (Serial.available()) {
        float cmd = Serial.parseFloat();
        if (cmd >= 0 && cmd <= STROKE) {
            eha.command = cmd;
            integral = 0;
            Serial.printf("Command: %.1f mm\n", cmd);
        }
    }

    float error = eha.command - eha.position;
    integral += error * 0.01;
    integral = constrain(integral, -200.0f, 200.0f);
    float derivative = (error - prevError) / 0.01;
    prevError = error;

    float output = Kp * error + Ki * integral + Kd * derivative;

    // Pressure limiting (safety)
    if (eha.pressure > MAX_PRESSURE) {
        output = 0;
        Serial.println("PRESSURE LIMIT!");
    }

    driveMotor(constrain(output, -100.0f, 100.0f));

    static unsigned long lastPrint = 0;
    if (millis() - lastPrint > 250) {
        Serial.printf("Cmd: %.1f  Pos: %.1f mm  P: %.0f bar  Motor: %.0f%%\n",
                      eha.command, eha.position, eha.pressure, eha.motorSpeed);
        lastPrint = millis();
    }
    delay(10);
}

Real-World Applications

Commercial Aviation

  • Flight control surfaces (ailerons, elevators, rudder)
  • Landing gear extension/retraction
  • Thrust reverser deployment
  • High-lift devices (flaps, slats)

Space Systems

  • Reaction wheels for attitude control
  • Solar array drive mechanisms
  • Antenna pointing gimbal actuators
  • Rocket engine thrust vector control

Aerospace Electrification Benefits

FromToKey Benefit
Central hydraulic systemEHA (local hydraulic)No long hydraulic lines, reduced leak risk, easier maintenance
Hydraulic actuatorEMA (fully electric)Lightest solution, lowest maintenance, no fluid
Pneumatic bleed airElectric compressorEngine bleed elimination improves fuel efficiency 3%
Mechanical flight controlsFly-by-wireEnvelope protection, weight reduction, design freedom

Limitations & Considerations

  • Certification: DO-160 environmental qualification, DO-178C software, DO-254 hardware. Certification costs millions and takes years. Every change requires re-qualification.
  • Jamming (EMA): Ball screw jamming is the primary concern for EMA in primary flight control. A jammed actuator locks the control surface. Mitigation: dual-redundant load paths, disconnect mechanisms, or clutches.
  • Thermal Management: Motor and electronics waste heat must be dissipated. At altitude (−55°C, low air density), natural convection is poor. Liquid cooling adds weight and complexity.
  • Radiation (Space): Total ionizing dose and single-event effects degrade electronics. Space-grade (rad-hard) components cost 10–100× more than commercial. CubeSats use commercial parts with shielding and software mitigation.
  • Vacuum & Outgassing (Space): Lubricants evaporate in vacuum. Only specific dry lubricants (MoS₂, PFPE) are approved. Outgassing contaminates optics and solar cells.
  • Weight Budget: Every gram matters in aerospace. Actuator selection involves trade studies balancing performance, weight, power, reliability, and cost across the entire aircraft/spacecraft system.