首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在MATLAB函数块中以编程方式将输入更改为参数

在MATLAB函数块中以编程方式将输入更改为参数
EN

Stack Overflow用户
提问于 2014-04-08 14:35:31
回答 1查看 2.4K关注 0票数 1

我有一个MATLAB函数块封装在一个蒙面子系统中。子系统的掩码有一个参数p1,我想在MATLAB函数中使用它。如何手动完成此操作是在文档中描述。但是,我需要以编程的方式这样做,到目前为止,我还没有弄清楚如何做到这一点。

以编程方式将参数添加到子系统的掩码Simulink.Mask.addParameter中,创建MATLAB函数块设置其代码也是如此。困难的部分是以编程方式将函数参数p1的作用域从“输入”切换到“参数”(文档中的步骤2-4 )。我找不到存储这些信息的地方(我检查了“传统”Simulink块参数和与该块关联的Stateflow对象)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-09 06:40:04

我找到了答案,关于MATLAB的答案。使用以下代码将输入编号i的范围设置为Parameter

代码语言:javascript
运行
复制
% Get Stateflow root object
S = sfroot();

% Get block handle
B = S.find('Name','myBlockName','-isa','Stateflow.EMChart');

% Set scope
set(B.Inputs(i), 'Scope', 'Parameter')

请注意,可以使用B.getChildren()访问块的所有输入、输出和参数。这对于参数尤其有用,因为没有单独的B.Parameters列表(相对于B.InputsB.Outputs)。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22940256

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档