|
Re: Bench top setup for demonstrating PID
A 'pure' PID controller can act as a velocity controller if both of the inputs (setpoint and process variable) are velocity. In this case, D will be unused, I will act as P, and P will act as D. The issues come when the PID class has additional logic to handle the I term, such as resetting the integral when the error zero-crosses, capping the integral, etc. - I've heard the Jaguars reset I under some conditions, although I've never verified this.
Every time I have worked with a speed controller, attempting to adapt a position controller has always failed to meet the design requirements, and I design a better controller to handle it (usually incorporating some application-specific limiting of the integral term). Adding a Feed Forward term also helped with response time and oscillation.
Basically, what I'm saying is, don't be afraid to write your own PID math and not use the per-existing class.
__________________
Kettering University - Computer Engineering
Kettering Motorsports
Williams International - Commercial Engines - Controls and Accessories
FRC 33 - The Killer Bees - 2009-2012 Student, 2013-2014 Advisor
VEX IQ 3333 - The Bumble Bees - 2014+ Mentor
"Sometimes, the elegant implementation is a function. Not a method. Not a class. Not a framework. Just a function." ~ John Carmack
|