← All projectsGitHub
Open-source purpose-built robots

Which open hydraulic circuit gets a small excavator closest to stock energy use for the least money?

research/heavy-hydraulics

Research programme (proposal stage): pump-shaft energy of fixed open-centre, load-sensing and ideal independent-metering circuits on an illustrative excavator cycle; over 2,916 swept cases load-sensing uses a median 47% of open-centre energy and metering 80% of load-sensing, an ordering that holds by construction; on 20,000 random cycles in a machine envelope load-sensing is a median 44% of open-centre; no measured cycle, margin or price is sourced yet

13 tests

What it found

An open research programme on which hydraulic circuit a small shop can build from catalogue parts to get a 1.5 to 3 t excavator closest to stock energy use, and at what parts cost. Milestone 1 is a stdlib model of pump-shaft energy for three circuits (fixed-displacement open-centre, load-sensing, ideal independent metering; analytic single-actuator check, 6 tests) and a 2,916-case grid on one four-phase cycle: load-sensing uses a median 47% of open-centre shaft energy (22 to 81%), saving more as flow demand falls (31%, 47%, 63% of open-centre at 0.5, 0.75 and 1.0 of full flow), and metering uses a median 80% of load-sensing, 88% with equal actuator pressures and 74% at 1.5 times the reference spread. The ordering holds in every case but only because each rung removes a loss term, so it is a code check rather than a finding. The cycle, pressures, flows and margins are illustrative values written from memory and swept, not sourced; there are no dynamics, leakage, line losses, energy recovery or parts costs; the DOI registry was unreachable so references were checked by web search, not cite_check. Milestone 2a repeats the comparison on 20,000 random cycles inside a machine envelope (pump 45 L/min, 20 to 180 bar, taken from an unopened search summary of one mini-excavator listing): load-sensing uses a median 44% of open-centre energy, metering 72% of load-sensing (87% at equal actuator pressures), and H3 fails per case in about a third of equal-pressure cycles. The cycles are random, not measured. Preliminary; arithmetic only, nothing run on a machine.

A figure from its own output

Figure produced by research/heavy-hydraulics: ranking_map
heavy-hydraulics/experiments/ranking_map.svg, written by the project's own experiment code.

Research log

Ongoing: each run adds a batch and an entry, newest first. Source: LOG.md.

2026-11-01 · Milestone 3m: what does the larger pump cost in energy, and where does the break-even dp_ls go? (prediction registered before running)

### Outcome of 3m (experiments/pump_size_energy_results.txt, seeded, 1,500 cycles per cell, 23 s)

2026-11-01 · Milestone 3l: what does the larger pump cost in fuel and parts against the time it saves? (prediction registered before running)

### Outcome of 3l (experiments/pump_cost_results.txt, seeded, 1,500 cycles per row)

2026-11-01 · Milestone 3k: does the open-centre time penalty depend on how big the pump is? (prediction registered before running)

### Outcome of 3k (experiments/pump_size_results.txt, seeded, 1,500 cycles per row)

2026-10-31 · Milestone 3j: the manual's P-to-A flow curves pin the rating-point drop (not pre-registered)

2026-10-31 · Milestone 6c: paper section 3.5 gains 3i (a writing step, no experiment)

2026-10-31 · Milestone 3i: 3f's break-even with the manual-curve sizing (prediction registered before running)

### Outcome of 3i (experiments/time_penalised_rated_results.txt, 10 s, seeded)

2026-10-31 · Milestone 3h: 3g with the drop at rated flow read from the manual's own curves (prediction registered before running)

### Outcome of 3h (experiments/rated_sizing_curve_results.txt, 2 s, seeded)

2026-10-31 · Milestone 3g: size open-centre sections from the PVG 32 rated flows (not pre-registered)

### Outcome (experiments/rated_sizing_results.txt)

2026-10-31 · Milestone 6b: the paper draft gains the cycle-time section (a writing step, no experiment)

2026-10-30 · Milestone 3f: does the open-centre time penalty move 2n's load-sensing break-even? (not pre-registered)

### Outcome of 3f (experiments/time_penalised_results.txt, 26 s, seeded)

2026-10-30 · Milestone 3e: was 3d's k = 20 row only a bracket bug? (planned before running)

### Outcome of 3e (experiments/flow_share_shape_results.txt, 5 s, seeded)

2026-10-30 · Milestone 3d: what does the PVG 32 manual say about how fast the bypass closes? (planned before running)

### Outcome of 3d (experiments/flow_share_shape_results.txt, 5 s, seeded)

2026-10-30 · Milestone 3c: how much of 3a's penalty is open-centre, and how much is just the pump limit? (planned before running)

### Outcome of 3c (experiments/flow_share_ls.py, flow_share_ls_results.txt, 2 s, seeded; 1 new test)

2026-10-30 · Milestone 3b: is 3a's cycle-time penalty an artefact of the bypass closing law? (planned before running)

### Outcome of 3b (experiments/flow_share_shape_results.txt, 3 s, seeded; 1 new test, all pass)

2026-10-30 · Milestone 3a: how much longer does an open-centre parallel valve make the dig phase? (planned before running)

