当前汽车领域,车辆EE架构正由分散式向集中式转变。但在分散式架构中适用的MCU类控制器软件开发整合方法,在集中式架构中却不再适用。面对这一难题,我们该如何应对?这无疑让人感到焦虑。下面,我将为大家展示破解之道。
架构转型难题
汽车EE架构的这次转变至关重要。以往采用的是分布式架构,每个控制器各自为政,就像独立工作的小职员。然而,在集中式架构中,多个控制器的功能将汇聚至一个域控制器,这就像原本分散的团队需要合并协作。面对这种架构的革新,传统的软件开发集成方法显得力不从心,仿佛旧有的办法遇到了新挑战,已不再适用。众多项目在采用传统方式构建集中式架构的域控制器时,常常遭遇诸多问题。
传统过程局限
在传统控制器软件的开发与整合过程中,通常是针对单个控制器进行的。然而,当涉及到域控制器时,问题便出现了。首先,域控制器集成了多个传统控制器的功能,使得原本的应用软件工程师转变为子系统的角色,他们无法全面提出域控制器所需的所有软件需求。在某个项目实践中,工程师们发现不同子系统有着各自独特的需求,而传统的整合方法无法全面兼顾这些差异。此外,传统的整合流程缺少对多个子系统整合的全面规划,而且软件整合与测试阶段也无法满足新的架构要求。
问题深入剖析
将传统软件开发的方法应用于域控制器开发,问题尤为突出。在集成设计阶段,缺乏对各个子系统功能融合的系统性规划。比如,有些实践案例中,各子系统功能被硬性组合,结果导致软件运行不稳。而在软件集成过程中,采用传统代码合并方式同样可能引发冲突。在测试阶段,以往对单个控制器的测试方法在此处无法发现明显问题,导致众多潜在问题未能被发现。
新过程的设计
为了应对前述问题,我们研发了一套新的软件开发整合流程。这一流程基于方法论,对软件工作组件(SWC)的设计阶段进行了细致的步骤划分。工作启动于域控制器层面,当应用层软件的SWC部署完毕,但此时SWC尚无运行实体。在域控制器级别的软件构件模型整合以及软件内部算法的开发过程中,这两项任务可以同时进行。这样的安排有助于加速开发进程,提升工作效率。在一些项目中应用这种并行方式开发,项目周期明显缩短了。
具体步骤实施
将运行实体设计的软件模型整合,构建成完整的域控制器应用层SWC,这作为软件开发的基础输入。依据输出数据和硬件IO配置表等资料,进行基础软件底座的开发与测试工作。随后,基础软件工程师将开发完成的基础软件底座与SWC软件相结合,最终生成可在域控制器上运行的文件。通过这样一步步的实施,新开发集成过程的优势就体现出来了。
实践验证效果
使用业界通用的开发工具,通过示范项目进行测试。EE架构师、应用软件工程师和基础软件工程师协同作业,共同推进了域控制器的开发任务。在此过程中,软件开发与集成流程进展顺利,实现了既定目标。这表明,在集中式EE架构中,针对MCU类型的域控制器,新的软件开发集成方法既可行又易于操作。
这种新型的软件开发整合流程,大家认为它会在未来汽车产业中得到广泛推广吗?如果在软件开发过程中遇到了类似的问题,不妨点个赞,把经验分享出来,和大家共同讨论研究。