Simulink.MSFcnRunTimeBlock

Получите информацию о выполнении о блоке Level-2 MATLAB S-function

Описание

Этот класс позволяет S-функции Level 2 MATLAB® или другой программе MATLAB получать информацию из программного обеспечения Simulink® и предоставлять информацию программному обеспечению Simulink о блоке Level-2 MATLAB S-function. Программное обеспечение Simulink создает экземпляр этого класса для каждого блока Level-2 MATLAB S-function в модели. Программное обеспечение Simulink передает объект методам коллбэка Уровня 2 S-функции MATLAB, когда это обновляет или симулирует модель, позволяя методам коллбэка получить и предоставить связанную с блоком информацию программному обеспечению Simulink. Смотрите Уровень 2 Записи S-функции MATLAB для получения дополнительной информации.

Можно также использовать экземпляры этого класса в программах MATLAB, чтобы получить информацию о блоках Level-2 MATLAB S-function во время симуляции. Смотрите доступ к Данным о Блоке В процессе моделирования для получения дополнительной информации.

Уровень 2 S-шаблон-функции MATLAB matlabroot/toolbox/simulink/blocks/msfuntmpl.m показывает, как использовать много в соответствии с методами.

Родительский класс

Simulink.RunTimeBlock

Производные классы

'none'

Сводные данные свойства

Имя

Описание

AllowSignalsWithMoreThan2D

включите Уровню 2 S-функцию MATLAB, чтобы использовать многомерные сигналы.

DialogPrmsTunable

Задает, какой из диалоговых параметров S-функции является настраиваемым.

NextTimeHit

Время следующего демонстрационного хита для переменных S-функций шага расчета.

Сводные данные метода

Имя

Описание

AutoRegRuntimePrms

Укажите диалоговые параметры этого блока как параметры периода выполнения.

AutoUpdateRuntimePrms

Обновите параметры периода выполнения этого блока.

IsDoingConstantOutput

Определите, является ли текущий этап симуляции постоянным этапом шага расчета.

IsMajorTimeStep

Определите, является ли текущий шаг времени симуляции главным временным шагом.

IsSampleHit

Определите, является ли текущее время симуляции один, в котором задача, справленная этим блоком, активна.

IsSpecialSampleHit

Определите, является ли текущее время симуляции один, в котором несколько задач, справленных этим блоком, активны.

RegBlockMethod

Укажите метод коллбэка для этого блока.

RegisterDataTypeFxpBinaryPoint

Укажите тип данных с фиксированной точкой с бинарным масштабированием только для точки.

RegisterDataTypeFxpFSlopeFixexpBias

Укажите тип данных с фиксированной точкой с [Наклонное Смещение] масштабирование заданного в терминах дробного наклона, зафиксированной экспоненты и смещения.

RegisterDataTypeFxpSlopeBias

Укажите тип данных с [Наклонное Смещение] масштабирование.

SetAccelRunOnTLC

Задайте, использовать ли файл этого блока TLC, чтобы сгенерировать цель симуляции для модели, которая использует его.

SetPreCompInpPortInfoToDynamic

Установите предварительно скомпилированные атрибуты входных портов этого блока быть наследованными.

SetPreCompOutPortInfoToDynamic

Установите предварительно скомпилированные атрибуты выходных портов этого блока быть наследованными.

SetPreCompPortInfoToDefaults

Установите предварительно скомпилированные атрибуты портов этого блока к значениям по умолчанию.

SetSimViewingDevice

Задайте, является ли блок средством просмотра.

SupportsMultipleExecInstances

 

WriteRTWParam

Запишите пользовательскую информацию о параметре в файл Simulink Coder™.

Свойства

AllowSignalsWithMoreThan2D

Описание

Позвольте Уровню 2 S-функции MATLAB, чтобы использовать многомерные сигналы. Необходимо установить AllowSignalsWithMoreThan2D свойство в setup метод.

