Engineering
Load-assist exoskeleton
Lift a box off a pallet in a bright warehouse and see where the load goes. A planar mannequin - shank, thigh, pelvis, trunk, arms - follows a smooth minimum-jerk lift, and inverse dynamics gives the moment every joint must carry; at rest it is exactly the static moment of the body and box beyond the joint. The exoskeleton is a torque pair between trunk and thighs: a passive spring hands back exactly the energy it stored in the bend, an active drive takes a share of the lumbar moment, up to its torque limit and a delay late. Compare no exoskeleton, passive and active on the board, a stoop against a squat, a near box against a far one: watch the lumbar moment, the L5/S1 compression estimate, the squared-moment effort and the centre of pressure under the feet, while the human’s and the exoskeleton’s work add up exactly to the energy of body and box.

What happens
A planar mannequin of 75 kg and 1.75 m (Winter’s tables), feet fixed: shank 0.43 m, thigh 0.43 m, pelvis 0.10 m, trunk with head 0.42 m, upper arms 0.33 m, forearms 0.32 m, one chain from the ankle to the hands; the box is a point mass in the hands, taken from a pallet (0.32 m high, 40–60 cm ahead of the ankle) to the carrying position. The angles of legs, pelvis and trunk go from the start posture - stoop: knees nearly straight, trunk at 100°; squat: knees bent 130°, trunk at 52° - to upright along one minimum-jerk profile s = 10u³ − 15u^4 + 6u^5; the hands follow the shoulder plus a reach vector interpolated in s from the box to the carry point (arms by two-link inverse kinematics, differentiated exactly); then the box is held for 1 s. Inverse dynamics: τ_j = Σ_(i beyond j) [I_i·α_i + (r_i − r_j) × m_i·(a_i + g)], exact from closed-form positions, velocities and accelerations; at rest it is the static moment g·Σm_i·(x_i − x_j). The exoskeleton is a torque pair between trunk and thighs, so it relieves hip and L5/S1 by the same amount: passive τ = k·max(0, θ − 0.2 rad) on the trunk-thigh flexion θ (k = 30 N·m/rad); active τ = a·M_L5(t − delay), limited to 0…limit (a = 35 %, 80 N·m). Effort = ∫ Σ τ_j² dt over the six human joints; lumbar compression F = M_L5/d + W_up·cos(trunk) with the back muscles’ arm d = 5 cm; the centre of pressure from the ankle moment. Each 2 ms sub-step is integrated by 3-point Gauss-Legendre quadrature, split exactly where the integrands have kinks (bisection), so W_human + W_exo = ΔE_potential + E_kinetic to round-off, and the passive work is exactly ½k·(θ0 − 0.2)². Default stoop, 15 kg at 45 cm in 2 s: peak lumbar moment 227 N·m, compression 4.5 kN; passive −22 %, active −35 %.
Try this
Run the stoop lift without the exoskeleton and read the peak lumbar moment and compression; switch to the passive spring and the active assist and compare the three curves on the board; add a control delay and watch the early peak come back; try the squat, a far box, a heavier box or a faster lift and watch the centre of pressure reach the toes.
The model and its limits
A planar, symmetric mannequin from segment tables, not a biomechanical model of a person: rigid links and hinge joints, a prescribed lift (inverse dynamics, so the motion error is zero by construction), no muscles, co-contraction, spine segments or soft tissue; the lumbar compression is a static single-muscle estimate; the feet are fixed (the centre of pressure and the friction needed are reported, not enforced); the box is a point mass in the hands; the exoskeleton is a massless ideal torque pair without pad forces, slippage or motor dynamics. No injury assessment and no medical or ergonomic advice.
Equations used in the module
Equations τ_j = Σ_(i>j) [I_i·α_i + (r_i − r_j) × m_i·(a_i + g)], at rest τ_j = g·Σ m_i·(x_i − x_j) s(u) = 10u³ − 15u^4 + 6u^5, q(t) = q0 + (q1 − q0)·s(t/T), dynamic part ∝ 1/T² τ_exo = k·max(0, θ − θ0) or a·M_L5(t − Δ) in [0, τ_max], M_human = M_L5 − τ_exo, F_L5 = M/d + W·cos β W_human + W_exo = ΔE_p + E_k, W_passive = ½k·(θ_start − θ0)², effort = ∫ Σ τ_j² dt


