Panel Cookies
James Bruton’s self-balance robot
1 year ago | Blogs | by: ARDUINO TEAM

Omni wheels, sometimes referred to by the trademarked Mecanum name, are special wheels lined with rollers. Thanks to the orientation of the rollers, a vehicle equipped with four omni wheels (each driven independently) can move in any direction by vectoring each wheel relative to the others. A typical setup includes four omni wheels, but James Bruton proved that even a single one is useful when he built this strange self-balancing bicycle robot.

This robot is part of a larger project exploring full-sized self-balancing bicycles. It’s a small robot meant for experimenting with some unusual concepts. 

The front wheel is an omni wheel with its own motor and an axle that is perpendicular to that of the rear wheel, which is a conventional wheel driven by a second motor. The orientation of the omni wheel means that the robot can move the front end left and right easily, providing the inverted pendulum dynamic for self-balancing. When the robot needs to drive forward or backward, the rear motor provides propulsion and the omni wheel rollers spin freely.

As with other self-balancing robots, this requires fast and precise PID control to stay upright. An Arduino Mega 2560 board takes frequent readings from an IMU (inertial measurement unit) and detects if the robot tilts too far to one side. 

When it does, it turns the omni wheel motor in one direction or the other, measured by an encoder, to correct itself and balance. Commands sent from Bruton’s own custom remote tell the Arduino when it should rotate the rear drive motor. Steering commands influence the balancing routines, allowing the robot to lean or pivot in order to make a turn.


Consider ordering your PCBs starting from 2$ from JLCPCB

1 year ago | Blogs | by: ARDUINO TEAM

Last tutorials

Homemade EGS002 Full SINE Inverter
Digital Spectrometer with Arduino
Homemade Stream Deck with Touchscreen
Noobix - The IoT PCB you need - ESP32
Powerful AC Dimmer circuit TRIAC + potentiometer



PCBWAY PCB service

Curso Arduino Online nivel bajo