Julia for MATLAB Users/Index/Toolboxes/Control System Toolbox

Maps functionality from the MATLAB Control System Toolbox to equivalent(s) in Julia.

Related Julia packages:


 * ControlSystems.jl

= Dynamic System Models =

Basic Models

 * Create transfer function model, convert to transfer function model
 * Create zero-pole-gain model; convert to zero-pole-gain model
 * Create state-space model, convert to state-space model
 * Create frequency-response data model, convert to frequency-response data model
 * Specify discrete transfer functions in DSP format
 * Create descriptor state-space models
 * Create PID controller in parallel form, convert to parallel-form PID controller
 * Create a PID controller in standard form, convert to standard-form PID controller
 * Create 2-DOF PID controller in parallel form, convert to parallel-form 2-DOF PID controller
 * Create 2-DOF PID controller in standard form, convert to standard-form 2-DOF PID controller
 * Generate random continuous test model
 * Generate random discrete test model

Tunable Models

 * Tunable static gain block
 * Tunable PID controller
 * Tunable two-degree-of-freedom PID controller
 * Tunable fixed-order state-space model
 * Tunable transfer function with fixed number of poles and zeros
 * Real tunable parameter
 * Points of interest for linear analysis
 * Generalized state-space model
 * Generalized frequency response data (FRD) model
 * Generalized matrix with tunable parameters
 * Open-loop transfer function of control system
 * Closed-loop transfer function from generalized model of control system
 * Sensitivity function from generalized model of control system
 * Complementary sensitivity function from generalized model of control system
 * Get list of analysis points in generalized model of control system
 * Replace or update Control Design Blocks in Generalized LTI model
 * Sample Control Design blocks in generalized model
 * Randomly sample Control Design blocks in generalized model
 * Current value of Generalized Model
 * Modify current value of Control Design Block
 * Current value of Control Design Block in Generalized Model
 * Modify value of Control Design Block in Generalized Model
 * Display current value of Control Design Blocks in Generalized Model
 * Display current value of tunable Control Design Blocks in Generalized Model
 * Number of blocks in Generalized matrix or Generalized LTI model
 * Decompose generalized LTI model

Models with Time Delays

 * Padé approximation of model with time delays
 * Replace time delays by poles at z = 0 or phase shift
 * Generate fractional delay filter based on Thiran approximation
 * True for linear model with time delays
 * Determine if model has internal delays
 * Total combined I/O delays for LTI model
 * Create state-space models with delayed inputs, outputs, and states
 * Construct state-space model with internal delays
 * State-space representation of internal delays

Model Attributes

 * Access model property values
 * Set or modify model properties
 * Access transfer function data
 * Access zero-pole-gain data
 * Access state-space model data
 * Access data for frequency response data (FRD) object
 * Access coefficients of parallel-form PID controller
 * Access coefficients of standard-form PID controller
 * Access coefficients of parallel-form 2-DOF PID controller
 * Access coefficients of standard-form 2-DOF PID controller
 * Extract descriptor state-space data
 * Change frequency units of frequency-response data model
 * Change time units of dynamic system
 * Determine if dynamic system model is in continuous time
 * Determine if dynamic system model is in discrete time
 * Determine whether dynamic system model is empty
 * Determine if model has finite coefficients
 * Determine if model has tunable parameters
 * Determine if dynamic system model is proper
 * Determine if model has real-valued coefficients
 * Determine if dynamic system model is single-input/single-output (SISO)
 * Determine whether system is stable
 * Determine if model is static or dynamic
 * Query model order
 * Query number of dimensions of dynamic system model or model array
 * Query output/input/array dimensions of input–output model and number of frequencies of FRD model

Model Arrays

 * Build model array by stacking models or model arrays along array dimensions
 * Number of models in model array
 * Rearrange array dimensions in model arrays
 * Change shape of model array
 * Replicate and tile models
 * Mark missing or irrelevant models in model array
 * Sample Control Design blocks in generalized model
 * Randomly sample Control Design blocks in generalized model

Model Interconnection

 * Feedback connection of two models
 * Block diagram interconnections of dynamic systems
 * Summing junction for name-based interconnections
 * Series connection of two models
 * Parallel connection of two models
 * Group models by appending their inputs and outputs
 * Block-diagonal concatenation of models
 * Convert implicit linear relationship to explicit input-output relation
 * Invert models
 * Generalized feedback interconnection of two models (Redheffer star product)
 * Options for the connect command

