A High Torque Differential Elastic Actuator for Robotic Legs
Submitted to Humanoids 2026
Nathan Carmichael and Dr. Max Shepherd
Lower-limb joints in humanoid and legged robots
must produce high torque while remaining compact, backdrivable,
and safe to interact with. Elastic actuators meet these
needs by placing a compliant element between the drivetrain
and the load and inferring torque from its deflection, but
trade bandwidth for force-control fidelity. A differential elastic
actuator (DEA) is a variant of elastic actuator in which the
spring grounds one port of a differential transmission, so that
output torque can be read from a single static, housing-mounted
encoder. We present a DEA based on a harmonic drive and
sprung ring gear, with a novel arcuate spring geometry shaped
by an equal-stress optimization. By wrapping the spring around
our high-torque transmission, we create a torque-dense actuator
with high-fidelity force control and acceptable bandwidth for
lower-limb actuation. Our actuator achieves a peak torque of
122 Nm at a mass of 980 g, a torque-tracking bandwidth of
16.3 Hz, and holds backdrive torque under 3 Nm against output
disturbances up to 9 Hz, the limit of our test rig.

A useful hip, knee, or ankle joint has to deliver biological torques and speeds, stay narrow enough to fit a human-like limb, and interact safely with its environment. A stiff geared drivetrain cannot do all three: tiny output deflections generate large forces, and raising the loop gains to suppress overshoot causes chattering at the contact surface. Quasi-direct drive keeps reflected rotor inertia low by keeping the reduction low, which trades away torque density and still leaves measurable overshoot. Adding a torque sensor to a stiff joint restores accurate torque control but does not make the joint compliant: the reflected inertia still sets output impedance beyond the control bandwidth, impacts still pass through the gearing, and no energy is stored mechanically. Placing a spring between the transmission and the load builds compliance in mechanically. It makes the closed loop passively stable, decouples the load from reflected inertia above the spring's natural frequency, absorbs impact energy, and stores and returns energy over a motion. The cost is force bandwidth, and for legged locomotion that trade is favorable: roughly 99% of the kinematic power of gait sits below about 6 Hz, so a torque-tracking bandwidth of 15 to 20 Hz is more than sufficient.
A differential elastic actuator keeps the benefits of series compliance but repositions the spring. Instead of inserting the spring into the load path, it grounds one port of a differential transmission through the spring. Here that transmission is a 50:1 harmonic drive, chosen for compactness, zero backlash, and low inertia. Normally the circular spline is bolted to ground and the flex spline carries the output; in the DEA the circular spline is grounded through the spring, so the whole transmission body rotates slightly against the spring in proportion to output torque. Neglecting losses, the motor reacts only 1/N of the output torque while the grounded spring carries (N+1)/N of it. 

Series versus differential elastic actuation, with corresponding
numbers to mark important components labeled in the block diagrams. In the SEA the spring sits in the load path; in the DEA the spring grounds the circular spline, so a single static encoder reads transmission rotation as spring deflection.

Because the spring is referenced to ground, a single static encoder mounted on the housing reads the circular spline's small rotation, which is exactly the spring deflection, and that one signal gives output torque. A conventional SEA needs either two encoders straddling the spring or one encoder that rotates with the output, adding parts, wiring, and assembly complexity. Grounding the spring also lets it be packaged around the transmission rather than in line with it, which matters most at the ankle, where joint width is limited and a bulky swing-leg joint can collide with the stance leg.
The actuator was sized to the ankle as the most demanding case in the leg, being at once the highest-torque and the most width-constrained joint. The human ankle produces about 1.5 N·m/kg during level walking, so an 80 kg user needs roughly 120 N·m, at a peak speed near 5.4 rad/s and a mediolateral width held to 65 to 75 mm for human-like anthropometry.

The differential elastic actuator. (a) Renders of the assembled
prototype and a cross section view illustrating the location of the spring.
(b) Exploded render with major components called out.

