虚拟控制器(V-ECU)是指通过软件在模拟环境中运行,模仿实际硬件控制器功能的系统组件。它可用于开发、测试和验证嵌入式系统,而无需依赖实际的物理硬件。
当前汽车微控制器虚拟控制器主要分为两类。一类是基于控制器主控芯片的二进制文件(如:HEX,S19),将其跑在芯片对应的PC仿真器上来模拟仿真其行为。还有一类是将ECU控制器中源码在源代码端就进行软硬件的解耦,再通过x86编译器(如:Mingw或 MSVC编译器)生成与X86 环境兼容的可执行文件(如FMU文件)运行在仿真环境上,从而进行仿真测试。
根据功能需求,虚拟控制器V-ECU一般分为以下几类:
Type-0/Level-0 V-ECU:应用层功能模型
该类型主要用于验证控制功能逻辑与应用层功能算法,通常通过MATLAB/Simulink 或 ASCET 等模型生成。测试过程只针对模型本身进行测试,不生成用于集成的功能模块代码,常用的测试场景为模型在环 (MiL) 测试,用于早期概念设计阶段的功能验证。
Type-1/Level-1 V-ECU:应用层功能虚拟控制器
Type-1/Level-1 类型的V-ECU 包含应用软件 (ASW) 的产品级代码。它可以测试ECU应用层的功能,或跨多个 ECU 分布的功能模块。这种类型的 V-ECU 无需直接与硬件交互,适用于功能开发和软件在环 (SiL) 测试,能够帮助加速原型设计和功能验证。
Type-2/Level-2 V-ECU:基于仿真BSW层的虚拟控制器
此类型在应用层代码基础上,还包含用于仿真的基础软件 (BSW),如简化的通信协议栈 (Com Stacks)。它可以更全面地测试应用软件,尤其是涉及通信总线的场景,支持更复杂的总线通信和集成测试。
Type-3/Level-3 V-ECU:产品级BSW的虚拟控制器
Type-3/Level3 V-ECU 除了应用软件,还包括大部分基础软件 (BSW)。它能够模拟更接近真实ECU的软件架构,支持组件集成测试、功能链测试及网络集成测试。这个层级适用于更高级别的系统测试,包括物理层的通信仿真。
Type-4/Level-4 V-ECU:目标二进制文件
Type-4/Level-4V-ECU涉及针对特定硬件目标编译的完整二进制文件,它能够模拟微控制器的指令集,运行在PC环境下的目标芯片仿真器上。该类型V-ECU虽然可以支持对软件与目标芯片硬件交互的详细研究,这对与开发MCAL驱动或复杂设备驱动(CDD)是有用的,用于高度真实的硬件行为模拟和软件测试。Level-4级的虚拟控制器虽然有其独特的优势,可以保留目标芯片软件的编译工具链和完整二进制文件,但受限于前期的投入与仿真时的运行效率的因素,在使用场景上受到一定的限制。
综上,所有这几种类型的V-ECU在ECU软件开发过程中都可被并行使用。Type1-3 / Level 1-3级 V-ECU为基于x86 PC架构编译生成的,相较于Type-4 / Level-4的V-ECU,能提供相对满意的仿真性能、代码调试能力、以及更快的仿真效率和更短的开发反馈周期。
ETAS如何帮助您快速生成虚拟控制器?
VECU-BUILDER可将现有的C语言源码 或 经过预编译后的二进制库文件(基于X86的PC静态库) 构建为FMU格式的虚拟控制器(V-ECU),或基于一个已经包含符号信息的动态库文件(Dynamic Library文件)构建成FMU格式的虚拟 ECU (V-ECU)。
支持的vECU级别:
FMU集成:
这些FMU可以集成到任何兼容FMU格式导入的工具和仿真环境中,选择仿真环境取决于实际需求,例如仿真精度、仿真速度、工具链集成要求。常用的建模工具诸如Matlab Simulink, ASCET以及被控对象模型建模工具CarSim、Amesim 、AVL Cruise M等都兼容FMU格式的导入和导出,详细清单可参考以下路径https://fmi-standard.org/tools/
VECU-BUILDER的重要性能
VECU-BUILDER 通过将源代码或X86静态库文件打包生成通用FMI接口的虚拟控制器,支持多级V-ECU类型(从Type-1 到 Type-3)的轻便生成,覆盖从功能开发到集成测试的不同需求。
其性能表现在:
构建轻量级虚拟ECU:在CI/CD管道中实现快速高效的工件部署。虚拟控制器的生成的文件小,仿真环境计算开销的成本较低。
更便捷的虚拟控制器自动化生成:使用“一次配置,反复构建”的自动化解决方案来生成虚拟控制器,最具成本效益的解决生成过程耗费过多人力的问题。
更快的仿真速度:相比真实硬件,V-ECU的编译和运行速度大幅提升,减少了开发和测试的时间成本。
便捷的调试能力:通过模拟环境中的仿真和测试,开发人员可以快速识别和修复代码问题,提高软件质量。
灵活的应用场景:无论是模型级测试还是系统级集成,VECU-BUILDER都能够适应不同阶段的开发需求,确保软件功能的全方位验证(除硬件驱动模块的验证)。
-
微控制器
+关注
关注
48文章
7566浏览量
151605 -
嵌入式系统
+关注
关注
41文章
3598浏览量
129556 -
ecu
+关注
关注
14文章
889浏览量
54569 -
编译器
+关注
关注
1文章
1635浏览量
49171
原文标题:汽车微控制器虚拟控制器(V-ECU)的分类与实践
文章出处:【微信号:ETASChina,微信公众号:ETAS易特驰】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论