MATLABFunctionConfiguration

Блок MATLAB function свойства строения

Описание

The MATLABFunctionConfiguration объект управляет свойствами MATLAB Function блоков, такими как описание, шаг расчета и скрипт функции.

Совет

Можно также сконфигурировать MATLAB® Функциональный блок программно при помощи Stateflow.EMChart объект. Этот объект предоставляет доступ к входам, выходам и свойствам блока MATLAB Function. Для получения дополнительной информации см. «Программная настройка блока MATLAB function».

Создание

Каждый блок MATLAB Function имеет свои собственные MATLABFunctionConfiguration объект. Для доступа к этому объекту используйте get_param функция. Для примера, если модель myModel содержит блок MATLAB Function с именем MATLAB Function, введите:

config = get_param('myModel/MATLAB Function', ...
    'MATLABFunctionConfiguration');

Свойства

расширить все

Путь блока MATLAB Function относительно модели, заданный как вектор символов.

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

Код для блока MATLAB Function, заданный как вектор символов.

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

Метод обновления для блока MATLAB Function, заданный как одно из следующих значений:

  • Inherited - Входной сигнал в триггерном порте определяет, когда блок обновляется во время симуляции. Сигнал от подключенного Simulink® блок запускает порт. Если UpdateMethod изменяется на 'Inherited', Sample Time автоматически устанавливается на -1.

  • Discrete - Модель Simulink генерирует неявное событие в регулярных временных интервалах, чтобы пробудить блок со скоростью, которую вы задаете в SampleTime свойство. Другие блоки в модели могут иметь разные шаги расчета.

  • Continuous - Блок MATLAB Function обновляется только на основных временных шагах, хотя и вычисляет выходы и локальные непрерывные переменные во время незначительных и основных временных шагов. Если на UpdateMethod изменяется на 'Continuous', Sample Time автоматически устанавливается на 0.

Когда вы задаете UpdateMethod на Inherited или Continuous и попытаться изменить SampleTimeSimulink отображает предупреждение и игнорирует входное значение шага расчета.

Использование пользовательского интерфейса

В Диспетчере портов и данных установите Update method равным Inherited, Discrete, или Continuous

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

Шаг расчета блока MATLAB Function, заданный как вектор символов. Шаг расчета действителен только тогда, когда UpdateMethod установлено в Discrete. Если UpdateMethod установлено в Continuous или Inheritedлюбые изменения, внесенные во шаг расчета, игнорируются.

Использование пользовательского интерфейса

В Диспетчере портов и данных введите значение параметра Sample Time.

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

Описание блока MATLAB Function, заданное как вектор символов.

Использование пользовательского интерфейса

В Диспетчере портов и данных введите описание в поле Description.

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

Ссылка на документацию для блока MATLAB Function, заданная как вектор символов.

Использование пользовательского интерфейса

В Диспетчере портов и данных введите ссылку в поле Document link.

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

Поддерживает ли блок MATLAB Function данные переменного размера, заданные в виде числа или логического 1 (true) или 0 (false).

Использование пользовательского интерфейса

В Диспетчере портов и данных выберите Support variable-size arrays, чтобы включить эту настройку.

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

Поддерживает ли блок MATLAB Function семантику прямой передачи, заданную в виде числа или логического 1 (true) или 0 (false). Считается, что блок имеет прямое сквозное соединение, если выход блока напрямую зависит от входа блока. Блок не имеет прямого сквозного соединения, если выходы блока зависят от внутренних состояний и свойств, а не от входов блока.

Использование пользовательского интерфейса

В Диспетчере портов и данных выберите Allow direct feedthrough, чтобы включить эту настройку.

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

