Sunday, October 14, 2012

Robot Omniwheels

For my senior project, I'm working a robot that balances on a ball to move (ie. a ballbot):

A rendering of my robot's drive assembly -- the motors,  gearboxes, wheels, and the ball it balances on are pictured.

The robot is not statically stable -- there is no orientation for the robot to sit on the ball so that it stays balanced without any movement of the wheels on the ball. It is therefore necessary for the 'bot to have some complicated electronics to stay balanced.

It needs an Inertial Measurement Unit (IMU) with some gyroscopes and accelerometers on it to compute its current angle and speed relative to the ground, and it has to move the wheels according to a control system so that the ball remains under the robot (to stay balanced) or slightly off-center so that the robot moves. I'm going to stop talking about the control system because I haven't really put much more thought into it beyond the preceding two paragraphs (OK, I have, but I don't want to look like an idiot on the internet).

What I have put some thought into, though, is the wheels. Those little cylindrical pieces hugging the ball aren't your run of the mill wheels. The robot has 3 wheels, and if two of them rotate in opposite directions while the third is stationary, the robot will move straight in one direction. However, the stationary wheel shouldn't oppose the motion of the 2 other wheels -- it has to have rollers on it so that it can also move laterally to the normal direction of motion. People have come up with omniwheel designs for this exact purpose:

A typical omniwheel design has rollers on the wheel that allow for lateral movement -- when the wheel moves through the axis of rotation, the small roller it is resting on spins.

We're not using run of the mill wheels, and we're not even using run of the mill omniwheels. An important characteristic of omniwheels is the contact surface of the wheel with the surface it is rolling on. The above omniwheels have non-continuous contact surfaces: as the wheel rotates, the wheel loses contact with the ground because of the gaps between the rollers. It turns out that it is very hard to construct a wheel with a continuous contact surface, but such a design was patented in Japan in 2001: 
Japanese Patent Publication # 2001-191704. The magic here is that the contact surface is continuous -- when you look at the wheel from the top down view (as seen here), it looks like a perfect circle.
There have been two teams have have built omniwheels according to this design, a Swiss team and a Japanese team:
The Swiss ReZero robot wheel assembly.
The wheel assembly of the robot designed by Kumagai and Ochiai, 2010

Our wheel assembly is very similar to the one created by both groups:

A Solidworks screencap of our wheel. Three of the rollers are transparent to display  more detail about the inside of the wheel.
We've already started manufacturing the wheels; I'll put up more pictures as the construction progresses.


  1. Is there a specific kit that you can buy to make the omniwheels? I am part of an electrical engineering senior design team that is trying to design a balance ballbot and we can't find these types of wheels anywhere.

  2. Do you have some specification of these wheels? I would need it with outer diameter cca 100mm, made of metal, with bearings.

  3. Hello, can you please provide me with the CAD model of your ball bot, or at least give me some guidance regarding the omniwheel and ball constraints as given by you in the final assembly.