At one point I programmed a robot that would gradually change speeds, so that instead of going from stop to max power (or what ever) it would gradually increase in speed. I had a single task that would watch for a request to change speeds and that task would gradually (controlled by a variable) change to that speed.
It makes the robot more graceful, I think. It also stops you from just running into things at a fixed speed, sort of. If I put it in a corner, or near a wall… since it took a second or two to get going… it’d bump into things going slowly. Also had a sonar sensor that would try to slow it down when it got close to things.
I think the answer is that a mix of wot and anything in between is important. It’d be different for every robot and probably different even for different parts. I imagine you’d want your transmission to be able to go at full speed, but if your claw isn’t geared down… why bother running wot?
My take on it is go as fast as possible to do as much as possible in autonomous, but also keep the speed reasonable so as to maintain a good degree of consistency so that the bot is +/- an inch or so every single time which is about as accurate as you need to be in this game. We personally have the bot going full speed for the middle distance but switching to half-speed before stopping
575’s auto line-following code adjusts speed for how “centered” the robot is on the line. If it is right on track it goes full speed, if it is off course, it goes very slowly. It can be disconcerting to watch. You never saw this at Redmond, because they didn’t enter the Programming Challenge. It’s really obvious when they are going from one side of the field to the other in line-following mode.