Series Elastic Actuator: Spring Stiffness, Impact and Bandwidth
Size an SEA spring for robot-leg impacts and force control. Compare nonlinear impact forces, spring travel, motor-limited bandwidth and output impedance across stiffness.
A series elastic actuator places a deliberate spring between the motor transmission and its load. For a robot leg, the spring can reduce the force transmitted back into the drive when a foot strikes the ground. A softer spring also needs more travel to generate force, and the motor must move farther and faster. This series elastic actuator design calculator makes those competing requirements visible.
Use it to choose SEA spring stiffness for a linear actuator, or for a rotary joint already referred to a linear coordinate. Enter the effective motor mass seen through the transmission, the output-side foot or load mass, and the mechanical damping. Reflected mass is an inertia equivalent; it can be much larger than the actuator's actual weight. For a rotary inertia J and a constant transmission radius r, the equivalent mass is J/r² and the equivalent spring stiffness is the torsional stiffness divided by r².
Enter an impact speed and a Hunt–Crossley contact stiffness fitted to the foot and ground. The contact exponent is 3/2. The restitution input describes an isolated contact at that speed; it is not the rebound coefficient of the complete leg. The calculator integrates both moving masses and the nonlinear contact, and compares them with a rigid coupling carrying the same total mass. Use playback to inspect the relative motion and the force histories to see whether a lower contact peak also means a lower transmission peak.
For force control, enter the PD gains, available stall force, no-load speed, achieved sinusoidal output-force amplitude, and required bandwidth. The small-signal result assumes an ideal, fast motor force loop. The amplitude limit includes the motor's force–speed envelope. The smaller frequency is reported as force-control capacity bandwidth. The amplitude is the achieved output, held constant by adjusting the command with frequency. The required command amplitude at the target frequency is also shown. An unshaped command can be amplified near resonance and exceed the force or travel limits even when this capacity assessment passes. Output impedance is evaluated with a zero force command; the frequency-response chart shows force per output displacement.
The conservative capacity window combines the bandwidth requirements with energy bounds on spring force and travel. An available capacity window gives a useful starting range for spring selection. A missing window can call for more travel, a larger motor, less reflected inertia, or a smaller impact speed. It does not prove that every spring outside that range fails: contact and motor damping dissipate energy, so the simulated selected spring may still meet the entered limits.
This impact absorption robot leg model covers a short, unpowered, normal impact from an unstrained spring. It does not include gravity, stance preload, active landing control, hard stops, plastic deformation, frictional ground forces, or changing leg geometry. It evaluates force and travel limits rather than material stress, spring fatigue life, or gearbox durability. Validate contact properties and check the complete powered leg before choosing hardware.
How it is calculated
SEA mechanics. In a common linear output coordinate, . The unpowered impact equations are and , with downward displacement positive. Both masses start at speed , with zero spring strain and zero contact penetration. The rigid comparison uses the combined mass; its transmission force follows the motor's inertia balance.
Nonlinear contact. For penetration , ; otherwise . The nonzero root of , where , calibrates isolated-contact restitution. This relation is derived by integrating over compression and restitution; it avoids a small-loss approximation. At , . Nonnegative clipping prevents adhesive contact during coupled motion.
Force control. The unity-feedforward PD structure follows Robinson et al. (1999), equations 5–6. With , . The exact positive −3 dB crossing gives the small-signal bandwidth. Dynamic stiffness is ; mechanical impedance is .
Motor limit and spring selection. The amplitude input is the achieved sinusoidal output force, held constant as frequency changes by shaping the command. It is not the force-command amplitude. At the target frequency, the displayed required command amplitude is . For achieved output amplitude , fixed-output motor velocity is . Maximizing the symmetric force–speed constraint over phase gives . The first crossing defines amplitude-limited bandwidth. The conservative range combines both bandwidth lower bounds, achieved-output travel , and passive energy bounds , , with .
Numerical roots and resonances. Quadratic inversions use the rationalized positive root when the linear coefficient is positive. Frequency charts combine a logarithmic background with points spaced at one twentieth of each narrow resonance's half-width, geometric tails, and the analytically determined force and dynamic-stiffness peak frequencies.
Assumptions
Constant reflected masses and transmission ratio; linear bidirectional series spring; zero initial preload; frictionless normal ground contact with exponent 3/2. Motor and foot initially move together. Impact has no motor command and no gravity; viscous mechanical damping remains. The separate force-control calculation has a clamped output, ideal force sensing, an instantaneous current loop, and PD differentiation of force error. The force-amplitude input specifies achieved output maintained by sinusoidal command-amplitude shaping. Stall force and no-load speed define a symmetric triangular force–speed envelope. Contact stiffness and restitution defaults are illustrative design inputs, not measured material properties.
Where it applies
Results apply to the entered effective coordinate, impact speed and calibrated contact pair. Restitution is calibrated for an isolated unforced contact; coupled-leg rebound generally differs. The spring stores energy and returns it; only contact hysteresis and motor damping dissipate energy. Contact-force peaks and transmission-force peaks are different quantities.
Adaptive Dormand–Prince integration uses the engine's 10⁻⁶ relative tolerance. Peaks are sampled at 1,201 times over an automatically scaled window, and 61 stiffnesses from one tenth to ten times the selected value are solved together. Very brief pulses can be under-resolved; the input condition identifies when the output-mass contact scale has fewer than 12 sample intervals. Small peaks between samples and later impacts outside the observation window can be missed. Playback uses PCHIP interpolation of the solved trajectory and exaggerated displacement in the schematic.
The conservative capacity window combines spring-force and spring-travel energy bounds with the two clamped-output bandwidth limits for the specified achieved output amplitude. It does not impose a contact-force bound; check the nonlinear contact result separately. A selected spring outside that conservative window may still meet the simulated limits because energy is dissipated. The verdict checks achieved-output travel and force as well as passive impact limits. “Capacity limits met” is a sizing assessment for achieved output, not approval of an unshaped force command.
No hard-stop contact, spring stress, fatigue, backlash, Coulomb friction, sensor noise, electrical delay, active impact control, preload, gravitational work, or changing robot-leg geometry is included. High ideal PD gains can predict bandwidth that hardware cannot deliver. The amplitude bandwidth is an achieved-output capacity envelope, not a nonlinear closed-loop tracking simulation. An unshaped command of amplitude A produces A|T(jω)|; resonant amplification can exceed the specified output amplitude and invalidate force, travel and motor limits. For example, a 740 N command at 8 Hz with otherwise default parameters predicts about 815 N output. Use the displayed required command amplitude when targeting an achieved output; amplitude shaping does not remove phase lag, transient overshoot or model error.
Robinson's Table I lists 7.9 Hz, Ω = 4 and 35 Hz; the first two imply about 31.6 Hz, so the check uses the consistent 315 kN/m, 128 kg and 7.9 Hz entries. Williamson's 48.0 rad/s theoretical example excludes gearbox inertia; the measured value is lower.
Frequency-response peaks are evaluated from stationary points of the exact rational transfer functions and inserted directly into the plotted grid. A damping-scaled grid resolves the narrow neighborhood; no interpolation is used to invent an unresolved resonance. Ideal linear resonance gains may exceed motor capacity, so inspect them together with the separate capacity limit.
References
- Pratt, G. A. and Williamson, M. M. (1995). Series Elastic Actuators, IROS, pp. 399–406. https://doi.org/10.1109/IROS.1995.525827
- Robinson, D. W., Pratt, J. E., Paluska, D. J. and Pratt, G. A. (1999). Series Elastic Actuator Development for a Biomimetic Walking Robot, AIM, pp. 561–568, equations 5–6 and Table I. https://doi.org/10.1109/AIM.1999.803231
- Williamson, M. M. (1995). Series Elastic Actuators, MIT AITR-1524, p. 61. https://groups.csail.mit.edu/lbr/humanoid-robotics-group/cog/cog-publications/cog-publications/mattw_ms_thesis.pdf
- Hunt, K. H. and Crossley, F. R. E. (1975). Coefficient of Restitution Interpreted as Damping in Vibroimpact. https://doi.org/10.1115/1.3423596
- Simbody 3.6 documentation, HuntCrossleyForce: nonlinear normal contact force and the small-loss restitution approximation. https://simbody.github.io/simbody-3.6-doxygen/api/classSimTK_1_1HuntCrossleyForce.html
Inputs
| Input | Symbol | Unit | Default |
|---|---|---|---|
| Reflected motor mass Include rotor and transmission inertia referred to the spring's linear coordinate. | m_m | kg | 20 |
| Foot and load mass Effective mass moving on the output side of the spring. | m_l | kg | 2 |
| Motor viscous damping Mechanical damping with the drive unpowered; excludes back EMF. | b_m | N*s/m | 40 |
| Series spring stiffness | k_entry | kN/m | 60 |
| Available spring travel Usable travel from the unstrained position, in either direction. | d_limit | mm | 20 |
| Allowable spring force Use the smaller allowable load of the spring and the transmission. | F_limit | N | 750 |
| Allowable contact force | F_foot_limit | N | 1000 |
| Hunt–Crossley contact stiffness Fit this coefficient to a normal foot–ground impact test. | K_entry | MN/m^1.5 | 5 |
| Impact speed Both masses approach the ground at this speed with the spring initially unstrained. | v_hit | m/s | 0.5 |
| Contact restitution coefficient Restitution of an isolated contact at the entered impact speed. | e_contact | 0.7 | |
| Proportional force gain Unity force feedforward plus PD feedback of force error. | K_p | 8 | |
| Derivative force gain | K_d | s | 0.02 |
| Motor stall force Force available at zero speed, referred to the spring coordinate. | F_stall | N | 1000 |
| Motor no-load speed Speed at zero force, referred to the spring coordinate. | v_free | m/s | 0.8 |
| Achieved output force amplitude Required sinusoidal output amplitude; compensate the command for the closed-loop gain. | F_amp | N | 300 |
| Required force bandwidth | f_req | Hz | 15 |
| Impact time | t_play | s | 0.0305 |
Results
With the default inputs above, the calc gives:
| Result | Value |
|---|---|
| Selected spring capacity assessment | Capacity limits met |
| Conservative capacity window | Capacity window available |
| Conservative lower stiffness | 52.373 kN/m |
| Conservative upper stiffness | 102.3 kN/m |
| Force-control capacity bandwidth | 16.311 Hz |
| Small-signal −3 dB bandwidth | 41.523 Hz |
| Achieved-output amplitude bandwidth | 16.311 Hz |
| Required command amplitude at target | 207.023 N |
| Peak transmitted force with spring | 487.601 N |
| Peak transmitted force without spring | 1,231.042 N |
| Peak spring travel | 8.127 mm |
| Spring-element travel without spring | 0 mm |
| Peak ground force with spring | 509.342 N |
| Peak ground force without spring | 1,354.782 N |
| Peak contact indentation with spring | 2.163 mm |
| Peak contact indentation without spring | 3.912 mm |
| Peak spring energy stored | 1.981 J |
| Energy dissipated during observation | 1.279 J |
| Output impedance at required frequency | 297.123 N·s/m |
Checked against sources
Each case below was calculated by this calc and agrees with the value from its source (within the tolerance where one is shown).
Robinson prototype natural frequency
Source: Robinson et al. (1999), Table I, p. 567: Dynamic Mass 128 kg; Spring Constant 315 kN/m; natural frequency 7.9 Hz. The table also gives Ω = 4 and controlled frequency 35 Hz, which are inconsistent with each other and the 7.9 Hz value; those entries are not used to alter the dynamics.
Inputs: Reflected motor mass = 128 kg; Series spring stiffness = 315 kN/m; the others as above.
| Result | Source | This calc |
|---|---|---|
| Uncontrolled natural frequency | 7.9 ± 0.01 Hz | 7.895 Hz |
Williamson rotary benchmark, linear-coordinate analogy
Source: Williamson (1995), p. 61: theoretical natural frequency 48.0 rad/s from measured torsional stiffness 46 N·m/rad and quoted motor inertia 0.02 kg·m². A 1 m transmission radius gives numerically equivalent linear stiffness 46 N/m and reflected mass 0.02 kg. This checks the published theoretical benchmark; it does not reproduce the lower measured frequency, which includes additional inertia. The 0.05 rad/s tolerance follows the printed one-decimal rounding.
Inputs: Reflected motor mass = 0.02 kg; Foot and load mass = 0.01 kg; Impact speed = 0.1 m/s; Motor viscous damping = 0 N·s/m; Achieved output force amplitude = 1 N; Series spring stiffness = 0.046 kN/m; Hunt–Crossley contact stiffness = 1 MN/m¹.5; the others as above.
| Result | Source | This calc |
|---|---|---|
| Uncontrolled natural angular frequency | 48 ± 0.05 rad/s | 47.958 rad/s |

Responses