Model Type Conversion

 * Create transfer function model, convert to transfer function model
 * Create zero-pole-gain model; convert to zero-pole-gain model
 * Create state-space model, convert to state-space model
 * Create frequency-response data model, convert to frequency-response data model
 * Create PID controller in parallel form, convert to parallel-form PID controller
 * Create a PID controller in standard form, convert to standard-form PID controller
 * Create 2-DOF PID controller in parallel form, convert to parallel-form 2-DOF PID controller
 * Create 2-DOF PID controller in standard form, convert to standard-form 2-DOF PID controller
 * Convert 2-DOF PID controller to 1-DOF controller
 * Convert 1-DOF PID controller to 2-DOF controller
 * Extract SISO control components from a 2-DOF PID controller

Continuous-Discrete Conversion

 * Convert model from continuous to discrete time
 * Convert model from discrete to continuous time
 * Resample discrete-time model
 * Upsample discrete-time models
 * Create option set for continuous- to discrete-time conversions
 * Create option set for discrete- to continuous-time conversions
 * Create option set for discrete-time resampling

State-Coordinate Transformation

 * Gramian-based input/output balancing of state-space realizations
 * State-space canonical realization
 * Optimal scaling of state-space models
 * State coordinate transformation for state-space model
 * Reorder states in state-space models

Modal Decomposition

 * Region-based modal decomposition
 * Stable-unstable decomposition
 * Options for stable-unstable decomposition
 * Slow-fast decomposition
 * Options for slow-fast decomposition
 * Spectral factorization of linear systems

Model Reduction

 * Model order reduction
 * Create option set for model order reduction
 * Gramian-based input/output balancing of state-space realizations
 * Minimal realization or pole-zero cancelation
 * Structural pole/zero cancellations
 * Eliminate states from state-space models
 * Slow-fast decomposition
 * Options for slow-fast decomposition
 * Hankel singular values of dynamic system
 * Plot Hankel singular values and return plot handle
 * Create option set for computing Hankel singular values and input/output balancing

Time and Frequency Domain Analysis

 * Step response plot of dynamic system; step response data
 * Rise time, settling time, and other step-response characteristics
 * Impulse response plot of dynamic system; impulse response data
 * Initial condition response of state-space model
 * Simulate time response of dynamic system to arbitrary inputs
 * Compute linear response characteristics
 * Generate test input signals for lsim
 * Output and state covariance of system driven by white noise
 * Options set for step
 * Bode plot of frequency response, or magnitude and phase data
 * Bode magnitude response of LTI models
 * Nyquist plot of frequency response
 * Nichols chart of frequency response
 * Superimpose Nichols chart on Nichols plot
 * Singular values plot of dynamic system
 * Frequency response over grid
 * Evaluate frequency response at given frequency
 * Low-frequency (DC) gain of LTI system
 * Frequency response bandwidth
 * Peak gain of dynamic system frequency response
 * Crossover frequencies for specified gain
 * Pointwise peak gain of FRD model
 * Norm of linear model
 * Convert decibels (dB) to magnitude
 * Convert magnitude to decibels (dB)

Stability Analysis

 * Compute poles of dynamic system
 * Zeros and gain of SISO dynamic system
 * Natural frequency and damping ratio
 * Sort discrete-time poles by magnitude
 * Sort continuous-time poles by real part
 * Invariant zeros of linear system
 * Pole-zero map of dynamic system model with plot customization options
 * Plot pole-zero map for I/O pairs and return plot handle
 * Gain margin, phase margin, delay margin and crossover frequencies
 * Gain margin, phase margin, and crossover frequencies

Sensitivity Analysis

 * Sample Control Design blocks in generalized model
 * Randomly sample Control Design blocks in generalized model

Passivity and Sector Bounds

 * Check passivity of linear systems
 * Compute passivity index of linear system
 * Compute or plot passivity index as function of frequency
 * Compute conic-sector index of linear system
 * Crossover frequencies for sector bound
 * Compute or plot sector index as function of frequency

