You can use a PIDController class or a PIDSubsystem (for command-based programs). The input is the potentiometer and the output is the speed controller. You need to choose PID values that scale the inputs (0-5V) to match the required motor value outputs (-1 to 1).
You can see the pot values using the SmartDashboard in test mode to help you come up with the correct values. You can also put the PIDController to the SmartDashboard so that you can tune the PID loop from the computer.
http://wpilib.screenstepslive.com/s/...smartdashboard
Brad