如何远程开发完整分析一台新能源车BMS电池管理系统CAN数据矩阵

随着我国新能源汽车的崛起,从网络管理平台、数据中心、科研机构、高校教学、车型对标、整车DBC控制策略分析、电池管理系统研究、电池健康管理、网约车管理、电池梯度利用、车队管理等多方面的市场需求,完整分析一台新能源车BMS电池管理系统的CAN矩阵开发成为当下热门需求,不仅是数字化推动改革的需要,也是相关运营企业的核心。

那么,我们需要做的首要工作,就是拿到底层技术开发的CAN数据,这些数据都能帮助到我们所有项目的进展和开发。对此,不仅是技术上有要求,时效性也非常之高,一个完整的新能源汽车数据分析,不仅要懂得通信、电子、CAN总线、逻辑和开发分析,更重要的是需要多年的积累的经验判定CAN报文中的算法,对于项目开发来说,提出了更高的要求。我分为几步给大家梳理项目开发中大概流程。

一、我们首先看仪表有哪些数据

新能源汽车仪表盘的信息对于驾驶者来说至关重要,它们提供了车辆运行状态的即时反馈,确保驾驶安全。这些信息不仅包括传统的速度、油量等指标,还涵盖了与电动汽车特性相关的多项数据。详细分析后,里边包括了驾驶模式的切换,新能源汽车在切换到可行驶模式时,仪表盘应提供明确的指示;驾驶员进行至少两次有意识的不同动作,如“脚踩制动”加“手按开关”等组合动作等等

可行驶里程显示包括了续航信息:纯电动汽车仪表盘要显示可行驶里程,混动车型则显示纯电驱动模式下的可行驶里程。显示方式:可以通过数字或百分比等形式呈现给驾驶员。

剩余电量/氢气量提示,电量显示:新能源汽车仪表盘还应显示剩余电量或氢气量,以便驾驶员了解能源消耗情况。低电量警告:当剩余电量或氢气量降低至可能影响车辆行驶的级别时,应通过明显信号提示驾驶员。

车辆瞬时功率显示,功率输出:电动汽车仪表盘应显示电驱动系统输出的瞬时功率及可用剩余功率。显示形式:可以通过电流或百分比等形式展示给驾驶员。

车速与里程信息,实时车速:仪表盘应实时显示车辆的当前速度。总里程:车辆从出厂到现在累计的行驶里程。单次里程:本次行驶的里程数,有助于驾驶员了解短途行驶的能耗。

电池状态监测,电池电量:仪表盘上通常会有电池电量的指示,显示当前电池的充电状态。

电池健康度:部分车型还会显示电池的健康状态,提醒驾驶员电池是否需要维护或更换。

能源消耗率,实时能耗:仪表盘应提供车辆当前的能源消耗率,帮助驾驶员了解能效。

历史能耗记录:有些车型可以记录并显示过去的能源消耗情况,供驾驶员参考。

故障诊断与警告,这个用得少,因为都是专车专用,没有坏不坏,只有烧不烧。

结合上述新能源汽车仪表盘提供了丰富的信息分析,我们就要对于项目掌握车辆的运行状态和能源消耗情况以及各种不同数据在驾驶操作中的数据更新及变化,包括可行驶模式、续航里程、剩余电量、瞬时功率、车速与里程、电池状态、能源消耗率以及故障诊断等等。项目的数据采集需求中,就已经包括了大部分的数据,另外就是电池健康管理中,还涉及不同组别的单体电池的数据采集。

因为有的自带了网关,将数据隔离,目前采集的方式又出了新的花样,我们首先就会绕开OBD接口,然后跳过网关,在BMS管理系统中去获取数据,如果更底层的,那么就直接从电池接口获取。为什么要做这么麻烦,因为有的数据通过BMS出来,就已经发生了改变,并非电池包的数据,而是计算过的数据,就像云平台展示的一样,那都是想要给你看的数据,而非底层的数据。

并且,很多汽车都是组装工厂,并不具备数据的拥有和底层的开发,他们只有使用权,具体怎么来的,不知道,也掌控不了,很多国际零部件厂家,根本就不对国内汽车制造厂商开放底层核心的数据,所有,有的汽车生产出来,有“好多个”OBD的诊断接口,也就是说,自己造的车,连修都不会修。

二、找个修理厂,支架,把汽车支起来

