简化Simulink的建模与模型重构

模型重构

Simulink作为汽车和自动化领域中经典的模型工程必备工具,不管是专业的汽车控制器的开发还是自动化控制的专业应用编程,都会使用到Simulink进行图形化编程、代码生成等等。为了实现这些,一个布局雅观、结构清晰、可读性高、容易理解又不易出错的模型至关重要。

复杂系统需求的不断更新对于模型系统的重构带来挑战,因此高效地进行模型系统的重构对控制系统的开发尤为重要。不断重构的建模习惯,让扩展和维护代码更容易,已成为现代软件开发的最佳实践。

遗憾的是在缺乏相关辅助工具支持下,手动重构大型模型可能会非常耗时且容易出错。因此,在使用 Simulink 进行基于模型的开发中,亟待一个更好的解决方案。

我们的解决方案:MES MODEL & REFACTOR(MoRe)

MES Model & Refactor(MoRe)是MES为使用 Matlab/Simulink建模的用户设计的一款插件工具。 MoRe在建模过程中提供给用户众多便捷功能,以减少耗时和单调的工作量。使用MoRe让建模更容易、更快、更不容易出现错误,尤其适用于模型的重构。MoRe直接集成在Matlab/Simulink菜单中,只需通过鼠标点击便可完成复杂的建模和重构操作,减少繁琐和重复的建模工作量。

MoRe的功能:

1. 创建和删除结构相关的信号

通过子系统层次结构创建或删除信号以及路径既耗时又易出错。使用 MoRe 可以通过一个简单操作添加或删除此类信号。通过选择源端口和目标端口,可以自动生成或删除相关联的输入、输出和信号线。

2. 完善子系统分解

您可以通过使用MoRe在不影响模型功能的前提下快速、轻松地修改分解模型。通过简单的操作将已连接的功能模块移入或移出子系统。此外,也可以将一个子系统划分为两个子系统或将两个子系统合并成一个系统。

3. 修改子系统接口

MoRe支持子系统接口的修改。例如,您可以通过对话框在外部更改子系统的端口顺序。此外,支持在外部重命名端口 - 此功能针对输入适用于R2017a以后的版本,针对输出适用于R2018b以后的版本。

4. 生成和分解总线

通过使用MoRe您可以将已连接的信号轻松、快速地生成总线。这是一个在修改模型时常用但耗时的步骤。在实现过程中,MoRe 会自动生成需要的Creator、Selector 以及信号线。除此之外,还为总线提供增添信号功能和Selector分解或合并功能。

5. 数据流分析

MoRe为Simulink中的数据流分析和可视化提供多种操作。例如,对目标信号有影响的所有相关信号路径高亮显示。这也就是所谓的模型Slicing。借此可以分析子系统的哪些输入对输出有影响。此外,您还可以使用MoRe更快速、更轻松地导航到信号的源或目标位置。

关于MES模赛思公司:

模赛思软件技术有限公司(Model Engineering Solutions,简称MES)是一家总部位于柏林的德国高科技软件公司,专为软件项目的质量保障提供解决方案。MES为客户基于模型的软件开发提供技术支持,使其符合IEC 61508、ISO 26262或ASPICE等行业标准。MES的主要客户包括整车厂如戴姆勒、大众、丰田和吉利等以及博世、西门子和三星等行业供应商。在汽车行业中,除少数几家公司外,全球数十家顶尖制造商及供应商均在他们的开发环境中使用MES的解决方案。为支持其全球客户,MES已在美国和中国建立了子公司,并与全球分销商网络紧密合作。

MES的产品包括4种质量工具软件:MES Model Examiner、MES Test Manager、MES Model & Refactor和MES Quality Commander,它们共同构成了一个工具链,全面保障基于模型的软件开发过程中所有阶段的质量。通过MES Jenkins Plugin,该工具链也可以在持续集成环境中使用。工具链主要应用平台为MATLABSimulink。除了MES质量工具外,MES测试中心和MES学院的专家们还为全球客户提供关于质量保证和开发流程优化的定制咨询服务及培训课程。

