У меня есть следующий сценарий:

Я тестирую несколько ноутбуков с установленной Windows 8.1. Один из тестов - измерить, сколько хватает батареи. Для этой задачи я использую тесты, такие как PeaceKeeper или PowerMark.

Я также хочу измерить, сколько времени требуется батарее, чтобы полностью зарядиться до 100% после ее разрядки. Есть идеи, как это сделать?

2 ответа2

2

Если вы не хотите использовать внешние инструменты, вы можете использовать мощность (каламбур) запросов WMI и событий WMI. Простой запрос для запуска из командной строки:

wmic path win32_battery get EstimatedChargeRemaining

даст вам примерный заряд. Теперь, чтобы получить повторные показания, вы можете просто поместить его в синхронизированный цикл, но есть лучший (или более интересный) способ: зарегистрировать событие батареи и обработчик для него - здесь это делается в Powershell (запустите Powershell и вставьте /exec эти две команды):

$action={get-wmiobject -computername localhost -Query "Select * from Win32_Battery"|% {write-host battery charge: ($_.EstimatedChargeRemaining) time:  $(get-date)}}

Register-WMIEvent -query "SELECT * FROM __InstanceModificationEvent WITHIN 10 WHERE TargetInstance ISA 'Win32_Battery'" -messageData "battery charge" -sourceIdentifier "battery" -action $action

Это будет выводить строку на вашу консоль Powershell каждый раз, когда происходит событие. Вот вывод с моего ноутбука:

заряд батареи: 67 раз: 2014-12-11 17:59:53
заряд батареи: 68 раз: 2014-12-11 18:00:23
заряд батареи: 69 время: 2014-12-11 18:01:23
заряд батареи: 70 раз: 2014-12-11 18:01:53
заряд батареи: 71 раз: 2014-12-11 18:02:53
заряд батареи: 72 раз: 2014-12-11 18:03:23
заряд батареи: 73 раз: 2014-12-11 18:04:23
заряд батареи: 74 время: 2014-12-11 18:05:14
заряд батареи: 75 раз: 2014-12-11 18:06:04
заряд батареи: 76 время: 2014-12-11 18:06:44

Мое простое действие - просто консольное сообщение, но вы, конечно, можете делать все, что захотите - например, записать его в файл

(примечание: я думаю, что счетчик WMI равен 99, который отображается как 100%/ полный в строке состояния - так что он находится на 1% «позади» дисплея)

1

Battery Eater поддерживает создание графика зарядки аккумулятора.

Батарея Пожиратель

Он также регистрирует текущую емкость батареи каждые 30 секунд во время теста разряда. Я предполагаю, что это также регистрирует эту информацию при создании графика зарядки.

Вот фрагмент журнала разгрузки:

Log started: 13-01-2014 20:15:43
===============================================================================
[20:16:13]  36680   0
[20:16:43]  36630   0
[20:17:13]  36590   0
[20:17:43]  36530   0
[20:18:13]  36490   0
[20:18:43]  36430   0
[20:19:13]  36370   0
[20:19:43]  36320   0
[20:20:13]  36280   0
[20:20:43]  36220   0
[20:21:13]  36170   0
[20:21:43]  36110   0
...
[17:52:38]  2080    0
[17:53:08]  2250    0
[17:53:38]  2410    0
===============================================================================
Log ended: 14-01-2014 17:53:45

Чтобы открыть созданные BEG файлы, перетащите их в исполняемый файл Battery Eater. Кроме того, поскольку это довольно старое программное обеспечение, вам может потребоваться запустить его в режиме совместимости.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .