下面以"阶段电耗算法"来说明计算原理。
"阶段能耗算法"首先根据记录的充电量和充电前后剩余电量百分比,来判断是否是一条"累积记录"。如果根据这些信息推算出来电池容量明显超出厂家标称容量,就使用"阶段电耗算法"。
阶段电耗算法会根据当前充电记录(累积充电记录)和上一次充电记录,计算这两条记录之间的行程的平均电耗,当作当前记录的单次电耗。计算的原理也是用这段时间消耗的电量,除以累计行程。
具体计算公式:阶段消耗电量 = 本阶段总计充电总电量 + 电池容量 * (本阶段第一次充电前剩余电量百分比 - 本阶段最后一次充电后剩余电量百分比)
其中"电池容量"会先根据充电记录来推算,无法推算时再采用厂家公布的电池容量。
举例来说,要累积第1、2、3次充电为一条记录,如果第1次充电前,剩余电量是15%,第1、2、3次充电量分别是41、42、43度,第3次充电后剩余电量95%。
那么这条累积记录,需要录入充电量= 41 + 42 + 43 = 126 度,录入充电前剩余电量15%,充电后剩余电量95%。
假设电池容量是50度,那么阶段消耗电量 = 126 + 50 * (0.15 - 0.95) = 86 度。
如果第1次充电时总里程是1000公里,第3次充电时总里程是1800公里,那么阶段电耗= 86.0 / (1800 - 1000) * 100 = 10.75度/100KM
由于"阶段电耗算法"使用一个阶段的平均电耗,来当作期间每一段行程的电耗,因此虽然方便了充电比较频繁的使用场景,但是如果两次充电记录之间,存在加油多次的情况,那计算结果未必能非常准确反映每段行程的电耗。如果是以充电为主,加油比较少,那是没有太大问题的。需要根据您的实际情况和需要来决定要不要使用累积记录的功能。
相关算法请参见