2 奇瑞艾瑞泽7轿车的ECU开发流程
ECU(Engine Control Unit,发动机控制器)就是典型的一种高复杂度又需要具备高可靠性的车用嵌入式系统。以图2所示的2013年7月26日正式上市的奇瑞艾瑞泽7轿车的ECU开发为例,此ECU为联合汽车电子有限公司提供的ME 17型ECU。该公司是中联汽车电子有限公司和德国博世的合资公司,主要从事汽油发动机管理系统、变速器控制系统、车身电子、混合动力和电力驱动控制系统的开发、生产和销售。
1)在系统定义阶段,ECU系统定义文档的内容应该包括目标车型、目标市场,目标市场适用的排放法规及油耗法规,客户要求的动力性及各种配置等内容。
2)在需求分析阶段,以ECU的怠速控制需求为例,可定义为:在发动机达到暖机状态时,不开空调,怠速转速为800 r/min,转速波动在±30 r/min之内。
3)在架构设计阶段,ECU的模块接口文档包括软件接口文档及硬件接口文档。软件接口文档描述发动机上层应用软件与底层驱动软件之间的接口函数定义、全局变量定义等,硬件接口文档描述ECU硬件需要具备的各个引脚功能及电气性能、电磁兼容性能、环境耐久、机械性能等要求。
4)在模块开发阶段,发动机控制策略的开发人员,通过建模工具,完成喷油逻辑、点火逻辑、怠速控制逻辑等模块的建模,根据发动机应用层软件与底层驱动软件接口文档配置自动代码生成工具的参数,然后通过自动代码生成工具生成能够带相应接口的C代码,可以和底层手写的驱动软件代码集成在一起,同时还能自动生成设计文档。底层软件开发人员根据底层软件需求手工编写代码。硬件设计人员开发ECU硬件。
5)在系统集成阶段,集成工程师将模型自动代码生成的C代码和底层手写的代码放在一个工程里进行编译调试通过,生成一个可执行的S19文件,并刷入到ECU硬件样件里,就形成了一个可运行的ECU样件。
6)在单元测试阶段,由发动机策略开发工程师进行发动机上层应用模型的单元测试,包括模型在环测试(MIL)、软件在环测试(SIL)及处理器在环测试(PIL)。MIL是模型在仿真的环境里执行,验证模型逻辑的正确性;SIL是将模型转换成代码,在仿真环境里验证代码的正确性;PIL是将模型生成的代码通过专门的工具下载到处理器芯片中去,验证模型所生成的代码在真实芯片中执行的正确性。底层软件代码通过单元测试工具进行分支覆盖测试、条件覆盖测试、修正条件判定覆盖等白盒测试。对于ECU硬件样件的测试,按照硬件接口文档和硬件开发需求文档来进行。
7)在集成测试阶段,可以制作一个车辆模拟器来对ECU进行集成测试。这种车辆模拟器可以发出转速信号、相位信号、车速信号、水温信号、进气压力信号等传感器输入信号给ECU。车辆模拟器显示出来。利用这种模拟器可以测试ECU能否正确读取输入信号、正确处理信号、正确输出控制信号,属于一种开环测试。
8)在系统测试阶段,将ECU接入专用的硬件
在环测试(HIL)设备来进行系统测试。HIL设备的硬件接口能够提供与实车完全一致的实时硬件信号给ECU,也能够实时地读取ECU输出的控制信号。HIL设备上的高速处理器还会运行一个发动机模型来对ECU的控制结果进行实时反馈,真实模拟ECU在实车环境下的工作,实现闭环测试。根据需求编写可运行在HIL设备上的系统测试用例,实现全面高效的系统测试。
9)在标定验证阶段,将ECU装到目标车型上,进行标定参数调整,并通过整车排放测试、整车油耗测试、整车驾驶性评价等试验,验证确定最终开发的产品能够完全满足客户的要求。