A, B, C, D - матрицы: системы, входа, выхода и обхода, соответственно.
Размерность матриц показана на рис. 9.3.11 (n – количество переменных состояния, m – число входных сигналов, r – число выходных сигналов).

Рис. 9.3.11. Размерность матриц блока State-Space
Параметры:
A –Матрица системы.
B – Матрица входа.
C – Матрица выхода
D – Матрица обхода
Initial condition – Вектор начальных условий.
Absolute tolerance — Абсолютная погрешность.
На рис. 9.3.11 показан пример моделирования динамического объекта с помощью блока State-Space. Матрицы блока имеют следующие значения:


Рис. 9.3.12. Пример использования блока State-Space.
[Скачать пример]
9.4. Discrete – дискретные блоки
9.4.1. Блок единичной дискретной задержки Unit Delay
Назначение:
Выполняет задержку входного сигнала на один шаг модельного времени.
Параметры:
Initial condition – Начальное значение для выходного сигнала.
Sample time – Шаг модельного времени.
Входной сигнал блока может быть как скалярным, так и векторным. При векторном входном сигнале задержка выполняется для каждого элемента вектора. Блок поддерживает работу с комплексными и действительными сигналами.
На рис. 9.4.1 показан пример использования блока для задержки дискретного сигнала на один временной шаг, равный 0.1с.

Рис. 9.4.1. Пример использования блока Unit Delay
[Скачать пример]
9.4.2. Блок экстраполятора нулевого порядка Zero-Order Hold
Назначение:
Блок выполняет дискретизацию входного сигнала по времени.
Параметры:
Sample time – Величина шага дискретизации по времени.
Блок фиксирует значение входного сигнала в начале интервала квантования и поддерживает на выходе это значение до окончания интервала квантования. Затем выходной сигнал изменяется скачком до величины входного сигнала на следующем шаге квантования.
На рис. 9.4.2 показан пример использования блока Zero-Order Hold для формирования дискретного сигнала.

Рис. 9.4.2. Пример формирования дискретного сигнала с помощью блока Zero-Order Hold
[Скачать пример]
Блок экстраполятора нулевого порядка может использоваться также для согласования работы дискретных блоков имеющих разные интервалы квантования. На рис. 9.4.3 показан пример такого использования блока Zero-Order Hold. В примере блок Discrete Transfer Fcn имеет параметр Sample time = 0.4 , а для блока Discrete Filter этот же параметр установлен равным 0.8.

Рис. 9.4.3. Использование блока Zero-Order Hold для согласования работы дискретных блоков.
[Скачать пример]
9.4.3. Блок экстраполятора первого порядка First-Order Hold
Назначение:
Блок задает линейное изменение выходного сигнала на каждом такте дискретизации, в соответствии с крутизной входного сигнала на предыдущем интервале дискретизации.
Параметры:
Sample time – Величина шага дискретизации по времени.
Пример экстраполяции синусоидального сигнала этим блоком показан на рис. 9.4.4.

Рис. 9.4.4. Использование блока First-Order Hold
[Скачать пример]
9.4.4. Блок дискретного интегратора Discrete-Time Integrator
Назначение:
Блок используется для выполнения операции интегрирования в дискретных системах.
Параметры:
-
Integration method – Метод численного интегрирования:
Forward Euler - Прямой метод Эйлера.
Метод использует аппроксимацию T/(z-1) передаточной функции 1/s. Выходной сигнал блока рассчитывается по выражению:
y(k) = y(k–1) + T*u(k–1),
y – выходной сигнал интегратора,
u – входной сигнал интегратора,
T – шаг дискретизации,
k – номер шага моделирования.
Backward Euler – Обратный метод Эйлера.
Метод использует аппроксимацию T*z/(z–1) передаточной функции 1/s. Выходной сигнал блока рассчитывается по выражению:
y(k) = y(k–1) + T*u(k).
Trapeziodal – Метод трапеций.
Метод использует аппроксимацию T/2*(z+1)/(z–1) передаточной функции 1/s. Выходной сигнал блока рассчитывается по выражению:
x(k) = y(k–1) + T/2 * u(k–1).
Sample time — Шаг дискретизации по времени.
Остальные параметры дискретного интегратора те же, что и у блока аналогового интегратора Integrator (библиотека Continuous).
На рис. 9.4.5 показан пример демонстрирующий все три способа численного интегрирования блока Discrete-Time Integrator. Как видно из рисунка изображение блока меняется в зависимости от выбранного метода интегрирования.

Рис. 9.4.5. Выполнение интегрирования блоками Discrete-Time Integrator, реализующими разные численные методы.
[Скачать пример]
9.4.5. Дискретная передаточная функция Discrete Transfer Fсn
Назначение:
Блок Discrete Transfer Fcn задает дискретную передаточную функцию в виде отношения полиномов:
,
где
m+1 и n+1 – количество коэффициентов числителя и знаменателя, соответственно.
num – вектор или матрица коэффициентов числителя,
den – вектор коэффициентов знаменателя.
Параметры:
Numerator — Вектор или матрица коэффициентов числителя
Denominator – Вектор коэффициентов знаменателя
Sample time — Шаг дискретизации по времени.
Порядок числителя не должен превышать порядок знаменателя.
Входной сигнал блока должен быть скалярным. В том случае, если коэффициенты числителя заданы вектором, то выходной сигнал блока будет скалярным (также как и входной сигнал). На рис. 9.4.6 показан пример использования блока Discrete Transfer Fcn. В примере рассчитывается реакция на единичное ступенчатое воздействие дискретного аналога колебательного звена: .
Шаг дискретизации выбран равным 0.5 с.

