Получите текущее значение настроенной переменной в slTuner
интерфейс
getTunedValue
позволяет вам получить доступ к текущему значению настроенной переменной в slTuner
интерфейс.
slTuner
интерфейс параметризовал каждый настроенный блок как Блок Системы управления (Control System Toolbox) или обобщенная параметрическая модель типа genmat
или genss
. Эта параметризация задает настроенные переменные для команд, таких как systune
.
Создайте 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
модель.
st
— Интерфейс для настройки систем управления смоделирован в Simulink®slTuner
интерфейсИнтерфейс для настройки систем управления, смоделированных в Simulink, заданном как slTuner
интерфейс.
var
— Переменная TunedНастроенная переменная в 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'
.
value
— Текущее значение настроенной переменнойТекущее значение настроенной переменной в st
, возвращенный в виде числа или массива или модели в пространстве состояний. Когда настраивающиеся результаты не были применены к модели Simulink с помощью writeBlockValue
, значение возвращено getTunedValue
может отличаться от значения блока Simulink.
Используйте writeBlockValue
выровнять значения параметризации блока с фактическими значениями блока в модели Simulink.
S
— Текущие значения всех настроенных переменныхТекущие значения всех настроенных переменных в 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
.
getBlockParam
| getBlockValue
| setTunedValue
| slTuner
| tunableSurface
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.