RaspberryPi Zero 用バッテリーモジュール PiSugar2

はじめに

RasPi Zero 本体は非常に小さく取り回し性抜群ですが,電源をどうするかが非常に悩みの種になりがち.最近触っているおもちゃのロボカムへ RasPi Zero を組み込むにあたり小型の電源が必要になったので PiSugar2 を利用することにした.使い方等を整理しておく.

PiSugar2 について

PiSugar2 は RaspberryPi 用に設計されたUPS機能やRTC機能を備えた電源モジュール.動作のカスタマイズ可能なボタンも用意されている.B 系の RaspberryPi 用と RaspberryPi Zero 用の 2 種類が用意されている.

https://www.pisugar.com/
Bitly
Bitly

サイズは RasPi 本体の基板と同じ大きさで,RasPi Zero 用は装着するとピンヘッダ含めて 27mm 程度の厚さになる.基板裏からピンヘッダに接続するのでよく流通しているアクリル板で挟むようなケースは利用出来ない.ケースが必要な場合は 3D データが GitHub 上で公開されているので,自身の 3D プリンタで出力したり,DMM.make などへ 3D プリント依頼する必要がある.バッテリーがハンダ付けされているのはちょっとマイナスポイント.

PiSugar/model2 at master · PiSugar/PiSugar
PiSugar is a battery module for Raspberry Pi zero / zero W / zero WH - PiSugar/PiSugar

このモジュールは I2C のインタフェースを持っており,専用のソフトウェアで充放電の管理やボタンの機能設定などを行う.I2C のアドレスは 0x75 と 0x32 を利用するので,他の I2C デバイスも接続する際はアドレスの重複に注意すること.

GitHub - PiSugar/pisugar-power-manager-rs: PiSugar Power Manger in rust language
PiSugar Power Manger in rust language. Contribute to PiSugar/pisugar-power-manager-rs development by creating an account...
$ i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- 32 -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- 75 -- --             

Install PiSugar power manager

GitHub の手順に従ってインストールを進める.

インストールコマンドは次のとおり.

$ curl http://cdn.pisugar.com/release/pisugar-power-manager.sh | sudo bash

インストールコマンド投入後しばらくすると次の画面ができるので,PiSugar 2 (2-LEDs) を選択する.

※ PiSugar 2 (2-LEDs) を選んだらもう一度設定画面が表示されたので PiSugar 2 (4-LEDs) を選んだら設定完了した.基板上 LED の数は 3 つのような...?

※この謎の3LED版は PiSugar 2 (2-LEDs) を選んでおくのが正しいらしい.

インストールが完了すると以下 2 つのコマンドが使えるようになっている.

$ pisugar-poweroff -h
pisugar-poweroff 1.6.0
PiSugar
PiSugar Poweroff

USAGE:
    pisugar-poweroff [OPTIONS] --model <MODEL>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -f, --config <CONFIG>          Configuration file [default: /etc/pisugar-server/config.json]
    -c, --countdown <COUNTDOWN>    Countdown seconds, e.g. 3 [default: 3]
    -m, --model <MODEL>            PiSugar Model, choose from ["PiSugar 3", "PiSugar 2 Pro", "PiSugar 2 (2-LEDs)",
                                   "PiSugar 2 (4-LEDs)"]
$ pisugar-server -h
pisugar-server 1.6.0
PiSugar
PiSugar Power Manager

USAGE:
    pisugar-server [FLAGS] [OPTIONS] --model <model>

FLAGS:
    -d, --debug      Debug output
    -h, --help       Prints help information
    -s, --syslog     Log to syslog
    -V, --version    Prints version information

OPTIONS:
    -c, --config <FILE>    Config file in json format, e.g. /etc/pisugar-server.json
        --http <ADDR>      Http server listen address, e.g. 0.0.0.0:8421 [default: 0.0.0.0:8421]
        --led <led>        2-led or 4-led [default: 4]
        --model <model>    ["PiSugar 3", "PiSugar 2 Pro", "PiSugar 2 (2-LEDs)", "PiSugar 2 (4-LEDs)"]
    -t, --tcp <ADDR>       Tcp listen address, e.g. 0.0.0.0:8423
    -u, --uds <FILE>       Unix domain socket file, e.g. /tmp/pisugar-server.sock [default: /tmp/pisugar-server.sock]
        --web <DIR>        Web content directory, e.g. web [default: /usr/share/pisugar-server/web]
    -w, --ws <ADDR>        Websocket listen address, e.g. 0.0.0.0:8422

またインストールが完了時点で WEB ベースの管理画面に加えてソケットやウェブソケット用の API なども有効になる.サーバの引数は次の設定ファイルに記載されている.セキュリティ面の懸念がある場合は設定が終わったら各種インタフェースを落としたほうが良いかもしれない.4-LEDs を選んだような...?

$ cat /etc/default/pisugar-server 
OPTS=--config config.json --model 'PiSugar 2 (2-LEDs)' --web /usr/share/pisugar-server/web --http 0.0.0.0:8421 --ws 0.0.0.0:8422  --tcp 0.0.0.0:8423 --uds /tmp/pisugar-server.sock

http://${Raspiのアドレス}:8421 をブラウザで開くと次のような管理画面が表示される.この画面ではシステム時刻とRTCの同期に加えて以下の設定を行うことができる.

  • バッテリー残量が何%になったら充電開始するか
  • スケジュール起動時刻
  • ボタンのシングルタップ時の動作
  • ボタンのダブルタップ時の動作
  • ボタンの長押し時の動作
  • セーフシャットダウン(バッテリー残量が少なくなったら自動的にシャットダウン)するバッテリー残量のしきい値とシャットダウン実行までのディレイの設定

固定方法は検討の余地があるものの,ロボカムのお腹にピッタリ仕込めるサイズ感.

おわりに

PiSugar2 の使い方を整理した.なんで今まで使ってなかったのかというレベルで便利そうなアイテムなので RasPi ユーザは是非一度触ってみてほしい.おすすめ.

コメント

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