I am currently in the process of learning PID. It’s pretty interesting! I am curious as to how helpful other people on the forums have found it useful for their robot(s) in IQ.
It is good for both auto and driver modes. It makes things a little smoother. A few games ago a team used it to get the arm to be the right height to transfer rings to the post. They also used the sonar on the front to ease up to the field wall to place rings there.
I know we are getting to the point that there is an API for everything. I don’t think you need to be able to code one (so many examples cough Chief Delphi cough Stack Exchage) but knowing how to use one and be able to tune it is good enough.
( Waiting for being able to call VEX:: BRAIN ::WIN(auto) in 2022 )
That would depend on how well the built-in PID works for what you want to control. For many things it will work well enough, for others it may be better to write your own PID routine.
The team that did the PID for their arm was one of my 5th grade teams.
The key to auto routines is having sensors to help with the positioning. For direct drive (arms) the motor sensor will work. But for wheels you need additional sensors. On a drive base you are fighting wheel friction against the floor tiles and that can change slightly from field to field.