为了提高工作效率,减少震动对维修工作的影响,使得维修过程更加平稳,我们可能要寻找一些修理厂家,借用举升机,千斤顶支架等工具能够帮助维修人员轻松举升汽车,为底盘维修及根据图纸,寻找线路提供便利。在采集数据开发过程中,支架确保汽车稳定,避免因车辆移动或倾斜而导致的安全风险。

三、准备CANOE 工具,万用表,笔记本电脑

CAN分析工具是用于开发、测试和维护CAN-bus网络的专用软件和硬件设备。CAN分析仪选择操作通用,功能强大,集成了2路符合ISO11898标准的独立CAN通道,使其适用于多种不同的CAN网络分析需求。

参考CANoe开发的软件打开DBC报文的采集及数据曲线的分析,支持多种CAN连接,包括周立功CAN和PCAN,同时提供DBC解析与生成功能,增强了其适用性和灵活性。

这一小工具特别适合于那些需要对历史数据进行深度分析,或是需要模拟CAN网络行为以测试系统反应的工程师。配合CAN分析仪,ECAN Tools能实现CAN报文解析、CAN数据组包发送、CAN帧过滤等核心功能,满足了大多数现场分析和故障排查的需要。

根据经验,选择一个提供良好客户支持的CAN数据开发供应商,特别是在遇到技术难题时,及时地支持至关重要。

四、用万用表找到CAN接口进行远程CAN数据分析

远程CAN数据分析是一种通过分析CAN总线上的数据传输来实现对设备的监控和故障诊断的过程。这种分析方式在汽车行业、工业自动化以及其他依赖控制器局域网络(Controller Area Network, CAN)进行数据通信的领域中发挥着至关重要的作用。

速锐得的做法是,客户购买CAN分析仪工具,通过4G网络远程操控客户笔记本电脑远程桌面控制软件,可以帮助客户了解CAN总线及工具的使用,在友好的交互界面中,我们为客户展示CAN总线的数据传输单位,数据帧的类型包括数据帧、远程帧、错误帧和过载帧。帮助客户了解数据帧的结构:数据帧中包含了标识符(ID)、数据长度代码(DLC)和数据字段,其中数据字段用于传输实际的信息,记录CAN-FD的变化:与传统CAN相比,CAN-FD(Flexible Data-Rate CAN)取消了远程帧的支持,且不改变数据段的比特率,标准格式和扩展格式两种类型,掌握分析方法,帮助工程师实时捕获、分析和模拟CAN数据

远程数据采集分析具有地理位置的灵活性:远程分析允许工程师在不同地理位置进行数据分析,极大地提高了工作效率。实时性:通过互联网连接,可以实现对CAN数据的实时监控和分析。例如汽车远程数据采集分析,速锐得可以通过远程分析技术对车辆进行实时监控和CAN数据采集,提高服务效率。在工业自动化领域,远程CAN数据分析可以用于监控生产线的运行状态,及时发现并解决问题。

五、验证数据

CAN数据验证是一个必要的过程,确保通过CAN总线传输的数据的完整性和正确性。这一验证过程不仅涉及汽车领域,也包括工业自动化,因为CAN总线被广泛应用于这些领域的设备间通讯。

其中包括了CRC校验:CRC(循环冗余校验)是CAN通信中一个非常重要的错误检测手段。数据链路层协议理解,熟悉它的数据传输过程和数据结构,这些知识是进行有效测试和验证的基础。

使用专用工具:进行CAN数据验证需要使用专门的工具,如CAN分析仪和CAN开发板、SPY3等。这些工具不仅能帮助发送和接收CAN网络上的数据,还能对数据进行高级处理,如设置CAN硬件过滤器以及调试CAN设备和网络。

接口与信号转换:在具体的实际应用中,如STM32微控制器上的CAN通信,CAN接口表现为一种串行接口,它可以由任何一个节点主动发送数据,并在出现总线冲突时由硬件来处理。不同于其他串行接口,CAN将TTL信号转换成差分信号,以此来实现节点间的数据传递与开发。

  • 交付提供参考CAN矩阵表格

经过大量的工作安排和技师的配合,我们基本上可以拿到一台完整车型的BMS电池管理系统数据,这些数据为网络管理平台、数据中心、科研机构、高校教学、车型对标、整车DBC控制策略分析、电池管理系统研究、电池健康管理、网约车管理、电池梯度利用、车队管理提供强大数据支持。但也因为新能源车多款多样,各种秀技能和不标准,导致开发工作难度在持续不断地增加,每年出厂的新能源车都会有巨大的差异。

