Установите значение настроенной параметризации блока в slTuner
интерфейс
setBlockValue
позволяет вам инициализировать или изменить текущее значение параметризации настроенного блока в slTuner
интерфейс.
slTuner
интерфейс параметрирует, каждый настроил блок Simulink® как Блок Системы управления или обобщенную параметрическую модель типа genmat
или genss
. Эта параметризация задает настроенные переменные для команд такой как systune
.
Создайте slTuner
интерфейс для scdcascade
модель, и установленный значение параметризации одного из настроенных блоков.
Создайте slTuner
интерфейс.
open_system('scdcascade'); st = slTuner('scdcascade',{'C1','C2'});
Оба C1
и C2
ПИ-контроллеры. Исследуйте параметризацию по умолчанию C1
.
getBlockParam(st,'C1')
ans = Tunable continuous-time PID controller "C1" with formula: 1 Kp + Ki * --- s and tunable parameters Kp, Ki. Type "pid(ans)" to see the current value and "get(ans)" to see all properties.
Параметризация по умолчанию является ПИ-контроллером с двумя настраиваемыми параметрами, Kp
и Ki
.
Установите значение параметризации C1
.
C = pid(4.2);
setBlockValue(st,'C1',C);
Исследуйте значение параметризации C1
.
getBlockValue(st,'C1')
ans = Kp = 4.2 Name: C1 P-only controller.
Исследуйте параметризацию C1.
getBlockParam(st,'C1')
ans = Tunable continuous-time PID controller "C1" with formula: 1 Kp + Ki * --- s and tunable parameters Kp, Ki. Type "pid(ans)" to see the current value and "get(ans)" to see all properties.
Заметьте, что несмотря на то, что текущее значение блока является контроллером P-only, параметризация блока продолжает быть ПИ-контроллером.
Создайте slTuner
интерфейс.
open_system('scdcascade'); st = slTuner('scdcascade',{'C1','C2'});
Создайте структуру значения блока с именами полей, которые соответствуют настраиваемым блокам в st
.
blockValues = getBlockValue(st); blockValues.C1 = pid(0.2,0.1); blockValues.C2 = pid(2.3);
Установите значения параметризации настраиваемых блоков в st
использование заданной структуры.
setBlockValue(st,blockValues);
st
— Интерфейс для настройки систем управления смоделирован в SimulinkslTuner
интерфейсИнтерфейс для настройки систем управления, смоделированных в Simulink в виде slTuner
интерфейс.
blk
— БлокБлокируйтесь в списке настроенных блоков для st
В виде вектора символов или строки. Можно задать полный блок path или любой фрагмент пути, который однозначно определяет блок среди других настроенных блоков st
.
Пример: blk = 'scdcascade/C1'
, blk = "C1"
Примечание
setBlockValue
позволяет вам изменять только общую стоимость параметризации blk
. Изменить значения элементов в рамках параметризации пользовательского блока, такой как обобщенные модели в пространстве состояний, использование setTunedValue
.
value
— Значение параметризации блокаЗначение параметризации блока в виде числовой модели LTI или Блока Системы управления, такого tunableGain
или tunablePID
. Значение value
должно быть совместимо с параметризацией blk
. Например, если blk
параметрируется как ПИД-регулятор, затем value
должен быть tunablePID
блокируйтесь, числовое pid
модель или числовое tf
модель, которая представляет ПИД-регулятор.
setBlockValue
обновляет значение параметров настроенного блока на основе параметров value
. Используя setBlockValue
не изменяет структуру параметризации настроенного блока. Изменить параметризацию blk
Использование setBlockParam
. Например, можно использовать setBlockParam
изменить параметризацию блока от tunablePID
к трехполюсному tunableTF
модель.
blkValues
— Значения нескольких параметризации блокаЗначения нескольких параметризации блока в виде структуры с полями, заданными как числовые модели LTI или Блоки Системы управления. Имена полей являются именами блоков в st
. Только блокируется характерный для st
и blkValues
обновляются, в то время как все другие блоки в st
останьтесь неизменными.
Задавать blkValues
, можно получить и изменить структуру значения параметризации блока от st
.
blkValues = getblockValue(st); blkValues.C1 = pid(0.1,0.2);
Примечание
Для блоков Simulink, имена которых не являются допустимыми именами полей, задайте имя соответствующего поля в blkValues
когда это появляется в параметризации блока.
blockParam = getBlockParam(st,'B-1');
fieldName = blockParam.Name;
blockValues = struct(fieldName,newB1);
Tuned blocks, используемый slTuner
соедините интерфейсом, идентифицируйте блоки в модели Simulink, параметры которой должны быть настроены, чтобы удовлетворить настраивающимся целям. Можно настроить большинство блоков Simulink, которые представляют линейные элементы, такие как усиления, передаточные функции или модели в пространстве состояний. (Для полного списка блоков, которые поддерживают настройку, смотрите, Как Настроенные блоки Simulink Параметрируются). Можно также настроить более комплексные блоки, такие как SubSystem или Блоки s-function путем определения эквивалентной настраиваемой линейной модели.
Используйте настраивающиеся команды такой как systune
настроить параметры настроенных блоков.
Необходимо задать настроенные блоки (например, C1
и C2
) когда вы создаете slTuner
интерфейс.
st = slTuner('scdcascade',{'C1','C2'})
Можно изменить список настроенного использования блоков addBlock
и removeBlock
.
Взаимодействовать с настроенным использованием блоков:
getBlockParam
, getBlockValue
, и getTunedValue
получить доступ к настроенной параметризации блока и их текущим значениям.
setBlockParam
, setBlockValue
, и setTunedValue
изменить настроенную параметризацию блока и их значения.
writeBlockValue
обновить блоки в модели Simulink с текущими значениями настроенной параметризации блока.
В slTuner
интерфейс, tuned variables является любыми Блоками Системы управления, вовлеченными в параметризацию настроенного блока Simulink, или непосредственно или через обобщенную параметрическую модель. Настроенные переменные являются параметрами, которыми управляют путем настройки команд такой как systune
.
Для блоков Simulink, параметрированных обобщенной моделью или настраиваемой поверхностью:
getBlockValue
обеспечивает доступ к общей стоимости параметризации блока. Чтобы получить доступ к значениям настроенных переменных в рамках параметризации блока, использовать getTunedValue
.
setBlockValue
не может использоваться, чтобы изменить значение блока. Чтобы изменить значения настроенных переменных в рамках параметризации блока, использовать setTunedValue
.
Для блоков Simulink, параметрированных Блоком Системы управления, сам блок является настроенной переменной. Чтобы изменить значение блока, можно использовать также setBlockValue
или setTunedValue
. Точно так же можно получить значение блока с помощью также getBlockValue
или getTunedValue
.
getBlockValue
| setBlockParam
| setTunedValue
| slTuner
| writeBlockValue
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.