简化Simulink的建模与模型重构的更多相关文章

  1. 倾斜摄影3D模型|手工建模|BIM模型 轻量化处理

    一.什么是大场景? 顾名思义,大场景就是能够从一个鸟瞰的角度看到一个大型场景的全貌,比如一个园区.一座城市.一个国家甚至是整个地球.但过去都以图片记录下大场景,如今我们可以通过建造3D模型来还原大场景 ...

  2. .net4.5 await async 简化之后的异步编程模型

    步骤核心: 方法签名包含一个  async 修饰符. 按照约定,异步方法的名称以“Async”后缀结尾. 返回类型为以下之一: Task<TResult> 如果您的方法有操作数为 TRes ...

  3. ArcGIS数据建模 (模型构建器modelbuilder) 培训视频 5章28小节587分钟视频 51GIS网站上线

    网址:http://www.51gis.com.cn/kecheng.html?id=358

  4. 基于python的数学建模---图论模型(Floyd)

    import numpy as np inf = 99999 # 不连通值 mtx_graph = [[0, 1, inf, 3, inf, inf, inf, inf, inf], [1, 0, 5 ...

  5. 基于python的数学建模---图论模型(Dijkstra)

    from collections import defaultdict from heapq import * # 堆--先进后出 inf = 99999 # 不连通值 mtx_graph = [[0 ...

  6. MATLAB基本使用及SIMULINK建模仿真实验

    MATLAB基本使用及SIMULINK建模仿真实验 这是我总结的操作方法: 1 )  M脚本文件的编写 1.新建M-file: 2.输入指令: 3.保存(注意:保存路径需要与工作路径一致) 2 )在S ...

  7. 读取Simulink中Dataset类型的数据

    http://files.cnblogs.com/files/pursuiting/%E5%80%92%E7%AB%8B%E6%91%86%E6%8E%A7%E5%88%B6%E7%B3%BB%E7% ...

  8. ENode框架Conference案例分析系列之 - 事件溯源如何处理重构问题

    前言 本文可能对大多数不太了解ENode的朋友来说,理解起来比较费劲,这篇文章主要讲思路,而不是一上来就讲结果.我写文章,总是希望能把自己的思考过程尽量能表达出来,能让大家知道每一个设计背后的思考的东 ...

  9. 从AdventureWorks学习数据库建模——实体分析

    最近打算写写数据库建模的文章,所以打算分析微软官方提供的SQL Server示例数据库AdventureWorks,看看这个数据库中有哪些值得学习的地方. 首先我们需要下载安装一个SQL Server ...

  10. 有关基于模型的设计(MBD)一些概念和理解(zz)

    http://www.matlabsky.com/thread-38774-1-1.html 本文转载于MathWorks中国高级工程师董淑成的帖子内容.为了方便阅读,对原文进行了重新整理编辑. 之前 ...

随机推荐

  1. [转帖]程序运行崩溃(segfault)的排查方法

    这篇博文记录的非常详细:https://blog.csdn.net/zhaohaijie600/article/details/45246569 我的笔记: 写的C++程序老是运行两三天就挂了,关键是 ...

  2. [转帖]看6大国产CPU加速替代,谁才是“王者”选手?

    https://baijiahao.baidu.com/s?id=1761150458273739276&wfr=spider&for=pc 2023-03-23 17:33湖北匠心计 ...

  3. 巧用GenericObjectPool创建自定义对象池

    作者:京东物流 高圆庆 1 前言 通常一个对象创建.销毁非常耗时的时候,我们不会频繁的创建和销毁它,而是考虑复用.复用对象的一种做法就是对象池,将创建好的对象放入池中维护起来,下次再用的时候直接拿池中 ...

  4. ES6 Array.fiill()的用法

    简单使用 // arr.fill(value, start, end) // value填充的值 // start填充的起始位置包含 // end填充的结束值,不包含,如果省略这个参数,表示从起始位置 ...

  5. 【小测试】读取*.proto文件,再读取service中method的注释

    想要在proto3中定义service,及其service的method.然后在method后面加上特殊注释,通过这个特殊注释来动态生成代码. 下面是测试代码: import ( "gith ...

  6. silce的扩容,截取,使用规范总结

    切片 什么是slice slice的创建使用 slice使用的一点规范 slice和数组的区别 slice的append是如何发生的 复制Slice和Map注意事项 接收 Slice 和 Map 作为 ...

  7. C/C++ Crypto密码库调用方法

    Crypto 库是C/C++的加密算法库,这个加密库很流行,基本上涵盖了市面上的各类加密解密算法,以下代码是我在学习是总结的,放到这里用于后期需要时能够快速解决问题. 项目地址:https://www ...

  8. 【Linux】虚拟机太卡咋办?用云服务器Xshell配置Vmware虚拟机【技能篇】

    [Linux]用云服务器Xshell配置Vmware虚拟机[技能篇] 强烈建议本篇收藏后再食用~ 文章目录 Xshell下载 配置Vmware 尾声 平时我们使用虚拟机,可能最烦人的问题就是卡顿了.今 ...

  9. CentOS7环境下MySQL的主从配置

    CentOS7环境下MySQL的主从配置 一.什么叫主从复制 通过在主服务器和从服务器之间切分处理客户查询的负荷,可以得到更好的客户响应时间.通俗点说就是select查询发送到从服务器,修改数据的语句 ...

  10. Pandas练习

    背景介绍 本数据集包括了2015年至2017年我国36个主要一线城市.特区的一些年度数据,包括产值.人口.就业.教育.医疗.经济贸易.房地产投资等方面. 包含文件: 2015年国内主要城市年度数据.c ...