解码大众全新数字高尔夫8汽车CAN FD行驶功能电气架构
据在大众原厂的伙伴介绍,全新数字高尔夫8将在11月上市销售,目前高尔夫8在行驶功能电气架构上采用的CAN FD,在多媒体这一块采用的以太网,后续估计大部分类似同样MQBEvo平台的车型均会复制升级过来,那么,未来在MQBEvo平台的车型将代表着大众智能化、数字化、电气化的一种新标准。他们内部结构和框架也做了很大的改动,数据和总线,是我们关注的要点,虽然暂时不知道以后涉及的数据和控制到哪一步,至少,我们首先得获取到大众原厂的CAN FD数据,再谈数据应用。
CAN FD我们研究得还不深入,仅在已经装配的部分车型上做了深入研究,比如奔驰、理想汽车、小鹏、特斯拉、路特斯、奥迪、路特斯等。那么,大众高尔夫8是沿用奥迪的那一套吗?说不清楚,因为还没研究。但是CAN FD总线,并不是新物种,BOSCH在2011年就发布了这个新一代的通信技术。
在域控制器领域,已有不少车型涉及并采用CAN FD已经实现了功能就有座椅调节、后视镜控制、空调控制等功能,综合统一管理各执行器,合理有效地分配系统资源。车身域控制器的功能众多,包括实现灯光控制、雨刮控制、门窗控制、后视镜折叠控制、PEPS、座椅控制等,其中灯光控制部分就包括了近光灯、远光灯、位置灯、转向灯、刹车灯、日行灯。
车身雨刮部分包括了低速雨刮、高速雨刮、间隔控制和点刮,门窗控制部分包括了四门闭锁、碰撞解锁、自动落锁、车窗升降及百分比、车窗防夹及一键升窗,后视镜包括了折展、调节及加热,PEPS包括了无钥匙启动、无钥匙进入、迎宾功能、发动机防盗、整车电源控制与管理,座椅包括控制调节与通风、加热,其他还包括OTA及远程诊断、升级、刷写、驾驶模式设定等等。通过CAN FD报文数据长度可以看出:
以太网相对来说成本要高出很多,那么在智能座舱这边的域控,采用以太网作为信号和数据传输以及娱乐系统应用,比较合适。但受制于大多传感器和控制单元、零部件均还是用的CAN或者CAN FD,那么势必在大众高尔夫8上,要获取到原厂协议数据,就很必要去做好基于汽车行驶电气MCU可扩展CAN/CAN FD的数据接口。
在设计CAN产品时,MCU的CAN控制器资源是我们工程师们关注的第一要素,特别是像一些包括了CAN控制的MCU、核心板、工控板升级中需要增加CAN/CAN FD接口。但是原有的标准CAN2.0硬件方案中,会资源不够的情况,另一些就是需要使用到多路CAN接口,而大部分MCU支持的CAN总线接口又不多,导致CAN接口数量又满足不了。这就需要将MCU多余的通信接口扩展为CAN接口,说来是有点小麻烦,但是技术上也能曲线救国。
速锐得最近尝试用UART/SPI接口转CAN隔离模块,可以很方便的嵌入到具有UART/SPI接口的设备中,在不需要改变原硬件结构的前提下获得CAN_BUS通信接口。造成这个的主要原因是,早期的产品使用的是RS485或者RS232通信,现阶段需要将产品升级到CAN/CAN FD通信,另外就是之前零部件受制于车企成本限制,部分主控MCU可能都用的不带CAN的微处理器,其三就是汽车越来越发达,多路CAN的场景需求满足不了了。例如一些充电桩的控制器,CAN的路数要大于2路,市面上支持2路以上CAN的微处理器极少,或者价格不菲。
当然,也有一些其他的思路,比如串口转CAN、以太网转CAN、WIFI转CAN、光纤转CAN,成本不同而已。UART/SPI接口转CAN主要有2种形式,一种是利用协议控制芯片实现,另一种通过嵌入式转换模块实现。真碰到这个情况,我们会推荐客户采用第二种。这个具备三方面的优势:
- 配置简单方便,配合上位机或者串口指令,几个简单的串口数据就可以完成
- 数据缓存大,在高速或者数据吞吐量大时可以避免丢帧的现象
- 性能优异,模块自带MCU完成协议转换及缓存处理,减轻用户MCU负担
CANFDSM-100其实还是指的推荐的一款串口转CAN的模块,虽然不带CAN或者CAN FD收发器,用自己增加隔离或者不隔离的收发器即可。
但是如果没有以前的拖泥带水的设计,那么就直接采用带CAN FD功能的MCU直接自己增加CAN收发器,设计大众高尔夫8的CANFD产品即可。利用协议控制芯片实现,就等同于重新开发,硬件架构将改为如下图示,也不需要做其他的转换,目前采用的CAN收发器已经足够满足5M的数据交互,因此,CAN收发器也不用变更。
如电路设计所示:
高尔夫数据采用直接在原车CAN FD或者车身网关接入,大众车型的网关位置有三个,一个是主驾驶门内置装饰面板内,一个是方向盘下边,方向机的CAN网络,另外一个是油门踏板上方的CAN网关位置。这三个相对来说,比较明显,不用拆卸大量的装饰面板。
数据可以通过2个渠道获得,一是原厂的协议授权,我估计这个不太现实,毕竟人家是呵呵,二是通过网关,自行解码DBC报文中CAN ID。这个可能性有几种,一是CAN FD中混着有标准CAN数据,比如某零部件就是用的CAN,如果要采集这个零部件的数据,依旧采用标准CAN,一种是CAN FD,那么解析CAN FD中的字节,必然会涉及长度、位移、算法,并且波特率还可能是变化的,不像标准CAN一样,500K。那么,一款你觉得很普通的高尔夫,在这些数字技术面前,可能比做个宝马奔驰要难很多了。
数据转换有透明转换、透明带标识转换、自定义协议转换的三种情况,这也是为什么大众高尔夫8能用全新数字汽车这个来定义自己,核心功能模块传输效率达到100M/s,“数字化”是全新一代高尔夫的关键词,新技术的应用还真的不是体现在汽车售价价格上的高低问题。以太网的部分,归属高尔夫的智能座舱,我们没有深入研究,只是作为数据接口的端口。
相关文章:

