ROS Group 产品服务
Product Service 开源代码库
Official website 技术交流
Technological exchanges 激光雷达
ROS Tourials 深度学习
Deep Learning 机器视觉
UC Berkeley's Salto Is the Most Agile Jumping Robot Ever
weijiz last edited by weijiz
Ron Fearing’s Biomimetic Millisystems Lab at UC Berkeley is famous for its stable of bite-sized bio-inspired robots, and Duncan Haldane is responsible for a whole bunch of them. He’s worked on running robots, robots with wings, robots with tails, and even robots with hairs, in case that’s your thing. What Haldane and the other members of the lab are especially good at is looking to some of the most talented and capable animals for inspiration in their robotic designs.
One of most talented and capable (and cutest) jumping animals is a fluffy little thing called a galago, or bushbaby. They live in Africa, weigh just a few kilos, and can leap tall (nearly two meter) bushes in a single bound. Part of the secret to this impressive jumping ability, which biologists only figured out a little over a decade ago, is that galagos use the structure of their legs to amplify the power of their muscles and tendons. In a paper just published in the (brand new!) journal Science Robotics, Haldane (along with M. M. Plecnik, J. K. Yim, and R. S. Fearing) demonstrate the jumping capability of a little 100g robot called Salto, which leverages the galago’s tricks into what has to be the most agile and impressive legged* jumping skill we’ve ever seen.
Useful motion through jumping is about more than just how high you can jump— it’s also about how frequently you can jump. For the purposes of this research, the term “agility” refers to how far upwards something can go while jumping over and over, or more technically, “the maximum achievable average vertical velocity of the jumping system while performing repeated jumps.” So, if you’re a galago, you can make jumps of 1.7m in height every 0.78s, giving you an agility of 2.2 m/s.
To be very agile, it’s not enough to be able to jump high: you also have to jump frequently. A robot like EPFL’s Jumper can make impressive vertical jumps of 1.3 meters, but it can only jump once every four seconds, giving it low agility. Minitaur, on the other hand, only jumps 0.48m, but it can do so every 0.43 second, giving it much higher agility despite its lower jumping height.
Increasing agility involves either jumping higher, jumping more frequently, or (usually) both. Galagos can jump high, but what makes them so agile is that they can jump high over and over again. Most robots that jump high have low agility, because (like EPFL’s Jumper) they have to spend time winding up a spring in order to store up enough energy to jump again, which kills their jump frequency. The Berkeley researchers wanted a robot that could match the galago in both jump height and frequency to achieve comparable agility, and they managed to get pretty darn close with Salto, which can make 1m hops every 0.58 seconds for an agility of 1.7 m/s.
The starting point for Salto’s jumping is common to many jumping robots: an elastic element, like a spring. In Salto’s case, the spring (which is a bit of rubber that can be twisted) is placed in series between a motor and the environment, resulting in a series elastic actuator (SEA). SEAs are nice because they help to protect the motor, allow for force control, let you recover some energy passively, and enable power modulation.
That last one is especially important: power modulation is a controlled (modulated) storing and releasing of power, and in the case of a jumping robot like Salto, it means that you can pump a bunch of energy into winding up a spring over a (relatively) long amount of time, and then release that energy over a (relatively) short amount of time. Many of the most successful jumping robots use elastic actuators to modulate how their actuators deliver power: by using a motor to wind up a spring, and then dumping all of that energy out of the spring at once to jump, robots can be much more powerful than if they were relying on the motor output alone.
Galagos have springs like this in the form of muscles and tendons, but what the Berkeley researchers implemented in Salto was something else that the galagos use to increase their jumping performance: a leg with variable mechanical advantage. The shape of a galago’s leg, and the technique that it uses to jump, allow it to output a staggering 15 times more power than its muscles can by themselves, and this kind of performance is the goal of Salto.
Mechanical advantage is what happens when you use a lever (like a crowbar) to convert a small amount of force and a large amount of motion into a large amount of force and a small amount of motion. What’s unique about Salto’s leg (and the legs of galagos and other jumping animals) is that its mechanical advantage is variable: when the leg is retracted (when the robot or animal is crouching on a surface), it has very low mechanical advantage. As the jumping motion begins, the mechanical advantage stays low as long as possible, and then rapidly increases as the leg extends in a jumping motion. Essentially, this slows down the takeoff part of the jump, giving the foot more time in contact with the surface. When the galago does this, Haldane calls it a “supercrouch.”
This mechanically-advantaged crouching adds 60 milliseconds to the amount of time that Salto spends in contact with a surface during the takeoff phase of a jump. It doesn’t sound like much, and you barely notice while watching the robot in action, but it more than doubles the time that Salto can transmit energy through its leg over a non-variable mechanically-advantaged design, which results in an increase in jumping power of nearly 3x. A Salto-like robot using only a series elastic actuator would be able to jump to 0.75m, while Salto itself (with its variable mechanical advantage leg) jumps to a full meter in height. This is what’s so cool about Salto: you get this massive boost to performance thanks purely to a very clever bio-inspired leg design. It’s not a galago yet, but it does do just as well as a bullfrog:
I guess the other thing that’s so cool about Salto is that it’s already doing Parkour— using a vertical surface that would otherwise be an obstacle to instead simultaneously increase its jump height and change direction. You’ve probably noticed that Salto doesn’t have a lot of sensing on it right now, and its jumping skills are all open-loop. In order to orient itself, it uses a rotary inertial tail, but it’s not (yet) able to adapt to different surfaces on its own.
The next things that the researchers will be working on include investigating new modes of locomotion, and of course chaining together multiple jumps, perhaps with integrated sensing. There’s also potential for adding another leg (or three) to see what happens, but at least in the near term, Haldane says he’s going to see how far he can get with the monopedal version of Salto.
It’s also worth mentioning that Salto’s variable mechanical advantage leg can be adapted to other legged robots that use SEAs, like StarlETH, ANYmal, or ATRIAS, and we’re very interested to see how this idea might improve the performance and efficiency of other platforms.
“Robotic Vertical Jumping Agility Via Series-Elastic Power Modulation,” by Duncan W. Haldane, M. M. Plecnik, J. K. Yim, and R. S. Fearing from UC Berkeley, was published today in the very first issue of Science Robotics.
[ UC Berkeley ]
- The researchers are, in general, comparing Salto to untethered, non-explosive jumpers. Using a tether for power means that you don’t have to worry nearly as much about efficiency, which is sort of cheating. And explosive jumpers (such as Sand Flea and these little rocket-jumpers) are certainly capable of some ridiculous jumping performance, but it’s difficult to compare their energy production to mechanical robots like Salto.