Controlling an animatronics bust

While waiting for my shift registers to arrive, I have started working on getting just one motor working reliably using the PID library and PWM. What I have learned is that the H-Bridges just do not respond well to PWM at all. They will not move at all until you reach a PWM of around 60. But this is not linear. Once they are moving, you can decrease the PWM down to about 38 before they stop running again. The speed changes very rapidly above 60, but then very very slowly towards 255.

I think this is why I cannot seem to get the PID library to work. It cannot control the speed as it approaches zero error. However, it seems to just quit trying and leaves the motor position far off the mark. (the motors will whine if a PWM above 0 is commanded to it) The motors do not whine. They act as if they have reached their position.

Unfortunately, I think I am going to have to devise a completely custom system. I will continue to focus on one motor to develop a solution that works before worrying about integrating all 10 motors at the same time.