【MBTI診断】16タイプ別・フリーランスに向いてる仕事/働き方
- コラム
- フリーランス/個人事業主
- 働き方
Rapsberry Pi(ラズベリーパイ)は、2012年にイギリスのラズベリーパイ財団によって発表されたシングルボードコンピューターです。子どもの教育用に開発されたものですが、そのシンプルかつ奥深い機能性によって世界中の大人も魅了しています。
そんなラズベリーパイの課題とされているのが、消費電力。
これは外部からの電力を必要とせず、完全なオフグリッド環境でも活用できるラズペリーパイだからこその問題です。
そこで今回は、ラズベリーパイの消費電力を最適化する方法について解説します。
そもそも、Raspberry Pi 4よりもエネルギー効率に優れたSBC(シングルボードコンピューター)は数多くあります。
しかしエネルギー効率を優先すると、機能性が低下する欠点も無視できません。まずはラズベリーパイの魅力をおさらいしておきましょう。
最小限の遅延で処理する機械学習モデルを、リモートで使う場合、Raspberry Pi 4に使用されているARM Cortex-A72 CPUに勝るものはありません。
ある程度の機械学習技術はマイコンでも処理できますが、それでも機械学習にはシングルボードコンピューターのほうが適しています。
Raspberry Piのアドオン『Pi HAT』のエコシステムは成熟しており、ほぼすべてのケースに対応できる拡張オプションを提供しています。
たとえば、Blues Wireless社のPi HAT『Notecard』と『Notecarrier』は、遠隔地でのデータ中継が必要な要件に求められるドロップイン式のセルラー通信を可能にしています。
ラズベリーパイには、Pythonが標準でインストールされています。IoTプロジェクトの多くはCircuitPythonとMicroPyhonで対応可能です。
ラズパイ(Raspberry Pi)でできること15選。特徴や人気の理由も解説!
Workship MAGAZINE
ラズベリーパイの欠点のひとつが、推定600mAの消費電力です。ここからは、消費電力を抑えるための簡単な方法をご紹介します。
抑えられる消費電力の目安:約100mA
ラズベリーパイを、入力機器なしのヘッドレスで動作させている場合、USBコントローラーへの電源供給の必要はありません。
以下のコマンドで、ラズベリーのUSBコントローラーを無効化できます。
echo '1-1' |sudo tee /sys/bus/usb/drivers/usb/unbind
逆に、有効化する際には以下のコマンドを使い、再起動します。
echo '1-1' |sudo tee /sys/bus/usb/drivers/usb/bind
抑えられる消費電力の目安:約30mA
ラズベリーパイをヘッドレスで使用する場合、モニターを接続する必要はありません。このような場合、HDMI出力を無効にしましょう。
以下のコマンドで無効化できます。
sudo /opt/vc/bin/tvservice -o
再度有効化するには次のコマンドを使用します。
sudo /opt/vc/bin/tvservice -p
USBコントローラーと同じく、再起動後にHDMI出力が有効になります。
抑えられる消費電力の目安:約40mA
Wi-FiやBluetoothを使用しない場合、これらも無効化できます。ただし、HDMI、USB、Wi-Fiを同時に無効にすると、ラズベリーパイとの接続に支障をきたす可能性があるので注意しましょう。
Wi-FiとBluetoothを無効化するには、/boot/config.txtを開き、以下のパラメータを追加し、再起動します。
[all]
dtoverlay=disable-wifi
dtoverlay=disable-bt
ファイルからパラメータを削除して再起動すれば、有効にできます。
抑えられる消費電力の目安:クロック数に応じて変動
リモートでラズベリーパイを使う際、フルパワー使用する必要はない場合が多いため、CPUのクロック数を下げましょう。使用するアプリケーションに応じて数mA消費電力を抑えられます。
たとえば、クロック数の最大を900MHzに設定するには、/boot/config.txtを開き、パラメータを以下のように変更します。
[all]
arm_freq=900
arm_freq_max=900
core_freq_min、over_voltage、over_voltage_minなどのパラメータも使用可能です。
なお、シナリオによっては電力削減効果が得られない場合があります。遅いクロック数で長く動作するプロセスと、速いクロック数で短く動作するプロセスがある場合、消費電力の変化は見られないでしょう。
抑えられる消費電力の目安:約10mA
/boot/config.txtファイルを開き、以下を追加して再起動することで、ラズベリーパイ自体のLEDを無効化できます。
[pi4]
# Disable the PWR LED
dtparam=pwr_led_trigger=none
dtparam=pwr_led_activelow=off
# Disable the Activity LED
dtparam=act_led_trigger=none
dtparam=act_led_activelow=off
# Disable ethernet port LEDs
dtparam=eth_led0=4
dtparam=eth_led1=4
これらの設定は、Raspberry Pi 4 Model B固有のものです。/boot/config.txtファイルで使用できる変数は、公式サイトから確認できます。
/boot/config.txtの変更は、再起動後も持続します。起動時にUSB、HDMI、Wi-Fi、Bluetoothの無効化コマンドを発行したい場合は、.bashrcファイルを開いてコマンドを追加しましょう。
変更した内容を削除して再起動すると、ラズベリーパイはデフォルトの状態に戻ります。
ラズベリーパイをリモートで使用する場合、太陽光発電も検討してみましょう。ソーラーパネルを設置すれば、バッテリーの寿命を大幅に延ばせます。
ソーラーパネルの設置におすすめなのが、PiJuice HATです。あらかじめ設定したバッテリーの充電量でシャットダウン/起動する機能が搭載されています。
また、パススルー充電が可能なUSBパワーバンクも使用できます。パワーバンクがラズベリーパイに電力を供給し、ソーラーパネルがバッテリーを同時に充電する、という仕組みです。
オフグリッド環境でラズベリーパイを使う場合、消費電力は避けて通れない課題です。
簡単な設定の変更だけで消費電力を抑えられるので、ぜひ今回ご紹介した方法を試してみてください。
(執筆:Blues Wireless 翻訳:中島あすか 編集:泉 提供元:IoT For All)
小型シングルボードコンピュータおすすめ13選!ラズパイの代替品はある?
Workship MAGAZINE
ArduinoとRaspberry Piの違いは? 長所/短所を徹底比較!
Workship MAGAZINE
IoB(行動のインターネット)とは?インターネットと身体が繋がる世界
Workship MAGAZINE