Skip to content

Battery Temperature(电池温度) ​

作用域属性:[设备级 · 整机环境](Device Scope )

Owner恢复验收 · 2026-10-26: 电池原始温度和摄氏温度依序待验,尚无本批新数据或结论。沿用原始字段质量与Raw/100公式;缺值仍为missing ,不补0。全指标恢复计划。

1. 定义与业务价值 ​

Battery Temperature 是电池内置热敏传感器的温度读数。它是电池自身的温度,不等于 SoC(芯片)温度,也不等于机身表面温度——三者是不同的物理测量点,不应互相替代或混用。

2. metricID / scope / unit / source ​

指标metricIDunitsourceKeydefinitionVersion
Battery Temperature Rawios.device.battery.temperature_rawsource-nativeTemperaturebattery-temperature-raw.v1
Battery Temperatureios.device.battery.temperature_celsiusdegree-celsiusTemperature/100centi-celsius-to-celsius.candidate.v1

scope = device,source = diagnostics.ioregistry。取自当前 Registry 。

3. iOS 系统原理 ​

电池管理芯片内置热敏传感器持续监测电池自身温度,是系统电源管理决策(如充电限流)的输入之一,但不是系统级 Thermal State 枚举的直接来源——两者是不同的证据维度,详见 Thermal Status。

4. 系统服务 / 通信通道 / 采集命令与实现 ​

通道:Lockdown 通道下的系统诊断服务 com.apple.mobile.diagnostics_relay,与 Battery Electrical 共用同一 20 秒固定采样节拍,但独立于 Battery 电学门禁——不需要 battery-only 状态即可采集。

5. 原始字段与字段语义 ​

Temperature:诊断接口上报的原始温度字段,取值范围约 0–8000(centi-Celsius,百分之一摄氏度)。

6. 精确公式 ​

text
TemperatureRaw = Temperature(原始 source-native 值,不做换算)
TemperatureCelsius = Temperature / 100

7. Clock / Window / Freshness ​

随 Device Condition 的 20 秒固定节拍产出。

8. Baseline / Reset / Discontinuity ​

无 counter 语义,无前值依赖。

9. Quality:valid / candidate / missing ​

字段存在且为合理数值范围 → candidate;字段缺失 → missing。质量判定独立于 Battery Electrical 的 battery-only 门禁。

10. 合法 0 的条件 ​

转换后的0°C属于当前0–80°C候选边界,不以“数值为0”自动置空;仍须核源字段/单位/质量。0°C是否为实际设备温度需独立证据,不能从合法数值推断物理校准。

11. 当前证据、校准与平台覆盖 ​

CORE-20(2026-09-05)已在 iOS 17/18 真机验证该字段可独立于 Battery 电学门禁正常产出(Partial 状态)。当前没有证据支持固定的“多少度就进入某个 Thermal Status 或触发具体降频”映射表。Battery Temperature 与系统 Thermal Status 是不同证据维度;温度趋势可以作为热环境背景,但不能自行定义摄氏度阈值去推导系统热状态或具体 CPU/GPU 频率变化。

12. 如何分析:能得到什么结论,不能得到什么结论 ​

能得到:电池自身温度的趋势,可用于长稳测试中观察发热积累情况。

不能得到:

  • 不能把电池温度等同于 SoC 温度或机身表面温度——三者是不同测量点,一个升高不代表另外两个同幅度升高;
  • 不能用固定摄氏度数字(如“超过 40℃”)直接映射为 Thermal Throttling 已触发——电池温度只是相关证据之一;即使能够取得可信的 Thermal Status,它也描述系统热压力状态,而不是某个 CPU/GPU 频率已经下降多少;
  • 长稳测试中性能下降与电池温升同窗出现,只能提示 thermal 影响的可能性,不能单独作为确诊依据。

13. 常见误区 ​

  • 把电池温度当作 SoC 温度使用;
  • 自行制定"35/38/41℃"等固定阈值映射到 nominal/fair/serious/critical 等系统状态标签——这类映射没有官方依据。

14. Legacy / 历史实现 ​

battery-temperature-raw.v1 / centi-celsius-to-celsius.candidate.v1 是当前实现版本。

15. 版本历史与来源批次 ​

本页由 site/knowledge/metrics/energy-battery-thermal.md 拆分而来,历史沿革见 Energy/Battery/Thermal 技术演进与实验。

版本日期修订要点
v1(本页)2026-09-18从 energy-battery-thermal.md 拆出,成为 Battery Temperature 独立 Canonical;明确电池温度≠SoC温度≠机身表面温度,删除固定温度到 Thermal State 的映射暗示。
验收恢复2026-10-26Owner恢复Raw与摄氏温度的顺序验收;公式和历史证据不变;恢复计划。

2026-10-04 导出与质量修订 ​

batteryTemperatureRaw通过原ios.device.battery.temperature_raw直接投影(不新建metricID),Swift缺旧键默认nil。温度Raw与Celsius同时进入新会话stored CSV以及session-export.v3 review CSV/JSONL;质量/单位/scope沿来源,不把温度源可见等同Thermal状态可见,也不把独立Fixture self thermal枚举当电池温度参考。原始温度字段存在可保留,Celsius仅0≤Raw≤8000时Raw/100,缺失/异常仍null;换算版本未改。当前整体54项独立校准/五轮100%仍partial。本批依据。

导出修订日期来源
v1映射不变、session-export.v32026-10-04Raw直投/双CSV补列,合法0与缺失分开;E2匹配测试,不提升物理准确性

Perfowl · Performance Observer