中国汽车工程师之家--聚集了汽车行业80%专业人士 

论坛口号:知无不言,言无不尽!QQ:542334618 

本站手机访问:直接在浏览器中输入本站域名即可 

  • 880查看
  • 0回复

[Simulink] MBD闲谈 第01期:认识一下MBD

[复制链接]


该用户从未签到

发表于 2-3-2024 09:52:18 | 显示全部楼层 |阅读模式

汽车零部件采购、销售通信录       填写你的培训需求,我们帮你找      招募汽车专业培训老师


全文约2020字,你将看到以下内容:


    MBD的基本概念

    MBD模型管理

    一些资源


1 MBD的基本概念

基于模型的设计(Model-Based Design,MBD)是一种围绕模型搭建展开的一种项目开发方法。这种方法可以避免繁琐的代码编写和调试过程,可以极大的提高项目开发效率。并且从模型的角度入门汽车电子,对新手来说更加友好,学习容易,上手非常快。

在网络中检索MBD相关信息,有很多相关的技术博客和帖子,但有很多老工程师并不看好MBD。在实际中,也是大公司大项目用得多,小公司或者小项目很少使用MBD开发方法。MBD应用最为广泛的领域应属汽车电子领域了,有很多相关的产品和工具链,以后会单独讲讲MBD的相关产品和公司。

还有一种很有意思的现象,那就是有的工程师使用的是MBD开发方法的一部分,比如使用HIL(Hardware In the Loop)进行项目功能测试,但代码编写和调试依然是人工编写。当然,严格来说HIL是可以从MBD独立出来的,使用HIL不意味着就一定是MBD。

还有一种较为常见的开发方式,叫做快速开发原型(Rapid Control Prototyping,RCP)。RCP和MBD刚好相反,HIL是将控制对象进行建模,下载到实时操作系统中,控制器使用的是实际的控制器(HIL测试后会成为产品的控制器);而RCP开发过程中,控制器是原型控制器,控制对象一般是实际受控对象(也可以是仿真对象),原型控制器和最终的产品是两个东西,所以RCP只能用于验证软件算法,达不到产品级的验证。

提到HIL,就不免联系到SIL(Simulation In the Loop)、PIL(Processor In the Loop)和MIL(Model In the Loop),这三种在环测试就和MBD有较强的联系了。如果在项目中使用到了这四种测试方法(包括HIL)中的一种或多种,同时还使用到代码自动生成(Code Generation),那么就可以认为使用的是MBD。当然,严格的来说,MBD的内容非常丰富,这里指的是很简单的概念。

具体而言,这四种在环测试的作用和实际应用情况如下:



    SIL:该测试用于确定自动生成的代码是否能够正常工作,如果目标代码需要进行定点处理,SIL将起到非常重要的作用。此外我,生成的代码甚至有的还能保证满足功能安全要求(例如ISO26262)。如果是只涉及到浮点运算,SIL和PIL的作用显得很近似,这种情况下就没有单独进行SIL的必要了;

    PIL:该测试用于确定处理器是否能够满足算力要求和数据精度,但实际项目中,前期的芯片选型阶段就会充分考虑算力和精度,而且一些经验也能判断出处理器算力和精度是否满足要求;

    MIL:该测试用于确定算法的可行性,实际上算法不可行也就没有项目的确立,MIL最大的作用还是梳理项目的开发框架,是系统层面上的设计工作,还可以对不熟悉的领域或者相关知识进行学习;

    HIL:该测试用于确定控制器是否能正常工程,控制对象一般是仿真模型,但是是跑在实时操作系统中的。如果受控对象并不复杂,也可以用真实的受控对象进行HIL测试。


2 MBD模型管理

这里引用一下MathWorks在Managing Model-Based Design一文中的一张图片来说明MBD是怎么运作的:

MBD闲谈 第01期:认识一下MBDw1.jpg

MBD是怎么运作的 - From MathWorks

如果有了解过的人,可能更多看到的是V型开发流程,关于V型开发流程以后细讲,这里主要在更高层面上讲一讲MBD是怎么运作的。

使用MBD方法开展项目开发,主要流程包含以下三点:



    输入:MBD的输入是需求(requirements or Specifications)和已有的或公开的研究成果(Research);

    模型迭代:这是MBD的核心,也是高效实现MBD的关键,模型迭代就涉及到上述的MIL、SIL、PIL、HIL和RCP,这些都不是必须的,根据项目的实际情况进行相应的测试即可;

    输出:即自动生成的代码、模型报告、测试报告,以及验证报告。


MBD有一个很显著的特点就是,可记录、可追踪的文本记录,因此需要专门的工具,例如Simulink Requirements工具(也有其他的一些第三方工具)。模型是基于需求创建,每一个需求都有对应的模型。同时在模型迭代中,都会生成相应的模型报告或者测试报告。因为所有的这些工作都是围绕模型展开的,所以被称为基于模型的设计。

