Of course you are correct. Classic robotics is error signal driven.

My problem with PID is my lack of confidence. I do not know the capabilities and limitations of PBP and the 16F887. I have not figured out how to debug the stuff in real time on the bench etc. I have been lazy regarding the 300+ page PIC Owners Manual. I never mastered MPLAB.

Can you point me to some simple PID code in a familiar language - C or C++ (complete with libraries) for example.

Ken