Текущее значение обобщенной модели
curval = getValue(M)
curval = getValue(M,blockvalues)
curval = getValue(M,Mref)
возвращает текущее значение curval
= getValue(M
)curval
Обобщенной модели LTI или Обобщенной матрицы
M. Текущее значение получается путем замены всех блоков Система Управления в
M
по их текущему значению. (Для неопределенных блоков «текущее значение» является номинальным значением блока.)
использует значения блоков, заданные в структуре curval
= getValue(M
,blockvalues
)blockvalues
для вычисления текущего значения. Имена и значения полей blockvalues
задайте имена блоков и соответствующие значения. Блоки M
не указано в blockvalues
заменяются текущими значениями.
наследует значения блоков от обобщенной модели curval
= getValue(M
,Mref
)Mref
. Этот синтаксис эквивалентен curval
= getValue (M
, Mref.Blocks
). Используйте этот синтаксис, чтобы вычислить текущее значение M
использование блока значений, вычисленных в другом месте (для примера, настроенных значений, полученных с помощью команд настройки, таких как systune
, looptune
, или команда Robust Control Toolbox™ hinfstruct
(Robust Control Toolbox)).
| |
|
Структура, задающая блоки Имена полей |
|
Обобщенная модель LTI. Если вы предоставляете |
|
Числовой массив или числовая модель LTI, представляющая текущее значение Если вы не задаете значение замены для данного блока Система Управления |
Вычислите модель для заданных значений ее блоков
В этом примере показано, как заменить блок Система Управления в обобщенной модели LTI на заданное значение замены с помощью getValue
.
Рассмотрите следующую систему с обратной связью:
Следующий код создает genss
модель этой системы с и настраиваемое ПИ-контроллер C.
G = zpk(1,[-1,-1,-1],1); C = tunablePID('C','pi'); Try = feedback(G*C,1)
genss
модели Try
имеет одну Систему управления Блок, C
. Блок C
инициализируется до значений по умолчанию, и модель Try
имеет текущее значение, которое зависит от текущего значения C
. Использовать getValue
для оценки C
и Try
для анализа текущих значений.
Оценка C
для получения его текущего значения.
Cnow = getValue(C)
Эта команда возвращает число pid
объект, коэффициенты которого отражают текущие значения настраиваемых параметров в C
.
Оценка Try
для получения его текущего значения.
Tnow = getValue(Try)
Эта команда возвращает числовую модель, которая эквивалентна feedback(G*Cnow,1)
.
Доступ к значениям настроенных моделей и блоков
Распространите изменения в значениях блоков из одной модели в другую с помощью getValue
.
Этот метод полезен для доступа к значениям моделей и блоков, настроенных с помощью команд настройки, таких как systune
, looptune
, или hinfstruct
(Robust Control Toolbox). Например, если у вас есть модель системы управления с обратной связью T0
, с двумя настраиваемыми блоками, C1
и C2
, вы можете настроить его, используя:
[T,fSoft] = systune(T0,SoftReqs);
Затем можно получить доступ к настроенным значениям C1
и C2
, а также любая модель с обратной связью H
что зависит от C1
и C2
, используя следующее:
C1t = getValue(C1,T); C2t = getValue(C2,T); Ht = getValue(H,T);
genss
| looptune
| replaceBlock
| systune
| hinfstruct
(Robust Control Toolbox)