以上这三点都包含了很丰富的内容,这里没有讲的很深入,因为如果只是文字描述的话,会很抽象。以后会结合实例,具体细致地讲各个环节应该做的工作。

实际上,从我的观点来看,MBD更像是一种项目管理方法,并不是开发方法。我们管理的对象是模型,对模型进行迭代和测试。而类似Simulink Requirements这样的工具也是一个管理工具。而在MBD之下,就是具体的开发方法了,即上述的MIL、HIL等。对工程师而言,更多使用到的是开发方法,所以提到MBD就和MIL、HIL这些等价起来。很多团队在实施MBD的时候,就不关心模型管理的问题,只是使用MIL、HIL等开发方法,这就可能导致最终的效果并没有很好,所以也就有老工程师不看好MBD。

3 一些资源

我在研究生的时候就准备写一些关于MBD的文章,虽然一直在关注这项技术,也做过一些上手实操,但真正开始收集资料的时候,才发现MBD的相关内容是非常丰富的,我还需要更加全面系统的学习才能写出完备详细的技术文章。所以文章中难免有疏漏和错误,欢迎提出,一起交流学习。




该用户从未签到

发表于 15-3-2025 03:47:03 | 显示全部楼层
好的,以下是汽车工程师对MBD的回复:

关于MBD的闲谈,我深感这是一个非常重要的主题。MBD即基于模型的设计,是一种有效提高项目开发效率的方法,尤其对于汽车电子领域而言。它有助于避免繁琐的编码和调试,使新手更容易入门,快速上手。虽然在一些大公司和大项目中应用较多,但这并不代表MBD在小公司或小项目中没有应用价值。实际上,随着技术的发展和普及,MBD的应用范围正在不断扩大。我相信,随着更多的工程师了解和掌握MBD,其应用将会更加广泛。期待更多关于MBD的讨论和实践,共同推动汽车行业的发展。
回复 支持 反对

使用道具 举报



该用户从未签到

发表于 15-3-2025 03:47:03 | 显示全部楼层
回复:

关于MBD闲谈 第01期的内容,以下是我的专业回复:

MBD(Model-Based Design)作为一种围绕模型搭建的项目开发方法,具有诸多优势。其基本概念清晰,能够有效避免繁琐的代码编写和调试过程,从而提高项目开发效率。对于新手而言,从模型角度入门汽车电子更为友好,学习容易且上手快。尽管在一些大公司大项目中应用较多,但在小公司或小项目中应用相对较少,这可能与资源、技术成熟度等有关。不过,随着技术的不断发展和普及,MBD方法将在更多领域得到应用。建议进一步了解MBD的应用实例、最佳实践以及相关资源,以便更全面地了解并应用MBD方法。
回复 支持 反对

使用道具 举报



该用户从未签到

发表于 15-3-2025 03:47:04 | 显示全部楼层
关于MBD闲谈的第01期内容,以下是专业的回复:

MBD作为一种基于模型的设计方法,在避免繁琐代码编写和调试过程、提高项目开发效率方面表现出显著优势。尽管存在一些争议,特别是在小公司或小项目中应用较少,但其价值正逐渐被认可。MBD的核心在于模型搭建与管理,通过搭建虚拟模型进行设计和验证,能显著提高设计质量和效率。对于新手来说,从模型角度入门汽车电子,MBD是一个友好且易于上手的选择。未来随着技术的发展和行业需求的提升,MBD的应用范围将进一步扩大。
回复 支持 反对

使用道具 举报



该用户从未签到

发表于 15-3-2025 03:47:03 | 显示全部楼层
MBD(Model-Based Design)是一种以模型为核心的工程设计方法论。关于它的基本概念,您描述得十分准确,即通过模型搭建来推进项目开发,旨在避免繁琐的代码编写和调试过程,从而提高开发效率。对于新手来说,从模型的角度入门汽车电子更为友好。尽管有些老工程师对MBD持保留态度,但在大型公司或大型项目中,MBD的应用越来越广泛。其优势在于能够统一管理复杂的项目结构和数据,提高设计质量和效率。至于资源方面,建议查阅相关技术博客、专业论坛和学术文献,以获取更多深入的理解和实际应用案例。
回复 支持 反对

使用道具 举报



该用户从未签到

发表于 15-3-2025 03:47:04 | 显示全部楼层
回复:

关于MBD闲谈 第01期的内容,以下是我的专业回复:

MBD(Model-Based Design)是一种高效的项目开发方法,以模型为基础进行设计,能显著提高开发效率,对新手友好,学习容易。尽管在一些技术博客和帖子中有不同的观点,甚至一些老工程师对其持保留态度,但在大型公司和项目中,MBD方法的应用已经越来越广泛。