Тип данных

Булевская переменная

Доступ

RW

DialogPrmsTunable

Описание

Задает, является ли диалоговый параметр S-функции настраиваемым. Настраиваемые параметры указаны как параметры периода выполнения, когда вы вызываете метод AutoRegRuntimePrms. Обратите внимание на то, что SimOnlyTunable параметры не указаны как параметры периода выполнения. Например, следующие линии инициализирует три диалоговых параметра, где первое является настраиваемым, вторым в не настраиваемый, и третье является настраиваемым только в процессе моделирования.

block.NumDialogPrms     = 3;
block.DialogPrmsTunable = {'Tunable','Nontunable','SimOnlyTunable'};

Тип данных

массив

Доступ

RW

NextTimeHit

Описание

Время следующего демонстрационного хита для переменных S-функций шага расчета.

Тип данных

'double'

Доступ

RW

Методы

AutoRegRuntimePrms

Цель

Укажите настраиваемые диалоговые параметры блока как параметры периода выполнения.

Синтаксис

AutoRegRuntimePrms;

Описание

Используйте в PostPropagationSetup метод, чтобы указать настраиваемые диалоговые параметры этого блока как параметры периода выполнения.

AutoUpdateRuntimePrms

Цель

Обновите параметры периода выполнения блока.

Синтаксис

AutoUpdateRuntimePrms;

Описание

Автоматически обновите значения параметров периода выполнения во время вызова ProcessParameters.

Смотрите S-функцию matlabroot/toolbox/simulink/simdemos/simfeatures/adapt_lms.m в модели Simulink sldemo_msfcn_lms для примера.

IsDoingConstantOutput

Цель

Определите, является ли это на постоянном этапе шага расчета симуляции.

Синтаксис

bVal = IsDoingConstantOutput;

Описание

Возвращает true, если это - постоянный этап шага расчета симуляции, т.е. этап в начале симуляции, где программное обеспечение Simulink вычисляет значения блока выходные параметры, которые не могут измениться во время симуляции (см. Постоянный Шаг расчета). Используйте этот метод в Outputs метод S-функции с основанными на порте шагами расчета, чтобы не излишне вычислять выходные параметры портов, которые имеют постоянный шаг расчета, т.е. [inf, 0].

function Outputs(block)
.
.
  if block.IsDoingConstantOutput
    ts = block.OutputPort(1).SampleTime;
    if ts(1) == Inf
    %% Compute port's output.
    end
  end
.
.
%% end of Outputs

Смотрите Задающие Основанные на порте Шаги расчета для получения дополнительной информации.

IsMajorTimeStep

Цель.

Определите, является ли шаг текущего времени майором или незначительным временным шагом.

Синтаксис

bVal = IsMajorTimeStep;

Описание

Возвращает true, если шаг текущего времени является главным временным шагом; ложь, если это - незначительный временной шаг. Этот метод может быть назван только от Outputs или Update методы.

IsSampleHit

Цель

Определите, является ли текущее время симуляции один, в котором задача, справленная этим блоком, активна.

Синтаксис

bVal = IsSampleHit(stIdx);

Аргументы

stIdx

Глобальный индекс шага расчета, который будет запрошен.

Описание

Используйте в Outputs или Update блокируйте методы, когда S-функция MATLAB имеет несколько шагов расчета, чтобы определить, произошел ли демонстрационный хит в stIdx. Индекс шага расчета stIdx глобальный индекс для модели Simulink. Например, рассмотрите модель, которая содержит три частоты дискретизации из 0,1, 0.2, и 0.5, и Блок s-function MATLAB, который содержит два уровня 0,2 и 0.5. В S-функции MATLAB, block.IsSampleHit(0) возвращает true для уровня 0.1, не уровня 0.2.

