速锐得解码匹配特斯拉电动汽车安全性能检测车架号及BMS电池数据
电动汽车三大件分别是电池、电机和电控。到目前为止,电机技术已经非常成熟,直流永磁电机、永磁同步电机已经取代了异步电机,成为电动汽车的主流。很多人认为电动汽车最后一道技术门槛是电池,但在我国,汽车制造商在制造新能源车时,并没有什么电池技术障碍是无法克服的。
通过比亚迪的电池、宁德时代的电池来看,与特斯拉采用的日本松下电池在性能上还是存在差异,松下电池是高成本堆出来的超高性能东西,这毋庸置疑的。要知道,特斯拉用的台湾富田电机并不是很先进,在这个条件下,就需要强大的BMS系统,也就是整个电动汽车的核心,就像我们手机电量显示的百分比例,其实就是手机里的BMS在工作的结果。特斯拉电池采用的是圆柱电池设计,具有更好的散热和安全性能,内阻非常小,本身电耗比较低,电芯采用镍钴铝材料,也能让电池密度更强。

在汽车安全性能检测,要采集BMS系统的电池信息,直接“万用表模式”车上测试电池电压,那肯定是不准的,这种在线电压的粗略判断,误差极大,在线电压不可能用在需要精准测试的场合。而电池的活性根据不同温度、不同释放效率,充放电的效率都会有不同,南北的特斯拉车主会觉得同样驾驶特斯拉,表现最明显的是续航差异很大,这也就是电池活性决定的。
由此可见,BMS电池管理系统的技术,除了电池本身以外,是更为复杂、更为核心的数据管理难题,而在电动汽车安全性能检测场景下,BMS相关的数据又是需要极多,那么,突破数据关卡,也是基于对BMS的理解,对CAN报文、电控系统熟悉的一个关键所在。

特斯拉的BMS电池管理系统的主板包括2个微处理器,一个是德州仪器的TMS570LS0432,封装为LQFP176,一个是飞思卡尔SPC5764CSMKU6,封装为LQFP100,副MCU TM570可以检测主MCU SPC5764工作状态,一旦发现其失效可获取控制权限。之前速锐得EST527的OBD模块在2013年就采用过这个技术,主控MCU采用PIC,副控MCU采用M0架构的芯片。硬件上的功能上:主MCU负责电流检测、CAN通信等。副MCU负责高低边驱动、HVIL检测、高压、绝缘、CMC通信等。

特斯拉的电控系统采用“一主四从”的管理方式,有一个BMU中心,四条BMS系统线路分布其中,所有的电池电控系统都集成在Penthouse位置,这种高度集成的电控系统也是特斯拉引以为傲的特点,BMS采用模块化设计,即使使用不同类型的电池,仍可适配良好,展现出高度的包容性。那么在CAN数据,通过速锐得SPY3解码匹配发现,基本上可以直接从内部CAN读取一些电芯级别的数据,包括车辆状态中的停车、行驶、未充电、充电完成、异常、预留状态,新能源汽车SOC、车辆识别代号(VIN号)、绝缘电阻值、车速、环境温度、驱动电机温度、IGBI温度、加速踏板位置、制动踏板位置。
还有BMS中的单体电池电压最高值、最高电压电池子系统号、最高电压电池单体代号、单体电压最低值、最低电压电池子系统号、最低电压电池单体代号、电池组温度最高值、最高温度子系统号、电池组温度最低值、最低温度子系统号、最低温度探针单体代号、单体电池总数、单体电池包总数、电机转矩、电机转速、电机母线电压、电机母线电流、驱动电机功率、电机控制器输入电压、电池报警信息、电机报警信息、电控报警信息,驱动电机电压和电流、驱动电机状态。

