Tools
Humanoid Robot
A humanoid robot built from scratch: teleoperation, vision and voice.
- One of the project’s two named authors
- Android
- 2022
- Archived
- PythonROSOpenCVYOLORaspberry PiArduinoAndroidFirebase
What it was
A graduation project: a humanoid robot built from parts rather than bought. A Raspberry Pi for the body, an Arduino for the base, ROS holding the pieces together, and a Linux machine behind it all.
What it did
Four things, and they are four different problems. It could be driven by a person — a depth camera read the operator's skeleton and a VR headset tracked where their head turned, and the robot copied both. It could see: object detection, face recognition and text recognition, running live rather than on saved frames. It could be spoken to, through Google Assistant. And it could move through a room on its own, off its sensors.
Decisions
Open-source vision, not a trained model. YOLO for objects, an off-the-shelf face recogniser, OpenCV for skeleton tracking. A graduation year is not long enough to both collect a dataset and build a robot, and the interesting half was the robot.
ROS as the seam. Nodes over SSH meant the heavy vision work could run on a laptop while the Pi drove the servos, and either side could be replaced without touching the other.
Teleoperation and autonomy from the same body. The same actuators answer to a person in a headset and to the navigation loop, which is what made it demonstrable — you can drive it when the autonomy is not ready yet.