Емельянов Эдуард Владимирович (eddy_em) wrote,
Емельянов Эдуард Владимирович
eddy_em

Category:

Заряд/разряд АКБ ноутбука HP pavilion dv7

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

Для начала я написал простенький скрипт, позволяющий записывать в файл текущий заряд аккумулятора:

#!/bin/sh
# this script has been written by Eddy 
#
#		bat_graph
#
# Создан 07-го Ноябрь 2012 года в 13:23
#

[ "$1" == "" ] && F="/home/eddy/bat_graph" || F="$1"
while true; do
	CN=$(cat /sys/class/power_supply/BAT0/charge_now)
	STR=$(date +%s\\t$CN)
	echo -e "$STR" >> $F
	sleep 30
done
Если передать скрипту параметр — имя файла — он будет сохранять данные в этот файл, иначе — в файл ~/bat_graph.
Величина текущего "заряда" берется из файла /sys/class/power_supply/BAT0/charge_now, а в файле /sys/class/power_supply/BAT0/charge_full можно посмотреть предельный "заряд" аккумулятора. Разделив первое на второе, получим величину заряда в процентах.
Для того, чтобы писать время в элементарно обрабатываемой форме, я использовал date +%s, выдающую UNIX-время.
Лирическое отступление
Только я начал чертить, как заметил, что каждые секунд 30 мышка "отваливается". Сначала я грешил на управлялку тачпадом, отключающую его на время активности клавиатуры, но потом до меня дошло, что это laptop-mode-tools отключают питание USB. Полез в настройки — и действительно, отключают. Отменил управление питанием USB и спокойно продолжил черчение.
Когда мне чертить надоело, я начал ковыряться в /sys. Обнаружил, что акселерометр у меня в буке очень даже работает, и показывает условное положение ноутбука в пространстве. Узелок на память: надо будет настроить "засыпание" в случае "роняния" бука, а также изменение ориентации картинки (например, при помощи xrandr) при его повороте. А еще надо бы выяснить, как отключить светодиодную подсветку логотипа на крышке ноутбука — не нужна она.
А еще я обнаружил, что у меня в ноутбуке не 4 ядра, а 2 ядра с "гипертридингом".

В конце-концов неожиданно появился свет, я запустил этот же скрипт, но с сохранением в другой файл (для получения графиков заряда АКБ), и побежал на работу.

Итак, вот что у меня получилось.

Как обычно, запускаю Octave и выполняю анализ графика разряда:

[T C] = textread ('bat_graph');
T -= T(1); T /= 3600;
C /= 56050;
dC = diff(C); dT = diff(T);
plot(T,C)
print -dpng discharge.png
plot(T(2:end),dC./dT)
print -dpng dischargediff.png
median(dC)/30*3600
ans = -19.269

Считываем в переменную T столбец с UNIX-временем, а в переменную C — столбец с "зарядом". Преобразуем время в часы, а "заряд" — в проценты (5605000 — стопроцентный уровень заряда). Находим дифференциалы и строим графики.
Так как в ЖЖшке до сих пор не работает загрузка изображений, даю ссылки на гуглоплюс!
График разряда аккумулятора (%)
Скорость разряда (%/час)

Аналогичным образом я получил графики для заряда:
Заряд аккумулятора (%)
Скорость заряда (%/час)


Итак, что получается: средняя скорость разряда составляет чуть больше 19% в час. Индикатор (batti) показывал в самом начале, что батареи хватит на четыре с лишним часа. Судя по графикам, это действительно так. Надо будет через годик посмотреть, насколько сильно деградирует аккумулятор.
С зарядом вообще получается красота: прямо таки то, что и должно быть. Изначальная скорость — около 60% в час. Все эти выбросы — обычный цифровой шум, а выброс на графике скорости заряда при достижении 100% обусловлен, по-видимому, тем, что "железо" считает полностью заряженной батарею при достижении некоего уровня, немного не доходящего до теоретического "полного заряда".
Tags: octave, всячина
Subscribe

  • Темы-2

    Некоторые испугались, прочитав предыдущие темы. Повторяю: темы для работы в течение всей школы (три года). А вот — их части, которые можно осилить за…

  • Темы для творческих работ школьников

    В связи с возможным проведением очной весенней школы АФШ (детей набрали еще прошлым летом, но пока очно не было возможности встретиться из-за…

  • Бюджетная читалка с алиэкспресса

    Долго искал вменяемые электронные читалки, но за формат примерно А4 просят около $900, вообще озверели. ОК, решил взять мелкую дешевую читалку, чтобы…

promo eddy_em august 17, 2019 12:33 3
Buy for 10 tokens
Юра намедни напечатал корпус для хронометра. Для первого блина получилось неплохо: И еще немного фотографий:
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 0 comments