Originally Posted by GeeTwo
The biggest reason is the carpet. Almost any surface pair will have a larger coefficient of static friction than of dynamic friction due to developing bonds between the two surfaces. In the case of carpet, it deforms relatively slowly and rebounds inelastically, so the net friction rises as speeds decrease. I suspect that carpet fibers also work their way into any crevices in the wheels over time, furthering this effect.
So, I did a bit more investigation today, and it appears that the net friction does indeed decrease as velocity increases, however this decrease appears to be very nearly linear (as can be inferred from the near-perfect linearity of the earlier plot).
To be more specific, assuming the CIM specs used in the WCP drivetrain calculator are correct, the voltage required to overcome frictional losses on our practice bot drops from ~1.2V at velocities near 0, to ~.8V at velocities near max speed.
I will report back on how well our calculated "1.2V" figure corresponds to the actual torque required to move the wheels of the robot at rest once I get my hands on a torque wrench. Unfortunately, I can't think of any way to directly measure this value at speed, so I'm not sure how to test if this decrease is actually a decrease in the friction forces, or rather is simply a result of the CIM specs not being quite right. If anyone has a clever idea for this, let me know. The good news is, well, it really doesn't matter
, pragmatically, which it is - since everything appears to be linear, we can easily just roll everything into the feedforward regardless of where it comes from.
It will be interesting to test this on other robots, and see if we obtain similar results.