The build is a coaxial stack. A brushless inrunner motor (ILM 50x14, 4096 count-per-rev rotor encoder) drives the wave generator of a 50:1 harmonic drive (CSG-20-50-2A-GR-LW). The flex spline carries the output and the circular spline is grounded through the arcuate spring, which nests in the cylindrical envelope already occupied by the transmission and so adds no volume. Housing and structure are 7075-T6 aluminum, the spring is Ti-6Al-4V, and a central through-shaft plus crossed roller bearings shield the transmission from the off-axis loads the spring imposes. The flex-spline teeth were remachined by the manufacturer to cut backdrive torque. Output torque is read by a single housing-mounted optical encoder (1 µm resolution) as τ = k_s·Δθ, with a measured, output-referenced stiffness of about 1500 N·m/rad. At 122 N·m the spring deflects roughly 4.7 degrees, which the encoder resolves well enough to use unfiltered, minimizing latency. 
The viability of a DEA hinges almost entirely on its elastic element, and that is where prior designs have been limited. The spring here is a C-shaped arc fixtured between the transmission body and the housing, constrained to deflect along a circular path concentric with the actuator axis. That arc constraint is what lets it wrap the transmission inside the existing envelope, but there is no closed-form stiffness solution for a circular arc loaded this way, and a conventional wound rotary spring stiff enough for 120 N·m would be prohibitively heavy.
The spring was designed with a custom solver. The arc is discretized into 1000 planar two-node Euler-Bernoulli frame elements with three degrees of freedom per node, each with a fixed width and an independent thickness; the thickness vector is the design variable. The spring bends far enough that its shape, and therefore its stiffness, changes appreciably under load, so the problem is geometrically nonlinear. Load is applied in increments, and within each increment a Newton-Raphson iteration recomputes every element's length and orientation from the current deformed geometry, in a corotational, updated-Lagrangian formulation, until the internal elastic forces balance the applied load. Internal member forces then give axial, bending, and shear stress per element, combined into a von Mises stress that drives the optimization.

Geometrically nonlinear frame FEA and the equal-stress optimization loop.

A fully stressed structure, at its allowable stress everywhere, minimizes mass, because any material below the allowable stress is underutilized. Each element's thickness is scaled by the ratio of its current stress to the allowable stress, raised to a resizing exponent of about 0.4 with per-iteration move limits to prevent oscillation. The iteration thins understressed material and thickens overstressed material until the stress is uniform along the arc. The allowable stress uses a factor of safety of 3 on ultimate strength, which keeps peak stress below the fatigue limit of Ti-6Al-4V, thickness is bounded to 2 to 11.5 mm, and the inner radius is held at 38 mm for packaging. Stiffness was never constrained; it is an outcome of the mass minimization.

FEA and optimizer validation. A uniform cantilever, the same cantilever after equal-stress optimization (converging on the analytic parabolic, constant-stress profile), and the closed-form parabolic beam, with deflection and stress plots validating the one-dimensional optimizer. The solver matches the closed-form cantilever to 0.78% deflection RMSE and the optimized beam matches the analytic parabola to 1.76%.

The solver and optimizer were validated in three stages. First, a uniform cantilever was solved and compared against the closed-form solution, giving a deflection RMSE of 0.78%. Second, that cantilever was run through the equal-stress optimizer, which converged on the analytic parabolic constant-stress profile to within 1.76% deflection RMSE, testing both the large-deflection solver and the optimizer at once. Third, deflection and stress for both beams were cross-checked against equivalent geometries in SolidWorks 2D FEA.

The optimized arcuate spring deflected inside the actuator housing,
showing the spring bottoming out against the housing walls within the
cylindrical envelope.

The optimized spring is 38% lighter than the constant-thickness arc at the same packaging envelope, while satisfying the stress constraint everywhere. Because the allowable stress is set at a factor of safety of 3, the minimum factor of safety across the arc is 3. The coefficient of variation of von Mises stress is 13.8%, and that residual non-uniformity comes entirely from the 2 mm manufacturability floor on thickness: the optimizer wants to drive the near-zero-stress inflection points toward zero thickness. Relaxing that floor to 0.5 mm drops the coefficient of variation to 0.1%, confirming the design is otherwise fully stressed.
The result is thick near the loaded ends, where bending and axial stress peak, and thin at the lightly loaded crown. That absence of material at the center is what makes the design compact. Had the loading condition produced a thick mid-profile, the entire actuator envelope would have had to grow.

