powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Контроль уровня заряда батареи и что зарядка подключена (планшет)
5 сообщений из 5, страница 1 из 1
Контроль уровня заряда батареи и что зарядка подключена (планшет)
    #39591140
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Был вот такой девайс подарен ребенку 3 года назад:

ASUS VivoTab Note 8 M80TA 64Gb

Девайс в общем-то не плох, полноценная Win (сейчас Win10), да и торможений особо не заметил.
Но железная надежность стремится к нулю.

1) Зарядка через единственный miniUSB, кот. выглядит хлипко (если сравнивать с мобильниками)
2) При "питании от сети" разряжается быстрее чем заряжается, ну и на разряженном аккумуляторе соотв. от сети работать не будет (как это без проблем можно делать на ноуте и с минимальной оговоркой на телефоне)
3) Если его разряжать-заряжать дергать как попало не думая, то может впасть в состояние "Не включается, не заряжается, сдох", ну и либо в сервис, либо на youtube с паяльником/отверткой и непонятным исходом, либо на помойку.

Ребенок эксплуатировал его примерно так (влиять не особо реально).
1) Играет, пока полностью не разрядится и не выключится
2) Не дожидается полной зарядки, включает
3) Может подключить зарядку на работающем и играть, дергая за хлипкий провод с miniUSB

Итог понятен "Не включается, не заряжается, сдох"

Первый раз сдох через 9 месяцев, замена IO-BD по гарантии, потом сдох опять через несколько месяцев, счас вспомнили об нем, отдал на диагностику, жду чего объявят за ремонт, в завис. от этого буду принимать решение.
Почитал отзывы о других подобных девайсах, ничего хорошего по определению (даже те кот. по 20-30тыс.), поэтому м.б. и имеет смысл отремонтировать, благо вид не убитый.
=====
Теперь собственно к програмированию (.Net, API).

1) Узнать уровень заряда АКБ
2) Узнать подключена ли "вилка питания"
3) Узнать заряжается ли при "подключенной вилке"

Идея простая: утилита в автозагрузку
Контроль по таймеру (да хоть раз в 30-60 сек)
Если ниже 20-30% -> (на "завершение работы", "спать" или чего он там должен делать) //<==чтоб не доводить до полного разряда
Если подключен разъем питания ("заряжается на включенном") -> опять же не выход //<==чтоб не насиловать (ибо все одно он этот режим не тянет) и разъем не разбалтывать.
перделки-свистелки "Выключай, а не то...", но это не обязательно

P.S. От нечего делать написал, никогда "питание" не программировал, как ребут сделать знаю, "выключить/сон" думаю та же опера.

М.б. какая готовая утилита есть? но они включая "фирменные" все тупые, навороченные, и жрущие ресурсы.
А полагаю можно несколько строк кода.
(испытать работоспособность думаю на ноуте можно, который "надежный")
...
Рейтинг: 0 / 0
Контроль уровня заряда батареи и что зарядка подключена (планшет)
    #39591191
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Контроль уровня заряда батареи и что зарядка подключена (планшет)
    #39591197
Супер_Пав
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А заказать новый аккум?
...
Рейтинг: 0 / 0
Контроль уровня заряда батареи и что зарядка подключена (планшет)
    #39591212
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Супер_Пав,
А причем тут новый/старый akk? Дебильная система контроля зарядки на уровне "железа".
Т.е.
1) нежелательна полная разрядка. Может перестать заряжаться при разряде ниже какого-то порога. Контроллер просто не срабатывает, дохнет и т.п.
2) нежелательна работа+зарядка одновременно
Задача не дать ему работать при выполнении этих условий.

Вот нашел еще через API вроде:
http://ds-release.ru/uroven-zaryada-batarei-na-noutbuke/
...
Рейтинг: 0 / 0
Контроль уровня заряда батареи и что зарядка подключена (планшет)
    #39591263
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, действительно 2 строчки кода (на ноуте все корректно показывает):
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    Dim PS As Windows.Forms.PowerStatus = SystemInformation.PowerStatus
    '1) Узнать уровень заряда АКБ 3) Узнать заряжается ли при "подключенной вилке"
    If PS.BatteryChargeStatus <> BatteryChargeStatus.NoSystemBattery Then
      MsgBox((PS.BatteryLifePercent * 100).ToString & "%")
      If PS.BatteryChargeStatus = (BatteryChargeStatus.Charging Or PS.BatteryChargeStatus) Then
        MsgBox("Заряжается!")
      Else
        MsgBox(PS.BatteryChargeStatus.ToString)
      End If
    Else
      MsgBox("Стационарный комп?")
    End If
    '2) Узнать подключена ли "вилка питания"
    If PS.PowerLineStatus = PowerLineStatus.Online Then
      MsgBox("питание от сети")
    ElseIf PS.PowerLineStatus = PowerLineStatus.Offline Then
      MsgBox("питание не подключено")
    Else ' If PS.PowerLineStatus = PowerLineStatus.Unknown Then
      MsgBox("питание хз")
    End If

  End Sub


Ладно, идея ясна, дождусь ремонта (если ценник устроит) и допишу эту штуку.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Контроль уровня заряда батареи и что зарядка подключена (планшет)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]