我想使用脚本在simulink中创建和定义变体子系统。
我能够使用add_block创建变体子系统并在其中添加子系统,但无法使用get_param命令找到定义变量子系统的相应属性。
我以图形方式配置变体子系统的方法是右键单击块并转到块参数,然后为每个子系统添加变量控制条件。
我想从m文件中执行相同的操作,以便以编程方式创建多个块。
我检查了文档和谷歌搜索但找不到任何内容。
提前致谢。
答案 0 :(得分:1)
根据@Praetorian的评论,我在文本编辑器中打开了模型,找到了定义变量条件的参数行。
我发现变体条件存储在变体子系统内的子系统中,而不是存储在顶级变体子系统中。
因此,您将条件存储在每个子系统的“VariantControl”参数中。
实施例:
set_param([variantSys '/' sys],'VariantControl','a==1')
其中sys
是变体子系统variantSys
中的子系统。
答案 1 :(得分:0)
变量控件应该写在模型的回调中。为了将simulink变量控件提供给模型,应在工作空间中创建变量。为此,您需要将您的Sys = Simulink.Variant(Mode == value)等放在PreLoadFcn上。
检查访问PreLoadFcn并将公式放在那里,然后您的表格将自动填充。
如果您不介意,可以告诉我您是如何创建变体子系统的吗?
祝你好运