I have a simple boost converter, and from multiple papers I've read through, a Type 3 Compensator is recommended. I designed one in Matlab/Simulink, and it reacts very quickly. The problem is, when I solve for the poles of the transfer function, there is the one at the origin and then two imaginary poles. According to TI report SLVA662 (on page 9) the equation for a Type 3 Compensator is
Obviously, the roots of this transfer function are always going to be real (unless there's a way to implement imaginary resistor or capacitor values I'm unaware of!)
I don't necessarily need a Type 3 if I can implement my other two-zero three-pole compensator system, but I'm a bit stuck on how to do this without digitizing the control loop.
Ok, for more clarification, the transfer function of the compensator I designed is:
The poles are at 0 and - 1.6e5 +/- j9.2e4. The zeros are at -7.9e3 +/- j3.4e3.
I cannot get the numerator/denominator of this transfer function to match the numerator/denominator of H(s) above with real resistor and capacitor values.
So my overall question is: how do I implement two complex conjugate imaginary poles or zeros in a compensator transfer function with an analog circuit, if even possible?
Here's the comparison of the simulation results between my Type 3 compensator and the ADRC compensator I designed in Simulink. You can see it's far superior to the Type 3 compensator.