Создайте и обновите параметры выполнения S-функции

Можно создать внутренние представления параметров диалогового окна внешней S-функции, называемые параметрами во время выполнения. Каждый параметр во время выполнения соответствует одному или нескольким параметрам диалогового окна и может иметь то же значение и тип данных, что и его соответствующие внешние параметры или другое значение или тип данных. Если параметр во время выполнения отличается по значению или типу данных от его внешнего аналога, параметр диалога, как говорят, был преобразован, чтобы создать параметр во время выполнения. Значение параметра во время выполнения, которое соответствует нескольким параметрам диалога, обычно является функцией от значений параметров диалога. Simulink® двигатель выделяет и освобождает хранилище для параметров во время выполнения и обеспечивает функции для их обновления и доступа, таким образом устраняя необходимость S-функций для выполнения этих задач. Параметры во время выполнения облегчают следующие виды операций S-функции:

  • Вычисленные параметры

    Часто выход блока является функцией от значений нескольких параметров диалога. Например, предположим, что блок имеет два параметра, объем и плотность некоторого объекта, и выход блока является функцией от входного сигнала и массы объекта. В этом случае масса может быть рассмотрена как третий внутренний параметр, вычисленный из двух внешних параметров, объема и плотности. S-функция может создать параметр времени выполнения, соответствующий вычисленному весу, таким образом устраняя необходимость обеспечения обработки особых случаев для веса в выход расчета. Смотрите Создание параметров во время выполнения из нескольких параметров S-функции для получения дополнительной информации.

  • Преобразования типов данных

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

  • Генерация кода

    Во время генерации кода продукт Simulink Coder™ автоматически записывает все параметры во время выполнения в model.rtw файл, устраняющий необходимость выполнения S-функцией этой задачи через mdlRTW способ.

Создайте параметры во время выполнения

В Level-2 MATLAB® S-функция, вы создаете параметры во время выполнения, сопоставленные со всеми настраиваемыми параметрами диалога. Используйте AutoRegRuntimePrms объекта во время выполнения метод в PostPropagationSetup метод коллбэка для регистрации параметров во время выполнения блока. Для примера:

block.AutoRegRuntimePrms;

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

В Level-2 S-функции MATLAB обновляйте параметры во время выполнения с помощью AutoUpdateRuntimePrms метод в ProcessParameters метод коллбэка. Для примера:

block.AutoUpdateRuntimePrms;

См. также

| | |

Похожие темы