MATLAB Конфигурирование свойств функционального блока
MATLABFunctionConfiguration объект управляет свойствами блока MATLAB Function, такими как описание, время выборки и сценарий функции.
Совет
Функциональный блок MATLAB ® можно также сконфигурировать программно с помощью Stateflow.EMChart объект. Этот объект обеспечивает доступ к входам, выходам и свойствам блока функции MATLAB. Дополнительные сведения см. в разделе Программная настройка функционального блока MATLAB.
Каждый функциональный блок MATLAB имеет свой собственный MATLABFunctionConfiguration объект. Для доступа к этому объекту используйте get_param функция. Например, если модель myModel содержит функциональный блок MATLAB с именем MATLAB Function, введите:
config = get_param('myModel/MATLAB Function', ... 'MATLABFunctionConfiguration');
Path - Путь блока относительно моделиПуть блока MATLAB Function относительно модели, заданный как символьный вектор.
Типы данных: char
FunctionScript - Код функционального блока MATLABКод для блока MATLAB Function, заданного как символьный вектор.
Типы данных: char
UpdateMethod - Метод обновления для функционального блока MATLABInherited (по умолчанию) | Discrete | ContinuousМетод обновления для функционального блока MATLAB, указанный как одно из следующих значений:
Inherited - Входной сигнал в порту триггера определяет, когда блок обновляется во время моделирования. Сигнал от подключенного блока Simulink ® запускает порт. ЕслиUpdateMethod изменено на 'Inherited', Sample Time автоматически устанавливается в значение -1.
Discrete - модель Simulink генерирует неявное событие через регулярные интервалы времени для пробуждения блока со скоростью, указанной в SampleTime собственность. Другие блоки в модели могут иметь разное время выборки.
Continuous - Функциональный блок MATLAB обновляется только на основных временных шагах, хотя он вычисляет выходные и локальные непрерывные переменные во время малых и основных временных шагов. Если UpdateMethod изменено на 'Continuous', Sample Time автоматически устанавливается в значение 0.
При установке UpdateMethod кому Inherited или Continuous и попытаться изменить SampleTime, Simulink отображает предупреждение и игнорирует время входной выборки.
В диспетчере портов и данных установите метод Update на Inherited, Discrete, или Continuous
Типы данных: enumerated
SampleTime - Время выборки'-1' (по умолчанию) | '0' | символьный векторВремя выборки функционального блока MATLAB, заданного как символьный вектор. Время выборки допустимо только тогда, когда UpdateMethod имеет значение Discrete. Если UpdateMethod имеет значение Continuous или Inheritedлюбые изменения времени выборки игнорируются.
В Диспетчере портов и данных введите значение параметра Sample Time.
Типы данных: char
Description - ОписаниеОписание функционального блока MATLAB, заданного как символьный вектор.
В окне «Ports and Data Manager» введите описание в поле «Description».
Типы данных: char
DocumentLink - Ссылка на документациюСсылка на документацию для функционального блока MATLAB, заданного как символьный вектор.
В окне «Ports and Data Manager» введите ссылку в поле «Document link».
Типы данных: char
SupportVariableSizing - Поддерживает ли функциональный блок MATLAB данные переменного размераtrue или 1 (по умолчанию) | false или 0Поддерживает ли функциональный блок MATLAB данные переменного размера, указанные как числовые или логические 1 (true) или 0 (false).
В окне «Ports and Data Manager» выберите «Support variable-size arrays» (Поддержка массивов переменного размера), чтобы включить этот параметр.
Типы данных: logical
AllowDirectFeedthrough - Поддерживает ли функциональный блок MATLAB семантику прямого прохожденияtrue или 1 (по умолчанию) | false или 0Поддерживает ли функциональный блок MATLAB семантику прямого прохождения, заданную как числовой или логический 1 (true) или 0 (false). Считается, что блок имеет прямой проход, если выход блока напрямую зависит от входа блока. Блок не имеет прямого прохода, если выходы блока зависят от внутренних состояний и свойств, а не от входа блока.
В окне «Ports and Data Manager» (Управление портами и данными) выберите «Allow direct feedthrough» (Разрешить прямой проход), чтобы включить этот параметр.
Типы данных: logical
SaturateonIntegerOverflow - Насыщаются ли данные при переполнении целых чиселtrue или 1 (по умолчанию) | false или 0Будут ли данные в блоке MATLAB Function насыщаться при целочисленном переполнении, указанном как числовой или логический 1 (true) или 0 (false). Если для этого параметра установлено значение trueпереполнения насыщаются минимальным или максимальным значением, которое может представлять тип данных. Если параметр имеет значение falseпереполнение переносится на соответствующее значение, которое может представлять тип данных. Если в модели возможно переполнение и необходимо применить защиту от насыщения в созданном коде, рекомендуется включить этот параметр. Если у вас есть ограничения по производительности или вы не связаны с переполнением целых чисел, вы можете отключить этот параметр.
В окне «Ports and Data Manager» выберите «Saturate on integer overflow», чтобы включить этот параметр.
Типы данных: logical
TreatAsFi - Унаследованные сигналы для лечения как fi объекты'FixedPoint' (по умолчанию) | 'FixedPointAndInteger'Унаследованные сигналы Simulink для обработки как Designer™ с фиксированной точкой fi объекты, указанные как одно из следующих значений:
'FixedPoint' - Функциональный блок MATLAB рассматривает все вводы с фиксированной точкой как fi объекты.
'FixedPointAndInteger' - Функциональный блок MATLAB рассматривает все фиксированные и целочисленные входы как fi объекты.
Дополнительные сведения fi объекты, см. fi Свойства объекта (Конструктор фиксированных точек).
В окне «Ports and Data Manager» (Порты и диспетчер данных) установите для параметра «Treat these inherit Simulink signal types» (Обрабатывать наследуемые типы сигналов sim Fixed-point или Fixed-point and & Integer.
Типы данных: enumerated
FimathMode - По умолчанию fimath свойства'SameAsMATLAB' (по умолчанию) | 'UserSpecified'Дефолт fimath свойства блока MATLAB Function, указанные как одно из следующих значений:
'SameAsMATLAB' - Использовать то же самое fimath свойства в качестве текущего значения по умолчанию fimath объект.
'UserSpecified' - Использовать Fimath свойство для указания значения по умолчанию fimath объект.
Дополнительные сведения о математике с фиксированной точкой см. в разделе fimath (Конструктор фиксированных точек).
В диспетчере портов и данных установите для параметра MATLAB Fimath значение Same as MATLAB или Specify Other.
Типы данных: enumerated
Fimath - По умолчанию fimath объектДефолт fimath объект, указанный как символьный вектор. Когда FimathMode свойство для функционального блока MATLAB 'UserSpecified', это свойство можно использовать для:
Введите выражение, которое создает fimath объект.
Введите имя переменной для fimath в рабочей области MATLAB или модели.
Дополнительные сведения fimath свойства объекта см. в разделе Свойства объекта fimath (Конструктор фиксированных точек).
В диспетчере портов и данных установите для параметра MATLAB Fimath значение Specify Other и введите fimath выражение.
Типы данных: char
openReport | Открыть функциональный отчет MATLAB |
closeReport | Закрытие отчета о функциях MATLAB |
getReport | Создание отчета о функциях MATLAB |
Доступ к MATLABFunctionConfiguration объект для функционального блока MATLAB в модели call_stats_block1 описано в разделе Создание пользовательской функциональности с использованием функционального блока MATLAB.
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 в модели call_stats_block1 описано в разделе Создание пользовательской функциональности с использованием функционального блока MATLAB.
config = get_param('call_stats_block1/MATLAB Function', ... 'MATLABFunctionConfiguration');
Создать MATLABFunctionReport объект для функционального блока MATLAB.
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
get_param | Функция MATLAB | MATLABFunctionReport | Stateflow.EMChart
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.