Сделайте параметры блоков настраиваемыми
void ssSetSFcnParamTunable(SimStruct *S, int_T param, int_T isTunable)
S
SimStruct, представляющий Блок s-function.
param
Индекс параметра.
isTunable
Допустимыми значениями является SS_PRM_TUNABLE
(true
/ настраиваемый), SS_PRM_NOT_TUNABLE
(false
/ не настраиваемый), или SS_PRM_SIM_ONLY_TUNABLE
(настраиваемый только во время симуляции).
Используйте этот макрос в mdlInitializeSizes
, чтобы задать, может ли пользователь изменить диалоговый параметр во время симуляции. Индекс параметра запускается в 0 и является меньше, чем ssGetSFcnParamsCount(S)
. Это повышает эффективность и обеспечивает обработку ошибок, если попытка предпринята, чтобы изменить параметр.
Если вы задаете опцию SS_PRM_TUNABLE
, необходимо создать соответствующий параметр периода выполнения (см. Параметры периода выполнения Создания). Вы не должны создавать соответствующий параметр периода выполнения, если вы задаете опцию SS_PRM_SIM_ONLY_TUNABLE
.
Диалоговые параметры являются настраиваемыми по умолчанию. Однако S-функция должна объявить приспособляемость всех параметров, или настраиваемый или нет, чтобы избежать программных ошибок. Если пользователь включает диагностике симуляции S-function upgrade needed
, механизм Simulink® выпускает диагностику каждый раз, когда это сталкивается с S-функцией, которой не удается задать приспособляемость всех ее параметров.
C, C++
Смотрите следующие S-функции для примеров, которые используют эту функцию:
sfun_atol.c
используется в sfcndemo_sfun_atol
stvctf.c
используется в sfcndemo_stvctf
stvdtf.c
используется в sfcndemo_stvdtf