Difference between revisions of "Phidgets PID"
(→PID Calibration) |
|||
Line 7: | Line 7: | ||
* [http://wiki.ros.org/differential_drive/tutorials/setup ROS PID Tuning] | * [http://wiki.ros.org/differential_drive/tutorials/setup ROS PID Tuning] | ||
+ | ** A quick and dirty tuning experiment | ||
+ | *** Target linear speed 0.2 m/sec, angular 0.2 radians/sec | ||
+ | *** Definite oscillation with P = 60. | ||
+ | *** Set P to 1/2 of that or 30 | ||
+ | *** Tried a I of 60 | ||
+ | ** See [[Phidgets PID Tuning]] | ||
+ | |||
* [https://en.wikipedia.org/wiki/PID_controller#Manual_tuning Manual PID Tuning] | * [https://en.wikipedia.org/wiki/PID_controller#Manual_tuning Manual PID Tuning] | ||
Revision as of 12:47, 20 September 2017
References
PID Calibration
- ROS PID Tuning
- A quick and dirty tuning experiment
- Target linear speed 0.2 m/sec, angular 0.2 radians/sec
- Definite oscillation with P = 60.
- Set P to 1/2 of that or 30
- Tried a I of 60
- See Phidgets PID Tuning
- A quick and dirty tuning experiment
"If the system must remain online, one tuning method is to first set K_i and K_d values to zero. Increase the K_p until the output of the loop oscillates, then the K_p should be set to approximately half of that value for a "quarter amplitude decay" type response. Then increase K_i until any offset is corrected in sufficient time for the process. However, too much K_i will cause instability. Finally, increase K_d, if required, until the loop is acceptably quick to reach its reference after a load disturbance. However, too much K_d will cause excessive response and overshoot. A fast PID loop tuning usually overshoots slightly to reach the setpoint more quickly; however, some systems cannot accept overshoot, in which case an over-damped closed-loop system is required, which will require a K_p setting significantly less than half that of the K_p setting that was causing oscillation."
Other PID References
- PID Controller Theory and Tuning
- Using PID based Techniques For Competitive Odometry and Dead-Reckoning G.W. Lucas