Decompose a 2-DOF PID controller into SISO control components, using each of the feedforward, feedback, and filter configurations.
To start, obtain a 2-DOF PID controller. For this example, create a plant model and tune a 2-DOF PID controller for it.
C2 =
1 s
u = Kp (b*r-y) + Ki --- (r-y) + Kd -------- (c*r-y)
s Tf*s+1
with Kp = 1.12, Ki = 0.23, Kd = 1.3, Tf = 0.122, b = 0.664, c = 0.0136
Continuous-time 2-DOF PIDF controller in parallel form.
C2
is a pid2
controller object, with two inputs and one output. Decompose C2
into SISO control components using the feedforward configuration.
Cff =
1 s
Kp + Ki * --- + Kd * --------
s Tf*s+1
with Kp = 1.12, Ki = 0.23, Kd = 1.3, Tf = 0.122
Continuous-time PIDF controller in parallel form.
Xff =
-10.898 (s+0.2838)
------------------
(s+8.181)
Continuous-time zero/pole/gain model.
As the display shows, this command returns the SISO PID controller Cff
as a pid
object. The feedforward compensator X
is returned as a zpk
object.
Decompose C2
using the feedback configuration. In this case as well, Cfb
is a pid
controller object, and the feedback compensator X
is a zpk
model.
Decompose C2
using the filter configuration. Again, the components are a SISO pid
controller and a zpk
model representing the prefilter.