Сконфигурируйте аргументы данных о параметрах блоков MATLAB Function

Можно использовать parameter data arguments в блоках MATLAB Function, чтобы использовать переменные, заданные в MATLAB® рабочая область, рабочее пространство модели, рабочая область подсистемы маскированная или Simulink® словарь данных как входные параметры. Simulink ищет и выбирает переменные, используемые аргументами данных о параметре при помощи тех же правил для разрешения символа. Смотрите Разрешение Символа. Если переменная того же имени существует в больше чем одной из рабочих областей, видимых с блоком, блок использует переменную, самую близкую к блоку в иерархии рабочей области. Если блок MATLAB Function находится в подсистеме маскированной, блок использует переменную в рабочей области подсистемы. В противном случае блок использует переменную в рабочем пространстве модели, сопровождаемом при помощи переменной в базовом рабочем пространстве MATLAB и в связанном словаре данных Simulink, в том порядке.

Чтобы задать аргументы данных о параметре, в Model Explorer или Портах и Менеджере данных, создают или выбирают существующие данные и устанавливают свойство Scope на Parameter. Для получения дополнительной информации о создании аргументов и данных в блоках MATLAB Function, смотрите, Задают Данные о блоке MATLAB function. Аргументы данных о параметре не создают порты блока.

Управляйте аргументами данных о параметре с масками

Можно непосредственно присвоить значения аргументам данных о параметре в блоке MATLAB Function путем добавления маски в блок, создания параметра в маске и давания параметру того же имени в качестве аргумента данных о параметре. Для получения дополнительной информации о создании масок для блоков, смотрите Основы маскирования. После того, как вы замаскируете блок, можно настроить свойства аргумента данных о параметре при помощи Портов и Менеджера данных, но не Model Explorer.

Настройте пример аргумента данных о параметре

Этот пример использует блок MATLAB function маскированный с аргументом данных о параметре.

Функция MATLAB умножает аргумент const данных о параметре значением блока-сигнала Sine wave. Кликните по значку стрелки на блоке MATLAB function, чтобы просмотреть код.

function y = fcn(u, const)
y = const*u;

Можно настроить значение const путем двойного клика по блоку MATLAB function. Маска блока задает параметр множителя синусоиды Набора, который можно отредактировать в Редакторе Маски. Блок MATLAB function задает const как данные с набором Осциллографа к Parameter.

Аргумент данных о параметре и параметр маски должны иметь то же имя. В этом примере, изменяя имя аргумента данных о параметре, не изменяя название параметра вызывает ошибку.

Управляйте аргументами данных о параметре в рабочих областях

Если вы хотите, чтобы несколько блоков MATLAB Function получили доступ к той же переменной в модели, можно задать переменную в рабочем пространстве модели и добавить аргументы данных о параметре в каждую функцию MATLAB, которая указывает на ту переменную. Можно задать переменную непосредственно в рабочем пространстве модели, загрузить переменную в MAT-файле или файле MATLAB, или создать переменную с пользовательским кодом MATLAB. Для получения дополнительной информации смотрите, Задают Источник для Данных в Рабочем пространстве модели.

Если вы хотите использовать переменную в блоках MATLAB Function в многоуровневых моделях, можно задать переменную в базовом рабочем пространстве MATLAB путем определения переменной в Командном окне или путем загрузки MAT-файла. MATLAB Function блокирует переменные доступа, заданные в рабочем пространстве MATLAB, пока вы не закрываете MATLAB.

Можно также задать переменные с помощью словаря данных Simulink. Для получения дополнительной информации смотрите то, Что Словарь Данных?.

Связанные примеры

Больше о