​MBD软件开发

MBD软件开发V模型:

参考文章:

汽车软件开发V模型 - 知乎

汽车控制器V型软件开发流程 - 知乎

MBD闲谈 第01期:认识一下MBD - 知乎

MBD闲谈 第02期:MBD开发流程 - 知乎

 

MBD在汽车工业中的工作流程:

该图截取自Mathworks官网技术文章”An ISO 26262 Workflow for Automated Driving Applications Using MATLAB: Guidelines and Best Practices”:An ISO 26262 Workflow for Automated Driving Applications Using MATLAB: Guidelines and Best Practices - MATLAB & Simulink

重要文章”如何将Simulink应用于ISO 26262项目”:如何将Simulink应用于ISO 26262项目 - MATLAB & Simulink 

 

MBD对ISO-26262认证支持的新进展: 预期功能安全(SOTIF)流程集成:

该图截取自Mathworks官网技术文章”MBD对ISO-26262认证支持的新进展”:MBD对ISO-26262认证支持的新进展 - MATLAB & Simulink

 

四个种在环测试方案:

参考文章:

什么是MIL、SIL、PIL和HIL?_mil sil hil_zeloas的博客-CSDN博客

自动驾驶虚拟仿真测试介绍(7):MIL、SIL、PIL和HIL是个啥_自动驾驶仿真测试的博客-CSDN博客

MIL/SIL/PIL/HIL的区别与具体定义_mil sil pil hil_zolty的博客-CSDN博客

MIL、SIL、PIL、HIL是个啥,你搞懂了吗?_tthusika的博客-CSDN博客

 

MIL(Model In Loop):模型在环

 目的:

1、系统工程师:快速验证算法原型的功能需求。

2、软件工程师:模型级的集成测试。

MIL最大的作用还是梳理项目的开发框架,是系统层面上的设计工作,还可以对不熟悉的领域或者相关知识进行学习

 

SIL(Software In Loop):软件在环

目的:

验证模型与模型所生成的C代码在PC端上,是否一致,即:SIL是一种等效性验证,验证”模型”和”代码(PC端)”的行为是否等效。

因为SIL的目的是等效性验证,因此,可以不用搭建前述的那种完整的闭环模型,而使用如下方式替代:

 

PIL(Processor In Loop):处理器在环

目的:

1、验证模型与模型所生成的C代码在目标处理器上,是否一致,即:PIL是一种等效性验证,验证”模型”和”代码(目标处理器端)”的行为是否等效。

2、获得算法在实际处理器上的运行时间信息(如:最长运行时间)。

因为PIL的目的是等效性验证,因此,可以不用搭建前述的那种完整的闭环模型,而使用如下方式替代:

 

HIL(Processor In Loop):硬件在环

 很多人会把HIL和PIL混淆,也有人认为PIL是一种简化的HIL,理由是PIL测试的时候也需要引入硬件。这种理解是错误的。

PIL和HIL验证的目的不同:

PIL用于验证软件和模型是否一致,是一种等效性验证。

HIL用于验证完整的控制器系统,控制器系统包括了硬件、底层软件和应用层软件。

*:严格来说HIL是可以从MBD独立出来的,使用HIL不意味着就一定是MBD。

posted @ 2023-06-14 20:48  仰望星空-自然-7  阅读(210)  评论(0编辑  收藏  举报