Plot Customization

 * Plot impulse response and return plot handle
 * Plot initial condition response and return plot handle
 * Simulate response of dynamic system to arbitrary inputs and return plot handle
 * Plot step response and return plot handle
 * Plot Bode frequency response with additional plot customization options
 * Plot Nichols frequency responses and return plot handle
 * Nyquist plot with additional plot customization options
 * Plot singular values of frequency response and return plot handle
 * Create list of Bode plot options
 * Plot options for hsvplot
 * Create list of Nichols plot options
 * List of Nyquist plot options
 * Create list of pole/zero plot options
 * Create list of singular-value plot options
 * Create list of time plot options
 * Set plot options for response plot
 * Return @PlotOptions handle or plot options property
 * Set Control System Toolbox preferences
 * Update dynamic system data in a response plot

= Control System Design and Tuning =

PID Controller Tuning

 * Open PID Tuner for PID tuning
 * PID tuning algorithm for linear plant model
 * Define options for pidtune command

Classical Control Design

 * Root locus plot of dynamic system
 * Plot root locus and return plot handle
 * Configure Control System Designer at startup

State-Space Control Design

 * Linear-Quadratic Regulator (LQR) design
 * Form linear-quadratic (LQ) state-feedback regulator with output weighting
 * Linear-Quadratic-Integral control
 * Linear-quadratic (LQ) state-feedback regulator for discrete-time state-space system
 * Design discrete linear-quadratic (LQ) regulator for continuous plant
 * Linear-Quadratic-Gaussian (LQG) design
 * Form linear-quadratic-Gaussian (LQG) regulator
 * Form Linear-Quadratic-Gaussian (LQG) servo controller
 * Append state vector to output vector
 * Norm of linear model
 * Form state estimator given estimator gain
 * Pole placement design
 * Form regulator given state-feedback and estimator gains

State Estimation

 * Kalman filter design, Kalman estimator
 * Design discrete Kalman estimator for continuous plant
 * Form state estimator given estimator gain
 * Create extended Kalman filter object for online state estimation
 * Create unscented Kalman filter object for online state estimation
 * Particle filter object for online state estimation
 * Correct state and state estimation error covariance using extended or unscented Kalman filter, or particle filter and measurements
 * Predict state and state estimation error covariance at next time step using extended or unscented Kalman filter, or particle filter
 * Initialize the state of the particle filter
 * Copy online state estimation object

Setup for Tuning Simulink Models

 * Interface for control system tuning of Simulink models
 * Set slTuner interface options
 * Add block to list of tuned blocks for slTuner interface
 * Add signal to list of openings for slLinearizer or slTuner interface
 * Add signal to list of analysis points for slLinearizer or slTuner interface
 * Resynchronize slLinearizer or slTuner interface with current model state
 * Remove all openings from list of permanent openings in slLinearizer or slTuner interface
 * Remove all points from list of analysis points in slLinearizer or slTuner interface
 * Remove block from list of tuned blocks in slTuner interface
 * Remove opening from list of permanent loop openings in slLinearizer or slTuner interface
 * Remove point from list of analysis points in slLinearizer or slTuner interface
 * Set parameterization of tuned block in slTuner interface
 * Set rate conversion settings for tuned block in slTuner interface
 * Set value of tuned block parameterization in slTuner interface
 * Update block values in Simulink model
 * Update portion of tuned lookup table
 * Get parameterization of tuned block in slTuner interface
 * Get rate conversion settings for tuned block in slTuner interface
 * Get current value of tuned block parameterization in slTuner interface
 * Get list of openings for slLinearizer or slTuner interface
 * Get list of analysis points for slLinearizer or slTuner interface
 * Show value of parameterizations of tunable blocks of slTuner interface

Setup for Tuning MATLAB Models

 * Create transfer function model, convert to transfer function model
 * Create zero-pole-gain model; convert to zero-pole-gain model
 * Create state-space model, convert to state-space model
 * Tunable static gain block
 * Tunable transfer function with fixed number of poles and zeros
 * Tunable PID controller
 * Tunable two-degree-of-freedom PID controller
 * Tunable fixed-order state-space model
 * Real tunable parameter
 * Points of interest for linear analysis
 * Block diagram interconnections of dynamic systems
 * Feedback connection of two models

