奔驰STAR3电子电气架构1

以下文章来源于佐思汽车研究 ,作者周彦武

奔驰在2020年推出的新一代S级轿车,代号W223,E/E架构采用了奔驰最新的STAR3架构,2021年的新C级,代号W206也采用了STAR3架构,奔驰所有车型都将升级到STAR3架构,这也是目前最先进的汽车E/E架构,全球唯一的SOA(服务导向)架构,也是全球最先进的量产车架构。

STAR3架构(图片来源:互联网)

上图是STAR3架构简介,部分德语部分英语,深蓝色是标准设备,浅蓝色是特殊设备。Zentraler就是Central,Domane就是Domain,Antrieb就是Powertrain,Telematik就是Telematics,Fahr就是Drive。这与上一篇路虎的EVA2.0架构类似,奔驰更强调以太网交换机的作用。

图片来源:互联网

奔驰STAR3架构,还是英语和德语混合,Fahrwerk就是底盘Chassis。                      

图片来源:互联网

与SOA对应的是信号导向型架构,典型如特斯拉的Model 3,也就是左图。这是奔驰以舒适网络ECU做的对比,服务导向型与信号导向型对比。还是德语和英语混杂,德语的k基本可对应英语的c,Bedien是Operator,anforderungen就是requirement。奔驰升级网关ECU到带有多个以太网交换器的ECU,内部包含了任务调度功能。

图片来源:互联网

理解SOA需要深入了解AUTOSAR。上图就是用AUTOSAR的方式解释SOA。AUTOSAR标准制定的目标之一,是希望在应用程序级别能做到可复用性,也就是说,我们可以基于现有的模型去创建更多,更复杂,或者基于特定项目需求的模型资源,而无需从零开始设计每一个部分。基于这个想法,衍生出了类型-原型(type-prototype)的概念。同时,开发人员也能创建出软件组件的分层模型,无论你的设计有何种的复杂度,软件组件SWC的任意设计,都不会对整个系统运行时的行为有任何影响,实际行为完全定义在一个个独立的软件组件当中。

SWC有三个级别,最高层级的级别,也是最抽象的级别,是VFB,在这个级别当中,描述了组件基本的通信属性以及通信关系。其次是RTE级别,在RTE级别中,可以来描述某一AtomicSwComponentType的行为,也即SwcInternalBehavior,例如RTE Event和Runnable Entity。最后是Implementation Level描述了针对于给定SwcInternalBehavior的具体实现,也即SwcImplementation。

Autosar的通讯相比于传统的通讯架构发生了根本性的变化。其核心模块就是多出了PDU Router。PDU Router在ECU通讯中的作用和网络里的路由器的功能很类似,就是对一个又一个I-PDUs(Interaction Layer Protocol Data Units,可以理解为数据包,由数据、长度和I-PDU ID组成。)进行转发,连接通信服务层与ECU抽象层。PDU是Autosar通讯中重要的概念,每个PDU包含着SDU和PCI,每个PDU拥有独自的ID用于互相区分。非TP层的I-PDU数据不应超过8字节的长度。这确保了可以在单个CAN消息中发送I-PDU。

要理解Eventgroup,需要了解SomeIP,SomeIP (Scalable service-Oriented MiddlewarE over IP) 是车载以太网的一种通信协议。对于熟悉CAN通信的开发者而言,CAN通信一般属于周期或者触发的形式在总线上传输的,而SomeIP则不同,它是在接收方有需求的时候才发送,是一种以服务为导向的数据通信方式。这也是SOA架构的由来。

SomeIP数据包主要包括两大部分,分别是Header和Data。在传输的过程中可以通过TCP和UDP两种通信数据协议进行传输。SomeIP定义的通信方式主要包括四大类: 1) Methods: Methods包含了请求后有应答的Method,和请求后没有应答的Method(Fire&Forget); 2) Event:当某种事情发生后,服务端向客户端发送的Message; 3) Field:Get/Set/Notifier某种属性或者状态; 4) EventGroup:用来进行publish/subscribe处理Events and Fields的通信的逻辑组。

这里的服务也是AUTOSAR的概念,在AUTOSAR软件架构中,汽车嵌入式系统软件自上而下分别为应用软件层(Application Software Layer,ASW)、运行时环境(Runtime Environment,RTE)、基础软件层(Basic Software Layer,BSW)和微控制器(Microcontroller)。为保证上层与下层的无关性,在通常情况下,每一层只能使用下一层所提供的接口,并向上一层提供相应的接口。目前AUTOSAR规范定义最为详细的部分就是基础软件层。而且判断某个软件架构是否遵守AUTOSAR规范的主要依据就在于基础软件层。