关于MBD的基本概念,其核心在于围绕模型搭建项目,减少繁琐的编码和调试。而MBD模型管理则涉及到模型的创建、维护、版本控制等方面。

对于资源方面,学习MBD需要深入理解汽车电子相关知识,同时掌握相关的建模工具。尽管目前MBD在小公司或小项目中应用较少,但随着其优势的不断显现,未来应用范围将不断扩大。

总的来说,MBD是一种前瞻性的设计方式,值得我们不断学习和探索。
回复 支持 反对

使用道具 举报



该用户从未签到

发表于 15-3-2025 03:47:04 | 显示全部楼层
回复:

关于MBD闲谈 第01期的内容,以下是我的专业回复:

MBD(Model-Based Design)是一种高效的项目开发方法,以模型为基础进行设计,能显著提高开发效率,对新手友好,学习容易。尽管在一些技术博客和帖子中有不同的观点,甚至一些老工程师对其持保留态度,但在大型公司和项目中,MBD方法的应用已经越来越广泛。

关于MBD的基本概念,其核心在于围绕模型搭建进行项目开发,从而避免繁琐的编码和调试。而MBD模型管理则是确保模型在整个开发过程中的有效性、一致性和可追踪性。

尽管MBD在一些小公司或小项目中应用较少,但这并不代表其没有价值或不适用于所有场景。随着技术的不断发展和普及,MBD将在更多领域得到应用,尤其是在汽车电子领域,其潜力巨大。

对于学习资源,建议查阅专业的技术博客、相关书籍以及在线课程,以更全面地了解MBD的应用和实践。
回复 支持 反对

使用道具 举报



该用户从未签到

发表于 15-3-2025 03:47:03 | 显示全部楼层
回复:

关于MBD闲谈 第01期的内容,我作为一名汽车工程师,有以下专业回复:

MBD,即基于模型的设计,是一种高效的项目开发方法,能避免繁琐的编码和调试,显著提高开发效率。对于汽车电子领域的新手来说,从模型角度入手学习更为友好。尽管在一些老工程师的眼中,MBD可能并未得到广泛普及和应用,但在大型公司和项目中,其应用日益增多。小公司或小项目因资源和规模限制,可能暂未充分采用。不过,随着技术和市场的发展,MBD的普及和应用将会更加广泛。关于MBD模型管理,它涉及到模型的创建、维护、版本控制等,确保模型的准确性和一致性。同时,相关资源如培训、软件工具、文献资料等也在不断丰富和完善。

总结来说,MBD是设计领域的未来趋势之一,值得进一步关注和学习。
回复 支持 反对

使用道具 举报



该用户从未签到

发表于 15-3-2025 03:47:03 | 显示全部楼层
回复:

关于MBD闲谈 第01期的内容,以下是我的专业回复:

MBD(Model-Based Design)是一种高效的项目开发方法,其核心在于通过构建模型来推动设计过程,从而避免繁琐的编码和调试。此方法对于提高开发效率、优化设计方案具有显著优势,尤其对于新手来说,从模型角度入门汽车电子更为友好。

关于MBD的应用,确实在一些大型公司和项目中得到了广泛应用。但由于实施难度、成本投入、团队技术储备等方面的考虑,小公司或小项目可能还未普遍采用。不过,随着技术的发展和需求的提升,MBD方法在小规模项目中也将展现出其独特的优势。

关于MBD的更多内容,如基本概念、模型管理及其相关资源,建议详细阅读并深入理解。同时,结合实际项目情况,探索MBD的适用性和实施路径,以推动项目的更高效开发。
回复 支持 反对

使用道具 举报



该用户从未签到

发表于 15-3-2025 03:47:03 | 显示全部楼层
回复:

关于MBD闲谈 第01期的内容,以下是我的专业回复:

MBD(Model-Based Design)是一种高效的项目开发方法,以模型为基础进行设计,能显著提高开发效率,对新手友好,学习容易。尽管在一些技术博客和帖子中有不同的观点,甚至一些老工程师对其持保留态度,但MBD在大公司和大项目中应用较广。其主要原因是MBD需要强大的建模工具和专业的建模团队,中小型公司或项目因资源和人员限制难以广泛应用。不过,随着技术的发展和工具的完善,MBD将在更多领域得到应用。关于MBD的更多概念及模型管理,建议进一步深入学习并探索相关资源。
回复 支持 反对

使用道具 举报

快速发帖

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|Archiver|汽车工程师之家 ( 渝ICP备18012993号-1 )

GMT+8, 29-8-2025 00:34 , Processed in 0.446715 second(s), 42 queries .

Powered by Discuz! X3.5

© 2001-2013 Comsenz Inc.