从Simulink模型中获取模型拓扑
我想在Python中创建一个结构,用来表示Simulink模型。我知道至少有两种方法可以做到这一点——一种是解析“.mdl”文件,另一种是使用Matlab的API来与模型进行通信。
你能推荐一些好的库或者API来实现这个吗?
特别是,我需要对Simulink模型进行一些处理,并且我希望在Python中完成这项工作。而且我不想一直和Matlab进行通信(这样我就可以释放浮动许可证)。
我在网上看到了一些解析器,但它们似乎有点局限,通常不支持像总线创建器、总线选择器、复用器、解复用器这样的组件,也不能读取用户数据的信息。
任何帮助都会非常感激。
1 个回答
1
这不是我擅长的领域,但我注意到有一个可能有用的Python解析器。
或者你可以购买Simulink报告生成器,这样可以将模型保存或处理成XML文件。
另外,*.mdl文件是可以读懂的ascii文件。你可以用fread语句把它读进一个字符串里,修改这个字符串,然后选择你想要的格式保存,或者再写回*.mdl文件。这个主意是我同事想出来的,不是我!不过这需要你自己写一个程序来进行编辑和解析。