Wheel encoders - 2nd version
Left: After removing the home brew version with the rotating cylinder and opto interupter type sensor, which became useless when clogged with the fine cat litter dust in the bathroom area, I went to a commercial shaft encoder. Made of the more expensive optical type, The model I chose was the Grayhill 63R256, which I bought from Digikey for about $80. Totally sealed it is impervious to dust and produces beautiful wave forms which are very uniform due to the internal drivers and Schmidt triggers. Counting this type of pulse is easy for a processor, the individual pulses - 256 per revolution - are about 5mS wide when the robot is moving full speed.
In this photo, you can see the red encoder on the right wheel, mounted on an aluminum bracket. The pulleys which are on both the wheel and encoder were from ACE hardware and are Arcadia door track rollers. The belt is butyl rubber for minimal stretch. Again, because of the fact that the robot cannot be guaranteed to move in a straight line on a home floor with tiles, litter granules or slippery spots beyond about 6 feet, you only really need the encoder on one wheel and simply select the motors to run similar in speed by buying precision motors. Extensive experiments as you have seen showed that by driving both wheels the exact same speed did not in any way make the robot move straight for any distance in the home. Straight line navigation will be dealt with later with other sensors.
Movies of the robots current capabilities.
Here we see the robot making two 90 degree turns on a piece of the exact floor tile - parquet wood that the robot is to be used on. Other surfaces yielded completely different rotations because of the amount of slippage varies from say tile to carpet.
Here the robot goes out about 10 feet, makes a precision 90 degree turn and returns within inches of the starting place. You can see the robot actually wandering back and forth a bit on its travels, in response to the irregularities of the wood floor surface. This is life - this is the surface it must work on and we must be able to work around the limitations of in home navigation like this so the robot can successfully move about accurately in the home doing its task. (I think that will be transporting of the bathroom waste basket to the big bag in the kitchen...)
Next on the list - Hall effect sensors on a stasis wheel.