基础软件层(Basic Software Layer,BSW)又可分为四层,即服务层(Services Layer)、ECU抽象层(ECU Abstraction Layer)、微控制器抽象层(Microcontroller Abstraction Layer,MCAL)和复杂驱动(Complex Drivers)。服务层(Service Layer)又由一系列基础软件组件构成,包括系统服务(System Services)、存储器服务(Memory Services)、通信服务(Communication Services)等。它们主要用于提供基础软件服务,包括标准化的系统功能和功能接口。这就是图里所说的Services。

图片来源:互联互联网

A26/17在W223上就是NTG7,之所以和发声器控制连接在一起是奔驰W223跟路虎卫士一样配备到了RNC,主动降噪技术。CANI主要是针对柴油机的。       

车身一域主要是车门和天窗。(图片来源:互联网)

车身二域主要是座椅。(图片来源:互联网)

车身三域为安全带和后尾箱。(图片来源:互联网)

Infotainment一域,A40/12即AR-HUD,N123即无线充电。(图片来源:互联网)

Infotainment二域,主要是后排。(图片来源:互联网)

氛围灯是奔驰特色,搞得非常花俏,也很复杂。(图片来源:互联网)

底盘和悬挂域,依然是FlexRay总线。(图片来源:互联网)

A40/13就是立体双目系统,A89是主毫米波雷达。(图片来源:互联网)

这只是一级网络,W223的NTG7主机(新C级还是NTG6主机)和后排娱乐系统相连,整个系统拥有4片以太网交换器,即Marvell的88EA6321-TFJ2,这是一颗以太网交换机芯片,没错,就是特斯拉用在自动驾驶系统上那颗,实际上这颗芯片是为座舱系统设计的。Marvell 第一代车载以太网交换机88EA6321,是7端口以太网千兆性能交换机,完全符合IEEE802.3车载标准,支持AVB音频/视频桥接功能),并支持低能耗以太网,可降低功耗。该款7端口以太网交换机集成了2个IEEE 10/100/1000BASE-T/TX/T端口、2个RGMII/xMII(这2个端口可配置成1个GMII)端口和1个SGMII / Serdes端口。

奔驰的E/E架构非常先进且可靠性极高,软件复用性很强,但缺点是硬件成本很高,以太网Phy和交换机大量使用,这些芯片又比较紧缺,价格持续飞涨,注重成本的丰田或特斯拉无论如何都不可能采用这种架构。未来奔驰只能放弃低价车型,零售价估计都要在50万人民币以上了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1620222.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

WinPlan经营大脑:精准预测,科学决策,助力企业赢得未来

近年,随着国内掀起数字化浪潮,“企业数字化转型”成为大势所趋下的必选项。但数据显示,大约79%的中小企业还处于数字化转型初期,在“企业经营管理”上存在着巨大的挑战和风险。 WinPlan经营大脑针对市场现存的企业经营管理难题,提供一站式解决方案,助力企业经营管理转型…

量化:pandas基础

文章目录 简介Series构造 DataFrame构造列的查改增删填充默认值 简介 pandas是 Python 的核心数据分析支持库,提供了快速、灵活、明确的数据结构。 pandas主要的两种数据结构为Series和DataFrame,分别用于处理一维和二维数据。 Series Series 是一种类…

{转,推荐大家仔细研究一下,呵呵}美女经理人全球博客征婚,条件超级变态

我偶然在一个博客网站上看到一个美女博客的征婚启示,条件挺搞笑,转贴给大家看看.由于条件非常多,文章比较长,但是希望大家耐心地看下去,会很有意思.文章如下: 小女芳龄二八,上有老人两代,佳人在水一方。容貌自慕压倒桃花,身材人夸…

几个nlp的小任务(机器翻译)

几个nlp的小任务(机器翻译) 安装依赖库数据集介绍与模型介绍加载数据集看一看数据集的样子评测测试数据预处理测试tokenizer处理目标特殊的token预处理函数对数据集的所有数据进行预处理微调预训练模型设置训练参数需要一个数据收集器,把处理好数据喂给模型设置评估方法参数…

六、Json 数据的交互处理

文章目录 一、JSON 数据的交互处理1、为什么要使用 JSON2、JSON 和 JavaScript 之间的关系3、前端操作 JSON3.1 JavaScript 对象与 JSON 字符串之间的相互转换 4、JAVA 操作 JSON4.1 Json 的解析工具(Gson、FastJson、Jackson)4.2 ResponseBody 注解、Re…

c语言练习题35:求两个数二进制中不同位的个数

求两个数二进制中不同位的个数 //编程实现:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同? //输入例子 : //1999 2299 //输出例子 : 7 //int calc_diff_bit(int m, int n) 思路: 1. 先将m和n…

如何复刻稚晖君的ctrl-FOC-lite

一、simpleFOC版本工程使用clion重新打开为“Cmake”工程: 1、我删除了simpleFOC版本工程文件夹下的cmake-build-debug、.idea文件夹; 2、使用clion重新打开为“Cmake”工程,配置均按照稚晖君的教程进行的配置。 3、使用stm32cubeMX6.5版本重…

