top of page

特斯拉电池包故障:90 天前就已经露出痕迹

  • rory lee
  • 8月11日
  • 讀畢需時 5 分鐘

基于一篇正在准备发表的研究论文,主题为利用实车充电数据实现电池包故障的早期识别,属于 Dr.EV 电池模型流水线中的一环。

正在走向故障的电池包,行为方式与健康电池包不同,而这种差异早在电池包被更换的三个月前,就已经出现在普通的充电数据里。这是本次研究的结论,本文其余部分讲的是我们如何得到它,以及它能被采信到什么程度。

这是我们团队做了约两年的工作。在数据中,故障表现为特斯拉服务记录里的一次电池包更换,本文所有数字都以那个日期为基准来衡量。

电池包内部发生了什么

一个特斯拉电池包由大量单体电芯串并联组成,而整包的表现终究取决于最弱的那颗电芯。新电池包里,各个电芯彼此匹配得很紧密。随着电池包变老,电芯之间会逐渐拉开差距,这是正常且缓慢的过程,电池管理系统会通过均衡来加以修正。

最终走向故障的电池包,是其中某颗电芯或某个电芯组跟不上其余部分的那些。大部分情况可以由两种机理解释。一种是电极界面阻抗增长导致某颗电芯内阻升高,于是每当电流流过电池包,这颗电芯的电压摆动都比相邻电芯更大。另一种是微弱的内部短路,让一颗电芯的电量缓慢流失,以快于均衡所能追赶的速度落后于其他电芯。

这项研究要解决的问题

我们无法事先规定一块走向故障的电池包"应该长什么样"。车辆输出的任何一个读数,都会因为与电池健康无关的原因而波动:同一辆车在寒冷的清晨、荷电状态较高时充电,和在温暖天气、电量接近耗尽时充电,表现并不相同,而这种波动的幅度大于我们要寻找的效应本身。

正因如此,这项研究采用深度神经网络,而不是在某个由我们自己挑选的信号上设一条阈值线。与其事先决定哪个读数重要、界限画在哪里,不如让模型从大规模的真实充电数据中,学习健康的特斯拉电池在这些车实际会遇到的各种条件下是如何表现的,再衡量某一次充电过程离这一表现有多远。

所以问题与其说是检测,不如说是分离。模型必须足够精确,让一块真正异常的电池包能从日常波动中显现出来,而不是被淹没其中。这个模型,以及围绕它建立的整项研究,就是论文所描述的内容。

随后我们回溯了真实的特斯拉充电数据,其中包括后来电池包出现故障的车辆,并且只使用故障发生之前记录的数据。

我们如何避免自欺

在一份你已经知道答案的数据上,做出看起来很聪明的东西并不难。所以这项研究在设计时就刻意让这件事变得困难。

模型只学习过健康车辆。在被要求挑出故障电池包之前,它从未见过一块故障电池包。用来衡量性能的车辆,是模型完全没有接触过的车辆。预警阈值只依据健康车辆来确定,从未通过"能多抓到几个故障"去反复调整。此外,故障发生当天及之后记录的数据,在任何环节都没有被使用,只用了车辆在正常行驶期间产生的数据。

有一点需要明说。我们是在看过若干种方法各自的表现之后,才选定了表现最好的那一种。在研究的这个阶段这是常规做法,但也意味着当这套方法被用在还没有人看过的车辆上时,这些数字有可能变低。

怎么看这些图

本文所有的图都画同一个量:我们的机器学习模型给一次充电过程打出的分数。模型把这块电池包实际的表现,与健康电池包在相同条件下(相同的荷电状态、相同的电流、相同的室外温度)本该有的表现作比较。结果被换算到 0 到 100 的刻度上,50 左右是健康车辆的典型值,分数越高,说明它与健康电池包越不相像。

所以分数高,意味着这次充电过程没能落入模型所理解的"正常"范围。单独一次高分说明不了什么,任何一辆车都可能产生一次异常的充电过程。真正重要的是这块电池包是否在多次充电中持续得到高分。

一、故障电池包在三个月前就已经不一样了

出故障的电池包在故障前三个月就已经不一样了

蓝线是健康车队,整个期间都停留在 50。橙线是出故障的电池包。在 60 到 90 天这一段,它们已经处在 84,随后升到 90 以上,故障前最后一周达到 98。90 天是我们回溯到的最早时点,而在那个时点差距就已经存在,所以这份数据没法告诉我们它究竟是什么时候开始的。

平直的蓝线和橙线一样重要。这里最显而易见的混淆因素是车龄和累计里程:如果模型学到的只是"认出老车和跑得多的车",那它同样能造出我们所声称的这种差距。真要是那样,健康车队里也有大量老车和高里程车,蓝线就应该跟着一起往上走。蓝线是平的。

二、把信号变成预警,要以提前量为代价

被检出的电池包提前了多久收到预警

预警就是分数越过一条阈值线,而这条线画在哪里,决定了其余的一切,因为把它压得足够低以抓住那些细微的情况,同时也意味着把预警发给了并不需要它的健康车主。

在一条为了不打扰绝大多数健康车辆而选定的阈值上,模型标记出了略超过一半的故障电池包,首次预警通常出现在故障前约 38 天。这个数字需要放在语境里看,因为"一半"单独听起来并不出色。同一条阈值把预警花在约每 100 辆健康车中的 5 辆上,也就是说,一个不含任何有效信息的分数,靠运气大约只能撞上 5% 的故障电池包。而这个分数超过了 50%。

随着要求变严,柱子逐渐降低。约三分之一的故障电池包提前一个月以上被标记出来,提前两个月以上的约为八分之一。三个月前"能看出来"和三个月前"会收到预警"是两回事,两者之间的差距,正是把误报维持在低水平所付出的代价。

在这条阈值下,仍有大约一半的故障电池包完全没有被标记出来,其中一部分直到最后几天都没有显现出异常。

三、这个取舍无法回避

想多发现故障,就要多检查一些健康车辆

任何预警系统都要面对这条曲线,再多的建模也消不掉这条曲线本身。每个点代表一条不同的阈值。在保守的一端,每 100 辆健康车中只有约 1 辆会收到预警,能发现的故障约为五分之一。在灵敏的一端,约三分之二的故障可以被发现,代价是每 10 辆健康车中约有 1 辆会收到预警。

橙色的点是本文全程采用的设置:在三个月里,约每 100 辆健康车中有 5 辆收到预警,同时略超过一半的故障电池包被发现。我们这样选,是基于两点判断:车主对误报的容忍度很低但不是零;以及在这个水平上,一次预警的含义是这块电池包值得去检查一下,而不是它已经坏了。

留言

評等為 0(最高為 5 顆星)。
暫無評等

新增評等
bottom of page