电子电气架构 --- 整车整车网络管理浅析

news2025/3/13 8:47:42

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。

老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师:

所谓鸡汤,要么蛊惑你认命,要么怂恿你拼命,但都是回避问题的根源,以现象替代逻辑,以情绪代替思考,把消极接受现实的懦弱,伪装成乐观面对不幸的豁达,往不幸上面喷“香水”来掩盖问题。
无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事.而不是让内心的烦躁、焦虑、毁掉你本就不多的热情和定力。

时间不知不觉中,快要来到元旦。2024快要结束,2025又开始新的忙碌。成年人的我也不知道去哪里渡自己的灵魂,独自敲击一些文字算是对这段时间做一个记录。

一、网络管理初识

为了更加通俗易懂地介绍网络管理,先来构建一个例子来进行说明,如下所示:

在这里插入图片描述

对图稍作说明:

对于一个控制器而言,它可能存在多种唤醒源,包括本地唤醒和网络唤醒等方式,图中这两种方式都存在;

·对于一个控制器参与CAN通讯,其他硬件组成有CAN收发器,CAN控制器和微控制器;

·不同CAN总线网络通过网关才能进行通讯。

当整车处于休眠状态,即所有的控制器都睡觉了,在整车某个休眠唤醒场景下,制动踏板行程传感器BPS感知到变化了,从而唤醒的硬线信号有了变化,被IEB检测到了,那么处于休眠的IEB将被唤醒,对应着图中1区域,这里IEB称为主动唤醒节点。

此时,为了实现这个唤醒场景的功能,需要参与其他一些控制器,比如EPS和VCU,称为它俩为被动唤醒节点,这就意味着IEB需要去唤醒他俩。如果采用CAN总线的唤醒方式,则IEB可以通过网管报文去唤醒EPS和VCU,大致过程是:IEB被传感器BPS唤醒后,它的网络管理状态会产生变化,由睡觉模式转为网络模式;

然后IEB会发出网管报文,EPS和VCU的CAN收发器会收到该网管报文,识别到需要唤醒,最后它们也会发网管报文,告诉IEB醒来了,可以一起搞事情,对应到上图的234部分。

在这个过程中,实现其实很复杂,有几个层面的问题值得深入探究:

·一是功能层面,整车哪些功能有休眠唤醒场景?谁是主动唤醒节点,谁是被动唤醒节点?

·二是控制器层面:对于每个休眠唤醒场景,主动唤醒节点是怎么被唤醒,被动唤醒节点又是怎么被总线唤醒的?关于网络管理状态机,这些控制器之间是如何管理网络状态?关于网络管理报文,IEB发送网管报文应该是怎样的?而EPS和VCU的又是怎样的?

1、功能层面

-> 整车休眠唤醒场景:

整车休眠唤醒场景通常涉及安全关键功能,如制动系统、转向系统、动力系统等的监控和响应。例如,当制动踏板被踩下时,制动系统(如IEB)需要被唤醒以执行制动操作;当方向盘转动时,转向系统(如EPS)需要被唤醒以调整车辆方向。其他场景可能包括车门开启、车窗升降、座椅调节等,这些功能在车辆未启动时通常处于休眠状态,以节省电能。

-> 主动唤醒节点与被动唤醒节点:

主动唤醒节点是首先检测到唤醒条件(如传感器信号变化)并因此被唤醒的控制器。在您的例子中,IEB是主动唤醒节点,因为它首先被制动踏板行程传感器BPS唤醒。被动唤醒节点是那些被主动唤醒节点通过网络(如CAN总线)唤醒的控制器。在您的例子中,EPS和VCU是被动唤醒节点,因为它们被IEB通过网管报文唤醒。

2 、控制器层面

-> 主动唤醒节点的唤醒机制:

主动唤醒节点通常通过硬线连接或内部传感器检测到唤醒条件。例如,IEB可能通过硬线连接接收来自BPS的信号变化,从而被唤醒。一旦唤醒,主动唤醒节点会更新其网络管理状态,从休眠模式切换到网络模式,准备发送网管报文。

-> 被动唤醒节点的唤醒机制:

