打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
重新认识一下MBD:MBD的市场情况

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

  • MBD建模软件

  • 基于MBD的硬件支持包

  • 基于MBD的HIL解决方案

  • 基于MBD的快速原型开发解决方案

  • 基于MBD的项目管理解决方案

  • MBD解决方案总结

面讲了四种关于MBD的应用方式,在当前市场上,已经有丰富的解决方案帮助开发者实现这些应用场景。

这里简单的从公司和解决方案的角度介绍MBD的市场情况。

1  MBD建模软件

首先是支持自动生成代码的软件,主要有MATLAB、LabVIEW等。

这里特别要提一下国产软件MWorks,该软件作为对标MATLAB的系统仿真软件,是国产软件在该领域的一个突破。

MWorks提出了基于模型的系统工程(Model-Based Systems Engineering,MBSE),和MBD是一脉相承的,读者可以对MWorks关注一波。

MATLABMWorks

MATLAB等软件适合控制算法设计、软件框架设计(Stateflow)、数字信号处理仿真等,可以实现自动代码生成,包括控制器模型和执行器模型都可以实现。

不过执行器模型还可以用其他的建模软件,例如ANSYS、SolidWorks、Unity 3D、ADAMS等等。

这些软件可以搭建更加直观的3D模型,还能做运动学仿真,同时最重要的可以实现与MATLAB的联合仿真。

执行器建模软件

通过联合仿真,控制器模型可以在MATLAB中实现(也能生成代码),执行器模型使用更适合实际对象建模的软件,从而实现更加复杂的场景、更加精确的对象模型。

2  基于MBD的硬件支持包

MBD也受到各家芯片厂商的重视和追捧,主流的芯片厂商都开发了适用于自家芯片的MBD硬件支持包。

硬件支持包(Hardware Support Package)有一个特点,它高度依赖芯片的设计,所以每一款芯片都需要专门的硬件支持包,不同厂商的硬件支持包也互不通用。

硬件支持包会将芯片的各种外设封装成模块,使用的时候和Simulink中的其他模块没有什么区别。

通过这些模块,可以实现对芯片外设的配置和控制。硬件支持包一般用来解决底层驱动难以集成的问题(可参考《MBD概述 第02期:MBD的“禁区”——底层驱动》)。

使用硬件支持包可以实现软件算法、系统框架、底层驱动等全部的代码都由模型来生成,而不需要底层驱动的集成过程。

以NXP的硬件支持包MBDT(Model-Based Design Toolbox)为例,在MATLAB中安装好后,就可以在Simulink模型库中找到芯片相关的模型:

NXP的硬件支持包——MBDT

MATLAB中的硬件支持包

这里列出部分我收集到的,提供了硬件支持包的芯片厂商:

  • MCU厂商:恩智浦(NXP)、德州仪器(TI)、意法半导体(ST)、瑞萨(Renesas)、英飞凌(Infineon)、微芯半导体(Microchip)。

  • FPGA厂商:赛灵思(Xilinx)。

  • 其他厂商:树莓派(Raspberry Pi)、Arduino、英特尔(Intel)、英伟达(NVIDIA)。

Tips:还有很多其他厂商这里没有列出来,以上这些厂商都是在MATLAB的附加功能(Add-Ons)中发布了相关硬件支持包的厂商。

autoMBD会以NXP的硬件支持包MBDT为重点,详细向读者介绍和展示MBD硬件支持包的使用方法。

autoMBD目前已经开源了基于MBDT支持包开发的永磁无刷电机控制算法模型,相关链接可以在公众号或“关于autoMBD”中找到。

3  基于MBD的HIL解决方案

HIL是MBD发展最为成熟的应用场景,它已经有了属于自己的技术体系和技术规范,几乎可以把HIL和MBD当作两个不同的技术区别看待了。由于HIL相关技术的成熟,已经催生了一个专门的岗位——HIL测试工程师。

HIL测试解决方案供应商主要有:

  • 国际厂商:dSPACE、NI(National Instruments)、ETAS、IPG Automotive

  • 国内厂商:意昂神州、经纬恒润、上海科梁

NI和dSPACE的HIL硬件平台

在实际中,为了适应各种测试设备、测试条件,以及便于数据采集和分析,HIL会花费大量的成本在“如何测试”上,建模只是其中的一个环节,甚至都不是主要环节。

但是HIL和MBD的思想是一致的,即通过创建模型,并围绕模型达到测试产品的目的。

MBD和HIL的目的是不一样的:MBD是为了分析和设计产品的系统、软件、功能;而HIL是测试和验证产品的方法,由于其成熟化,已经有了标准的规范和流程。

