W jaki sposób bateria kokosowa określa pojemność projektową baterii komputera Macbook?

11

Bateria komputera Macbook ma trzy numery ładowania:

  1. Obecna opłata
  2. Maksymalna opłata
  3. Pojemność projektowa

Nawet jeśli Macbook pozostaje podłączony, OS X nie próbuje ładować - o ile (1) wynosi 95% (2), dlatego odsetek na pasku powiadomień często wynosi od 95% do 100%.

Te dwie liczby kontrastują z „pojemnością projektową” baterii. Bateria kokosowa to jedyne oprogramowanie, które znalazłem, które informuje o „pojemności projektowej” baterii Macbooka.

Ta pojemność projektowa nie pojawia się w specyfikacjach Apple, w Informacjach o systemie ani na everymac.com.

W jaki sposób bateria kokosowa określa pojemność projektową baterii?

Calaf
źródło
Menu iStat wyświetla również pojemność projektową baterii
może może
6
I tutaj myślałem, że bateria kokosowa jest czymś w rodzaju ogniwa cytrynowego . Co za rozczarowanie.
Wildcard

Odpowiedzi:

27

Informacje te można znaleźć wraz z wieloma innymi informacjami o baterii i / lub systemie z polecenia

ioreg

To polecenie, zgodnie ze stroną man, wykonuje:

ioreg wyświetla rejestr zestawu we / wy. Pokazuje heirarchiczną strukturę rejestru 1 jako odwrócone drzewo.

1 : heirarchiczny [sic]

Używanie filtru według nazwy klasy ( AppleSmartBatterydla baterii), aby uzyskać tylko informacje związane z baterią:

$ ioreg -brc AppleSmartBattery
-b    Show the object name in bold.
-r    Show subtrees rooted by objects that match the specified criteria.
       If none of -c, -k, or -n are supplied, -r has no effect.
-c    Show the object properties only if the object is an instance of, or
       derives from, the specified C++ class (e.g. IOService).

Od man ioreg.

Wydrukuje coś takiego:

$ ioreg -brc AppleSmartBattery
+-o AppleSmartBattery  <class AppleSmartBattery, id 0x100000254, registered, ma$
{
  "ExternalConnected" = Yes
  "TimeRemaining" = 0
  "InstantTimeToEmpty" = 65535
  "ExternalChargeCapable" = Yes
  "FullPathUpdated" = 1464849055
  "CellVoltage" = (4298,4292,4299,0)
  "Voltage" = 12889
  "BatteryInvalidWakeSeconds" = 30
  "AdapterInfo" = 0
  "MaxCapacity" = 5524
  "PermanentFailureStatus" = 0
  "Manufacturer" = "SMP"
  "Location" = 0
  "CurrentCapacity" = 5524
  "LegacyBatteryInfo" = {"Amperage"=0,"Flags"=5,"Capacity"=5524,"Current"=5$
  "FirmwareSerialNumber" = 1
  "BatteryInstalled" = Yes
  "PackReserve" = 200
  "CycleCount" = 318
  "DesignCapacity" = 6330
  "OperationStatus" = 58371
  "ManufactureDate" = 17726
  "AvgTimeToFull" = 65535
  "BatterySerialNumber" = "D864403T3UVFVN7A6"
  "BootPathUpdated" = 1464353527
  "PostDischargeWaitSeconds" = 120
  "Temperature" = 3096
  "UserVisiblePathUpdated" = 1464849490
  "InstantAmperage" = 0
  "ManufacturerData" = <000000000702000a03890000034a34340330304103534449032$
  "MaxErr" = 1
  "FullyCharged" = Yes
  "DeviceName" = "bq20z451"
  "IOGeneralInterest" = "IOCommand is not serializable"
  "Amperage" = 0
  "IsCharging" = No
  "DesignCycleCount9C" = 1000
  "PostChargeWaitSeconds" = 120
  "AvgTimeToEmpty" = 65535
}

Pole, którego szukasz, to DesignCapacity. Dla wygody odfiltruj go za pomocą grep(jednostka to miliamperogodziny lub mAh):

$ ioreg -brc AppleSmartBattery | grep DesignCapacity
      "DesignCapacity" = 6330

Twoje DesignCapacitypole może nie być wyświetlane 6330jako jego wartość. Używam 13-calowego rMBP w połowie 2014 r., Ale być może korzystasz z innego systemu z różnymi ocenami baterii.

Oprócz informacji o akumulatorze ioregmożna użyć go do uzyskania dodatkowych informacji o systemie i innych urządzeniach peryferyjnych - podobnie jak narzędzie informacji o systemie z wiersza poleceń.


Jeśli szukasz implementacji kodu dla tego polecenia, zapoznaj się z SystemKit firmy Beltex na Github . To jedna z najfajniejszych bibliotek Swift, jakie znam.

Uwaga: nie jest powiązany z SystemKit ani Beltex. Po prostu szczęśliwy użytkownik SystemKit.

być może może być
źródło