Текущее значение Обобщенной Модели
curval = getValue(M)
curval = getValue(M,blockvalues)
curval = getValue(M,Mref)
возвращает текущее значение curval
= getValue(M
)curval
из модели Generalized 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)).
| |
|
Блоки определения структуры Имена полей |
|
Модель Generalized LTI. Если вы обеспечиваете |
|
Числовой массив или модель Numeric LTI, представляющая текущее значение Если вы не задаете заменяющее значение для данного Блока Системы управления |
Оцените Модель для Заданных значений ее Блоков
В этом примере показано, как заменить Блок Системы управления в модели Generalized LTI с заданным использованием заменяющего значения getValue
.
Рассмотрите следующую систему с обратной связью:
Следующий код создает a 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
| replaceBlock
| systune
| looptune
| hinfstruct
(Robust Control Toolbox)