hoverhand

A 30 cm humanoid robot that flies on fans in its feet and uses its hands in the air.

I started with Microban, an open-source humanoid from the Rhoban team. I put a 102 mm ducted fan in each foot and two 127 mm rotors on its back. Each forearm has a gripper. The robot weighs 1.47 kg.

A hand-written controller flies the robot. A small neural network adds a correction to the thrust of each rotor. I trained that network with reinforcement learning.

Simulation only · the hardware build is next

Flight

The robot starts on the floor with its motors off. It takes off, flies to four points and lands on a new spot. Its arms move and its grippers open and close during the flight.

Simulation replay at real speed · hand-written controller with the learned correction

Results

It holds still while its arms move

When an arm moves, the center of mass moves too, and the arm pushes back on the body. In a 27-second test, the robot reached out, swung its arms fast and used its grippers. The hand-written controller kept it within 1.5 cm of its hold point during the reaches. During the fast swings, it stayed within 0.88 cm.

It keeps flying when a fan gets weaker

At 6 seconds, the right foot fan drops to 80% of its thrust. The controllers get no signal about this. The hand-written controller alone loses control 5.5 seconds later. With the learned correction, the robot gets to three of the four points within 10 cm. Then it lands upright, 5.4 cm from its target.

The correction has a cost. With all fans healthy, it tracks the route a little less closely: 5.2 cm RMS, against 4.4 cm without it. But it lands much closer to the spot: 1.1 cm, against 19.1 cm.

It learned this in training

The network trained on 4,096 simulated robots at the same time. Training took about 25 minutes on one GPU. In one of every four training flights, one rotor lost 10–25% of its thrust. The first saved versions crashed on the test route. From 17 million training steps on, every version landed.

Every result on this page comes from one run of one route in a physics simulator

Next

Build the real robot in 24 weeks

The simulation shows that the idea can work. Now I must build the robot and measure it. I will test the biggest unknown first: how much thrust a real foot fan makes. The goal is one full flight: take off, pick up a 20–30 g object, put it down at a new place, and land.

Weeks 1–4

One foot fan on a thrust stand.Build one foot fan. Measure its thrust, current, speed and spin-up time.
If it makes less than 7.0 N, change the propeller, the weight or the foot size

Weeks 5–8

The legs on a tether.Attach the legs, all four rotors and a dummy torso with the correct mass. Fly them on a tether inside a net.

Weeks 9–14

The whole robot on a tether.Run the same arm movements as in the simulation. Compare the drift and tilt with the simulation. Fix the model, then train the correction again on measured data.

Weeks 15–24

Free flight with a grasp.Fly free inside the net. Take off, fly to a stand, pick up the object, put it down at a new place, and land.

The robot stays on a tether until the last stage · hardware kill switch, eye protection and a fireproof battery bag · I will publish the CAD, code, logs and videos

Where it can go after that

The robot is small. It flies for about four minutes, and its grippers hold 20–30 g. But the idea can grow: a robot that flies to a place that is hard to reach, lands on what is there and uses its hands.

Now

Disaster sites

A small robot can fly over a gap and land on debris. Each leg finds its own footing. Then it turns off its fans and works as a camera or a radio relay.

Next

Power lines and towers

A larger version can land on a tower with its legs. It stops its fans and works with two hands. That uses almost no power.

Long term

Space

Fans do not work in a vacuum, so a space version must use cold-gas thrusters. The hard part stays the same: steer a body with moving limbs, and stay in control when a thruster fails.

  1. Simulation
  2. Earth flight
  3. Air-bearing table
  4. Reduced gravity
  5. Cabin, on fans
  6. Vacuum, on thrusters

Steps 03 to 06 are years away · the first step there is software: run this controller on an existing free-flyer testbed