Here’s a linear optical encoder made from printer parts, a PIC 18F4520 MCU, and an L298 motor controller:
The goal of this tutorial is to create a way to know where the ‘stage’ is, accurate to about 1/4” using optical encoding. The stage is controlled via a 12v motor so we will use an L298 motor controller for controlling the motor via a 18F4520 PIC.
The PIC will use hardware PWM generators to output the correct frequency & duty cycle. The PIC will also take the analog input from the IR detector diode to keep track of how far the stage has moved via an internal analog to digital converter (ADC).
How To: DIY quadrature encoder
HOW TO – Make an Optical Encoder
4 thoughts on “Linear optical encoder from printer parts”
Surely you could get much more accurate positioning by using the optical grating strip and the detector unit from a scrapped ink-jet printer? Most ink-jet printers use a DC motor to move the printhead left/right, and use an optical sensor system to measure its position. Couldn’t that be reverse-engineered and re-used somehow?
Ive used them for a moderate resolution Digital Readout using code by Steve Lindsay (http://www.lindsayengraving.com/other_interests/dro.html) running on a junk 386 laptop. About as cheap as it gets for DRO.
Comments are closed.