Tuning Goals

 * .StepTracking Step response requirement for control system tuning
 * .StepRejection Step disturbance rejection requirement for control system tuning
 * .Transient Transient matching requirement for control system tuning
 * .LQG Linear-Quadratic-Gaussian (LQG) goal for control system tuning
 * .Gain Gain constraint for control system tuning
 * .Variance Noise amplification constraint for control system tuning
 * .Tracking Tracking requirement for control system tuning
 * .Overshoot Overshoot constraint for control system tuning
 * .Rejection Disturbance rejection requirement for control system tuning
 * .Sensitivity Sensitivity requirement for control system tuning
 * .WeightedGain Frequency-weighted gain constraint for control system tuning
 * .WeightedVariance Frequency-weighted H2 norm constraint for control system tuning
 * .MinLoopGain Minimum loop gain constraint for control system tuning
 * .MaxLoopGain Maximum loop gain constraint for control system tuning
 * .LoopShape Target loop shape for control system tuning
 * .Margins Stability margin requirement for control system tuning
 * .Passivity Passivity constraint for control system tuning
 * .ConicSector Sector bound for control system tuning
 * .WeightedPassivity Frequency-weighted passivity constraint
 * .Poles Constraint on control system dynamics
 * .ControllerPoles Constraint on controller dynamics for control system tuning

Tuning, Analysis, and Validation

 * (slTuner) Tune control system parameters in Simulink using slTuner interface
 * Set options for systune
 * (slTuner) Transfer function for specified I/O set using slLinearizer or slTuner interface
 * (slTuner) Open-loop transfer function at specified point using slLinearizer or slTuner interface
 * (slTuner) Sensitivity function at specified point using slLinearizer or slTuner interface
 * (slTuner) Complementary sensitivity function at specified point using slLinearizer or slTuner interface
 * Update block values in Simulink model
 * Tune fixed-structure control systems modeled in MATLAB
 * Set options for systune
 * Closed-loop transfer function from generalized model of control system
 * Open-loop transfer function of control system
 * Sensitivity function from generalized model of control system
 * Complementary sensitivity function from generalized model of control system
 * View tuning goals; validate design against tuning goals
 * Evaluate tuning goals for tuned control system

Loop-Shaping Design

 * Interface for control system tuning of Simulink models
 * Tune MIMO feedback loops in Simulink using slTuner interface
 * Set options for looptune
 * Graphically analyze results of control system tuning using slTuner interface
 * Construct tuning setup for looptune to tuning setup for systune using slTuner interface
 * Tune fixed-structure feedback loops
 * Set options for looptune
 * Graphically analyze MIMO feedback loops
 * Convert tuning setup for looptune to tuning setup for systune
 * View tuning goals; validate design against tuning goals
 * Evaluate tuning goals for tuned control system

Gain Scheduling

 * Create tunable gain surface for gain scheduling
 * Polynomial basis functions for tunable gain surface
 * Fourier basis functions for tunable gain surface
 * Basis functions for tunable gain surface
 * Visualize gain surface as a function of scheduling variables
 * Evaluate gain surfaces at specific design points
 * Get current values of tunable-surface coefficients
 * Set values of tunable-surface coefficients
 * Generate MATLAB code for tunable gain surfaces
 * Tune fixed-structure control systems modeled in MATLAB
 * Interface for control system tuning of Simulink models
 * (slTuner) Tune control system parameters in Simulink using slTuner interface
 * Mark missing or irrelevant models in model array
 * Variable tuning goal for gain-scheduled controllers
 * Evaluate variable tuning goal at specified design point

= Matrix Computations =


 * Continuous Lyapunov equation solution
 * Square-root solver for continuous-time Lyapunov equation
 * Solve discrete-time Lyapunov equations
 * Square-root solver for discrete-time Lyapunov equations
 * Continuous-time algebraic Riccati equation solution
 * Solve discrete-time algebraic Riccati equations (DAREs)
 * Generalized solver for continuous-time algebraic Riccati equation
 * Generalized solver for discrete-time algebraic Riccati equation
 * Controllability matrix
 * Observability matrix
 * Compute controllability staircase form
 * Compute observability staircase form
 * Controllability and observability Gramians
 * Options for the gram command
 * Block-diagonal Schur factorization
 * Norm of linear model