- 最終更新日
- 記事公開日
ラズパイZEROの電源ON・OFFを物理スイッチ(ボタン)で行う方法
電源をONにするとき
1.RUN端子をスイッチでショートさせる
ラズパイZEROには、基板上にRUN端子が用意されています。
このRUN端子を一瞬ショートされることで、ラズパイZEROの電源がONになります。
RUN端子をショートさせるようにスイッチを配線することで、物理スイッチによるラズパイZEROの電源ONが実現できます。
2.スイッチ付きUSBケーブルを使う
ラズパイZEROは、給電ポートにUSBケーブルを繋げば、電源が入ります。
よって、スイッチ付きUSBケーブルを使えば、簡単に実現可能です。
USB-A延長ケーブル・1m(オス/オス) ON・OFFスイッチ付き
ただし、一つ注意点があります。
それは、電源をOFFにするとき。
ラズパイの電源オフは、「poweroffコマンド」で終了するのが正式な電源オフの方法です。
終了準備を行わずに終了させることは、ラズパイにダメージを与えてしまう事になります。
もし、スイッチ付きUSBケーブル側でオフにしてしまうと、強制終了してしまうことになります。
3.GPIO端子(5V)を利用する
ラズパイZEROでは、5VのGPIO端子を電源供給端子として使用することができます。
5V電源が供給されれば、ラズパイは自動で電源がONになります。
例えば、電源ONと電源OFFを一つのスイッチで行いたい場合に有効です。
ただし、もう一つ別にラズパイの5V/GPIO端子に電源を送り込むための常時通電の回路が必要になるのが面倒です。
電源をOFFにするとき
電源オフは、スイッチを押したときに「poweroffコマンド」を送信するプログラムを組みます。
下記の例を参考にしてみてください↓
ボタンを長押ししたときに、ラズパイの電源オフになる回路を組んでいます。
cnt = cnt + 1
if (cnt >= 250):
print("長押し検知:シャットダウン")
subprocess.call("sudo shutdown -h now", shell=True)