Interactively design and tune SISO feedback loops




controlSystemDesigner opens a SISO Design GUI (Control System Designer) for interactive compensator design. This GUI allows you to design a single-input/single-output (SISO) compensator using root locus, Bode diagram, Nichols and Nyquist techniques. You can also automatically design a compensator using this GUI.

By default, the SISO Design Tool:

  • Opens the Control and Estimation Tools Manager with a default SISO Design Task node.

  • Opens the Graphical Tuning editor with root locus and open-loop Bode diagrams.

  • Places the compensator, C, in the forward path in series with the plant, G.

  • Assumes the prefilter, F, and the sensor, H, are unity gains. Once you specify G and H, they are fixed in the feedback structure.

The default control architecture is shown in this figure.

There are six control architectures available. See sisoinit for more information.

This picture shows the SISO Design Graphical editor.

controlSystemDesigner(plant) opens the SISO Design Tool, imports plant, and initializes the plant model G to plant. plant can be any SISO LTI model created with ss, tf, zpk or frd, or a row or column array of LTI models.

controlSystemDesigner(plant,comp) initializes the plant model G to plant, the compensator C to comp. comp is an LTI object.

controlSystemDesigner(plant,comp,sensor,prefilt) initializes the plant G to plant, compensator C to comp, sensor H to sensor, and the prefilter F to prefilt. sensor is an LTI object or a row or column array of LTI objects. If plant is also an array of LTI objects, the lengths of sensor and plant must match. prefilt is an LTI object.

controlSystemDesigner(views) or controlSystemDesigner(views,plant,comp) specifies the initial configuration of the SISO Design Tool. views can be any of the following strings (or combination thereof):

  • 'rlocus' — Root Locus plot

  • 'bode' — Bode diagrams of the open-loop response

  • 'nichols' — Nichols plot

  • 'filter' — Bode diagrams of the prefilter F and the closed-loop response from the command into F to the output of the plant G .

For example


opens a SISO Design Tool with only the Bode Diagrams. If there is more than one view, the views are specified in a cell array.

controlSystemDesigner(initdata) initializes the SISO Design Tool with more general control system configurations. Use sisoinit to create the initialization data structure initdata.

controlSystemDesigner(sessiondata) opens the SISO Design Tool with a previously saved session where sessiondata is the MAT-file for the saved session.


Launch SISO Design Tool GUI in default configuration using LTI models:

% Create plant G.
G = tf(1, [1 1]);
% Create controller C.
C = tf(1,[1 2]);
% Launch the GUI.

Launch SISO Design Tool GUI in default configuration using an array of LTI models:

% Specify model parameters.
m = 3;
b = 0.5;
k = 8:1:10;
T = 0.1:.05:.2;
% Create an LTI array to model variations in plant G.
for ct = 1:length(k);
    G(:,:,ct) = tf(1,[m,b,k(ct)]);
% Create an LTI array to model variations in sensor H.
for ct = 1:length(T);
    H(:,:,ct) = tf(1,[1/T(ct), 1]);
% Create a controller C.
C = tf(1,[1 2]);
% Launch the GUI.

Related Examples


You can open the SISO Design GUI from the MATLAB® desktop. In the Apps tab, in the Control System Design and Analysis section of the Apps gallery, click Control System Designer.

Was this topic helpful?