其实,也有不用SPY3的朋友获取过这些CAN报文及BMS信息,只是从逻辑和DBC控制策略上,略有差距,有的只能做到只知其表,不知其源,想要做更高级的事,可能就会捉襟见肘了。特斯拉总线上,每秒产生2700帧数,包括了300多个CANID,DBC控制策略中能解码匹配120多个CANID,对应的大概是2000个信号。
要注意的是,特斯拉在车载总线中引入了以太网,所以特斯拉汽车网关还负责以太网与CAN总线之间的数据过滤和转发。以上。
相关文章:
速锐得解码匹配特斯拉电动汽车安全性能检测车架号及BMS电池数据
电动汽车三大件分别是电池、电机和电控。到目前为止,电机技术已经非常成熟,直流永磁电机、永磁同步电机已经取代了异步电机,成为电动汽车的主流。很多人认为电动汽车最后一道技术门槛是电池,但在我国,汽车制造商在制造…...
mysql视图中转换表字段的数据类型
需求: 开发框架中需要视图c_smelt_group字段类型是字符串的,而数据库表中c_smelt_group字段是int类型。 解决办法: wt是表的别名,通过cast函数,将wt.c_smelt_group字段转成字符串类型, AS c_smelt_group 是给字段取别名。 cast( …...
深入理解Java中的Synchronized关键字
文章目录 📝 定义📝 JDK6以前🔥 对象从无锁到偏向锁转化的过程🔥 轻量级锁升级🔥 自旋锁🔥 重量级锁 📕我是廖志伟,一名Java开发工程师、Java领域优质创作者、CSDN博客专家、51CTO专…...
力扣每日一题58:最后一个单词的长度
题目描述: 给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 示例 1: 输入:s "Hello World&q…...
mybatis书写
mybatis <select id"selectUserList" resultType"map"> select * from user </select><!--根据主键查询一条--> <select id"selectById" resultType"map" parameterType"java.lang.Integer"> sele…...
Win32 命名管道
命名管道简单封装 CNamedPipe.h #pragma once #include <string> #include <windows.h> #include <tchar.h>#pragma warning(disable:4200)class CNamedPipe { public:CNamedPipe();~CNamedPipe();CNamedPipe(const CNamedPipe& r) delete;CNamedPipe&…...
Flutter 填坑录 (不定时更新)
一,内存爆表 > 图片缓存 /// State基类 class BaseState<T extends StatefulWidget> extends State<T>withAutomaticKeepAliveClientMixin,WidgetHelper,DialogHelper,EventListener {mustCallSupervoid initState() {if (isListenEvent()) {EventMa…...
如何提高webpack的构建速度?
一、背景 随着我们的项目涉及到页面越来越多,功能和业务代码也会随着越多,相应的 webpack 的构建时间也会越来越久 构建时间与我们日常开发效率密切相关,当我们本地开发启动 devServer 或者 build 的时候,如果时间过长ÿ…...
Linux:实用操作
Linux:实用操作 1. 各类小技巧1.1 controlc(ctrl c) 强制停止1.2 可以通过快捷键:control d(ctrl d),退出账户的登录1.3 历史命令搜索1.4 光标移动快捷键 2. 软件安装2.1 介绍2.2 yum命令(需要root权限)在这里插入图片描述 3. systemctl4.…...
【Linxu工具】:vim使用及简单配置
朋友们、伙计们,我们又见面了,本期来给大家解读一下有关Linux工具:vim的使用,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成! C 语 言 专 栏:C语言:从…...
众和策略:题材股什么意思?
题材股是股票商场上的一个术语,许多刚接触股票出资的人可能对它不太熟悉。那么,题材股什么意思呢?在本文中,咱们将从多个角度剖析这个问题,帮忙读者更好地了解。 一、什么是题材股 题材股是指某个工作或主题的股票集结…...
npm 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
一、报错: npm : 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确, 然后再试一次。 所在位置 行:1 字符: 1npm init -y~~~ CategoryInfo : ObjectNotFo…...
港联证券:短债基金收益?
跟着人们对理财的需求不断增加,短债基金成为了许多出资者关注的焦点。那么,短债基金可以带来什么样的收益呢?本文将从多个角度剖析短债基金的收益。 一、短债基金的概念 短债基金是一种基金类型,风险相对较低,一般出资…...
每日一题 2316. 统计无向图中无法互相到达点对数(中等,图连通分量)
题目很简单,只要求出每个连通分量有多少个节点即可首先通过建立一个字典来表示每个节点的邻接关系遍历每个节点,并通过邻接关系标记在当前连通分量内的所有的点,这样就可以知道一个连通分量内有多少个点在这里我陷入了一个误区,导…...
Centos 无法连接 WIFI
环境 硬件:ASUS X550VC, x86_64系统:CentOS 7.9 现象 系统安装后无法上网,终端命令提示符为shadow3dlocalhost,我的疑问是这里不是应该显示我的主机名吗,为什么是localhost呢?但是有些时候,又…...
whois人员信息python批处理读入与文本输出
使用pytho读取一个ip列表文本,批量获取whois输出并写入到一个文本 import socketif __name__ __main__:# 江苏电信DNS地址mylog open(whois.log, mode a,encodingutf-8)for line in open("ip.txt"):s socket.socket(socket.AF_INET, socket.SOCK_STR…...
阿里云服务器续费流程_一篇文章搞定
阿里云服务器如何续费?续费流程来了,在云服务器ECS管理控制台选择续费实例、续费时长和续费优惠券,然后提交订单,分分钟即可完成阿里云服务器续费流程,阿里云服务器网aliyunfuwuqi.com分享阿里云服务器详细续费方法&am…...
TCP的三次握手、四次挥手!就像打电话一样简单!
目录 学前必会 三次握手详解 和打电话一样 为什么必须要三次? 四次挥手详解 和挂电话一样 为什么要四次挥手? 第四次为何要等待 2*MSL? 相关面试题: 说一下三次握手、四次挥手的过程三次握手四次挥手的目的是什么&#x…...
自动巡查、自动换充电……浙江这两台无人机“巢穴”派大用场
浙江省积极探索利用高科技的无人机技术提高森林防火效率。在杭州市西湖区的西山国家森林公园和绍兴市柯桥区的大香林风景区,部署了两台复亚智能全自动无人机飞行系统,实现了火情的自动检测、定期自动巡查以及迅速响应。该技术的应用标志着杭州从传统的“…...
数据结构题型20-第七章 查找
文章目录 1 考察重点2 知识框架3 考察重点4 顺序查找和折半查找4.1 顺序查找4.1.1 一般线性表的顺序查找4.1.2 有序表的顺序查找 4.2 折半查找4.3 分块查找 1 考察重点 2 知识框架 3 考察重点 4 顺序查找和折半查找 4.1 顺序查找 4.1.1 一般线性表的顺序查找 4.1.2 有序表的顺…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
Rust 异步编程
Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...
鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南
1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...
并发编程 - go版
1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...
