Quote:
Originally Posted by JamesBrown
Another concern is that friction between the carpet around the outside and the wheel is much greater than the friction between the plastic and the wheel, this will likely cause less than desirable results if part of your robot is on the carpet.
|
That's the whole point of using the PID. when you hit the carpet, and your equal motor speeds cause robot rotation, the gyro picks it up and corrects by slowing down the more frictionful wheels.
It is correct to say (as above) that you don't have to control the actual heading (called "position loop"), but you could instead control the rate of change of heading ("velocity loop").
many machine tools (milling machines, waterjets, etc) use two layers of PID. one position loop, and one velocity loop "inside" it.
The position loop says "I'm going to need to be here, so go this fast" to the servo amplifier (a fancy speed controller). The Amplifier then says "I need to be going this fast, so I should use this current" to decide what to send to the motor.
Since a First robot may not care about the absolute heading, the position loop can be left out.