Текущее значение обобщенной модели
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)