Можно создать внутренние представления названных параметров периода выполнения параметров диалогового окна внешней S-функции. Каждый параметр периода выполнения соответствует одному или нескольким параметрам диалогового окна и может иметь то же значение и тип данных как его соответствующие внешние параметры или различное значение или тип данных. Если параметр периода выполнения отличается по значению или типу данных от его внешнего дубликата, диалоговый параметр, как говорят, был преобразован, чтобы создать параметр периода выполнения. Значение параметра периода выполнения, который соответствует нескольким диалоговым параметрам, обычно является функцией значений диалоговых параметров. Механизм Simulink® выделяет и освобождает память для параметров периода выполнения и обеспечивает функции для обновления и доступа к ним, таким образом избавляя от необходимости S-функции выполнить эти задачи. Параметры периода выполнения упрощают следующие виды операций S-функции:
Вычисленные параметры
Часто вывод блока является функцией значений нескольких диалоговых параметров. Например, предположите, что блок имеет два параметра, объем и плотность некоторого объекта, и вывод блока является функцией входного сигнала и массой объекта. В этом случае масса может быть просмотрена как третий внутренний параметр, вычисленный из двух внешних параметров, объема и плотности. S-функция может создать параметр периода выполнения, соответствующий вычисленному весу, таким образом, избавив от необходимости обеспечить обработку особого случая для веса в выходном вычислении. Смотрите Параметры периода выполнения Создания от Нескольких S-параметров-функции для получения дополнительной информации.
Преобразования типа данных
Часто блок должен изменить тип данных диалогового параметра, чтобы упростить внутреннюю обработку. Например, предположите, что вывод блока является функцией входа и диалогового параметра, и вход и диалоговый параметр имеет различные типы данных. В этом случае S-функция может создать параметр периода выполнения, который имеет то же значение как диалоговый параметр, но имеет тип данных входного сигнала, и используйте параметр периода выполнения в вычислении вывода.
Генерация кода
Во время генерации кода продукт Simulink Coder™ пишет все параметры периода выполнения автоматически в файл .rtw
model
, избавляя от необходимости S-функцию выполнить эту задачу с помощью метода mdlRTW
.
В S-функции Level 2 MATLAB® вы создаете параметры периода выполнения, сопоставленные со всеми настраиваемыми диалоговыми параметрами. Используйте метод AutoRegRuntimePrms
объекта периода выполнения в методе коллбэка PostPropagationSetup
, чтобы указать параметры периода выполнения блока. Например:
block.AutoRegRuntimePrms;
На Уровне 2 S-функция MATLAB обновите параметры периода выполнения с помощью метода AutoUpdateRuntimePrms
в методе коллбэка ProcessParameters
. Например:
block.AutoUpdateRuntimePrms;
Уровень 2 S-функция MATLAB | Функция MATLAB | S-функция | Разработчик S-функции