Encoder

A shaft encoder can be transmittive or reflective. A transmittive encoder uses slots or holes cut in the wheel and shines the light through, with the non cut areas breaking the beam. These are most often used in computer mice, there is not much cleaning needed on the signal because the difference between hole and solid is absolute. The problem with this solution is my drilling hand isn't that accurate, the holes have to be accuratly drilled at evenly spaced gaps around the wheel, and there would be some electronics inside the cage.

A reflective wheel uses the emitter and sensor on the same side and reflects the light from a reflective surface. This is by far the easier solution, as the surface can be printed and prepared without damaging the wheel, enabling several attempts to be made until the right combination is come across. Also all the electronics stay outside the cage behind the wheel