被动唤醒节点通过接收来自主动唤醒节点的网管报文来被唤醒。这些报文通常包含唤醒指令和必要的配置信息。在接收到网管报文后,被动唤醒节点会更新其网络管理状态,从休眠模式切换到网络模式,并准备参与网络通信。

-> 网络管理状态机:

网络管理状态机是一种用于管理控制器之间网络状态变化的

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

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

相关文章

xml格式化(3):增加头部声明

前言 这篇文章&#xff0c;是用来增加头部声明。 正文 from lxml import etreedef pretty_print(element, level0, indent" "):result ""# 判断元素是否为注释节点if isinstance(element, etree._Comment):result f"{indent * level}<!--{el…

STM32 高级 物联网通讯之LoRa通讯

目录 LoRa通讯基础知识 常见的3种通讯协议 远距离高速率的传输协议 近距离高速率传输技术 近距离低功耗传输技术 低功耗广域网 采用授权频段技术 非授权频段 LoRa简介 LoRa的特点 远距离 低功耗 安全 标准化 地理定位 移动性 高性能 低成本 LoRa应用 LoRa组…

【FlutterDart】 拖动改变 widget 的窗口尺寸大小GestureDetector~简单实现(10 /100)

上效果 预期的是通过拖动一条边界线改变窗口大小&#xff0c;类似vscode里拖动效果。这个是简单的拖动实现 上代码&#xff1a; import package:flutter/material.dart;class MyDraggableViewDemo extends StatelessWidget {const MyDraggableViewDemo({super.key});override…

Luma AI 简单几步生成视频

简单几步生成视频 登录我们的 AceDataPlatform 网站&#xff0c;按照下图所示即可生成高质量的视频&#xff0c;同时&#xff0c;我们也提供了简单易用的 API 方便集成调用&#xff0c;可以查看 Luma API了解详情 技术介绍 我们使用了 Luma 的技术&#xff0c;实现了上面的图…

如何免费解锁 IPhone 网络

您是否担心 iPhone 上的网络锁定&#xff1f;如果您的 iPhone 被锁定到特定运营商&#xff0c;解锁它可以连接到不同的运营商。好吧&#xff0c;我们为您准备了一份指南。 iPhone运营商免费解锁将是小菜一碟。在我们的解锁运营商 iphone 免费指南中。我们为您提供了一份简介&am…

[读书日志]8051软核处理器设计实战(基于FPGA)第三篇:8051 keil编程配置 C语言开发流程 中断程序实例

第一篇https://blog.csdn.net/m0_74021449/article/details/144796689 第二篇https://blog.csdn.net/m0_74021449/article/details/144813103 3.8051中断与keil开发流程 3.1 keil的下载与概述 关于keil&#xff0c;大家都并不陌生&#xff0c;它是开发51单片机和ARM架构的32…

音视频-----RTSP协议 音视频编解码

流媒体协议详解&#xff1a;RTSP、RTP、RTCP、SIP、SDP、RTMP、WebRTC、WebSocket-CSDN博客 上文讲解比较清楚 多媒体编解码基础知识 一文详解WebRTC、RTSP、RTMP、SRT-腾讯云开发者社区-腾讯云 RTP :(Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传…

Nginx代理本地exe服务http为https

Nginx代理本地exe服务http为https 下载NginxNginx命令exe服务http代理为https 下载Nginx 点击下载Nginx 下载好之后是一个压缩包&#xff0c;解压放到没有中文的路径下就可以了 Nginx命令 调出cmd窗口cd到安装路径 输入&#xff1a;nginx -v 查看版本 nginx -h&#xff…

《Vue3实战教程》40:Vue3安全

如果您有疑问&#xff0c;请观看视频教程《Vue3实战教程》 安全​ 报告漏洞​ 当一个漏洞被上报时&#xff0c;它会立刻成为我们最关心的问题&#xff0c;会有全职的贡献者暂时搁置其他所有任务来解决这个问题。如需报告漏洞&#xff0c;请发送电子邮件至 securityvuejs.org。…

【Go学习】-01-6-数据库泛型新特性

【Go学习】-01-6-数据库泛型新特性 1 数据库操作1.1 操作mysql1.1.1 Insert1.1.2 Select1.1.3 Update1.1.4 Delete1.1.5 sql事务 1.2 go操作Redis 2 泛型2.1 非泛型函数2.2 泛型函数2.3 泛型类型2.3.1 泛型结构体2.3.2 泛型接口 2.4 泛型约束2.5 泛型切片和映射2.5.1 泛型切片2…

