Переменные состояния
![]() |
![]() |
| Векторизован
|
|
| в палитре | на схеме |
Описание
Блок реализует описание многомерной линейной динамической системы, записанной в матричной форме:
где:
- A, B, C, D – матрицы: системы, входа, выхода и обхода, соответственно
- x(t)– вектор переменных состояния (размерностью [Nx ])
- u(t) – вектор входа (размерностью [Nu ])
- y(t) – вектор выхода, (размерностью [Ny ])
Размерность матрицы A - [Nx ×Nx ].
Размерность матрицы B - [Nu ×Nx ].
Размерность матрицы C - [Nx ×Ny ].
Размерность матрицы D - [Nu ×Ny ].
1-е число в квадратных скобках – количество столбцов, 2-е число – количество строк. Обязательное условие: Nx ≥Ny .
Вход и выход блока – векторные сигналы (размерностью Nu и Ny , соответственно).
Входные порты
| Имя | Описание | Тип линии связи |
|---|---|---|
| inport | Входной сигнал, размерностью Nu . | Математическая |
Выходные порты
| Имя | Описание | Тип линии связи |
|---|---|---|
| outport | Выходной преобразованный сигнал, размерностью Ny . | Математическая |
Свойства
| Название | Имя | Описание | По умолчанию | Тип данных |
|---|---|---|---|---|
| Число переменных состояния | xc | Размерность Nx квадратной матрицы A. | 2 | Целое |
| Число входных воздействий | uc | Размерность входа Nu . | 1 | Целое |
| Число выходов | yc | Размерность выхода Ny . | 1 | Целое |
| Матрица A(Nx*Nx) | A | Квадратная матрица системы. | [[-1 , 1];[-1 , 0]] | Матрица |
| Матрица B(Nu*Nx) | B | Матрица входа. | [[1 , 0]] | Матрица |
| Матрица C(Nx*Ny) | C | Матрица выхода. | [[0];[1]] | Матрица |
| Матрица D(Nu*Ny) | D | Матрица обхода. | [[0]] | Матрица |
| Начальные условия (Nx) | y0 | Вектор начальных условий, размерностью Nx . | [0 , 0] | Массив |
Параметры
Промпт
//Описание блока, реализующего описание многомерной линейной
//динамической системы, записанной в матричной форме:
//dx(t)/dt = A·x(t) + B·u(t)
//y(t) = C·x(t) + D·u(t)
// A, B, C, D - матрицы: системы, входа, выхода и обхода, соответственно
// x(t) - вектор переменных состояния (размерностью [Nx])
// u(t) - вектор входа (размерностью [Nu])
// y(t) - вектор выхода (размерностью [Ny])
//Размерность матрицы A - [Nx×Nx]
//Размерность матрицы B - [Nu×Nx]
//Размерность матрицы C - [Nx×Ny]
//Размерность матрицы D - [Nu×Ny]
//1-е число в квадратных скобках - количество столбцов, 2-е число - количество строк
//Обязательное условие: Nx ≥ Ny
//Вход и выход блока - векторные сигналы (размерностью Nu и Ny, соответственно)
// xc - число переменных состояния. Размерность Nx квадратной матрицы A.
//По умолчанию равен 2
// uc - число входных воздействий. Размерность входа Nu. По умолчанию равен 1
// yc - число выходов. Размерность выхода Ny. По умолчанию равен 1
// A - матрица A(Nx*Nx). Квадратная матрица системы. По умолчанию [[-1 , 1];[-1 , 0]]
// B - матрица B(Nu*Nx). Матрица входа. По умолчанию [[1 , 0]]
// C - матрица C(Nx*Ny). Матрица выхода. По умолчанию [[0];[1]]
// D - матрица D(Nu*Ny). Матрица обхода. По умолчанию [[0]]
// y0 - начальные условия (Nx). Вектор начальных условий, размерностью Nx.
//По умолчанию [0 , 0]
//Параметры:
// xdif - динамические переменные. Внутренние переменные состояния блока
// fdif - производные. Значения производных внутренних переменных состояния блока
//Входы: inport - входной сигнал, размерностью Nu
//Выходы: outport - выходной преобразованный сигнал, размерностью Ny
block: (
type = "Переменные состояния",
points=[(-200 , 0),(-184 , 0),(-200 , -16),(408 , 308)],
xc = 2,
uc = 1,
yc = 1,
A = [[-1 , 1];[-1 , 0]],
B = [[1 , 0]],
C = [[0];[1]],
D = [[0]],
y0 = [0 , 0]
),