Этот метод блока похож на ssIsSampleHit для S-функций C-MeX, однако ssIsSampleHit возвращает значения только на основе шагов расчета, содержавшихся в S-функции. Например, если модель описала выше содержавшего S-функцию C-MeX с частотами дискретизации 0,2 и 0.5, ssIsSampleHit(S,0,tid) возвращает true для уровня 0,2.

Используйте основанные на порте шаги расчета, чтобы избегать использования глобального индекса шага расчета для многоскоростных систем (см. Simulink.BlockPortData).

IsSpecialSampleHit

Цель

Определите, является ли текущее время симуляции один, в котором несколько задач, реализованных этим блоком, активны.

Синтаксис

bVal = IsSpecialSampleHit(stIdx1,stIdx1);

Аргументы

stIdx1

Индекс шага расчета первой задачи, которая будет запрошена.

stIdx2

Индекс шага расчета второй задачи, которая будет запрошена.

Описание

Используйте в Outputs или Update блокируйте методы, чтобы гарантировать валидность данных, совместно использованных несколькими задачами, запускающимися на различных уровнях. Возвращает true, если демонстрационный хит произошел в stIdx1 и демонстрационный хит также произошел в stIdx2 в том же временном шаге (похожий на ssIsSpecialSampleHit для S-функций C-Mex).

При использовании IsSpecialSampleHit макрос, более медленный шаг расчета должен быть целочисленным кратным более быстрый шаг расчета.

RegBlockMethod

Цель

Укажите метод коллбэка блока.

Синтаксис

RegBlockMethod(methName, methHandle);

Аргументы

methName

Имя метода, который будет указан.

methHandle

Указатель функции MATLAB метода коллбэка, который будет указан.

Описание

Указывает метод коллбэка блока, заданный methName и methHandle. Используйте этот метод в setup функция Уровня 2 S-функция MATLAB, чтобы задать методы коллбэка блока, которые реализует S-функция.

RegisterDataTypeFxpBinaryPoint

Цель

Укажите тип данных с фиксированной точкой с бинарным масштабированием только для точки.

Синтаксис

dtID = RegisterDataTypeFxpBinaryPoint(isSigned, wordLength, fractionalLength, obeyDataTypeOverride);

Аргументы

isSigned

true если тип данных подписывается.

false если тип данных без знака.

wordLength

Общее количество битов в типе данных, включая любой знаковый бит.

fractionalLength

Количество битов в типе данных справа от двоичной точки.

obeyDataTypeOverride

true указывает, что установке Data Type Override для подсистемы нужно выполнить. В зависимости от значения Переопределения Типа данных получившимся типом данных мог быть Doubleединственный, ScaledDouble, или тип данных с фиксированной точкой задан другими аргументами функции.

false указывает, что установка Data Type Override должна быть проигнорирована.

Описание

Этот метод указывает тип данных с фиксированной точкой с программным обеспечением Simulink и возвращает ID типа данных. ID типа данных может использоваться, чтобы задать типы данных портов ввода и вывода, параметров периода выполнения и состояний DWork. Это может также использоваться со всеми стандартными методами доступа типа данных, заданными для экземпляров этого класса, таких как DatatypeSize.

Используйте эту функцию, если вы хотите указать тип данных с фиксированной точкой с бинарным масштабированием только для точки. В качестве альтернативы можно использовать одну из других регистрационных функций фиксированной точки:

  • Используйте RegisterDataTypeFxpFSlopeFixexpBias, чтобы указать тип данных с [Наклонное Смещение] масштабирование путем указывания, что размер слова, дробный наклон, зафиксировал экспоненту и смещение.

  • Используйте RegisterDataTypeFxpSlopeBias, чтобы указать тип данных с [Наклонное Смещение] масштабирование.

Если зарегистрированный тип данных не является одним из Simulink встроенные типы данных, лицензия Fixed-Point Designer™ проверяется.

RegisterDataTypeFxpFSlopeFixexpBias

Цель

