MacBookスリープ中のバッテリーがなくなる現象を解決

スポンサーリンク
この記事は約5分で読めます。
スポンサーリンク

MacBookの魅力といえばバッテリーの持ちがいい事。でも私のMacBook12inchはバッテリーの持ちが悪い、バッテリー100%で閉じたまま他の仕事をしていて帰ってくると2時間後には95%まで減っている。中古で手に入れたのでバッテリーの寿命とも考えたが、方充電回数は81回と少なくそもそも私の認識ではスリープ中(画面を閉じた状態は)バッテリーは減らない物だと思っていて、スリープ状態でもバッテリーが減ってしまう状況をなんとかしたいと調べた結果スリープ状態にも種類がある事、そして格スリープ状態になるまでの時間を設定出来ることがわかりました。できればスリープ中は減らないで欲しい。そこで私が試したことを全て記録します。

現状

(対策前)夜中1時に画面を閉じスリープモードに65%
(対策前)9時間後の朝10時57%に8%減

スポンサーリンク

ストレージの空き容量を確保する

まずはストレージの空き容量を確認しましょう。残りが1GB以下だとシステムが少ない容量で動作しようと必要ない処理をしてしまい、バッテリーの消耗に繋がります。できれば50GB以上が望ましいです。私は初期化したばかりなのでここはクリア。

スポンサーリンク

バッテリーの状態を確認する

バッテリーは消耗品、使っていいなくても年々劣化していきます。自分のMacBookのバッテリーの状態をチェックしておきましょう。画面左上のリンゴマークをクリックして
[このMacについて] をクリック→[システムレポート] をクリック→[電源]これでバッテリーの情報が確認できる。

状態情報:充放電回数: 91

  状態: 正常

「状態:正常」と表示されるので、バッテリー自体は問題ない。2015年モデルなので(現2021年)もう6年あと4年は使いたい。

私のMacBookの充電回数の上限1,000回なのでまだ気にせず使えます。
自分のMacBookの上限充電回数は[Mac ノートブックのバッテリーの充放電回数を調べる]で確認してみてください。

ここも正常なので私はクリア

スポンサーリンク

Mac の SMC (システム管理コントローラ) をリセットする

システム管理コントローラ (SMC) リセットすると、電源、バッテリー、ファン、その他の機能に関わる一部の問題を解決できます。

Mac をシステム終了します。
内蔵キーボードで、以下のキーをすべて長押しします。
キーボードの左側の「shift 」キー
キーボードの左側の「control 」キー
キーボードの左側の「option (Alt) 」キー
上記 3 つのすべてのキーを押し続けている間に、電源ボタンも長押しします。
4 つすべてのキーを 10 秒押し続けます
すべてのキーから指を放し、電源ボタンを押して Mac の電源を入れます。

他のMacBookに関してはApple公式HPhttps://support.apple.com/ja-jp/HT201295を参考にしてください。

これに関して初期化したばかりなのでやらなくてもいい気もしたが、とりあえずやっときました。

私がスリープ中のバッテリー問題を解決したのが次のターミナルを使ったスリープの設定変更です。

スポンサーリンク

スリープの設定をターミナルを使って変更する

バッテリー駆動にし、ターミナルでコマンドを実行する。

pmset -g

を入力しenter 現状を確認ます。

現状をわかりやすく説明すると
画面を閉じる「電源ボタンを押す」

スリープ(走るのをやめて歩く)

バッテリーが50%以下ならスタンバイモード(寝る)にする。=highstandbythreshold 50
でも3時間は横になるのを我慢してすぐ走れるようにしとくよ。過ぎたら寝るよ。=standbydelaylow 10800
バッテリーが50%以上なら24時間後寝るよ。=standbydelayhigh 86400

highstandbythresholdの値を変更する

sudo pmset -bで変更できます。
[変更箇所名 変更値]

[highstandbythreshold 50]を[highstandbythreshold 80] に変更するには

sudo pmset -b highstandbythreshold 80

を入力、enterで実行します。 パスワードを入力を求めされる、画面ロック時のパスワード入力

変更できたか確認するため、再度[pmset -g]をもう一度実行して確認してください。

standbydelaylow の値を変更


今は10800秒なので3時間後長すぎるので30分後に変更する。30分=1080秒なので

sudo pmset -b standbydelaylow 1080

を実行

standbydelayhigh の値を変更

今は86400秒=24時間なので 1時間の3600秒に変更

sudo pmset -b standbydelayhigh 3600

を実行

hibernatemodeを変える

hibernatemodeは上の分かりやすく説明した所の寝るの所。どう寝るかの設定です。
現状は3なのでバッテリー残量がギリギリになってらしっかり寝ます。つまり現状をSSDに保存し電源OFF。
0は即寝。
25はメモリに現状を保存して寝ます。つまりSSDは書き込み回数の制限があるので、SSDに書き込みがないので負担がかからない。

sudo pmset -b hibernatemode 25

を実行

hibernatemodeの設定については調べてみたけどよくわかりませんでした。

設定値は0・3・25 でそれ以外も設定可能なようですが0・3・25のどれかにするべきだそうです。
規定値は3 今回私は25にしてスリープ中のバッテリー問題を解決できました。

0だと電源off
3だとギリギリまで保持するけど電源が少なくなったら電源がoff
25だと直前のセッションがメモリから外部記憶に全て移され電源off

スポンサーリンク

結果

設定変更後

深夜1時45分に画面を閉じてスリープ75%

次の日13時に74%で約11時間で1%減

スリープの復旧が少し遅くなりますが、これで解決できました。無駄にバッテリーを使わなくなったので充電回数も減ったと思います。
最後まで読んでいただきありがとうございました。

コメント

タイトルとURLをコピーしました