那么,我们交付提供给参考的CAN矩阵表格,一段时间过后,就会失去它的意义。最简单的例子,就是东风汽车E70,这个汽车的矩阵协议,就有不同的8个版本,因为东风汽车根本控制不了零部件厂家,纯纯一个工厂而已,爱丽舍车型也有4个版本。另外就是汽车行业的竞争在持续拉大,通过减配、降价、升级、创新、创词,产生出各种不同的车型,类似1000万以内最好的车、500万以内最好的车,这种就不要去碰,所见即所坑。

DBC表格包括了客户运营管理需要的重要底层信息和逻辑,有的项目可能只需要知道结果,有的项目需要知道过程,有的项目需要涉及硬件的定制与开发,应用的时候,会出现不同的情况,例如商用车新能源的管理可能就仅需要涉及充电的循环次数、累计充电量、被充电的车型VIN、电池实时位置,SOC、SOH、低电提醒,异常报警、后台管理电池数据等等。很多数据需要远程分析,也不是所有客户想要的列表都能获取得到,还存在一定差异性。

好了,说了这么多,你学废了吗?

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

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

相关文章

【深度学习】yolov8-seg分割训练,拼接图的分割复原

文章目录 项目背景造数据训练 项目背景 在日常开发中,经常会遇到一些图片是由多个图片拼接来的,如下图就是三个图片横向拼接来的。是否可以利用yolov8-seg模型来识别出这张图片的三张子图区域呢,这是文本要做的事情。 造数据 假设拼接方式有…

Oracle配置TCPS加密协议测试

文章目录 一、环境信息二、配置过程1.创建证书2.监听配置2.1.配置sqlnet.ora2.2.配置listener.ora文件2.3.配置tnsnames.ora文件2.4.重载监听 3.数据库本地测试3.1. tcps登录测试3.2.日志监控 一、环境信息 操作系统:Linux 版本信息:Oracle 19c 参考文档…

缓存框架 Caffeine 的可视化探索与实践

作者:vivo 互联网服务器团队- Wang Zhi Caffeine 作为一个高性能的缓存框架而被大量使用。本文基于Caffeine已有的基础进行定制化开发实现可视化功能。 一、背景 Caffeine缓存是一个高性能、可扩展、内存优化的 Java 缓存库,基于 Google 的 Guava Cac…

Ubuntu20.04 设置静态ip

Ubuntu 从 17.10 开始,已放弃在 /etc/network/interfaces 里固定 IP 的配置,interfaces 文件不复存在,即使配置也不会生效,而是改成 netplan 方式 ,配置写在 /etc/netplan/01-netcfg.yaml ,50-cloud-init.y…

机器学习笔记-02-基础线性算法认识(问题-解答自查版)

前言 以下问题以Q&A形式记录,基本上都是笔者在初学一轮后,掌握不牢或者频繁忘记的点 Q&A的形式有助于学习过程中时刻关注自己的输入与输出关系,也适合做查漏补缺和复盘。 本文可以让读者用作自查,答案在后面&#xff0…

跟《经济学人》学英文:2024年07月20日这期 At last, Wall Street has something to cheer

At last, Wall Street has something to cheer 华尔街终于有值得欢呼的事情了 at last:终于;最后; Consumer banks, on the other hand, are starting to suffer 原文: Capital markets are twitchy. When interest rates spi…

数据危机!4大硬盘数据恢复工具,教你如何正确挽回珍贵记忆!

在这个数字化的时代,硬盘里的数据对我们来说简直太重要了。但糟糕的是,数据丢失这种事时不时就会发生,可能是因为不小心删了,硬盘坏了,或者中了病毒。遇到这种情况,很多人可能就慌了,不知道怎么…

货架管理a

路由->vue的el标签->Api->call方法里calljs的api接口->数据声明const xxxData-> 编辑按钮:点击跳出页面并把这一行的数据给到表单formDataba2 保存按钮:formDataba2改过的数据->xxApi发送->查询Api 跳转仓库:把tableData.value数据清空->callXxxAp…

Windows环境下安装Redis并设置Redis开机自启

