getTunedValue

Получите текущее значение настроенной переменной в slTuner интерфейс

Описание

getTunedValue позволяет вам получить доступ к текущему значению настроенной переменной в slTuner интерфейс.

slTuner интерфейс параметрирует каждый настроенный блок как Блок Системы управления (Control System Toolbox) или обобщенная параметрическая модель типа genmat или genss. Эта параметризация задает настроенные переменные для команд, таких как systune.

пример

value = getTunedValue(st,var) возвращает текущее значение настроенной переменной, var, в slTuner интерфейс, st.

пример

[value1,value2,...] = getTunedValue(st,var1,var2,...) возвращает текущие значения нескольких настроенных переменных.

пример

S = getTunedValue(st) возвращает структуру, содержащую текущие значения всех настроенных переменных в st.

Примеры

свернуть все

Создайте slTuner интерфейс для scdcascade модель.

open_system('scdcascade');
st = slTuner('scdcascade',{'C1','C2'});

Установите пользовательскую параметризацию для одного из настраиваемых блоков.

C1CustParam = realp('Kp',1) + tf(1,[1 0]) * realp('Ki',1);
setBlockParam(st,'C1',C1CustParam);

Эти команды устанавливают параметризацию C1 блок контроллера к обобщенному пространству состояний (genss) модель, содержащая два настраиваемых параметра, Ki и Kp.

Как правило, вы использовали бы настраивающуюся команду, такую как systune настроить значения параметров в пользовательской параметризации.

После настройки используйте getTunedValue запрашивать настроенное значение Ki.

KiTuned = getTunedValue(st,'Ki')
KiTuned =

     1

Запрашивать значение настроенного блока в целом, C1, используйте getBlockValue.

Создайте slTuner интерфейс для scdcascade модель.

open_system('scdcascade');
st = slTuner('scdcascade',{'C1','C2'});

Установите пользовательскую параметризацию для одного из настраиваемых блоков.

C1CustParam = realp('Kp',1) + tf(1,[1 0]) * realp('Ki',1);
setBlockParam(st,'C1',C1CustParam);

Эти команды устанавливают параметризацию C1 блок контроллера к обобщенному пространству состояний (genss) модель, содержащая настраиваемые параметры Kp и Ki.

Как правило, вы использовали бы настраивающуюся команду, такую как systune настроить значения параметров в пользовательской параметризации.

После настройки используйте getTunedValue запрашивать настроенные значения обоих Kp и Ki.

[KiTuned,KpTuned] = getTunedValue(st,'Ki','Kp')
KiTuned =

     1


KpTuned =

     1

Создайте slTuner интерфейс для scdcascade модель.

open_system('scdcascade');
st = slTuner('scdcascade',{'C1','C2'});

Установите пользовательскую параметризацию для настроенного блока C1.

C1CustParam = realp('Kp',1) + tf(1,[1 0]) * realp('Ki',1);
setBlockParam(st,'C1',C1CustParam);

Как правило, вы использовали бы настраивающуюся команду, такую как systune настроить значения параметров в пользовательской параметризации.

После настройки используйте getTunedValue запрашивать настроенные значения параметризации всех настроенных блоков в st.

S = getTunedValue(st)
S = 

  struct with fields:

    C2: [1x1 pid]
    Ki: 1
    Kp: 1

Настроенные значения возвращены в структуре, которая содержит поля для:

  • Настроенный блок, C2, который параметрируется как Блок Системы управления.

  • Настраиваемые элементы, Kp и Ki, в блоке C2, который параметрируется как пользовательский genss модель.

Входные параметры

свернуть все

Интерфейс для настройки систем управления смоделирован в Simulink в виде slTuner интерфейс.

Настроенная переменная в stВ виде вектора символов или строки. Настроенная переменная является любым Блоком Системы управления, таким realp, tunableSS, или tunableGain, вовлеченный в параметризацию настроенного блока Simulink, или непосредственно или через обобщенную параметрическую модель. Получить список всех настроенных переменных в st, используйте getTunedValue(st).