Рис. 9.4.6. Использование блока Discrete Transfer Fcn
[Скачать пример]
9.4.6. Блок дискретной передаточной функции Discrete Zero-Pole
Назначение:
Блок Discrete Zero-Pole определяет дискретную передаточную функцию с заданными полюсами и нулями:
,
где
Z – вектор или матрица нулей передаточной функции,
P – вектор полюсов передаточной функции,
K – коэффициент передаточной функции, или вектор коэффициентов, если нули передаточной функции заданы матрицей. При этом размерность вектора K определяется числом строк матрицы нулей.
Параметры:
Zeros – Вектор или матрица нулей.
Poles – Вектор полюсов.
Gain – Скалярный или векторный коэффициент передаточной функции.
Sample time — Шаг дискретизации по времени.
Количество нулей не должно превышать число полюсов передаточной функции.
В том случае, если нули передаточной функции заданы матрицей, то блок Discrete Zero-Pole моделирует векторную передаточную функцию.
Нули или полюса могут быть заданы комплексными числами. В этом случае нули или полюса должны быть заданы комплексно-сопряженными парами полюсов или нулей, соответственно.
Начальные условия при использовании блока Discrete Zero-Pole полагаются нулевыми.
На рис. 9.4.7 показан пример использования блока Discrete Zero-Pole. С помощью рассматриваемого блока моделируется дискретный аналог передаточной функции
.
Шаг дискретизации выбран равным 0.5 с.

Рис. 9.4.7. Использование блока Discrete Zero-Pole.
[Скачать пример]
9.4.7. Блок дискретного фильтра Discrete Filter
Назначение:
Блок дискретного фильтра Discrete Filter задает дискретную передаточную функцию от обратного аргумента (1/z):
,
m+1 и n+1 – количество коэффициентов числителя и знаменателя, соответственно.
num – вектор или матрица коэффициентов числителя,
den – вектор коэффициентов знаменателя.
Параметры:
Numerator — Вектор или матрица коэффициентов числителя
Denominator –Вектор коэффициентов знаменателя
Sample time — Шаг дискретизации по времени.
На рис. 9.4.8 показан пример использования блока Discrete Filter. С помощью рассматриваемого блока моделируется дискретный аналог передаточной функции:
.
Шаг дискретизации выбран равным 0.5 с.

Рис. 9.4.8. Использование блока Discrete Filter.
[Скачать пример]
9.4.8. Блок модели динамического объекта Discrete State-Space
Назначение:
Блок создает динамический объект, описываемый уравнениями в пространстве состояний:
,
где
x – вектор состояния,
u – вектор входных воздействий,
y – вектор выходных сигналов,
A, B, C, D - матрицы: системы, входа, выхода и обхода, соответственно,
n – номер шага моделирования.
Размерность матриц показана на рис. 9.4.9 (n – количество переменных состояния, m – число входных сигналов, r – число выходных сигналов).

Рис. 9.4.9. Размерность матриц блока Discrete State-Space
Параметры:
A –Матрица системы.
B – Матрица входа.
C – Матрица выхода
D – Матрица обхода
Initial condition – Вектор начальных условий.
Sample time — Шаг дискретизации по времени.
На рис. 9.4.10 показан пример моделирования динамического объекта с помощью блока Discrete State-Space. Матрицы блока имеют следующие значения:


Рис. 9.4.10. Пример использования блока Discrete State-Space.
9.5. Nonlinear - нелинейные блоки
9.5.1. Блок ограничения Saturation
Назначение:
Выполняет ограничение величины сигнала.
Параметры:
Upper limit - Верхний порог ограничения.
Lower limit - Нижний порог ограничения.
Treat as gain when linearizing (флажок) - Трактовать как усилитель с коэффициентом передачи равным 1 при линеаризации.
Выходной сигнал блока равен входному если его величина не выходит за порог ограничения. По достижении входным сигналом уровня ограничения выходной сигнал блока перестает изменяться и остается равным порогу. На рис. 9.5.1 показан пример использования блока для ограничения синусоидального сигнала. На рисунке приводятся временные диаграммы сигналов и зависимость выходного сигнала блока от входного.

Рис. 9.5.1. Пример использования блока Saturation
[Скачать пример]
9.5.2. Блок с зоной нечувствительности Dead Zone
Назначение:
Реализует нелинейную зависимость типа "зона нечувствительности (мертвая зона)".
Параметры:
Start of dead zone - Начало зоны нечувствительности (нижний порог).
End of dead zone - Конец зоны нечувствительности (верхний порог).
Saturate on integer overflow (флажок) - Подавлять переполнение целого. При установленном флажке ограничение сигналов целого типа выполняется корректно.
|