Quote:
Originally Posted by rawrxp
PID (stands for proportional, integral, and derivative) is a control loop where the feedback is used as an adjustment for the next iteration.
|
If your control algorithm does input/process/output, then the feedback is used as an adjustment for the present iteration.
Quote:
|
the sensors that you stated will give you back a current value. You can subtract your current from your setpoint to get your error.
|
the OP may think you are talking about amps here.
Quote:
|
The way that most people understand PID is thinking about it as a function graph where the x-axis is the number of iterations and the y-axis is your error (setpoint - current). Now this function (let's call it f(x)) is your basic function for your error versus iterations that is constantly growing as your PID loop continues.
|
The error should be decreasing, not growing, if the controller is working properly.
Quote:
|
You add all of these together to get a PID value to send to your motor.
|
True for the WPILib Java implementation, but other languages (like LabVIEW) use a different form of PID. The 2013 WPILib PID also has a feedforward term.
Quote:
|
Now, the proportional value is pretty self-explanatory. It decreases as the error becomes smaller or as you approach your setpoint. Thus, it gives a huge boost at the beginning and reduces its effectiveness as the error decreases. A P-only loop will result in oscillation.
|
Not true as an unqualified general statement. It depends on what you are controlling, and how high you crank up the gain.
Quote:
|
The integral term ... can "predict" where the power level will go next and try to compensate.
|
I think you are confusing the integral term with the derivative term.