Текущее значение Блока Системы управления в Обобщенной Модели
val = getBlockValue(M,blockname)
[val1,val2,...] = getBlockValue(M,blockname1,blockname2,...)
S = getBlockValue(M)
возвращает текущее значение Блока Системы управления
val = getBlockValue(M,blockname)blockname в обобщенной модели
M. (Для неопределенных блоков “текущее значение” является номинальной стоимостью блока.)
[ возвращает значения заданных Блоков Системы управления.val1,val2,...] = getBlockValue(M,blockname1,blockname2,...)
возвращает значения всех Блоков Системы управления обобщенной модели в структуре. Этот синтаксис позволяет вам передать значения блока от одной обобщенной модели до другой модели, которая использует те же Блоки Системы управления, можно следующим образом: S = getBlockValue(M)
S = getBlockValue(M1); setBlockValue(M2,S);
|
Обобщенный LTI ( |
|
Имя Блока Системы управления в модели Получить список Блоков Системы управления в |
|
Числовая модель LTI или численное значение, равняйтесь текущему значению Блока Системы управления |
|
Текущие значения всех Блоков Системы управления в |
Создайте настраиваемый genss модель, и оценивает текущее значение Блоков Системы управления модели.
Как правило, вы используете getBlockValue получать настроенные значения блоков системы управления после настройки genss модель с помощью настраивающейся команды, такой как systune. В данном примере создайте модель и получите начальные значения блока.
G = zpk([],[-1,-1],1); C = tunablePID('C','PID'); a = realp('a',10); F = tf(a,[1 a]); T = feedback(G*C,1)*F; Cval = getBlockValue(T,'C')
Continuous-time I-only controller:
1
Ki * ---
s
With Ki = 0.001Cval числовой pid объект контроллера.
aval = getBlockValue(T,'a')aval =
10aval числовой скаляр, потому что a действительный скалярный параметр.
Используя genss модель предыдущего примера, получите текущие значения всех блоков в модели.
G = zpk([],[-1,-1],1); C = tunablePID('C','PID'); a = realp('a',10); F = tf(a,[1 a]); T = feedback(G*C,1)*F; S = getBlockValue(T)
S =
C: [1x1 pid]
a: 10