Velocity-sourced PD torque-control loop. The spring deflection
angle is measured, converted to an equivalent output torque, and then
compared to the desired torque to obtain a torque error. This error is driven
to zero with a PD velocity controller.

Control is deliberately simple. The servo drive is treated as a velocity source, commanded in programmed-velocity mode so its fast inner current and velocity loops absorb the motor-level dynamics. When the actuator is backdriven while commanded to render zero torque, the velocity loop drives the motor to match the load, nulling the relative velocity that would deflect the spring and masking the reflected inertia, friction, cogging, and stiction that would otherwise dominate output impedance. Commanding motor current directly would instead place that burden on the outer loop, demanding impractically high gains to produce a large current spike from a small deflection error.
On top of that, the outer loop is a single PD law: measured torque comes from spring deflection, and the torque error commands a motor velocity. Gains were tuned heuristically in the manner of Ziegler and Nichols. Getting high-fidelity torque control from a PD loop on one unfiltered encoder signal is a direct consequence of the mechanical design.
Characterization was done on a custom rotary dynamometer, in which a large servomotor drives the device under test through a planetary gearset while an in-line rotary torque sensor (ATO-TQS-D03) measures transmitted torque. Two flexible couplings isolate the sensor from off-axis loads, and the in-line reading serves as an independent reference against the actuator's own internally sensed torque.
The manufactured spring was first loaded in a dedicated jig placed in series with the dynamometer to reproduce the arc-constrained loading, measuring a stiffness of about 1500 N·m/rad. The torque-deflection response is approximately linear across the operating range and hysteresis is minimal, owing to the titanium. Assembled, the actuator tracks commanded steps up to 122 N·m with an average rise time of 38.1 ms (10% to 90%) and an average steady-state error of 0.17% of command, and the closed-loop frequency response gives a torque-tracking bandwidth of 16.3 Hz.

Disturbance-rejection bandwidth. Top: output impedance versus frequency, with and without the control loop active (comparing to a passive model that includes reflected inertia and backdrive torque). Bottom: torque response to an output-side chirp swept from 0.1 to 9 Hz over 4 seconds at ±5◦ (10◦ peak-to-peak). With the loop active, backdrive torque stays under 3 Nm across the full tested range, below the control-off case.

Disturbance rejection was measured by backdriving the actuator with an external motor while it was commanded to render zero torque, sweeping frequency with the control loop active. The passive, control-off impedance cannot be excited at the top of that sweep, since the reflected-inertia term grows as ω² and would demand torques beyond the dynamometer, so it is compared against a model of reflected rotor inertia and Coulomb backdrive friction added in quadrature (J_r = 0.05125 kg·m², measured backdrive torque τ_c = 2.3 N·m for the remachined harmonic drive, sweep amplitude 5 degrees). Friction sets the low-frequency plateau and reflected inertia dominates above roughly 5.5 Hz. Under an output-side chirp from 0.1 to 9 Hz, the maximum the dynamometer could deliver at that amplitude, the system stayed stable through 9 Hz and the control loop reduced output impedance across the band, exceeding the 6 Hz target.
The actuator delivers 122 N·m of peak torque at 980 g, a 16.3 Hz torque-tracking bandwidth, and a 9 Hz disturbance-rejection bandwidth, in a 65 mm wide, 106 mm diameter package. That pairs torque density comparable to quasi-direct drives with high bandwidth for an elastic actuator, while remaining compliant.
The main contribution is the novel spring, an arcuate geometry loaded under an arc constraint so it deflects along a circular path and wraps the transmission, packing a long compliant element into a cylindrical envelope with no added axial length and no output-side bulk, shaped by an equal-stress optimization framework that is validated and geometry-agnostic. Because the design rests on that framework rather than a hand-tuned part, re-targeting torque and packaging requirements and re-running the optimizer produces a spring for the knee or hip without changing the architecture or the controller.

You may also like

Back to Top