Skip to content

Upkie

Open-source wheeled biped robot with wheels for balance and legs for uneven terrain, controllable in simulation and on hardware.

  • Other
  • Open source

Suggested by Robotheca, created by @upkie (opens in a new tab), from github.com/upkie/upkie (opens in a new tab). Pinned to commit ffa9e4d (opens in a new tab).

Photo

This repository has no photo of the robot yet.

What it can do

Written by Robotheca from the project's documents.

  • Balances as a wheeled inverted pendulum using wheels, and walks or locomotes with its legs for uneven terrain.
  • Can be steered with a gamepad joystick, with an emergency stop button.
  • Supports Python and C++ development, with behaviors deployed to the onboard Raspberry Pi.
  • Runs the same Gymnasium environment code in simulation (PyBullet) and on the real robot (Spine).
  • Includes example behaviors such as lying genuflection, model predictive control balancing, and PD wheel-velocity balancing.

Bill of materials

This repository has no parts list Robotheca can read yet.

Build guide

The guide appears here as you scroll.

Guide by @upkie (README.md), under Apache-2.0.

More guides

Wiring and electronics

Notes written by Robotheca from the project's documents.

Main parts

  • Raspberry Pi as the onboard computer.
  • Pi3hat board mounted on the Raspberry Pi to drive the actuators over CAN.
  • Mjbots moteus brushless servos (mj5208) driving the wheels.
  • Qdd100 actuators for the hip and knee joints.
  • Power distribution board feeding the actuators.
  • Battery connected through an XT90-S connector, with XT30 cables inside the robot.
  • IMU mounted on the head plate.

Connections

  • The left hip qdd100 connects by CAN to the pi3hat JC1 port using a comms cable.
  • The right hip qdd100 connects by CAN to the pi3hat JC3 port using a comms cable.
  • Each qdd100 is powered from the power distribution board using a torso power cable.
  • Leg comms and power cables run inside cable sleeves through the tibia and femur to the wheel motor and knee motor.