Укажите тип данных с фиксированной точкой с [Наклонное Смещение] масштабирование заданного в терминах дробного наклона, зафиксированной экспоненты и смещения

Синтаксис

dtID = RegisterDataTypeFxpFSlopeFixexpBias(isSigned, wordLength, fractionalSlope, fixedexponent, bias, obeyDataTypeOverride);

Аргументы

isSigned

true если тип данных подписывается.

false если тип данных без знака.

wordLength

Общее количество битов в типе данных, включая любой знаковый бит.

fractionalSlope

Дробный наклон типа данных.

fixedexponent

экспонента наклона типа данных.

bias

Смещение масштабирования типа данных.

obeyDataTypeOverride

true указывает, что установке Data Type Override для подсистемы нужно выполнить. В зависимости от значения Переопределения Типа данных получившимся типом данных мог быть True Doubles, True Singles, ScaledDouble, или тип данных с фиксированной точкой задан другими аргументами функции.

false указывает, что установка Data Type Override должна быть проигнорирована.

Описание

Этот метод указывает тип данных с фиксированной точкой с программным обеспечением Simulink и возвращает ID типа данных. ID типа данных может использоваться, чтобы задать типы данных портов ввода и вывода, параметров периода выполнения и состояний DWork. Это может также использоваться со всеми стандартными методами доступа типа данных, заданными для экземпляров этого класса, таких как DatatypeSize.

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

  • Используйте RegisterDataTypeFxpBinaryPoint, чтобы указать тип данных с бинарным масштабированием только для точки.

  • Используйте RegisterDataTypeFxpSlopeBias, чтобы указать тип данных с [Наклонное Смещение] масштабирование.

Если зарегистрированный тип данных не является одним из Simulink встроенные типы данных, лицензия Fixed-Point Designer проверяется.

RegisterDataTypeFxpSlopeBias

Цель

Укажите тип данных с [Наклонное Смещение] масштабирование.

Синтаксис

dtID = RegisterDataTypeFxpSlopeBias(isSigned, wordLength, totalSlope, bias, obeyDataTypeOverride);

Аргументы

isSigned

true если тип данных подписывается.

false если тип данных без знака.

wordLength

Общее количество битов в типе данных, включая любой знаковый бит.

totalSlope

Общий наклон масштабирования типа данных.

bias

Смещение масштабирования типа данных.

obeyDataTypeOverride

true указывает, что установке Data Type Override для подсистемы нужно выполнить. В зависимости от значения Переопределения Типа данных получившимся типом данных мог быть True Doubles, True Singles, ScaledDouble, или тип данных с фиксированной точкой задан другими аргументами функции.

false указывает, что установка Data Type Override должна быть проигнорирована.

Описание

Этот метод указывает тип данных с фиксированной точкой с программным обеспечением Simulink и возвращает ID типа данных. ID типа данных может использоваться, чтобы задать типы данных портов ввода и вывода, параметров периода выполнения и состояний DWork. Это может также использоваться со всеми стандартными методами доступа типа данных, заданными для экземпляров этого класса, таких как DatatypeSize.

Используйте эту функцию, если вы хотите указать тип данных с фиксированной точкой с [Наклонное Смещение] масштабирование. В качестве альтернативы можно использовать одну из других регистрационных функций фиксированной точки:

  • Используйте RegisterDataTypeFxpBinaryPoint, чтобы указать тип данных с бинарным масштабированием только для точки.

  • Используйте RegisterDataTypeFxpFSlopeFixexpBias, чтобы указать тип данных путем указывания, что размер слова, дробный наклон, зафиксировал экспоненту и смещение

Если зарегистрированный тип данных не является одним из Simulink встроенные типы данных, лицензия Fixed-Point Designer проверяется.

SetAccelRunOnTLC

Цель

Задайте, использовать ли файл блока TLC, чтобы сгенерировать код для Режима Accelerator программного обеспечения Simulink.