文章目录 0. 前言1. 下载 Windows 版本的Redis2. 为 Redis 设置连接密码(可选)3. 启动 Redis4. 设置 Redis 开机自启4.1 将 Redis 进程注册为服务4.2 设置 Redis 服务开机自启4.3 重启电脑测试是否配置成功4.4 关闭 Redis 开机自启(拓展&…

Typora笔记上传到CSDN

1.Typora 安装 Typora链接:百度网盘 提取码:b6d1 旧版本是不需要破解的 后来的版本比如1.5.9把放在typora的根目录下就可以了 2.上传到CSDN 步骤 csdn 写文章-使用MD编辑器-导入本地md文件即可 问题 图片没法显示 原因 图片的链接是本地的 当然没法…

Ubuntu 24 PXE Server bios+uefi 自动化部署esxi 6 7 8

pxe server 前言 PXE(Preboot eXecution Environment,预启动执行环境)是一种网络启动协议,允许计算机通过网络启动而不是使用本地硬盘。PXE服务器是实现这一功能的服务器,它提供了启动镜像和引导加载程序,使得客户端计算机可以通过网络启动并安装操作系统或运行其他软件…

java学习记录09:Lambda表达式与引用

Lambda表达式 例子: (o1,o2) -> Interger.compare(o1,o2); 格式: -> : lambda操作符 -> 的左边: lambda形参列表,对应着要重写的接口中的抽象方法的形参列表。 ->的右边:lamb…

python编程表白爱心代码,来自程序员的浪漫!

Python爱心表白代码 感觉的紫色要更加浪漫&#xff0c;其中的文字也是可以直接更改的&#xff0c;非常方便 <文末附带精品籽料> 改变爱心的颜色: 在源代码的13-15行位置&#xff0c;可以通过更改16进制颜色色值进行改变爱心的颜色&#xff0c;这里小编改了一点绿色&…

阶层差异下的社会角色与认知逻辑

阶层差异下的社会角色与认知逻辑 在中国传统文化中&#xff0c;有句古话&#xff1a;“仗义每从屠狗辈&#xff0c;负心多是读书人。”这句话揭示了不同社会阶层的人&#xff0c;在认知和行为上存在的差异。 社会底层&#xff1a;道德与情感的坚守者 社会底层人群&#xff0c…

05 循环神经网络

目录 1. 基本概念 2. 简单循环网络 2.1 简单循环网络 2.2 长程依赖问题 3. 循环神经网络的模式与参数学习 3.1 循环神经网络的模式 3.2 参数学习 4. 基于门控的循环神经网络 4.1 长短期记忆网络 4.2 LSTM网络的变体网络 4.3 门控循环单元网络 5. 深层循环神经网络…

PCL Local Surface Patches 关键点提取

目录 一、算法原理1、算法原理2、 参考文献二、代码实现三、结果展示本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫与GPT。 一、算法原理 1、算法原理 主曲率是某一点局部形状的体现,Local Surface Patches 关键点检测法…

深入理解计算机系统 CSAPP 家庭作业11.7

静态内容是指在不同请求中访问到的数据都相同的静态文件。例如&#xff1a;图片、视频、网站中的文件&#xff08;html、css、js&#xff09;、软件安装包、apk文件、压缩包文件等。 /** get_filetype - derive file type from file name*/ void get_filetype(char *filename,…

Pytorch使用教学3-特殊张量的创建与类型转化

1 特殊张量的创建 与numpy类似&#xff0c;PyTorch中的张量也有很多特殊创建的形式。 zeros:全0张量 # 形状为2行3列 torch.zeros([2, 3]) # tensor([[0., 0., 0.], # [0., 0., 0.]])ones:全1张量 # 形状为2行3列 torch.ones([2, 3]) # tensor([[1., 1., 1.], # …

「12月·长沙」第四届机器人、自动化与智能控制国际会议(ICRAIC 2024)

随着科技的飞速发展&#xff0c;智能机器人在当今社会的重要性愈发凸显。从制造业的自动化生产线&#xff0c;到医疗领域的手术机器人&#xff0c;再到家庭生活中的智能助手&#xff0c;机器人与人工智能的融合正在改变着我们的生产和生活方式。第四届机器人、自动化与智能控制…

Docker(十)-Docker运行elasticsearch7.4.2容器实例以及分词器相关的配置

1.下载镜像 1.1存储和检索数据 docker pull elasticsearch:7.4.2 1.2可视化检索数据 docker pull kibana:7.4.22.创建elasticsearch实例 创建本地挂载数据卷配置目录 mkdir -p /software/elasticsearch/config 创建本地挂载数据卷数据目录 mkdir -p /software/elasticse…