Насыщаются ли данные в блоке MATLAB Function при целочисленном переполнении, заданном в виде числа или логического 1 (true) или 0 (false). Если для этого параметра задано значение trueпереполнения достигают минимального или максимального значения, которое может представлять тип данных. Если параметр false, переполнение оборачивается к соответствующему значению, которое может представлять тип данных. Если у вашей модели есть возможное переполнение и вы хотите применить защиту от насыщения в сгенерированном коде, рекомендуется включить эту настройку. Если у вас есть ограничения по эффективности или вы не имеете отношения к целочисленному переполнению, можно отключить этот параметр.

Использование пользовательского интерфейса

В Диспетчере портов и данных выберите Saturate on integer overflow, чтобы включить эту настройку.

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

Унаследованные сигналы Simulink для обработки как Fixed-Point Designer™ fi объекты, заданные как одно из следующих значений:

  • 'FixedPoint' - Блок MATLAB Function обрабатывает все входы с фиксированной точкой следующим fi объекты.

  • 'FixedPointAndInteger' - Блок MATLAB Function обрабатывает все входы с фиксированной точкой и целое число как fi объекты.

Чтобы узнать больше о fi объекты, см. Свойства объекта fi (Fixed-Point Designer).

Использование пользовательского интерфейса

В Диспетчере портов и данных установите Treat these inherit Simulink signal types as fi objects равным Fixed-point или Fixed-point and & Integer.

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

Значения по умолчанию fimath свойства для блока MATLAB Function, заданные как одно из следующих значений:

  • 'SameAsMATLAB' - Использовать ту же fimath свойства как текущее значение по умолчанию fimath объект.

  • 'UserSpecified' - Используйте Fimath свойство для задания fimath по умолчанию объект.

Чтобы узнать больше о математике с фиксированной точкой, см. fimath (Fixed-Point Designer).

Использование пользовательского интерфейса

В Диспетчере портов и данных установите MATLAB Function fimath равным Same as MATLAB или Specify Other.

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

Значения по умолчанию fimath объект, заданный как вектор символов. Когда FimathMode свойство для блока MATLAB Function 'UserSpecified', вы можете использовать это свойство для:

  • Введите выражение, которое создает fimath объект.

  • Введите имя переменной для fimath объект в MATLAB или рабочее пространство модели.

Чтобы узнать больше о fimath свойства объекта, см. «Свойства объекта Fixed-Point Designer».

Использование пользовательского интерфейса

В Диспетчере портов и данных установите MATLAB Function fimath равным Specify Other и введите fimath выражение.

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

Функции объекта

openReportОткройте отчет о функции MATLAB
closeReportЗакройте отчет о функции MATLAB
getReportСгенерируйте отчет о функции MATLAB

Примеры

свернуть все

Доступ к MATLABFunctionConfiguration объект для блока MATLAB Function в модели call_stats_block1 описан в разделе «Создание пользовательских функций с использованием блока MATLAB function».

config = get_param('call_stats_block1/MATLAB Function', ...
    'MATLABFunctionConfiguration');

Установите значение Description свойство.

config.Description = 'Calculate the mean and standard deviation for a vector of values.';

Доступ к MATLABFunctionConfiguration объект для блока MATLAB Function в модели call_stats_block1 описан в разделе «Создание пользовательских функций с использованием блока MATLAB function».

config = get_param('call_stats_block1/MATLAB Function', ...
    'MATLABFunctionConfiguration');

Создайте MATLABFunctionReport объект для блока MATLAB Function.

report = getReport(config);

Доступ к coder.Function объекты в отчете.

functions = report.Functions;

Создайте пользовательский отчет, в котором перечислены функции и переменные в блоке MATLAB Function.

for i = 1:numel(functions)
    fprintf('Function %s uses these variables:\n',functions(i).Name)
    variables = functions(i).Variables;
    for j = 1:numel(variables)
        fprintf('%d. %s -- %s\n',j,variables(j).Name,variables(j).Scope)
    end
    fprintf('\n')
end
Function stats uses these variables:
1. mean -- Output
2. stdev -- Output
3. vals -- Input
4. len -- Local

Function avg uses these variables:
1. mean -- Output
2. array -- Input
3. size -- Input
Введенный в R2019b