I'm in my 3rd year of my electrical eng. degree. I have a project right now, where I must create a PID controller for implementation. They gave me the exact values for constants Kp, Ki, Kd and the maximum acceptable frequency.
My integrator circuit is based on the Miller integrator, but with a resistance in parallel with the capacitor, so I can have constant gain with low frequency signals.
My question is: How do I choose or calculate the values of the resistances and the capacitor, based on the max frequency they give me and the integration constant Ki?
My integrator looks like this picture:
Image source: Electronics Tutorials – AC Op-amp Integrator with DC Gain Control
I uploaded a photo of the PID i am trying to use. Feel free to point any erros. It uses a proporcional, integral and differentiator components and then a inverting summing op amp.
Best Answer
The difficulty in your approach is the lack of link between the PID coefficients and the poles/zeroes positions. In the APEC seminar I gave in 2012, I have re-derived the poles and zeroes calculation based on the existing PID coefficients. Once you know where the poles and zeroes are located, you can determine the components value in your circuit. The relationship linking the coefficients to the poles and zeroes is given below:
These are raw expressions and could probably somehow be simplified I believe. Once you have these formulas on hand, you can build a discrete filtered form PID using op-amps as you did but I have used a slightly different implementation:
In this filter, an additional pole is added to form the equivalent of a type 3 compensator which ensures the gain drops at high frequencies with a -2 slope. Below are the parameters calculated by the program:
As you can see below, responses between the two approaches are identical:
I honestly don't know how to stabilize a power converter directly using raw PID coefficients but I sure know how to do it via poles and zeroes placement. You can find more derivations on the subject in the book I published on loop control in 2012.