解码大众全新数字高尔夫8汽车CAN FD行驶功能电气架构
据在大众原厂的伙伴介绍,全新数字高尔夫8将在11月上市销售,目前高尔夫8在行驶功能电气架构上采用的CAN FD,在多媒体这一块采用的以太网,后续估计大部分类似同样MQBEvo平台的车型均会复制升级过来,那么,未来…...
什么是DDL、MDL?
DDL和MDL是与数据库相关的术语,它们有一些不同的含义。 DDL(Data Definition Language,数据定义语言): DDL用于定义和管理数据库中的对象,如表、索引、视图等。它包含用于创建、修改、删除和管理数据库对象…...

【sonar】安装sonarQube免费社区版9.9【Linux】【docker】
文章目录 ⛺sonarQube 镜像容器⛺Linux 安装镜像🍁出现 Permission denied的异常🍁安装sonarQube 中文包🍁重启服务 ⛺代码上传到sonarQube扫描🍁java语言配置🍁配置 JS TS Php Go Python⛏️出现异常sonar-scanner.ba…...

MySQL基本语法总结
创建数据库 create database 数据库名; -- 字符集要看mysql 版本, 5.7 Latin, 8.0 utf8 create database 数据库名 character set ‘utf8’;-- 指定数据库的字符集 create database IF NOT EXISTS 数据库名 character se…...

锐捷VSU技术理论与实验
目录 VSU涉及的相关基础概念 VSU的2种工作模式 VSU的3种设备角色 VSU的4种设备状态 VSU的分裂与合并 VSU建立过程 双主检测 VSU报文转发原理 VSU命令配置 配置VSU 配置双主检测 VSU涉及的相关基础概念 域编号(Domain ID) Domain ID是VSU的标…...
深入探索Linux文件链接技术:ln命令的妙用
当谈及 Linux 系统中的文件管理和链接技术,ln 命令是一个不可或缺的工具。ln 命令用于创建硬链接和软链接,它在 Linux 文件系统中发挥着重要作用,为用户提供了更大的灵活性和组织能力。在本文中,我们将深入探讨 ln 命令是什么&…...
electron项目开发环境搭建
由于最近需要做一款跨平台的桌面应用,所以选择使用electron来作为开发的框架,下面说一下如何搭建一个简单的electron项目: 一、准备工作 安装git:下载git | 官网 安装node:下载 | Node.js 中文网 安装npm/cnpm:npm …...

Spring 知识点
Spring 1.1 Spring 简介 1.1.1 Spring 概念 Spring是一个轻量级Java开发框架,最早有Rod Johnson创建为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题Spring最根本的使命是解决企业级应用开发的复杂性,即简化Java开发。使现有的技术更加容易使…...
目标跟踪与检测后进行 OpenCV 人脸识别 ,马赛克
文章大纲 简介模型下载地址ONNX 静态与动态 参数OpenCV 中支持的 人脸检测、识别Face detection 人脸检测YuNetFace recognition 人脸识别sFace目标检测,跟踪 后的人脸模糊问题汇总不支持动态输入的问题参考文献与学习路径简介 OpenCV 4.5.4版本收录了一个基于深度学习神经网…...

