Control System Designer
Design single-input, single-output (SISO) controllers
Description
The Control System Designer app lets you design single-input, single-output (SISO) controllers for feedback systems modeled in MATLAB® or Simulink® (requires Simulink Control Design™ software).
Using this app, you can:
Design controllers using:
Interactive Bode, root locus, and Nichols graphical editors for adding, modifying, and removing controller poles, zeros, and gains.
Automated PID, LQG, or IMC tuning.
Optimization-based tuning (requires Simulink Design Optimization™ software).
Automated loop shaping (requires Robust Control Toolbox™ software).
Tune compensators for single-loop or multiloop control architectures.
Analyze control system designs using time-domain and frequency-domain responses, such as step responses and pole-zero maps.
Compare response plots for multiple control system designs.
Design controllers for multimodel control applications.
More
Limitations
When using Control System Designer in MATLAB Online™, the following features are not available:
Designing of controllers in Simulink
Variable editor

Open the Control System Designer App
MATLAB Toolstrip: On the Apps tab, under Control System Design and Analysis, click the app icon.
MATLAB command prompt: Enter
controlSystemDesigner
.Simulink Toolstrip: On the Apps tab, under Control Systems, click the app icon.
Examples
Programmatic Use
controlSystemDesigner
controlSystemDesigner
opens the Control System
Designer app using the following default control architecture:
The architecture consists of the LTI objects:
G — Plant model
C — Compensator
H — Sensor model
F — Prefilter
By default, the app configures each of these models as a unit gain.
controlSystemDesigner(plant
,comp
)
plant
,comp
)controlSystemDesigner(
initializes the compensator, C, to the SISO LTI model
plant
,comp
)comp
.
controlSystemDesigner(plant
,comp
,sensor
)
plant
,comp
,sensor
)controlSystemDesigner(
initializes the sensor model, H, to plant
,comp
,sensor
)sensor
.
sensor
can be any SISO LTI model or an array of such
models. If you specify both plant
and
sensor
as LTI model arrays, the lengths of the arrays must
match.
controlSystemDesigner(plant
,comp
,sensor
,prefilt
)
plant
,comp
,sensor
,prefilt
)controlSystemDesigner(
initializes the prefilter model, F, to the SISO LTI model
plant
,comp
,sensor
,prefilt
)prefilt
.
controlSystemDesigner(views
)
views
)controlSystemDesigner(
opens the
app and specifies the initial graphical editor configuration.
views
)views
can be any of the following character vectors, or a
cell array of multiple character vectors.
'rlocus'
— Root locus editor'bode'
— Open-loop Bode Editor'nichols'
— Open-loop Nichols Editor'filter'
— Bode Editor for the closed-loop response from prefilter input to the plant output
In addition to opening the specified graphical editors, the app plots the closed-loop, input-output step response.
controlSystemDesigner(views
,plant
,comp
,sensor
,prefilt
)
views
,plant
,comp
,sensor
,prefilt
)controlSystemDesigner(
specifies the initial plot configuration and initializes the plant, compensator,
sensor, and prefilter using the specified models. If a model is omitted, the app
uses the default value.views
,plant
,comp
,sensor
,prefilt
)
controlSystemDesigner(initData
)
initData
)controlSystemDesigner(
opens
the app and initializes the system configuration using the initialization data
structure initData
)initdata
. To create initdata
,
use sisoinit
.
controlSystemDesigner(sessionFile
)
sessionFile
)controlSystemDesigner(
opens
the app and loads a previously saved session. sessionFile
)sessionFile
is
the name of a session data file on the MATLAB path. This data includes the current system architecture and plot
configuration, and any designs and responses saved in the Data
Browser.
To save a session, in the Control System Designer app, on the
Control System tab, click
Save Session.
Version History
Introduced in R2015aR2021b: Support for opening SISO Design Tool sessions saved before release R2016a has been removed
Support for opening SISO Design Tool sessions saved before release R2016a will be removed in release R2021b.
If you have sessions saved before release R2016a, open and resave the session files using Control System Designer in any release from R2016a through R2021a.
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)