(转)游戏类型

百科名片 游戏类型主要分为:ACT、FTG、STG、FPS、SLG、RPG、AVG、SIM、SPG、RAC、PUZ、MUG、ETC等其他类型。 目录 1 ACT介绍 1.1 动作1.2 平台动作1.3 动作射击 2 FTG介绍 3 STG介绍 3.1 射击3.2 光枪射击 4 FPS介绍 5 SLG介绍 5.1 策略5.2 即时战略 6 RPG介绍 6.1…

C++ 工具

C参考手册 Learncppcplusplustutorialspoint/cplusplusAwesomeC 写在最后:若本文对您有帮助,请点个赞啦 ٩(๑•̀ω•́๑)۶

JUC的常见类

Callable interfacce 也是一种创建线程的方式 Runnable 能表示一个任务(run方法),返回void Callable 也能表示一个任务(call方法),返回一个具体的值,类型可以通过泛型参数来指定(object) 如果进行多线程操作,如果你只是关心多线程的执行过程,使用Runnable即可,如果是关心多线程…

利用adobe audition cc2014中置声道提取制作伴奏

“adobe audition cc2014制作伴奏”这四个字我在网上查了半个月了,但还是没查着解决方法,于是,我便自己琢磨做了做。 准备:adobe audition cc2014,歌曲(最好是无损格式)。 1.打开 adobe audition cc2014 2.…

会声会影提取伴奏乐教程

2019独角兽企业重金招聘Python工程师标准>>> 时常会遇到这样的问题,看到一段精彩的视频,发现它的伴奏不错,想提取出来。遇到这种情况,会声会影有什么好办法吗,怎样提取伴奏乐呢? 一、首先打开视…

JAVA中如何知道某项目使用什么数据库类型

文章目录 1. 前言2. 先说结论3. 代码案例 1. 前言 最近在写第三方工具的时候,需要判断使用方项目具体使用了什么数据库类型,从而进行不一样的实现逻辑。当然可以让用户在YML中配置说明项目用什么数据库,但用户不一定填写正确。因此需要想其他…

appium+python自动化测试

获取APP的包名 1、aapt即Android Asset Packaging Tool,在SDK的build-tools目录下。该工具可以查看apk包名和launcherActivity 2、在android-sdk里面双击SDK-manager,下载buidl-tools 3、勾选build-tools,随便选一个版本,我这里选的是24的版…

工控流量分析题+wireshark学习

写在前面 暑假报名了工控比赛 所以要找些工控的题目来刷刷 正好比赛方提供的靶场有很多类似的题目 开始痛苦的学习过程。。。 Wireshark Capture filter <Protocol name> <Direction><Host(s)><Value><Logical operations><Expression>…

bootstrap富文本编辑器的使用

bootstrap-wysiwyg是一款轻量级的富文本编辑插件&#xff0c;大致长这样 在此记录一下我使用它踩过的坑和经验。 插件的引入 插件其实分为两部分&#xff1a;顶部的一系列编辑按钮和下方的div编辑框 前台代码如下&#xff1a; <div style"height: 50px;">&…

用C#语言实现记事本

C#实现记事本 一、记事本界面设计 1、打开VS2013 单击 文件→新建→项目 2、选择模版→Visual C#→windows→windows窗体应用程序&#xff0c;在下面的名称写Notepad 3、更改窗体名称&#xff0c;单击窗体→右下角属性→text&#xff0c;修改为“记事本” 补充&#xff1a…

pixhawk计算机无法识别,PIXHAWK教程 3.1.2 连接你的遥控输入和电机(Pixhawk)

连接你的遥控输入和电机(Pixhawk) 目录 连接你的遥控输入和电机(Pixhawk) 连接蜂鸣器和安全开关 连接其他外部设备 连接遥控输入 连接电机输入 安装螺旋桨 顺时针和逆时针桨的识别 连接蜂鸣器和安全开关 蜂鸣器和安全开关依附于Pixhawk。 分别连接到蜂鸣器和开关端口。 连接其他…

ThinkPHP 验证码扩展库的使用,以及多应用模式下,如何自定义验证码校验规则

ThinkPHP 验证码扩展库的使用&#xff0c;以及多应用模式下&#xff0c;如何自定义验证码校验规则 一、安装二、页面使用三、验证码相关配置属性1. 自定义验证码配置2. 自定义验证码&#xff08;一&#xff09;普通验证码3. 自定义验证码&#xff08;二&#xff09;算数验证码4…

linux会话session

linux会话 什么是linux session 我们常见的 Linux session 一般是指 shell session。Shell session 是终端中当前的状态&#xff0c;在终端中只能有一个 session。 当我们打开一个新的终端时&#xff0c;总会创建一个新的 shell session。这表明会话是我们和shell交互的一个过…