HIL还有一个特征——。一个完整的HIL解决方案(包括软件和硬件),价格从几十万到几百万的都很常见。这也预示着它不是普通人能玩的“玩具”,HIL面向的主要是汽车主机厂等企业,很多高校实验室也会基于HIL搭建试验平台。

作者不是HIL的专家,只能大概介绍一下HIL。HIL还涉及到很多非MBD的技术和内容,不能将MBD和HIL混为一谈。要想入门HIL,只学习MBD也是远不够的。

4  基于MBD的快速原型开发解决方案

市场上关于快速控制原型开发(RCP)的解决方案也比较丰富。从V型开发流程来看,RCP和HIL分别“V”的左侧和右侧:即RCP负责设计产品,HIL负责测试产品。

所以HIL的供应商(NI、dSPACE等)一般都会提供基于MBD的快速原型开发解决方案,组成完整的V型开发流程(详细的V流程介绍可以参考作者的其他文章)。

V型开发流程

不过这里要介绍的是专门设计RCP的公司——Speedgoat。Speedgoat有什么特殊的呢?它是唯一一家经过MATLAB认证的硬件公司,所以Speedgoat的产品和MATLAB/Simulink的兼容性和一致性做得比其他解决方案要好。

相比于HIL的解决方案,RCP的硬件要便宜一些,不过售价也要几千到几万块钱。

RPC的解决方案一般会提供类似MCU硬件支持包的模型库,这些模型库可以方便地实现各种算法,或者调用原型控制器的各种接口。

有的原型控制器中运行的是Simulink Real Time仿真模型,它不能直接控制被控对象(执行器),需要特定的通讯协议和IO采集板卡来传递和交换数据。

有的原型控制具有特定功能的接口和模块,适用于特定的场合,例如专用于电机控制算法开发的原型控制器。

这类原型控制器的通用性可能会差一些,但专用功能会更加强悍,适用于特定的开发场景。

研旭和SpeedgoatRCP解决方案

其实国内还有很多不太知名的小厂在开发RCP的解决方案,例如研旭、MangoTree等。感兴趣的可以去了解一下这些小众的RCP供应商。

5  基于MBD的项目管理解决方案

这种解决方案我了解到的没有很多,我知道的只有MATLAB有这样的解决方案提出,就是SimulinkRequirements和Simulink Test这两个工具。

上文中那些大型的HIL供应商可能也有类似的方案,感兴趣的可以自行了解。

Tips:我有试用过这两个工具,可能因为没有实际的项目,只是上手,体验很“苍白”,功能都用了一遍,但又不知道这些功能到底该怎么用。由于对这种MBD解决方案不是很了解,也就不在这里大放厥词了。

6 MBD解决方案总结

关于MBD的解决方案,可以总结以下几点:

首先,支持MBD的建模软件不多,影响最大的是MATLAB/Simulink,其开发公司MathWorks本身也是MBD技术的推动者。NI的LabVIEW也有广泛的应用,国产建模软件有MWorks。此外,很多可以实现动力学仿真的三维建模软件(Unity 3D、ADAMS),通过和算法建模软件联合仿真,也能用于MBD开发。

其次,HIL和RCP的市场发展最为成熟,相关的企业和解决方案也最多。HIL和RCP已经发展的比较独立,除了MBD以外还有很多其他技术扩展,不能将MBD与HIL和RCP混为一谈。HIL和RCP的解决方案价格相对昂贵,不适合个人使用。
第三,很多芯片厂商越发重视对MBD的支持,开发了很多针对自家芯片的硬件支持包。不过这种硬件支持包目前来看功能局限性较大,还不能完全解决底层驱动的困难。

这里我想强调一下第三点,我认为这种基于芯片开发商硬件支持包的MBD解决方案,今后有巨大的发展潜力。

对于大多数的个人来说,甚至小的开发团队,使用硬件支持包的MBD开发方式是最方便、也是成本最低的。autoMBD主要也围绕这种MBD开发方式,分享相关技术文章。


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
基于福特自动化系统仿真工具链的MBD敏捷开发
汽车开发中的快速原型和基于模型设计的区别 dspace 有什么作用?
有关基于模型的设计(MBD)一些概念和理解|Simulink 基础知识讨论|MATLAB技术论坛
MBD中 MIL、SIL、PIL、HIL 的目的和实现方式
Simulink与树莓派联合仿真(HIL平台搭建)
简单说说MIL、SIL、PIL和HIL
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服