随着汽车电气化快速发展,逐步转化为软件定义汽车,即软件将深度参与到汽车的定义、开发、验证、销售、服务等过程中,并不断改变和优化各个过程,实现体验持续优化、过程持续优化、价值持续创造,因此可见行业内对于汽车软件的开发关注度越来越高。GVDP流程管理使得汽车开发更为科学有效,汽车生产方面有六西格玛管理使得生产质量得以提升。同样,随着汽车软件的比例不断上升,针对汽车软件开发也需要专业流程进行管理,从而保证汽车软件的质量,保证汽车软件开发的可靠性。
电动汽车MUC开发过程参考模型

汽车软件开发过程中涉及到一系列的标准和开发流程控,如IATF16949CMMI,A-SPICE, ISO26262等。ASPICE是由奥迪、宝马、戴姆勒、保时捷、大众等欧洲主要汽车制造商共同制定的,面向汽车行业的软件过程评估和改进模型。如下图所示的ASPICE过程参考模型,该过程模型分为3类、8组、32个过程,可见,过程参考模型主要是按照“V”字模型原理组织,从上到下,从左至右,右侧过程验证左侧过程,可见测试与需求/架构/详细设计/单元开发一一对应,测试在整个汽车软件开发中占比大,重要性高。

汽车MCU开发测试V型模型
基于Typhoon HIL的MCU自动化测试框架

随着当前汽车软件开发周期节奏快,软件更新迭代迅速,带来了软件测试任务繁重等问题,同时测试作为软件质量的守护员,应避免缺陷软件流出。因此如何在众多繁琐重复的测试任务中,解放测试人员的双手,自动化测试作为有效的解决方案,能够将繁重重的复测试工作交给机器来自动化进行,让测试人员更加专注于测试case的开发,让测试变得更加流程化、智能化、高效化。

右图给出了基于Typhoon HILMCU自动化测试框架,整个测试框架包括两种不同方案,基于Matlab或者Python的方案;以基于Python的测试框架为例,整个自动化测试流程如右图所示。

EXCEL根据指定的测试case填写框架要求,添加相应的测试case,并且实现测试结果的记录;

WORD根据定制化的测试报告需求,统计测试case的执行结果,给出测试失败的判定原因,能够自动生成测试报告,无需手动撰写报告内容;

INCA用于软件的标定和控制,实现按照测试case要求,同步更改软件内部的标定量,以及读取监控量,用于测试结果的判定;

CANoe:用于按照测试case要求,更改TyphoonHIL内部的电机模型的转速/电压以及旋变/电流传感器等模拟硬件信号,同时可以模拟其他控制器节点信号,进行MCUCAN接口的功能测试;

PythonMatlab执行自动化测试脚本,判定测试结果,实现与其他软件交互;

  通过基于整个自动化测试框架,将传统的人工逐条执行测试case的过程,改为自动化进行,与当前的测试流程相比,没有增加任何硬件成本,仅仅需要引入了新的自动化测试框架。基于该方案,能够充分发挥TyphoonHIL精确的被控对象建模能力以及测试台架的稳定性,实现了全天候24H不间断软件的测试,解放测试人员的双手,使得夜晚跑自动化测试,早上查看测试结果和报告的成为现实。

基于Typhoon HIL的电动汽车MCU自动化测试方案自动化测试流程

MCU自动化测试过程.png