Привет! Поговорим о том, как смартфон измеряет заряд аккумулятора, почему он скачет как угорелый и что можно сделать.
В наши дни даже недорогие смартфоны могут порадовать нас производительностью, качеством камер и силой приема сотового сигнала. Казалось бы, живи да радуйся, но существует объективный фактор, который портит удовольствие от использования смартфона, и речь, конечно же, про аккумулятор.
Дело даже не в его объеме, или скорости заряда, а в том, что несмотря на все уверения элитных пиарщиков, отследить реальный заряд батареи практически невозможно. Многие из нас часто видели скоростное падение уровня заряда на индикаторе Android или iOS, или наоборот, смартфон «восполнял» 1-2% просто полежав пару минут с выключенным экраном. Эта нестабильность в показаниях и вызывает наибольшее неудовольствие у пользователей, сеет в них недоверие к бренду, расшатывает нервы и раскрашивает мир в черные краски. Особенно, когда на покупку смартфона были потрачены большие деньги. Но прежде, чем обвинять аккумулятор смартфона в асоциальном поведении его хозяина, давайте разберемся, а так ли уж он виноват?Как смартфоны измеряют уровень заряда
Современный метод на самом деле несложный и дешевый, позволяет убедить стороннего наблюдателя, что он видит реальный заряд аккумулятора смартфона, а если еще операционная система начнет предсказывать разряд, то покупатель будет в полном восторге. Жаль только, что к реальности это не имеет отношения, и вот почему. В смартфоне нельзя разделять понятие измерения уровня заряда смартфона отдельно от заводской статистики тестов батареи. Что происходит? На заводе-изготовителе проводятся тесты конкретной батареи и рисуется эталонный график разряда. Например, такой:
Абсолютно типичная картина, не существует потребительских (недорогих) Li-ion аккумуляторов, которые бы разряжались равномерно. В данном графике по оси Y указывается уровень напряжения, а по оси X процент заряда. На основе этого конкретного графика, сделанного для конкретного аккумулятора конкретного смартфона, Android OS и высчитывает уровень заряда, который мы видим на экране. Информацию о вольтаже предоставляет аппаратное средство (контроллер аккумулятора), а дальнейшие расчеты производит приложение операционной системы. Разумеется, встроенный в аккумулятор контроллер никогда не допустит разряда батареи до настоящих 0% (на графике уровень заряда 0% соответствует напряжению 3В), подобные ошибки приводят к невозможности запуска процесса заряжания Li-ion аккумулятора. Кстати, в недорогих смартфонах Xiaomi из программы Android One, часто встречалась эта недоработка и их владельцы были вынуждены полностью менять аккумуляторы («пробивать» не заряжающийся аккумулятор сильным зарядом тока никому не советую). В дальнейшем Android OS анализирует работу смартфона и корректирует данные о заряде (и перспективе разрядки), а данные об этом хранит в файле «batterystats.bin», который находится в корневом разделе системы. Заводской «график» никогда не меняется, и изначально хранится в загрузчике (Boot.img).
Из сказанного выше можно сделать несколько выводов:
- Метод основан на сравнении заводских параметров и текущем уровне напряжения
- Смартфон на самом деле ничего не измеряет, а только делает выводы из полученной извне информации. Т.е., он «думает», что знает уровень заряда и показывает свое предположение пользователю
- Если в разделе настроек «батарея» в вашем Android-смартфоне вы видите прямую косую линию, то вас либо нагло обманывают (дешевый суббренд), либо производитель ПО смартфона (Samsung, Apple, Nokia, OnePlus, Huawei и т.д.) ответственно подошел к делу и разработал хороший алгоритм энергопотребления (вовремя понижает и повышает частоты ЦП и ОЗУ)
Когда что-то пошло не так
Что-то всегда может пойти не так, если начинаешь модифицировать смартфон без полных знаний о процессах. В чем и я убедился на личном опыте на примере планшета производства DNS (планшет давно гниет на свалке, модель не помню). Суть проблемы была простая – уровень заряда батареи абсолютно всегда отображался некорректно: показывая заряд 100% он мог выключиться через 10 минут, или часами работать на 15%. Не разобравшись в том, как это все работает, я стер файл «batterystats.bin» и получил бесценный опыт. Android OS после перезагрузки планшета создала файл заново и процент зарядки стал работать более корректно, показывая реальный заряд, вот только время работы сократилось в разы. Впоследствии, разобрав устройство, перед тем как его выкинуть (интересно же) из-за смерти флеш-памяти, моему взгляду открылся аккумулятор без какого-либо контроллера вообще. Это была просто стопка листов, обмотанная дешевой пленкой, из которой торчали два провода.
Другим примером «что-то не так», безусловно являются инструкции по «раскачиванию» батареи, которые были в тренде еще несколько лет назад. По задумке «инструкторов», аккумулятор можно было заставить работать лучше (нести больший заряд), если после удаления статистики батареи несколько раз заряжать его до 100% и разряжать до выключения. Владельцы смартфонов для ускорения процесса разряда аккумулятора применяли различные бенчмарки, вновь и вновь запуская их. Привело это к тому, что предполагаемое Android OS время разряда аккумулятора стало более пессимистическим (время рассчитывалось исходя из полной нагрузки на смартфон), но реально смартфон работал дольше! У пользователя девайса складывалось ничем не обоснованное ощущение, что аккумулятор стал «раскачанным» и он передавал «бесценный опыт» дальше, нахваливая данный метод. На старых форумах можно встретить предложение повторять эту процедуру раз в две недели. Лично мне это напоминает другую процедуру, сугубо физиологическую.
Но чаще всего с отображением уровня заряда что-то идет не так у самых обычных пользователей, которые не пытаются изменить прошивку или пользоваться странными советами. И вина этих пользователей заключается лишь в том, что они вместо оригинального аккумулятора на замену купили дешевую копию («зато дешевле»). Или решили воспользоваться более продвинутым предложением и приобрели заднюю крышку с аккумулятором повышенной емкости (производства Nokla или Samsunc). В обоих случаях все ясно, – аккумулятор не соответствует заводским параметрам и статистическим данным, которые накопила Android OS. Даже если пользователь догадается сбросить телефон до заводских настроек, то это не исправит ситуацию и отображаемый уровень заряда начнет удивлять. Поэтому важно пользоваться только оригинальными комплектующими, либо продукцией сторонних поставщиков, которые приобрели лицензию на производство (у Apple, например).
Как измерить реальный заряд аккумулятора сторонними средствами?
Разумеется, есть специальные гаджеты для измерения емкости аккумулятора, стоят они недорого и продаются везде.
Или мультиметром, если он работает в режиме мАч, а аккумулятор смартфона можно извлечь. Для этого заряжаем смартфон на 100% (согласно индикатору Android OS), выключаем смартфон, извлекаем батарею, и соединяем красный щуп мультиметра с плюсом аккумулятора, а черный с минусом. После этого полученную мультиметром цифру делим на емкость аккумулятора, которая указана в ТТХ смартфона, и умножаем полученный результат на 100. Полученная цифра и будет отображать реальный заряд в процентах относительно эталонного значения. Например, мультиметром получаем результат 2800 мАч, производим расчеты с эталонным значением 3000 мАч и в итоге имеем, что реальная емкость аккумулятора нашего смартфона составляет только 93,3%. У операционной системы мультиметра нет, поэтому она будет опираться на сравнение заводских данных и статистику использования, т.е., самозабвенно врать пользователю о том, что «батарея в хорошем состоянии».
А что, если вставить в смартфон мультиметр, а то и измеритель мощности?
Если отбросить фактор размера (потребуется еще одна схема и силовые элементы, которые сделают смартфон толще), то перешагнуть через здравый смысл и законы физики все-равно не получится. По логике вещей, уровень заряда аккумулятора должен измеряться постоянно, а кто-нибудь задумывался, сколько электроэнергии потребляет сам мультиметр? Ведь он фактически заводит заряд в свою электрическую цепь и, перебирая сопротивления (потребляя электричество в процессе), выдает результат. Т.е., аккумулятор у нас один, а устройств электропотребления со схожими параметрами получается два. Поэтому и не устанавливают в смартфоны силовые измерительные приборы, как считаете?
Выводы
Приходится констатировать, что хоть как-то повлиять на срок службы аккумулятора смартфона, или добиться от него правдивых показаний по уровню заряда, пользователь не в состоянии. Все сторонние программы, якобы делающие это, являются заведомым «фейком», и даже вредны. Остается полагаться на совесть и компетентность производителя, пользоваться только оригинальными запчастями, и, главный вывод, – ничего не трогать руками и терпеть, потому что иначе будет только хуже.
И по-прежнему действует правило, которое выглядит так: меньше сторонних приложений – меньше расход заряда батареи.
Расскажите о вашем личном опыте по моддингу Android (касаемо энергопотребления), думаю всем будет интересно.
Свежие комментарии