[发明专利]一种Simulink的自动布局方法有效
申请号: | 201910383814.0 | 申请日: | 2019-05-08 |
公开(公告)号: | CN110298062B | 公开(公告)日: | 2022-09-20 |
发明(设计)人: | 陈浩;赵瑞永;黄晓;郭悦 | 申请(专利权)人: | 北京灵思创奇科技有限公司 |
主分类号: | G06F30/3308 | 分类号: | G06F30/3308;G06F30/392 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100000 北京市昌平*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 simulink 自动 布局 方法 | ||
本发明提供了一种Simulink的自动布局方法,包括以下步骤:S1:获取模型所有关于布局的信息;S2:整理子系统模块下面的标签类型模块;S3:整理模块的输入和输出数据;S4:从顶层的根模块开始遍历处理所有的模块和子模块;S5:在处理每个模块的时候,把模块的信息转成Graphviz的输入,然后调用Graphviz的算法得到自动布局的结果;本发明能删除标签类模块,用连线代替,这样可以确定模块之间的执行顺序,避免逻辑错误;本方法能精简输入输出数据的个数,最小化连线的数量,使模型更加简洁;本方法通过使用第三方开源的自动布局引擎,自动优化模型的布局,大大提高模型的布局质量。
技术领域
本发明涉及图形化建模工具MATLAB/Simulink领域,具体是一种Simulink的自动布局方法。
背景技术
MATLAB是美国MathWorks公司出品的商业数学软件,主要用于算法开发、数据可视化、数据分析以及数值计算等,在科学研究及工程计算等多个领域得到广泛的应用。Simulink是MATLAB中的一种图形化建模工具,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。Simulink提供了图形化的设计界面,以模块为功能单位,通过信号线进行连接,用户通过模块的参数设置对话框来设置参数,仿真的结果以数值和图像等方式展示。
在使用Simulink工具进行建模的时候,随着模型复杂度的增加,模型的输入输出接口的数量也会增加;模型之间的关系也会越来越多越来越复杂,信号线的数量也会越来越多,长度越来越长,形状越来越复杂。另一方面,Simulink并不提供自动布局功能,所有模块的大小,位置,信号线的形状都需要手动设置。这一切都使得模型的质量越来越低,模型本身越来越难以维护,给开发者造成很大的负担。
Simulink模型文件是一种树形的层次关系,树形的每个节点都是模块,顶层是根模块。模块有多种类型,比如子系统,输入,输出,标签等。模块为子系统类型的可能有若干个子模块。根模块就是子系统类型。每个模块都可能有若干个输入,若干个输出。一个模块的输出可能对应另一个模块的输入。一个子系统模块下可以添加若干个输入模块和若干个输出模块,和外界通讯。
在Simulink图形建模环境下,如果一个模块的输入对应另一个模块的输出,则用连线连接来表示对应数据的传输。连线有单向的箭头,表示数据传输的方向。Simulink图形建模环境启动的时候,默认会显示根模块的视图。如果某个子模块下面还有子模块,则可以通过双击或者右键打开的方式来显示子模块的视图。
连线可以确定数据的传输方向和模块的执行顺序。如果模块A的输出连接模块B的输入,则在仿真的过程中模块A先执行,模块B后执行。使用连线的缺点是当模块的数量很多,模块的输入和输出数量很多,输入和输出之间的连线会非常杂乱无章。这时候可以选择用标签模块来取代连线。标签模块的读写类型有两种类型,写类型和读类型。在输出端和输入端创建同名的标签模块,分别设置为写和读类型,就可以把中间的连线删除,同名的标签模块,写类型只能有一个,读类型可以有多个。另外标签模块的可见性有三种,分别是Local,Scoped和Global。Local标签模块是指使用相同名字的标签模块都在同一个子系统模块里,类似于编程语言里的局部变量。Scoped标签模块是使用相同名字的标签模块都在同一个子系统模块或者一个原子系统里。Global标签模块是指使用相同名字的标签模块可以在模型里的任何位置。
标签模块的缺点是难以确保模块的执行顺序。如果模块A的输出连接模块B的输入,输入和输出都通过标签连接,则有可能模块B先执行,模块A后执行,造成仿真结果不可信。如果想确保模块的执行顺序,必须手动设置每个模块的执行顺序,非常繁琐。
另外,由于建模水平的限制,很多人通常用一根线表示一个标量(比如一个浮点数)。当传输一个3乘3的矩阵的时候,就需要连9根线,非常麻烦,这个时候完全可以用一根线来表示一个3乘3的矩阵,优化连线的数量。
发明内容
本发明的目的在于提供一种Simulink的自动布局方法,以解决上述背景技术中提出的问题。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京灵思创奇科技有限公司,未经北京灵思创奇科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910383814.0/2.html,转载请声明来源钻瓜专利网。