转自:http://www.sohu.com/a/143767382_236796
这是一位汽车电子工程师的投稿,他的个人公众号是
“汽车电子电气架构”,
本文是他写的一篇关于汽车电子电气架构文章,主要是入门,给各位读者一观。这是他写的系列文章:
-
架构是个什么鬼
-
架构工程师应该做什么
-
汽车电气系统组成部分划分
-
汽车电气系统组成部分之间的信息交互
-
架构工程师基本能力-结构化思维
-
结构化思维实战训练
取名都比较有趣,而且文字比较多,我就摘录了一些供大家参考。
1 架构工程师的工作边界
为了便于论述,笔者将从事汽车电子电气架构设计的人员简称为“架构工程师”。从大概2009年开始,国内主流的整车厂开始逐渐了解和接受电子电气架构这个概念,并建立起独立的架构工程师团队。
在国内的整车厂中,负责汽车电气系统开发的部门一般会设有
-
负责车载总线开发的网络工程师
-
负责电气零件开发的电气零件工程师
-
负责电气系统测试的测试工程师等岗位
但对于架构工程师这个岗位是做什么工作的,却很难用一句话表述清楚,其根本原因是架构工程师的工作边界并不像网络工程师或者电气零件工程师那样清晰。“架构”这个概念的外延很广,它被应用到很多的行业和技术领域中,即使对于软件架构这个研究已经非常深入的概念,对它的定义和理解在软件开发技术领域也没有达到完全一致的程度,更何况是对于电子电气架构这个新兴的概念。
为了能够明确架构工程师的工作边界,笔者借鉴了软件架构的定义。软件架构=组件+交互,因此软件架构设计是将软件系统划分为各个组件以及建立这些组件之间交互机制的设计过程。汽车电子电气架构设计所应用的技术领域为汽车电气系统开发,因此将“软件架构设计”定义中的“软件系统”用“汽车电气系统”替代,并将“组件”用更普遍性的概念“组成部分”替代
汽车电子电气架构设计定义为:将汽车电气系统划分为各个组成部分以及建立这些组成部分之间交互机制的设计过程。
-
在软件架构设计的定义中,“组件”是广泛意义上的元素之意,它可以指子系统、框架(Framework)、模块、类等不同粒度的软件单元,它们可以担负不同的计算职责。
-
汽车电子电气架构设计将汽车电气系统所划分的“组成部分”也可以有不同的粒度。既然汽车电气系统是电气零件以及电气功能的集合,因此它的“组成部分”可能是单个电气零件或者是任意大小的电气零件集合;可能是单个电气功能(零件级、子系统级或者整车级)或者是任意大小的电气功能集合。
汽车电子电气架构设计来讲,单个电气零件或者单个零件级电气功能是其对汽车电气系统进行“组成部分”划分的最小粒度,这个最小粒度也明确了架构工程师的工作边界,描述如下:
1)架构工程师划分“组成部分”的工作边界:电气零件是最小粒度,决定了架构工程师只需明确汽车电气系统需要包含某一个电气零件,而无需负责这个电气零件如何开发;零件级电气功能是最小粒度,决定了架构工程师只需明确某一个电气功能是由某个电气零件实现的,而无需负责这个电气零件如何实现这个电气功能。
2)架构工程师建立“组成部分”之间交互机制的工作边界:电气零件是最小粒度,决定了架构工程师只需建立不同电气零件之间的交互机制,而无需负责电气零件内部的交互机制。例如,当架构工程师所划分的多个零件级电气功能在详细架构设计阶段最终是分配给同一个电气零件实现时,这些零件级电气功能之间的交互即属于电气零件内部的交互,架构工程师无需再负责它们之间的交互机制。
2 架构工程师的工作职责
架构工程师的工作职责决定了架构工程师在工作边界之内到底应该从事什么样的工作内容。笔者将架构工程师的主要工作职责总结为以下几点:
1)架构工程师需要从多个角度,至少包括但不限于技术的角度以及开发管理的角度将汽车电气系统划分为各个组成部分,以便使复杂的汽车电气系统能够按照一定的规则分解到各个专业部门去开发。架构工程师在对汽车电气系统进行组成部分的划分时,需要从技术上最大程度地保证在各个组成部分开发完成之后,它们能够职责清晰地通过互相协作关系又重新集成在一起,并尽可能地避免在集成后所产生的各种问题。
2)架构工程师需要通过建立汽车电气系统的全局性设计规则,使复杂的汽车电气系统便于理解。
-
电子电气架构充当汽车电气系统的“草图”,通过“草图”可比较容易地看出汽车电气系统的组成结构以及电气功能的运行机制
-
应使汽车电气系统所有的电气功能按照一定的交互机制井然有序地组成一个整体
-
可较容易地增加或者删除一个电气功能,而不是把所有的电气功能杂乱地叠加在一起。
3)架构工程师虽然无需负责具体的电气零件开发,但需要做出对于汽车电气系统开发至关重要的设计决策。
-
汽车电子电气架构设计作为从需求到具体的电气零件开发之间的桥梁和纽带,架构工程师需要全面地
-
分析所有的需求并且确定对电子电气架构设计产生影响的关键需求
-
将需求转化为电子电气架构方案
-
通过架构设计工作对后续电气零件开发提供足够的指导和约束
-
-
应避免由于在汽车电气系统开发前期的架构设计工作不充分,而导致全局性的设计决策由电气零件工程师从局部视角进行确定
2 架构工程师的工作内容
通过以下三个已经在车型项目中得到实际应用的电子电气架构设计工作内容的实例进行介绍:
1)将汽车电气系统划分为各个组成部分。架构设计是一门分与合的艺术。将汽车电气系统根据所需要达到的目的划分为各个组成部分是架构工程师的看家本领,也是架构工程师这一岗位的基本职责。系统的分解不仅是基于解决技术问题的目的,也是为了更好地产生协作的开发管理目的。架构工程师将汽车电气系统划分为各个组成部分有技术层面和组织层面2个方面的作用。架构工程师不仅仅为技术开发负责,而且也是协调团队按照架构设定的目标进行协调有序开发的负责人。
2) 建立汽车电气系统各个组成部分之间的交互机制。电气零件是架构工程师所划分的汽车电气系统组成部分的最小粒度,因此架构工程师需要建立不同电气零件之间的交互机制。随着车载网络技术的发展和普及,具有总线接口(例如主流的CAN和LIN总线)的控制器类电气零件数量日益增多,电气零件之间通过车载总线信号所进行的信息交互相对于传统的硬线信号已经占有绝对的优势。后续将介绍建立网络信号命名规则的电子电气架构设计工作内容实例,此例子说明了架构工程师如何通过网络信号命名规则使网络信号名称表达出电气零件之间如何互相协作和交互从而完成特定的电气功能,从而使汽车电气系统的运行机制更容易地被理解。
表1 电气功能域与电气功能子系统的划分例子
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3)电气功能开发中的电子电气架构设计应用。如何通过全面分析需求最终确定详细架构方案的过程,并通过架构设计提供给后续具体电气零件的开发足够的指导和约束。