STM32-笔记20-测量按键按下时间

1、按键按下的时间-思路 我们先检测下降沿信号&#xff0c;检测到以后&#xff0c;在回调函数里切换成检测上升沿信号&#xff0c;当两个信号都检测到的时候&#xff0c;这段时间就是按键按下的时间&#xff0c;如图所示&#xff1a;>N*(ARR1)CCRx的值 N是在这段时间内&…

【数据结构-堆】力扣2530. 执行 K 次操作后的最大分数

给你一个下标从 0 开始的整数数组 nums 和一个整数 k 。你的 起始分数 为 0 。 在一步 操作 中&#xff1a; 选出一个满足 0 < i < nums.length 的下标 i &#xff0c; 将你的 分数 增加 nums[i] &#xff0c;并且 将 nums[i] 替换为 ceil(nums[i] / 3) 。 返回在 恰好…

软件逆向之标志位

进位标志CF&#xff08;Carry Flag&#xff09; 介绍&#xff1a;如果运算结果的最高位产生了一个进位&#xff08;加法&#xff09;或借位&#xff08;减法&#xff09;&#xff0c;那么&#xff0c;其值为1&#xff0c;否则其值为0。无符号数。 示例&#xff1a; mov al&…

api接口技术开发系列如何调用电商平台的按图搜索商品API?

不同电商平台的按图搜索商品 API 调用方法大致相似&#xff0c;以下是一般的调用步骤&#xff1a; 注册与获取权限 注册账号&#xff1a;在相应的电商开放平台注册成为开发者&#xff0c;如淘宝平台、1688 平台等。创建应用&#xff1a;登录后创建应用&#xff0c;填写应用的相…

【Seed-Labs 2.0】Buffer Overflow Attack Lab (Server Version)

说在前面 实验总述 缓冲区溢出是指程序试图写入超出缓冲区边界的数据。恶意用户可利用这一漏洞改变程序的流控制&#xff0c;从而导致恶意代码的执行。本实验的目的是让学生从实践中了解这种类型的漏洞&#xff0c;并学习如何在攻击中利用这种漏洞。 在本实验中&#xff0c;…

WPS表格技巧01-项目管理中的基本功能-计划和每日记录的对应

前言&#xff1a; 在项目管理中&#xff0c;一般就是用些项目管理工具来管理这个任务和 task&#xff0c;但是就是要学这些工具很麻烦&#xff0c;比较好的方法&#xff0c;通用的方法就是用 Excel 表格去做&#xff08;这非常适合松散的团队组织&#xff09;&#xff0c;然后…

SpringBoot入门之创建一个Hello World项目

文章目录 一、使用传统的方式1、创建一个SpringBoot项目2、配置pom.xml文件3、下载Maven依赖4、创建一个Controller类&#xff1a;com.devops.controller.HelloController5、创建一个引导类&#xff1a;com.devops.HelloApplication6、启动项目8、访问80809、完整项目结构 二、…

机器学习笔记 - 单幅图像深度估计的最新技术

1、深度估计简述 单眼深度估计是一项计算机视觉任务,AI 模型从单个图像中预测场景的深度信息。模型估计场景中对象从一个照相机视点的距离。单目深度估计已广泛用于自动驾驶、机器人等领域。深度估计被认为是最困难的计算机视觉任务之一,因为它要求模型理解对象及其深度信息之…

探索AI在地质科研绘图中的应用:ChatGPT与Midjourney绘图流程与效果对比

文章目录 个人感受一、AI绘图流程1.1 Midjourney&#xff08;1&#xff09;环境配置&#xff08;2&#xff09;生成prompt&#xff08;3&#xff09;完善prompt&#xff08;4&#xff09;开始绘图&#xff08;5&#xff09;后处理 1.2 ChatGPT不合理的出图结果解决方案 二、主题…

HTML——28.音频的引入

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>音频引入</title></head><body><!--audio:在网页中引入音频当属性名和属性值一样&#xff0c;可以只写属性名src属性:指定音频文件路径&#xff0c;必…