| Contents | Index |
This table summarizes what's new in Version 9.1 (R2011a):
New Features and Changes | Version Compatibility Considerations | Fixed Bugs and Known Problems |
|---|---|---|
Yes | Yes–Details labeled as Compatibility Considerations, below. See also Summary. | Bug Reports |
New features introduced in this version:
New Model Objects for Representing Tunable Parameters and Systems with Tunable Components
Discrete-Time PID Controller Objects Have Stable Derivative Filter Pole
New Variable q^–1 for Expressing Discrete-Time Transfer Functions
Control System Toolbox includes new model objects that you can use to represent systems with tunable components. You can use these models for parameter studies or controller synthesis using hinfstruct (requires Robust Control Toolbox). The new model types include:
Control Design Blocks—Parametric components that are the building blocks for constructing tunable models of control systems. Control Design Blocks include:
realp—Tunable real parameter
ltiblock.gain—Tunable static gain block
ltiblock.tf—Fixed-order SISO transfer function with tunable coefficients
ltiblock.ss—Fixed-order state-space model with tunable coefficients
ltiblock.pid—One-degree-of-freedom PID controller with tunable coefficients
Generalized Matrices—Matrices that include parametric (tunable) values. Generalized matrices are genmat models.
Generalized and Uncertain LTI Models—Models representing systems that have both fixed and tunable coefficients. Generalized LTI models include:
These models arise from interconnections between numeric LTI models (such as tf , ss, or frd) and Control Design Blocks. You can also create genss models by using the tf or ss commands with one or more realp or genmat inputs.
This release also adds new functions for working with generalized models:
getNominal—Nominal value of generalized model
replaceBlock—Replace Control Design Blocks in generalized model
nblocks—Number of blocks in generalized model
isParametric — Determine if model has tunable blocks
getLFTModel—Decompose generalized model
For more information about the new model types and about modeling systems that contain tunable coefficients, see the following in the Control System Toolbox User's Guide:
All linear model objects now have a TimeUnit property for specifying unit of the time variable, time delays in continuous-time models, and sampling time in discrete-time models. The default time units is seconds. You can specify the time units, for example, as hours. See Specify Model Time Units for examples.
Frequency-response data ( frd and genfrd) models also have a new FrequencyUnit property for specifying units of the frequency vector. The default frequency units is rad/TimeUnit, where TimeUnit is the system time units. You can specify the units, for example as KHz, independently of the system time units. See Specify Frequency Units of Frequency-Response Data Model for examples. If your code uses the Units property of frequency-response data models, it continues to work as before.
See the model reference pages for available time and frequency units options.
Changing the TimeUnit and FrequencyUnit properties changes the overall system behavior. If you want to simply change the time and frequency units without modifying system behavior, use chgTimeUnit and chgFreqUnit, respectively.
The time and frequency units of the model appear on the response plots by default. For multiple systems, the units of the first system are used. You can change the units of the time and frequency axes:
Graphically, using the following editors:
Programmatically, by setting the following properties of plots:
TimeUnits for time-domain plots using timeoptions
FreqUnits for frequency-domain plots using, for example, bodeoptions
New requirements for creating pid and pidstd controller objects ensure that the derivative filter pole is always stable.
For a discrete-time pid controller with a derivative filter (Tf≠ 0) and Dformula set to 'ForwardEuler', the sampling time Ts must be less than 2*Tf.
For a discrete-time pidstd controller with a derivative filter (N≠ Inf) and Dformula set to 'ForwardEuler', the sampling time Ts must be less than 2*Td/N.
The Trapezoidal value for DFormula is not available for a discrete-time pid or pidstd controller with no derivative filter (Tf = 0 or N = Inf).
On loading pid or pidstd controllers saved under previous versions, the software changes certain properties of controllers that do not have stable derivative filter poles.
For a discrete-time pid controller with a derivative filter (Tf≠ 0), Dformula set to 'ForwardEuler', and sampling time Ts ≥ 2*Tf, the derivative filter time is reset to Tf = Ts.
For a discrete-time pidstd controller with a derivative filter (N≠ Inf), Dformula set to 'ForwardEuler', the sampling time Ts ≥ 2*Td/N, the derivative filter constant is reset to N = Td/Ts.
For a discrete-time pid or pidstd controller with no derivative filter and DFormula = 'Trapezoidal', the derivative filter integrator formula is reset to DFormula = 'ForwardEuler'.
The software issues a warning when it changes any of these values. If you receive such a warning, validate your controller to ensure that the new values achieve the desired performance.
You can now express discrete-time tf and zpk models in terms of the inverse shift operator q^-1. The variable q^-1 is equivalent to z^-1.
Use the new variable by setting the Variable property of a tf or zpk model to q^-1. For example, entering:
H = tf([1 2 3],[5 6 7],0.1,'Variable','q^-1')
creates the following discrete-time transfer function:
Transfer function: 1 + 2 q^-1 + 3 q^-2 ------------------- 5 + 6 q^-1 + 7 q^-2 Sampling time (seconds): 0.1
When you set Variable to q^-1, tf interprets the numerator and denominator vectors as ascending powers of q^-1.
For more information, see the tf and zpk reference pages.
![]() | Version 9.2 (R2011b) Control System Toolbox Software | Version 9.0 (R2010b) Control System Toolbox Software | ![]() |

Learn more about resources for designing, testing, and implementing control systems.
Get free kit| © 1984-2012- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |