There's a bunch of ways to go about this, but the basic idea is to define some set of controls that allow you to 'tell the robot to point at a particular direction'. Once you have that, you can:
- Determine the robot's current angle (using a Gyro/NavX)
- Determine the offset angle from your target (via GRIP/whatever)
- Tell the robot to go to (current angle + offset)
For an example of using PIDController + NavX in pyfrc simulation to 'go to a particular angle', see this example:
https://github.com/robotpy/robotpy-w...otate_to_angle