Introduction
Every robot navigates with different levels of control and agility. If a mobile robot’s level of control matches its total possible degrees of freedom, its movement is described as holonomic[1]. When the level of control is less than its available degrees of freedom, its movement is described as non-holonomic. A good example of this is a car. The car has three available degrees of freedom – its position in the XY plane and its orientation. Still, it can only control its movement with two controls – acceleration and steering angle. It’s easy to imagine the limitation this imposes on the available paths a car can follow.

A standard wheel only has one degree of freedom, i.e. it can only rotate about its center. This rotation causes the wheel to exert a force along its tangent on the road. The road exerts a reactionary force due to friction in the opposite direction. The weight of the robot exerts a force downwards on the road. When the force exerted by the wheel is lesser than the frictional force, the wheel rolls. If the force exerted by the wheel exceeds the frictional force, the wheel will lose contact with the road. It will then rotate freely, what we also call as skidding. Next time you are thinking about creating some figure 8s in an empty parking lot, think about this. How much does this force need to exceed the frictional force to make the tires squeal?

We can add another degree of freedom to this standard wheel. This can be achieved by adding a small wheel between the wheel and the road. This setup allows the wheel to roll in a direction perpendicular to the rolling direction of the larger wheel. Now, the wheel can continue rolling along the primary direction of motion by applying a rotational torque. It can also roll in the secondary direction. This is done by applying a lateral force along the rotational axis of the larger wheel. Since we don’t apply any external force to this smaller wheel, it is called a passive wheel.

While this does add an extra degree of freedom, the rolling motion of the larger wheel is uneven. This is due to the cylindrical shape of the passive roller. Also, it is easy to see that one would have to add more such passive rollers along the circumference. This is necessary to achieve this extra degree of freedom at any given rotation of the larger wheel. Furthermore, we can change the shape of the passive rollers. Its profile can exactly match the circumference of the larger wheel. This gives it a barrel shape.

Adding the barrel-shaped rollers helps keep the overall shape of the wheel. Still, there are still gaps between the rollers. In these gaps, the wheel can’t roll freely. One solution explored to solve this problem is to make the rollers as small as possible. This makes the gap between them negligible. Another clever solution to this problem is to simply sandwich two of these assemblies together. Then, rotate them by a fixed angle compared to each other. The rendering shows a wheel configuration with six passive rollers. Choice of a particular configuration will largely depend on cost and application area.

To finish off this section, we will finally try to answer this question. How does this wheel help in making the robot omni-directional? The wheel we arrived at has two degrees of freedom. Adding three such wheels to a robot chassis allows us to add the same two degrees of freedom. This applies to the entire robot as well. To understand how such an assembly would move, let us consider the following scenarios:

Let us start by discussing the easiest scenario (e). In this case, we apply an equal rotation to all three wheels in the same direction. This causes the entire robot assembly to rotate in place. In the rotation amounts are different, the robot will move in a spiral as seen in (f).
In scenarios (a) & (b), we apply opposite equal rotations to two wheels. This pushes or pulls against the third wheel which is unpowered. Due to the passive rollers, this wheel will freely roll in the direction that the assembly is pushing or pulling. In this case, it is along its own main axis of rotation.
In scenarios (c) & (d), different combinations of rotations to each wheel will result in lateral movement of the entire assembly. In fact, we can show that by carefully choosing the right rotation amount and direction for each wheel, we can move the entire assembly in any direction. This does not change its original orientation, making it an omni-directional robot.

Now we have the basic idea in place about holonomic drives and omni-directional robots. We have seen how the omni-directional wheels behave given different inputs. We have also seen how these wheels allow the robot to move in any direction. And we have done so without a single line of mathematics. But as we start to move to the exciting step of modeling the assembly and its behavior in Simscape, we will dive into some of that math. We can’t avoid it.
References
- M. West and H. Asada, “Design of a holonomic omnidirectional vehicle,” Proceedings 1992 IEEE International Conference on Robotics and Automation, Nice, France, 1992, pp. 97-103 vol.1, doi: 10.1109/ROBOT.1992.220328. keywords: {Vehicles;Wheels;Angular velocity;Tires;Kinematics;Jacobian matrices;Friction;Manufacturing industries;Angular velocity control;Mechanical systems},
Discover more from Make, Create, Share!
Subscribe to get the latest posts sent to your email.
