set_param

Установите систему и блокируйте значения параметров

Синтаксис

set_param(Object,ParameterName,Value,...ParameterNameN,ValueN)

Описание

пример

set_param(Object,ParameterName,Value,...ParameterNameN,ValueN) устанавливает параметр на заданное значение на заданной модели или блочном объекте.

Когда вы установите несколько параметров на той же модели или блоке, используйте единственную команду set_param с несколькими парами ParameterName, аргументов Value, а не нескольких команд set_param. Этот метод эффективен, потому что использование единственного вызова требует параметров оценки только однажды. Если какие-либо названия параметра или значения недопустимы, то функция не устанавливает параметров.

Советы:

  • Если вы выполняете множественные вызовы к set_param для того же блока, то определение блока с помощью числового указателя более эффективно, чем использование полного блока path. Используйте getSimulinkBlockHandle, чтобы получить блочный указатель.

  • При использовании matlab -nodisplay, чтобы запустить сеанс, вы не можете использовать set_param, чтобы запустить ваше моделирование. Режим -nodisplay не поддерживает моделирование с помощью set_param. Используйте команду sim вместо этого.

  • После того, как вы установите параметры в рабочей области MATLAB®, чтобы видеть изменения в модели, обновите схему.

    set_param(model,'SimulationCommand','Update')

Для названий параметра см.:

Примеры

свернуть все

Откройте vdp и установите параметры StopTime и Solver.

vdp
set_param('vdp','Solver','ode15s','StopTime','3000')

Откройте модель и установите параметры StopTime и Solver. Используйте bdroot, чтобы получить текущую модель верхнего уровня.

vdp
set_param(bdroot,'Solver','ode15s','StopTime','3000')

Откройте vdp и установите значение параметров Gain в блоке Му.

vdp
set_param('vdp/Mu','Gain','10')

Откройте vdp и установите положение блока Fcn.

vdp
set_param('vdp/Fcn','Position',[50 100 110 120])

Установите положение блока Fcn в модели vdp.

Используйте getSimulinkBlockHandle, чтобы загрузить модель vdp при необходимости (путем определения true) и получить указатель на блок Fcn. Если вы выполняете множественные вызовы к set_param для того же блока, то использование блочного указателя более эффективно, чем определение полного блока path как вектор символа.

fcnblockhandle = getSimulinkBlockHandle('vdp/Fcn',true);

Можно использовать блочный указатель в последующих вызовах get_param или set_param. Если вы исследуете указатель, вы видите, что он содержит двойное. Не пытайтесь использовать количество одного только указателя (e. g., 5.007), потому что обычно необходимо задавать еще много цифр, чем отображения MATLAB. Вместо этого присвойте указатель на переменную и используйте то имя переменной, чтобы задать блок.

Используйте блочный указатель с set_param, чтобы установить положение.

set_param(fcnblockhandle,'Position',[50 100 110 120])

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

свернуть все

Указатель или имя модели или блока, заданного как числовой указатель или вектор символа. Числовой указатель должен быть скаляром. Можно также установить параметры строк и портов, но необходимо использовать числовые указатели, чтобы задать их.

Совет

Если вы выполняете множественные вызовы к set_param для того же блока, то определение блока с помощью числового указателя более эффективно, чем использование полного блока path с set_param. Используйте getSimulinkBlockHandle, чтобы получить блочный указатель. Не пытайтесь использовать количество одного только указателя (e. g., 5.007), потому что обычно необходимо задавать еще много цифр, чем отображения MATLAB. Присвойте указатель на переменную и используйте то имя переменной, чтобы задать блок.

Пример: 'vdp/Fcn'

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

Пример: 'Решатель', 'ode15s', 'StopTime', '3000'

Пример: 'SimulationCommand', 'запустить'

Пример: 'Положение', [50 100 110 120]

Типы данных: char

Представлено до R2006a

Была ли эта тема полезной?