打印

模型化开发过程中要基本掌握的Matlab/Simulink的功能

[复制链接]
596|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Plantt|  楼主 | 2017-11-16 10:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
模型化开发过程中要基本掌握的Matlab/Simulink的功能


      基于模型设计其实是一种设计方法,当然建模的软件以及代码生成工具也不是只有Matlab/Simulink这一种,比如还有Labview、以及ETAS公司的ASCET等等。当然前者由于需要特定板卡支持,而且系统移植性不好,在基于模型的设计中用的较少,更多的被用于测试领域;后者一般用于汽车行业,其实更多的用于博世集团的研发体系中。同时由于matlab\simulink在各个工程领域以及数学领域的广泛应用,以及比较开放灵活的软件构架更多的赢得了或者说是引领的基于模型的设计这片市场。
    现在越来越多的工程师使用Matlab/Simulink或者基于matlab平台的软件(比如DSPACE)进行模型化嵌入式开发。
    在基于模型开发的工作过程中一般要掌握如下工具或者知识:
    1、基础的M语言:用来初始化变量、定义信号、使用命令行调用模型进行仿真,编写测试脚本等等。
    2、SImulink、Stateflow:基本的图形化建模工具,逻辑系统的建模放在Stateflow更为合适。
    3、Simulink的数据类型和数据接口的管理:这里比较有用的两个工具ModelExplorer、DataObjectWizard。前者可以方便查看模型各个层次中包含的数据和信号,以及他们的定义,相当于一个数据字典;后者可以批量的进行数据和信号的类型的变更;
    4、模型的层次化管理:这里一般有几种方法主要是对模型进行封装和划分:Subsystem、Autosubsystem、Modellibrary、Modelreference等几种形式,其中可以对生成代码有影响的是后三种,第一种为虚拟化的层次结构。Autosubsystem通过配置可以影响到子模块是否生成的函数;Modellibrary一般是不经常修改的、通用的模块做成自定义库,有点类似标准件,可以随用随调;Modelreference一般是在多人协作时,最后集成模型调用各个工程师的模块时使用,可以方便的进行模块的修改,然后再主模型中刷新即可,而且可以将子模块生成单独的c文件和头文件。
     5、EmbedCoder的配置:老的版本中也叫RTW 模型的配置选项中诸多选项对模型的生成的代码的风格,注释,文件的多少都有直接的影响,这里不细说。
     6、外部代码的使用和集成方法。

     掌握到上面的内容就可以进行简单的模型设计仿真及代码生成工作了。如果要生成高质量的产品级代码可能还要掌握更多的工具,比如:Fixed-Piont(定点工具)、Model Advisor(模型规范化的工具)、ParameterEstimation(参数优化工具),如果要做测试工作还需要了解测试覆盖率的知识,以及怎么使用相关的工具箱进行覆盖率的检验和补充。

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

637

主题

901

帖子

4

粉丝