计算电池放电前的剩余时间?

时间:2016-02-19 22:41:14

标签: linux algorithm battery batterylevel

我想计算笔记本电脑中的电池电量耗尽之前的时间。我可以使用的数据可通过sysfs获得,但我不确定使用哪些文件和算法:

$ ls /sys/class/power_supply/BAT0/ | sort
alarm
charge_full
charge_full_design
charge_now
current_now
cycle_count
device
manufacturer
model_name
power
present
serial_number
status
subsystem
technology
type
uevent
voltage_min_design
voltage_no

确定电池耗尽前的小时和分钟剩余时间的正确算法是什么?

2 个答案:

答案 0 :(得分:1)

扩展我上面的评论...

charge_now = 75%(案例1),25%(案例2)

charge_full = 100% 正常运行时间= 2小时

=> %_used = 0.75(案例1),25%(案例2)

(案例1)time_left =(2小时/0.75) - 2小时=(2.67 - 2)小时

(案例2)time_left =(2小时/0.25) - 2小时=(8 - 2)小时

您的里程可能会有所不同......:^)

答案 1 :(得分:1)

要计算剩余时间,请使用POWER_SUPPLY_CHARGE_NOW / POWER_SUPPLY_CURRENT_NOW这将让您离开时间。

现在是消费率的快照,现在的费用是剩下的金额。使用acpi -b将为您提供相同的答案。