Documentation Center

  • Trial Software
  • Product Updates

getDelayModel

State-space representation of internal delays

Syntax

[H,tau] = getDelayModel(sys)
[A,B1,B2,C1,C2,D11,D12,D21,D22,E,tau] = getDelayModel(sys)

Description

[H,tau] = getDelayModel(sys) decomposes a state-space model sys with internal delays into a delay-free state-space model, H, and a vector of internal delays, tau. The relationship among sys, H, and tau is shown in the following diagram.

[A,B1,B2,C1,C2,D11,D12,D21,D22,E,tau] = getDelayModel(sys) returns the set of state-space matrices and internal delay vector, tau, that explicitly describe the state-space model sys. These state-space matrices are defined by the state-space equations:

  • Continuous-time sys:

  • Discrete-time sys:

Input Arguments

sys

Any state-space (ss) model.

Output Arguments

H

Delay-free state-space model (ss). H results from decomposing sys into a delay-free component and a component exp(-tau*s) that represents all internal delays.

If sys has no internal delays, H is equal to sys.

tau

Vector of internal delays of sys, expressed in the time units of sys. The vector tau results from decomposing sys into a delay-free state-space model H and a component exp(-tau*s) that represents all internal delays.

If sys has no internal delays, tau is empty.

A,B1,B2,C1,C2,D11,D12,D21,D22,E

Set of state-space matrices that, with the internal delay vector tau, explicitly describe the state-space model sys.

For explicit state-space models (E = I, or sys.e = []), the output E = [].

If sys has no internal delays, the outputs B2, C2, D12, D21, and D22 are all empty ([]).

Examples

expand all

Get Delay-Free State-Space Model and Internal Delay

Decompose the following closed-loop system with internal delay into a delay-free component and a component representing the internal delay.

Create the closed-loop model sys from r to y.

G = tf(1,[1 10],'InputDelay',2.1); 
C = pid(0.5,2.3);
sys = feedback(C*G,1);

sys is a state-space (ss) model with an internal delay arising from the feedback loop.

Decompose sys into a delay-free state-space model and the value of the internal delay.

[H,tau] = getDelayModel(sys);

More About

See Also

Was this topic helpful?