Hello, As a means of obtaining odometry information from my robot, I have opted to use a few hard drive motors from some discarded drives.
So far I have disassembled my Fracmo wheelchair motors removing the wheel brake assembly. I had to disassemble one of my motors completely to reattach some magnets that separated from the casing.
Also I did a little analysis to figure out how many pulses the hard drive motors put out per revolution. After spinning the motors at a few different speeds, and determining the frequency on an oscilloscope I managed to figure out that the motors were 12-pole, 3-winding motors i.e. 4 pulses per winding per revolution times 3 windings equals 12 total pulses per revolution.
Well, 12 pulses is not the resolution that I would like. I want about 360 pulses per revolution, so that means driving the hard drive motor at a 30:1 ratio. After removing the wheel lock on the back of the Fracmo motors, I realized that would be a great place to mount the encoder, not only that but the gearbox on the motor turned out to be 30:1! that means I will get 360 Pulses per revolution and a nice place to mount the encoder.
As far as reading the pulses, I am copying the circuit posted in this Instructable:
http://www.instructables.com/id/HDDJ-Turning-an-old-hard-disk-drive-into-a-rotary/Although I am building a dual LM324 board to handle both motors. The output of the LM324 will be fed to an Ethernet connected Arduino which will publish the odometry information in ROS.
My next step, aside from reattaching the motor magnets is to design and build a mount for the encoders, and to interface them with the Fracmo motor shaft.
I will keep posting updates as I progress. For now I have attached a few pictures of the motor tear-down.