Текущее значение обобщенной модели
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или команда «Надежное управление Toolbox™» hinfstruct (Надёжная панель инструментов управления)).
| |
|
Структура, определяющая блоки Имена полей |
|
Обобщенная модель LTI. Если вы предоставите |
|
Числовой массив или числовая модель LTI, представляющая текущее значение Если не указано значение замены для данного блока конструкции элемента управления |
Оценка модели для заданных значений ее блоков
В этом примере показано, как заменить блок конструкции элемента управления в обобщенной модели LTI указанным значением замены с помощью getValue.
Рассмотрим следующую систему с замкнутым контуром:

Следующий код создает genss модель этой системы с (s + 1) 3 и настраиваемым ПИ-контроллером 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 (Надёжная панель инструментов управления). Например, при наличии модели системы управления с замкнутым контуром 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 (инструментарий надежного управления)