Arbitrary Feedback Control Architecture
If your control architecture does not match Control System Tuner’s predefined control
architecture, you can create a generalized state-space (genss) model with tunable
components representing your controller elements. For example, suppose you want to
tune the cascaded control system of the following illustration, that includes two tunable
PID controllers.
.
r
G 2
+
- C 1
+
G 1
C 2
PID PI
u 1 u 2 y 2
x 2 y 1
x 1
Create tunable control design blocks for the controllers, and fixed LTI models for the
plant components, G 1 and G 2. Also include optional loop-opening locations x 1 and x 2.
These locations indicate where you can open loops or inject signals for the purpose of
specifying requirements for tuning the system.
G2 = zpk([],-2,3);
G1 = zpk([],[-1 -1 -1],10);
C20 = tunablePID('C2','pi');
C10 = tunablePID('C1','pid');
X1 = AnalysisPoint('X1');
X2 = AnalysisPoint('X2');
Connect these components to build a model of the entire closed-loop control system.
InnerLoop = feedback(X2G2C20,1);
CL0 = feedback(G1InnerLoopC10,X1);
CL0.InputName = 'r';
CL0.OutputName = 'y';
CL0 is a tunable genss model. Specifying names for the input and output channels allows
you to identify them when you specify tuning requirements for the system.
Specify Control Architecture in Control System Tuner