Как считать циклы батареи?

14

Как и большинство пользователей, которые искали, знают, что реализация ACPI производителей является беспорядком, и для большинства наших ноутбуков информация об аккумуляторе недоступна или неверна (на Dell Inspiron 15z показатель делится на 10).

Есть ли способ (с помощью сценария perl / python / bash, существующего пакета или чего-либо еще) регистрировать циклы заряда батареи в Ubuntu 12.04?

(что такое батарейный цикл?)

Цикл зарядки означает использование всей энергии аккумулятора, но это не обязательно означает один заряд. Например, вы можете слушать свое [устройство] в течение нескольких часов один день, используя половину его мощности, а затем полностью зарядить его. Если вы сделали то же самое на следующий день, это будет считаться одним циклом зарядки, а не двумя, поэтому вам может потребоваться несколько дней для завершения цикла. Каждый раз, когда вы завершаете цикл зарядки, он слегка уменьшает емкость батареи, но вы можете провести [заряд батареи устройства] через много циклов зарядки, прежде чем они будут удерживать только 80% от первоначальной емкости батареи. Apple, вежливость

Мой ноутбук - Clevo W150HRM, и когда я делаю: cat /sys/class/power_supply/BAT0/cycle_count я получаю: 0 моему ноутбуку 2 года.

Спасибо заранее.

The_guy_with_a_laptop
источник
счетчики не сложные. какие данные вы можете использовать для подсчета?
Грандбоу
Конечно счетчики это сложно! Они хранятся на прошивке батареи. (Да, у батарей есть прошивки)
Bahaïka

Ответы:

1

Я только что изучил ваш вопрос ... так что может быть слишком поздно, чтобы ответить вам, так как прошло много лет, как вы его опубликовали.

Вы используете довольно старую Ubuntu, которая известна / была известна в то время, чтобы иметь проблемы в этом конкретном домене.

Однако я призываю вас увидеть этот вопрос: как проверить состояние батареи с помощью терминала?

Ответ Лекенштейна - это начало того, что вы ищете.

Как вы можете видеть в ответе, вопрос развивается вместе с версией ядра, и поэтому решение ...

Чтобы быть более конкретным и пересматривать ваши условия (получить статус и Ubuntu 12.04), вам нужно повысить уровень мощности в вашей системе и создать такой скрипт:

#!/bin/sh
DATE=$(date +%Y-%m-%d:%H:%M:%S)
STATE=$(upower -i /sys/class/power_supply/BAT0 | awk '/state/ {print $2}')
echo "$DATE $STATE" >> /var/log/battery_status.log

Затем добавьте его в цикл мониторинга ... или в crontab.

Может потребоваться привилегия root (sudo)

Надеюсь это поможет.

Антуан Родригес
источник
Я пытался, $ STATE возвращает пустое. даже просто запустить линию отдельно. Чего не хватает? ys GCP
GCP420