Simulink. MSFcnRunTimeBlock

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

Описание

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

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

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

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

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, если это - постоянный этап частоты дискретизации моделирования, i. e., этап в начале моделирования, где программное обеспечение Simulink вычисляет значения блока выходные параметры, которые не могут измениться во время моделирования (см. Постоянную Частоту дискретизации). Используйте этот метод в методе Outputs S-функции с основанными на порте частотами дискретизации, чтобы не излишне вычислять выходные параметры портов, которые имеют постоянную частоту дискретизации, i. e., [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, если шаг текущего времени является главным временным шагом; ложь, если это - незначительный временной шаг. Этот метод может быть назван только из методов Update или Outputs.

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, Single, ScaledDouble или тип данных фиксированной точки, заданный другими аргументами функции.

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

Описание

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

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

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

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

Если зарегистрированный тип данных не является одним из Simulink встроенные типы данных, Фиксированная точка, лицензия 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

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