持有PMP证书,可申请CSPM证书!
一,CSPM介绍 CSPM的全称是:项目管理专业人员能力评价,是我们国内的“PMP”,是我们中国人自己的项目管理专业人士评价指南,符合中国国情且符合中国未来发展的项目管理专业人员能力评价标准。 2022年10月12日发布实施了…...

linux自定义网络访问规则
1.更改防火墙默认区域为trusted firewall-cmd --set-default-zonetrusted 2.新建一个zone,将想要访问本机80端口的ip,如:192.168.3.99 ,添加的这个zone中,同时在这个zone中放行80端口。 firewall-cmd --permanent --ne…...

247 个经典实用有趣的 Python 实例附源码
今天给大家整理了 247 个经典实用有趣的 Python 实例,185 页代码齐全可复制 pdf,几乎涵盖了 Python 各个方面的知识点,即可以帮助小白快速全面的学习 Python,也可以让老手通过实战练习来查缺补漏。 福利:文末有chat-g…...

动手学深度学习Pytorch 4.4练习
1.这个多项式回归问题可以准确地解出吗?提⽰:使⽤线性代数。 可以,把多项式问题,用matlab的str2sym表示出来,再用solve求解。 2.考虑多项式的模型选择。 1. 绘制训练损失与模型复杂度(多项式的阶数)的关系…...

【计算机视觉 | Kaggle】飞机凝结轨迹识别 Baseline 分享和解读(含源代码)
文章目录 一、导读二、比赛背景三、比赛任务四、比赛数据五、评价指标六、Baseline6.1 Training part6.2 Submission part 一、导读 比赛名称:Google Research - Identify Contrails to Reduce Global Warming https://www.kaggle.com/competitions/google-researc…...
ThinkPHP文件上传:简便安全的解决方案
在现代Web应用程序中,文件上传是一项常见而重要的功能。ThinkPHP是一种流行的PHP开发框架,提供了便捷而安全的文件上传解决方案。本文将介绍ThinkPHP框架中的文件上传功能,并探讨如何使用它来实现安全可靠的文件上传功能。 一、ThinkPHP文件…...
torch.multiprocessing
文章目录 张量共享torch.multiprocessing.spawnmultiprocessing.Pool与torch.multiprocessing.Pool阻塞非阻塞map阻塞非阻塞 starmap torch.multiprocessing是具有额外功能的multiprocessing,其 API 与multiprocessing完全兼容,因此我们可以将其用作直接…...
解决本地代码commit后发现远程分支被更新的烦恼!
解决本地代码commit后远程分支更新的烦恼! 在进行代码开发过程中,当我们准备将本地代码推送到远程分支时,有时会遇到远程分支已经被更新的情况。这给我们的开发工作带来了一些挑战,因为我们需要确保我们的修改与远程分支的更新保持…...

最新AI创作系统ChatGPT程序源码+详细搭建部署教程+微信公众号版+H5源码/支持GPT4.0+GPT联网提问/支持ai绘画+MJ以图生图+思维导图生成!
使用Nestjs和Vue3框架技术,持续集成AI能力到系统! 新增 MJ 官方图片重新生成指令功能同步官方 Vary 指令 单张图片对比加强 Vary(Strong) | Vary(Subtle)同步官方 Zoom 指令 单张图片无限缩放 Zoom out 2x | Zoom out 1.5x新增GPT联网提问功能、手机号注…...
910数据结构(2014年真题)
算法设计题 问题1 已知一个带头结点的单链表head,假设结点中的元素为整数,试编写算法:按递增次序输出单链表中各个结点的数据元素,并释放结点所占的存储空间。要求:(1)用文字给出你的算法思想;(2)不允许使…...

Idea创建maven管理的web项目
如果你想在项目中添加一个传统的 src 目录来存放源代码,可以按照以下步骤操作: 1. 在项目视图中,右键单击项目名称,选择 “New” -> “Directory”。 2. 在弹出的对话框中,输入目录名称为 “src”,然后…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...

Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
Leetcode 3576. Transform Array to All Equal Elements
Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

visual studio 2022更改主题为深色
visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中,选择 环境 -> 常规 ,将其中的颜色主题改成深色 点击确定,更改完成...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版分享
平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...
Golang dig框架与GraphQL的完美结合
将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...

剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...