A ball drive, often linked to the Killough omnidirectional platform, is a robot drive system that can move in any direction on a flat floor without first turning its body. Instead of using standard wheels pointed forward, it uses angled omni wheels or rollers to push on a sphere or to drive the chassis through combined wheel forces. This matters because robots in tight spaces, game fields, labs, and service environments need smooth sideways, diagonal, and rotational motion.
The design turns wheel speeds into a controllable motion vector for the whole robot.
Understanding Robotics: Ball Drive (Killough Platform)
Each powered wheel can only push effectively in one preferred direction. The rollers around an omni wheel let it slide more freely sideways. This is the key mechanical trick.
The control system treats each wheel's push as one part of a larger force. Some parts add together and some cancel out. A sideways command may require one wheel to speed up while another slows down or reverses.
A turn command is different. The wheels create pushes around the robot's centre, producing a twisting effect.
The controller converts the desired forward speed, sideways speed, and turning speed into separate motor targets. This conversion depends on the exact wheel angles, the distance from each wheel to the centre, and the wheel radius.
The robot must know which way its body is facing before it can travel in a chosen field direction. Suppose a robot is facing east but must move north. Its wheel commands cannot be calculated as if its front already faced north.
The software first changes the northward field command into forward and sideways directions relative to the robot body. This is often called field oriented control. A gyroscope or inertial measurement unit supplies the heading estimate.
If that estimate drifts, the robot moves at a slight angle even when the driver gives a straight command. Teams commonly reset the heading before a match or run, then check it again after impacts.
Real motion is less perfect than the geometry suggests. Omni rollers reduce sideways resistance, but they do not remove it completely. Dust, loose carpet fibres, uneven floor joints, and hard acceleration can cause slip.
A light robot may skid during a fast turn. A heavy robot can lose speed because its motors must overcome greater inertia. Wheel compression matters too.
If one wheel carries less weight, it has less grip and contributes less than expected. A ball-based version has an extra challenge because the sphere must maintain reliable contact with its driving rollers.
Small changes in pressure or alignment can change the motion. Good designs keep the centre of mass low, spread weight across the contacts, and use a rigid frame so wheel angles stay fixed.
Students usually meet this topic when programming a competition robot or building a classroom vehicle. The useful skill is not memorising one set of motor numbers. It is learning to test a motion command, observe the result, and correct the model.
Start with slow forward, sideways, and turning tests. Mark the floor with tape and measure how far the robot drifts. Check that wheel motors spin in the expected direction.
Then tune acceleration limits so commands do not demand more traction than the floor can provide. Encoders can measure motor rotation, while a gyro can correct heading, but neither sensor automatically guarantees accurate position. Careful calibration, repeated tests, and realistic speed limits make omnidirectional control much more dependable.
Key Facts
- Omnidirectional motion means the robot can control vx, vy, and omega independently on a flat surface.
- For a symmetric 3-wheel Killough platform, wheel speeds combine to create translation and rotation.
- Robot speed magnitude in the plane is v = sqrt(vx^2 + vy^2).
- Robot angular speed relates to heading change by omega = dtheta/dt.
- Ideal no-slip rolling gives v_contact = r omega_w, where r is wheel radius and omega_w is wheel angular speed.
- For three drive directions 120 degrees apart, balanced equal wheel speeds often produce mostly rotation, while different speeds produce translation.
Vocabulary
- Killough platform
- A three-wheel omnidirectional robot base that uses angled omni wheels to create motion in any direction.
- Omni wheel
- A wheel with small rollers around its rim that can drive along one direction while sliding freely sideways.
- Drive ball
- A sphere pushed by powered wheels so that its rotation produces motion of the robot or contact surface.
- Velocity vector
- A quantity that gives both the speed and direction of motion of the robot.
- Inverse kinematics
- The calculation that converts a desired robot motion into the individual wheel speeds needed to produce it.
Common Mistakes to Avoid
- Treating omni wheels like normal wheels is wrong because omni wheels can roll freely sideways due to their small rollers.
- Ignoring wheel angle is wrong because the force direction from each wheel depends on how the wheel or roller axis is mounted.
- Assuming the robot must face the direction it moves is wrong because a Killough or ball drive can translate sideways while keeping the same heading.
- Forgetting slip and normal force is wrong because real ball drives need enough wheel pressure and friction to transfer torque without skidding.
Practice Questions
- 1 A ball drive robot has vx = 0.60 m/s and vy = 0.80 m/s. What is the magnitude of its translational velocity?
- 2 An omni wheel of radius 0.050 m spins at 20 rad/s with no slip. What is the contact speed produced by the wheel?
- 3 A three-wheel Killough robot is commanded to move directly sideways while keeping its heading fixed. Explain why at least two wheel speeds must differ and why the robot does not need to rotate first.