Compliance in Robot Legs Jonathan Hurst Outline Introduction What is the long-term goal of this work? Background, motivation What is the intent of this presentation? Running: Spring Loaded Inverted Pendulum (SLIP) Why are real springs important? Future work Current Research Hardware! Simulation and Control (in collaboration with Joel Chestnutt) Future work Introduction The long-term goal is to build a bipedal robot that can walk, run, jump, hop on one foot up stairs, recover from a stumble, and generally behave in a dynamically stable manner The goal of this presentation is to convince the listener of the following: Series compliance is essential for a successful running robot Physically varying the stiffness of this series compliance is useful Running Animals Compliant elements in limbs, used for energy storage Energy consumption is lower than work output The motion of the center of mass of a running animal is similar to that of a pogo stick, and is common to all animals [Blickhan and Full, 93] Running Running is loosely defined Aerial phase Energy transfer The Spring Loaded Inverted Pendulum (SLIP) model [Schwind and Koditschek, 97] closely approximates the motion of a running animal’s center of mass Assumes no leg dynamics at all during flight Assumes lossless, steady state, cyclical running gait Assumes point mass ballistic dynamics for mass Ideal, lossless model SLIP Control inputs: Gait parameters at steady state [schwind, kod, 97]: Leg Touchdown Angle, q Leg Stiffness, K Spring rest position, X Leg + Ground Stiffness Leg Length at the bottom of stance phase Leg angular velocity at the bottom of stance OR Stride Length Hopping Height Leg + Ground Stiffness SLIP: Observations of Animals Animals maintain a relatively constant stride length, and change leg stiffness for these reasons: Changing ground stiffness Different speeds within a gait Changing gravity or payload Ground stiffness changes are a bigger problem for bigger animals[Ferris and Farley, 97] SLIP: stiffness adjustment vs. mass From experimental observations, leg stiffness scales with animal body mass[Farley, Glasheen, McMahon, 93]: Springs in series add as inverses: Ground stiffness changes significantly for different terrain types The lower the leg stiffness, the less global stiffness is affected by changing ground stiffness SLIP: Observations of animal behavior gives us hints, not proofs Do we really need a physical spring, or is spring-like behavior achievable without one? Springs are needed for energetic reasons Springs are needed for power output reasons Springs are needed for bandwidth reasons Energetics Energy consumption should be minimized when designing and building a running robot Tether-free Large payload capacity Long battery life Natural dynamics affect energy consumption Mimicking the control model (SLIP) with the system’s natural dynamics is a good idea. So far, every running robot has used physical series springs. Energetics: CMU Bowleg 70% spring restitution Mass distribution: 0.8% spring 5% batteries 20% entire mechanism 80% ballast Used a spring hanging from the ceiling to simulate operation in 0.35G Tensioned leg spring during flight If a slightly larger motor replaced some ballast weight, the Bowleg could hop in 1G, but not without the spring Energetics: ARL Monopod The most energy-efficient legged robot Running speed of 4.5 km/h Total power expenditure of 48W 10.5 Joules of energy exerted by leg motor in each hop, for 135J of mechanical work Energetics A 4kg robot hopping 0.5m high yields a flight phase of 0.632 seconds Assume stance and flight are symmetrical: Robot with series spring and 70% restitution: Constant force of 40N Work output of 20J Power output of 32W Constant force of 40N Work output of 6J by the motor, 14J by the spring Power output of 3.8W by the motor, 28.8W by the spring Violating the assumption of constant force spring only enhances the difference, favoring the series-spring method Power Considerations Bandwidth Considerations Reflected rotor inertia dominates the natural dynamics Inertia is proportional to the square of the gear reduction Given the following values: Gear reduction = 16 rev/m Rotor inertia = 0.00134 kg-m2 Reflected inertia of the motor is equivalent to leg mass of 13.5 kg Kinetic energy in leg momentum is lost as an inelastic collision with the ground (a highfrequency input) For a 30kg robot, much of the energy will be lost in an inelastic collision, and cannot be recovered through the electric motor Summary of the facts so far: Animals have leg compliance SLIP Stride Length Hopping Height Leg + Ground Stiffness Animals physically vary leg stiffness Series springs are important: Bandwidth Power Energy Further Research I think variable stiffness is important for a human-scale legged robot The extent to which physically variable stiffness is important should be calculable •Can’t make the stride length longer •Can’t lower hopping height •Stiffness is the only thing left! Current Research Actuator with physically variable compliance 2-DOF device, 1-DOF actuator Motor 1: spring set point Motor 2: cable tension=spring stiffness Mechanism Design Cable drive Lightweight – about 3 kg Fiberglass springs for high energy density Spiral pulleys impart nonlinearity to spring function Electric motors allow for precise control Very low friction on the “leg” side of the springs Mechanical Model Motor Position time Leg Position time Control Control Performance We created a plot of comparative max force against frequency. Peak spring force is measured on two models: The dynamic simulation, with physically realistic spring adjustment limits and the controller on M1 An idealized simulation, with no spring adjustment limits and M1 held stationary X2 is forced to a sine function, cycling from 1 to 100 Hz If the Bode plot for the dynamic simulation were divided by the Bode plot for the idealized simulation, this would be the result. Frequency-Magnitude plots Frequency-Magnitude Plots Physical adjustment is limited to 10 kN/m Two discrepancies are apparent: 0.78 is the difference between f=kx, described by the software controller, and the polynomial fit of our physical spring function 0.6 is the difference between the peak forces of the natural dynamics of the two systems System validation We built a simulation of a runner with the full dynamic model of the actuator built in – so it’s almost a SLIP Raibert-style controller commands leg angle, energy insertion for a SLIP Future Work Show analytically how bandwidth is affected by the various parameters and situations of the actuator Calculate the required range of variable stiffness, and rate of change Put a hip on this thing, make it hop Research and implement controllers for hopping height, stride length, speed on a step-to-step basis Working with a team, build and control a running biped that can hop on one foot up stairs