var может относиться к следующему:

  • Для блока, параметрированного Блоком Системы управления, именем блока. Например, если параметризация блока

    C = tunableSS('C')

    затем установите var = 'C'.

  • Для блока, параметрированного genmat/genss модель, M, имя любого Блока Системы управления перечислено в M.Blocks. Например, если параметризация блока

    a = realp('a',1);
    C = tf(a,[1 a]);

    затем установите var = 'a'.

Выходные аргументы

свернуть все

Текущее значение настроенной переменной в st, возвращенный в виде числа или массива или модели в пространстве состояний. Когда настраивающиеся результаты не были применены к модели Simulink с помощью writeBlockValue, значение возвращено getTunedValue может отличаться от значения блока Simulink.

Примечание

Используйте writeBlockValue выровнять значения параметризации блока с фактическими значениями блока в модели Simulink.

Текущие значения всех настроенных переменных в st, возвращенный как структура. Имена полей в S имена настроенных переменных в st, и значения полей являются соответствующими числовыми скалярами или массивами.

Можно использовать эту структуру, чтобы передать настроенные значения переменных от одного slTuner взаимодействуйте через интерфейс к другому slTuner интерфейс с теми же настроенными переменными, можно следующим образом:

S = getTunedValue(st1);
setTunedValue(st2,S);

Больше о

свернуть все

Настроенные блоки

Tuned blocks, используемый slTuner соедините интерфейсом, идентифицируйте блоки в модели Simulink, параметры которой должны быть настроены, чтобы удовлетворить настраивающимся целям. Можно настроить большинство блоков Simulink, которые представляют линейные элементы, такие как усиления, передаточные функции или модели в пространстве состояний. (Для полного списка блоков, которые поддерживают настройку, смотрите, Как Настроенные блоки Simulink Параметрируются). Можно также настроить более комплексные блоки, такие как SubSystem или Блоки s-function путем определения эквивалентной настраиваемой линейной модели (Control System Toolbox).

Используйте настраивающиеся команды, такие как systune настроить параметры настроенных блоков.

Необходимо задать настроенные блоки (например, C1 и C2) когда вы создаете slTuner интерфейс.

st = slTuner('scdcascade',{'C1','C2'})

Можно изменить список настроенных блоков с помощью addBlock и removeBlock.

Взаимодействовать с настроенным использованием блоков:

  • getBlockParam, getBlockValue, и getTunedValue получить доступ к настроенной параметризации блока и их текущим значениям.

  • setBlockParam, setBlockValue, и setTunedValue изменить настроенную параметризацию блока и их значения.

  • writeBlockValue обновить блоки в модели Simulink с текущими значениями настроенной параметризации блока.

Настроенные переменные

В slTuner интерфейс, tuned variables является любыми Блоками Системы управления (Control System Toolbox), вовлеченный в параметризацию настроенного блока Simulink, или непосредственно или через обобщенную параметрическую модель. Настроенные переменные являются параметрами, которыми управляют путем настройки команд, таких как systune.

Для блоков Simulink, параметрированных обобщенной моделью или настраиваемой поверхностью:

  • getBlockValue обеспечивает доступ к общей стоимости параметризации блока. Чтобы получить доступ к значениям настроенных переменных в рамках параметризации блока, используйте getTunedValue.

  • setBlockValue не может использоваться, чтобы изменить значение блока. Чтобы изменить значения настроенных переменных в рамках параметризации блока, используйте setTunedValue.

Для блоков Simulink, параметрированных Блоком Системы управления, сам блок является настроенной переменной. Чтобы изменить значение блока, можно использовать любой setBlockValue или setTunedValue. Точно так же можно получить значение блока с помощью любого getBlockValue или getTunedValue.

Введенный в R2015b