PID in motors and sensors set-up

In the motors and sensors set-up screen in robotC, it gives you the option to checkmark a box labeled PID control. There is also a tab on the same screen labeled PID settings. I just learned PID programming but as far as I know these things are completely unnecessary. I have already written plenty of PID control based code without using these options. Does anyone know what the purpose of these settings are and what they are used for?
Thanks for any feedback!

It simplifies motor control in a classroom setting. Lets say you want the robot to drive straight forward for six feet, without the PID turned on the robot may drift to the right or left due to differences in the motors or friction in the drive. When PID is turned on ROBOTC will compensate for some of these differences. You can write the PID control code yourself, ROBOTC just provides this as an option if you choose to use it. The implementation had some problems in he past when used on competition robots (using PID on the wheels when in driver control causes lots of problems) but I think most of these were resolved in recent updates.

Thanks! This could be a useful to try out.

And if you feel like knowing more about PID algorithm, here is Mr. Pearman’s thread, a very nice PID target programming example, one that got me started: https://vexforum.com/t/a-pid-controller-in-robotc/20105/1

And here’s a tutorial I made on how to make your own PID controller module, very similar to the built in command of ROBOTC PID control. Actually my tutorial function has three parameters, while ROBOTC built in command has one more that allows you to choose how you want to end the loop.

https://www.youtube.com/playlist?list=PLCozfyh08FMgbZWeTbGOMw7o3biDlnvec