Companion post
This post is the hardware-focused companion to Tigrillo — a bio-inspired compliant quadruped. There, I covered why the robot exists. Here, I’ll walk through what’s inside.
Mechanical properties
Tigrillo is a compliant quadruped — that’s the whole point. Compliance is implemented with detachable springs and dampers on the knees, so the passive stiffness can be changed in minutes with a screwdriver and a stock of calibrated springs. Each leg has one under-actuated knee and one actuated hip.
The rest of the mechanical design was constrained by three requirements: cheap, reproducible, versatile. The robot weighs ~950 g and fits in a 30 cm × 18 cm box. All mechanical parts are 3D-printed or laser-cut, and the BOM was documented and released on GitHub so anyone in the HBP could rebuild one.
Electrical architecture
- Four Dynamixel RX-24F servomotors (one per hip), chosen as a compromise between weight, torque and fast rotation speed.
- Four analog Hall-effect knee-angle sensors, each built around rare-earth magnets attached to the leg and a Hall sensor on the body. The sensor’s transfer function is non-linear and requires a per-leg calibration table.
- IMU for the body (roll/pitch/yaw), force sensors on the feet for ground-contact detection.
- Power supply: LiPo battery feeding a DC step-up converter that provides 12 V at up to 10 A peak to the motors.
Software architecture
- Low-level board: a Robotis OpenCM (ARM Cortex-M3) reads the analog sensors, talks to the Dynamixel servos, and publishes position / velocity / torque commands at high rate.
- High-level board: a Raspberry Pi 3 running Ubuntu Mate 16.04 and the Robot Operating System (ROS). The CPG controller and the neural-network layers run here and stream commands to the OpenCM over USB.
- Off-board: a desktop computer runs the training and monitoring stack, connected to the robot over ROS topics on Wi-Fi.
The clean separation between the three boards made the sim-to-real transfer much easier: everything above the OpenCM can be swapped with a simulator, and the low-level board sees no difference.
Code and documentation
All software is open-source on GitHub, along with the PCB designs and the mechanical files:
- gurbain / tigrillo — software stack, ROS packages, controllers.
- Tigrillo board documentation — schematics and BOMs.