### Outcome of 3a (experiments/flow_share.py, flow_share_results.txt, about 1 minute, seeded; 3 new tests, 10 pass)

2026-10-30 · Milestone 2o: how far does the unsourced LS standby flow move 2n's break-even? (planned before running)

### Outcome of 2o (experiments/standby_sweep.py, standby_sweep_results.txt, about 1 minute, seeded)

2026-10-30 · Milestone 6c: paper draft regenerated for 2n (no new experiment)

2026-10-30 · Milestone 2n: with the open-centre neutral drop read from Danfoss's PVG 32 curve, who wins at idle? (planned before running)

### Outcome of 2n (experiments/pvg_neutral.py, 8 s, seeded; pvg_neutral_results.txt)

2026-10-30 · Milestone 2m: how far does the break-even LS margin move with load factor? (planned before running)

### Outcome of 2m (experiments/ranking_map_lf.py, 20 s, seeded; ranking_map_lf_results.txt)

2026-10-30 · Milestone 2l: where is the sign boundary in (dp_ls, neutral drop)? (planned before running)

### Outcome of 2l (experiments/ranking_map.py, about 10 s, seeded; ranking_map_results.txt, ranking_map.svg)

2026-10-30 · Milestone 2k: a third LS margin (20 bar) puts the break-even between 14 and 25 bar (exploratory: no predictions written before running)

2026-10-29 · Milestone 2j: the load-sensing margin from Rexroth's A10VO manual flips 2i's ranking back (exploratory: no predictions written before running)

2026-10-29 · Milestone 2i: with the open-centre neutral pressure read from a published valve curve, who wins at idle? (planned before running)

### Outcome of 2i (experiments/neutral_sourced.py, about 1 minute, seeded; experiments/neutral_sourced_results.txt; 3,000 cycles per cell)

2026-10-29 · Milestone 6b: figure and number check for the paper draft

2026-10-29 · Milestone 6 (first draft): paper/draft.md

2026-10-29 · Milestone 5b: does 5a's lift-phase cap decide its numbers? (experiments/regen_uncapped.py, regen_uncapped_results.txt)

2026-10-29 · Milestone 5a: how much of a cycle's pump-shaft energy can boom-lowering recovery return, and does it beat the circuit choice? (planned before running)

### Outcome of 5a (experiments/regen_bound.py, about 10 s; regen_bound_results.txt; 5,000 force-model cycles, sourced margins)

2026-10-29 · Milestone 4 (first pass): does load-sensing's extra parts cost repay in fuel within 2,000 h (H5)?

2026-10-29 · Milestone 2h: at what open-centre neutral pressure does load-sensing stop winning?

2026-10-29 · Milestone 2g: does 2f's idle-time ranking survive a physical idle model for each circuit?

2026-10-29 · Milestone 2f: does 2d's "load-sensing loses" survive idle time matched to a measured load factor?

2026-10-29 · Milestone 2e: does the assumed cycle's load shape look like a measured excavator's? (planned before running)

### Outcome (experiments/trace_shape.py, experiments/trace_shape_results.txt)

2026-10-28 · Milestone 2d: do the 2c rankings survive sourced margins? (planned before running)

### Outcome (experiments/physics_cycle_sourced_results.txt)

2026-10-28 · Milestone 2c: do load-correlated pressures from a force model change the rankings? (planned before running)

### Outcome (experiments/physics_cycle_results.txt)

2026-10-28 · Milestone 2b: the rankings on the measured phase times and pump curve of Juza and Hermanek (2023) (planned before running)

### Outcome (experiments/measured_cycle.py, seeded, seconds; experiments/measured_cycle_results.txt)

2026-10-28 · Milestone 2a: do the rankings survive a random cycle bounded by a sourced machine envelope? (planned before running)

### Outcome (experiments/envelope.py, seeded, a few seconds; experiments/envelope_results.txt)

2026-10-28 · Milestone 1: do the three circuits order the way theory says, and by how much? (planned before running)

### Outcome (experiments/run.py, under 5 s; experiments/results.txt; 6 tests pass)

Paper, code and results

More in Open-source purpose-built robots

All 44 Open-source purpose-built robots projects →

Other research topics

Proper scoring & elicitation28Effort & peer prediction9Verification games & slashing19Detection & tolerances14Markets as routers13Prediction-market design9Paying contributors8Decentralised training systems23Digital twins & sim-to-real164LLM chip design loops40Robot manufacturing loops53Ambient AI assistant46Self-replicating manufacturing34Simulation-first design64Engineered clothing45Task-specific AI accelerators40Algorithmic chip-design loops42Open-source purpose-built robots44The software-engineering loop43Adversarial human imitation41Open-source residential construction41Autonomous multi-angle capture34Sensing, imaging and 3D31Energy supply and dense energy storage39Robot societies among people31Agentic co-design of low-cost robots27Laundry-hanging robots25Machine learning on qualitative data23Robots on the building site27Civilizations & group psychology1History & human sciences1

Produced with AI assistance (Claude). Results are from the code in this repository and are simulated or stylised unless the abstract says otherwise; nothing here implies affiliation with or endorsement by any lab, researcher or company cited. MIT licensed.