blockStateSpace
Discrete State Space block
Extends from Interfaces.DiscreteMIMO (Multiple Input Multiple Output discrete control block).
Information
The discrete state space block defines the relation between the input u and the output y in state space form:
x = A * pre(x) + B * u y = C * pre(x) + D * u
where pre(x) is the value of the discrete state x at the previous sample time instant. The input is a vector of length nu, the output is a vector of length ny and nx is the number of states. Accordingly
A has the dimension: A(nx,nx), B has the dimension: B(nx,nu), C has the dimension: C(ny,nx), D has the dimension: D(ny,nu)
Example:
parameter: A = [0.12, 2;3, 1.5]
parameter: B = [2, 7;3, 1]
parameter: C = [0.1, 2]
parameter: D = zeros(ny,nu)
results in the following equations:
[x[1]] [0.12 2.00] [pre(x[1])] [2.0 7.0] [u[1]]
[ ] = [ ]*[ ] + [ ]*[ ]
[x[2]] [3.00 1.50] [pre(x[2])] [0.1 2.0] [u[2]]
[pre(x[1])] [u[1]]
y[1] = [0.1 2.0] * [ ] + [0 0] * [ ]
[pre(x[2])] [u[2]]
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Real[:,size(A, 1)] | A | [1, 0; 0, 1] | Matrix A of state space model |
| Real[size(A, 1),:] | B | [1; 1] | Matrix B of state space model |
| Real[:,size(A, 1)] | C | [1, 1] | Matrix C of state space model |
| Real[size(C, 1),size(B, 2)] | D | zeros(size(C, 1), size(B, 2)) | Matrix D of state space model |
| SI.Time | samplePeriod (from DiscreteBlock) | Sample period of component | |
| SI.Time | startTime (from DiscreteBlock) | 0 | First sample time instant |
| Integer | nin (from DiscreteMIMO) | 1 | Number of inputs |
| Integer | nout (from DiscreteMIMO) | 1 | Number of outputs |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Interfaces.RealInput[nin] | u (from DiscreteMIMO) | Connector of Real input signals | |
| Modelica.Blocks.Interfaces.RealOutput[nout] | y (from DiscreteMIMO) | Connector of Real output signals |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Real[size(A, 1)] | x | State vector |