Синтаксис

SetAccelRunOnTLC(bVal);

Аргументы

bVal

Может быть 'true' (используйте файл TLC), или 'false' (запустите блок в интерпретированном режиме).

Описание

Задайте, должен ли блок использовать свой файл TLC, чтобы сгенерировать код, который запускается с акселератором. Если этой опцией является 'false', блок запускается в интерпретированном режиме. Смотрите S-функцию msfcn_times_two.m в модели Simulink msfcndemo_timestwo для примера.

Примечание

Режим Accelerator JIT по умолчанию не поддерживает встраивание написанных пользователем S-функций TLC. Смотрите Как Ускоряющая работа Режимов и Выполнение S-функции Управления для получения дополнительной информации.

SetPreCompInpPortInfoToDynamic

Цель

Установите предварительно скомпилированные атрибуты входных портов этого блока быть наследованными.

Синтаксис

SetPreCompInpPortInfoToDynamic;

Описание

Инициализируйте скомпилированную информацию (размерности, тип данных, сложность и режим выборки) входных портов этого блока, которые будут наследованы. Смотрите S-функцию matlabroot/toolbox/simulink/simdemos/simfeatures/adapt_lms.m в модели Simulink sldemo_msfcn_lms для примера.

SetPreCompOutPortInfoToDynamic

Цель

Установите предварительно скомпилированные атрибуты выходных портов этого блока быть наследованными.

Синтаксис

SetPreCompOutPortInfoToDynamic;

Описание

Инициализируйте скомпилированную информацию (размерности, тип данных, сложность и режим выборки) выходных портов блока, которые будут наследованы. Смотрите S-функцию matlabroot/toolbox/simulink/simdemos/simfeatures/adapt_lms.m в модели Simulink sldemo_msfcn_lms для примера.

SetPreCompPortInfoToDefaults

Цель

Установите предварительно скомпилированные атрибуты портов этого блока к значениям по умолчанию.

Синтаксис

SetPreCompPortInfoToDefaults;

Описание

Инициализируйте скомпилированную информацию (размерности, тип данных, сложность и режим выборки) портов блока к значениям по умолчанию. По умолчанию порт принимает действительный скаляр произведенный сигнал с типом данных double.

SetSimViewingDevice

Цель

Задайте, является ли этот блок средством просмотра.

Синтаксис

SetSimViewingDevice(bVal);

Аргументы

bVal

Может быть 'true' (средство просмотра), или 'false' (не средство просмотра).

Описание

Задайте, является ли блок средством просмотра/осциллографом. Если этот флаг будет задан, блок будет использоваться только в процессе моделирования и автоматически гаситься в сгенерированном коде.

SupportsMultipleExecInstances

Цель

Задайте, поддерживает ли Для Каждой Подсистемы S-функцию в нем.

Синтаксис

SupportsMultipleExecInstances(bVal);

Аргументы

bVal

Может быть 'true' (S-функция поддерживается), или 'false' (S-функция не поддержана).

Описание

Задайте, может ли S-функция действовать в Для Каждой Подсистемы.

WriteRTWParam

Цель

Запишите пользовательский параметр в файл информации о Simulink Coder, используемый в генерации кода.

Синтаксис

WriteRTWParam(pType, pName, pVal)

Аргументы

pType

Тип параметра, который будет записан. Допустимыми значениями является 'string' и 'matrix'.

pName

Имя параметра, который будет записан.

pVal

Значение параметра, который будет записан.

Описание

Используйте в WriteRTW метод S-функции MATLAB, чтобы выписать пользовательские параметры. Эти параметры обычно являются настройками, используемыми, чтобы определить, как код должен быть сгенерирован в файле TLC для S-функции. Смотрите S-функцию matlabroot/toolbox/simulink/simdemos/simfeatures/adapt_lms.m в модели Simulink sldemo_msfcn_lms для примера.

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