As a controls engineer, I consider motor friction a thorn in my claw. It has always caused problems to my autonomous steering when the errors are in the motor cmd dead zone. You need compensation biases which must be tuned or high gains combined with fwd path integrations to get your errors minimized. I'm not a fan of differentiating discrete encoder cnts to get speed since it introduces lots of noise and requires filtering but filtering adds lag. So, I envision a complementary scheme that uses back_emf direct speed info to close a high gain speed loop around the motor to minimize the impact of the friction dead_zone. If accuracy is required, encoders can be added , but in a complementary way. Back_emf speed and encoders are blended such that only the low frequency (lagged ) encoder provides scaling accuracy and the derived back_emf speed provides back the higher frequency information lost by the encoder filter but without the noise.
The challenge of this, is of course not a PID task, but getting the timing down to take the back_emf data. I suspect the JAG off time to be less than a ms. Besides, it might simply appear as slope change of the speed to duty cycle transfer function. So power loss should not be significant. We don't like to walk around with our eyes shut, but blinking doesn't seem to matter much.
Quote:
|
I've heard Luminary Micro has firmware that can do this on board the Jag. I could have misheard, though.
|
Yes, the right stuff is packed into the JAG and would be easy to do. Infact we could do away with the Crio and just use the JAG for everything

The availabiltiy of the firmware is the big question. If I sense it will be there, then probably will not mess with the project.