Humanoid-Drone Takeoff
First ever drone launch from a humanoid robot.
Overview
The purpose of this project was to show how a multi-robot team could perform a complex task such as search and rescue. In this case, a humanoid robot would navigate to a location, deploy a drone, and the drone would then take off and survey the area. For this project, we used a Unitree G1 Humanoid robot and the custom M4 driving and flying robot.
My role in this project was in developing the drone deployment maneuver and attachment/detachment mechanism. This involved trajectory planning, control design, hardware design, and testing.
This project was featured in Caltech’s front page news: Caltech and Technology Innovation Institute Demo Multirobot Response Team.
Control Design
Since the bending-over maneuver significantly shifts the humanoid’s center of mass (COM), we designed a model-based controller that carefully controls the COM position to avoid tipping over under disturbances. Briefly, we used inverse kinematics offline to synthesize a whole-body trajectory and used a single rigid body (SRB) MPC to track the trajectory online. We tested the performance of the controller in simulation before deploying it on the real robot.
Humanoid-Drone Interface
For the drone deployment, we designed a custom lightweight backpack that securely holds the drone during locomotion and the bending-over maneuver. The backpack weighs only 0.9 kg and features a servo mechanism to lock and release the drone for flight. The backpack itself consists of a custom PCB that interfaces with a Teensy microcontroller to receive commands from the humanoid’s main computer and four servos to lock and release the drone.
Testing
We tested the humanoid’s bending-over maneuver under various disturbance conditions to ensure robust performance before deploying the drone. Finally, we tested the full system in the Caltech CAST arena before the final deployment.
Team
Adrian and I led the drone deployment project as part of the larger multi-robot systems effort.