Hi Hank,
I agree. Knowing what the motors do is not the same as knowing where the robot is. But it is the basis for knowing it. Slow start and stop as well as the effect of a heavy robot make odometry data more reliable. The biggest contribution to errors will be the fact that the terrain is rather rough. It’s the lawn in my garden.
I bought a Devantech Compass. I hope it will be useful as a key component for adjusting direction drift. David P. Anderson describe method pros and cons on this page:
Then I bought four Devantech SRF05 ultrasonic rangers. With those I might be able to use the ultrasonic fingerprint for landmark identification. I know this is a complex challenge. So before anything else the rangers are of course for collision avoidance.
I have been reading about using PS/2 mouse signals. The first references I read did not look so promising. But I since found that it surely is a possibility. But then – I already got all the logic circuits to implement my idea. I redesigned my project a bit. It's now a regular PID controller. And I find it challenging to implement it. Specs are: 2 x 12 bit encoder readings (mouse is 2 x 8 + 1 bit) The PID loop is 50Hz. The controller is initialized serial by values for Kp, Ki and Kd. When running it receives 7 or 8 bit speed signal and 1 bit direction signal for each wheel. It sends 7 bit signal for the each PWM generator and again one bit for direction.
Hi Bill,
Yes it's an excellent manual. The loop described in the code has to be constantly running or there is a risk for missing counts. But if the PIC should do noting much else, it's an excellent solution. As you can see of the answer above, my mind is pretty much set for trying to build the circuit I have in mind.