slLinearizer & Simscape参数变化

1视图(30天)
AsterixWalker
AsterixWalker 2019年7月22日
回答: Danvir塞提 2019年8月5日
你好,
我想做一批线性化仿真软件模型,包含使用slLinearizer Simscape组件。万博1manbetx
线性化实际上都工作,但和for循环迭代向量。这是缓慢的。
变化的参数 耦合 & primary_ind 是里面的一块simscape:
我可以创建批处理线性化接口:
io = getlinio (projectName);
sllin = slLinearizer (projectName, io);
我可以创建并指定参数:
coupling_mat = linspace (a, b, c);
primary_ind_mat = logspace (a, b, c);
[我C] = ndgrid (primary_ind_mat coupling_mat);
参数(1)。Name =“primary_ind”;%我希望这里链接simscape块上行
参数(1)。值=我;
参数(2)。Name =“耦合”;%我也一样
参数(2)。值= C;
但是当我尝试更新的参数:
sllin。参数=参数;
我得到这个错误:
错误使用slLinearizer /集。参数(第324行)
表达“输入(1). name”,“primary_ind”
成功地评估模型或基地
工作区。
引起的由:
错误使用sdo。getValueFromModel(第94行)
变量primary_ind无法解决的
“teslar2019a”模型。确保
变量是定义在模型、基础
工作空间,或数据字典。
但是正如你所看到的第一个图片,有一个参数 “primary_ind” 在模型中,在一个simscape块。
我读过:
我不懂如何链接模型的参数模型。万博1manbetx
谢谢你!

答案(1)

Danvir塞提
Danvir塞提 2019年8月5日
变量的在哪里 primary_ind”、“secondary_ind”和“耦合”被Simscape块引用的定义?他们是定义在一个面具工作区,模型空间,基本工作空间或这些吗?你能模拟模型是什么?
我认为你需要几件事情:
  1. 创建“primary_ind”、“secondary_ind”和“耦合”变量被引用的Simscape块在模型底部或工作区。这些变量的默认值可以指定其中一个工作区,这将覆盖的线性化工作流。
  2. 由于已知的问题(//www.tianjin-qmedu.com/万博1manbetxsupport/bugreports/details/2001393),请使用:
选择= linearizeOptions;
opt.AreParamsTunable = false;
sllin = slLinearizer (projectName、io、期权);

类别

找到更多的在故障排除帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!